public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/proj/guru:dev commit in: media-video/syncplay/, media-video/syncplay/files/
  2020-05-01  9:59 [gentoo-commits] repo/proj/guru:master commit in: media-video/syncplay/files/, media-video/syncplay/ Andrew Ammerlaan
@ 2020-04-30 18:15 ` Andrew Ammerlaan
  0 siblings, 0 replies; 6+ messages in thread
From: Andrew Ammerlaan @ 2020-04-30 18:15 UTC (permalink / raw
  To: gentoo-commits

commit:     508464ed92376afc7f9e7f4a2779f82960cc8cf4
Author:     Andrew Ammerlaan <andrewammerlaan <AT> riseup <DOT> net>
AuthorDate: Thu Apr 30 18:14:59 2020 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> riseup <DOT> net>
CommitDate: Thu Apr 30 18:15:14 2020 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=508464ed

media-video/syncplay: add initd script and confd conf

Package-Manager: Portage-2.3.99, Repoman-2.3.22
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> riseup.net>

 media-video/syncplay/files/syncplay-server-init    | 65 ++++++++++++++++++++++
 .../syncplay/files/syncplay-server-init-conf       | 14 +++++
 media-video/syncplay/syncplay-1.6.4_p1.ebuild      |  3 +
 3 files changed, 82 insertions(+)

diff --git a/media-video/syncplay/files/syncplay-server-init b/media-video/syncplay/files/syncplay-server-init
new file mode 100644
index 0000000..3018075
--- /dev/null
+++ b/media-video/syncplay/files/syncplay-server-init
@@ -0,0 +1,65 @@
+#!/sbin/openrc-run
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+command="/usr/bin/python"
+command_args="/usr/bin/syncplay-server"
+name="syncplay server"
+pidfile="/run/syncplay-server.pid"
+
+description="Syncplay Server to synchronize media playback"
+
+start() {
+	ebegin "Starting ${name}"
+
+	args=()
+
+	if [[ ${port} ]]; then
+		args+=" --port=${port}"
+	fi
+
+	if [[ ${isolate} == True ]]; then
+		args+=" --isolate-rooms"
+	fi
+
+	if [[ ${password} ]]; then
+		args+=" --password=${password}"
+	fi
+
+	if [[ ${salt} ]]; then
+		args+=" --salt=${salt}"
+	fi
+
+	if [[ ${motd} ]]; then
+		args+=" --motd-file=${motd}"
+	fi
+
+	if [[ ${noReady} == True ]]; then
+		args+=" --disable-ready"
+	fi
+
+	if [[ ${noChat} == True ]]; then
+		args+=" --disable-chat"
+	fi
+
+	if [[ ${maxChatLength} ]]; then
+		args+=" --max-chat-message-length=${maxChatLength}"
+	fi
+
+	if [[ ${usernameLength} ]]; then
+		args+=" --max-username-length=${usernameLength}"
+	fi
+
+	if [[ ${statsFile} ]]; then
+		args+=" --stats-db-file=${statsFile}"
+	fi
+
+	if [[ ${tls} ]]; then
+		args+=" --tls=${tls}"
+	fi
+
+	start-stop-daemon --start --background --make-pid --pidfile="${pidfile}" \
+		--exec "${command}" -- "${command_args}" ${args}
+
+	eend $?
+}

diff --git a/media-video/syncplay/files/syncplay-server-init-conf b/media-video/syncplay/files/syncplay-server-init-conf
new file mode 100644
index 0000000..c07ef82
--- /dev/null
+++ b/media-video/syncplay/files/syncplay-server-init-conf
@@ -0,0 +1,14 @@
+# This is the file that syncplay service loads settings from, it does not affect the binary itself
+# See https://syncplay.pl/guide/server/ for a list of available flags and description
+
+#port="223"
+#isolate=False
+#password="yourpassword"
+#salt="RANDOMSALT"
+#motd="/etc/syncplay/motd"
+#noReady=False
+#noChat=False
+#maxChatLength="500"
+#usernameLength="20"
+#statsFile="/etc/syncplay/stats.db"
+#tls="/etc/letsencrypt/live/syncplay.example.com/"

diff --git a/media-video/syncplay/syncplay-1.6.4_p1.ebuild b/media-video/syncplay/syncplay-1.6.4_p1.ebuild
index 773ee01..5e5fc87 100644
--- a/media-video/syncplay/syncplay-1.6.4_p1.ebuild
+++ b/media-video/syncplay/syncplay-1.6.4_p1.ebuild
@@ -40,6 +40,9 @@ python_install() {
 		emake "${MY_MAKEOPTS[@]}" install-client
 	use server && \
 		emake "${MY_MAKEOPTS[@]}" install-server
+
+	newinitd "${FILESDIR}/${PN}-server-init" "${PN}"
+	newconfd "${FILESDIR}/${PN}-server-init-conf" "${PN}"
 }
 
 pkg_postinst() {


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/proj/guru:dev commit in: media-video/syncplay/, media-video/syncplay/files/
  2020-10-07 12:27 [gentoo-commits] repo/proj/guru:master commit in: media-video/syncplay/, media-video/syncplay/files/ Andrew Ammerlaan
@ 2020-10-07 12:27 ` Andrew Ammerlaan
  0 siblings, 0 replies; 6+ messages in thread
From: Andrew Ammerlaan @ 2020-10-07 12:27 UTC (permalink / raw
  To: gentoo-commits

commit:     705539c86962a41740499bc7197fb44ccb255764
Author:     Andrew Ammerlaan <andrewammerlaan <AT> riseup <DOT> net>
AuthorDate: Wed Oct  7 12:27:13 2020 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> riseup <DOT> net>
CommitDate: Wed Oct  7 12:27:13 2020 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=705539c8

media-video/syncplay: patch gui to work with PyQt5

Package-Manager: Portage-3.0.8, Repoman-3.0.1
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> riseup.net>

 .../syncplay/files/syncplay-allow-PyQt5.patch      | 474 +++++++++++++++++++++
 ...cplay-1.6.5.ebuild => syncplay-1.6.5-r1.ebuild} |   7 +-
 2 files changed, 476 insertions(+), 5 deletions(-)

diff --git a/media-video/syncplay/files/syncplay-allow-PyQt5.patch b/media-video/syncplay/files/syncplay-allow-PyQt5.patch
new file mode 100644
index 00000000..89c9de33
--- /dev/null
+++ b/media-video/syncplay/files/syncplay-allow-PyQt5.patch
@@ -0,0 +1,474 @@
+From c759525889f303195e677f9341cf325decf74809 Mon Sep 17 00:00:00 2001
+From: Andrew Ammerlaan <andrewammerlaan@riseup.net>
+Date: Wed, 7 Oct 2020 13:31:46 +0200
+Subject: [PATCH] PyQt5 compatability
+
+---
+ syncplay/ui/ConfigurationGetter.py |   4 +-
+ syncplay/ui/GuiConfiguration.py    |  16 ++--
+ syncplay/ui/gui.py                 | 130 ++++++++++++++++-------------
+ 3 files changed, 82 insertions(+), 68 deletions(-)
+
+diff --git a/syncplay/ui/ConfigurationGetter.py b/syncplay/ui/ConfigurationGetter.py
+index dd1d8ec0..6d83c650 100755
+--- a/syncplay/ui/ConfigurationGetter.py
++++ b/syncplay/ui/ConfigurationGetter.py
+@@ -513,10 +513,10 @@ def getConfiguration(self):
+         self._overrideConfigWithArgs(args)
+         if not self._config['noGui']:
+             try:
+-                from syncplay.vendor.Qt import QtWidgets, IsPySide, IsPySide2
++                from syncplay.vendor.Qt import QtWidgets, IsPySide, IsPySide2, IsPyQt5
+                 from syncplay.vendor.Qt.QtCore import QCoreApplication
+                 from syncplay.vendor import qt5reactor
+-                if not (IsPySide2 or IsPySide):
++                if not (IsPySide2 or IsPySide or IsPyQt5):
+                     raise ImportError
+                 if QCoreApplication.instance() is None:
+                     self.app = QtWidgets.QApplication(sys.argv)
+diff --git a/syncplay/ui/GuiConfiguration.py b/syncplay/ui/GuiConfiguration.py
+index 96915814..cfe51b26 100755
+--- a/syncplay/ui/GuiConfiguration.py
++++ b/syncplay/ui/GuiConfiguration.py
+@@ -11,7 +11,7 @@
+ from syncplay.utils import isBSD, isLinux, isMacOS, isWindows
+ from syncplay.utils import resourcespath, posixresourcespath
+
+-from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__, IsPySide, IsPySide2
++from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__, IsPySide, IsPySide2, IsPyQt5
+ from syncplay.vendor.Qt.QtCore import Qt, QSettings, QCoreApplication, QSize, QPoint, QUrl, QLine, QEventLoop, Signal
+ from syncplay.vendor.Qt.QtWidgets import QApplication, QLineEdit, QLabel, QCheckBox, QButtonGroup, QRadioButton, QDoubleSpinBox, QPlainTextEdit
+ from syncplay.vendor.Qt.QtGui import QCursor, QIcon, QImage, QDesktopServices
+@@ -21,6 +21,8 @@
+     QtWidgets.QApplication.setAttribute(QtCore.Qt.AA_UseHighDpiPixmaps, True)
+ if IsPySide2:
+     from PySide2.QtCore import QStandardPaths
++elif IsPyQt5:
++    from PyQt5.QtCore import QStandardPaths
+
+
+ class GuiConfiguration:
+@@ -445,7 +447,7 @@ def browseMediapath(self):
+                 defaultdirectory = QDesktopServices.storageLocation(QDesktopServices.HomeLocation)
+             else:
+                 defaultdirectory = ""
+-        elif IsPySide2:
++        elif IsPySide2 or IsPyQt5:
+             if self.config["mediaSearchDirectories"] and os.path.isdir(self.config["mediaSearchDirectories"][0]):
+                 defaultdirectory = self.config["mediaSearchDirectories"][0]
+             elif os.path.isdir(self.mediadirectory):
+@@ -1181,7 +1183,7 @@ def addMessageTab(self):
+
+         self.displaySettingsGroup = QtWidgets.QGroupBox(getMessage("messages-other-title"))
+         self.displaySettingsLayout = QtWidgets.QVBoxLayout()
+-        self.displaySettingsLayout.setAlignment(Qt.AlignTop & Qt.AlignLeft)
++        self.displaySettingsLayout.setAlignment(Qt.AlignTop | Qt.AlignLeft)
+         self.displaySettingsFrame = QtWidgets.QFrame()
+
+         self.showDurationNotificationCheckbox = QCheckBox(getMessage("showdurationnotification-label"))
+@@ -1193,7 +1195,7 @@ def addMessageTab(self):
+         self.languageLayout.setContentsMargins(0, 0, 0, 0)
+         self.languageFrame.setLayout(self.languageLayout)
+         self.languageFrame.setSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum)
+-        self.languageLayout.setAlignment(Qt.AlignTop & Qt.AlignLeft)
++        self.languageLayout.setAlignment(Qt.AlignTop | Qt.AlignLeft)
+         self.languageLabel = QLabel(getMessage("language-label"), self)
+         self.languageCombobox = QtWidgets.QComboBox(self)
+         self.languageCombobox.addItem(getMessage("automatic-language").format(getMessage("LANGUAGE", getInitialLanguage())))
+@@ -1214,7 +1216,7 @@ def addMessageTab(self):
+
+         self.displaySettingsGroup.setLayout(self.displaySettingsLayout)
+         self.displaySettingsGroup.setMaximumHeight(self.displaySettingsGroup.minimumSizeHint().height())
+-        self.displaySettingsLayout.setAlignment(Qt.AlignTop & Qt.AlignLeft)
++        self.displaySettingsLayout.setAlignment(Qt.AlignTop | Qt.AlignLeft)
+         self.messageLayout.addWidget(self.displaySettingsGroup)
+
+         # messageFrame
+@@ -1394,7 +1396,9 @@ def __init__(self, config, playerpaths, error, defaultConfig):
+         self.publicServerAddresses = []
+
+         self._playerProbeThread = GetPlayerIconThread()
+-        self._playerProbeThread.done.connect(self._updateExecutableIcon)
++        # To-Do: Why does this not work with PyQt5
++        if not IsPyQt5:
++            self._playerProbeThread.done.connect(self._updateExecutableIcon)
+         self._playerProbeThread.start()
+
+         if self.config['clearGUIData'] == True:
+diff --git a/syncplay/ui/gui.py b/syncplay/ui/gui.py
+index c59c5697..a8fe427d 100755
+--- a/syncplay/ui/gui.py
++++ b/syncplay/ui/gui.py
+@@ -18,8 +18,7 @@
+ from syncplay.utils import resourcespath
+ from syncplay.utils import isLinux, isWindows, isMacOS
+ from syncplay.utils import formatTime, sameFilename, sameFilesize, sameFileduration, RoomPasswordProvider, formatSize, isURL
+-from syncplay.vendor import Qt
+-from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__, __binding_version__, __qt_version__, IsPySide, IsPySide2
++from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__, __binding_version__, __qt_version__, IsPySide, IsPySide2, IsPyQt5
+ from syncplay.vendor.Qt.QtCore import Qt, QSettings, QSize, QPoint, QUrl, QLine, QDateTime
+ applyDPIScaling = True
+ if isLinux():
+@@ -32,15 +31,17 @@
+     QtWidgets.QApplication.setAttribute(QtCore.Qt.AA_UseHighDpiPixmaps, applyDPIScaling)
+ if IsPySide2:
+     from PySide2.QtCore import QStandardPaths
++elif IsPyQt5:
++    from PyQt5.QtCore import QStandardPaths
+ if isMacOS() and IsPySide:
+     from Foundation import NSURL
+     from Cocoa import NSString, NSUTF8StringEncoding
+ lastCheckedForUpdates = None
+ from syncplay.vendor import darkdetect
+ if isMacOS():
+-	isDarkMode = darkdetect.isDark()
++    isDarkMode = darkdetect.isDark()
+ else:
+-	isDarkMode = None
++    isDarkMode = None
+
+
+ class ConsoleInGUI(ConsoleUI):
+@@ -139,7 +140,7 @@ def __init__(self, parent=None):
+             self.setWindowTitle(getMessage("about-dialog-title"))
+             if isWindows():
+                 self.setWindowFlags(self.windowFlags() & ~Qt.WindowContextHelpButtonHint)
+-        self.setWindowIcon(QtGui.QPixmap(resourcespath + 'syncplay.png'))
++        self.setWindowIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'syncplay.png')))
+         nameLabel = QtWidgets.QLabel("<center><strong>Syncplay</strong></center>")
+         nameLabel.setFont(QtGui.QFont("Helvetica", 18))
+         linkLabel = QtWidgets.QLabel()
+@@ -202,7 +203,7 @@ def __init__(self, tlsData, parent=None):
+             self.setWindowTitle(getMessage("tls-information-title"))
+             if isWindows():
+                 self.setWindowFlags(self.windowFlags() & ~Qt.WindowContextHelpButtonHint)
+-        self.setWindowIcon(QtGui.QPixmap(resourcespath + 'syncplay.png'))
++        self.setWindowIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'syncplay.png')))
+         statusLabel = QtWidgets.QLabel(getMessage("tls-dialog-status-label").format(tlsData["subject"]))
+         descLabel = QtWidgets.QLabel(getMessage("tls-dialog-desc-label").format(tlsData["subject"]))
+         connDataLabel = QtWidgets.QLabel(getMessage("tls-dialog-connection-label").format(tlsData["protocolVersion"], tlsData["cipher"]))
+@@ -454,6 +455,15 @@ def mouseMoveEvent(self, event):
+     def needsClient(f):  # @NoSelf
+         @wraps(f)
+         def wrapper(self, *args, **kwds):
++            # To-Do: For some strange reason the args tumple contains False
++            # for some functions, resulting in a crash as the function only accepts
++            # one argument (self). I do not understand where this 'False' is coming
++            # from, it does not seem to be added when the function is called.
++            # This very ugly workaround fixes the problem
++            if IsPyQt5:
++                if len(args)>0:
++                    if not args[0]:
++                        args = ()
+             if not self._syncplayClient:
+                 self.showDebugMessage("Tried to use client before it was ready!")
+                 return
+@@ -614,11 +624,11 @@ def showUserList(self, currentUser, rooms):
+
+             if isControlledRoom:
+                 if room == currentUser.room and currentUser.isController():
+-                    roomitem.setIcon(QtGui.QPixmap(resourcespath + 'lock_open.png'))
++                    roomitem.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'lock_open.png')))
+                 else:
+-                    roomitem.setIcon(QtGui.QPixmap(resourcespath + 'lock.png'))
++                    roomitem.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'lock.png')))
+             else:
+-                roomitem.setIcon(QtGui.QPixmap(resourcespath + 'chevrons_right.png'))
++                roomitem.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'chevrons_right.png')))
+
+             for user in rooms[room]:
+                 useritem = QtGui.QStandardItem(user.username)
+@@ -719,31 +729,31 @@ def openPlaylistMenu(self, position):
+             pathFound = self._syncplayClient.fileSwitch.findFilepath(firstFile) if not isURL(firstFile) else None
+             if self._syncplayClient.userlist.currentUser.file is None or firstFile != self._syncplayClient.userlist.currentUser.file["name"]:
+                 if isURL(firstFile):
+-                    menu.addAction(QtGui.QPixmap(resourcespath + "world_go.png"), getMessage("openstreamurl-menu-label"), lambda: self.openFile(firstFile, resetPosition=True, fromUser=True))
++                    menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "world_go.png")), getMessage("openstreamurl-menu-label"), lambda: self.openFile(firstFile, resetPosition=True, fromUser=True))
+                 elif pathFound:
+-                        menu.addAction(QtGui.QPixmap(resourcespath + "film_go.png"), getMessage("openmedia-menu-label"), lambda: self.openFile(pathFound, resetPosition=True, fromUser=True))
++                        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_go.png")), getMessage("openmedia-menu-label"), lambda: self.openFile(pathFound, resetPosition=True, fromUser=True))
+             if pathFound:
+-                menu.addAction(QtGui.QPixmap(resourcespath + "folder_film.png"),
++                menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "folder_film.png")),
+                                getMessage('open-containing-folder'),
+                                lambda: utils.open_system_file_browser(pathFound))
+             if self._syncplayClient.isUntrustedTrustableURI(firstFile):
+                 domain = utils.getDomainFromURL(firstFile)
+-                menu.addAction(QtGui.QPixmap(resourcespath + "shield_add.png"), getMessage("addtrusteddomain-menu-label").format(domain), lambda: self.addTrustedDomain(domain))
+-            menu.addAction(QtGui.QPixmap(resourcespath + "delete.png"), getMessage("removefromplaylist-menu-label"), lambda: self.deleteSelectedPlaylistItems())
++                menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "shield_add.png")), getMessage("addtrusteddomain-menu-label").format(domain), lambda: self.addTrustedDomain(domain))
++            menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "delete.png")), getMessage("removefromplaylist-menu-label"), lambda: self.deleteSelectedPlaylistItems())
+             menu.addSeparator()
+-        menu.addAction(QtGui.QPixmap(resourcespath + "arrow_switch.png"), getMessage("shuffleremainingplaylist-menu-label"), lambda: self.shuffleRemainingPlaylist())
+-        menu.addAction(QtGui.QPixmap(resourcespath + "arrow_switch.png"), getMessage("shuffleentireplaylist-menu-label"), lambda: self.shuffleEntirePlaylist())
+-        menu.addAction(QtGui.QPixmap(resourcespath + "arrow_undo.png"), getMessage("undoplaylist-menu-label"), lambda: self.undoPlaylistChange())
+-        menu.addAction(QtGui.QPixmap(resourcespath + "film_edit.png"), getMessage("editplaylist-menu-label"), lambda: self.openEditPlaylistDialog())
+-        menu.addAction(QtGui.QPixmap(resourcespath + "film_add.png"), getMessage("addfilestoplaylist-menu-label"), lambda: self.OpenAddFilesToPlaylistDialog())
+-        menu.addAction(QtGui.QPixmap(resourcespath + "world_add.png"), getMessage("addurlstoplaylist-menu-label"), lambda: self.OpenAddURIsToPlaylistDialog())
++        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "arrow_switch.png")), getMessage("shuffleremainingplaylist-menu-label"), lambda: self.shuffleRemainingPlaylist())
++        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "arrow_switch.png")), getMessage("shuffleentireplaylist-menu-label"), lambda: self.shuffleEntirePlaylist())
++        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "arrow_undo.png")), getMessage("undoplaylist-menu-label"), lambda: self.undoPlaylistChange())
++        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_edit.png")), getMessage("editplaylist-menu-label"), lambda: self.openEditPlaylistDialog())
++        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_add.png")), getMessage("addfilestoplaylist-menu-label"), lambda: self.OpenAddFilesToPlaylistDialog())
++        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "world_add.png")), getMessage("addurlstoplaylist-menu-label"), lambda: self.OpenAddURIsToPlaylistDialog())
+         menu.addSeparator()
+         menu.addAction(getMessage("loadplaylistfromfile-menu-label"),lambda: self.OpenLoadPlaylistFromFileDialog()) # TODO: Add icon
+         menu.addAction("Load and shuffle playlist from file",lambda: self.OpenLoadPlaylistFromFileDialog(shuffle=True))  # TODO: Add icon and messages_en
+         menu.addAction(getMessage("saveplaylisttofile-menu-label"),lambda: self.OpenSavePlaylistToFileDialog()) # TODO: Add icon
+         menu.addSeparator()
+-        menu.addAction(QtGui.QPixmap(resourcespath + "film_folder_edit.png"), getMessage("setmediadirectories-menu-label"), lambda: self.openSetMediaDirectoriesDialog())
+-        menu.addAction(QtGui.QPixmap(resourcespath + "shield_edit.png"), getMessage("settrusteddomains-menu-label"), lambda: self.openSetTrustedDomainsDialog())
++        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_folder_edit.png")), getMessage("setmediadirectories-menu-label"), lambda: self.openSetMediaDirectoriesDialog())
++        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "shield_edit.png")), getMessage("settrusteddomains-menu-label"), lambda: self.openSetTrustedDomainsDialog())
+         menu.exec_(self.playlist.viewport().mapToGlobal(position))
+
+     def openRoomMenu(self, position):
+@@ -778,25 +788,25 @@ def openRoomMenu(self, position):
+         elif username and filename and filename != getMessage("nofile-note"):
+             if self.config['sharedPlaylistEnabled'] and not self.isItemInPlaylist(filename):
+                 if isURL(filename):
+-                    menu.addAction(QtGui.QPixmap(resourcespath + "world_add.png"), addUsersStreamToPlaylistLabelText, lambda: self.addStreamToPlaylist(filename))
++                    menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "world_add.png")), addUsersStreamToPlaylistLabelText, lambda: self.addStreamToPlaylist(filename))
+                 else:
+-                    menu.addAction(QtGui.QPixmap(resourcespath + "film_add.png"), addUsersFileToPlaylistLabelText, lambda: self.addStreamToPlaylist(filename))
++                    menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_add.png")), addUsersFileToPlaylistLabelText, lambda: self.addStreamToPlaylist(filename))
+
+             if self._syncplayClient.userlist.currentUser.file is None or filename != self._syncplayClient.userlist.currentUser.file["name"]:
+                 if isURL(filename):
+-                    menu.addAction(QtGui.QPixmap(resourcespath + "world_go.png"), getMessage("openusersstream-menu-label").format(shortUsername), lambda: self.openFile(filename, resetPosition=False, fromUser=True))
++                    menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "world_go.png")), getMessage("openusersstream-menu-label").format(shortUsername), lambda: self.openFile(filename, resetPosition=False, fromUser=True))
+                 else:
+                     pathFound = self._syncplayClient.fileSwitch.findFilepath(filename)
+                     if pathFound:
+-                        menu.addAction(QtGui.QPixmap(resourcespath + "film_go.png"), getMessage("openusersfile-menu-label").format(shortUsername), lambda: self.openFile(pathFound, resetPosition=False, fromUser=True))
++                        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_go.png")), getMessage("openusersfile-menu-label").format(shortUsername), lambda: self.openFile(pathFound, resetPosition=False, fromUser=True))
+             if self._syncplayClient.isUntrustedTrustableURI(filename):
+                 domain = utils.getDomainFromURL(filename)
+-                menu.addAction(QtGui.QPixmap(resourcespath + "shield_add.png"), getMessage("addtrusteddomain-menu-label").format(domain), lambda: self.addTrustedDomain(domain))
++                menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "shield_add.png")), getMessage("addtrusteddomain-menu-label").format(domain), lambda: self.addTrustedDomain(domain))
+
+             if not isURL(filename) and filename != getMessage("nofile-note"):
+                 path = self._syncplayClient.fileSwitch.findFilepath(filename)
+                 if path:
+-                    menu.addAction(QtGui.QPixmap(resourcespath + "folder_film.png"), getMessage('open-containing-folder'), lambda: utils.open_system_file_browser(path))
++                    menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "folder_film.png")), getMessage('open-containing-folder'), lambda: utils.open_system_file_browser(path))
+         else:
+             return
+         menu.exec_(self.listTreeView.viewport().mapToGlobal(position))
+@@ -808,7 +818,7 @@ def updateListGeometry(self):
+                 self.listTreeView.setFirstColumnSpanned(roomtocheck, self.listTreeView.rootIndex(), True)
+                 roomtocheck += 1
+             self.listTreeView.header().setStretchLastSection(False)
+-            if IsPySide2:
++            if IsPySide2 or IsPyQt5:
+                 self.listTreeView.header().setSectionResizeMode(0, QtWidgets.QHeaderView.ResizeToContents)
+                 self.listTreeView.header().setSectionResizeMode(1, QtWidgets.QHeaderView.ResizeToContents)
+                 self.listTreeView.header().setSectionResizeMode(2, QtWidgets.QHeaderView.ResizeToContents)
+@@ -822,7 +832,7 @@ def updateListGeometry(self):
+             if self.listTreeView.header().width() < (NarrowTabsWidth+self.listTreeView.header().sectionSize(3)):
+                 self.listTreeView.header().resizeSection(3, self.listTreeView.header().width()-NarrowTabsWidth)
+             else:
+-                if IsPySide2:
++                if IsPySide2 or IsPyQt5:
+                     self.listTreeView.header().setSectionResizeMode(3, QtWidgets.QHeaderView.Stretch)
+                 if IsPySide:
+                     self.listTreeView.header().setResizeMode(3, QtWidgets.QHeaderView.Stretch)
+@@ -1003,7 +1013,7 @@ def getInitialMediaDirectory(self, includeUserSpecifiedDirectories=True):
+                 defaultdirectory = QtGui.QDesktopServices.storageLocation(QtGui.QDesktopServices.HomeLocation)
+             else:
+                 defaultdirectory = ""
+-        elif IsPySide2:
++        elif IsPySide2 or IsPyQt5:
+             if self.config["mediaSearchDirectories"] and os.path.isdir(self.config["mediaSearchDirectories"][0]) and includeUserSpecifiedDirectories:
+                 defaultdirectory = self.config["mediaSearchDirectories"][0]
+             elif includeUserSpecifiedDirectories and os.path.isdir(self.mediadirectory):
+@@ -1410,7 +1420,7 @@ def addTopLayout(self, window):
+         window.chatInput.setMaxLength(constants.MAX_CHAT_MESSAGE_LENGTH)
+         window.chatInput.returnPressed.connect(self.sendChatMessage)
+         window.chatButton = QtWidgets.QPushButton(
+-            QtGui.QPixmap(resourcespath + 'email_go.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'email_go.png')),
+             getMessage("sendmessage-label"))
+         window.chatButton.pressed.connect(self.sendChatMessage)
+         window.chatLayout = QtWidgets.QHBoxLayout()
+@@ -1445,7 +1455,7 @@ def addTopLayout(self, window):
+         window.listlabel = QtWidgets.QLabel(getMessage("userlist-heading-label"))
+         if isMacOS:
+             window.listlabel.setMinimumHeight(21)
+-            window.sslButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'lock_green.png').scaled(14, 14),"")
++            window.sslButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'lock_green.png').scaled(14, 14)),"")
+             window.sslButton.setVisible(False)
+             window.sslButton.setFixedHeight(21)
+             window.sslButton.setFixedWidth(21)
+@@ -1453,7 +1463,7 @@ def addTopLayout(self, window):
+             window.sslButton.setStyleSheet("QPushButton:!hover{border: 1px solid gray;} QPushButton:hover{border:2px solid black;}")
+         else:
+             window.listlabel.setMinimumHeight(27)
+-            window.sslButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'lock_green.png'),"")
++            window.sslButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'lock_green.png')),"")
+             window.sslButton.setVisible(False)
+             window.sslButton.setFixedHeight(27)
+             window.sslButton.setFixedWidth(27)
+@@ -1485,7 +1495,7 @@ def addTopLayout(self, window):
+         window.roomsCombobox.setEditable(True)
+         #window.roomsCombobox.setMaxLength(constants.MAX_ROOM_NAME_LENGTH)
+         window.roomButton = QtWidgets.QPushButton(
+-            QtGui.QPixmap(resourcespath + 'door_in.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'door_in.png')),
+             getMessage("joinroom-label"))
+         window.roomButton.pressed.connect(self.joinRoom)
+         window.roomButton.setFixedWidth(window.roomButton.sizeHint().width()+3)
+@@ -1620,24 +1630,24 @@ def addPlaybackLayout(self, window):
+         window.playbackFrame.setLayout(window.playbackLayout)
+         window.seekInput = QtWidgets.QLineEdit()
+         window.seekInput.returnPressed.connect(self.seekFromButton)
+-        window.seekButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'clock_go.png'), "")
++        window.seekButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'clock_go.png')), "")
+         window.seekButton.setToolTip(getMessage("seektime-menu-label"))
+         window.seekButton.pressed.connect(self.seekFromButton)
+         window.seekInput.setText("0:00")
+         window.seekInput.setFixedWidth(60)
+         window.playbackLayout.addWidget(window.seekInput)
+         window.playbackLayout.addWidget(window.seekButton)
+-        window.unseekButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'arrow_undo.png'), "")
++        window.unseekButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'arrow_undo.png')), "")
+         window.unseekButton.setToolTip(getMessage("undoseek-menu-label"))
+         window.unseekButton.pressed.connect(self.undoSeek)
+
+         window.miscLayout = QtWidgets.QHBoxLayout()
+         window.playbackLayout.addWidget(window.unseekButton)
+-        window.playButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'control_play_blue.png'), "")
++        window.playButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_play_blue.png')), "")
+         window.playButton.setToolTip(getMessage("play-menu-label"))
+         window.playButton.pressed.connect(self.play)
+         window.playbackLayout.addWidget(window.playButton)
+-        window.pauseButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'control_pause_blue.png'), "")
++        window.pauseButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_pause_blue.png')), "")
+         window.pauseButton.setToolTip(getMessage("pause-menu-label"))
+         window.pauseButton.pressed.connect(self.pause)
+         window.playbackLayout.addWidget(window.pauseButton)
+@@ -1657,13 +1667,13 @@ def populateMenubar(self, window):
+         # File menu
+
+         window.fileMenu = QtWidgets.QMenu(getMessage("file-menu-label"), self)
+-        window.openAction = window.fileMenu.addAction(QtGui.QPixmap(resourcespath + 'folder_explore.png'),
++        window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'folder_explore.png')),
+                                                       getMessage("openmedia-menu-label"))
+         window.openAction.triggered.connect(self.browseMediapath)
+-        window.openAction = window.fileMenu.addAction(QtGui.QPixmap(resourcespath + 'world_explore.png'),
++        window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'world_explore.png')),
+                                                       getMessage("openstreamurl-menu-label"))
+         window.openAction.triggered.connect(self.promptForStreamURL)
+-        window.openAction = window.fileMenu.addAction(QtGui.QPixmap(resourcespath + 'film_folder_edit.png'),
++        window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'film_folder_edit.png')),
+                                                       getMessage("setmediadirectories-menu-label"))
+         window.openAction.triggered.connect(self.openSetMediaDirectoriesDialog)
+
+@@ -1671,7 +1681,7 @@ def populateMenubar(self, window):
+         if isMacOS():
+             window.exitAction.setMenuRole(QtWidgets.QAction.QuitRole)
+         else:
+-            window.exitAction.setIcon(QtGui.QPixmap(resourcespath + 'cross.png'))
++            window.exitAction.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'cross.png')))
+         window.exitAction.triggered.connect(self.exitSyncplay)
+
+         if(window.editMenu is not None):
+@@ -1683,19 +1693,19 @@ def populateMenubar(self, window):
+
+         window.playbackMenu = QtWidgets.QMenu(getMessage("playback-menu-label"), self)
+         window.playAction = window.playbackMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'control_play_blue.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_play_blue.png')),
+             getMessage("play-menu-label"))
+         window.playAction.triggered.connect(self.play)
+         window.pauseAction = window.playbackMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'control_pause_blue.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_pause_blue.png')),
+             getMessage("pause-menu-label"))
+         window.pauseAction.triggered.connect(self.pause)
+         window.seekAction = window.playbackMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'clock_go.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'clock_go.png')),
+             getMessage("seektime-menu-label"))
+         window.seekAction.triggered.connect(self.seekPositionDialog)
+         window.unseekAction = window.playbackMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'arrow_undo.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'arrow_undo.png')),
+             getMessage("undoseek-menu-label"))
+         window.unseekAction.triggered.connect(self.undoSeek)
+
+@@ -1705,17 +1715,17 @@ def populateMenubar(self, window):
+
+         window.advancedMenu = QtWidgets.QMenu(getMessage("advanced-menu-label"), self)
+         window.setoffsetAction = window.advancedMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'timeline_marker.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'timeline_marker.png')),
+             getMessage("setoffset-menu-label"))
+         window.setoffsetAction.triggered.connect(self.setOffset)
+         window.setTrustedDomainsAction = window.advancedMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'shield_edit.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'shield_edit.png')),
+             getMessage("settrusteddomains-menu-label"))
+         window.setTrustedDomainsAction.triggered.connect(self.openSetTrustedDomainsDialog)
+         window.createcontrolledroomAction = window.advancedMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'page_white_key.png'), getMessage("createcontrolledroom-menu-label"))
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'page_white_key.png')), getMessage("createcontrolledroom-menu-label"))
+         window.createcontrolledroomAction.triggered.connect(self.createControlledRoom)
+-        window.identifyascontroller = window.advancedMenu.addAction(QtGui.QPixmap(resourcespath + 'key_go.png'),
++        window.identifyascontroller = window.advancedMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'key_go.png')),
+                                                                     getMessage("identifyascontroller-menu-label"))
+         window.identifyascontroller.triggered.connect(self.identifyAsController)
+
+@@ -1743,18 +1753,18 @@ def populateMenubar(self, window):
+         window.helpMenu = QtWidgets.QMenu(getMessage("help-menu-label"), self)
+
+         window.userguideAction = window.helpMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'help.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'help.png')),
+             getMessage("userguide-menu-label"))
+         window.userguideAction.triggered.connect(self.openUserGuide)
+         window.updateAction = window.helpMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'application_get.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'application_get.png')),
+             getMessage("update-menu-label"))
+         window.updateAction.triggered.connect(self.userCheckForUpdates)
+
+         if not isMacOS():
+             window.helpMenu.addSeparator()
+             window.about = window.helpMenu.addAction(
+-                QtGui.QPixmap(resourcespath + 'syncplay.png'),
++                QtGui.QIcon(QtGui.QPixmap(resourcespath + 'syncplay.png')),
+                 getMessage("about-menu-label"))
+         else:
+             window.about = window.helpMenu.addAction("&About")
+@@ -1835,16 +1845,16 @@ def changeAutoplayState(self, source=None):
+     def updateReadyIcon(self):
+         ready = self.readyPushButton.isChecked()
+         if ready:
+-            self.readyPushButton.setIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png'))
++            self.readyPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png')))
+         else:
+-            self.readyPushButton.setIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png'))
++            self.readyPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png')))
+
+     def updateAutoPlayIcon(self):
+         ready = self.autoplayPushButton.isChecked()
+         if ready:
+-            self.autoplayPushButton.setIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png'))
++            self.autoplayPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png')))
+         else:
+-            self.autoplayPushButton.setIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png'))
++            self.autoplayPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png')))
+
+     def automaticUpdateCheck(self):
+         currentDateTimeValue = QDateTime.currentDateTime()
+@@ -2060,7 +2070,7 @@ def __init__(self, passedBar=None):
+         self.populateMenubar(self)
+         self.addMainFrame(self)
+         self.loadSettings()
+-        self.setWindowIcon(QtGui.QPixmap(resourcespath + "syncplay.png"))
++        self.setWindowIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + "syncplay.png")))
+         self.setWindowFlags(self.windowFlags() & Qt.WindowCloseButtonHint & Qt.WindowMinimizeButtonHint & ~Qt.WindowContextHelpButtonHint)
+         self.show()
+         self.setAcceptDrops(True)
+

