qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] ui/gtk: introducing vc->visible
@ 2024-01-30 23:48 dongwon.kim
  2024-01-30 23:48 ` [PATCH 1/3] ui/gtk: skip drawing guest scanout when associated VC is invisible dongwon.kim
                   ` (3 more replies)
  0 siblings, 4 replies; 22+ messages in thread
From: dongwon.kim @ 2024-01-30 23:48 UTC (permalink / raw)
  To: qemu-devel

From: Dongwon Kim <dongwon.kim@intel.com>

Drawing guest display frames can't be completed while the VC is not in
visible state, which could result in timeout in both the host and the
guest especially when using blob scanout. Therefore it is needed to
update and track the visiblity status of the VC and unblock the pipeline
in case when VC becomes invisible (e.g. windows minimization, switching
among tabs) while processing a guest frame.

First patch (0001-ui-gtk-skip...) is introducing a flag 'visible' to
VirtualConsole struct then set it only if the VC and its window is
visible.
 
Second patch (0002-ui-gtk-set-...) sets the ui size to 0 when VC is
invisible when the tab is closed or deactivated. This notifies the guest
that the associated guest display is not active anymore.

Third patch (0003-ui-gtk-reset-visible...) adds a callback for GTK
window-state-event. The flag, 'visible' is updated based on the
minization status of the window.

Dongwon Kim (3):
  ui/gtk: skip drawing guest scanout when associated VC is invisible
  ui/gtk: set the ui size to 0 when invisible
  ui/gtk: reset visible flag when window is minimized

 include/ui/gtk.h |  1 +
 ui/gtk-egl.c     |  8 +++++++
 ui/gtk-gl-area.c |  8 +++++++
 ui/gtk.c         | 62 ++++++++++++++++++++++++++++++++++++++++++++++--
 4 files changed, 77 insertions(+), 2 deletions(-)

-- 
2.34.1



^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2024-03-08  7:43 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-01-30 23:48 [PATCH 0/3] ui/gtk: introducing vc->visible dongwon.kim
2024-01-30 23:48 ` [PATCH 1/3] ui/gtk: skip drawing guest scanout when associated VC is invisible dongwon.kim
2024-01-31  7:08   ` Marc-André Lureau
2024-01-31 18:56     ` Kim, Dongwon
2024-02-01  6:42       ` Marc-André Lureau
2024-02-01 18:48         ` Kim, Dongwon
2024-03-07  9:46           ` Daniel P. Berrangé
2024-03-07 17:53             ` Kim, Dongwon
2024-03-07 18:01               ` Daniel P. Berrangé
2024-03-07 19:50                 ` Kim, Dongwon
2024-03-07  9:40   ` Daniel P. Berrangé
2024-03-07 17:34     ` Kim, Dongwon
2024-01-30 23:48 ` [PATCH 2/3] ui/gtk: set the ui size to 0 when invisible dongwon.kim
2024-01-31  7:12   ` Marc-André Lureau
2024-01-31 19:10     ` Kim, Dongwon
2024-03-07  9:47     ` Daniel P. Berrangé
2024-01-30 23:48 ` [PATCH 3/3] ui/gtk: reset visible flag when window is minimized dongwon.kim
2024-03-01  0:05 ` [PATCH 0/3] ui/gtk: introducing vc->visible Kim, Dongwon
2024-03-05 12:18   ` Marc-André Lureau
2024-03-07  9:49     ` Daniel P. Berrangé
2024-03-08  0:56     ` Kim, Dongwon
2024-03-08  7:43       ` Marc-André Lureau

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).