LookingGlass/client
Marius Barbu e09ff31c09 [client] update viewport size after window is created
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>
2019-02-21 07:56:25 +11:00
..
cmake [client] replace custom Makefile with cmake build 2018-05-29 18:08:26 +10:00
decoders [client] define GL_GLEXT_PROTOTYPES globally 2018-12-12 16:53:30 +11:00
fonts [client] egl: added FPS rendering 2018-11-20 09:50:09 +11:00
parsers [parser/nal] no need to check for null before free (fixes #87) 2018-07-26 06:09:12 +10:00
renderers [client] egl: fix graphical glitch with splash 2019-01-02 10:36:17 +11:00
spice [client] spice: correct issue with new channel list support 2019-02-21 05:31:51 +11:00
.gitignore [client] added renderer abstratction 2017-12-12 03:59:57 +11:00
CMakeLists.txt [client] egl: added untested support for wayland 2019-01-02 00:04:40 +11:00
DEBUGGING.md [doc] Fix formatting 2018-05-23 08:46:03 +10:00
kb.h [misc] added website url to sources 2017-12-12 04:30:47 +11:00
lg-decoder.h [client] opengl: fixed incorrect colors and added 10-bit RGBA support 2018-12-12 10:55:18 +11:00
lg-decoders.h [client] implemented initial slow yuv420 support 2018-07-28 08:41:39 +10:00
lg-font.h [client] egl: added FPS rendering 2018-11-20 09:50:09 +11:00
lg-fonts.c [client] added missing lg-fonts.c to the repo 2018-11-20 22:34:01 +11:00
lg-fonts.h [client] egl: added FPS rendering 2018-11-20 09:50:09 +11:00
lg-renderer.c [client] implemented renderer specific option API 2017-12-17 22:21:59 +11:00
lg-renderer.h [client] rename fps variables to be more correct 2018-12-12 23:59:22 +11:00
lg-renderers.h [client] make EGL the default renderer 2018-12-16 11:02:40 +11:00
ll.c [client] egl: added splash screen rendering 2018-12-16 00:54:37 +11:00
ll.h [client] egl: added splash screen rendering 2018-12-16 00:54:37 +11:00
main.c [client] update viewport size after window is created 2019-02-21 07:56:25 +11:00
utils.c [egl] initial commit of new modern OpenGL ES renderer 2018-09-22 16:26:55 +10:00
utils.h [egl] initial commit of new modern OpenGL ES renderer 2018-09-22 16:26:55 +10:00