diff --git a/media-video/syncplay/syncplay-1.6.5.ebuild b/media-video/syncplay/syncplay-1.6.5-r1.ebuild
similarity index 84%
rename from media-video/syncplay/syncplay-1.6.5.ebuild
rename to media-video/syncplay/syncplay-1.6.5-r1.ebuild
index fe57aa04..7f1ad024 100644
--- a/media-video/syncplay/syncplay-1.6.5.ebuild
+++ b/media-video/syncplay/syncplay-1.6.5-r1.ebuild
@@ -30,11 +30,10 @@ RDEPEND="
 	vlc? ( media-video/vlc[lua] )
 	mpv? ( media-video/mpv[lua] )
 	mplayer? ( media-video/mplayer )
+	client? ( dev-python/QtPy[${PYTHON_USEDEP},gui] )
 "
 
-# RDEPEND on PySide2 for gui, but not packaged here at the moment
-# It is a too big and complex package for me to maintain
-# You can find PySide2 in the ::raiagent overlay
+PATCHES=( "${FILESDIR}/${PN}-allow-PyQt5.patch" )
 
 python_install() {
 	local MY_MAKEOPTS=( DESTDIR="${D}" PREFIX=/usr )
@@ -51,8 +50,6 @@ python_install() {
 pkg_postinst() {
 	xdg_pkg_postinst
 
-	optfeature "using the GUI (you can find it in the raiagent overlay)\n" dev-python/pyside2
-
 	if use client; then
 		elog "Syncplay supports the following players:"
 		elog "media-video/mpv, media-video/mplayer, media-video/vlc\n"


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/proj/guru:master commit in: media-video/syncplay/, media-video/syncplay/files/
@ 2020-10-07 12:27 Andrew Ammerlaan
  2020-10-07 12:27 ` [gentoo-commits] repo/proj/guru:dev " Andrew Ammerlaan
  0 siblings, 1 reply; 6+ messages in thread
From: Andrew Ammerlaan @ 2020-10-07 12:27 UTC (permalink / raw
  To: gentoo-commits

commit:     705539c86962a41740499bc7197fb44ccb255764
Author:     Andrew Ammerlaan <andrewammerlaan <AT> riseup <DOT> net>
AuthorDate: Wed Oct  7 12:27:13 2020 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> riseup <DOT> net>
CommitDate: Wed Oct  7 12:27:13 2020 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=705539c8

media-video/syncplay: patch gui to work with PyQt5

Package-Manager: Portage-3.0.8, Repoman-3.0.1
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> riseup.net>

 .../syncplay/files/syncplay-allow-PyQt5.patch      | 474 +++++++++++++++++++++
 ...cplay-1.6.5.ebuild => syncplay-1.6.5-r1.ebuild} |   7 +-
 2 files changed, 476 insertions(+), 5 deletions(-)

diff --git a/media-video/syncplay/files/syncplay-allow-PyQt5.patch b/media-video/syncplay/files/syncplay-allow-PyQt5.patch
new file mode 100644
index 00000000..89c9de33
--- /dev/null
+++ b/media-video/syncplay/files/syncplay-allow-PyQt5.patch
@@ -0,0 +1,474 @@
+From c759525889f303195e677f9341cf325decf74809 Mon Sep 17 00:00:00 2001
+From: Andrew Ammerlaan <andrewammerlaan@riseup.net>
+Date: Wed, 7 Oct 2020 13:31:46 +0200
+Subject: [PATCH] PyQt5 compatability
+
+---
+ syncplay/ui/ConfigurationGetter.py |   4 +-
+ syncplay/ui/GuiConfiguration.py    |  16 ++--
+ syncplay/ui/gui.py                 | 130 ++++++++++++++++-------------
+ 3 files changed, 82 insertions(+), 68 deletions(-)
+
+diff --git a/syncplay/ui/ConfigurationGetter.py b/syncplay/ui/ConfigurationGetter.py
+index dd1d8ec0..6d83c650 100755
+--- a/syncplay/ui/ConfigurationGetter.py
++++ b/syncplay/ui/ConfigurationGetter.py
+@@ -513,10 +513,10 @@ def getConfiguration(self):
+         self._overrideConfigWithArgs(args)
+         if not self._config['noGui']:
+             try:
+-                from syncplay.vendor.Qt import QtWidgets, IsPySide, IsPySide2
++                from syncplay.vendor.Qt import QtWidgets, IsPySide, IsPySide2, IsPyQt5
+                 from syncplay.vendor.Qt.QtCore import QCoreApplication
+                 from syncplay.vendor import qt5reactor
+-                if not (IsPySide2 or IsPySide):
++                if not (IsPySide2 or IsPySide or IsPyQt5):
+                     raise ImportError
+                 if QCoreApplication.instance() is None:
+                     self.app = QtWidgets.QApplication(sys.argv)
+diff --git a/syncplay/ui/GuiConfiguration.py b/syncplay/ui/GuiConfiguration.py
+index 96915814..cfe51b26 100755
+--- a/syncplay/ui/GuiConfiguration.py
++++ b/syncplay/ui/GuiConfiguration.py
+@@ -11,7 +11,7 @@
+ from syncplay.utils import isBSD, isLinux, isMacOS, isWindows
+ from syncplay.utils import resourcespath, posixresourcespath
+
+-from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__, IsPySide, IsPySide2
++from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__, IsPySide, IsPySide2, IsPyQt5
+ from syncplay.vendor.Qt.QtCore import Qt, QSettings, QCoreApplication, QSize, QPoint, QUrl, QLine, QEventLoop, Signal
+ from syncplay.vendor.Qt.QtWidgets import QApplication, QLineEdit, QLabel, QCheckBox, QButtonGroup, QRadioButton, QDoubleSpinBox, QPlainTextEdit
+ from syncplay.vendor.Qt.QtGui import QCursor, QIcon, QImage, QDesktopServices
+@@ -21,6 +21,8 @@
+     QtWidgets.QApplication.setAttribute(QtCore.Qt.AA_UseHighDpiPixmaps, True)
+ if IsPySide2:
+     from PySide2.QtCore import QStandardPaths
++elif IsPyQt5:
++    from PyQt5.QtCore import QStandardPaths
+
+
+ class GuiConfiguration:
+@@ -445,7 +447,7 @@ def browseMediapath(self):
+                 defaultdirectory = QDesktopServices.storageLocation(QDesktopServices.HomeLocation)
+             else:
+                 defaultdirectory = ""
+-        elif IsPySide2:
++        elif IsPySide2 or IsPyQt5:
+             if self.config["mediaSearchDirectories"] and os.path.isdir(self.config["mediaSearchDirectories"][0]):
+                 defaultdirectory = self.config["mediaSearchDirectories"][0]
+             elif os.path.isdir(self.mediadirectory):
+@@ -1181,7 +1183,7 @@ def addMessageTab(self):
+
+         self.displaySettingsGroup = QtWidgets.QGroupBox(getMessage("messages-other-title"))
+         self.displaySettingsLayout = QtWidgets.QVBoxLayout()
+-        self.displaySettingsLayout.setAlignment(Qt.AlignTop & Qt.AlignLeft)
++        self.displaySettingsLayout.setAlignment(Qt.AlignTop | Qt.AlignLeft)
+         self.displaySettingsFrame = QtWidgets.QFrame()
+
+         self.showDurationNotificationCheckbox = QCheckBox(getMessage("showdurationnotification-label"))
+@@ -1193,7 +1195,7 @@ def addMessageTab(self):
+         self.languageLayout.setContentsMargins(0, 0, 0, 0)
+         self.languageFrame.setLayout(self.languageLayout)
+         self.languageFrame.setSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum)
+-        self.languageLayout.setAlignment(Qt.AlignTop & Qt.AlignLeft)
++        self.languageLayout.setAlignment(Qt.AlignTop | Qt.AlignLeft)
+         self.languageLabel = QLabel(getMessage("language-label"), self)
+         self.languageCombobox = QtWidgets.QComboBox(self)
+         self.languageCombobox.addItem(getMessage("automatic-language").format(getMessage("LANGUAGE", getInitialLanguage())))
+@@ -1214,7 +1216,7 @@ def addMessageTab(self):
+
+         self.displaySettingsGroup.setLayout(self.displaySettingsLayout)
+         self.displaySettingsGroup.setMaximumHeight(self.displaySettingsGroup.minimumSizeHint().height())
+-        self.displaySettingsLayout.setAlignment(Qt.AlignTop & Qt.AlignLeft)
++        self.displaySettingsLayout.setAlignment(Qt.AlignTop | Qt.AlignLeft)
+         self.messageLayout.addWidget(self.displaySettingsGroup)
+
+         # messageFrame
+@@ -1394,7 +1396,9 @@ def __init__(self, config, playerpaths, error, defaultConfig):
+         self.publicServerAddresses = []
+
+         self._playerProbeThread = GetPlayerIconThread()
+-        self._playerProbeThread.done.connect(self._updateExecutableIcon)
++        # To-Do: Why does this not work with PyQt5
++        if not IsPyQt5:
++            self._playerProbeThread.done.connect(self._updateExecutableIcon)
+         self._playerProbeThread.start()
+
+         if self.config['clearGUIData'] == True:
+diff --git a/syncplay/ui/gui.py b/syncplay/ui/gui.py
+index c59c5697..a8fe427d 100755
+--- a/syncplay/ui/gui.py
++++ b/syncplay/ui/gui.py
+@@ -18,8 +18,7 @@
+ from syncplay.utils import resourcespath
+ from syncplay.utils import isLinux, isWindows, isMacOS
+ from syncplay.utils import formatTime, sameFilename, sameFilesize, sameFileduration, RoomPasswordProvider, formatSize, isURL
+-from syncplay.vendor import Qt
+-from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__, __binding_version__, __qt_version__, IsPySide, IsPySide2
++from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__, __binding_version__, __qt_version__, IsPySide, IsPySide2, IsPyQt5
+ from syncplay.vendor.Qt.QtCore import Qt, QSettings, QSize, QPoint, QUrl, QLine, QDateTime
+ applyDPIScaling = True
+ if isLinux():
+@@ -32,15 +31,17 @@
+     QtWidgets.QApplication.setAttribute(QtCore.Qt.AA_UseHighDpiPixmaps, applyDPIScaling)
+ if IsPySide2:
+     from PySide2.QtCore import QStandardPaths
++elif IsPyQt5:
++    from PyQt5.QtCore import QStandardPaths
+ if isMacOS() and IsPySide:
+     from Foundation import NSURL
+     from Cocoa import NSString, NSUTF8StringEncoding
+ lastCheckedForUpdates = None
+ from syncplay.vendor import darkdetect
+ if isMacOS():
+-	isDarkMode = darkdetect.isDark()
++    isDarkMode = darkdetect.isDark()
+ else:
+-	isDarkMode = None
++    isDarkMode = None
+
+
+ class ConsoleInGUI(ConsoleUI):
+@@ -139,7 +140,7 @@ def __init__(self, parent=None):
+             self.setWindowTitle(getMessage("about-dialog-title"))
+             if isWindows():
+                 self.setWindowFlags(self.windowFlags() & ~Qt.WindowContextHelpButtonHint)
+-        self.setWindowIcon(QtGui.QPixmap(resourcespath + 'syncplay.png'))
++        self.setWindowIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'syncplay.png')))
+         nameLabel = QtWidgets.QLabel("<center><strong>Syncplay</strong></center>")
+         nameLabel.setFont(QtGui.QFont("Helvetica", 18))
+         linkLabel = QtWidgets.QLabel()
+@@ -202,7 +203,7 @@ def __init__(self, tlsData, parent=None):
+             self.setWindowTitle(getMessage("tls-information-title"))
+             if isWindows():
+                 self.setWindowFlags(self.windowFlags() & ~Qt.WindowContextHelpButtonHint)
+-        self.setWindowIcon(QtGui.QPixmap(resourcespath + 'syncplay.png'))
++        self.setWindowIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'syncplay.png')))
+         statusLabel = QtWidgets.QLabel(getMessage("tls-dialog-status-label").format(tlsData["subject"]))
+         descLabel = QtWidgets.QLabel(getMessage("tls-dialog-desc-label").format(tlsData["subject"]))
+         connDataLabel = QtWidgets.QLabel(getMessage("tls-dialog-connection-label").format(tlsData["protocolVersion"], tlsData["cipher"]))
+@@ -454,6 +455,15 @@ def mouseMoveEvent(self, event):
+     def needsClient(f):  # @NoSelf
+         @wraps(f)
+         def wrapper(self, *args, **kwds):
++            # To-Do: For some strange reason the args tumple contains False
++            # for some functions, resulting in a crash as the function only accepts
++            # one argument (self). I do not understand where this 'False' is coming
++            # from, it does not seem to be added when the function is called.
++            # This very ugly workaround fixes the problem
++            if IsPyQt5:
++                if len(args)>0:
++                    if not args[0]:
++                        args = ()
+             if not self._syncplayClient:
+                 self.showDebugMessage("Tried to use client before it was ready!")
+                 return
+@@ -614,11 +624,11 @@ def showUserList(self, currentUser, rooms):
+
+             if isControlledRoom:
+                 if room == currentUser.room and currentUser.isController():
+-                    roomitem.setIcon(QtGui.QPixmap(resourcespath + 'lock_open.png'))
++                    roomitem.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'lock_open.png')))
+                 else:
+-                    roomitem.setIcon(QtGui.QPixmap(resourcespath + 'lock.png'))
++                    roomitem.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'lock.png')))
+             else:
+-                roomitem.setIcon(QtGui.QPixmap(resourcespath + 'chevrons_right.png'))
++                roomitem.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'chevrons_right.png')))
+
+             for user in rooms[room]:
+                 useritem = QtGui.QStandardItem(user.username)
+@@ -719,31 +729,31 @@ def openPlaylistMenu(self, position):
+             pathFound = self._syncplayClient.fileSwitch.findFilepath(firstFile) if not isURL(firstFile) else None
+             if self._syncplayClient.userlist.currentUser.file is None or firstFile != self._syncplayClient.userlist.currentUser.file["name"]:
+                 if isURL(firstFile):
+-                    menu.addAction(QtGui.QPixmap(resourcespath + "world_go.png"), getMessage("openstreamurl-menu-label"), lambda: self.openFile(firstFile, resetPosition=True, fromUser=True))
++                    menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "world_go.png")), getMessage("openstreamurl-menu-label"), lambda: self.openFile(firstFile, resetPosition=True, fromUser=True))
+                 elif pathFound:
+-                        menu.addAction(QtGui.QPixmap(resourcespath + "film_go.png"), getMessage("openmedia-menu-label"), lambda: self.openFile(pathFound, resetPosition=True, fromUser=True))
++                        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_go.png")), getMessage("openmedia-menu-label"), lambda: self.openFile(pathFound, resetPosition=True, fromUser=True))
+             if pathFound:
+-                menu.addAction(QtGui.QPixmap(resourcespath + "folder_film.png"),
++                menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "folder_film.png")),
+                                getMessage('open-containing-folder'),
+                                lambda: utils.open_system_file_browser(pathFound))
+             if self._syncplayClient.isUntrustedTrustableURI(firstFile):
+                 domain = utils.getDomainFromURL(firstFile)
+-                menu.addAction(QtGui.QPixmap(resourcespath + "shield_add.png"), getMessage("addtrusteddomain-menu-label").format(domain), lambda: self.addTrustedDomain(domain))
+-            menu.addAction(QtGui.QPixmap(resourcespath + "delete.png"), getMessage("removefromplaylist-menu-label"), lambda: self.deleteSelectedPlaylistItems())
++                menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "shield_add.png")), getMessage("addtrusteddomain-menu-label").format(domain), lambda: self.addTrustedDomain(domain))
++            menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "delete.png")), getMessage("removefromplaylist-menu-label"), lambda: self.deleteSelectedPlaylistItems())
+             menu.addSeparator()
+-        menu.addAction(QtGui.QPixmap(resourcespath + "arrow_switch.png"), getMessage("shuffleremainingplaylist-menu-label"), lambda: self.shuffleRemainingPlaylist())
+-        menu.addAction(QtGui.QPixmap(resourcespath + "arrow_switch.png"), getMessage("shuffleentireplaylist-menu-label"), lambda: self.shuffleEntirePlaylist())
+-        menu.addAction(QtGui.QPixmap(resourcespath + "arrow_undo.png"), getMessage("undoplaylist-menu-label"), lambda: self.undoPlaylistChange())
+-        menu.addAction(QtGui.QPixmap(resourcespath + "film_edit.png"), getMessage("editplaylist-menu-label"), lambda: self.openEditPlaylistDialog())
+-        menu.addAction(QtGui.QPixmap(resourcespath + "film_add.png"), getMessage("addfilestoplaylist-menu-label"), lambda: self.OpenAddFilesToPlaylistDialog())
+-        menu.addAction(QtGui.QPixmap(resourcespath + "world_add.png"), getMessage("addurlstoplaylist-menu-label"), lambda: self.OpenAddURIsToPlaylistDialog())
++        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "arrow_switch.png")), getMessage("shuffleremainingplaylist-menu-label"), lambda: self.shuffleRemainingPlaylist())
++        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "arrow_switch.png")), getMessage("shuffleentireplaylist-menu-label"), lambda: self.shuffleEntirePlaylist())
++        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "arrow_undo.png")), getMessage("undoplaylist-menu-label"), lambda: self.undoPlaylistChange())
++        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_edit.png")), getMessage("editplaylist-menu-label"), lambda: self.openEditPlaylistDialog())
++        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_add.png")), getMessage("addfilestoplaylist-menu-label"), lambda: self.OpenAddFilesToPlaylistDialog())
++        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "world_add.png")), getMessage("addurlstoplaylist-menu-label"), lambda: self.OpenAddURIsToPlaylistDialog())
+         menu.addSeparator()
+         menu.addAction(getMessage("loadplaylistfromfile-menu-label"),lambda: self.OpenLoadPlaylistFromFileDialog()) # TODO: Add icon
+         menu.addAction("Load and shuffle playlist from file",lambda: self.OpenLoadPlaylistFromFileDialog(shuffle=True))  # TODO: Add icon and messages_en
+         menu.addAction(getMessage("saveplaylisttofile-menu-label"),lambda: self.OpenSavePlaylistToFileDialog()) # TODO: Add icon
+         menu.addSeparator()
+-        menu.addAction(QtGui.QPixmap(resourcespath + "film_folder_edit.png"), getMessage("setmediadirectories-menu-label"), lambda: self.openSetMediaDirectoriesDialog())
+-        menu.addAction(QtGui.QPixmap(resourcespath + "shield_edit.png"), getMessage("settrusteddomains-menu-label"), lambda: self.openSetTrustedDomainsDialog())
++        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_folder_edit.png")), getMessage("setmediadirectories-menu-label"), lambda: self.openSetMediaDirectoriesDialog())
++        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "shield_edit.png")), getMessage("settrusteddomains-menu-label"), lambda: self.openSetTrustedDomainsDialog())
+         menu.exec_(self.playlist.viewport().mapToGlobal(position))
+
+     def openRoomMenu(self, position):
+@@ -778,25 +788,25 @@ def openRoomMenu(self, position):
+         elif username and filename and filename != getMessage("nofile-note"):
+             if self.config['sharedPlaylistEnabled'] and not self.isItemInPlaylist(filename):
+                 if isURL(filename):
+-                    menu.addAction(QtGui.QPixmap(resourcespath + "world_add.png"), addUsersStreamToPlaylistLabelText, lambda: self.addStreamToPlaylist(filename))
++                    menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "world_add.png")), addUsersStreamToPlaylistLabelText, lambda: self.addStreamToPlaylist(filename))
+                 else:
+-                    menu.addAction(QtGui.QPixmap(resourcespath + "film_add.png"), addUsersFileToPlaylistLabelText, lambda: self.addStreamToPlaylist(filename))
++                    menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_add.png")), addUsersFileToPlaylistLabelText, lambda: self.addStreamToPlaylist(filename))
+
+             if self._syncplayClient.userlist.currentUser.file is None or filename != self._syncplayClient.userlist.currentUser.file["name"]:
+                 if isURL(filename):
+-                    menu.addAction(QtGui.QPixmap(resourcespath + "world_go.png"), getMessage("openusersstream-menu-label").format(shortUsername), lambda: self.openFile(filename, resetPosition=False, fromUser=True))
++                    menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "world_go.png")), getMessage("openusersstream-menu-label").format(shortUsername), lambda: self.openFile(filename, resetPosition=False, fromUser=True))
+                 else:
+                     pathFound = self._syncplayClient.fileSwitch.findFilepath(filename)
+                     if pathFound:
+-                        menu.addAction(QtGui.QPixmap(resourcespath + "film_go.png"), getMessage("openusersfile-menu-label").format(shortUsername), lambda: self.openFile(pathFound, resetPosition=False, fromUser=True))
++                        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_go.png")), getMessage("openusersfile-menu-label").format(shortUsername), lambda: self.openFile(pathFound, resetPosition=False, fromUser=True))
+             if self._syncplayClient.isUntrustedTrustableURI(filename):
+                 domain = utils.getDomainFromURL(filename)
+-                menu.addAction(QtGui.QPixmap(resourcespath + "shield_add.png"), getMessage("addtrusteddomain-menu-label").format(domain), lambda: self.addTrustedDomain(domain))
++                menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "shield_add.png")), getMessage("addtrusteddomain-menu-label").format(domain), lambda: self.addTrustedDomain(domain))
+
+             if not isURL(filename) and filename != getMessage("nofile-note"):
+                 path = self._syncplayClient.fileSwitch.findFilepath(filename)
+                 if path:
+-                    menu.addAction(QtGui.QPixmap(resourcespath + "folder_film.png"), getMessage('open-containing-folder'), lambda: utils.open_system_file_browser(path))
++                    menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "folder_film.png")), getMessage('open-containing-folder'), lambda: utils.open_system_file_browser(path))
+         else:
+             return
+         menu.exec_(self.listTreeView.viewport().mapToGlobal(position))
+@@ -808,7 +818,7 @@ def updateListGeometry(self):
+                 self.listTreeView.setFirstColumnSpanned(roomtocheck, self.listTreeView.rootIndex(), True)
+                 roomtocheck += 1
+             self.listTreeView.header().setStretchLastSection(False)
+-            if IsPySide2:
++            if IsPySide2 or IsPyQt5:
+                 self.listTreeView.header().setSectionResizeMode(0, QtWidgets.QHeaderView.ResizeToContents)
+                 self.listTreeView.header().setSectionResizeMode(1, QtWidgets.QHeaderView.ResizeToContents)
+                 self.listTreeView.header().setSectionResizeMode(2, QtWidgets.QHeaderView.ResizeToContents)
+@@ -822,7 +832,7 @@ def updateListGeometry(self):
+             if self.listTreeView.header().width() < (NarrowTabsWidth+self.listTreeView.header().sectionSize(3)):
+                 self.listTreeView.header().resizeSection(3, self.listTreeView.header().width()-NarrowTabsWidth)
+             else:
+-                if IsPySide2:
++                if IsPySide2 or IsPyQt5:
+                     self.listTreeView.header().setSectionResizeMode(3, QtWidgets.QHeaderView.Stretch)
+                 if IsPySide:
+                     self.listTreeView.header().setResizeMode(3, QtWidgets.QHeaderView.Stretch)
+@@ -1003,7 +1013,7 @@ def getInitialMediaDirectory(self, includeUserSpecifiedDirectories=True):
+                 defaultdirectory = QtGui.QDesktopServices.storageLocation(QtGui.QDesktopServices.HomeLocation)
+             else:
+                 defaultdirectory = ""
+-        elif IsPySide2:
++        elif IsPySide2 or IsPyQt5:
+             if self.config["mediaSearchDirectories"] and os.path.isdir(self.config["mediaSearchDirectories"][0]) and includeUserSpecifiedDirectories:
+                 defaultdirectory = self.config["mediaSearchDirectories"][0]
+             elif includeUserSpecifiedDirectories and os.path.isdir(self.mediadirectory):
+@@ -1410,7 +1420,7 @@ def addTopLayout(self, window):
+         window.chatInput.setMaxLength(constants.MAX_CHAT_MESSAGE_LENGTH)
+         window.chatInput.returnPressed.connect(self.sendChatMessage)
+         window.chatButton = QtWidgets.QPushButton(
+-            QtGui.QPixmap(resourcespath + 'email_go.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'email_go.png')),
+             getMessage("sendmessage-label"))
+         window.chatButton.pressed.connect(self.sendChatMessage)
+         window.chatLayout = QtWidgets.QHBoxLayout()
+@@ -1445,7 +1455,7 @@ def addTopLayout(self, window):
+         window.listlabel = QtWidgets.QLabel(getMessage("userlist-heading-label"))
+         if isMacOS:
+             window.listlabel.setMinimumHeight(21)
+-            window.sslButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'lock_green.png').scaled(14, 14),"")
++            window.sslButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'lock_green.png').scaled(14, 14)),"")
+             window.sslButton.setVisible(False)
+             window.sslButton.setFixedHeight(21)
+             window.sslButton.setFixedWidth(21)
+@@ -1453,7 +1463,7 @@ def addTopLayout(self, window):
+             window.sslButton.setStyleSheet("QPushButton:!hover{border: 1px solid gray;} QPushButton:hover{border:2px solid black;}")
+         else:
+             window.listlabel.setMinimumHeight(27)
+-            window.sslButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'lock_green.png'),"")
++            window.sslButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'lock_green.png')),"")
+             window.sslButton.setVisible(False)
+             window.sslButton.setFixedHeight(27)
+             window.sslButton.setFixedWidth(27)
+@@ -1485,7 +1495,7 @@ def addTopLayout(self, window):
+         window.roomsCombobox.setEditable(True)
+         #window.roomsCombobox.setMaxLength(constants.MAX_ROOM_NAME_LENGTH)
+         window.roomButton = QtWidgets.QPushButton(
+-            QtGui.QPixmap(resourcespath + 'door_in.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'door_in.png')),
+             getMessage("joinroom-label"))
+         window.roomButton.pressed.connect(self.joinRoom)
+         window.roomButton.setFixedWidth(window.roomButton.sizeHint().width()+3)
+@@ -1620,24 +1630,24 @@ def addPlaybackLayout(self, window):
+         window.playbackFrame.setLayout(window.playbackLayout)
+         window.seekInput = QtWidgets.QLineEdit()
+         window.seekInput.returnPressed.connect(self.seekFromButton)
+-        window.seekButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'clock_go.png'), "")
++        window.seekButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'clock_go.png')), "")
+         window.seekButton.setToolTip(getMessage("seektime-menu-label"))
+         window.seekButton.pressed.connect(self.seekFromButton)
+         window.seekInput.setText("0:00")
+         window.seekInput.setFixedWidth(60)
+         window.playbackLayout.addWidget(window.seekInput)
+         window.playbackLayout.addWidget(window.seekButton)
+-        window.unseekButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'arrow_undo.png'), "")
++        window.unseekButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'arrow_undo.png')), "")
+         window.unseekButton.setToolTip(getMessage("undoseek-menu-label"))
+         window.unseekButton.pressed.connect(self.undoSeek)
+
+         window.miscLayout = QtWidgets.QHBoxLayout()
+         window.playbackLayout.addWidget(window.unseekButton)
+-        window.playButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'control_play_blue.png'), "")
++        window.playButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_play_blue.png')), "")
+         window.playButton.setToolTip(getMessage("play-menu-label"))
+         window.playButton.pressed.connect(self.play)
+         window.playbackLayout.addWidget(window.playButton)
+-        window.pauseButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'control_pause_blue.png'), "")
++        window.pauseButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_pause_blue.png')), "")
+         window.pauseButton.setToolTip(getMessage("pause-menu-label"))
+         window.pauseButton.pressed.connect(self.pause)
+         window.playbackLayout.addWidget(window.pauseButton)
+@@ -1657,13 +1667,13 @@ def populateMenubar(self, window):
+         # File menu
+
+         window.fileMenu = QtWidgets.QMenu(getMessage("file-menu-label"), self)
+-        window.openAction = window.fileMenu.addAction(QtGui.QPixmap(resourcespath + 'folder_explore.png'),
++        window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'folder_explore.png')),
+                                                       getMessage("openmedia-menu-label"))
+         window.openAction.triggered.connect(self.browseMediapath)
+-        window.openAction = window.fileMenu.addAction(QtGui.QPixmap(resourcespath + 'world_explore.png'),
++        window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'world_explore.png')),
+                                                       getMessage("openstreamurl-menu-label"))
+         window.openAction.triggered.connect(self.promptForStreamURL)
+-        window.openAction = window.fileMenu.addAction(QtGui.QPixmap(resourcespath + 'film_folder_edit.png'),
++        window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'film_folder_edit.png')),
+                                                       getMessage("setmediadirectories-menu-label"))
+         window.openAction.triggered.connect(self.openSetMediaDirectoriesDialog)
+
+@@ -1671,7 +1681,7 @@ def populateMenubar(self, window):
+         if isMacOS():
+             window.exitAction.setMenuRole(QtWidgets.QAction.QuitRole)
+         else:
+-            window.exitAction.setIcon(QtGui.QPixmap(resourcespath + 'cross.png'))
++            window.exitAction.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'cross.png')))
+         window.exitAction.triggered.connect(self.exitSyncplay)
+
+         if(window.editMenu is not None):
+@@ -1683,19 +1693,19 @@ def populateMenubar(self, window):
+
+         window.playbackMenu = QtWidgets.QMenu(getMessage("playback-menu-label"), self)
+         window.playAction = window.playbackMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'control_play_blue.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_play_blue.png')),
+             getMessage("play-menu-label"))
+         window.playAction.triggered.connect(self.play)
+         window.pauseAction = window.playbackMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'control_pause_blue.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_pause_blue.png')),
+             getMessage("pause-menu-label"))
+         window.pauseAction.triggered.connect(self.pause)
+         window.seekAction = window.playbackMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'clock_go.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'clock_go.png')),
+             getMessage("seektime-menu-label"))
+         window.seekAction.triggered.connect(self.seekPositionDialog)
+         window.unseekAction = window.playbackMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'arrow_undo.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'arrow_undo.png')),
+             getMessage("undoseek-menu-label"))
+         window.unseekAction.triggered.connect(self.undoSeek)
+
+@@ -1705,17 +1715,17 @@ def populateMenubar(self, window):
+
+         window.advancedMenu = QtWidgets.QMenu(getMessage("advanced-menu-label"), self)
+         window.setoffsetAction = window.advancedMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'timeline_marker.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'timeline_marker.png')),
+             getMessage("setoffset-menu-label"))
+         window.setoffsetAction.triggered.connect(self.setOffset)
+         window.setTrustedDomainsAction = window.advancedMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'shield_edit.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'shield_edit.png')),
+             getMessage("settrusteddomains-menu-label"))
+         window.setTrustedDomainsAction.triggered.connect(self.openSetTrustedDomainsDialog)
+         window.createcontrolledroomAction = window.advancedMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'page_white_key.png'), getMessage("createcontrolledroom-menu-label"))
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'page_white_key.png')), getMessage("createcontrolledroom-menu-label"))
+         window.createcontrolledroomAction.triggered.connect(self.createControlledRoom)
+-        window.identifyascontroller = window.advancedMenu.addAction(QtGui.QPixmap(resourcespath + 'key_go.png'),
++        window.identifyascontroller = window.advancedMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'key_go.png')),
+                                                                     getMessage("identifyascontroller-menu-label"))
+         window.identifyascontroller.triggered.connect(self.identifyAsController)
+
+@@ -1743,18 +1753,18 @@ def populateMenubar(self, window):
+         window.helpMenu = QtWidgets.QMenu(getMessage("help-menu-label"), self)
+
+         window.userguideAction = window.helpMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'help.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'help.png')),
+             getMessage("userguide-menu-label"))
+         window.userguideAction.triggered.connect(self.openUserGuide)
+         window.updateAction = window.helpMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'application_get.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'application_get.png')),
+             getMessage("update-menu-label"))
+         window.updateAction.triggered.connect(self.userCheckForUpdates)
+
+         if not isMacOS():
+             window.helpMenu.addSeparator()
+             window.about = window.helpMenu.addAction(
+-                QtGui.QPixmap(resourcespath + 'syncplay.png'),
++                QtGui.QIcon(QtGui.QPixmap(resourcespath + 'syncplay.png')),
+                 getMessage("about-menu-label"))
+         else:
+             window.about = window.helpMenu.addAction("&About")
+@@ -1835,16 +1845,16 @@ def changeAutoplayState(self, source=None):
+     def updateReadyIcon(self):
+         ready = self.readyPushButton.isChecked()
+         if ready:
+-            self.readyPushButton.setIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png'))
++            self.readyPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png')))
+         else:
+-            self.readyPushButton.setIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png'))
++            self.readyPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png')))
+
+     def updateAutoPlayIcon(self):
+         ready = self.autoplayPushButton.isChecked()
+         if ready:
+-            self.autoplayPushButton.setIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png'))
++            self.autoplayPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png')))
+         else:
+-            self.autoplayPushButton.setIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png'))
++            self.autoplayPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png')))
+
+     def automaticUpdateCheck(self):
+         currentDateTimeValue = QDateTime.currentDateTime()
+@@ -2060,7 +2070,7 @@ def __init__(self, passedBar=None):
+         self.populateMenubar(self)
+         self.addMainFrame(self)
+         self.loadSettings()
+-        self.setWindowIcon(QtGui.QPixmap(resourcespath + "syncplay.png"))
++        self.setWindowIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + "syncplay.png")))
+         self.setWindowFlags(self.windowFlags() & Qt.WindowCloseButtonHint & Qt.WindowMinimizeButtonHint & ~Qt.WindowContextHelpButtonHint)
+         self.show()
+         self.setAcceptDrops(True)
+

diff --git a/media-video/syncplay/syncplay-1.6.5.ebuild b/media-video/syncplay/syncplay-1.6.5-r1.ebuild
similarity index 84%
rename from media-video/syncplay/syncplay-1.6.5.ebuild
rename to media-video/syncplay/syncplay-1.6.5-r1.ebuild
index fe57aa04..7f1ad024 100644
--- a/media-video/syncplay/syncplay-1.6.5.ebuild
+++ b/media-video/syncplay/syncplay-1.6.5-r1.ebuild
@@ -30,11 +30,10 @@ RDEPEND="
 	vlc? ( media-video/vlc[lua] )
 	mpv? ( media-video/mpv[lua] )
 	mplayer? ( media-video/mplayer )
+	client? ( dev-python/QtPy[${PYTHON_USEDEP},gui] )
 "
 
-# RDEPEND on PySide2 for gui, but not packaged here at the moment
-# It is a too big and complex package for me to maintain
-# You can find PySide2 in the ::raiagent overlay
+PATCHES=( "${FILESDIR}/${PN}-allow-PyQt5.patch" )
 
 python_install() {
 	local MY_MAKEOPTS=( DESTDIR="${D}" PREFIX=/usr )
@@ -51,8 +50,6 @@ python_install() {
 pkg_postinst() {
 	xdg_pkg_postinst
 
-	optfeature "using the GUI (you can find it in the raiagent overlay)\n" dev-python/pyside2
-
 	if use client; then
 		elog "Syncplay supports the following players:"
 		elog "media-video/mpv, media-video/mplayer, media-video/vlc\n"


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/proj/guru:dev commit in: media-video/syncplay/, media-video/syncplay/files/
@ 2020-10-08 18:20 Andrew Ammerlaan
  0 siblings, 0 replies; 6+ messages in thread
From: Andrew Ammerlaan @ 2020-10-08 18:20 UTC (permalink / raw
  To: gentoo-commits

commit:     49ec078717b4228f64ab42d6957e078ad03091f0
Author:     Andrew Ammerlaan <andrewammerlaan <AT> riseup <DOT> net>
AuthorDate: Thu Oct  8 18:20:10 2020 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> riseup <DOT> net>
CommitDate: Thu Oct  8 18:20:10 2020 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=49ec0787

media-video/syncplay: version bump 1.6.6_beta1

Package-Manager: Portage-3.0.8, Repoman-3.0.1
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> riseup.net>

 media-video/syncplay/Manifest                      |   2 +-
 .../syncplay/files/syncplay-allow-PyQt5.patch      | 412 +--------------------
 .../files/syncplay-change-alignment-operator.patch |  41 ++
 ...ake-qpixmap-to-qicon-conversion-explicit.patch} | 216 ++---------
 ...play-use-lambda-to-connect-behind-wrapper.patch | 168 +++++++++
 media-video/syncplay/metadata.xml                  |   3 -
 ...1.6.5-r1.ebuild => syncplay-1.6.6_beta1.ebuild} |  35 +-
 7 files changed, 276 insertions(+), 601 deletions(-)

diff --git a/media-video/syncplay/Manifest b/media-video/syncplay/Manifest
index 2a6da87b..54b04a06 100644
--- a/media-video/syncplay/Manifest
+++ b/media-video/syncplay/Manifest
@@ -1 +1 @@
-DIST syncplay-1.6.5.tar.gz 1849668 BLAKE2B ec0d9037b68adbedac3ae107fc2b7650cfa20f5361d256f839a54dfd3fd73d3ae76c01f4e0b703efcb2c1cac39364208d3bed5ec341e38f1ab3036d91c53bad8 SHA512 c3dba4211e7b57a84cc967a8d2c4827e814287dde866bfd9830d8b3c07af472f1532d0dae35e393fce39b35f586d0765de2c23fc473c41ae277a079f6f3a6db0
+DIST syncplay-1.6.6_beta1.tar.gz 1843061 BLAKE2B 2b940596d96ac6ea859bb27bfc3f987ef52b2be7f1d50976d6c205d3a4d0fed92f29dc530336bb92c0d67bd9661719720e0181331e549af648868104c2b21c63 SHA512 0d75d9505adfa50aaa56bd4e99f62ee5fa77a7085dd3933a5a4a886d8e898eddac887ae42ac8d133bda048ef14ae22402ced368f75fdf234e35a697ea2cb4443

diff --git a/media-video/syncplay/files/syncplay-allow-PyQt5.patch b/media-video/syncplay/files/syncplay-allow-PyQt5.patch
index 89c9de33..b922bdbb 100644
--- a/media-video/syncplay/files/syncplay-allow-PyQt5.patch
+++ b/media-video/syncplay/files/syncplay-allow-PyQt5.patch
@@ -1,19 +1,8 @@
-From c759525889f303195e677f9341cf325decf74809 Mon Sep 17 00:00:00 2001
-From: Andrew Ammerlaan <andrewammerlaan@riseup.net>
-Date: Wed, 7 Oct 2020 13:31:46 +0200
-Subject: [PATCH] PyQt5 compatability
-
----
- syncplay/ui/ConfigurationGetter.py |   4 +-
- syncplay/ui/GuiConfiguration.py    |  16 ++--
- syncplay/ui/gui.py                 | 130 ++++++++++++++++-------------
- 3 files changed, 82 insertions(+), 68 deletions(-)
-
 diff --git a/syncplay/ui/ConfigurationGetter.py b/syncplay/ui/ConfigurationGetter.py
-index dd1d8ec0..6d83c650 100755
+index dd1d8ec..6d83c65 100755
 --- a/syncplay/ui/ConfigurationGetter.py
 +++ b/syncplay/ui/ConfigurationGetter.py
-@@ -513,10 +513,10 @@ def getConfiguration(self):
+@@ -513,10 +513,10 @@ class ConfigurationGetter(object):
          self._overrideConfigWithArgs(args)
          if not self._config['noGui']:
              try:
@@ -27,10 +16,10 @@ index dd1d8ec0..6d83c650 100755
                  if QCoreApplication.instance() is None:
                      self.app = QtWidgets.QApplication(sys.argv)
 diff --git a/syncplay/ui/GuiConfiguration.py b/syncplay/ui/GuiConfiguration.py
-index 96915814..cfe51b26 100755
+index 9ce6a42..1ad5bd7 100755
 --- a/syncplay/ui/GuiConfiguration.py
 +++ b/syncplay/ui/GuiConfiguration.py
-@@ -11,7 +11,7 @@
+@@ -11,7 +11,7 @@ from syncplay.players.playerFactory import PlayerFactory
  from syncplay.utils import isBSD, isLinux, isMacOS, isWindows
  from syncplay.utils import resourcespath, posixresourcespath
 
@@ -39,16 +28,7 @@ index 96915814..cfe51b26 100755
  from syncplay.vendor.Qt.QtCore import Qt, QSettings, QCoreApplication, QSize, QPoint, QUrl, QLine, QEventLoop, Signal
  from syncplay.vendor.Qt.QtWidgets import QApplication, QLineEdit, QLabel, QCheckBox, QButtonGroup, QRadioButton, QDoubleSpinBox, QPlainTextEdit
  from syncplay.vendor.Qt.QtGui import QCursor, QIcon, QImage, QDesktopServices
-@@ -21,6 +21,8 @@
-     QtWidgets.QApplication.setAttribute(QtCore.Qt.AA_UseHighDpiPixmaps, True)
- if IsPySide2:
-     from PySide2.QtCore import QStandardPaths
-+elif IsPyQt5:
-+    from PyQt5.QtCore import QStandardPaths
-
-
- class GuiConfiguration:
-@@ -445,7 +447,7 @@ def browseMediapath(self):
+@@ -445,7 +445,7 @@ class ConfigDialog(QtWidgets.QDialog):
                  defaultdirectory = QDesktopServices.storageLocation(QDesktopServices.HomeLocation)
              else:
                  defaultdirectory = ""
@@ -57,205 +37,29 @@ index 96915814..cfe51b26 100755
              if self.config["mediaSearchDirectories"] and os.path.isdir(self.config["mediaSearchDirectories"][0]):
                  defaultdirectory = self.config["mediaSearchDirectories"][0]
              elif os.path.isdir(self.mediadirectory):
-@@ -1181,7 +1183,7 @@ def addMessageTab(self):
-
-         self.displaySettingsGroup = QtWidgets.QGroupBox(getMessage("messages-other-title"))
-         self.displaySettingsLayout = QtWidgets.QVBoxLayout()
--        self.displaySettingsLayout.setAlignment(Qt.AlignTop & Qt.AlignLeft)
-+        self.displaySettingsLayout.setAlignment(Qt.AlignTop | Qt.AlignLeft)
-         self.displaySettingsFrame = QtWidgets.QFrame()
-
-         self.showDurationNotificationCheckbox = QCheckBox(getMessage("showdurationnotification-label"))
-@@ -1193,7 +1195,7 @@ def addMessageTab(self):
-         self.languageLayout.setContentsMargins(0, 0, 0, 0)
-         self.languageFrame.setLayout(self.languageLayout)
-         self.languageFrame.setSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum)
--        self.languageLayout.setAlignment(Qt.AlignTop & Qt.AlignLeft)
-+        self.languageLayout.setAlignment(Qt.AlignTop | Qt.AlignLeft)
-         self.languageLabel = QLabel(getMessage("language-label"), self)
-         self.languageCombobox = QtWidgets.QComboBox(self)
-         self.languageCombobox.addItem(getMessage("automatic-language").format(getMessage("LANGUAGE", getInitialLanguage())))
-@@ -1214,7 +1216,7 @@ def addMessageTab(self):
-
-         self.displaySettingsGroup.setLayout(self.displaySettingsLayout)
-         self.displaySettingsGroup.setMaximumHeight(self.displaySettingsGroup.minimumSizeHint().height())
--        self.displaySettingsLayout.setAlignment(Qt.AlignTop & Qt.AlignLeft)
-+        self.displaySettingsLayout.setAlignment(Qt.AlignTop | Qt.AlignLeft)
-         self.messageLayout.addWidget(self.displaySettingsGroup)
-
-         # messageFrame
-@@ -1394,7 +1396,9 @@ def __init__(self, config, playerpaths, error, defaultConfig):
-         self.publicServerAddresses = []
-
-         self._playerProbeThread = GetPlayerIconThread()
--        self._playerProbeThread.done.connect(self._updateExecutableIcon)
-+        # To-Do: Why does this not work with PyQt5
-+        if not IsPyQt5:
-+            self._playerProbeThread.done.connect(self._updateExecutableIcon)
-         self._playerProbeThread.start()
-
-         if self.config['clearGUIData'] == True:
 diff --git a/syncplay/ui/gui.py b/syncplay/ui/gui.py
-index c59c5697..a8fe427d 100755
+index b7a9a9f..d2ad6e5 100755
 --- a/syncplay/ui/gui.py
 +++ b/syncplay/ui/gui.py
-@@ -18,8 +18,7 @@
- from syncplay.utils import resourcespath
+@@ -19,7 +19,7 @@ from syncplay.utils import resourcespath
  from syncplay.utils import isLinux, isWindows, isMacOS
  from syncplay.utils import formatTime, sameFilename, sameFilesize, sameFileduration, RoomPasswordProvider, formatSize, isURL
--from syncplay.vendor import Qt
+ from syncplay.vendor import Qt
 -from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__, __binding_version__, __qt_version__, IsPySide, IsPySide2
 +from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__, __binding_version__, __qt_version__, IsPySide, IsPySide2, IsPyQt5
  from syncplay.vendor.Qt.QtCore import Qt, QSettings, QSize, QPoint, QUrl, QLine, QDateTime
  applyDPIScaling = True
  if isLinux():
-@@ -32,15 +31,17 @@
+@@ -32,6 +32,8 @@ if hasattr(QtCore.Qt, 'AA_UseHighDpiPixmaps'):
      QtWidgets.QApplication.setAttribute(QtCore.Qt.AA_UseHighDpiPixmaps, applyDPIScaling)
  if IsPySide2:
      from PySide2.QtCore import QStandardPaths
-+elif IsPyQt5:
++if IsPyQt5:
 +    from PyQt5.QtCore import QStandardPaths
  if isMacOS() and IsPySide:
      from Foundation import NSURL
      from Cocoa import NSString, NSUTF8StringEncoding
- lastCheckedForUpdates = None
- from syncplay.vendor import darkdetect
- if isMacOS():
--	isDarkMode = darkdetect.isDark()
-+    isDarkMode = darkdetect.isDark()
- else:
--	isDarkMode = None
-+    isDarkMode = None
-
-
- class ConsoleInGUI(ConsoleUI):
-@@ -139,7 +140,7 @@ def __init__(self, parent=None):
-             self.setWindowTitle(getMessage("about-dialog-title"))
-             if isWindows():
-                 self.setWindowFlags(self.windowFlags() & ~Qt.WindowContextHelpButtonHint)
--        self.setWindowIcon(QtGui.QPixmap(resourcespath + 'syncplay.png'))
-+        self.setWindowIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'syncplay.png')))
-         nameLabel = QtWidgets.QLabel("<center><strong>Syncplay</strong></center>")
-         nameLabel.setFont(QtGui.QFont("Helvetica", 18))
-         linkLabel = QtWidgets.QLabel()
-@@ -202,7 +203,7 @@ def __init__(self, tlsData, parent=None):
-             self.setWindowTitle(getMessage("tls-information-title"))
-             if isWindows():
-                 self.setWindowFlags(self.windowFlags() & ~Qt.WindowContextHelpButtonHint)
--        self.setWindowIcon(QtGui.QPixmap(resourcespath + 'syncplay.png'))
-+        self.setWindowIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'syncplay.png')))
-         statusLabel = QtWidgets.QLabel(getMessage("tls-dialog-status-label").format(tlsData["subject"]))
-         descLabel = QtWidgets.QLabel(getMessage("tls-dialog-desc-label").format(tlsData["subject"]))
-         connDataLabel = QtWidgets.QLabel(getMessage("tls-dialog-connection-label").format(tlsData["protocolVersion"], tlsData["cipher"]))
-@@ -454,6 +455,15 @@ def mouseMoveEvent(self, event):
-     def needsClient(f):  # @NoSelf
-         @wraps(f)
-         def wrapper(self, *args, **kwds):
-+            # To-Do: For some strange reason the args tumple contains False
-+            # for some functions, resulting in a crash as the function only accepts
-+            # one argument (self). I do not understand where this 'False' is coming
-+            # from, it does not seem to be added when the function is called.
-+            # This very ugly workaround fixes the problem
-+            if IsPyQt5:
-+                if len(args)>0:
-+                    if not args[0]:
-+                        args = ()
-             if not self._syncplayClient:
-                 self.showDebugMessage("Tried to use client before it was ready!")
-                 return
-@@ -614,11 +624,11 @@ def showUserList(self, currentUser, rooms):
-
-             if isControlledRoom:
-                 if room == currentUser.room and currentUser.isController():
--                    roomitem.setIcon(QtGui.QPixmap(resourcespath + 'lock_open.png'))
-+                    roomitem.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'lock_open.png')))
-                 else:
--                    roomitem.setIcon(QtGui.QPixmap(resourcespath + 'lock.png'))
-+                    roomitem.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'lock.png')))
-             else:
--                roomitem.setIcon(QtGui.QPixmap(resourcespath + 'chevrons_right.png'))
-+                roomitem.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'chevrons_right.png')))
-
-             for user in rooms[room]:
-                 useritem = QtGui.QStandardItem(user.username)
-@@ -719,31 +729,31 @@ def openPlaylistMenu(self, position):
-             pathFound = self._syncplayClient.fileSwitch.findFilepath(firstFile) if not isURL(firstFile) else None
-             if self._syncplayClient.userlist.currentUser.file is None or firstFile != self._syncplayClient.userlist.currentUser.file["name"]:
-                 if isURL(firstFile):
--                    menu.addAction(QtGui.QPixmap(resourcespath + "world_go.png"), getMessage("openstreamurl-menu-label"), lambda: self.openFile(firstFile, resetPosition=True, fromUser=True))
-+                    menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "world_go.png")), getMessage("openstreamurl-menu-label"), lambda: self.openFile(firstFile, resetPosition=True, fromUser=True))
-                 elif pathFound:
--                        menu.addAction(QtGui.QPixmap(resourcespath + "film_go.png"), getMessage("openmedia-menu-label"), lambda: self.openFile(pathFound, resetPosition=True, fromUser=True))
-+                        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_go.png")), getMessage("openmedia-menu-label"), lambda: self.openFile(pathFound, resetPosition=True, fromUser=True))
-             if pathFound:
--                menu.addAction(QtGui.QPixmap(resourcespath + "folder_film.png"),
-+                menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "folder_film.png")),
-                                getMessage('open-containing-folder'),
-                                lambda: utils.open_system_file_browser(pathFound))
-             if self._syncplayClient.isUntrustedTrustableURI(firstFile):
-                 domain = utils.getDomainFromURL(firstFile)
--                menu.addAction(QtGui.QPixmap(resourcespath + "shield_add.png"), getMessage("addtrusteddomain-menu-label").format(domain), lambda: self.addTrustedDomain(domain))
--            menu.addAction(QtGui.QPixmap(resourcespath + "delete.png"), getMessage("removefromplaylist-menu-label"), lambda: self.deleteSelectedPlaylistItems())
-+                menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "shield_add.png")), getMessage("addtrusteddomain-menu-label").format(domain), lambda: self.addTrustedDomain(domain))
-+            menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "delete.png")), getMessage("removefromplaylist-menu-label"), lambda: self.deleteSelectedPlaylistItems())
-             menu.addSeparator()
--        menu.addAction(QtGui.QPixmap(resourcespath + "arrow_switch.png"), getMessage("shuffleremainingplaylist-menu-label"), lambda: self.shuffleRemainingPlaylist())
--        menu.addAction(QtGui.QPixmap(resourcespath + "arrow_switch.png"), getMessage("shuffleentireplaylist-menu-label"), lambda: self.shuffleEntirePlaylist())
--        menu.addAction(QtGui.QPixmap(resourcespath + "arrow_undo.png"), getMessage("undoplaylist-menu-label"), lambda: self.undoPlaylistChange())
--        menu.addAction(QtGui.QPixmap(resourcespath + "film_edit.png"), getMessage("editplaylist-menu-label"), lambda: self.openEditPlaylistDialog())
--        menu.addAction(QtGui.QPixmap(resourcespath + "film_add.png"), getMessage("addfilestoplaylist-menu-label"), lambda: self.OpenAddFilesToPlaylistDialog())
--        menu.addAction(QtGui.QPixmap(resourcespath + "world_add.png"), getMessage("addurlstoplaylist-menu-label"), lambda: self.OpenAddURIsToPlaylistDialog())
-+        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "arrow_switch.png")), getMessage("shuffleremainingplaylist-menu-label"), lambda: self.shuffleRemainingPlaylist())
-+        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "arrow_switch.png")), getMessage("shuffleentireplaylist-menu-label"), lambda: self.shuffleEntirePlaylist())
-+        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "arrow_undo.png")), getMessage("undoplaylist-menu-label"), lambda: self.undoPlaylistChange())
-+        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_edit.png")), getMessage("editplaylist-menu-label"), lambda: self.openEditPlaylistDialog())
-+        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_add.png")), getMessage("addfilestoplaylist-menu-label"), lambda: self.OpenAddFilesToPlaylistDialog())
-+        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "world_add.png")), getMessage("addurlstoplaylist-menu-label"), lambda: self.OpenAddURIsToPlaylistDialog())
-         menu.addSeparator()
-         menu.addAction(getMessage("loadplaylistfromfile-menu-label"),lambda: self.OpenLoadPlaylistFromFileDialog()) # TODO: Add icon
-         menu.addAction("Load and shuffle playlist from file",lambda: self.OpenLoadPlaylistFromFileDialog(shuffle=True))  # TODO: Add icon and messages_en
-         menu.addAction(getMessage("saveplaylisttofile-menu-label"),lambda: self.OpenSavePlaylistToFileDialog()) # TODO: Add icon
-         menu.addSeparator()
--        menu.addAction(QtGui.QPixmap(resourcespath + "film_folder_edit.png"), getMessage("setmediadirectories-menu-label"), lambda: self.openSetMediaDirectoriesDialog())
--        menu.addAction(QtGui.QPixmap(resourcespath + "shield_edit.png"), getMessage("settrusteddomains-menu-label"), lambda: self.openSetTrustedDomainsDialog())
-+        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_folder_edit.png")), getMessage("setmediadirectories-menu-label"), lambda: self.openSetMediaDirectoriesDialog())
-+        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "shield_edit.png")), getMessage("settrusteddomains-menu-label"), lambda: self.openSetTrustedDomainsDialog())
-         menu.exec_(self.playlist.viewport().mapToGlobal(position))
-
-     def openRoomMenu(self, position):
-@@ -778,25 +788,25 @@ def openRoomMenu(self, position):
-         elif username and filename and filename != getMessage("nofile-note"):
-             if self.config['sharedPlaylistEnabled'] and not self.isItemInPlaylist(filename):
-                 if isURL(filename):
--                    menu.addAction(QtGui.QPixmap(resourcespath + "world_add.png"), addUsersStreamToPlaylistLabelText, lambda: self.addStreamToPlaylist(filename))
-+                    menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "world_add.png")), addUsersStreamToPlaylistLabelText, lambda: self.addStreamToPlaylist(filename))
-                 else:
--                    menu.addAction(QtGui.QPixmap(resourcespath + "film_add.png"), addUsersFileToPlaylistLabelText, lambda: self.addStreamToPlaylist(filename))
-+                    menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_add.png")), addUsersFileToPlaylistLabelText, lambda: self.addStreamToPlaylist(filename))
-
-             if self._syncplayClient.userlist.currentUser.file is None or filename != self._syncplayClient.userlist.currentUser.file["name"]:
-                 if isURL(filename):
--                    menu.addAction(QtGui.QPixmap(resourcespath + "world_go.png"), getMessage("openusersstream-menu-label").format(shortUsername), lambda: self.openFile(filename, resetPosition=False, fromUser=True))
-+                    menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "world_go.png")), getMessage("openusersstream-menu-label").format(shortUsername), lambda: self.openFile(filename, resetPosition=False, fromUser=True))
-                 else:
-                     pathFound = self._syncplayClient.fileSwitch.findFilepath(filename)
-                     if pathFound:
--                        menu.addAction(QtGui.QPixmap(resourcespath + "film_go.png"), getMessage("openusersfile-menu-label").format(shortUsername), lambda: self.openFile(pathFound, resetPosition=False, fromUser=True))
-+                        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_go.png")), getMessage("openusersfile-menu-label").format(shortUsername), lambda: self.openFile(pathFound, resetPosition=False, fromUser=True))
-             if self._syncplayClient.isUntrustedTrustableURI(filename):
-                 domain = utils.getDomainFromURL(filename)
--                menu.addAction(QtGui.QPixmap(resourcespath + "shield_add.png"), getMessage("addtrusteddomain-menu-label").format(domain), lambda: self.addTrustedDomain(domain))
-+                menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "shield_add.png")), getMessage("addtrusteddomain-menu-label").format(domain), lambda: self.addTrustedDomain(domain))
-
-             if not isURL(filename) and filename != getMessage("nofile-note"):
-                 path = self._syncplayClient.fileSwitch.findFilepath(filename)
-                 if path:
--                    menu.addAction(QtGui.QPixmap(resourcespath + "folder_film.png"), getMessage('open-containing-folder'), lambda: utils.open_system_file_browser(path))
-+                    menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "folder_film.png")), getMessage('open-containing-folder'), lambda: utils.open_system_file_browser(path))
-         else:
-             return
-         menu.exec_(self.listTreeView.viewport().mapToGlobal(position))
-@@ -808,7 +818,7 @@ def updateListGeometry(self):
+@@ -808,7 +810,7 @@ class MainWindow(QtWidgets.QMainWindow):
                  self.listTreeView.setFirstColumnSpanned(roomtocheck, self.listTreeView.rootIndex(), True)
                  roomtocheck += 1
              self.listTreeView.header().setStretchLastSection(False)
@@ -264,7 +68,7 @@ index c59c5697..a8fe427d 100755
                  self.listTreeView.header().setSectionResizeMode(0, QtWidgets.QHeaderView.ResizeToContents)
                  self.listTreeView.header().setSectionResizeMode(1, QtWidgets.QHeaderView.ResizeToContents)
                  self.listTreeView.header().setSectionResizeMode(2, QtWidgets.QHeaderView.ResizeToContents)
-@@ -822,7 +832,7 @@ def updateListGeometry(self):
+@@ -822,7 +824,7 @@ class MainWindow(QtWidgets.QMainWindow):
              if self.listTreeView.header().width() < (NarrowTabsWidth+self.listTreeView.header().sectionSize(3)):
                  self.listTreeView.header().resizeSection(3, self.listTreeView.header().width()-NarrowTabsWidth)
              else:
@@ -273,7 +77,7 @@ index c59c5697..a8fe427d 100755
                      self.listTreeView.header().setSectionResizeMode(3, QtWidgets.QHeaderView.Stretch)
                  if IsPySide:
                      self.listTreeView.header().setResizeMode(3, QtWidgets.QHeaderView.Stretch)
-@@ -1003,7 +1013,7 @@ def getInitialMediaDirectory(self, includeUserSpecifiedDirectories=True):
+@@ -1003,7 +1005,7 @@ class MainWindow(QtWidgets.QMainWindow):
                  defaultdirectory = QtGui.QDesktopServices.storageLocation(QtGui.QDesktopServices.HomeLocation)
              else:
                  defaultdirectory = ""
@@ -282,193 +86,3 @@ index c59c5697..a8fe427d 100755
              if self.config["mediaSearchDirectories"] and os.path.isdir(self.config["mediaSearchDirectories"][0]) and includeUserSpecifiedDirectories:
                  defaultdirectory = self.config["mediaSearchDirectories"][0]
              elif includeUserSpecifiedDirectories and os.path.isdir(self.mediadirectory):
-@@ -1410,7 +1420,7 @@ def addTopLayout(self, window):
-         window.chatInput.setMaxLength(constants.MAX_CHAT_MESSAGE_LENGTH)
-         window.chatInput.returnPressed.connect(self.sendChatMessage)
-         window.chatButton = QtWidgets.QPushButton(
--            QtGui.QPixmap(resourcespath + 'email_go.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'email_go.png')),
-             getMessage("sendmessage-label"))
-         window.chatButton.pressed.connect(self.sendChatMessage)
-         window.chatLayout = QtWidgets.QHBoxLayout()
-@@ -1445,7 +1455,7 @@ def addTopLayout(self, window):
-         window.listlabel = QtWidgets.QLabel(getMessage("userlist-heading-label"))
-         if isMacOS:
-             window.listlabel.setMinimumHeight(21)
--            window.sslButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'lock_green.png').scaled(14, 14),"")
-+            window.sslButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'lock_green.png').scaled(14, 14)),"")
-             window.sslButton.setVisible(False)
-             window.sslButton.setFixedHeight(21)
-             window.sslButton.setFixedWidth(21)
-@@ -1453,7 +1463,7 @@ def addTopLayout(self, window):
-             window.sslButton.setStyleSheet("QPushButton:!hover{border: 1px solid gray;} QPushButton:hover{border:2px solid black;}")
-         else:
-             window.listlabel.setMinimumHeight(27)
--            window.sslButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'lock_green.png'),"")
-+            window.sslButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'lock_green.png')),"")
-             window.sslButton.setVisible(False)
-             window.sslButton.setFixedHeight(27)
-             window.sslButton.setFixedWidth(27)
-@@ -1485,7 +1495,7 @@ def addTopLayout(self, window):
-         window.roomsCombobox.setEditable(True)
-         #window.roomsCombobox.setMaxLength(constants.MAX_ROOM_NAME_LENGTH)
-         window.roomButton = QtWidgets.QPushButton(
--            QtGui.QPixmap(resourcespath + 'door_in.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'door_in.png')),
-             getMessage("joinroom-label"))
-         window.roomButton.pressed.connect(self.joinRoom)
-         window.roomButton.setFixedWidth(window.roomButton.sizeHint().width()+3)
-@@ -1620,24 +1630,24 @@ def addPlaybackLayout(self, window):
-         window.playbackFrame.setLayout(window.playbackLayout)
-         window.seekInput = QtWidgets.QLineEdit()
-         window.seekInput.returnPressed.connect(self.seekFromButton)
--        window.seekButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'clock_go.png'), "")
-+        window.seekButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'clock_go.png')), "")
-         window.seekButton.setToolTip(getMessage("seektime-menu-label"))
-         window.seekButton.pressed.connect(self.seekFromButton)
-         window.seekInput.setText("0:00")
-         window.seekInput.setFixedWidth(60)
-         window.playbackLayout.addWidget(window.seekInput)
-         window.playbackLayout.addWidget(window.seekButton)
--        window.unseekButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'arrow_undo.png'), "")
-+        window.unseekButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'arrow_undo.png')), "")
-         window.unseekButton.setToolTip(getMessage("undoseek-menu-label"))
-         window.unseekButton.pressed.connect(self.undoSeek)
-
-         window.miscLayout = QtWidgets.QHBoxLayout()
-         window.playbackLayout.addWidget(window.unseekButton)
--        window.playButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'control_play_blue.png'), "")
-+        window.playButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_play_blue.png')), "")
-         window.playButton.setToolTip(getMessage("play-menu-label"))
-         window.playButton.pressed.connect(self.play)
-         window.playbackLayout.addWidget(window.playButton)
--        window.pauseButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'control_pause_blue.png'), "")
-+        window.pauseButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_pause_blue.png')), "")
-         window.pauseButton.setToolTip(getMessage("pause-menu-label"))
-         window.pauseButton.pressed.connect(self.pause)
-         window.playbackLayout.addWidget(window.pauseButton)
-@@ -1657,13 +1667,13 @@ def populateMenubar(self, window):
-         # File menu
-
-         window.fileMenu = QtWidgets.QMenu(getMessage("file-menu-label"), self)
--        window.openAction = window.fileMenu.addAction(QtGui.QPixmap(resourcespath + 'folder_explore.png'),
-+        window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'folder_explore.png')),
-                                                       getMessage("openmedia-menu-label"))
-         window.openAction.triggered.connect(self.browseMediapath)
--        window.openAction = window.fileMenu.addAction(QtGui.QPixmap(resourcespath + 'world_explore.png'),
-+        window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'world_explore.png')),
-                                                       getMessage("openstreamurl-menu-label"))
-         window.openAction.triggered.connect(self.promptForStreamURL)
--        window.openAction = window.fileMenu.addAction(QtGui.QPixmap(resourcespath + 'film_folder_edit.png'),
-+        window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'film_folder_edit.png')),
-                                                       getMessage("setmediadirectories-menu-label"))
-         window.openAction.triggered.connect(self.openSetMediaDirectoriesDialog)
-
-@@ -1671,7 +1681,7 @@ def populateMenubar(self, window):
-         if isMacOS():
-             window.exitAction.setMenuRole(QtWidgets.QAction.QuitRole)
-         else:
--            window.exitAction.setIcon(QtGui.QPixmap(resourcespath + 'cross.png'))
-+            window.exitAction.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'cross.png')))
-         window.exitAction.triggered.connect(self.exitSyncplay)
-
-         if(window.editMenu is not None):
-@@ -1683,19 +1693,19 @@ def populateMenubar(self, window):
-
-         window.playbackMenu = QtWidgets.QMenu(getMessage("playback-menu-label"), self)
-         window.playAction = window.playbackMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'control_play_blue.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_play_blue.png')),
-             getMessage("play-menu-label"))
-         window.playAction.triggered.connect(self.play)
-         window.pauseAction = window.playbackMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'control_pause_blue.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_pause_blue.png')),
-             getMessage("pause-menu-label"))
-         window.pauseAction.triggered.connect(self.pause)
-         window.seekAction = window.playbackMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'clock_go.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'clock_go.png')),
-             getMessage("seektime-menu-label"))
-         window.seekAction.triggered.connect(self.seekPositionDialog)
-         window.unseekAction = window.playbackMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'arrow_undo.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'arrow_undo.png')),
-             getMessage("undoseek-menu-label"))
-         window.unseekAction.triggered.connect(self.undoSeek)
-
-@@ -1705,17 +1715,17 @@ def populateMenubar(self, window):
-
-         window.advancedMenu = QtWidgets.QMenu(getMessage("advanced-menu-label"), self)
-         window.setoffsetAction = window.advancedMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'timeline_marker.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'timeline_marker.png')),
-             getMessage("setoffset-menu-label"))
-         window.setoffsetAction.triggered.connect(self.setOffset)
-         window.setTrustedDomainsAction = window.advancedMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'shield_edit.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'shield_edit.png')),
-             getMessage("settrusteddomains-menu-label"))
-         window.setTrustedDomainsAction.triggered.connect(self.openSetTrustedDomainsDialog)
-         window.createcontrolledroomAction = window.advancedMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'page_white_key.png'), getMessage("createcontrolledroom-menu-label"))
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'page_white_key.png')), getMessage("createcontrolledroom-menu-label"))
-         window.createcontrolledroomAction.triggered.connect(self.createControlledRoom)
--        window.identifyascontroller = window.advancedMenu.addAction(QtGui.QPixmap(resourcespath + 'key_go.png'),
-+        window.identifyascontroller = window.advancedMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'key_go.png')),
-                                                                     getMessage("identifyascontroller-menu-label"))
-         window.identifyascontroller.triggered.connect(self.identifyAsController)
-
-@@ -1743,18 +1753,18 @@ def populateMenubar(self, window):
-         window.helpMenu = QtWidgets.QMenu(getMessage("help-menu-label"), self)
-
-         window.userguideAction = window.helpMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'help.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'help.png')),
-             getMessage("userguide-menu-label"))
-         window.userguideAction.triggered.connect(self.openUserGuide)
-         window.updateAction = window.helpMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'application_get.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'application_get.png')),
-             getMessage("update-menu-label"))
-         window.updateAction.triggered.connect(self.userCheckForUpdates)
-
-         if not isMacOS():
-             window.helpMenu.addSeparator()
-             window.about = window.helpMenu.addAction(
--                QtGui.QPixmap(resourcespath + 'syncplay.png'),
-+                QtGui.QIcon(QtGui.QPixmap(resourcespath + 'syncplay.png')),
-                 getMessage("about-menu-label"))
-         else:
-             window.about = window.helpMenu.addAction("&About")
-@@ -1835,16 +1845,16 @@ def changeAutoplayState(self, source=None):
-     def updateReadyIcon(self):
-         ready = self.readyPushButton.isChecked()
-         if ready:
--            self.readyPushButton.setIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png'))
-+            self.readyPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png')))
-         else:
--            self.readyPushButton.setIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png'))
-+            self.readyPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png')))
-
-     def updateAutoPlayIcon(self):
-         ready = self.autoplayPushButton.isChecked()
-         if ready:
--            self.autoplayPushButton.setIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png'))
-+            self.autoplayPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png')))
-         else:
--            self.autoplayPushButton.setIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png'))
-+            self.autoplayPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png')))
-
-     def automaticUpdateCheck(self):
-         currentDateTimeValue = QDateTime.currentDateTime()
-@@ -2060,7 +2070,7 @@ def __init__(self, passedBar=None):
-         self.populateMenubar(self)
-         self.addMainFrame(self)
-         self.loadSettings()
--        self.setWindowIcon(QtGui.QPixmap(resourcespath + "syncplay.png"))
-+        self.setWindowIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + "syncplay.png")))
-         self.setWindowFlags(self.windowFlags() & Qt.WindowCloseButtonHint & Qt.WindowMinimizeButtonHint & ~Qt.WindowContextHelpButtonHint)
-         self.show()
-         self.setAcceptDrops(True)
-

diff --git a/media-video/syncplay/files/syncplay-change-alignment-operator.patch b/media-video/syncplay/files/syncplay-change-alignment-operator.patch
new file mode 100644
index 00000000..15c9f67a
--- /dev/null
+++ b/media-video/syncplay/files/syncplay-change-alignment-operator.patch
@@ -0,0 +1,41 @@
+From 61584550ca734d2f3fa3b811d73f2cebd2b7f30f Mon Sep 17 00:00:00 2001
+From: Andrew Ammerlaan <andrewammerlaan@riseup.net>
+Date: Thu, 8 Oct 2020 08:37:58 +0200
+Subject: [PATCH] replace & with | in Alignment, visually identical
+
+---
+ syncplay/ui/GuiConfiguration.py | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/syncplay/ui/GuiConfiguration.py b/syncplay/ui/GuiConfiguration.py
+index 96915814..e0713adf 100755
+--- a/syncplay/ui/GuiConfiguration.py
++++ b/syncplay/ui/GuiConfiguration.py
+@@ -1181,7 +1181,7 @@ def addMessageTab(self):
+
+         self.displaySettingsGroup = QtWidgets.QGroupBox(getMessage("messages-other-title"))
+         self.displaySettingsLayout = QtWidgets.QVBoxLayout()
+-        self.displaySettingsLayout.setAlignment(Qt.AlignTop & Qt.AlignLeft)
++        self.displaySettingsLayout.setAlignment(Qt.AlignTop | Qt.AlignLeft)
+         self.displaySettingsFrame = QtWidgets.QFrame()
+
+         self.showDurationNotificationCheckbox = QCheckBox(getMessage("showdurationnotification-label"))
+@@ -1193,7 +1193,7 @@ def addMessageTab(self):
+         self.languageLayout.setContentsMargins(0, 0, 0, 0)
+         self.languageFrame.setLayout(self.languageLayout)
+         self.languageFrame.setSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum)
+-        self.languageLayout.setAlignment(Qt.AlignTop & Qt.AlignLeft)
++        self.languageLayout.setAlignment(Qt.AlignTop | Qt.AlignLeft)
+         self.languageLabel = QLabel(getMessage("language-label"), self)
+         self.languageCombobox = QtWidgets.QComboBox(self)
+         self.languageCombobox.addItem(getMessage("automatic-language").format(getMessage("LANGUAGE", getInitialLanguage())))
+@@ -1214,7 +1214,7 @@ def addMessageTab(self):
+
+         self.displaySettingsGroup.setLayout(self.displaySettingsLayout)
+         self.displaySettingsGroup.setMaximumHeight(self.displaySettingsGroup.minimumSizeHint().height())
+-        self.displaySettingsLayout.setAlignment(Qt.AlignTop & Qt.AlignLeft)
++        self.displaySettingsLayout.setAlignment(Qt.AlignTop | Qt.AlignLeft)
+         self.messageLayout.addWidget(self.displaySettingsGroup)
+
+         # messageFrame
+

diff --git a/media-video/syncplay/files/syncplay-allow-PyQt5.patch b/media-video/syncplay/files/syncplay-make-qpixmap-to-qicon-conversion-explicit.patch
similarity index 69%
copy from media-video/syncplay/files/syncplay-allow-PyQt5.patch
copy to media-video/syncplay/files/syncplay-make-qpixmap-to-qicon-conversion-explicit.patch
index 89c9de33..2ff08f7e 100644
--- a/media-video/syncplay/files/syncplay-allow-PyQt5.patch
+++ b/media-video/syncplay/files/syncplay-make-qpixmap-to-qicon-conversion-explicit.patch
@@ -1,135 +1,17 @@
-From c759525889f303195e677f9341cf325decf74809 Mon Sep 17 00:00:00 2001
+From b0e018d0cda148ef8dba07857fcbe8d751800992 Mon Sep 17 00:00:00 2001
 From: Andrew Ammerlaan <andrewammerlaan@riseup.net>
-Date: Wed, 7 Oct 2020 13:31:46 +0200
-Subject: [PATCH] PyQt5 compatability
+Date: Thu, 8 Oct 2020 08:47:44 +0200
+Subject: [PATCH] make conversion from QPixmap to QIcon explicit
 
 ---
- syncplay/ui/ConfigurationGetter.py |   4 +-
- syncplay/ui/GuiConfiguration.py    |  16 ++--
- syncplay/ui/gui.py                 | 130 ++++++++++++++++-------------
- 3 files changed, 82 insertions(+), 68 deletions(-)
+ syncplay/ui/gui.py | 106 ++++++++++++++++++++++-----------------------
+ 1 file changed, 53 insertions(+), 53 deletions(-)
 
-diff --git a/syncplay/ui/ConfigurationGetter.py b/syncplay/ui/ConfigurationGetter.py
-index dd1d8ec0..6d83c650 100755
---- a/syncplay/ui/ConfigurationGetter.py
-+++ b/syncplay/ui/ConfigurationGetter.py
-@@ -513,10 +513,10 @@ def getConfiguration(self):
-         self._overrideConfigWithArgs(args)
-         if not self._config['noGui']:
-             try:
--                from syncplay.vendor.Qt import QtWidgets, IsPySide, IsPySide2
-+                from syncplay.vendor.Qt import QtWidgets, IsPySide, IsPySide2, IsPyQt5
-                 from syncplay.vendor.Qt.QtCore import QCoreApplication
-                 from syncplay.vendor import qt5reactor
--                if not (IsPySide2 or IsPySide):
-+                if not (IsPySide2 or IsPySide or IsPyQt5):
-                     raise ImportError
-                 if QCoreApplication.instance() is None:
-                     self.app = QtWidgets.QApplication(sys.argv)
-diff --git a/syncplay/ui/GuiConfiguration.py b/syncplay/ui/GuiConfiguration.py
-index 96915814..cfe51b26 100755
---- a/syncplay/ui/GuiConfiguration.py
-+++ b/syncplay/ui/GuiConfiguration.py
-@@ -11,7 +11,7 @@
- from syncplay.utils import isBSD, isLinux, isMacOS, isWindows
- from syncplay.utils import resourcespath, posixresourcespath
-
--from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__, IsPySide, IsPySide2
-+from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__, IsPySide, IsPySide2, IsPyQt5
- from syncplay.vendor.Qt.QtCore import Qt, QSettings, QCoreApplication, QSize, QPoint, QUrl, QLine, QEventLoop, Signal
- from syncplay.vendor.Qt.QtWidgets import QApplication, QLineEdit, QLabel, QCheckBox, QButtonGroup, QRadioButton, QDoubleSpinBox, QPlainTextEdit
- from syncplay.vendor.Qt.QtGui import QCursor, QIcon, QImage, QDesktopServices
-@@ -21,6 +21,8 @@
-     QtWidgets.QApplication.setAttribute(QtCore.Qt.AA_UseHighDpiPixmaps, True)
- if IsPySide2:
-     from PySide2.QtCore import QStandardPaths
-+elif IsPyQt5:
-+    from PyQt5.QtCore import QStandardPaths
-
-
- class GuiConfiguration:
-@@ -445,7 +447,7 @@ def browseMediapath(self):
-                 defaultdirectory = QDesktopServices.storageLocation(QDesktopServices.HomeLocation)
-             else:
-                 defaultdirectory = ""
--        elif IsPySide2:
-+        elif IsPySide2 or IsPyQt5:
-             if self.config["mediaSearchDirectories"] and os.path.isdir(self.config["mediaSearchDirectories"][0]):
-                 defaultdirectory = self.config["mediaSearchDirectories"][0]
-             elif os.path.isdir(self.mediadirectory):
-@@ -1181,7 +1183,7 @@ def addMessageTab(self):
-
-         self.displaySettingsGroup = QtWidgets.QGroupBox(getMessage("messages-other-title"))
-         self.displaySettingsLayout = QtWidgets.QVBoxLayout()
--        self.displaySettingsLayout.setAlignment(Qt.AlignTop & Qt.AlignLeft)
-+        self.displaySettingsLayout.setAlignment(Qt.AlignTop | Qt.AlignLeft)
-         self.displaySettingsFrame = QtWidgets.QFrame()
-
-         self.showDurationNotificationCheckbox = QCheckBox(getMessage("showdurationnotification-label"))
-@@ -1193,7 +1195,7 @@ def addMessageTab(self):
-         self.languageLayout.setContentsMargins(0, 0, 0, 0)
-         self.languageFrame.setLayout(self.languageLayout)
-         self.languageFrame.setSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum)
--        self.languageLayout.setAlignment(Qt.AlignTop & Qt.AlignLeft)
-+        self.languageLayout.setAlignment(Qt.AlignTop | Qt.AlignLeft)
-         self.languageLabel = QLabel(getMessage("language-label"), self)
-         self.languageCombobox = QtWidgets.QComboBox(self)
-         self.languageCombobox.addItem(getMessage("automatic-language").format(getMessage("LANGUAGE", getInitialLanguage())))
-@@ -1214,7 +1216,7 @@ def addMessageTab(self):
-
-         self.displaySettingsGroup.setLayout(self.displaySettingsLayout)
-         self.displaySettingsGroup.setMaximumHeight(self.displaySettingsGroup.minimumSizeHint().height())
--        self.displaySettingsLayout.setAlignment(Qt.AlignTop & Qt.AlignLeft)
-+        self.displaySettingsLayout.setAlignment(Qt.AlignTop | Qt.AlignLeft)
-         self.messageLayout.addWidget(self.displaySettingsGroup)
-
-         # messageFrame
-@@ -1394,7 +1396,9 @@ def __init__(self, config, playerpaths, error, defaultConfig):
-         self.publicServerAddresses = []
-
-         self._playerProbeThread = GetPlayerIconThread()
--        self._playerProbeThread.done.connect(self._updateExecutableIcon)
-+        # To-Do: Why does this not work with PyQt5
-+        if not IsPyQt5:
-+            self._playerProbeThread.done.connect(self._updateExecutableIcon)
-         self._playerProbeThread.start()
-
-         if self.config['clearGUIData'] == True:
 diff --git a/syncplay/ui/gui.py b/syncplay/ui/gui.py
-index c59c5697..a8fe427d 100755
+index c59c5697..2a4bd1a5 100755
 --- a/syncplay/ui/gui.py
 +++ b/syncplay/ui/gui.py
-@@ -18,8 +18,7 @@
- from syncplay.utils import resourcespath
- from syncplay.utils import isLinux, isWindows, isMacOS
- from syncplay.utils import formatTime, sameFilename, sameFilesize, sameFileduration, RoomPasswordProvider, formatSize, isURL
--from syncplay.vendor import Qt
--from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__, __binding_version__, __qt_version__, IsPySide, IsPySide2
-+from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__, __binding_version__, __qt_version__, IsPySide, IsPySide2, IsPyQt5
- from syncplay.vendor.Qt.QtCore import Qt, QSettings, QSize, QPoint, QUrl, QLine, QDateTime
- applyDPIScaling = True
- if isLinux():
-@@ -32,15 +31,17 @@
-     QtWidgets.QApplication.setAttribute(QtCore.Qt.AA_UseHighDpiPixmaps, applyDPIScaling)
- if IsPySide2:
-     from PySide2.QtCore import QStandardPaths
-+elif IsPyQt5:
-+    from PyQt5.QtCore import QStandardPaths
- if isMacOS() and IsPySide:
-     from Foundation import NSURL
-     from Cocoa import NSString, NSUTF8StringEncoding
- lastCheckedForUpdates = None
- from syncplay.vendor import darkdetect
- if isMacOS():
--	isDarkMode = darkdetect.isDark()
-+    isDarkMode = darkdetect.isDark()
- else:
--	isDarkMode = None
-+    isDarkMode = None
-
-
- class ConsoleInGUI(ConsoleUI):
-@@ -139,7 +140,7 @@ def __init__(self, parent=None):
+@@ -139,7 +139,7 @@ def __init__(self, parent=None):
              self.setWindowTitle(getMessage("about-dialog-title"))
              if isWindows():
                  self.setWindowFlags(self.windowFlags() & ~Qt.WindowContextHelpButtonHint)
@@ -138,7 +20,7 @@ index c59c5697..a8fe427d 100755
          nameLabel = QtWidgets.QLabel("<center><strong>Syncplay</strong></center>")
          nameLabel.setFont(QtGui.QFont("Helvetica", 18))
          linkLabel = QtWidgets.QLabel()
-@@ -202,7 +203,7 @@ def __init__(self, tlsData, parent=None):
+@@ -202,7 +202,7 @@ def __init__(self, tlsData, parent=None):
              self.setWindowTitle(getMessage("tls-information-title"))
              if isWindows():
                  self.setWindowFlags(self.windowFlags() & ~Qt.WindowContextHelpButtonHint)
@@ -147,23 +29,7 @@ index c59c5697..a8fe427d 100755
          statusLabel = QtWidgets.QLabel(getMessage("tls-dialog-status-label").format(tlsData["subject"]))
          descLabel = QtWidgets.QLabel(getMessage("tls-dialog-desc-label").format(tlsData["subject"]))
          connDataLabel = QtWidgets.QLabel(getMessage("tls-dialog-connection-label").format(tlsData["protocolVersion"], tlsData["cipher"]))
-@@ -454,6 +455,15 @@ def mouseMoveEvent(self, event):
-     def needsClient(f):  # @NoSelf
-         @wraps(f)
-         def wrapper(self, *args, **kwds):
-+            # To-Do: For some strange reason the args tumple contains False
-+            # for some functions, resulting in a crash as the function only accepts
-+            # one argument (self). I do not understand where this 'False' is coming
-+            # from, it does not seem to be added when the function is called.
-+            # This very ugly workaround fixes the problem
-+            if IsPyQt5:
-+                if len(args)>0:
-+                    if not args[0]:
-+                        args = ()
-             if not self._syncplayClient:
-                 self.showDebugMessage("Tried to use client before it was ready!")
-                 return
-@@ -614,11 +624,11 @@ def showUserList(self, currentUser, rooms):
+@@ -614,11 +614,11 @@ def showUserList(self, currentUser, rooms):
 
              if isControlledRoom:
                  if room == currentUser.room and currentUser.isController():
@@ -178,7 +44,7 @@ index c59c5697..a8fe427d 100755
 
              for user in rooms[room]:
                  useritem = QtGui.QStandardItem(user.username)
-@@ -719,31 +729,31 @@ def openPlaylistMenu(self, position):
+@@ -719,31 +719,31 @@ def openPlaylistMenu(self, position):
              pathFound = self._syncplayClient.fileSwitch.findFilepath(firstFile) if not isURL(firstFile) else None
              if self._syncplayClient.userlist.currentUser.file is None or firstFile != self._syncplayClient.userlist.currentUser.file["name"]:
                  if isURL(firstFile):
@@ -223,7 +89,7 @@ index c59c5697..a8fe427d 100755
          menu.exec_(self.playlist.viewport().mapToGlobal(position))
 
      def openRoomMenu(self, position):
-@@ -778,25 +788,25 @@ def openRoomMenu(self, position):
+@@ -778,25 +778,25 @@ def openRoomMenu(self, position):
          elif username and filename and filename != getMessage("nofile-note"):
              if self.config['sharedPlaylistEnabled'] and not self.isItemInPlaylist(filename):
                  if isURL(filename):
@@ -255,34 +121,7 @@ index c59c5697..a8fe427d 100755
          else:
              return
          menu.exec_(self.listTreeView.viewport().mapToGlobal(position))
-@@ -808,7 +818,7 @@ def updateListGeometry(self):
-                 self.listTreeView.setFirstColumnSpanned(roomtocheck, self.listTreeView.rootIndex(), True)
-                 roomtocheck += 1
-             self.listTreeView.header().setStretchLastSection(False)
--            if IsPySide2:
-+            if IsPySide2 or IsPyQt5:
-                 self.listTreeView.header().setSectionResizeMode(0, QtWidgets.QHeaderView.ResizeToContents)
-                 self.listTreeView.header().setSectionResizeMode(1, QtWidgets.QHeaderView.ResizeToContents)
-                 self.listTreeView.header().setSectionResizeMode(2, QtWidgets.QHeaderView.ResizeToContents)
-@@ -822,7 +832,7 @@ def updateListGeometry(self):
-             if self.listTreeView.header().width() < (NarrowTabsWidth+self.listTreeView.header().sectionSize(3)):
-                 self.listTreeView.header().resizeSection(3, self.listTreeView.header().width()-NarrowTabsWidth)
-             else:
--                if IsPySide2:
-+                if IsPySide2 or IsPyQt5:
-                     self.listTreeView.header().setSectionResizeMode(3, QtWidgets.QHeaderView.Stretch)
-                 if IsPySide:
-                     self.listTreeView.header().setResizeMode(3, QtWidgets.QHeaderView.Stretch)
-@@ -1003,7 +1013,7 @@ def getInitialMediaDirectory(self, includeUserSpecifiedDirectories=True):
-                 defaultdirectory = QtGui.QDesktopServices.storageLocation(QtGui.QDesktopServices.HomeLocation)
-             else:
-                 defaultdirectory = ""
--        elif IsPySide2:
-+        elif IsPySide2 or IsPyQt5:
-             if self.config["mediaSearchDirectories"] and os.path.isdir(self.config["mediaSearchDirectories"][0]) and includeUserSpecifiedDirectories:
-                 defaultdirectory = self.config["mediaSearchDirectories"][0]
-             elif includeUserSpecifiedDirectories and os.path.isdir(self.mediadirectory):
-@@ -1410,7 +1420,7 @@ def addTopLayout(self, window):
+@@ -1410,7 +1410,7 @@ def addTopLayout(self, window):
          window.chatInput.setMaxLength(constants.MAX_CHAT_MESSAGE_LENGTH)
          window.chatInput.returnPressed.connect(self.sendChatMessage)
          window.chatButton = QtWidgets.QPushButton(
@@ -291,7 +130,7 @@ index c59c5697..a8fe427d 100755
              getMessage("sendmessage-label"))
          window.chatButton.pressed.connect(self.sendChatMessage)
          window.chatLayout = QtWidgets.QHBoxLayout()
-@@ -1445,7 +1455,7 @@ def addTopLayout(self, window):
+@@ -1445,7 +1445,7 @@ def addTopLayout(self, window):
          window.listlabel = QtWidgets.QLabel(getMessage("userlist-heading-label"))
          if isMacOS:
              window.listlabel.setMinimumHeight(21)
@@ -300,7 +139,7 @@ index c59c5697..a8fe427d 100755
              window.sslButton.setVisible(False)
              window.sslButton.setFixedHeight(21)
              window.sslButton.setFixedWidth(21)
-@@ -1453,7 +1463,7 @@ def addTopLayout(self, window):
+@@ -1453,7 +1453,7 @@ def addTopLayout(self, window):
              window.sslButton.setStyleSheet("QPushButton:!hover{border: 1px solid gray;} QPushButton:hover{border:2px solid black;}")
          else:
              window.listlabel.setMinimumHeight(27)
@@ -309,7 +148,7 @@ index c59c5697..a8fe427d 100755
              window.sslButton.setVisible(False)
              window.sslButton.setFixedHeight(27)
              window.sslButton.setFixedWidth(27)
-@@ -1485,7 +1495,7 @@ def addTopLayout(self, window):
+@@ -1485,7 +1485,7 @@ def addTopLayout(self, window):
          window.roomsCombobox.setEditable(True)
          #window.roomsCombobox.setMaxLength(constants.MAX_ROOM_NAME_LENGTH)
          window.roomButton = QtWidgets.QPushButton(
@@ -318,7 +157,7 @@ index c59c5697..a8fe427d 100755
              getMessage("joinroom-label"))
          window.roomButton.pressed.connect(self.joinRoom)
          window.roomButton.setFixedWidth(window.roomButton.sizeHint().width()+3)
-@@ -1620,24 +1630,24 @@ def addPlaybackLayout(self, window):
+@@ -1620,24 +1620,24 @@ def addPlaybackLayout(self, window):
          window.playbackFrame.setLayout(window.playbackLayout)
          window.seekInput = QtWidgets.QLineEdit()
          window.seekInput.returnPressed.connect(self.seekFromButton)
@@ -347,7 +186,7 @@ index c59c5697..a8fe427d 100755
          window.pauseButton.setToolTip(getMessage("pause-menu-label"))
          window.pauseButton.pressed.connect(self.pause)
          window.playbackLayout.addWidget(window.pauseButton)
-@@ -1657,13 +1667,13 @@ def populateMenubar(self, window):
+@@ -1657,13 +1657,13 @@ def populateMenubar(self, window):
          # File menu
 
          window.fileMenu = QtWidgets.QMenu(getMessage("file-menu-label"), self)
@@ -364,7 +203,7 @@ index c59c5697..a8fe427d 100755
                                                        getMessage("setmediadirectories-menu-label"))
          window.openAction.triggered.connect(self.openSetMediaDirectoriesDialog)
 
-@@ -1671,7 +1681,7 @@ def populateMenubar(self, window):
+@@ -1671,7 +1671,7 @@ def populateMenubar(self, window):
          if isMacOS():
              window.exitAction.setMenuRole(QtWidgets.QAction.QuitRole)
          else:
@@ -373,7 +212,7 @@ index c59c5697..a8fe427d 100755
          window.exitAction.triggered.connect(self.exitSyncplay)
 
          if(window.editMenu is not None):
-@@ -1683,19 +1693,19 @@ def populateMenubar(self, window):
+@@ -1683,19 +1683,19 @@ def populateMenubar(self, window):
 
          window.playbackMenu = QtWidgets.QMenu(getMessage("playback-menu-label"), self)
          window.playAction = window.playbackMenu.addAction(
@@ -397,7 +236,7 @@ index c59c5697..a8fe427d 100755
              getMessage("undoseek-menu-label"))
          window.unseekAction.triggered.connect(self.undoSeek)
 
-@@ -1705,17 +1715,17 @@ def populateMenubar(self, window):
+@@ -1705,17 +1705,17 @@ def populateMenubar(self, window):
 
          window.advancedMenu = QtWidgets.QMenu(getMessage("advanced-menu-label"), self)
          window.setoffsetAction = window.advancedMenu.addAction(
@@ -419,7 +258,16 @@ index c59c5697..a8fe427d 100755
                                                                      getMessage("identifyascontroller-menu-label"))
          window.identifyascontroller.triggered.connect(self.identifyAsController)
 
-@@ -1743,18 +1753,18 @@ def populateMenubar(self, window):
+@@ -1725,7 +1725,7 @@ def populateMenubar(self, window):
+
+         window.windowMenu = QtWidgets.QMenu(getMessage("window-menu-label"), self)
+
+-        window.editroomsAction = window.windowMenu.addAction(QtGui.QPixmap(resourcespath + 'door_open_edit.png'), getMessage("roomlist-msgbox-label"))
++        window.editroomsAction = window.windowMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'door_open_edit.png')), getMessage("roomlist-msgbox-label"))
+         window.editroomsAction.triggered.connect(self.openEditRoomsDialog)
+         window.menuBar.addMenu(window.windowMenu)
+
+@@ -1743,18 +1743,18 @@ def populateMenubar(self, window):
          window.helpMenu = QtWidgets.QMenu(getMessage("help-menu-label"), self)
 
          window.userguideAction = window.helpMenu.addAction(
@@ -441,7 +289,7 @@ index c59c5697..a8fe427d 100755
                  getMessage("about-menu-label"))
          else:
              window.about = window.helpMenu.addAction("&About")
-@@ -1835,16 +1845,16 @@ def changeAutoplayState(self, source=None):
+@@ -1835,16 +1835,16 @@ def changeAutoplayState(self, source=None):
      def updateReadyIcon(self):
          ready = self.readyPushButton.isChecked()
          if ready:
@@ -462,7 +310,7 @@ index c59c5697..a8fe427d 100755
 
      def automaticUpdateCheck(self):
          currentDateTimeValue = QDateTime.currentDateTime()
-@@ -2060,7 +2070,7 @@ def __init__(self, passedBar=None):
+@@ -2060,7 +2060,7 @@ def __init__(self, passedBar=None):
          self.populateMenubar(self)
          self.addMainFrame(self)
          self.loadSettings()

diff --git a/media-video/syncplay/files/syncplay-use-lambda-to-connect-behind-wrapper.patch b/media-video/syncplay/files/syncplay-use-lambda-to-connect-behind-wrapper.patch
new file mode 100644
index 00000000..822b21b8
--- /dev/null
+++ b/media-video/syncplay/files/syncplay-use-lambda-to-connect-behind-wrapper.patch
@@ -0,0 +1,168 @@
+From f880d4773238a31ac7046ff290910a4ff4920d53 Mon Sep 17 00:00:00 2001
+From: Andrew Ammerlaan <andrewammerlaan@riseup.net>
+Date: Thu, 8 Oct 2020 11:41:41 +0200
+Subject: [PATCH] use lambda when connect() to function with @wrapper
+
+---
+ syncplay/ui/GuiConfiguration.py |  2 +-
+ syncplay/ui/gui.py              | 40 ++++++++++++++++-----------------
+ 2 files changed, 21 insertions(+), 21 deletions(-)
+
+diff --git a/syncplay/ui/GuiConfiguration.py b/syncplay/ui/GuiConfiguration.py
+index e0713adf..9ce6a429 100755
+--- a/syncplay/ui/GuiConfiguration.py
++++ b/syncplay/ui/GuiConfiguration.py
+@@ -1394,7 +1394,7 @@ def __init__(self, config, playerpaths, error, defaultConfig):
+         self.publicServerAddresses = []
+
+         self._playerProbeThread = GetPlayerIconThread()
+-        self._playerProbeThread.done.connect(self._updateExecutableIcon)
++        self._playerProbeThread.done.connect(lambda iconpath, playerpath: self._updateExecutableIcon(iconpath, playerpath))
+         self._playerProbeThread.start()
+
+         if self.config['clearGUIData'] == True:
+diff --git a/syncplay/ui/gui.py b/syncplay/ui/gui.py
+index 2a4bd1a5..b7a9a9f0 100755
+--- a/syncplay/ui/gui.py
++++ b/syncplay/ui/gui.py
+@@ -1457,7 +1457,7 @@ def addTopLayout(self, window):
+             window.sslButton.setVisible(False)
+             window.sslButton.setFixedHeight(27)
+             window.sslButton.setFixedWidth(27)
+-        window.sslButton.pressed.connect(self.openSSLDetails)
++        window.sslButton.pressed.connect(lambda: self.openSSLDetails())
+         window.sslButton.setToolTip(getMessage("sslconnection-tooltip"))
+         window.listFrame = QtWidgets.QFrame()
+         window.listFrame.setLineWidth(0)
+@@ -1487,7 +1487,7 @@ def addTopLayout(self, window):
+         window.roomButton = QtWidgets.QPushButton(
+             QtGui.QIcon(QtGui.QPixmap(resourcespath + 'door_in.png')),
+             getMessage("joinroom-label"))
+-        window.roomButton.pressed.connect(self.joinRoom)
++        window.roomButton.pressed.connect(lambda room=None: self.joinRoom(room))
+         window.roomButton.setFixedWidth(window.roomButton.sizeHint().width()+3)
+         window.roomLayout = QtWidgets.QHBoxLayout()
+         window.roomFrame = QtWidgets.QFrame()
+@@ -1539,10 +1539,10 @@ def addBottomLayout(self, window):
+         window.playlist.setSelectionMode(QtWidgets.QAbstractItemView.ExtendedSelection)
+         window.playlist.setDefaultDropAction(Qt.MoveAction)
+         window.playlist.setDragDropMode(QtWidgets.QAbstractItemView.InternalMove)
+-        window.playlist.doubleClicked.connect(self.playlistItemClicked)
++        window.playlist.doubleClicked.connect(lambda item: self.playlistItemClicked(item))
+         window.playlist.setContextMenuPolicy(Qt.CustomContextMenu)
+         window.playlist.setSelectionBehavior(QtWidgets.QAbstractItemView.SelectRows)
+-        window.playlist.customContextMenuRequested.connect(self.openPlaylistMenu)
++        window.playlist.customContextMenuRequested.connect(lambda position: self.openPlaylistMenu(position))
+         self.playlistUpdateTimer = task.LoopingCall(self.playlistChangeCheck)
+         self.playlistUpdateTimer.start(0.1, True)
+         noteFont = QtGui.QFont()
+@@ -1579,7 +1579,7 @@ def addBottomLayout(self, window):
+         window.autoplayPushButton.setText(getMessage("autoplay-guipushbuttonlabel"))
+         window.autoplayPushButton.setCheckable(True)
+         window.autoplayPushButton.setAutoExclusive(False)
+-        window.autoplayPushButton.toggled.connect(self.changeAutoplayState)
++        window.autoplayPushButton.toggled.connect(lambda source=None: self.changeAutoplayState(source))
+         window.autoplayPushButton.setFont(autoPlayFont)
+         if isMacOS():
+             window.autoplayFrame.setMinimumWidth(window.listFrame.sizeHint().width())
+@@ -1600,7 +1600,7 @@ def addBottomLayout(self, window):
+         window.autoplayThresholdSpinbox.setMinimum(2)
+         window.autoplayThresholdSpinbox.setMaximum(99)
+         window.autoplayThresholdSpinbox.setToolTip(getMessage("autoplay-tooltip"))
+-        window.autoplayThresholdSpinbox.valueChanged.connect(self.changeAutoplayThreshold)
++        window.autoplayThresholdSpinbox.valueChanged.connect(lambda source=None: self.changeAutoplayThreshold(source))
+         window.autoplayLayout.addWidget(window.autoplayPushButton, Qt.AlignRight)
+         window.autoplayLayout.addWidget(window.autoplayLabel, Qt.AlignRight)
+         window.autoplayLayout.addWidget(window.autoplayThresholdSpinbox, Qt.AlignRight)
+@@ -1629,17 +1629,17 @@ def addPlaybackLayout(self, window):
+         window.playbackLayout.addWidget(window.seekButton)
+         window.unseekButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'arrow_undo.png')), "")
+         window.unseekButton.setToolTip(getMessage("undoseek-menu-label"))
+-        window.unseekButton.pressed.connect(self.undoSeek)
++        window.unseekButton.pressed.connect(lambda: self.undoSeek())
+
+         window.miscLayout = QtWidgets.QHBoxLayout()
+         window.playbackLayout.addWidget(window.unseekButton)
+         window.playButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_play_blue.png')), "")
+         window.playButton.setToolTip(getMessage("play-menu-label"))
+-        window.playButton.pressed.connect(self.play)
++        window.playButton.pressed.connect(lambda: self.play())
+         window.playbackLayout.addWidget(window.playButton)
+         window.pauseButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_pause_blue.png')), "")
+         window.pauseButton.setToolTip(getMessage("pause-menu-label"))
+-        window.pauseButton.pressed.connect(self.pause)
++        window.pauseButton.pressed.connect(lambda: self.pause())
+         window.playbackLayout.addWidget(window.pauseButton)
+         window.playbackFrame.setMaximumHeight(window.playbackFrame.sizeHint().height())
+         window.playbackFrame.setMaximumWidth(window.playbackFrame.sizeHint().width())
+@@ -1659,20 +1659,20 @@ def populateMenubar(self, window):
+         window.fileMenu = QtWidgets.QMenu(getMessage("file-menu-label"), self)
+         window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'folder_explore.png')),
+                                                       getMessage("openmedia-menu-label"))
+-        window.openAction.triggered.connect(self.browseMediapath)
++        window.openAction.triggered.connect(lambda: self.browseMediapath())
+         window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'world_explore.png')),
+                                                       getMessage("openstreamurl-menu-label"))
+-        window.openAction.triggered.connect(self.promptForStreamURL)
++        window.openAction.triggered.connect(lambda: self.promptForStreamURL())
+         window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'film_folder_edit.png')),
+                                                       getMessage("setmediadirectories-menu-label"))
+-        window.openAction.triggered.connect(self.openSetMediaDirectoriesDialog)
++        window.openAction.triggered.connect(lambda: self.openSetMediaDirectoriesDialog())
+
+         window.exitAction = window.fileMenu.addAction(getMessage("exit-menu-label"))
+         if isMacOS():
+             window.exitAction.setMenuRole(QtWidgets.QAction.QuitRole)
+         else:
+             window.exitAction.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'cross.png')))
+-        window.exitAction.triggered.connect(self.exitSyncplay)
++        window.exitAction.triggered.connect(lambda: self.exitSyncplay())
+
+         if(window.editMenu is not None):
+             window.menuBar.insertMenu(window.editMenu.menuAction(), window.fileMenu)
+@@ -1685,11 +1685,11 @@ def populateMenubar(self, window):
+         window.playAction = window.playbackMenu.addAction(
+             QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_play_blue.png')),
+             getMessage("play-menu-label"))
+-        window.playAction.triggered.connect(self.play)
++        window.playAction.triggered.connect(lambda: self.play())
+         window.pauseAction = window.playbackMenu.addAction(
+             QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_pause_blue.png')),
+             getMessage("pause-menu-label"))
+-        window.pauseAction.triggered.connect(self.pause)
++        window.pauseAction.triggered.connect(lambda: self.pause())
+         window.seekAction = window.playbackMenu.addAction(
+             QtGui.QIcon(QtGui.QPixmap(resourcespath + 'clock_go.png')),
+             getMessage("seektime-menu-label"))
+@@ -1697,7 +1697,7 @@ def populateMenubar(self, window):
+         window.unseekAction = window.playbackMenu.addAction(
+             QtGui.QIcon(QtGui.QPixmap(resourcespath + 'arrow_undo.png')),
+             getMessage("undoseek-menu-label"))
+-        window.unseekAction.triggered.connect(self.undoSeek)
++        window.unseekAction.triggered.connect(lambda: self.undoSeek())
+
+         window.menuBar.addMenu(window.playbackMenu)
+
+@@ -1707,17 +1707,17 @@ def populateMenubar(self, window):
+         window.setoffsetAction = window.advancedMenu.addAction(
+             QtGui.QIcon(QtGui.QPixmap(resourcespath + 'timeline_marker.png')),
+             getMessage("setoffset-menu-label"))
+-        window.setoffsetAction.triggered.connect(self.setOffset)
++        window.setoffsetAction.triggered.connect(lambda: self.setOffset())
+         window.setTrustedDomainsAction = window.advancedMenu.addAction(
+             QtGui.QIcon(QtGui.QPixmap(resourcespath + 'shield_edit.png')),
+             getMessage("settrusteddomains-menu-label"))
+-        window.setTrustedDomainsAction.triggered.connect(self.openSetTrustedDomainsDialog)
++        window.setTrustedDomainsAction.triggered.connect(lambda: self.openSetTrustedDomainsDialog())
+         window.createcontrolledroomAction = window.advancedMenu.addAction(
+             QtGui.QIcon(QtGui.QPixmap(resourcespath + 'page_white_key.png')), getMessage("createcontrolledroom-menu-label"))
+-        window.createcontrolledroomAction.triggered.connect(self.createControlledRoom)
++        window.createcontrolledroomAction.triggered.connect(lambda: self.createControlledRoom())
+         window.identifyascontroller = window.advancedMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'key_go.png')),
+                                                                     getMessage("identifyascontroller-menu-label"))
+-        window.identifyascontroller.triggered.connect(self.identifyAsController)
++        window.identifyascontroller.triggered.connect(lambda: self.identifyAsController())
+
+         window.menuBar.addMenu(window.advancedMenu)
+
+

diff --git a/media-video/syncplay/metadata.xml b/media-video/syncplay/metadata.xml
index af8b590f..ed27ca4d 100644
--- a/media-video/syncplay/metadata.xml
+++ b/media-video/syncplay/metadata.xml
@@ -9,8 +9,5 @@
 	<use>
 		<flag name="client">Install the Syncplay client</flag>
 		<flag name="server">Install the Syncplay server</flag>
-		<flag name="vlc">Pull in VLC with the lua flag</flag>
-		<flag name="mpv">Pull in MPV with the lua flag</flag>
-		<flag name="mplayer">Pull in MPlayer</flag>
 	</use>
 </pkgmetadata>

diff --git a/media-video/syncplay/syncplay-1.6.5-r1.ebuild b/media-video/syncplay/syncplay-1.6.6_beta1.ebuild
similarity index 65%
rename from media-video/syncplay/syncplay-1.6.5-r1.ebuild
rename to media-video/syncplay/syncplay-1.6.6_beta1.ebuild
index 7f1ad024..30712b36 100644
--- a/media-video/syncplay/syncplay-1.6.5-r1.ebuild
+++ b/media-video/syncplay/syncplay-1.6.6_beta1.ebuild
@@ -8,32 +8,39 @@ DISTUTILS_USE_SETUPTOOLS=rdepend
 
 inherit distutils-r1 optfeature xdg
 
+MYPV="${PV/_beta/-Beta}"
+
 DESCRIPTION="Client/server to synchronize media playback"
 HOMEPAGE="https://github.com/Syncplay/syncplay https://syncplay.pl"
-SRC_URI="https://github.com/${PN^}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI="https://github.com/${PN^}/${PN}/archive/${MYPV}.tar.gz -> ${P}.tar.gz"
 
 LICENSE="Apache-2.0"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
 
-IUSE="+client +server vlc mpv mplayer"
-REQUIRED_USE="
-	vlc? ( client )
-	mpv? ( client )
-	mplayer? ( client )
-	client? ( || ( vlc mpv mplayer ) )
-"
+IUSE="+client +server"
 
 RDEPEND="
 	dev-python/certifi[${PYTHON_USEDEP}]
 	dev-python/twisted[${PYTHON_USEDEP}]
-	vlc? ( media-video/vlc[lua] )
-	mpv? ( media-video/mpv[lua] )
-	mplayer? ( media-video/mplayer )
-	client? ( dev-python/QtPy[${PYTHON_USEDEP},gui] )
+	client? (
+		dev-python/QtPy[${PYTHON_USEDEP},gui]
+		|| (
+			media-video/vlc[lua]
+			media-video/mpv[lua]
+			media-video/mplayer
+		)
+	)
 "
 
-PATCHES=( "${FILESDIR}/${PN}-allow-PyQt5.patch" )
+PATCHES=(
+	"${FILESDIR}/${PN}-change-alignment-operator.patch"
+	"${FILESDIR}/${PN}-make-qpixmap-to-qicon-conversion-explicit.patch"
+	"${FILESDIR}/${PN}-use-lambda-to-connect-behind-wrapper.patch"
+	"${FILESDIR}/${PN}-allow-PyQt5.patch"
+)
+
+S="${WORKDIR}/${PN}-${MYPV}"
 
 python_install() {
 	local MY_MAKEOPTS=( DESTDIR="${D}" PREFIX=/usr )
@@ -51,7 +58,7 @@ pkg_postinst() {
 	xdg_pkg_postinst
 
 	if use client; then
-		elog "Syncplay supports the following players:"
+		elog "Syncplay supports the following media players:"
 		elog "media-video/mpv, media-video/mplayer, media-video/vlc\n"
 		optfeature "using Syncplay with VLC" media-video/vlc[lua]
 		optfeature "using Syncplay with MPV" media-video/mpv[lua]


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/proj/guru:dev commit in: media-video/syncplay/, media-video/syncplay/files/
@ 2020-10-22 13:50 Andrew Ammerlaan
  0 siblings, 0 replies; 6+ messages in thread
From: Andrew Ammerlaan @ 2020-10-22 13:50 UTC (permalink / raw
  To: gentoo-commits

commit:     692c9c79a58ebf689314a5174f46615597c9d121
Author:     Andrew Ammerlaan <andrewammerlaan <AT> riseup <DOT> net>
AuthorDate: Thu Oct 22 13:50:28 2020 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> riseup <DOT> net>
CommitDate: Thu Oct 22 13:50:28 2020 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=692c9c79

media-video/syncplay: beta to stable

split up patch file
cause that makes repoman happy

Package-Manager: Portage-3.0.8, Repoman-3.0.2
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> riseup.net>

 media-video/syncplay/Manifest                      |   2 +-
 ...make-qpixmap-to-qicon-conversion-explicit.patch | 163 -------------------
 ...ake-qpixmap-to-qicon-conversion-explicit2.patch | 176 +++++++++++++++++++++
 ...ay-1.6.6_beta2.ebuild => syncplay-1.6.6.ebuild} |   7 +-
 4 files changed, 179 insertions(+), 169 deletions(-)

diff --git a/media-video/syncplay/Manifest b/media-video/syncplay/Manifest
index bfc202ab..673b479f 100644
--- a/media-video/syncplay/Manifest
+++ b/media-video/syncplay/Manifest
@@ -1 +1 @@
-DIST syncplay-1.6.6_beta2.tar.gz 1843024 BLAKE2B d5c1e9e4c7b220722fef263f96749af22965bd26b82d41b913660d8b5c70bb6fe82727d7b16492408db661cf77eed4602c201cf90b05b3ee01a51dbfb7f3ee10 SHA512 c9ec87632418dd18b62fe392458a56a23c6eb2bae33c5a6be6daa94bfc30153fb371b9fa524452bdf2329442eb073f8f77418da823eac49273e8611d404d2f8e
+DIST syncplay-1.6.6.tar.gz 1842916 BLAKE2B 99db5862879046d6bc516590b2b7afb5092db887a86ab6f4d253b5eb34ae909020e2678e950719af8bb5665201b36cae9643ab796b942959fcd2b04bf995ad6d SHA512 bb91829434002b87834c373908f43629ef74e4db31b3ed06c5cb30bf7ca43326bc40fbe627dca89d7b7d45db72ca80f57de114c5613b9e3f63db4bcd4827430f

diff --git a/media-video/syncplay/files/syncplay-make-qpixmap-to-qicon-conversion-explicit.patch b/media-video/syncplay/files/syncplay-make-qpixmap-to-qicon-conversion-explicit.patch
index 2ff08f7e..8caef495 100644
--- a/media-video/syncplay/files/syncplay-make-qpixmap-to-qicon-conversion-explicit.patch
+++ b/media-video/syncplay/files/syncplay-make-qpixmap-to-qicon-conversion-explicit.patch
@@ -157,166 +157,3 @@ index c59c5697..2a4bd1a5 100755
              getMessage("joinroom-label"))
          window.roomButton.pressed.connect(self.joinRoom)
          window.roomButton.setFixedWidth(window.roomButton.sizeHint().width()+3)
-@@ -1620,24 +1620,24 @@ def addPlaybackLayout(self, window):
-         window.playbackFrame.setLayout(window.playbackLayout)
-         window.seekInput = QtWidgets.QLineEdit()
-         window.seekInput.returnPressed.connect(self.seekFromButton)
--        window.seekButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'clock_go.png'), "")
-+        window.seekButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'clock_go.png')), "")
-         window.seekButton.setToolTip(getMessage("seektime-menu-label"))
-         window.seekButton.pressed.connect(self.seekFromButton)
-         window.seekInput.setText("0:00")
-         window.seekInput.setFixedWidth(60)
-         window.playbackLayout.addWidget(window.seekInput)
-         window.playbackLayout.addWidget(window.seekButton)
--        window.unseekButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'arrow_undo.png'), "")
-+        window.unseekButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'arrow_undo.png')), "")
-         window.unseekButton.setToolTip(getMessage("undoseek-menu-label"))
-         window.unseekButton.pressed.connect(self.undoSeek)
-
-         window.miscLayout = QtWidgets.QHBoxLayout()
-         window.playbackLayout.addWidget(window.unseekButton)
--        window.playButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'control_play_blue.png'), "")
-+        window.playButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_play_blue.png')), "")
-         window.playButton.setToolTip(getMessage("play-menu-label"))
-         window.playButton.pressed.connect(self.play)
-         window.playbackLayout.addWidget(window.playButton)
--        window.pauseButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'control_pause_blue.png'), "")
-+        window.pauseButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_pause_blue.png')), "")
-         window.pauseButton.setToolTip(getMessage("pause-menu-label"))
-         window.pauseButton.pressed.connect(self.pause)
-         window.playbackLayout.addWidget(window.pauseButton)
-@@ -1657,13 +1657,13 @@ def populateMenubar(self, window):
-         # File menu
-
-         window.fileMenu = QtWidgets.QMenu(getMessage("file-menu-label"), self)
--        window.openAction = window.fileMenu.addAction(QtGui.QPixmap(resourcespath + 'folder_explore.png'),
-+        window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'folder_explore.png')),
-                                                       getMessage("openmedia-menu-label"))
-         window.openAction.triggered.connect(self.browseMediapath)
--        window.openAction = window.fileMenu.addAction(QtGui.QPixmap(resourcespath + 'world_explore.png'),
-+        window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'world_explore.png')),
-                                                       getMessage("openstreamurl-menu-label"))
-         window.openAction.triggered.connect(self.promptForStreamURL)
--        window.openAction = window.fileMenu.addAction(QtGui.QPixmap(resourcespath + 'film_folder_edit.png'),
-+        window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'film_folder_edit.png')),
-                                                       getMessage("setmediadirectories-menu-label"))
-         window.openAction.triggered.connect(self.openSetMediaDirectoriesDialog)
-
-@@ -1671,7 +1671,7 @@ def populateMenubar(self, window):
-         if isMacOS():
-             window.exitAction.setMenuRole(QtWidgets.QAction.QuitRole)
-         else:
--            window.exitAction.setIcon(QtGui.QPixmap(resourcespath + 'cross.png'))
-+            window.exitAction.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'cross.png')))
-         window.exitAction.triggered.connect(self.exitSyncplay)
-
-         if(window.editMenu is not None):
-@@ -1683,19 +1683,19 @@ def populateMenubar(self, window):
-
-         window.playbackMenu = QtWidgets.QMenu(getMessage("playback-menu-label"), self)
-         window.playAction = window.playbackMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'control_play_blue.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_play_blue.png')),
-             getMessage("play-menu-label"))
-         window.playAction.triggered.connect(self.play)
-         window.pauseAction = window.playbackMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'control_pause_blue.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_pause_blue.png')),
-             getMessage("pause-menu-label"))
-         window.pauseAction.triggered.connect(self.pause)
-         window.seekAction = window.playbackMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'clock_go.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'clock_go.png')),
-             getMessage("seektime-menu-label"))
-         window.seekAction.triggered.connect(self.seekPositionDialog)
-         window.unseekAction = window.playbackMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'arrow_undo.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'arrow_undo.png')),
-             getMessage("undoseek-menu-label"))
-         window.unseekAction.triggered.connect(self.undoSeek)
-
-@@ -1705,17 +1705,17 @@ def populateMenubar(self, window):
-
-         window.advancedMenu = QtWidgets.QMenu(getMessage("advanced-menu-label"), self)
-         window.setoffsetAction = window.advancedMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'timeline_marker.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'timeline_marker.png')),
-             getMessage("setoffset-menu-label"))
-         window.setoffsetAction.triggered.connect(self.setOffset)
-         window.setTrustedDomainsAction = window.advancedMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'shield_edit.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'shield_edit.png')),
-             getMessage("settrusteddomains-menu-label"))
-         window.setTrustedDomainsAction.triggered.connect(self.openSetTrustedDomainsDialog)
-         window.createcontrolledroomAction = window.advancedMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'page_white_key.png'), getMessage("createcontrolledroom-menu-label"))
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'page_white_key.png')), getMessage("createcontrolledroom-menu-label"))
-         window.createcontrolledroomAction.triggered.connect(self.createControlledRoom)
--        window.identifyascontroller = window.advancedMenu.addAction(QtGui.QPixmap(resourcespath + 'key_go.png'),
-+        window.identifyascontroller = window.advancedMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'key_go.png')),
-                                                                     getMessage("identifyascontroller-menu-label"))
-         window.identifyascontroller.triggered.connect(self.identifyAsController)
-
-@@ -1725,7 +1725,7 @@ def populateMenubar(self, window):
-
-         window.windowMenu = QtWidgets.QMenu(getMessage("window-menu-label"), self)
-
--        window.editroomsAction = window.windowMenu.addAction(QtGui.QPixmap(resourcespath + 'door_open_edit.png'), getMessage("roomlist-msgbox-label"))
-+        window.editroomsAction = window.windowMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'door_open_edit.png')), getMessage("roomlist-msgbox-label"))
-         window.editroomsAction.triggered.connect(self.openEditRoomsDialog)
-         window.menuBar.addMenu(window.windowMenu)
-
-@@ -1743,18 +1743,18 @@ def populateMenubar(self, window):
-         window.helpMenu = QtWidgets.QMenu(getMessage("help-menu-label"), self)
-
-         window.userguideAction = window.helpMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'help.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'help.png')),
-             getMessage("userguide-menu-label"))
-         window.userguideAction.triggered.connect(self.openUserGuide)
-         window.updateAction = window.helpMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'application_get.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'application_get.png')),
-             getMessage("update-menu-label"))
-         window.updateAction.triggered.connect(self.userCheckForUpdates)
-
-         if not isMacOS():
-             window.helpMenu.addSeparator()
-             window.about = window.helpMenu.addAction(
--                QtGui.QPixmap(resourcespath + 'syncplay.png'),
-+                QtGui.QIcon(QtGui.QPixmap(resourcespath + 'syncplay.png')),
-                 getMessage("about-menu-label"))
-         else:
-             window.about = window.helpMenu.addAction("&About")
-@@ -1835,16 +1835,16 @@ def changeAutoplayState(self, source=None):
-     def updateReadyIcon(self):
-         ready = self.readyPushButton.isChecked()
-         if ready:
--            self.readyPushButton.setIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png'))
-+            self.readyPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png')))
-         else:
--            self.readyPushButton.setIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png'))
-+            self.readyPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png')))
-
-     def updateAutoPlayIcon(self):
-         ready = self.autoplayPushButton.isChecked()
-         if ready:
--            self.autoplayPushButton.setIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png'))
-+            self.autoplayPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png')))
-         else:
--            self.autoplayPushButton.setIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png'))
-+            self.autoplayPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png')))
-
-     def automaticUpdateCheck(self):
-         currentDateTimeValue = QDateTime.currentDateTime()
-@@ -2060,7 +2060,7 @@ def __init__(self, passedBar=None):
-         self.populateMenubar(self)
-         self.addMainFrame(self)
-         self.loadSettings()
--        self.setWindowIcon(QtGui.QPixmap(resourcespath + "syncplay.png"))
-+        self.setWindowIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + "syncplay.png")))
-         self.setWindowFlags(self.windowFlags() & Qt.WindowCloseButtonHint & Qt.WindowMinimizeButtonHint & ~Qt.WindowContextHelpButtonHint)
-         self.show()
-         self.setAcceptDrops(True)
-

diff --git a/media-video/syncplay/files/syncplay-make-qpixmap-to-qicon-conversion-explicit2.patch b/media-video/syncplay/files/syncplay-make-qpixmap-to-qicon-conversion-explicit2.patch
new file mode 100644
index 00000000..85b61ea4
--- /dev/null
+++ b/media-video/syncplay/files/syncplay-make-qpixmap-to-qicon-conversion-explicit2.patch
@@ -0,0 +1,176 @@
+From b0e018d0cda148ef8dba07857fcbe8d751800992 Mon Sep 17 00:00:00 2001
+From: Andrew Ammerlaan <andrewammerlaan@riseup.net>
+Date: Thu, 8 Oct 2020 08:47:44 +0200
+Subject: [PATCH] make conversion from QPixmap to QIcon explicit
+
+---
+ syncplay/ui/gui.py | 106 ++++++++++++++++++++++-----------------------
+ 1 file changed, 53 insertions(+), 53 deletions(-)
+
+diff --git a/syncplay/ui/gui.py b/syncplay/ui/gui.py
+index c59c5697..2a4bd1a5 100755
+--- a/syncplay/ui/gui.py
++++ b/syncplay/ui/gui.py
+@@ -1620,24 +1620,24 @@ def addPlaybackLayout(self, window):
+         window.playbackFrame.setLayout(window.playbackLayout)
+         window.seekInput = QtWidgets.QLineEdit()
+         window.seekInput.returnPressed.connect(self.seekFromButton)
+-        window.seekButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'clock_go.png'), "")
++        window.seekButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'clock_go.png')), "")
+         window.seekButton.setToolTip(getMessage("seektime-menu-label"))
+         window.seekButton.pressed.connect(self.seekFromButton)
+         window.seekInput.setText("0:00")
+         window.seekInput.setFixedWidth(60)
+         window.playbackLayout.addWidget(window.seekInput)
+         window.playbackLayout.addWidget(window.seekButton)
+-        window.unseekButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'arrow_undo.png'), "")
++        window.unseekButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'arrow_undo.png')), "")
+         window.unseekButton.setToolTip(getMessage("undoseek-menu-label"))
+         window.unseekButton.pressed.connect(self.undoSeek)
+
+         window.miscLayout = QtWidgets.QHBoxLayout()
+         window.playbackLayout.addWidget(window.unseekButton)
+-        window.playButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'control_play_blue.png'), "")
++        window.playButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_play_blue.png')), "")
+         window.playButton.setToolTip(getMessage("play-menu-label"))
+         window.playButton.pressed.connect(self.play)
+         window.playbackLayout.addWidget(window.playButton)
+-        window.pauseButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'control_pause_blue.png'), "")
++        window.pauseButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_pause_blue.png')), "")
+         window.pauseButton.setToolTip(getMessage("pause-menu-label"))
+         window.pauseButton.pressed.connect(self.pause)
+         window.playbackLayout.addWidget(window.pauseButton)
+@@ -1657,13 +1657,13 @@ def populateMenubar(self, window):
+         # File menu
+
+         window.fileMenu = QtWidgets.QMenu(getMessage("file-menu-label"), self)
+-        window.openAction = window.fileMenu.addAction(QtGui.QPixmap(resourcespath + 'folder_explore.png'),
++        window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'folder_explore.png')),
+                                                       getMessage("openmedia-menu-label"))
+         window.openAction.triggered.connect(self.browseMediapath)
+-        window.openAction = window.fileMenu.addAction(QtGui.QPixmap(resourcespath + 'world_explore.png'),
++        window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'world_explore.png')),
+                                                       getMessage("openstreamurl-menu-label"))
+         window.openAction.triggered.connect(self.promptForStreamURL)
+-        window.openAction = window.fileMenu.addAction(QtGui.QPixmap(resourcespath + 'film_folder_edit.png'),
++        window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'film_folder_edit.png')),
+                                                       getMessage("setmediadirectories-menu-label"))
+         window.openAction.triggered.connect(self.openSetMediaDirectoriesDialog)
+
+@@ -1671,7 +1671,7 @@ def populateMenubar(self, window):
+         if isMacOS():
+             window.exitAction.setMenuRole(QtWidgets.QAction.QuitRole)
+         else:
+-            window.exitAction.setIcon(QtGui.QPixmap(resourcespath + 'cross.png'))
++            window.exitAction.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'cross.png')))
+         window.exitAction.triggered.connect(self.exitSyncplay)
+
+         if(window.editMenu is not None):
+@@ -1683,19 +1683,19 @@ def populateMenubar(self, window):
+
+         window.playbackMenu = QtWidgets.QMenu(getMessage("playback-menu-label"), self)
+         window.playAction = window.playbackMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'control_play_blue.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_play_blue.png')),
+             getMessage("play-menu-label"))
+         window.playAction.triggered.connect(self.play)
+         window.pauseAction = window.playbackMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'control_pause_blue.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_pause_blue.png')),
+             getMessage("pause-menu-label"))
+         window.pauseAction.triggered.connect(self.pause)
+         window.seekAction = window.playbackMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'clock_go.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'clock_go.png')),
+             getMessage("seektime-menu-label"))
+         window.seekAction.triggered.connect(self.seekPositionDialog)
+         window.unseekAction = window.playbackMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'arrow_undo.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'arrow_undo.png')),
+             getMessage("undoseek-menu-label"))
+         window.unseekAction.triggered.connect(self.undoSeek)
+
+@@ -1705,17 +1705,17 @@ def populateMenubar(self, window):
+
+         window.advancedMenu = QtWidgets.QMenu(getMessage("advanced-menu-label"), self)
+         window.setoffsetAction = window.advancedMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'timeline_marker.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'timeline_marker.png')),
+             getMessage("setoffset-menu-label"))
+         window.setoffsetAction.triggered.connect(self.setOffset)
+         window.setTrustedDomainsAction = window.advancedMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'shield_edit.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'shield_edit.png')),
+             getMessage("settrusteddomains-menu-label"))
+         window.setTrustedDomainsAction.triggered.connect(self.openSetTrustedDomainsDialog)
+         window.createcontrolledroomAction = window.advancedMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'page_white_key.png'), getMessage("createcontrolledroom-menu-label"))
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'page_white_key.png')), getMessage("createcontrolledroom-menu-label"))
+         window.createcontrolledroomAction.triggered.connect(self.createControlledRoom)
+-        window.identifyascontroller = window.advancedMenu.addAction(QtGui.QPixmap(resourcespath + 'key_go.png'),
++        window.identifyascontroller = window.advancedMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'key_go.png')),
+                                                                     getMessage("identifyascontroller-menu-label"))
+         window.identifyascontroller.triggered.connect(self.identifyAsController)
+
+@@ -1725,7 +1725,7 @@ def populateMenubar(self, window):
+
+         window.windowMenu = QtWidgets.QMenu(getMessage("window-menu-label"), self)
+
+-        window.editroomsAction = window.windowMenu.addAction(QtGui.QPixmap(resourcespath + 'door_open_edit.png'), getMessage("roomlist-msgbox-label"))
++        window.editroomsAction = window.windowMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'door_open_edit.png')), getMessage("roomlist-msgbox-label"))
+         window.editroomsAction.triggered.connect(self.openEditRoomsDialog)
+         window.menuBar.addMenu(window.windowMenu)
+
+@@ -1743,18 +1743,18 @@ def populateMenubar(self, window):
+         window.helpMenu = QtWidgets.QMenu(getMessage("help-menu-label"), self)
+
+         window.userguideAction = window.helpMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'help.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'help.png')),
+             getMessage("userguide-menu-label"))
+         window.userguideAction.triggered.connect(self.openUserGuide)
+         window.updateAction = window.helpMenu.addAction(
+-            QtGui.QPixmap(resourcespath + 'application_get.png'),
++            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'application_get.png')),
+             getMessage("update-menu-label"))
+         window.updateAction.triggered.connect(self.userCheckForUpdates)
+
+         if not isMacOS():
+             window.helpMenu.addSeparator()
+             window.about = window.helpMenu.addAction(
+-                QtGui.QPixmap(resourcespath + 'syncplay.png'),
++                QtGui.QIcon(QtGui.QPixmap(resourcespath + 'syncplay.png')),
+                 getMessage("about-menu-label"))
+         else:
+             window.about = window.helpMenu.addAction("&About")
+@@ -1835,16 +1835,16 @@ def changeAutoplayState(self, source=None):
+     def updateReadyIcon(self):
+         ready = self.readyPushButton.isChecked()
+         if ready:
+-            self.readyPushButton.setIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png'))
++            self.readyPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png')))
+         else:
+-            self.readyPushButton.setIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png'))
++            self.readyPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png')))
+
+     def updateAutoPlayIcon(self):
+         ready = self.autoplayPushButton.isChecked()
+         if ready:
+-            self.autoplayPushButton.setIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png'))
++            self.autoplayPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png')))
+         else:
+-            self.autoplayPushButton.setIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png'))
++            self.autoplayPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png')))
+
+     def automaticUpdateCheck(self):
+         currentDateTimeValue = QDateTime.currentDateTime()
+@@ -2060,7 +2060,7 @@ def __init__(self, passedBar=None):
+         self.populateMenubar(self)
+         self.addMainFrame(self)
+         self.loadSettings()
+-        self.setWindowIcon(QtGui.QPixmap(resourcespath + "syncplay.png"))
++        self.setWindowIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + "syncplay.png")))
+         self.setWindowFlags(self.windowFlags() & Qt.WindowCloseButtonHint & Qt.WindowMinimizeButtonHint & ~Qt.WindowContextHelpButtonHint)
+         self.show()
+         self.setAcceptDrops(True)
+

diff --git a/media-video/syncplay/syncplay-1.6.6_beta2.ebuild b/media-video/syncplay/syncplay-1.6.6.ebuild
similarity index 91%
rename from media-video/syncplay/syncplay-1.6.6_beta2.ebuild
rename to media-video/syncplay/syncplay-1.6.6.ebuild
index 30712b36..6c85c3d3 100644
--- a/media-video/syncplay/syncplay-1.6.6_beta2.ebuild
+++ b/media-video/syncplay/syncplay-1.6.6.ebuild
@@ -8,11 +8,9 @@ DISTUTILS_USE_SETUPTOOLS=rdepend
 
 inherit distutils-r1 optfeature xdg
 
-MYPV="${PV/_beta/-Beta}"
-
 DESCRIPTION="Client/server to synchronize media playback"
 HOMEPAGE="https://github.com/Syncplay/syncplay https://syncplay.pl"
-SRC_URI="https://github.com/${PN^}/${PN}/archive/${MYPV}.tar.gz -> ${P}.tar.gz"
+SRC_URI="https://github.com/${PN^}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
 
 LICENSE="Apache-2.0"
 SLOT="0"
@@ -36,12 +34,11 @@ RDEPEND="
 PATCHES=(
 	"${FILESDIR}/${PN}-change-alignment-operator.patch"
 	"${FILESDIR}/${PN}-make-qpixmap-to-qicon-conversion-explicit.patch"
+	"${FILESDIR}/${PN}-make-qpixmap-to-qicon-conversion-explicit2.patch"
 	"${FILESDIR}/${PN}-use-lambda-to-connect-behind-wrapper.patch"
 	"${FILESDIR}/${PN}-allow-PyQt5.patch"
 )
 
-S="${WORKDIR}/${PN}-${MYPV}"
-
 python_install() {
 	local MY_MAKEOPTS=( DESTDIR="${D}" PREFIX=/usr )
 	if use client; then


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/proj/guru:dev commit in: media-video/syncplay/, media-video/syncplay/files/
  2024-05-15 17:00 [gentoo-commits] repo/proj/guru:master commit in: media-video/syncplay/files/, media-video/syncplay/ Julien Roy
@ 2024-05-15 16:55 ` Julien Roy
  0 siblings, 0 replies; 6+ messages in thread
From: Julien Roy @ 2024-05-15 16:55 UTC (permalink / raw
  To: gentoo-commits

commit:     d8ecc27f7dfd42ebc03de8c6563571da2e1efbe8
Author:     Julien Roy <julien <AT> jroy <DOT> ca>
AuthorDate: Wed May 15 16:39:12 2024 +0000
Commit:     Julien Roy <julien <AT> jroy <DOT> ca>
CommitDate: Wed May 15 16:55:16 2024 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=d8ecc27f

media-video/syncplay: drop 1.6.9, 1.7.1

Closes: https://bugs.gentoo.org/931467
Signed-off-by: Julien Roy <julien <AT> jroy.ca>

 media-video/syncplay/Manifest                      |   2 -
 .../syncplay/files/syncplay-allow-PyQt5.patch      |  88 -----------
 .../files/syncplay-change-alignment-operator.patch |  32 ----
 ...make-qpixmap-to-qicon-conversion-explicit.patch | 150 ------------------
 ...ake-qpixmap-to-qicon-conversion-explicit2.patch | 167 ---------------------
 ...play-use-lambda-to-connect-behind-wrapper.patch | 158 -------------------
 media-video/syncplay/syncplay-1.6.9.ebuild         |  75 ---------
 media-video/syncplay/syncplay-1.7.1.ebuild         |  81 ----------
 8 files changed, 753 deletions(-)

diff --git a/media-video/syncplay/Manifest b/media-video/syncplay/Manifest
index 25f73e9386..6f3ec2dbc2 100644
--- a/media-video/syncplay/Manifest
+++ b/media-video/syncplay/Manifest
@@ -1,3 +1 @@
-DIST syncplay-1.6.9.tar.gz 1900259 BLAKE2B d535f5057a790ac860e6d0ac376069565fa02076dbc0c1d9eb7f54f87f96bbf7aef85136c8c5b67f1a5cf64a5204a617db26e6931368ba490a3ea9128282e473 SHA512 317e7cc966182259e552898ae05e620caf0f8e0ae0b6917235c391bcae1ef9679f1e97cfb46f6d8c6edcd9a5c573e5ab4ff5e27b5e203980a99ade065d9a6b65
-DIST syncplay-1.7.1.tar.gz 1983931 BLAKE2B 510a3da1f0d52d8033b744b66b87916411051d8f1fdbebd2f098e11e1cf58b2ab81bb491bb3b4aa68d630b53d4b85ad7440bc0b4715a7d9aa23a1c6728bf674c SHA512 aca2eb0503ab853175414663301813f1bc7ebfd38836d3f67d072c4721dc84aa9c4559ef00377641ec25e842ee479af31771ef004fc57f466c0c92df31940276
 DIST syncplay-1.7.3.tar.gz 1986541 BLAKE2B 204874b02fdb4d889b1718173fb34bd715ce6f66d051cfa5be102f93d4b8ae209af64b0f8096c146e6f439f9f9bf0c92bb6849324c0d067c90784c4a60b2f089 SHA512 144c9b4de9272943f7e3624f602e5d36a18871f78588b60f22d699465ecf3b1c63e733441b9fdd26d6e05db032e7a090e544ce7861532377a34bbc9183e3ce10

diff --git a/media-video/syncplay/files/syncplay-allow-PyQt5.patch b/media-video/syncplay/files/syncplay-allow-PyQt5.patch
deleted file mode 100644
index b922bdbb84..0000000000
--- a/media-video/syncplay/files/syncplay-allow-PyQt5.patch
+++ /dev/null
@@ -1,88 +0,0 @@
-diff --git a/syncplay/ui/ConfigurationGetter.py b/syncplay/ui/ConfigurationGetter.py
-index dd1d8ec..6d83c65 100755
---- a/syncplay/ui/ConfigurationGetter.py
-+++ b/syncplay/ui/ConfigurationGetter.py
-@@ -513,10 +513,10 @@ class ConfigurationGetter(object):
-         self._overrideConfigWithArgs(args)
-         if not self._config['noGui']:
-             try:
--                from syncplay.vendor.Qt import QtWidgets, IsPySide, IsPySide2
-+                from syncplay.vendor.Qt import QtWidgets, IsPySide, IsPySide2, IsPyQt5
-                 from syncplay.vendor.Qt.QtCore import QCoreApplication
-                 from syncplay.vendor import qt5reactor
--                if not (IsPySide2 or IsPySide):
-+                if not (IsPySide2 or IsPySide or IsPyQt5):
-                     raise ImportError
-                 if QCoreApplication.instance() is None:
-                     self.app = QtWidgets.QApplication(sys.argv)
-diff --git a/syncplay/ui/GuiConfiguration.py b/syncplay/ui/GuiConfiguration.py
-index 9ce6a42..1ad5bd7 100755
---- a/syncplay/ui/GuiConfiguration.py
-+++ b/syncplay/ui/GuiConfiguration.py
-@@ -11,7 +11,7 @@ from syncplay.players.playerFactory import PlayerFactory
- from syncplay.utils import isBSD, isLinux, isMacOS, isWindows
- from syncplay.utils import resourcespath, posixresourcespath
-
--from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__, IsPySide, IsPySide2
-+from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__, IsPySide, IsPySide2, IsPyQt5
- from syncplay.vendor.Qt.QtCore import Qt, QSettings, QCoreApplication, QSize, QPoint, QUrl, QLine, QEventLoop, Signal
- from syncplay.vendor.Qt.QtWidgets import QApplication, QLineEdit, QLabel, QCheckBox, QButtonGroup, QRadioButton, QDoubleSpinBox, QPlainTextEdit
- from syncplay.vendor.Qt.QtGui import QCursor, QIcon, QImage, QDesktopServices
-@@ -445,7 +445,7 @@ class ConfigDialog(QtWidgets.QDialog):
-                 defaultdirectory = QDesktopServices.storageLocation(QDesktopServices.HomeLocation)
-             else:
-                 defaultdirectory = ""
--        elif IsPySide2:
-+        elif IsPySide2 or IsPyQt5:
-             if self.config["mediaSearchDirectories"] and os.path.isdir(self.config["mediaSearchDirectories"][0]):
-                 defaultdirectory = self.config["mediaSearchDirectories"][0]
-             elif os.path.isdir(self.mediadirectory):
-diff --git a/syncplay/ui/gui.py b/syncplay/ui/gui.py
-index b7a9a9f..d2ad6e5 100755
---- a/syncplay/ui/gui.py
-+++ b/syncplay/ui/gui.py
-@@ -19,7 +19,7 @@ from syncplay.utils import resourcespath
- from syncplay.utils import isLinux, isWindows, isMacOS
- from syncplay.utils import formatTime, sameFilename, sameFilesize, sameFileduration, RoomPasswordProvider, formatSize, isURL
- from syncplay.vendor import Qt
--from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__, __binding_version__, __qt_version__, IsPySide, IsPySide2
-+from syncplay.vendor.Qt import QtCore, QtWidgets, QtGui, __binding__, __binding_version__, __qt_version__, IsPySide, IsPySide2, IsPyQt5
- from syncplay.vendor.Qt.QtCore import Qt, QSettings, QSize, QPoint, QUrl, QLine, QDateTime
- applyDPIScaling = True
- if isLinux():
-@@ -32,6 +32,8 @@ if hasattr(QtCore.Qt, 'AA_UseHighDpiPixmaps'):
-     QtWidgets.QApplication.setAttribute(QtCore.Qt.AA_UseHighDpiPixmaps, applyDPIScaling)
- if IsPySide2:
-     from PySide2.QtCore import QStandardPaths
-+if IsPyQt5:
-+    from PyQt5.QtCore import QStandardPaths
- if isMacOS() and IsPySide:
-     from Foundation import NSURL
-     from Cocoa import NSString, NSUTF8StringEncoding
-@@ -808,7 +810,7 @@ class MainWindow(QtWidgets.QMainWindow):
-                 self.listTreeView.setFirstColumnSpanned(roomtocheck, self.listTreeView.rootIndex(), True)
-                 roomtocheck += 1
-             self.listTreeView.header().setStretchLastSection(False)
--            if IsPySide2:
-+            if IsPySide2 or IsPyQt5:
-                 self.listTreeView.header().setSectionResizeMode(0, QtWidgets.QHeaderView.ResizeToContents)
-                 self.listTreeView.header().setSectionResizeMode(1, QtWidgets.QHeaderView.ResizeToContents)
-                 self.listTreeView.header().setSectionResizeMode(2, QtWidgets.QHeaderView.ResizeToContents)
-@@ -822,7 +824,7 @@ class MainWindow(QtWidgets.QMainWindow):
-             if self.listTreeView.header().width() < (NarrowTabsWidth+self.listTreeView.header().sectionSize(3)):
-                 self.listTreeView.header().resizeSection(3, self.listTreeView.header().width()-NarrowTabsWidth)
-             else:
--                if IsPySide2:
-+                if IsPySide2 or IsPyQt5:
-                     self.listTreeView.header().setSectionResizeMode(3, QtWidgets.QHeaderView.Stretch)
-                 if IsPySide:
-                     self.listTreeView.header().setResizeMode(3, QtWidgets.QHeaderView.Stretch)
-@@ -1003,7 +1005,7 @@ class MainWindow(QtWidgets.QMainWindow):
-                 defaultdirectory = QtGui.QDesktopServices.storageLocation(QtGui.QDesktopServices.HomeLocation)
-             else:
-                 defaultdirectory = ""
--        elif IsPySide2:
-+        elif IsPySide2 or IsPyQt5:
-             if self.config["mediaSearchDirectories"] and os.path.isdir(self.config["mediaSearchDirectories"][0]) and includeUserSpecifiedDirectories:
-                 defaultdirectory = self.config["mediaSearchDirectories"][0]
-             elif includeUserSpecifiedDirectories and os.path.isdir(self.mediadirectory):

diff --git a/media-video/syncplay/files/syncplay-change-alignment-operator.patch b/media-video/syncplay/files/syncplay-change-alignment-operator.patch
deleted file mode 100644
index 80a6392fed..0000000000
--- a/media-video/syncplay/files/syncplay-change-alignment-operator.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-diff --git a/syncplay/ui/GuiConfiguration.py b/syncplay/ui/GuiConfiguration.py
-index 96915814..e0713adf 100755
---- a/syncplay/ui/GuiConfiguration.py
-+++ b/syncplay/ui/GuiConfiguration.py
-@@ -1181,7 +1181,7 @@ def addMessageTab(self):
-
-         self.displaySettingsGroup = QtWidgets.QGroupBox(getMessage("messages-other-title"))
-         self.displaySettingsLayout = QtWidgets.QVBoxLayout()
--        self.displaySettingsLayout.setAlignment(Qt.AlignTop & Qt.AlignLeft)
-+        self.displaySettingsLayout.setAlignment(Qt.AlignTop | Qt.AlignLeft)
-         self.displaySettingsFrame = QtWidgets.QFrame()
-
-         self.showDurationNotificationCheckbox = QCheckBox(getMessage("showdurationnotification-label"))
-@@ -1193,7 +1193,7 @@ def addMessageTab(self):
-         self.languageLayout.setContentsMargins(0, 0, 0, 0)
-         self.languageFrame.setLayout(self.languageLayout)
-         self.languageFrame.setSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum)
--        self.languageLayout.setAlignment(Qt.AlignTop & Qt.AlignLeft)
-+        self.languageLayout.setAlignment(Qt.AlignTop | Qt.AlignLeft)
-         self.languageLabel = QLabel(getMessage("language-label"), self)
-         self.languageCombobox = QtWidgets.QComboBox(self)
-         self.languageCombobox.addItem(getMessage("automatic-language").format(getMessage("LANGUAGE", getInitialLanguage())))
-@@ -1214,7 +1214,7 @@ def addMessageTab(self):
-
-         self.displaySettingsGroup.setLayout(self.displaySettingsLayout)
-         self.displaySettingsGroup.setMaximumHeight(self.displaySettingsGroup.minimumSizeHint().height())
--        self.displaySettingsLayout.setAlignment(Qt.AlignTop & Qt.AlignLeft)
-+        self.displaySettingsLayout.setAlignment(Qt.AlignTop | Qt.AlignLeft)
-         self.messageLayout.addWidget(self.displaySettingsGroup)
-
-         # messageFrame
-

diff --git a/media-video/syncplay/files/syncplay-make-qpixmap-to-qicon-conversion-explicit.patch b/media-video/syncplay/files/syncplay-make-qpixmap-to-qicon-conversion-explicit.patch
deleted file mode 100644
index b922f71ba3..0000000000
--- a/media-video/syncplay/files/syncplay-make-qpixmap-to-qicon-conversion-explicit.patch
+++ /dev/null
@@ -1,150 +0,0 @@
-diff --git a/syncplay/ui/gui.py b/syncplay/ui/gui.py
-index c59c5697..2a4bd1a5 100755
---- a/syncplay/ui/gui.py
-+++ b/syncplay/ui/gui.py
-@@ -139,7 +139,7 @@ def __init__(self, parent=None):
-             self.setWindowTitle(getMessage("about-dialog-title"))
-             if isWindows():
-                 self.setWindowFlags(self.windowFlags() & ~Qt.WindowContextHelpButtonHint)
--        self.setWindowIcon(QtGui.QPixmap(resourcespath + 'syncplay.png'))
-+        self.setWindowIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'syncplay.png')))
-         nameLabel = QtWidgets.QLabel("<center><strong>Syncplay</strong></center>")
-         nameLabel.setFont(QtGui.QFont("Helvetica", 18))
-         linkLabel = QtWidgets.QLabel()
-@@ -202,7 +202,7 @@ def __init__(self, tlsData, parent=None):
-             self.setWindowTitle(getMessage("tls-information-title"))
-             if isWindows():
-                 self.setWindowFlags(self.windowFlags() & ~Qt.WindowContextHelpButtonHint)
--        self.setWindowIcon(QtGui.QPixmap(resourcespath + 'syncplay.png'))
-+        self.setWindowIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'syncplay.png')))
-         statusLabel = QtWidgets.QLabel(getMessage("tls-dialog-status-label").format(tlsData["subject"]))
-         descLabel = QtWidgets.QLabel(getMessage("tls-dialog-desc-label").format(tlsData["subject"]))
-         connDataLabel = QtWidgets.QLabel(getMessage("tls-dialog-connection-label").format(tlsData["protocolVersion"], tlsData["cipher"]))
-@@ -614,11 +614,11 @@ def showUserList(self, currentUser, rooms):
-
-             if isControlledRoom:
-                 if room == currentUser.room and currentUser.isController():
--                    roomitem.setIcon(QtGui.QPixmap(resourcespath + 'lock_open.png'))
-+                    roomitem.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'lock_open.png')))
-                 else:
--                    roomitem.setIcon(QtGui.QPixmap(resourcespath + 'lock.png'))
-+                    roomitem.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'lock.png')))
-             else:
--                roomitem.setIcon(QtGui.QPixmap(resourcespath + 'chevrons_right.png'))
-+                roomitem.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'chevrons_right.png')))
-
-             for user in rooms[room]:
-                 useritem = QtGui.QStandardItem(user.username)
-@@ -719,31 +719,31 @@ def openPlaylistMenu(self, position):
-             pathFound = self._syncplayClient.fileSwitch.findFilepath(firstFile) if not isURL(firstFile) else None
-             if self._syncplayClient.userlist.currentUser.file is None or firstFile != self._syncplayClient.userlist.currentUser.file["name"]:
-                 if isURL(firstFile):
--                    menu.addAction(QtGui.QPixmap(resourcespath + "world_go.png"), getMessage("openstreamurl-menu-label"), lambda: self.openFile(firstFile, resetPosition=True, fromUser=True))
-+                    menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "world_go.png")), getMessage("openstreamurl-menu-label"), lambda: self.openFile(firstFile, resetPosition=True, fromUser=True))
-                 elif pathFound:
--                        menu.addAction(QtGui.QPixmap(resourcespath + "film_go.png"), getMessage("openmedia-menu-label"), lambda: self.openFile(pathFound, resetPosition=True, fromUser=True))
-+                        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_go.png")), getMessage("openmedia-menu-label"), lambda: self.openFile(pathFound, resetPosition=True, fromUser=True))
-             if pathFound:
--                menu.addAction(QtGui.QPixmap(resourcespath + "folder_film.png"),
-+                menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "folder_film.png")),
-                                getMessage('open-containing-folder'),
-                                lambda: utils.open_system_file_browser(pathFound))
-             if self._syncplayClient.isUntrustedTrustableURI(firstFile):
-                 domain = utils.getDomainFromURL(firstFile)
--                menu.addAction(QtGui.QPixmap(resourcespath + "shield_add.png"), getMessage("addtrusteddomain-menu-label").format(domain), lambda: self.addTrustedDomain(domain))
--            menu.addAction(QtGui.QPixmap(resourcespath + "delete.png"), getMessage("removefromplaylist-menu-label"), lambda: self.deleteSelectedPlaylistItems())
-+                menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "shield_add.png")), getMessage("addtrusteddomain-menu-label").format(domain), lambda: self.addTrustedDomain(domain))
-+            menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "delete.png")), getMessage("removefromplaylist-menu-label"), lambda: self.deleteSelectedPlaylistItems())
-             menu.addSeparator()
--        menu.addAction(QtGui.QPixmap(resourcespath + "arrow_switch.png"), getMessage("shuffleremainingplaylist-menu-label"), lambda: self.shuffleRemainingPlaylist())
--        menu.addAction(QtGui.QPixmap(resourcespath + "arrow_switch.png"), getMessage("shuffleentireplaylist-menu-label"), lambda: self.shuffleEntirePlaylist())
--        menu.addAction(QtGui.QPixmap(resourcespath + "arrow_undo.png"), getMessage("undoplaylist-menu-label"), lambda: self.undoPlaylistChange())
--        menu.addAction(QtGui.QPixmap(resourcespath + "film_edit.png"), getMessage("editplaylist-menu-label"), lambda: self.openEditPlaylistDialog())
--        menu.addAction(QtGui.QPixmap(resourcespath + "film_add.png"), getMessage("addfilestoplaylist-menu-label"), lambda: self.OpenAddFilesToPlaylistDialog())
--        menu.addAction(QtGui.QPixmap(resourcespath + "world_add.png"), getMessage("addurlstoplaylist-menu-label"), lambda: self.OpenAddURIsToPlaylistDialog())
-+        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "arrow_switch.png")), getMessage("shuffleremainingplaylist-menu-label"), lambda: self.shuffleRemainingPlaylist())
-+        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "arrow_switch.png")), getMessage("shuffleentireplaylist-menu-label"), lambda: self.shuffleEntirePlaylist())
-+        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "arrow_undo.png")), getMessage("undoplaylist-menu-label"), lambda: self.undoPlaylistChange())
-+        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_edit.png")), getMessage("editplaylist-menu-label"), lambda: self.openEditPlaylistDialog())
-+        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_add.png")), getMessage("addfilestoplaylist-menu-label"), lambda: self.OpenAddFilesToPlaylistDialog())
-+        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "world_add.png")), getMessage("addurlstoplaylist-menu-label"), lambda: self.OpenAddURIsToPlaylistDialog())
-         menu.addSeparator()
-         menu.addAction(getMessage("loadplaylistfromfile-menu-label"),lambda: self.OpenLoadPlaylistFromFileDialog()) # TODO: Add icon
-         menu.addAction("Load and shuffle playlist from file",lambda: self.OpenLoadPlaylistFromFileDialog(shuffle=True))  # TODO: Add icon and messages_en
-         menu.addAction(getMessage("saveplaylisttofile-menu-label"),lambda: self.OpenSavePlaylistToFileDialog()) # TODO: Add icon
-         menu.addSeparator()
--        menu.addAction(QtGui.QPixmap(resourcespath + "film_folder_edit.png"), getMessage("setmediadirectories-menu-label"), lambda: self.openSetMediaDirectoriesDialog())
--        menu.addAction(QtGui.QPixmap(resourcespath + "shield_edit.png"), getMessage("settrusteddomains-menu-label"), lambda: self.openSetTrustedDomainsDialog())
-+        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_folder_edit.png")), getMessage("setmediadirectories-menu-label"), lambda: self.openSetMediaDirectoriesDialog())
-+        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "shield_edit.png")), getMessage("settrusteddomains-menu-label"), lambda: self.openSetTrustedDomainsDialog())
-         menu.exec_(self.playlist.viewport().mapToGlobal(position))
-
-     def openRoomMenu(self, position):
-@@ -778,25 +778,25 @@ def openRoomMenu(self, position):
-         elif username and filename and filename != getMessage("nofile-note"):
-             if self.config['sharedPlaylistEnabled'] and not self.isItemInPlaylist(filename):
-                 if isURL(filename):
--                    menu.addAction(QtGui.QPixmap(resourcespath + "world_add.png"), addUsersStreamToPlaylistLabelText, lambda: self.addStreamToPlaylist(filename))
-+                    menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "world_add.png")), addUsersStreamToPlaylistLabelText, lambda: self.addStreamToPlaylist(filename))
-                 else:
--                    menu.addAction(QtGui.QPixmap(resourcespath + "film_add.png"), addUsersFileToPlaylistLabelText, lambda: self.addStreamToPlaylist(filename))
-+                    menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_add.png")), addUsersFileToPlaylistLabelText, lambda: self.addStreamToPlaylist(filename))
-
-             if self._syncplayClient.userlist.currentUser.file is None or filename != self._syncplayClient.userlist.currentUser.file["name"]:
-                 if isURL(filename):
--                    menu.addAction(QtGui.QPixmap(resourcespath + "world_go.png"), getMessage("openusersstream-menu-label").format(shortUsername), lambda: self.openFile(filename, resetPosition=False, fromUser=True))
-+                    menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "world_go.png")), getMessage("openusersstream-menu-label").format(shortUsername), lambda: self.openFile(filename, resetPosition=False, fromUser=True))
-                 else:
-                     pathFound = self._syncplayClient.fileSwitch.findFilepath(filename)
-                     if pathFound:
--                        menu.addAction(QtGui.QPixmap(resourcespath + "film_go.png"), getMessage("openusersfile-menu-label").format(shortUsername), lambda: self.openFile(pathFound, resetPosition=False, fromUser=True))
-+                        menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "film_go.png")), getMessage("openusersfile-menu-label").format(shortUsername), lambda: self.openFile(pathFound, resetPosition=False, fromUser=True))
-             if self._syncplayClient.isUntrustedTrustableURI(filename):
-                 domain = utils.getDomainFromURL(filename)
--                menu.addAction(QtGui.QPixmap(resourcespath + "shield_add.png"), getMessage("addtrusteddomain-menu-label").format(domain), lambda: self.addTrustedDomain(domain))
-+                menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "shield_add.png")), getMessage("addtrusteddomain-menu-label").format(domain), lambda: self.addTrustedDomain(domain))
-
-             if not isURL(filename) and filename != getMessage("nofile-note"):
-                 path = self._syncplayClient.fileSwitch.findFilepath(filename)
-                 if path:
--                    menu.addAction(QtGui.QPixmap(resourcespath + "folder_film.png"), getMessage('open-containing-folder'), lambda: utils.open_system_file_browser(path))
-+                    menu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + "folder_film.png")), getMessage('open-containing-folder'), lambda: utils.open_system_file_browser(path))
-         else:
-             return
-         menu.exec_(self.listTreeView.viewport().mapToGlobal(position))
-@@ -1410,7 +1410,7 @@ def addTopLayout(self, window):
-         window.chatInput.setMaxLength(constants.MAX_CHAT_MESSAGE_LENGTH)
-         window.chatInput.returnPressed.connect(self.sendChatMessage)
-         window.chatButton = QtWidgets.QPushButton(
--            QtGui.QPixmap(resourcespath + 'email_go.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'email_go.png')),
-             getMessage("sendmessage-label"))
-         window.chatButton.pressed.connect(self.sendChatMessage)
-         window.chatLayout = QtWidgets.QHBoxLayout()
-@@ -1445,7 +1445,7 @@ def addTopLayout(self, window):
-         window.listlabel = QtWidgets.QLabel(getMessage("userlist-heading-label"))
-         if isMacOS:
-             window.listlabel.setMinimumHeight(21)
--            window.sslButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'lock_green.png').scaled(14, 14),"")
-+            window.sslButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'lock_green.png').scaled(14, 14)),"")
-             window.sslButton.setVisible(False)
-             window.sslButton.setFixedHeight(21)
-             window.sslButton.setFixedWidth(21)
-@@ -1453,7 +1453,7 @@ def addTopLayout(self, window):
-             window.sslButton.setStyleSheet("QPushButton:!hover{border: 1px solid gray;} QPushButton:hover{border:2px solid black;}")
-         else:
-             window.listlabel.setMinimumHeight(27)
--            window.sslButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'lock_green.png'),"")
-+            window.sslButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'lock_green.png')),"")
-             window.sslButton.setVisible(False)
-             window.sslButton.setFixedHeight(27)
-             window.sslButton.setFixedWidth(27)
-@@ -1485,7 +1485,7 @@ def addTopLayout(self, window):
-         window.roomsCombobox.setEditable(True)
-         #window.roomsCombobox.setMaxLength(constants.MAX_ROOM_NAME_LENGTH)
-         window.roomButton = QtWidgets.QPushButton(
--            QtGui.QPixmap(resourcespath + 'door_in.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'door_in.png')),
-             getMessage("joinroom-label"))
-         window.roomButton.pressed.connect(self.joinRoom)
-         window.roomButton.setFixedWidth(window.roomButton.sizeHint().width()+3)

diff --git a/media-video/syncplay/files/syncplay-make-qpixmap-to-qicon-conversion-explicit2.patch b/media-video/syncplay/files/syncplay-make-qpixmap-to-qicon-conversion-explicit2.patch
deleted file mode 100644
index 70843d7752..0000000000
--- a/media-video/syncplay/files/syncplay-make-qpixmap-to-qicon-conversion-explicit2.patch
+++ /dev/null
@@ -1,167 +0,0 @@
-diff --git a/syncplay/ui/gui.py b/syncplay/ui/gui.py
-index c59c5697..2a4bd1a5 100755
---- a/syncplay/ui/gui.py
-+++ b/syncplay/ui/gui.py
-@@ -1620,24 +1620,24 @@ def addPlaybackLayout(self, window):
-         window.playbackFrame.setLayout(window.playbackLayout)
-         window.seekInput = QtWidgets.QLineEdit()
-         window.seekInput.returnPressed.connect(self.seekFromButton)
--        window.seekButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'clock_go.png'), "")
-+        window.seekButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'clock_go.png')), "")
-         window.seekButton.setToolTip(getMessage("seektime-menu-label"))
-         window.seekButton.pressed.connect(self.seekFromButton)
-         window.seekInput.setText("0:00")
-         window.seekInput.setFixedWidth(60)
-         window.playbackLayout.addWidget(window.seekInput)
-         window.playbackLayout.addWidget(window.seekButton)
--        window.unseekButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'arrow_undo.png'), "")
-+        window.unseekButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'arrow_undo.png')), "")
-         window.unseekButton.setToolTip(getMessage("undoseek-menu-label"))
-         window.unseekButton.pressed.connect(self.undoSeek)
-
-         window.miscLayout = QtWidgets.QHBoxLayout()
-         window.playbackLayout.addWidget(window.unseekButton)
--        window.playButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'control_play_blue.png'), "")
-+        window.playButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_play_blue.png')), "")
-         window.playButton.setToolTip(getMessage("play-menu-label"))
-         window.playButton.pressed.connect(self.play)
-         window.playbackLayout.addWidget(window.playButton)
--        window.pauseButton = QtWidgets.QPushButton(QtGui.QPixmap(resourcespath + 'control_pause_blue.png'), "")
-+        window.pauseButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_pause_blue.png')), "")
-         window.pauseButton.setToolTip(getMessage("pause-menu-label"))
-         window.pauseButton.pressed.connect(self.pause)
-         window.playbackLayout.addWidget(window.pauseButton)
-@@ -1657,13 +1657,13 @@ def populateMenubar(self, window):
-         # File menu
-
-         window.fileMenu = QtWidgets.QMenu(getMessage("file-menu-label"), self)
--        window.openAction = window.fileMenu.addAction(QtGui.QPixmap(resourcespath + 'folder_explore.png'),
-+        window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'folder_explore.png')),
-                                                       getMessage("openmedia-menu-label"))
-         window.openAction.triggered.connect(self.browseMediapath)
--        window.openAction = window.fileMenu.addAction(QtGui.QPixmap(resourcespath + 'world_explore.png'),
-+        window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'world_explore.png')),
-                                                       getMessage("openstreamurl-menu-label"))
-         window.openAction.triggered.connect(self.promptForStreamURL)
--        window.openAction = window.fileMenu.addAction(QtGui.QPixmap(resourcespath + 'film_folder_edit.png'),
-+        window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'film_folder_edit.png')),
-                                                       getMessage("setmediadirectories-menu-label"))
-         window.openAction.triggered.connect(self.openSetMediaDirectoriesDialog)
-
-@@ -1671,7 +1671,7 @@ def populateMenubar(self, window):
-         if isMacOS():
-             window.exitAction.setMenuRole(QtWidgets.QAction.QuitRole)
-         else:
--            window.exitAction.setIcon(QtGui.QPixmap(resourcespath + 'cross.png'))
-+            window.exitAction.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'cross.png')))
-         window.exitAction.triggered.connect(self.exitSyncplay)
-
-         if(window.editMenu is not None):
-@@ -1683,19 +1683,19 @@ def populateMenubar(self, window):
-
-         window.playbackMenu = QtWidgets.QMenu(getMessage("playback-menu-label"), self)
-         window.playAction = window.playbackMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'control_play_blue.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_play_blue.png')),
-             getMessage("play-menu-label"))
-         window.playAction.triggered.connect(self.play)
-         window.pauseAction = window.playbackMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'control_pause_blue.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_pause_blue.png')),
-             getMessage("pause-menu-label"))
-         window.pauseAction.triggered.connect(self.pause)
-         window.seekAction = window.playbackMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'clock_go.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'clock_go.png')),
-             getMessage("seektime-menu-label"))
-         window.seekAction.triggered.connect(self.seekPositionDialog)
-         window.unseekAction = window.playbackMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'arrow_undo.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'arrow_undo.png')),
-             getMessage("undoseek-menu-label"))
-         window.unseekAction.triggered.connect(self.undoSeek)
-
-@@ -1705,17 +1705,17 @@ def populateMenubar(self, window):
-
-         window.advancedMenu = QtWidgets.QMenu(getMessage("advanced-menu-label"), self)
-         window.setoffsetAction = window.advancedMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'timeline_marker.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'timeline_marker.png')),
-             getMessage("setoffset-menu-label"))
-         window.setoffsetAction.triggered.connect(self.setOffset)
-         window.setTrustedDomainsAction = window.advancedMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'shield_edit.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'shield_edit.png')),
-             getMessage("settrusteddomains-menu-label"))
-         window.setTrustedDomainsAction.triggered.connect(self.openSetTrustedDomainsDialog)
-         window.createcontrolledroomAction = window.advancedMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'page_white_key.png'), getMessage("createcontrolledroom-menu-label"))
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'page_white_key.png')), getMessage("createcontrolledroom-menu-label"))
-         window.createcontrolledroomAction.triggered.connect(self.createControlledRoom)
--        window.identifyascontroller = window.advancedMenu.addAction(QtGui.QPixmap(resourcespath + 'key_go.png'),
-+        window.identifyascontroller = window.advancedMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'key_go.png')),
-                                                                     getMessage("identifyascontroller-menu-label"))
-         window.identifyascontroller.triggered.connect(self.identifyAsController)
-
-@@ -1725,7 +1725,7 @@ def populateMenubar(self, window):
-
-         window.windowMenu = QtWidgets.QMenu(getMessage("window-menu-label"), self)
-
--        window.editroomsAction = window.windowMenu.addAction(QtGui.QPixmap(resourcespath + 'door_open_edit.png'), getMessage("roomlist-msgbox-label"))
-+        window.editroomsAction = window.windowMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'door_open_edit.png')), getMessage("roomlist-msgbox-label"))
-         window.editroomsAction.triggered.connect(self.openEditRoomsDialog)
-         window.menuBar.addMenu(window.windowMenu)
-
-@@ -1743,18 +1743,18 @@ def populateMenubar(self, window):
-         window.helpMenu = QtWidgets.QMenu(getMessage("help-menu-label"), self)
-
-         window.userguideAction = window.helpMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'help.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'help.png')),
-             getMessage("userguide-menu-label"))
-         window.userguideAction.triggered.connect(self.openUserGuide)
-         window.updateAction = window.helpMenu.addAction(
--            QtGui.QPixmap(resourcespath + 'application_get.png'),
-+            QtGui.QIcon(QtGui.QPixmap(resourcespath + 'application_get.png')),
-             getMessage("update-menu-label"))
-         window.updateAction.triggered.connect(self.userCheckForUpdates)
-
-         if not isMacOS():
-             window.helpMenu.addSeparator()
-             window.about = window.helpMenu.addAction(
--                QtGui.QPixmap(resourcespath + 'syncplay.png'),
-+                QtGui.QIcon(QtGui.QPixmap(resourcespath + 'syncplay.png')),
-                 getMessage("about-menu-label"))
-         else:
-             window.about = window.helpMenu.addAction("&About")
-@@ -1835,16 +1835,16 @@ def changeAutoplayState(self, source=None):
-     def updateReadyIcon(self):
-         ready = self.readyPushButton.isChecked()
-         if ready:
--            self.readyPushButton.setIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png'))
-+            self.readyPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png')))
-         else:
--            self.readyPushButton.setIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png'))
-+            self.readyPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png')))
-
-     def updateAutoPlayIcon(self):
-         ready = self.autoplayPushButton.isChecked()
-         if ready:
--            self.autoplayPushButton.setIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png'))
-+            self.autoplayPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'tick_checkbox.png')))
-         else:
--            self.autoplayPushButton.setIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png'))
-+            self.autoplayPushButton.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'empty_checkbox.png')))
-
-     def automaticUpdateCheck(self):
-         currentDateTimeValue = QDateTime.currentDateTime()
-@@ -2060,7 +2060,7 @@ def __init__(self, passedBar=None):
-         self.populateMenubar(self)
-         self.addMainFrame(self)
-         self.loadSettings()
--        self.setWindowIcon(QtGui.QPixmap(resourcespath + "syncplay.png"))
-+        self.setWindowIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + "syncplay.png")))
-         self.setWindowFlags(self.windowFlags() & Qt.WindowCloseButtonHint & Qt.WindowMinimizeButtonHint & ~Qt.WindowContextHelpButtonHint)
-         self.show()
-         self.setAcceptDrops(True)
-

