summaryrefslogtreecommitdiffstats
path: root/konqueror/iconview/konq_iconview.cc
diff options
context:
space:
mode:
Diffstat (limited to 'konqueror/iconview/konq_iconview.cc')
-rw-r--r--konqueror/iconview/konq_iconview.cc26
1 files changed, 18 insertions, 8 deletions
diff --git a/konqueror/iconview/konq_iconview.cc b/konqueror/iconview/konq_iconview.cc
index d90fe5290..288984fe3 100644
--- a/konqueror/iconview/konq_iconview.cc
+++ b/konqueror/iconview/konq_iconview.cc
@@ -555,10 +555,15 @@ void KonqKfmIconView::slotSelect()
m_pIconView->blockSignals( true );
TQIconViewItem *it = m_pIconView->firstItem();
- while ( it )
- {
- if ( re.exactMatch( it->text() ) )
- it->setSelected( true, true );
+ while ( it ) {
+ if ( it->isVisible() ) {
+ if ( re.exactMatch( it->text() ) ) {
+ it->setSelected( true, true );
+ }
+ }
+ else {
+ it->setSelected( false, true );
+ }
it = it->nextItem();
}
@@ -582,10 +587,15 @@ void KonqKfmIconView::slotUnselect()
m_pIconView->blockSignals( true );
TQIconViewItem *it = m_pIconView->firstItem();
- while ( it )
- {
- if ( re.exactMatch( it->text() ) )
- it->setSelected( false, true );
+ while ( it ) {
+ if ( it->isVisible() ) {
+ if ( re.exactMatch( it->text() ) ) {
+ it->setSelected( false, true );
+ }
+ }
+ else {
+ it->setSelected( false, true );
+ }
it = it->nextItem();
}