update patches from pull request

Signed-off-by: Antoine Damhet <antoine.damhet@lse.epita.fr>
This commit is contained in:
Antoine Damhet 2020-08-19 09:53:02 +02:00
parent 9c0d01b3b8
commit 8087c172b8
No known key found for this signature in database
GPG key ID: DC09A32F3CE58F3E
18 changed files with 168 additions and 63 deletions

View file

@ -1,7 +1,7 @@
pkgbase = obs-studio-wayland pkgbase = obs-studio-wayland
pkgdesc = Free, open source software for live streaming and recording (with wayland patches) pkgdesc = Free, open source software for live streaming and recording (with wayland patches)
pkgver = 25.0.8 pkgver = 25.0.8
pkgrel = 1 pkgrel = 2
url = https://obsproject.com url = https://obsproject.com
arch = x86_64 arch = x86_64
license = GPL2 license = GPL2
@ -47,24 +47,28 @@ pkgbase = obs-studio-wayland
source = 0010-linux-capture-Fail-to-load-when-running-on-EGL.patch source = 0010-linux-capture-Fail-to-load-when-running-on-EGL.patch
source = 0011-libobs-Add-a-Wayland-platform.patch source = 0011-libobs-Add-a-Wayland-platform.patch
source = 0012-libobs-opengl-Try-to-use-the-platform-display-if-ava.patch source = 0012-libobs-opengl-Try-to-use-the-platform-display-if-ava.patch
source = 0013-libobs-opengl-Introduce-an-EGL-Wayland-renderer.patch source = 0013-libobs-Add-a-Wayland-platform.patch
source = 0014-UI-Retrieve-Wayland-surface-from-QWindow.patch source = 0014-libobs-opengl-Introduce-an-EGL-Wayland-renderer.patch
source = 0015-UI-Retrieve-Wayland-surface-from-QWindow.patch
source = 0016-UI-Destroy-obs_display-when-becoming-invisible.patch
sha512sums = a97c03dc218a4e03e48f6a7dc82b4a59ebeee2039f17be66bb847681ce9ff3d25e6e015be4af78fe44739f6fad5089b6e683d7657c2e4fde8e547df9a2594a08 sha512sums = a97c03dc218a4e03e48f6a7dc82b4a59ebeee2039f17be66bb847681ce9ff3d25e6e015be4af78fe44739f6fad5089b6e683d7657c2e4fde8e547df9a2594a08
sha512sums = 1ff0e088eed61554268009f3d8c5a23c0888bfbe860d6cb288ddf348108446c152fd87e2cb8f54613a88378d8474550632c90f924005d5e0343bf1a801339ccc sha512sums = 1ff0e088eed61554268009f3d8c5a23c0888bfbe860d6cb288ddf348108446c152fd87e2cb8f54613a88378d8474550632c90f924005d5e0343bf1a801339ccc
sha512sums = bfe2b0e6da69ffdca95229eb4015515148fdda909355add1d2dec71cf97e9fdabdfc832c74f455a890846708f28d5bcbec64589e853904d539a438b2dcbd7a18 sha512sums = 6329e08da95e345509001ab6b9e8b73a227d0e63a8d39a3ef9b7d0197940ea9589d39b4aa92cdcc9f21cc4b9110a97f8e80891a12b4b24dff6d23395379abf5c
sha512sums = 5221b6a7a46f99c58cde1c5406f83d50def2d5b3a2e97be7db759d94d74a5be46da092209e6a4122a6de4b704632c3f013535f80b570349b029ea4124151c4f6 sha512sums = b05346b83587d2fe3fbc676a14aca961f05fa58c6912f82fed9e15a4b9fcacce297921003b41980c57ba09c4623d50c905a7c50961c2269a9709fcb67a088002
sha512sums = c9a0660c95bd18a02620fb0b870032563669544e7a721e4d91dafb8aebb96d1735414a9e37ed56355fc5afeb8f437a434b4fd5f147c9658cc6974e8e8bab4463 sha512sums = 6f38fd7f6f5a29d05b6dd824af1de6072ebd692c96940ba74e5d1799e21754230010fd70cd2f1ce830a0701d25b07cfbae8cbe49f89ba085cd2dec6796a7790d
sha512sums = 0b404ff252f94bcdd957d43db26c54c6b47de5a8f810f4febdb0aa5b873c48f23ef2817361e5ce9c09a189e770978cfca24767167604434ece771d759e7c4270 sha512sums = 14979eef47ab1d6e88ab77c35ab00a5e8297d1ed332bb397b8d3906e68c6ffa0b4e0761ef0dfff0221c7e22f5fb709e5bb11b87e046116bb3996df270e3b7b43
sha512sums = 47f5bffb469ece2b961000cd2d8656b82cba8ac0fa09fa7703c662e0cee2e48744d5b8aa93a4b4508436ea5edfe3038fa7aa88a3b43466f88c7504e6a8ba51ed sha512sums = db6a8d54e86f58f1adecb0f09ab5660ae0d06f4aa8bd0ea2e61da601ae82fd53a3b4c6db96d5827709e700843b70cc5a72851c0d429e3ec05bef250ed48445a0
sha512sums = d15c21968a3024888ce4c8e884d861f147358e95a42c1de557251a4c2fccbdddf9cf5a285deedbf73cffbd25fdaad44dd972cb10bf9a5b23a0049b239e75961f sha512sums = f0374c85bd93928a32d60a9516c90c1b2e3537b84f949066110897f05224a568dd57f2cd9d141b0cfa8e89672b081dac3c64304523fcf37f0c018ca78ad71625
sha512sums = c1f94ccd836c51ff83735df614bf6d3e2c310c599685e700ae5726ace20434edd04ef0c9be0a8c0f4c458dd164ad1ac817fd32bcbeeefb0107a6ce4cbce9cb08 sha512sums = dcdca90cfd701aad02ba12dee9a6482ca9066ff817e6e24bb3d0d6dfbbc48e8e98eb02517983802c66cade34c0d347aec817fe98da8baa7f5fff9187201e9a00
sha512sums = 6ce870404a6d2bfbb25935a6da59a07447307f8592dd1dc1aaebba2b9f959633565ba4cdc7d50ee3c4e5b4c169397298daa5804c3060fc780dba52099f687393 sha512sums = 64e4adef34a1074410245120d828871c128ee8254d77378cd7b74fe0182abaffdbff6669990a75464335b33d83641893b73e618c7322e1fe3186a748eab07e79
sha512sums = 6374229b662949e2989eb372a922fda872d2a08e817690b2262f99dc8a02261a75aeeacfc40da2b68a04228b38cda4aeaca4212068e8605b7532662dc459abb4 sha512sums = 64ca66913ade6b28815aa06383089e1c9aaa7a2b50cd425be8876d0a95338615be844a362a55c02541681d51f1921cb0820554f49fe21786649076ca16f6f64b
sha512sums = 16dfa319e9e18ef8e946b9723e27d1ea1f56e4de8656d8112571bc87aa7ade8dbda4293f064c2477cdaf92c60fca4484b2c7ac322835bf402657275933f6ab52 sha512sums = a917037dc63bfdd8d2d04b2d3f625eb9c8ec26868ca2eeef23d78f3442c8233252d86285b771e1c1428408508aedff4407aec5bdc9ef233fda995483fdab4202
sha512sums = c81a421475293d3d5c64a744c10a925dc26975a6dfd46e1b3b2a92931da43c311d0a153548889b4e9831bee61ab8b0f5fc504ad3f0ed7f0628f93287e12ad3d3 sha512sums = 013adb73a718f5df05a055de0e5fa17701dc645d8e7025ff1192d99a405dd6a0923fcfdbbad37777ff993545aadf9d4d29bae7191c6505f9f929273d5b374ee2
sha512sums = ea36fee6228d582f5f3b886a3de61ad8b139691c3bf30e24a7b20f1eab2f9e43b0dfbf6f254dcef00e2bfbf6826f223a957d3e78524ebd864c64433529e40441 sha512sums = 34710dbf905e6af2d7af3feab9f55c867dcbac6afa0ab6a12f7c458b974ba71e14ef797e9db613d3248c046dee1c1dce8559ceeaf1d95d1215368032e642731d
sha512sums = a93f186ed24ee979a4297aa063c435ae541f5f1958b86373f6534a2dd85e2178d6f151f115200c987b5e1d999ebd94d6ce0597ef1e7b3588bcb161c53dd4878e sha512sums = e131c7a65ce0e848f0b91bfd4b3db750bc0bddce64a9ff49d97082ddafb9ddab92f43ea19a2c92b054e85df0f018f43ff5dc8cf81671520079e4e4681d5ac230
sha512sums = c4e6a23edf080076c27599e02909a068b11094848f733297496e7ea0061df56be4becdb58449ec7a05ff2a659fa4c0f75f4006cb204578477308d24d764fba41 sha512sums = cefa4f5032a06e9341ccdabef022d755c8869b391a33ed5c4bd927672f967d5287d4c017cb7b2d37c163c9f387ca94d5846327461a9ba3b44478ed67a60d6a9f
sha512sums = e406d3f16f17b35ce463120eefd2bea3797fa83304ea27628b9a671704451c4a275d6844b0f007997e3a6edc39557442c6eb9eb8b6dc2a50e07341e3b0621e1f
sha512sums = 6c1cd77e63f760aabb9186edb906092bb9f6a7b2e7bd32deff4af33b5f35e95abe7ff874b6a17112d3da098f970f706c0a05f239fc75b65e60f4c68ae544eacf
pkgname = obs-studio-wayland pkgname = obs-studio-wayland