diff --git a/media-video/syncplay/files/syncplay-use-lambda-to-connect-behind-wrapper.patch b/media-video/syncplay/files/syncplay-use-lambda-to-connect-behind-wrapper.patch
deleted file mode 100644
index bb70fb8887..0000000000
--- a/media-video/syncplay/files/syncplay-use-lambda-to-connect-behind-wrapper.patch
+++ /dev/null
@@ -1,158 +0,0 @@
-diff --git a/syncplay/ui/GuiConfiguration.py b/syncplay/ui/GuiConfiguration.py
-index e0713adf..9ce6a429 100755
---- a/syncplay/ui/GuiConfiguration.py
-+++ b/syncplay/ui/GuiConfiguration.py
-@@ -1394,7 +1394,7 @@ def __init__(self, config, playerpaths, error, defaultConfig):
-         self.publicServerAddresses = []
-
-         self._playerProbeThread = GetPlayerIconThread()
--        self._playerProbeThread.done.connect(self._updateExecutableIcon)
-+        self._playerProbeThread.done.connect(lambda iconpath, playerpath: self._updateExecutableIcon(iconpath, playerpath))
-         self._playerProbeThread.start()
-
-         if self.config['clearGUIData'] == True:
-diff --git a/syncplay/ui/gui.py b/syncplay/ui/gui.py
-index 2a4bd1a5..b7a9a9f0 100755
---- a/syncplay/ui/gui.py
-+++ b/syncplay/ui/gui.py
-@@ -1457,7 +1457,7 @@ def addTopLayout(self, window):
-             window.sslButton.setVisible(False)
-             window.sslButton.setFixedHeight(27)
-             window.sslButton.setFixedWidth(27)
--        window.sslButton.pressed.connect(self.openSSLDetails)
-+        window.sslButton.pressed.connect(lambda: self.openSSLDetails())
-         window.sslButton.setToolTip(getMessage("sslconnection-tooltip"))
-         window.listFrame = QtWidgets.QFrame()
-         window.listFrame.setLineWidth(0)
-@@ -1487,7 +1487,7 @@ def addTopLayout(self, window):
-         window.roomButton = QtWidgets.QPushButton(
-             QtGui.QIcon(QtGui.QPixmap(resourcespath + 'door_in.png')),
-             getMessage("joinroom-label"))
--        window.roomButton.pressed.connect(self.joinRoom)
-+        window.roomButton.pressed.connect(lambda room=None: self.joinRoom(room))
-         window.roomButton.setFixedWidth(window.roomButton.sizeHint().width()+3)
-         window.roomLayout = QtWidgets.QHBoxLayout()
-         window.roomFrame = QtWidgets.QFrame()
-@@ -1539,10 +1539,10 @@ def addBottomLayout(self, window):
-         window.playlist.setSelectionMode(QtWidgets.QAbstractItemView.ExtendedSelection)
-         window.playlist.setDefaultDropAction(Qt.MoveAction)
-         window.playlist.setDragDropMode(QtWidgets.QAbstractItemView.InternalMove)
--        window.playlist.doubleClicked.connect(self.playlistItemClicked)
-+        window.playlist.doubleClicked.connect(lambda item: self.playlistItemClicked(item))
-         window.playlist.setContextMenuPolicy(Qt.CustomContextMenu)
-         window.playlist.setSelectionBehavior(QtWidgets.QAbstractItemView.SelectRows)
--        window.playlist.customContextMenuRequested.connect(self.openPlaylistMenu)
-+        window.playlist.customContextMenuRequested.connect(lambda position: self.openPlaylistMenu(position))
-         self.playlistUpdateTimer = task.LoopingCall(self.playlistChangeCheck)
-         self.playlistUpdateTimer.start(0.1, True)
-         noteFont = QtGui.QFont()
-@@ -1579,7 +1579,7 @@ def addBottomLayout(self, window):
-         window.autoplayPushButton.setText(getMessage("autoplay-guipushbuttonlabel"))
-         window.autoplayPushButton.setCheckable(True)
-         window.autoplayPushButton.setAutoExclusive(False)
--        window.autoplayPushButton.toggled.connect(self.changeAutoplayState)
-+        window.autoplayPushButton.toggled.connect(lambda source=None: self.changeAutoplayState(source))
-         window.autoplayPushButton.setFont(autoPlayFont)
-         if isMacOS():
-             window.autoplayFrame.setMinimumWidth(window.listFrame.sizeHint().width())
-@@ -1600,7 +1600,7 @@ def addBottomLayout(self, window):
-         window.autoplayThresholdSpinbox.setMinimum(2)
-         window.autoplayThresholdSpinbox.setMaximum(99)
-         window.autoplayThresholdSpinbox.setToolTip(getMessage("autoplay-tooltip"))
--        window.autoplayThresholdSpinbox.valueChanged.connect(self.changeAutoplayThreshold)
-+        window.autoplayThresholdSpinbox.valueChanged.connect(lambda source=None: self.changeAutoplayThreshold(source))
-         window.autoplayLayout.addWidget(window.autoplayPushButton, Qt.AlignRight)
-         window.autoplayLayout.addWidget(window.autoplayLabel, Qt.AlignRight)
-         window.autoplayLayout.addWidget(window.autoplayThresholdSpinbox, Qt.AlignRight)
-@@ -1629,17 +1629,17 @@ def addPlaybackLayout(self, window):
-         window.playbackLayout.addWidget(window.seekButton)
-         window.unseekButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'arrow_undo.png')), "")
-         window.unseekButton.setToolTip(getMessage("undoseek-menu-label"))
--        window.unseekButton.pressed.connect(self.undoSeek)
-+        window.unseekButton.pressed.connect(lambda: self.undoSeek())
-
-         window.miscLayout = QtWidgets.QHBoxLayout()
-         window.playbackLayout.addWidget(window.unseekButton)
-         window.playButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_play_blue.png')), "")
-         window.playButton.setToolTip(getMessage("play-menu-label"))
--        window.playButton.pressed.connect(self.play)
-+        window.playButton.pressed.connect(lambda: self.play())
-         window.playbackLayout.addWidget(window.playButton)
-         window.pauseButton = QtWidgets.QPushButton(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_pause_blue.png')), "")
-         window.pauseButton.setToolTip(getMessage("pause-menu-label"))
--        window.pauseButton.pressed.connect(self.pause)
-+        window.pauseButton.pressed.connect(lambda: self.pause())
-         window.playbackLayout.addWidget(window.pauseButton)
-         window.playbackFrame.setMaximumHeight(window.playbackFrame.sizeHint().height())
-         window.playbackFrame.setMaximumWidth(window.playbackFrame.sizeHint().width())
-@@ -1659,20 +1659,20 @@ def populateMenubar(self, window):
-         window.fileMenu = QtWidgets.QMenu(getMessage("file-menu-label"), self)
-         window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'folder_explore.png')),
-                                                       getMessage("openmedia-menu-label"))
--        window.openAction.triggered.connect(self.browseMediapath)
-+        window.openAction.triggered.connect(lambda: self.browseMediapath())
-         window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'world_explore.png')),
-                                                       getMessage("openstreamurl-menu-label"))
--        window.openAction.triggered.connect(self.promptForStreamURL)
-+        window.openAction.triggered.connect(lambda: self.promptForStreamURL())
-         window.openAction = window.fileMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'film_folder_edit.png')),
-                                                       getMessage("setmediadirectories-menu-label"))
--        window.openAction.triggered.connect(self.openSetMediaDirectoriesDialog)
-+        window.openAction.triggered.connect(lambda: self.openSetMediaDirectoriesDialog())
-
-         window.exitAction = window.fileMenu.addAction(getMessage("exit-menu-label"))
-         if isMacOS():
-             window.exitAction.setMenuRole(QtWidgets.QAction.QuitRole)
-         else:
-             window.exitAction.setIcon(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'cross.png')))
--        window.exitAction.triggered.connect(self.exitSyncplay)
-+        window.exitAction.triggered.connect(lambda: self.exitSyncplay())
-
-         if(window.editMenu is not None):
-             window.menuBar.insertMenu(window.editMenu.menuAction(), window.fileMenu)
-@@ -1685,11 +1685,11 @@ def populateMenubar(self, window):
-         window.playAction = window.playbackMenu.addAction(
-             QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_play_blue.png')),
-             getMessage("play-menu-label"))
--        window.playAction.triggered.connect(self.play)
-+        window.playAction.triggered.connect(lambda: self.play())
-         window.pauseAction = window.playbackMenu.addAction(
-             QtGui.QIcon(QtGui.QPixmap(resourcespath + 'control_pause_blue.png')),
-             getMessage("pause-menu-label"))
--        window.pauseAction.triggered.connect(self.pause)
-+        window.pauseAction.triggered.connect(lambda: self.pause())
-         window.seekAction = window.playbackMenu.addAction(
-             QtGui.QIcon(QtGui.QPixmap(resourcespath + 'clock_go.png')),
-             getMessage("seektime-menu-label"))
-@@ -1697,7 +1697,7 @@ def populateMenubar(self, window):
-         window.unseekAction = window.playbackMenu.addAction(
-             QtGui.QIcon(QtGui.QPixmap(resourcespath + 'arrow_undo.png')),
-             getMessage("undoseek-menu-label"))
--        window.unseekAction.triggered.connect(self.undoSeek)
-+        window.unseekAction.triggered.connect(lambda: self.undoSeek())
-
-         window.menuBar.addMenu(window.playbackMenu)
-
-@@ -1707,17 +1707,17 @@ def populateMenubar(self, window):
-         window.setoffsetAction = window.advancedMenu.addAction(
-             QtGui.QIcon(QtGui.QPixmap(resourcespath + 'timeline_marker.png')),
-             getMessage("setoffset-menu-label"))
--        window.setoffsetAction.triggered.connect(self.setOffset)
-+        window.setoffsetAction.triggered.connect(lambda: self.setOffset())
-         window.setTrustedDomainsAction = window.advancedMenu.addAction(
-             QtGui.QIcon(QtGui.QPixmap(resourcespath + 'shield_edit.png')),
-             getMessage("settrusteddomains-menu-label"))
--        window.setTrustedDomainsAction.triggered.connect(self.openSetTrustedDomainsDialog)
-+        window.setTrustedDomainsAction.triggered.connect(lambda: self.openSetTrustedDomainsDialog())
-         window.createcontrolledroomAction = window.advancedMenu.addAction(
-             QtGui.QIcon(QtGui.QPixmap(resourcespath + 'page_white_key.png')), getMessage("createcontrolledroom-menu-label"))
--        window.createcontrolledroomAction.triggered.connect(self.createControlledRoom)
-+        window.createcontrolledroomAction.triggered.connect(lambda: self.createControlledRoom())
-         window.identifyascontroller = window.advancedMenu.addAction(QtGui.QIcon(QtGui.QPixmap(resourcespath + 'key_go.png')),
-                                                                     getMessage("identifyascontroller-menu-label"))
--        window.identifyascontroller.triggered.connect(self.identifyAsController)
-+        window.identifyascontroller.triggered.connect(lambda: self.identifyAsController())
-
-         window.menuBar.addMenu(window.advancedMenu)
-
-

