Hello,

In my MDI application I have the ability to enter a fullscreen mode, whereby all toolbars, dock widgets etc are hidden, then both the main window and the active subwindow are maximized.

If there are other non-active QMdiSubWindows open and already maximized then these are resized when the active subwindow is put into fullscreen mode. This is because hiding the toolbars etc triggers a resize in the maximized non-active subwindows (but not non-active normal size subwindows).

I wish to find a way to prevent the implicit resizing of the maximized non-active subwindows when entering the fullscreen mode for the active subwindow.

I have a boolean in the main window (fullscreenTransition) which I set when entering / exiting fullscreen mode. I check this and whether the subwindow widget is the active one in the resize event of the subwindow widget and skip the resize under the appropriate condition:

Qt Code:
  1. if(mainWindow->activeMdiWidget() != qobject_cast<MdiWidget*>(this) && mainWindow->isFullScreenTransition())
  2. {
  3. return;
  4. }
To copy to clipboard, switch view to plain text mode 

Unfortunately, it doesn't work because the fullScreenTransition boolean is set back to false before the resize of the non-active subwindows is triggered / completed.

I guess I need to override or intercept the event / signal that resizes the non-active subwindows and set my fullScreenTransition boolean back to false in there. Does anybody know how to do this or where it might give me a clue in the documentation?

Any help greatly appreciated, thanks!