View file

@ -1,7 +1,7 @@
From b91db14ec87f4f1a2fba7d6cb89c4e6d07a0472f Mon Sep 17 00:00:00 2001 From af3a31e5dc24a37ecd34ac87ec662289a942a42e Mon Sep 17 00:00:00 2001
From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com> From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date: Mon, 9 Mar 2020 13:10:16 -0300 Date: Mon, 9 Mar 2020 13:10:16 -0300
Subject: [PATCH 01/15] deps-glad: Add EGL Subject: [PATCH 01/16] deps-glad: Add EGL
The code is generated by https://glad.dav1d.de/ The code is generated by https://glad.dav1d.de/
--- ---

View file

@ -1,7 +1,7 @@
From 49e7a26b3aa5523662e68401554a1474fa8baf86 Mon Sep 17 00:00:00 2001 From 6a15695f885d372909c3eeadd091abd640fca937 Mon Sep 17 00:00:00 2001
From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com> From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date: Mon, 9 Mar 2020 13:19:31 -0300 Date: Mon, 9 Mar 2020 13:19:31 -0300
Subject: [PATCH 02/15] libobs-opengl: Rename gl-x11.c to gl-x11-glx.c Subject: [PATCH 02/16] libobs-opengl: Rename gl-x11.c to gl-x11-glx.c
This is in preparation for the future abstraction layer (gl-x11-*) This is in preparation for the future abstraction layer (gl-x11-*)
and also to match the actual name of the windowing system. When and also to match the actual name of the windowing system. When

