PDA

View Full Version : Minor bug in QMdiArea/QSubMdiWindow: Ctrl+Shift+Tab



epsilon
3rd March 2010, 06:23
To the list,
This is more of an FYI since I doubt many people are affected by this, but somewhere in the guts of the QMdiArea or QSubMdiWindow (or lower ?!) classes there seems to be a bug. I'm not skilled enough to track it down but it is easy to demonstrate.
1. Start the SDK supplied Mdi.exe example program.
2. Create 2 or more child windows.
3. Move them so they are overlapping
4. Press Ctrl+Shift+Tab (previous child hotkey)
The "previous" child window is not fully brought into focus (only the border rubberband appears) or brought to the top of the stack. When you let go of the Ctrl key it pops up normally.
The Ctrl+Tab combination works as expected as do the window menu actions Next and Previous.

I only bring this up since in my app I have changed the MdiChild class inheritance from
class MdiChild : public QTextEdit
to
class MdiChild : public QMdiSubWindow
and my "previous" child window is not brought to the top of the z-order at all when using the Ctrl+Shift+Tab key. (Ctrl+Tab, Next and Previous actions all function properly). In fact doing a Cascade command right after this key combination leaves a phantom rubber band on the Mdi workspace where the "Previous" window was. It can persist until the right combination of Ctrl+Shift+Tab is played!

Cheers