summaryrefslogtreecommitdiff
path: root/media-libs/phonon-gstreamer
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-11-12 03:31:11 +0000
committerV3n3RiX <venerix@koprulu.sector>2022-11-12 03:31:11 +0000
commit3a9a4f8b478ff62e3c752e20305edb2c7d91959f (patch)
treeaf2b80e575254ddcdc57ea6b2ae02607bb0a7824 /media-libs/phonon-gstreamer
parent7236d0a40beeff3f6f0fcede52d54dfb81880faa (diff)
gentoo auto-resync : 12:11:2022 - 03:31:11
Diffstat (limited to 'media-libs/phonon-gstreamer')
-rw-r--r--media-libs/phonon-gstreamer/Manifest2
-rw-r--r--media-libs/phonon-gstreamer/files/phonon-gstreamer-4.10.0-wayland.patch46
-rw-r--r--media-libs/phonon-gstreamer/phonon-gstreamer-4.10.0-r1.ebuild43
3 files changed, 91 insertions, 0 deletions
diff --git a/media-libs/phonon-gstreamer/Manifest b/media-libs/phonon-gstreamer/Manifest
index 06fe13f631f9..0a83ebe3d617 100644
--- a/media-libs/phonon-gstreamer/Manifest
+++ b/media-libs/phonon-gstreamer/Manifest
@@ -1,3 +1,5 @@
+AUX phonon-gstreamer-4.10.0-wayland.patch 2179 BLAKE2B e596a9c542f24eb5cb0e5f724627f7950aff5946eb502cc61e9e674f0e5adaa6cf15747c815e0bc6e86125ecbcbdc39743fc810d365b7007ea939b53a3771639 SHA512 4c5817d048ea3b07d12ef64330e8329390e9a6683f9804072183487d13d860eafab8c21646784dce8b36a021b592a41c64b5ae61d6da2fcaf58a29da16f123ab
DIST phonon-backend-gstreamer-4.10.0.tar.xz 98532 BLAKE2B b9182a50810536c46999266bd40996bb59ac982e44d2066c2afd897d3a2feb99e5570e36dcc869098f5b171018f4c339a2e3b8df124eaeb88236073245069859 SHA512 3beaba9ea3a332a6908ebdaa966958e8e8056d79cfb210e82a8edaf08f0a8bacbf8094e91b1b1b936406aa634dabb962e6c1468e4dde3febd9efac1a63ea70a4
+EBUILD phonon-gstreamer-4.10.0-r1.ebuild 1045 BLAKE2B 206393dabe1511af48efb2ef50c341171660587e0519f73858967b48edff563050e57944f8861bcceff60b84bea372e6326f0638bcbb42dbb2a689f2f8548761 SHA512 269095a2b1a2a0a29fddfa247b80fd883adcdc3e328803a5e6818f37723581b5416d26acb03efafa91ed1b2d503e93a2805ec7ac9d154354522e2a4d27274c2c
EBUILD phonon-gstreamer-4.10.0.ebuild 979 BLAKE2B 0cef7a1f785270d80d3255526e78618b120942818175eaae72ef8006213d1746b516b1ed02544eaf70f373a434599405718fdf9548094a2e242f2e6ab3d0d2f0 SHA512 42bda195ff29dfa471169b9f0e2c5f97523f7fd6be32fcb5eca234fe677253347b28f142f14751ba8fd42e660a5ae58056fa76e47bbb742d8292ceec5c1bafad
MISC metadata.xml 408 BLAKE2B 07776659b5c1bb14bd28befa8caf94e3b2d46da3f71576aac663b01aa0a49ab3344245784e0091bb2ddc651011831e3a607e0bd75c295e9ccd9bea41f00ada24 SHA512 dc126debed190c51ffd8448d379dfa4a3268a800f70bb2356c0139b50de40dde6392db66d17d00a7cef91622ec0dfb99bf4bf54565bcaf62e76ea57edb7db1f7
diff --git a/media-libs/phonon-gstreamer/files/phonon-gstreamer-4.10.0-wayland.patch b/media-libs/phonon-gstreamer/files/phonon-gstreamer-4.10.0-wayland.patch
new file mode 100644
index 000000000000..ef1697a8395a
--- /dev/null
+++ b/media-libs/phonon-gstreamer/files/phonon-gstreamer-4.10.0-wayland.patch
@@ -0,0 +1,46 @@
+From bbbb160f30a394655cff9398d17961142388b0f2 Mon Sep 17 00:00:00 2001
+From: David Edmundson <kde@davidedmundson.co.uk>
+Date: Wed, 17 Nov 2021 15:20:08 +0000
+Subject: [PATCH] Only create window handles for actual windows
+
+winId() creates a platform window for the given widget. This makes sense
+for the topmost widget in a tree, we can't assume the parent widget is
+the topmost widget.
+
+Doing this on XCB is confusing and wrong, but apparently harmless. Doing
+this on wayland causes issues as we promote the parent window to a
+subsurface but never show that window leaving things in a bizarre
+corrupt state that leads to content not updating.
+
+BUG: 445196
+---
+ gstreamer/videowidget.cpp | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/gstreamer/videowidget.cpp b/gstreamer/videowidget.cpp
+index bd27b21f..83fa9b9e 100644
+--- a/gstreamer/videowidget.cpp
++++ b/gstreamer/videowidget.cpp
+@@ -158,7 +158,7 @@ void VideoWidget::setupVideoBin()
+ gst_object_unref(videopad);
+ QWidget *parentWidget = qobject_cast<QWidget*>(parent());
+ if (parentWidget) {
+- parentWidget->winId(); // Due to some existing issues with alien in 4.4,
++ parentWidget->window()->winId(); // Due to some existing issues with alien in 4.4,
+ // we must currently force the creation of a parent widget.
+ }
+ m_isValid = true; //initialization ok, accept input
+@@ -171,8 +171,8 @@ void VideoWidget::setupVideoBin()
+ gst_object_unref(videopad);
+ QWidget *parentWidget = qobject_cast<QWidget*>(parent());
+ if (parentWidget) {
+- parentWidget->winId(); // Due to some existing issues with alien in 4.4,
+- // we must currently force the creation of a parent widget.
++ parentWidget->window()->winId(); // Due to some existing issues with alien in 4.4,
++ // we must currently force the creation of a parent widget's window
+ }
+ m_isValid = true; //initialization ok, accept input
+ }
+--
+GitLab
+
diff --git a/media-libs/phonon-gstreamer/phonon-gstreamer-4.10.0-r1.ebuild b/media-libs/phonon-gstreamer/phonon-gstreamer-4.10.0-r1.ebuild
new file mode 100644
index 000000000000..3b0a28563e2d
--- /dev/null
+++ b/media-libs/phonon-gstreamer/phonon-gstreamer-4.10.0-r1.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PN="phonon-backend-gstreamer"
+inherit ecm kde.org
+
+DESCRIPTION="GStreamer backend for the Phonon multimedia library"
+HOMEPAGE="https://community.kde.org/Phonon"
+
+if [[ ${KDE_BUILD_TYPE} = release ]]; then
+ SRC_URI="mirror://kde/stable/phonon/${MY_PN}/${PV}/${MY_PN}-${PV}.tar.xz"
+ S="${WORKDIR}/${MY_PN}-${PV}"
+ KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+fi
+
+LICENSE="LGPL-2.1+ || ( LGPL-2.1 LGPL-3 )"
+SLOT="0"
+IUSE="alsa debug +network"
+
+DEPEND="
+ dev-libs/glib:2
+ dev-libs/libxml2:2
+ dev-qt/qtgui:5
+ dev-qt/qtopengl:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtx11extras:5
+ media-libs/gst-plugins-base:1.0
+ media-libs/gstreamer:1.0
+ >=media-libs/phonon-4.10.60
+ media-plugins/gst-plugins-meta:1.0[alsa?,ogg,vorbis]
+ virtual/opengl
+"
+RDEPEND="${DEPEND}
+ network? ( media-plugins/gst-plugins-soup:1.0 )
+"
+BDEPEND="
+ dev-qt/linguist-tools:5
+ virtual/pkgconfig
+"
+
+PATCHES=( "${FILESDIR}/${P}-wayland.patch" ) # KDE-bug 445196