View file

@ -1,7 +1,7 @@
From dc135a39d088ead4c603f95b1483c7076da4cea4 Mon Sep 17 00:00:00 2001 From 4cc969bdb0abcfb5a4737b2f4159ee9c0be7d4cc Mon Sep 17 00:00:00 2001
From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com> From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date: Mon, 9 Mar 2020 16:46:37 -0300 Date: Mon, 9 Mar 2020 16:46:37 -0300
Subject: [PATCH 03/15] libobs-opengl: Factor out GLX winsys Subject: [PATCH 03/16] libobs-opengl: Factor out GLX winsys
Move the GLX-related code to gl-x11-glx, and introduce gl-nix as Move the GLX-related code to gl-x11-glx, and introduce gl-nix as
a winsys-agnostic abstraction layer. gl-nix serves as the runtime a winsys-agnostic abstraction layer. gl-nix serves as the runtime

View file

@ -1,7 +1,7 @@
From 3016893fbe071ce95c20ea24844713a068862c29 Mon Sep 17 00:00:00 2001 From ecff9e62ac3a52a198e6d5fd71c40abe3826799e Mon Sep 17 00:00:00 2001
From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com> From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date: Mon, 9 Mar 2020 17:35:49 -0300 Date: Mon, 9 Mar 2020 17:35:49 -0300
Subject: [PATCH 04/15] libobs-opengl: Introduce the X11/EGL winsys Subject: [PATCH 04/16] libobs-opengl: Introduce the X11/EGL winsys
Introduce the EGL/X11 winsys, and use it when the OBS_USE_EGL environment Introduce the EGL/X11 winsys, and use it when the OBS_USE_EGL environment
variable is defined. This variable is only temporary, for future commits variable is defined. This variable is only temporary, for future commits

