Loading ui/framelesswindow/fw_qt6/__init__.py +1 −1 Original line number Diff line number Diff line Loading @@ -5,7 +5,7 @@ if sys.platform == "win32": from .windows import WindowsFramelessWindow as FramelessWindow from .windows import WindowsWindowEffect as WindowEffect elif sys.platform == "darwin": from .mac import AcrylicWindow # from .mac import AcrylicWindow from .mac import MacFramelessWindow as FramelessWindow from .mac import MacWindowEffect as WindowEffect else: Loading ui/framelesswindow/fw_qt6/mac/__init__.py +5 −16 Original line number Diff line number Diff line Loading @@ -14,9 +14,8 @@ class MacFramelessWindow(QWidget): def __init__(self, parent=None): super().__init__(parent=parent) self.windowEffect = MacWindowEffect(self) # must enable acrylic effect before creating title bar if isinstance(self, AcrylicWindow): self.windowEffect.setAcrylicEffect(self.winId()) # https://bugreports.qt.io/browse/QTBUG-133215 self.setAttribute(Qt.WidgetAttribute.WA_ContentsMarginsRespectsSafeArea, False) # self.titleBar = TitleBar(self) Loading @@ -24,7 +23,7 @@ class MacFramelessWindow(QWidget): self.__nsWindow = view.window() # hide system title bar self.__hideSystemTitleBar() self.hideSystemTitleBar() # self.resize(500, 500) # self.titleBar.raise_() Loading Loading @@ -53,9 +52,9 @@ class MacFramelessWindow(QWidget): def changeEvent(self, event): super().changeEvent(event) if event.type() == QEvent.Type.WindowStateChange: self.__hideSystemTitleBar() self.hideSystemTitleBar() def __hideSystemTitleBar(self): def hideSystemTitleBar(self): # extend view to title bar region self.__nsWindow.setStyleMask_( self.__nsWindow.styleMask() | Cocoa.NSFullSizeContentViewWindowMask) Loading @@ -71,13 +70,3 @@ class MacFramelessWindow(QWidget): # self.__nsWindow.standardWindowButton_(Cocoa.NSWindowCloseButton).setHidden_(True) # self.__nsWindow.standardWindowButton_(Cocoa.NSWindowZoomButton).setHidden_(True) # self.__nsWindow.standardWindowButton_(Cocoa.NSWindowMiniaturizeButton).setHidden_(True) class AcrylicWindow(MacFramelessWindow): """ A frameless window with acrylic effect """ def __init__(self, parent=None): super().__init__(parent) self.setAttribute(Qt.WidgetAttribute.WA_TranslucentBackground) self.windowEffect.setAcrylicEffect(self.winId()) self.setStyleSheet("background: transparent") ui/mainwindow.py +5 −0 Original line number Diff line number Diff line Loading @@ -103,6 +103,11 @@ class MainWindow(mainwindow_cls): if shared.HEADLESS: self.run_batch(**exec_args) if shared.ON_MACOS: # https://bugreports.qt.io/browse/QTBUG-133215 self.hideSystemTitleBar() self.showMaximized() def setStyleSheet(self, styleSheet: str) -> None: self.imgtrans_progress_msgbox.setStyleSheet(styleSheet) self.export_doc_thread.progress_bar.setStyleSheet(styleSheet) Loading ui/mainwindowbars.py +2 −1 Original line number Diff line number Diff line Loading @@ -273,7 +273,8 @@ class TitleBar(Widget): def __init__(self, parent, *args, **kwargs) -> None: super().__init__(parent, *args, **kwargs) if C.ON_MACOS:# https://bugreports.qt.io/browse/QTBUG-133215 self.setAttribute(Qt.WidgetAttribute.WA_ContentsMarginsRespectsSafeArea, False) self.mainwindow : QMainWindow = parent self.mPos: QPoint = None self.normalsize = False Loading Loading
ui/framelesswindow/fw_qt6/__init__.py +1 −1 Original line number Diff line number Diff line Loading @@ -5,7 +5,7 @@ if sys.platform == "win32": from .windows import WindowsFramelessWindow as FramelessWindow from .windows import WindowsWindowEffect as WindowEffect elif sys.platform == "darwin": from .mac import AcrylicWindow # from .mac import AcrylicWindow from .mac import MacFramelessWindow as FramelessWindow from .mac import MacWindowEffect as WindowEffect else: Loading
ui/framelesswindow/fw_qt6/mac/__init__.py +5 −16 Original line number Diff line number Diff line Loading @@ -14,9 +14,8 @@ class MacFramelessWindow(QWidget): def __init__(self, parent=None): super().__init__(parent=parent) self.windowEffect = MacWindowEffect(self) # must enable acrylic effect before creating title bar if isinstance(self, AcrylicWindow): self.windowEffect.setAcrylicEffect(self.winId()) # https://bugreports.qt.io/browse/QTBUG-133215 self.setAttribute(Qt.WidgetAttribute.WA_ContentsMarginsRespectsSafeArea, False) # self.titleBar = TitleBar(self) Loading @@ -24,7 +23,7 @@ class MacFramelessWindow(QWidget): self.__nsWindow = view.window() # hide system title bar self.__hideSystemTitleBar() self.hideSystemTitleBar() # self.resize(500, 500) # self.titleBar.raise_() Loading Loading @@ -53,9 +52,9 @@ class MacFramelessWindow(QWidget): def changeEvent(self, event): super().changeEvent(event) if event.type() == QEvent.Type.WindowStateChange: self.__hideSystemTitleBar() self.hideSystemTitleBar() def __hideSystemTitleBar(self): def hideSystemTitleBar(self): # extend view to title bar region self.__nsWindow.setStyleMask_( self.__nsWindow.styleMask() | Cocoa.NSFullSizeContentViewWindowMask) Loading @@ -71,13 +70,3 @@ class MacFramelessWindow(QWidget): # self.__nsWindow.standardWindowButton_(Cocoa.NSWindowCloseButton).setHidden_(True) # self.__nsWindow.standardWindowButton_(Cocoa.NSWindowZoomButton).setHidden_(True) # self.__nsWindow.standardWindowButton_(Cocoa.NSWindowMiniaturizeButton).setHidden_(True) class AcrylicWindow(MacFramelessWindow): """ A frameless window with acrylic effect """ def __init__(self, parent=None): super().__init__(parent) self.setAttribute(Qt.WidgetAttribute.WA_TranslucentBackground) self.windowEffect.setAcrylicEffect(self.winId()) self.setStyleSheet("background: transparent")
ui/mainwindow.py +5 −0 Original line number Diff line number Diff line Loading @@ -103,6 +103,11 @@ class MainWindow(mainwindow_cls): if shared.HEADLESS: self.run_batch(**exec_args) if shared.ON_MACOS: # https://bugreports.qt.io/browse/QTBUG-133215 self.hideSystemTitleBar() self.showMaximized() def setStyleSheet(self, styleSheet: str) -> None: self.imgtrans_progress_msgbox.setStyleSheet(styleSheet) self.export_doc_thread.progress_bar.setStyleSheet(styleSheet) Loading
ui/mainwindowbars.py +2 −1 Original line number Diff line number Diff line Loading @@ -273,7 +273,8 @@ class TitleBar(Widget): def __init__(self, parent, *args, **kwargs) -> None: super().__init__(parent, *args, **kwargs) if C.ON_MACOS:# https://bugreports.qt.io/browse/QTBUG-133215 self.setAttribute(Qt.WidgetAttribute.WA_ContentsMarginsRespectsSafeArea, False) self.mainwindow : QMainWindow = parent self.mPos: QPoint = None self.normalsize = False Loading