diff --git a/media-video/syncplay/syncplay-1.6.9.ebuild b/media-video/syncplay/syncplay-1.6.9.ebuild
deleted file mode 100644
index 7d9ccb9440..0000000000
--- a/media-video/syncplay/syncplay-1.6.9.ebuild
+++ /dev/null
@@ -1,75 +0,0 @@
-# Copyright 2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..11} )
-DISTUTILS_USE_PEP517=setuptools
-DISTUTILS_SINGLE_IMPL=1
-
-inherit desktop distutils-r1 optfeature xdg
-
-DESCRIPTION="Client/server to synchronize media playback"
-HOMEPAGE="https://github.com/Syncplay/syncplay https://syncplay.pl"
-SRC_URI="https://github.com/${PN^}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
-
-IUSE="+client server +gui"
-REQUIRED_USE="|| ( client server )"
-
-RDEPEND="
-	$( python_gen_cond_dep \
-		'>=dev-python/certifi-2018.11.29[${PYTHON_USEDEP}]
-		>=dev-python/twisted-16.4.0[${PYTHON_USEDEP},ssl]'
-	)
-	client? (
-		gui? (
-			$( python_gen_cond_dep \
-				'dev-python/QtPy[${PYTHON_USEDEP},gui,pyside2]'
-			)
-		)
-		|| (
-			media-video/vlc[lua]
-			media-video/mpv[lua]
-			media-video/mplayer
-		)
-	)
-"
-
-python_install() {
-	python_domodule syncplay
-
-	if use gui; then
-		for size in 256 128 96 64 48 32 24 16; do
-			doicon -s ${size} "${PN}/resources/hicolor/${size}x${size}/apps/syncplay.png"
-		done
-	fi
-	if use client; then
-		python_newscript syncplayClient.py syncplay
-		if use gui; then
-			domenu syncplay/resources/syncplay.desktop
-		fi
-	fi
-	if use server; then
-		if use gui; then
-			domenu syncplay/resources/syncplay-server.desktop
-		fi
-		python_newscript syncplayServer.py syncplay-server
-		newinitd "${FILESDIR}/${PN}-server-init" "${PN}"
-		newconfd "${FILESDIR}/${PN}-server-init-conf" "${PN}"
-	fi
-}
-
-pkg_postinst() {
-	xdg_pkg_postinst
-
-	if use client; then
-		optfeature_header "Syncplay is compatible with the following players, install:"
-		optfeature "VLC support" media-video/vlc[lua]
-		optfeature "MPV support" media-video/mpv[lua]
-		optfeature "MPlayer support" media-video/mplayer
-	fi
-}