View file

@ -1,7 +1,7 @@
From 6b71db73fb1aef30ad06e576d2b2377052ed9f56 Mon Sep 17 00:00:00 2001 From 8191cd88f8273430e2976d774ac9189d17661f73 Mon Sep 17 00:00:00 2001
From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com> From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date: Sat, 11 Apr 2020 23:49:05 -0300 Date: Sat, 11 Apr 2020 23:49:05 -0300
Subject: [PATCH 05/15] deps/glad: Make X11 required as well Subject: [PATCH 05/16] deps/glad: Make X11 required as well
To keep consistency with the EGL line To keep consistency with the EGL line
--- ---

View file

@ -1,12 +1,27 @@
From e3eeda73e23c9b6a22562583eb9b7bf5c8a481df Mon Sep 17 00:00:00 2001 From f31796d19f4a4fdedc99f360ccf5d9c5c0f92cf5 Mon Sep 17 00:00:00 2001
From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com> From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date: Fri, 6 Mar 2020 16:22:01 -0300 Date: Fri, 6 Mar 2020 16:22:01 -0300
Subject: [PATCH 06/15] ci: Install qtbase5-private-dev on Linux Subject: [PATCH 06/16] ci: Install qtbase5-private-dev on Linux
List this dependency both under CI/install-dependencies-linux.sh, and
.github/workflows/main.yml.
--- ---
.github/workflows/main.yml | 1 +
CI/install-dependencies-linux.sh | 1 + CI/install-dependencies-linux.sh | 1 +
1 file changed, 1 insertion(+) 2 files changed, 2 insertions(+)
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index 47c47101..008c3ee9 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -176,6 +176,7 @@ jobs:
pkg-config \
python3-dev \
qtbase5-dev \
+ qtbase5-private-dev \
libqt5svg5-dev \
swig
- name: 'Install prerequisite: Chromium Embedded Framework'
diff --git a/CI/install-dependencies-linux.sh b/CI/install-dependencies-linux.sh diff --git a/CI/install-dependencies-linux.sh b/CI/install-dependencies-linux.sh
index 0d92fbf9..478f953a 100755 index 0d92fbf9..478f953a 100755
--- a/CI/install-dependencies-linux.sh --- a/CI/install-dependencies-linux.sh

View file

@ -1,7 +1,7 @@
From 93ecb043ff029fe430c59d2654a9f3fc590747ec Mon Sep 17 00:00:00 2001 From c84f1b751554d6a1cd15f5db4a611a2cb8f95842 Mon Sep 17 00:00:00 2001
From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com> From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date: Fri, 6 Mar 2020 17:24:33 -0300 Date: Fri, 6 Mar 2020 17:24:33 -0300
Subject: [PATCH 07/15] libobs/nix: Move X11-specific code to obs-nix-x11.c Subject: [PATCH 07/16] libobs/nix: Move X11-specific code to obs-nix-x11.c
Currently, obs-nix.c is highly tied to the X11 display Currently, obs-nix.c is highly tied to the X11 display
server. It includes X11 headers directly, and make use server. It includes X11 headers directly, and make use

View file

@ -1,7 +1,7 @@
From 2fe20c5488edf35c0507728d253b373bc1b842ab Mon Sep 17 00:00:00 2001 From 32f86b37c78454ad51ac427ccc772b7a62fa89c8 Mon Sep 17 00:00:00 2001
From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com> From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date: Fri, 6 Mar 2020 17:50:41 -0300 Date: Fri, 6 Mar 2020 17:50:41 -0300
Subject: [PATCH 08/15] libobs: Introduce the concept of a Unix platform Subject: [PATCH 08/16] libobs: Introduce the concept of a Unix platform
This is a Unix-specific code. The only available platforms This is a Unix-specific code. The only available platforms
at this point are the X11/GLX and X11/EGL platforms. at this point are the X11/GLX and X11/EGL platforms.

