Review Request: Modify the KUrilFilter API once more to accomodate unforseen use case...

Dawit Alemayehu adawit at kde.org
Sun Sep 5 23:21:39 BST 2010


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://svn.reviewboard.kde.org/r/5172/
-----------------------------------------------------------

(Updated 2010-09-05 22:21:38.757674)


Review request for kdelibs.


Changes
-------

- Fixed a major logic errors in the kuriikwsfilter.
- Renamed the newly added search filter options flags:
           RetreiveAllSearchProvidersOnly -> RetreiveSearchProvidersOnly
           RetreivePreferredOrAllSearchProvidersOnly -> RetreiveAvailableSearchProvidersOnly

If there are no suggestions or objections this patch will be commited into trunk next Tuesday or so...


Summary
-------

The attached patch does the following:

#1. Adds setAlwaysReturnPreferredSearchProvidersOn/isAlwaysReturnPreferredSearchProvidersOn to ensure that the kuriikwsfilter plugin returns the preferred provider search engine list when no default search engine is specified. Currently it fails to do so and that behavior will not change unless you set the flag using the aforementioned function. 
With this change instead of having to do the following:

KUriFilterData filterData(foo);
filterData.setAlternateDefaultSearchProvider("google"); // hmm... would google be there ?
if (KUriFilter::self()->filterUri(filterData, QStringList() << "kuriikwsfilter")
  // do something here...

With

KUriFilterData filterData(foo);
filterData.setAlwaysReturnPreferredSearchProvidersOn(true);
if (KUriFilter::self()->filterUri(filterData, QStringList() << "kuriikwsfilter")
  // do something here...

#2. Deprecates the newly added function filterSearchUri(KUriFilterData&) in favor of one that accepts an enum filterSearchUri(KUriFilterData&, SearchFilterTypes types). That way instead of the caller having to know what "kuriikwsfilter' or 'kurisearchfilter' plugins do, they can specify "NormalTextFilter" or "WebShortcutFilter" or an OR combination of both. This change makes it possible to do search filtering without having to worry about which filters to use. For example, the last if statement from the above example would become:

if (KUriFilter::self()->filterSearchUri(filterData, KUriFilter::NormalTextFilter))
   // do something here...


Diffs (updated)
-----

  /trunk/KDE/kdebase/runtime/kurifilter-plugins/ikws/kuriikwsfilter.h 1171976 
  /trunk/KDE/kdebase/runtime/kurifilter-plugins/ikws/kuriikwsfilter.cpp 1171976 
  /trunk/KDE/kdebase/runtime/kurifilter-plugins/shorturi/kshorturifilter.h 1171976 
  /trunk/KDE/kdebase/runtime/kurifilter-plugins/shorturi/kshorturifilter.cpp 1171976 
  /trunk/KDE/kdelibs/kio/kio/kurifilter.h 1171976 
  /trunk/KDE/kdelibs/kio/kio/kurifilter.cpp 1171976 

Diff: http://svn.reviewboard.kde.org/r/5172/diff


Testing
-------

kurifiltertest provides the same result as without this patch (8 passed, 1 failed). 
Some test cases will need to be added for these changes as well.


Thanks,

Dawit

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20100905/ef80f8a2/attachment.htm>


More information about the kde-core-devel mailing list