summaryrefslogtreecommitdiff
path: root/mozilla-1634213.patch
diff options
context:
space:
mode:
Diffstat (limited to 'mozilla-1634213.patch')
-rw-r--r--mozilla-1634213.patch96
1 files changed, 0 insertions, 96 deletions
diff --git a/mozilla-1634213.patch b/mozilla-1634213.patch
deleted file mode 100644
index d2a4138..0000000
--- a/mozilla-1634213.patch
+++ /dev/null
@@ -1,96 +0,0 @@
-diff --git a/gfx/gl/GLScreenBuffer.cpp b/gfx/gl/GLScreenBuffer.cpp
---- a/gfx/gl/GLScreenBuffer.cpp
-+++ b/gfx/gl/GLScreenBuffer.cpp
-@@ -88,10 +88,14 @@
- #if defined(XP_MACOSX)
- factory = SurfaceFactory_IOSurface::Create(gl, caps, ipcChannel, flags);
- #elif defined(MOZ_WAYLAND)
-- if (gl->GetContextType() == GLContextType::EGL) {
-- if (gfxPlatformGtk::GetPlatform()->UseWaylandDMABufWebGL()) {
-- factory =
-- MakeUnique<SurfaceFactory_DMABUF>(gl, caps, ipcChannel, flags);
-+ if (gl->GetContextType() == GLContextType::EGL &&
-+ gfxPlatformGtk::GetPlatform()->UseWaylandDMABufWebGL()) {
-+ auto DMABUFFactory =
-+ MakeUnique<SurfaceFactory_DMABUF>(gl, caps, ipcChannel, flags);
-+ if (DMABUFFactory && DMABUFFactory->CanCreateSurface()) {
-+ factory = std::move(DMABUFFactory);
-+ } else {
-+ gfxPlatformGtk::GetPlatform()->DisableWaylandDMABufWebGL();
- }
- }
- #elif defined(MOZ_X11)
-diff --git a/gfx/gl/SharedSurfaceDMABUF.h b/gfx/gl/SharedSurfaceDMABUF.h
---- a/gfx/gl/SharedSurfaceDMABUF.h
-+++ b/gfx/gl/SharedSurfaceDMABUF.h
-@@ -71,6 +71,11 @@
- bool hasAlpha = mReadCaps.alpha;
- return SharedSurface_DMABUF::Create(mGL, mFormats, size, hasAlpha);
- }
-+
-+ bool CanCreateSurface() {
-+ UniquePtr<SharedSurface> test = CreateShared(gfx::IntSize(1, 1));
-+ return test != nullptr;
-+ }
- };
-
- } // namespace gl
-diff --git a/gfx/thebes/gfxPlatformGtk.h b/gfx/thebes/gfxPlatformGtk.h
---- a/gfx/thebes/gfxPlatformGtk.h
-+++ b/gfx/thebes/gfxPlatformGtk.h
-@@ -88,7 +88,8 @@
-
- #ifdef MOZ_WAYLAND
- bool UseWaylandDMABufTextures();
-- bool UseWaylandDMABufWebGL();
-+ bool UseWaylandDMABufWebGL() { return mUseWebGLDmabufBackend; }
-+ void DisableWaylandDMABufWebGL() { mUseWebGLDmabufBackend = false; }
- bool UseWaylandHardwareVideoDecoding();
- #endif
-
-@@ -110,6 +111,9 @@
- #ifdef MOZ_X11
- Display* mCompositorDisplay;
- #endif
-+#ifdef MOZ_WAYLAND
-+ bool mUseWebGLDmabufBackend;
-+#endif
- };
-
- #endif /* GFX_PLATFORM_GTK_H */
-diff --git a/gfx/thebes/gfxPlatformGtk.cpp b/gfx/thebes/gfxPlatformGtk.cpp
---- a/gfx/thebes/gfxPlatformGtk.cpp
-+++ b/gfx/thebes/gfxPlatformGtk.cpp
-@@ -116,6 +116,9 @@
-
- Factory::ReleaseFTLibrary(gPlatformFTLibrary);
- gPlatformFTLibrary = nullptr;
-+
-+ mUseWebGLDmabufBackend =
-+ IsWaylandDisplay() && nsWaylandDisplay::IsDMABufWebGLEnabled();
- }
-
- void gfxPlatformGtk::FlushContentDrawing() {
-@@ -725,9 +728,6 @@
- bool gfxPlatformGtk::UseWaylandDMABufTextures() {
- return IsWaylandDisplay() && nsWaylandDisplay::IsDMABufTexturesEnabled();
- }
--bool gfxPlatformGtk::UseWaylandDMABufWebGL() {
-- return IsWaylandDisplay() && nsWaylandDisplay::IsDMABufWebGLEnabled();
--}
- bool gfxPlatformGtk::UseWaylandHardwareVideoDecoding() {
- return IsWaylandDisplay() && nsWaylandDisplay::IsDMABufVAAPIEnabled() &&
- gfxPlatform::CanUseHardwareVideoDecoding();
-diff --git a/modules/libpref/init/StaticPrefList.yaml b/modules/libpref/init/StaticPrefList.yaml
---- a/modules/libpref/init/StaticPrefList.yaml
-+++ b/modules/libpref/init/StaticPrefList.yaml
-@@ -9111,7 +9111,7 @@
- # Use DMABuf backend for WebGL on Wayland.
- - name: widget.wayland-dmabuf-webgl.enabled
- type: RelaxedAtomicBool
-- value: false
-+ value: true
- mirror: always
-
- # Use VA-API for video playback on Wayland.
-
bgstack15