View file

@ -1,7 +1,7 @@
From 25d37ebfbe7d9aa583bd8bd9655892c2d73f13dc Mon Sep 17 00:00:00 2001 From 79ec8d09ce00ae6645604a3fd7562832c2400790 Mon Sep 17 00:00:00 2001
From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com> From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date: Tue, 7 Apr 2020 23:17:02 -0300 Date: Tue, 7 Apr 2020 23:17:02 -0300
Subject: [PATCH 09/15] UI: Set the Unix platform on startup Subject: [PATCH 09/16] UI: Set the Unix platform on startup
Move the OBS_USE_EGL environment variable check to obs-app.cpp, Move the OBS_USE_EGL environment variable check to obs-app.cpp,
and set the OBS platform to be either OBS_NIX_PLATFORM_X11_GLX and set the OBS platform to be either OBS_NIX_PLATFORM_X11_GLX

View file

@ -1,7 +1,7 @@
From d07e62894d3aa78430a2ee543443a81c70153067 Mon Sep 17 00:00:00 2001 From 7abd7a9ed53f36a0aa9ba45c32cb7824bc6558ac Mon Sep 17 00:00:00 2001
From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com> From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date: Wed, 8 Apr 2020 23:58:43 -0300 Date: Wed, 8 Apr 2020 23:58:43 -0300
Subject: [PATCH 10/15] linux-capture: Fail to load when running on EGL Subject: [PATCH 10/16] linux-capture: Fail to load when running on EGL
Right now, linux-capture hard-depends on GLX. Disable it when Right now, linux-capture hard-depends on GLX. Disable it when
running under EGL. running under EGL.

View file

@ -1,7 +1,7 @@
From de53eda26763e1aa7ec82803fd231c0cf9c0a6c4 Mon Sep 17 00:00:00 2001 From 5c5cf8e4dfd6b2930a25c5772a5679d39c75fc0d Mon Sep 17 00:00:00 2001
From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com> From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date: Fri, 6 Mar 2020 18:53:42 -0300 Date: Fri, 6 Mar 2020 18:53:42 -0300
Subject: [PATCH 11/15] libobs: Add a Wayland platform Subject: [PATCH 11/16] libobs: Add a Wayland platform
Introduce the OBS_NIX_PLATFORM_WAYLAND enum value, and try to detect Introduce the OBS_NIX_PLATFORM_WAYLAND enum value, and try to detect
it when OBS Studio runs by looking into the platform name. it when OBS Studio runs by looking into the platform name.

View file

@ -1,7 +1,7 @@
From 5bf0de83d59b4147e91feceba2ec957522d83736 Mon Sep 17 00:00:00 2001 From e8a11258a45892d6aebb08de3302e771df25bc6f Mon Sep 17 00:00:00 2001
From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com> From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date: Sat, 11 Apr 2020 23:32:16 -0300 Date: Sat, 11 Apr 2020 23:32:16 -0300
Subject: [PATCH 12/15] libobs-opengl: Try to use the platform display if Subject: [PATCH 12/16] libobs-opengl: Try to use the platform display if
available available
We need to ensure we're running all X11 code on the same display. We need to ensure we're running all X11 code on the same display.

View file

@ -0,0 +1,30 @@
From a0535494becd877747261ff18b545a4d77c980ff Mon Sep 17 00:00:00 2001
From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date: Fri, 6 Mar 2020 18:53:42 -0300
Subject: [PATCH 13/16] libobs: Add a Wayland platform
Introduce the OBS_NIX_PLATFORM_WAYLAND enum value, and try to detect
it when OBS Studio runs by looking into the platform name.
---
UI/CMakeLists.txt | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/UI/CMakeLists.txt b/UI/CMakeLists.txt
index 171efa2b..70d6da79 100644
--- a/UI/CMakeLists.txt
+++ b/UI/CMakeLists.txt
@@ -408,6 +408,11 @@ if (ENABLE_WAYLAND)
include_directories(${Qt5Gui_PRIVATE_INCLUDE_DIRS})
endif()
+if (ENABLE_WAYLAND)
+ find_package(Qt5Gui)
+ include_directories(${Qt5Gui_PRIVATE_INCLUDE_DIRS})
+endif()
+
define_graphic_modules(obs)
install_obs_core(obs)
--
2.28.0

