Bug 1667116 - Request to stay unredirected on WR/OGL, too. r=stransky

Until bug 1617002 Firefox would unintendedly not get unredirected on X11
when used with WR and OpenGL as it didn't fullfill the requirements -
not being transparent.

Now that this is fixed, fullscreen unredirection can happen on certain
compositors. For the basic compositor we already explicitely ask to not
get unredirected - do that for all backends.

Differential Revision: https://phabricator.services.mozilla.com/D92180
This commit is contained in:
Robert Mader
2020-10-03 05:47:51 +00:00
parent a5a27341c7
commit e0be76ae7f

View File

@@ -7959,17 +7959,17 @@ void nsWindow::SetProgress(unsigned long progressPercent) {
#ifdef MOZ_X11
void nsWindow::SetCompositorHint(WindowComposeRequest aState) {
if (mIsX11Display &&
(!GetLayerManager() ||
GetLayerManager()->GetBackendType() == LayersBackend::LAYERS_BASIC)) {
gulong value = aState;
GdkAtom cardinal_atom = gdk_x11_xatom_to_atom(XA_CARDINAL);
gdk_property_change(gtk_widget_get_window(mShell),
gdk_atom_intern("_NET_WM_BYPASS_COMPOSITOR", FALSE),
cardinal_atom,
32, // format
GDK_PROP_MODE_REPLACE, (guchar*)&value, 1);
if (!mIsX11Display) {
return;
}
gulong value = aState;
GdkAtom cardinal_atom = gdk_x11_xatom_to_atom(XA_CARDINAL);
gdk_property_change(gtk_widget_get_window(mShell),
gdk_atom_intern("_NET_WM_BYPASS_COMPOSITOR", FALSE),
cardinal_atom,
32, // format
GDK_PROP_MODE_REPLACE, (guchar*)&value, 1);
}
#endif