Daniel Eklöf
6ed97a47be
shm: purge buffers *before* we (maybe) return one from the cache
2019-11-02 01:31:48 +01:00
Daniel Eklöf
c6c75298f3
shm: automatic buffer purging is now delayed one cycle
...
This ensures we don't purge a buffer that a user is holding a
reference to.
2019-11-02 01:27:05 +01:00
Daniel Eklöf
8e5d386afc
shm: add shm_purge()
...
Destroys *all* buffers associated with the specified cookie.
2019-11-02 00:49:00 +01:00
Daniel Eklöf
5812242405
shm: purge unused buffers
...
When we need to create a new buffer (because the cache doesn't have
any buffers of correct size, or because they're all busy), purge
buffers with a size mismatch.
2019-11-02 00:35:02 +01:00
Daniel Eklöf
00b46455a0
shm: associate a 'cookie' with each buffer
...
When re-using a buffer from cache, only re-use ones with a matching
cookie.
This prevents contention between multiple terminal windows.
2019-11-02 00:33:37 +01:00
Daniel Eklöf
8df82938b0
shm: get_buffer(): remove 'copies' argument; it's not used
2019-11-02 00:23:51 +01:00
Daniel Eklöf
632b6ee0ea
shm: add debug logging of how large the allocated memory buffer is
2019-11-02 00:23:23 +01:00
Daniel Eklöf
f884f77d99
shm: fix name of memfd
2019-11-02 00:05:07 +01:00
Daniel Eklöf
33b5210a6a
refactor: break out stride calculation to new function
2019-08-18 17:59:43 +02:00
Daniel Eklöf
72d3cbca26
shm/render: there's no need to have one pixman image per thread
2019-08-16 22:54:05 +02:00
Daniel Eklöf
f45e5c6aef
Remove all references to cairo; we now use pixman only
2019-08-16 22:11:22 +02:00
Daniel Eklöf
bed7b34c28
wip: render background and glyphs using pixman
2019-08-16 20:40:32 +02:00
Daniel Eklöf
c531795b83
wip: initial multithreaded renderer
2019-07-29 20:13:26 +02:00
Daniel Eklöf
68108ad7d8
shm: width/height must match
2019-06-12 20:17:35 +02:00
Daniel Eklöf
910c540ea9
initial commit: maps an XDG toplevel window
2019-06-12 20:08:54 +02:00