View file

@ -1,7 +1,7 @@
From 7fd9f95fee70ec8d604797db4a0de77e58c6e32d Mon Sep 17 00:00:00 2001 From 35be3fc4cc65ca86329cf1156e1256249096606b Mon Sep 17 00:00:00 2001
From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com> From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date: Mon, 9 Mar 2020 21:09:11 -0300 Date: Mon, 9 Mar 2020 21:09:11 -0300
Subject: [PATCH 13/15] libobs-opengl: Introduce an EGL/Wayland renderer Subject: [PATCH 14/16] libobs-opengl: Introduce an EGL/Wayland renderer
Introduce a new Wayland/EGL renderer. Introduce a new Wayland/EGL renderer.
--- ---

View file

@ -1,7 +1,7 @@
From ded1e2a0201d3160ff1b427bab104870f29d516b Mon Sep 17 00:00:00 2001 From 9a69ae56d2204501b45cf7b5471279e7d61e65ba Mon Sep 17 00:00:00 2001
From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com> From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date: Mon, 9 Mar 2020 21:23:37 -0300 Date: Mon, 9 Mar 2020 21:23:37 -0300
Subject: [PATCH 14/15] UI: Retrieve Wayland surface from QWindow Subject: [PATCH 15/16] UI: Retrieve Wayland surface from QWindow
On Wayland, we want to query the window's underlying On Wayland, we want to query the window's underlying
platform for the Wayland surface, instead of foolishly platform for the Wayland surface, instead of foolishly

View file

