Hi,
dpy_gfx_switch and dpy_gfx_update need to be called to finish the
initialization or switching of the non-OpenGL display. However, the proposed
patch only calls dpy_gfx_switch.
vnc actually does not need dpy_gfx_update because the vnc implementation of
dpy_gfx_switch implicitly does the work for dpy_gfx_update, but the model of
ui/console expects the two of dpy_gfx_switch and dpy_gfx_update is separated
and only calling dpy_gfx_switch violates the model. dpy_gfx_update used to
be called even in such a case before and it is a regression.
Well, no, the ->dpy_gfx_switch() callback is supposed to do everything
needed to bring the new surface to the screen. vnc isn't alone here,
gtk for example does the same (see gd_switch()).
Yes, typically this is roughly the same an explicit dpy_gfx_update call
would do. So this could be changed if it helps making the opengl code
paths less confusing, but that should be a separate patch series and
separate discussion.
take care,
Gerd