Review Request: The WebshortcutRunner did not check whether the search engines it provided were even enabled.

Nikolaus Waxweiler madigens at gmail.com
Thu Mar 4 02:20:41 CET 2010


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

(Updated 2010-03-04 01:20:41.786190)


Review request for Plasma.


Changes
-------

> * caching the matching Service objects in WebshortcutRunner::loadSyntaxes for use later in match to avoid going through them all again and again. doing this would make caching (and re-checking) m_enabledSearchEngines over and over unecessary, and that could just be kept local to loadSyntaxes.
Done.


Summary
-------

Solution: find out which ones are enabled and compare before presenting a match/advertising a search engine.

I added a QStringList m_enabledSearchEngines which is updated after every relevant change to sycoca and changed 2 places in the runner to query it: when building the runner-help-string to be displayed via krunner's [?]-button and when looking if the first word of the user's string could possibly be a shorthand for/keyword of a search engine.


Diffs (updated)
-----

  /branches/KDE/4.4/kdebase/workspace/plasma/generic/runners/webshortcuts/webshortcutrunner.h 1098255 
  /branches/KDE/4.4/kdebase/workspace/plasma/generic/runners/webshortcuts/webshortcutrunner.cpp 1098255 

Diff: http://reviewboard.kde.org/r/3097/diff


Testing
-------

Used rev. 1098255 as the starting point. Compiled it and overwrote the 4.4.1 .so I had installed. Because I'm lazy. I experienced some krunner-crashes, maybe because of this :p Didn't check though. Because I'm lazy.

I then typed the shorthand for some search engine I had disabled ("amg") to check whether the runner would respond. Nope. I then enabled it and ran kbuildsycoca4 manually (the web shortcut dialog in konq. is unreliable with this.. I think there's a few bug reports for this), and the runner responded appropriately. Other shortcuts worked fine.


Thanks,

Nikolaus



More information about the Plasma-devel mailing list