Re: New version of synchronization changes - windows not redirected



Thank you, Owen and the others who contributed, for sorting this
out and writing it up in a way we can follow.

I'm pleased to see this even addresses the issue of synchronizing
drawing after map, which could have been handled by the basic
frame counter in _NET_WM_SYNC_REQUEST_COUNTER but wasn't. [1]

I have a question re fullscreen windows:

With extended synchronization, the application does not need to
double-buffer its drawing, and so can use a window with a
single-buffered visual.

Some window managers disable compositing for fullscreen windows.
Should an application assume that a window manager advertising
_NET_WM_FRAME_DRAWN will always composite the window?  Perhaps it
should use _NET_WM_DONT_BYPASS_COMPOSITOR?  Or should the
application try to detect when compositing of a single toplevel
window is disabled?

An application can easily detect when a Screen is no longer
composited, but fullscreen usually means full-monitor rather than
full-Screeen and I don't know of a good way to detect whether a
single window's contents have been redirected to offscreen
storage.

Even if an application could detect when its window is no longer
being composited, I expect is not appropriate (even if it may
work) to start using a double-buffered fbconfig for a window with
a single-buffered visual, and I assume it is not possible to
change a window's visual.  Is there a way to draw to a
single-buffered window during vblank?

[1] https://bugzilla.mozilla.org/show_bug.cgi?id=793501#c6


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]