Diffstat (limited to 'libopie2/opiepim/backend/ocontactaccessbackend.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | libopie2/opiepim/backend/ocontactaccessbackend.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/libopie2/opiepim/backend/ocontactaccessbackend.cpp b/libopie2/opiepim/backend/ocontactaccessbackend.cpp index 6ac9934..e942905 100644 --- a/libopie2/opiepim/backend/ocontactaccessbackend.cpp +++ b/libopie2/opiepim/backend/ocontactaccessbackend.cpp @@ -253,37 +253,36 @@ UIDArray OPimContactAccessBackend::sorted( const UIDArray& ar, bool asc, int sor OPimContact contact = find( ar[i], ar, i, Frontend::Forward ); if ( contact.isEmpty() ) continue; contactPassed = true; - // Filter all Contacts which have any category if ( (filter & OPimContactAccess::DoNotShowWithCategory) ? true : false ){ if ( !contact.categories().isEmpty() ) continue; - } + } else { + if ( (filter & OPimContactAccess::FilterCategory) ? true : false ){ /* show category */ /* -1 == unfiled */ for ( uint cat_nu = 0; cat_nu < cat_count; ++cat_nu ) { cat = categories[cat_nu]; - if ( (filter & OPimContactAccess::FilterCategory) ? true : false ){ if ( cat == -1 ) { // We should search unfiled contacts. // Unfiled categories have no category set, thus continue if // this contact has no empty category. if( !contact.categories().isEmpty() ) contactPassed = false; } else if ( cat != 0 ) if ( !contact.categories().contains( cat ) ) contactPassed = false; } } - + } /* * If none of the Categories matched * continue */ if ( !contactPassed ) continue; |