From ee7462bb0069874e997eb5af8803e91b7cc78045 Mon Sep 17 00:00:00 2001 From: Philipp Date: Tue, 25 Sep 2018 12:32:52 +0200 Subject: [PATCH 1/2] PICARD-1358: Use native Qt style for macOS --- picard/tagger.py | 3 ++- picard/ui/mainwindow.py | 6 ++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/picard/tagger.py b/picard/tagger.py index b769ae5f4..a13e1435b 100644 --- a/picard/tagger.py +++ b/picard/tagger.py @@ -129,7 +129,8 @@ class Tagger(QtWidgets.QApplication): # Use the new fusion style from PyQt5 for a modern and consistent look # across all OSes. - self.setStyle('Fusion') + if sys.platform != "darwin": + self.setStyle('Fusion') # Set the WM_CLASS to 'MusicBrainz-Picard' so desktop environments # can use it to look up the app diff --git a/picard/ui/mainwindow.py b/picard/ui/mainwindow.py index 5cb4b3f39..ba62b0353 100644 --- a/picard/ui/mainwindow.py +++ b/picard/ui/mainwindow.py @@ -21,6 +21,7 @@ from collections import OrderedDict import datetime from functools import partial import os.path +import sys from PyQt5 import ( QtCore, @@ -127,6 +128,11 @@ class MainWindow(QtWidgets.QMainWindow, PreserveGeometry): self.create_toolbar() self.create_menus() + if sys.platform == "darwin": + self.setUnifiedTitleAndToolBarOnMac(True) + self.toolbar.setMovable(False) + self.search_toolbar.setMovable(False) + mainLayout = QtWidgets.QSplitter(QtCore.Qt.Vertical) mainLayout.setContentsMargins(0, 0, 0, 0) mainLayout.setHandleWidth(1) From 2990d763c5917ca0daa871636324fd03912caf13 Mon Sep 17 00:00:00 2001 From: Philipp Date: Tue, 25 Sep 2018 16:21:46 +0200 Subject: [PATCH 2/2] PICARD-1358: Do not show menu icons on macOS --- picard/tagger.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/picard/tagger.py b/picard/tagger.py index a13e1435b..583dd13ec 100644 --- a/picard/tagger.py +++ b/picard/tagger.py @@ -188,6 +188,10 @@ class Tagger(QtWidgets.QApplication): signal.signal(signal.SIGINT, self.signal) signal.signal(signal.SIGTERM, self.signal) + if sys.platform == "darwin": + # On macOS it is not common that the global menu shows icons + self.setAttribute(QtCore.Qt.AA_DontShowIconsInMenus) + # Setup logging log.debug("Starting Picard from %r", os.path.abspath(__file__)) log.debug("Platform: %s %s %s", platform.platform(),