@ -0,0 +1,52 @@
From 7e2e627ebf4d9f52afebb7dcda95429f68362f32 Mon Sep 17 00:00:00 2001
From: Georges Basile Stavracas Neto <georges.stavracas@gmail.com>
Date: Tue, 18 Aug 2020 19:38:29 -0300
Subject: [PATCH 16/16] UI: Destroy obs_display when becoming invisible
When a window is made invisible, then visible again, the
obs_display is reused. Turns out, QT destroys the wl_surface
associated with the previewer on Wayland. However, the EGL
surface created on top of this wl_surface is not, and any
attempt to attach a new buffer to it will crash OBS.
Destroy the obs_display when becoming invisible, and when
running as a Wayland client.
---
UI/qt-display.cpp | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/UI/qt-display.cpp b/UI/qt-display.cpp
index 685ee6f9..fc83e0e0 100644
--- a/UI/qt-display.cpp
+++ b/UI/qt-display.cpp
@@ -6,6 +6,12 @@
#include <QResizeEvent>
#include <QShowEvent>
+#include <obs-config.h>
+
+#ifdef ENABLE_WAYLAND
+#include <obs-nix-platform.h>
+#endif
+
static inline long long color_to_int(const QColor &color)
{
auto shift = [&](unsigned val, int shift) {
@@ -33,8 +39,13 @@ OBSQTDisplay::OBSQTDisplay(QWidget *parent, Qt::WindowFlags flags)
setAttribute(Qt::WA_NativeWindow);
auto windowVisible = [this](bool visible) {
- if (!visible)
+ if (!visible) {
+#ifdef ENABLE_WAYLAND
+ if (obs_get_nix_platform() == OBS_NIX_PLATFORM_WAYLAND)
+ display = nullptr;
+#endif
return;
+ }
if (!display) {
CreateDisplay();
--
2.28.0

View file

@ -7,7 +7,7 @@ pkgname=$_pkgname-wayland
provides=("$_pkgname") provides=("$_pkgname")
conflicts=("$_pkgname") conflicts=("$_pkgname")
pkgver=25.0.8 pkgver=25.0.8
pkgrel=1 pkgrel=2
pkgdesc="Free, open source software for live streaming and recording (with wayland patches)" pkgdesc="Free, open source software for live streaming and recording (with wayland patches)"
arch=('x86_64') arch=('x86_64')
url="https://obsproject.com" url="https://obsproject.com"
@ -38,25 +38,29 @@ source=(
0010-linux-capture-Fail-to-load-when-running-on-EGL.patch 0010-linux-capture-Fail-to-load-when-running-on-EGL.patch
0011-libobs-Add-a-Wayland-platform.patch 0011-libobs-Add-a-Wayland-platform.patch
0012-libobs-opengl-Try-to-use-the-platform-display-if-ava.patch 0012-libobs-opengl-Try-to-use-the-platform-display-if-ava.patch
0013-libobs-opengl-Introduce-an-EGL-Wayland-renderer.patch 0013-libobs-Add-a-Wayland-platform.patch
0014-UI-Retrieve-Wayland-surface-from-QWindow.patch 0014-libobs-opengl-Introduce-an-EGL-Wayland-renderer.patch
0015-UI-Retrieve-Wayland-surface-from-QWindow.patch
0016-UI-Destroy-obs_display-when-becoming-invisible.patch
) )
sha512sums=('a97c03dc218a4e03e48f6a7dc82b4a59ebeee2039f17be66bb847681ce9ff3d25e6e015be4af78fe44739f6fad5089b6e683d7657c2e4fde8e547df9a2594a08' sha512sums=('a97c03dc218a4e03e48f6a7dc82b4a59ebeee2039f17be66bb847681ce9ff3d25e6e015be4af78fe44739f6fad5089b6e683d7657c2e4fde8e547df9a2594a08'
'1ff0e088eed61554268009f3d8c5a23c0888bfbe860d6cb288ddf348108446c152fd87e2cb8f54613a88378d8474550632c90f924005d5e0343bf1a801339ccc' '1ff0e088eed61554268009f3d8c5a23c0888bfbe860d6cb288ddf348108446c152fd87e2cb8f54613a88378d8474550632c90f924005d5e0343bf1a801339ccc'
'bfe2b0e6da69ffdca95229eb4015515148fdda909355add1d2dec71cf97e9fdabdfc832c74f455a890846708f28d5bcbec64589e853904d539a438b2dcbd7a18' '6329e08da95e345509001ab6b9e8b73a227d0e63a8d39a3ef9b7d0197940ea9589d39b4aa92cdcc9f21cc4b9110a97f8e80891a12b4b24dff6d23395379abf5c'
'5221b6a7a46f99c58cde1c5406f83d50def2d5b3a2e97be7db759d94d74a5be46da092209e6a4122a6de4b704632c3f013535f80b570349b029ea4124151c4f6' 'b05346b83587d2fe3fbc676a14aca961f05fa58c6912f82fed9e15a4b9fcacce297921003b41980c57ba09c4623d50c905a7c50961c2269a9709fcb67a088002'
'c9a0660c95bd18a02620fb0b870032563669544e7a721e4d91dafb8aebb96d1735414a9e37ed56355fc5afeb8f437a434b4fd5f147c9658cc6974e8e8bab4463' '6f38fd7f6f5a29d05b6dd824af1de6072ebd692c96940ba74e5d1799e21754230010fd70cd2f1ce830a0701d25b07cfbae8cbe49f89ba085cd2dec6796a7790d'
'0b404ff252f94bcdd957d43db26c54c6b47de5a8f810f4febdb0aa5b873c48f23ef2817361e5ce9c09a189e770978cfca24767167604434ece771d759e7c4270' '14979eef47ab1d6e88ab77c35ab00a5e8297d1ed332bb397b8d3906e68c6ffa0b4e0761ef0dfff0221c7e22f5fb709e5bb11b87e046116bb3996df270e3b7b43'
'47f5bffb469ece2b961000cd2d8656b82cba8ac0fa09fa7703c662e0cee2e48744d5b8aa93a4b4508436ea5edfe3038fa7aa88a3b43466f88c7504e6a8ba51ed' 'db6a8d54e86f58f1adecb0f09ab5660ae0d06f4aa8bd0ea2e61da601ae82fd53a3b4c6db96d5827709e700843b70cc5a72851c0d429e3ec05bef250ed48445a0'
'd15c21968a3024888ce4c8e884d861f147358e95a42c1de557251a4c2fccbdddf9cf5a285deedbf73cffbd25fdaad44dd972cb10bf9a5b23a0049b239e75961f' 'f0374c85bd93928a32d60a9516c90c1b2e3537b84f949066110897f05224a568dd57f2cd9d141b0cfa8e89672b081dac3c64304523fcf37f0c018ca78ad71625'
'c1f94ccd836c51ff83735df614bf6d3e2c310c599685e700ae5726ace20434edd04ef0c9be0a8c0f4c458dd164ad1ac817fd32bcbeeefb0107a6ce4cbce9cb08' 'dcdca90cfd701aad02ba12dee9a6482ca9066ff817e6e24bb3d0d6dfbbc48e8e98eb02517983802c66cade34c0d347aec817fe98da8baa7f5fff9187201e9a00'
'6ce870404a6d2bfbb25935a6da59a07447307f8592dd1dc1aaebba2b9f959633565ba4cdc7d50ee3c4e5b4c169397298daa5804c3060fc780dba52099f687393' '64e4adef34a1074410245120d828871c128ee8254d77378cd7b74fe0182abaffdbff6669990a75464335b33d83641893b73e618c7322e1fe3186a748eab07e79'
'6374229b662949e2989eb372a922fda872d2a08e817690b2262f99dc8a02261a75aeeacfc40da2b68a04228b38cda4aeaca4212068e8605b7532662dc459abb4' '64ca66913ade6b28815aa06383089e1c9aaa7a2b50cd425be8876d0a95338615be844a362a55c02541681d51f1921cb0820554f49fe21786649076ca16f6f64b'
'16dfa319e9e18ef8e946b9723e27d1ea1f56e4de8656d8112571bc87aa7ade8dbda4293f064c2477cdaf92c60fca4484b2c7ac322835bf402657275933f6ab52' 'a917037dc63bfdd8d2d04b2d3f625eb9c8ec26868ca2eeef23d78f3442c8233252d86285b771e1c1428408508aedff4407aec5bdc9ef233fda995483fdab4202'
'c81a421475293d3d5c64a744c10a925dc26975a6dfd46e1b3b2a92931da43c311d0a153548889b4e9831bee61ab8b0f5fc504ad3f0ed7f0628f93287e12ad3d3' '013adb73a718f5df05a055de0e5fa17701dc645d8e7025ff1192d99a405dd6a0923fcfdbbad37777ff993545aadf9d4d29bae7191c6505f9f929273d5b374ee2'
'ea36fee6228d582f5f3b886a3de61ad8b139691c3bf30e24a7b20f1eab2f9e43b0dfbf6f254dcef00e2bfbf6826f223a957d3e78524ebd864c64433529e40441' '34710dbf905e6af2d7af3feab9f55c867dcbac6afa0ab6a12f7c458b974ba71e14ef797e9db613d3248c046dee1c1dce8559ceeaf1d95d1215368032e642731d'
'a93f186ed24ee979a4297aa063c435ae541f5f1958b86373f6534a2dd85e2178d6f151f115200c987b5e1d999ebd94d6ce0597ef1e7b3588bcb161c53dd4878e' 'e131c7a65ce0e848f0b91bfd4b3db750bc0bddce64a9ff49d97082ddafb9ddab92f43ea19a2c92b054e85df0f018f43ff5dc8cf81671520079e4e4681d5ac230'
'c4e6a23edf080076c27599e02909a068b11094848f733297496e7ea0061df56be4becdb58449ec7a05ff2a659fa4c0f75f4006cb204578477308d24d764fba41') 'cefa4f5032a06e9341ccdabef022d755c8869b391a33ed5c4bd927672f967d5287d4c017cb7b2d37c163c9f387ca94d5846327461a9ba3b44478ed67a60d6a9f'
'e406d3f16f17b35ce463120eefd2bea3797fa83304ea27628b9a671704451c4a275d6844b0f007997e3a6edc39557442c6eb9eb8b6dc2a50e07341e3b0621e1f'
'6c1cd77e63f760aabb9186edb906092bb9f6a7b2e7bd32deff4af33b5f35e95abe7ff874b6a17112d3da098f970f706c0a05f239fc75b65e60f4c68ae544eacf')
prepare() { prepare() {
cd $_pkgname-$pkgver cd $_pkgname-$pkgver