@@ -10,13 +10,18 @@ class PluginDevToolsDocker(DockWidget):
1010 def __init__ (self ):
1111 super ().__init__ ()
1212 self .setWindowTitle (DOCKER_TITLE )
13+ self .titleBarEventListening = False
1314
1415 def canvasChanged (self , canvas ):
1516 pass
1617
1718 def showEvent (self , event : QtGui .QShowEvent ) -> None :
1819 #print('PluginDevToolsDocker showEvent')
1920 #print(' sender= ', self.sender())
21+ if self .titleBarEventListening == False :
22+ if isinstance (self .titleBarWidget (), QWidget ):
23+ self .titleBarWidget ().installEventFilter (self )
24+
2025 if isinstance (self .sender (), QAction ):
2126 self .signal_manualOpenDocker .emit ()
2227 return super ().showEvent (event )
@@ -33,3 +38,11 @@ def showEvent(self, event: QtGui.QShowEvent) -> None:
3338 return super ().showEvent (event )
3439
3540
41+ def eventFilter (self , obj : QObject , event : QEvent ) -> bool :
42+ if obj is self .titleBarWidget ():
43+ if event .type () == QEvent .Type .MouseButtonDblClick :
44+ if not self .isFloating ():
45+ self .signal_leaveFloating .emit ()
46+ return True
47+ return super ().eventFilter (obj , event )
48+
0 commit comments