diff options
Diffstat (limited to 'x11-toolkits/qt31/files/qapplication_x11.cpp.diff')
-rw-r--r-- | x11-toolkits/qt31/files/qapplication_x11.cpp.diff | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/x11-toolkits/qt31/files/qapplication_x11.cpp.diff b/x11-toolkits/qt31/files/qapplication_x11.cpp.diff new file mode 100644 index 000000000000..877de05c5950 --- /dev/null +++ b/x11-toolkits/qt31/files/qapplication_x11.cpp.diff @@ -0,0 +1,48 @@ +=================================================================== +RCS file: /home2/webcvs/mirror/qt-copy/src/kernel/qapplication_x11.cpp,v +retrieving revision 1.81 +retrieving revision 1.82 +diff -u -p -r1.81 -r1.82 +--- qt-copy/src/kernel/qapplication_x11.cpp 2002/11/13 16:46:34 1.81 ++++ qt-copy/src/kernel/qapplication_x11.cpp 2002/11/14 08:57:34 1.82 +@@ -3691,39 +3691,9 @@ void qt_leave_modal( QWidget *widget ) + + bool qt_try_modal( QWidget *widget, XEvent *event ) + { +- if ( qApp->activePopupWidget() ) ++ if ( qt_tryModalHelper( widget ) ) + return TRUE; + +- QWidget *modal=0, *top=QApplication::activeModalWidget(); +- +- QWidget* groupLeader = widget; +- widget = widget->topLevelWidget(); +- +- if ( widget->testWFlags(Qt::WShowModal) ) // widget is modal +- modal = widget; +- if ( !top || modal == top ) // don't block event +- return TRUE; +- +- while ( groupLeader && !groupLeader->testWFlags( Qt::WGroupLeader ) ) +- groupLeader = groupLeader->parentWidget(); +- +- if ( groupLeader ) { +- // Does groupLeader have a child in qt_modal_stack? +- bool unrelated = TRUE; +- modal = qt_modal_stack->first(); +- while (modal && unrelated) { +- QWidget* p = modal->parentWidget(); +- while ( p && p != groupLeader && !p->testWFlags( Qt::WGroupLeader) ) { +- p = p->parentWidget(); +- } +- modal = qt_modal_stack->next(); +- if ( p == groupLeader ) unrelated = FALSE; +- } +- +- if ( unrelated ) +- return TRUE; // don't block event +- } +- + bool block_event = FALSE; + switch ( event->type ) { + case ButtonPress: // disallow mouse/key events |