diff options
author | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2011-09-23 04:01:04 +0000 |
---|---|---|
committer | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2011-09-23 04:01:04 +0000 |
commit | 55c5a2f1080e304da8be5e7c9a004e1604c0211b (patch) | |
tree | 748d9a0e030636858e2dbb588225b5824634218d | |
parent | bed76819b90b5f40a3f2813ec053c898d7d658d6 (diff) | |
download | tdebase-55c5a2f1080e304da8be5e7c9a004e1604c0211b.tar.gz tdebase-55c5a2f1080e304da8be5e7c9a004e1604c0211b.zip |
Fix ksmserver flicker on logout with ARGB visuals
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdebase@1255031 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
-rw-r--r-- | ksmserver/shutdowndlg.cpp | 27 |
1 files changed, 13 insertions, 14 deletions
diff --git a/ksmserver/shutdowndlg.cpp b/ksmserver/shutdowndlg.cpp index a86887e9b..1ca240738 100644 --- a/ksmserver/shutdowndlg.cpp +++ b/ksmserver/shutdowndlg.cpp @@ -533,7 +533,19 @@ KSMShutdownIPFeedback::KSMShutdownIPFeedback() system("krootbacking &"); } - resize(0, 0); + // eliminate nasty flicker on first show + m_root.resize( kapp->desktop()->width(), kapp->desktop()->height() ); + TQImage blendedImage = TQImage( kapp->desktop()->width(), kapp->desktop()->height(), 32 ); + TQPainter p; + p.begin( &m_root ); + blendedImage.setAlphaBuffer(false); + p.drawImage( 0, 0, blendedImage ); + p.end(); + + setBackgroundPixmap( m_root ); + setGeometry( TQApplication::desktop()->geometry() ); + setBackgroundMode( TQWidget::NoBackground ); + setShown(true); } @@ -563,19 +575,6 @@ void KSMShutdownIPFeedback::slotPaintEffect() { TQPixmap pm = m_rootPixmap; if (mPixmapTimeout == 0) { - // eliminate nasty flicker on first show - m_root.resize( kapp->desktop()->width(), kapp->desktop()->height() ); - TQImage blendedImage = TQImage( kapp->desktop()->width(), kapp->desktop()->height(), 32 ); - TQPainter p; - p.begin( &m_root ); - blendedImage.setAlphaBuffer(false); - p.drawImage( 0, 0, blendedImage ); - p.end(); - - setBackgroundPixmap( m_root ); - setGeometry( TQApplication::desktop()->geometry() ); - setBackgroundMode( TQWidget::NoBackground ); - if (TQPaintDevice::x11AppDepth() != 32) { m_sharedRootPixmap->start(); } |