aminal/gui
Menno Finlay-Smits 8f183ba440 Avoid polling in main GUI loop (#245)
Instead of waking up regularly WaitEventsTimeout, WaitEvents and
PostEmptyEvent are used to make the main loop purely event driven. The
rate of redraws due to terminal activity can be tweaked via the new
wakePeriod const.

This leads to some significant performance improvements: Aminal now consumes:
- no CPU when idle (previously ~2.7% on my laptop)
- ~8.5% CPU on my machine when running htop full screen on a large
  monitor (previously ~18.5% on my laptop)
- scrolling large amounts of output is an order of magnitude faster

This change also incidentally fixes data races around the terminal
dirty flag (which is now gone).
2019-03-11 22:57:41 +02:00
..
packed-fonts Fixed render issues with cached rectangles and fixed powerline font rendering 2018-11-23 17:01:50 +00:00
vendor/github.com Run and validate vttest on Travis (#159) 2019-01-21 18:48:46 +00:00
a_gui-packr.go fixed broken packr 2018-12-01 22:32:55 +00:00
actions.go Avoid polling in main GUI loop (#245) 2019-03-11 22:57:41 +02:00
darwin_opengl.go Add another workaround for darwin SDL blank window bug 2018-12-05 13:27:13 +02:00
explain.go more efficient text rendering and streamlining of output handling 2018-12-01 22:09:20 +00:00
fontmap.go Changes to minimize memory allocations and to ensure OpenGL objects cleanup (#148) 2019-01-14 20:50:03 +00:00
fonts.go Do not trigger window resizing work if no change in dimensions (#164) 2019-01-24 13:05:12 +00:00
gui.go Avoid polling in main GUI loop (#245) 2019-03-11 22:57:41 +02:00
input.go #217 rectangular select and copy (#241) 2019-03-05 09:55:29 +03:00
mouse.go #217 rectangular select and copy (#241) 2019-03-05 09:55:29 +03:00
opengl.go Add another workaround for darwin SDL blank window bug 2018-12-05 13:27:13 +02:00
overlays.go Avoid polling in main GUI loop (#245) 2019-03-11 22:57:41 +02:00
renderer.go bug fix: character under cursor rendering (#194) 2019-02-05 13:16:38 +00:00
shaders.go gofmt everythign 2018-11-29 13:04:47 +00:00
textbox.go bug fix: character under cursor rendering (#194) 2019-02-05 13:16:38 +00:00