diff options
author | Timothy Pearson <kb9vqf@pearsoncomputing.net> | 2013-05-07 00:12:51 -0500 |
---|---|---|
committer | Timothy Pearson <kb9vqf@pearsoncomputing.net> | 2013-05-07 00:12:51 -0500 |
commit | 3421d01bb00aaf52883a4d21eade96e9c663e05d (patch) | |
tree | f294c52c8d1d12774629a2d410ec157504af3f57 /tdm/kfrontend/themer/tdmitem.cpp | |
parent | 9804217b51b058fed43a060a746f543da044b2a5 (diff) | |
download | tdebase-3421d01bb00aaf52883a4d21eade96e9c663e05d.tar.gz tdebase-3421d01bb00aaf52883a4d21eade96e9c663e05d.zip |
Fix TDM hang in certain circumstances when themed greeter is deleted
This resolves Bug 1453
Resolve themed greeter drawing inconsistencies between composited and non-composited mode
Diffstat (limited to 'tdm/kfrontend/themer/tdmitem.cpp')
-rw-r--r-- | tdm/kfrontend/themer/tdmitem.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/tdm/kfrontend/themer/tdmitem.cpp b/tdm/kfrontend/themer/tdmitem.cpp index 91ab5efda..006a77d49 100644 --- a/tdm/kfrontend/themer/tdmitem.cpp +++ b/tdm/kfrontend/themer/tdmitem.cpp @@ -286,17 +286,18 @@ KdmItem::setGeometry( const TQRect &newGeometry, bool force ) void KdmItem::paint( TQPainter *p, const TQRect &rect ) { - if (isHidden()) + if (isHidden()) { return; + } if (myWidget || (myLayoutItem && myLayoutItem->widget())) { - // TDEListView because it's missing a Q_OBJECT' + // TDEListView because it's missing a Q_OBJECT // FIXME: This is a nice idea in theory, but in practice it is // very confusing for the user not to see the empty list box // delineated from the rest of the greeter. // Maybe set a darker version of the background instead of an exact copy? if ( myWidget && myWidget->isA( "TDEListView" ) ) { - if ((_compositor.isEmpty()) || (!argb_visual_available)) { + if (!argb_visual_available) { // Software blend only (no compositing support) TQPixmap copy( myWidget->size() ); kdDebug() << myWidget->geometry() << " " << area << " " << myWidget->size() << endl; @@ -371,13 +372,15 @@ KdmItem::paint( TQPainter *p, const TQRect &rect ) p->drawRect( area ); #endif - if (myLayoutItem) + if (myLayoutItem) { return; + } // Dispatch paint events to children TQValueList<KdmItem *>::Iterator it; - for (it = m_children.begin(); it != m_children.end(); ++it) + for (it = m_children.begin(); it != m_children.end(); ++it) { (*it)->paint( p, rect ); + } } |