summaryrefslogtreecommitdiff
path: root/src/surface.c
AgeCommit message (Collapse)Author
2022-06-21Add various command line arguments.Phil Jones
There are too many really to use single-character args, so the next step should be a config file.
2022-06-10Avoid an unnecessary copy of the image buffer.Phil Jones
By pointing Cairo at the mmap-ed file used to create wl_shm buffers, we can eliminate a memcpy() on every draw, providing a decent speedup (especially for large window sizes). This comes at the expense of having to keep track of two Cairo contexts, one for each of our two buffers used for double buffering. Additionally, a single memcpy() is still required for initialisation of the second buffer, so the startup latency isn't affected much.
2022-06-09Minor cleanup.Phil Jones
2022-06-07Switch from using (E)GL to wl_shm.Phil Jones
eglInitialize() is slow (~50-100ms), and uses a fair amount of memory (~100 MB). For such a small, simple program that just wants to launch as quickly as possible, wl_shm performs better.
2021-11-17Add sorting by run frequency.Phil Jones
This implements a rofi-like run cache. Other smaller changes include simplification of resize logic now that there's only one surface.
2021-11-14Initial experiments with layer shell.Phil Jones
2021-11-14Rename main struct to tofi.Phil Jones
2021-11-01Add extra cleanup code to debug builds.Phil Jones
Also fix some memory leaks.
2021-10-31Add HiDPI support and lots of cleanup.Phil Jones
2021-10-29Basic text entry working.Phil Jones