mirror of
https://github.com/gnif/LookingGlass.git
synced 2025-01-10 23:07:04 +00:00
e09ff31c09
Make sure glViewport gets called as soon as we know the window dimensions, otherwise nothing gets rendered until KVMFR communication is established (mostly the splash). Without the fix, './looking-glass-client -s' behaves differently than './looking-glass-client -s -F' in that the latter triggers a SDL_WINDOWEVENT_SIZE_CHANGED and updates the viewport immediately after window creation while the former doesn't and all rendering is delayed until the frameThread successfully decodes the first frame. As all the possible ways of updating the viewport (window creation, window size change, frame size change) are covered with updatePositionInfo(), the 'started' state becomes redundant and is removed. Note: this might be the wrong way to fix it (possible driver bug?), glViewport's specification mentions that the default viewport size matches the window size when the GL context is first attached. Tested on: Debian Buster with GNOME 3.30.2 on X.Org 1.20.3 Looking Glass (a12-21-g07e4c1c20f) Locking Method: Atomic Using: EGL Vendor : Intel Open Source Technology Center Renderer: Mesa DRI Intel(R) Haswell Desktop Version : OpenGL ES 3.1 Mesa 18.3.2 Signed-off-by: Marius Barbu <msb@avengis.com> |
||
---|---|---|
.. | ||
cmake | ||
decoders | ||
fonts | ||
parsers | ||
renderers | ||
spice | ||
.gitignore | ||
CMakeLists.txt | ||
DEBUGGING.md | ||
kb.h | ||
lg-decoder.h | ||
lg-decoders.h | ||
lg-font.h | ||
lg-fonts.c | ||
lg-fonts.h | ||
lg-renderer.c | ||
lg-renderer.h | ||
lg-renderers.h | ||
ll.c | ||
ll.h | ||
main.c | ||
utils.c | ||
utils.h |