diff --git a/media-video/syncplay/syncplay-1.7.1.ebuild b/media-video/syncplay/syncplay-1.7.1.ebuild
deleted file mode 100644
index 5a6696368e..0000000000
--- a/media-video/syncplay/syncplay-1.7.1.ebuild
+++ /dev/null
@@ -1,81 +0,0 @@
-# Copyright 2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..12} )
-DISTUTILS_USE_PEP517=setuptools
-DISTUTILS_SINGLE_IMPL=1
-
-inherit desktop distutils-r1 optfeature xdg
-
-DESCRIPTION="Client/server to synchronize media playback"
-HOMEPAGE="https://github.com/Syncplay/syncplay https://syncplay.pl"
-SRC_URI="https://github.com/${PN^}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
-
-IUSE="+client server +gui"
-REQUIRED_USE="|| ( client server )"
-
-RDEPEND="
-	$( python_gen_cond_dep \
-		'>=dev-python/certifi-2018.11.29[${PYTHON_USEDEP}]
-		>=dev-python/twisted-16.4.0[${PYTHON_USEDEP},ssl]
-		>=dev-python/pem-21.2.0[${PYTHON_USEDEP}]'
-	)
-	client? (
-		gui? (
-			$( python_gen_cond_dep \
-				'dev-python/QtPy[${PYTHON_USEDEP},gui,pyside2]' \
-				python3_{10,11}
-			)
-			$( python_gen_cond_dep \
-				'dev-python/QtPy[${PYTHON_USEDEP},gui,pyside6]' \
-				python3_12
-			)
-		)
-		|| (
-			media-video/vlc[lua]
-			media-video/mpv[lua]
-			media-video/mplayer
-		)
-	)
-"
-
-python_install() {
-	python_domodule syncplay
-
-	if use gui; then
-		for size in 256 128 96 64 48 32 24 16; do
-			doicon -s ${size} "${PN}/resources/hicolor/${size}x${size}/apps/syncplay.png"
-		done
-	fi
-	if use client; then
-		python_newscript syncplayClient.py syncplay
-		if use gui; then
-			domenu syncplay/resources/syncplay.desktop
-		fi
-	fi
-	if use server; then
-		if use gui; then
-			domenu syncplay/resources/syncplay-server.desktop
-		fi
-		python_newscript syncplayServer.py syncplay-server
-		newinitd "${FILESDIR}/${PN}-server-init" "${PN}"
-		newconfd "${FILESDIR}/${PN}-server-init-conf" "${PN}"
-	fi
-}
-
-pkg_postinst() {
-	xdg_pkg_postinst
-
-	if use client; then
-		optfeature_header "Syncplay is compatible with the following players, install:"
-		optfeature "VLC support" media-video/vlc[lua]
-		optfeature "MPV support" media-video/mpv[lua]
-		optfeature "MPlayer support" media-video/mplayer
-	fi
-}


^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-05-15 16:55 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-10-07 12:27 [gentoo-commits] repo/proj/guru:master commit in: media-video/syncplay/, media-video/syncplay/files/ Andrew Ammerlaan
2020-10-07 12:27 ` [gentoo-commits] repo/proj/guru:dev " Andrew Ammerlaan
  -- strict thread matches above, loose matches on Subject: below --
2024-05-15 17:00 [gentoo-commits] repo/proj/guru:master commit in: media-video/syncplay/files/, media-video/syncplay/ Julien Roy
2024-05-15 16:55 ` [gentoo-commits] repo/proj/guru:dev commit in: media-video/syncplay/, media-video/syncplay/files/ Julien Roy
2020-10-22 13:50 Andrew Ammerlaan
2020-10-08 18:20 Andrew Ammerlaan
2020-05-01  9:59 [gentoo-commits] repo/proj/guru:master commit in: media-video/syncplay/files/, media-video/syncplay/ Andrew Ammerlaan
2020-04-30 18:15 ` [gentoo-commits] repo/proj/guru:dev commit in: media-video/syncplay/, media-video/syncplay/files/ Andrew Ammerlaan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox