|
|
|
@ -3472,6 +3472,17 @@ int TQApplication::x11ProcessEvent( XEvent* event )
|
|
|
|
|
// update the size for desktop widget
|
|
|
|
|
int scr = XRRRootToScreen( appDpy, event->xany.window );
|
|
|
|
|
TQWidget *w = desktop()->screen( scr );
|
|
|
|
|
|
|
|
|
|
if (w) {
|
|
|
|
|
int widgetScr = -1;
|
|
|
|
|
// make sure the specified widget is on the same screen that received the XRandR event
|
|
|
|
|
XWindowAttributes widgetAttr;
|
|
|
|
|
XGetWindowAttributes(appDpy, w->winId(), &widgetAttr);
|
|
|
|
|
if (widgetAttr.screen) {
|
|
|
|
|
widgetScr = XScreenNumberOfScreen(widgetAttr.screen);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ((widgetScr < 0) || (widgetScr == scr)) {
|
|
|
|
|
TQSize oldSize( w->size() );
|
|
|
|
|
w->crect.setWidth( DisplayWidth( appDpy, scr ) );
|
|
|
|
|
w->crect.setHeight( DisplayHeight( appDpy, scr ) );
|
|
|
|
@ -3481,6 +3492,8 @@ int TQApplication::x11ProcessEvent( XEvent* event )
|
|
|
|
|
emit desktop()->resized( scr );
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
#endif // QT_NO_XRANDR
|
|
|
|
|
|
|
|
|
|
if ( !widget ) { // don't know this windows
|
|
|
|
|