From 851d1fb3b242af64caf3a4caf5dc592e6e90414d Mon Sep 17 00:00:00 2001 From: Travis Abendshien Date: Mon, 13 May 2024 01:10:40 -0700 Subject: [PATCH] Changes to allow for native menu bars --- tagstudio/src/qt/main_window.py | 48 ++++++++++++++++----------------- tagstudio/src/qt/ts_qt.py | 9 +++---- 2 files changed, 28 insertions(+), 29 deletions(-) diff --git a/tagstudio/src/qt/main_window.py b/tagstudio/src/qt/main_window.py index e285b48b..3f10ea00 100644 --- a/tagstudio/src/qt/main_window.py +++ b/tagstudio/src/qt/main_window.py @@ -17,8 +17,8 @@ from PySide6.QtCore import (QCoreApplication, QMetaObject, QRect, from PySide6.QtGui import (QFont, QAction) from PySide6.QtWidgets import (QComboBox, QFrame, QGridLayout, QHBoxLayout, QVBoxLayout, QLayout, QLineEdit, QMainWindow, - QMenuBar, QPushButton, QScrollArea, QSizePolicy, - QStatusBar, QWidget, QSplitter, QMenu) + QPushButton, QScrollArea, QSizePolicy, + QStatusBar, QWidget, QSplitter) from src.qt.pagination import Pagination @@ -167,10 +167,10 @@ class Ui_MainWindow(QMainWindow): self.statusbar.setSizePolicy(sizePolicy1) MainWindow.setStatusBar(self.statusbar) - menu_bar = self.menuBar() - self.setMenuBar(menu_bar) + # menu_bar = self.menuBar() + # self.setMenuBar(menu_bar) # self.gridLayout.addWidget(menu_bar, 4, 0, 1, 1, Qt.AlignRight) - self.frame_layout.addWidget(menu_bar) + # self.frame_layout.addWidget(menu_bar) self.retranslateUi(MainWindow) @@ -201,26 +201,26 @@ class Ui_MainWindow(QMainWindow): # time.sleep(0.02) # sleep for 20ms pass - def _createMenuBar(self, main_window): - menu_bar = QMenuBar(main_window) - file_menu = QMenu('&File', main_window) - edit_menu = QMenu('&Edit', main_window) - tools_menu = QMenu('&Tools', main_window) - macros_menu = QMenu('&Macros', main_window) - help_menu = QMenu('&Help', main_window) + # def _createMenuBar(self, main_window): + # menu_bar = QMenuBar(main_window) + # file_menu = QMenu('&File', main_window) + # edit_menu = QMenu('&Edit', main_window) + # tools_menu = QMenu('&Tools', main_window) + # macros_menu = QMenu('&Macros', main_window) + # help_menu = QMenu('&Help', main_window) - file_menu.addAction(QAction('&New Library', main_window)) - file_menu.addAction(QAction('&Open Library', main_window)) - file_menu.addAction(QAction('&Save Library', main_window)) - file_menu.addAction(QAction('&Close Library', main_window)) + # file_menu.addAction(QAction('&New Library', main_window)) + # file_menu.addAction(QAction('&Open Library', main_window)) + # file_menu.addAction(QAction('&Save Library', main_window)) + # file_menu.addAction(QAction('&Close Library', main_window)) - file_menu.addAction(QAction('&Refresh Directories', main_window)) - file_menu.addAction(QAction('&Add New Files to Library', main_window)) + # file_menu.addAction(QAction('&Refresh Directories', main_window)) + # file_menu.addAction(QAction('&Add New Files to Library', main_window)) - menu_bar.addMenu(file_menu) - menu_bar.addMenu(edit_menu) - menu_bar.addMenu(tools_menu) - menu_bar.addMenu(macros_menu) - menu_bar.addMenu(help_menu) + # menu_bar.addMenu(file_menu) + # menu_bar.addMenu(edit_menu) + # menu_bar.addMenu(tools_menu) + # menu_bar.addMenu(macros_menu) + # menu_bar.addMenu(help_menu) - main_window.setMenuBar(menu_bar) + # main_window.setMenuBar(menu_bar) diff --git a/tagstudio/src/qt/ts_qt.py b/tagstudio/src/qt/ts_qt.py index 555ca9dc..4a5c1af5 100644 --- a/tagstudio/src/qt/ts_qt.py +++ b/tagstudio/src/qt/ts_qt.py @@ -42,6 +42,7 @@ from PySide6.QtWidgets import ( QFileDialog, QSplashScreen, QMenu, + QMenuBar, ) from humanfriendly import format_timespan @@ -273,11 +274,9 @@ class QtDriver(QObject): icon.addFile(icon_path) app.setWindowIcon(icon) - menu_bar = self.main_window.menuBar() - - # Allow the use of the native macOS menu bar. - # if sys.platform != "darwin": - menu_bar.setNativeMenuBar(False) + menu_bar = QMenuBar(self.main_window) + self.main_window.setMenuBar(menu_bar) + menu_bar.setNativeMenuBar(True) file_menu = QMenu("&File", menu_bar) edit_menu = QMenu("&Edit", menu_bar)