diff --git a/libkscreensaver/kscreensaver.cpp b/libkscreensaver/kscreensaver.cpp index 2b45c9a0f..4c7b343cb 100644 --- a/libkscreensaver/kscreensaver.cpp +++ b/libkscreensaver/kscreensaver.cpp @@ -47,6 +47,8 @@ KScreenSaver::KScreenSaver( WId id ) : TQWidget() unsigned int w = 0; unsigned int h = 0; + XSync(tqt_xdisplay(), false); + d = new KScreenSaverPrivate; d->owner = TQT_TQWIDGET(find( id )); if ( d->owner ) diff --git a/tdeui/krootpixmap.cpp b/tdeui/krootpixmap.cpp index 539a45e27..3530b5d45 100644 --- a/tdeui/krootpixmap.cpp +++ b/tdeui/krootpixmap.cpp @@ -234,8 +234,9 @@ void KRootPixmap::repaint(bool force) m_Rect = TQRect(p1, p2); #ifdef Q_WS_X11 m_Desk = KWin::windowInfo(m_pWidget->topLevelWidget()->winId()).desktop(); - if (m_Desk == NET::OnAllDesktops) + if ((m_Desk == NET::OnAllDesktops) || (m_Desk == 0)) { m_Desk = currentDesktop(); + } // KSharedPixmap will correctly generate a tile for us. m_pPixmap->loadFromShared(pixmapName(m_Desk), m_Rect);