<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
    <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="http://git.reviewboard.kde.org/r/108902/">http://git.reviewboard.kde.org/r/108902/</a>
     </td>
    </tr>
   </table>
   <br />





 <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">well... probably it's me or it is rb... I cannot update your patch with mine. Here it is for now. If this is not enough, I'll push a remote branch about.

diff --git a/src/searchengine.cpp b/src/searchengine.cpp
index 742e9bc..28ab605 100644
--- a/src/searchengine.cpp
+++ b/src/searchengine.cpp
@@ -37,6 +37,8 @@ struct SearchEnginePrivate
 {
     SearchEnginePrivate() : isLoaded(false) {}
     bool isLoaded;
+    bool isEnabled;
+    bool usePreferredOnly;
     QString delimiter;
     KService::List favorites;
     KService::Ptr defaultEngine;
@@ -51,16 +53,15 @@ void SearchEngine::reload()
     KConfig config("kuriikwsfilterrc"); //Shared with konqueror
     KConfigGroup cg = config.group("General");
 
+    d->isEnabled = cg.readEntry("EnableWebShortcuts", true);
+    d->usePreferredOnly = cg.readEntry("UsePreferredWebShortcutsOnly", false);
+    
     //load delimiter
     d->delimiter = cg.readEntry("KeywordDelimiter", ":");
 
     // load favorite engines
     QStringList favoriteEngines;
-#if KDE_IS_VERSION(4,9,0)
     favoriteEngines = cg.readEntry("PreferredWebShortcuts", favoriteEngines);
-#else
-    favoriteEngines = cg.readEntry("FavoriteSearchEngines", favoriteEngines);
-#endif
 
     KService::List favorites;
     KService::Ptr service;
@@ -76,11 +77,7 @@ void SearchEngine::reload()
 
     // load default engine
     QString dse;
-#if KDE_IS_VERSION(4,9,0)
     dse = cg.readEntry("DefaultWebShortcut");
-#else
-    dse = cg.readEntry("DefaultSearchEngine");
-#endif
 
     d->defaultEngine = KService::serviceByDesktopPath(QString("searchproviders/%1.desktop").arg(dse));
 
@@ -117,10 +114,18 @@ KService::Ptr SearchEngine::defaultEngine()
 
 KService::Ptr SearchEngine::fromString(const QString &text)
 {
-    KService::List providers = KServiceTypeTrader::self()->query("SearchProvider");
+    KService::Ptr service;
+
+    // first, the easy part...
+    if (!d->isEnabled)
+        return service;
+
+    KService::List providers = (d->usePreferredOnly) 
+        ? SearchEngine::favorites()
+        : KServiceTypeTrader::self()->query("SearchProvider");
+    
     int i = 0;
     bool found = false;
-    KService::Ptr service;
     while (!found && i < providers.size())
     {
         QStringList list = providers.at(i)->property("Keys").toStringList();
</pre>
 <br />









<p>- Andrea</p>


<br />
<p>On February 11th, 2013, 8:59 a.m. UTC, Dimitrios Christidis wrote:</p>








<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('http://git.reviewboard.kde.org/static/rb/images/review_request_box_top_bg.ab6f3b1072c9.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
 <tr>
  <td>

<div>Review request for rekonq and Dimitrios Christidis.</div>
<div>By Dimitrios Christidis.</div>


<p style="color: grey;"><i>Updated Feb. 11, 2013, 8:59 a.m.</i></p>






<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
 <table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">The issue is partly described in bug #309470. Rekonq does not honor two configuration options for Web Shortcuts: "EnableWebShortcuts" and "UsePreferredWebShortcutsOnly".

The first part of the patch attempts to address this issue. I am not particularly proud of the current solution; please advise me on proper variable naming and overall code structure. Furthermore, I am not aware of the correct way to compare two KService::Ptr objects. I ended up comparing the filename of the desktop entry, but is there a better way? Is it even correct? Lastly, should SearchEngine::favorites() be modified as well? If not, preferred engine will still appear in the suggestions, but won't be usable.

The second part of the patch is about the change of "Search Engines" to "Web Shortcuts". Should the conditional compilation directives be removed or is it too early?


This review will be split into two commits.</pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">+ With EnableWebShortcuts=false:
Typing a web shortcut followed by the delimiter does not suggest any engine. Pressing Enter uses the default engine.

+ With EnableWebShortcuts=true and UsePreferredWebShortcutsOnly=true:
Engines that are not preferred are not used.

+ With EnableWebShortcuts=true and UsePreferredWebShortcutsOnly=false:
Works as before.</pre>
  </td>
 </tr>
</table>



<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Bugs: </b>


 <a href="/show_bug.cgi?id=309470">309470</a>


</div>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>src/settings/settingsdialog.cpp <span style="color: grey">(11575f7)</span></li>

 <li>src/searchengine.cpp <span style="color: grey">(742e9bc)</span></li>

</ul>

<p><a href="http://git.reviewboard.kde.org/r/108902/diff/" style="margin-left: 3em;">View Diff</a></p>







  </td>
 </tr>
</table>








  </div>
 </body>
</html>