]> spindle.queued.net Git - midori/commitdiff
Include previous searches in History panel items
authorChristian Dywan <christian@twotoasts.de>
Thu, 25 Feb 2010 22:09:31 +0000 (23:09 +0100)
committerChristian Dywan <christian@twotoasts.de>
Sun, 28 Feb 2010 23:24:46 +0000 (00:24 +0100)
midori/main.c
midori/midori-locationaction.c
panels/midori-history.c

index 70eb1b064018c952afc52612361c7c39b56c602e..9e2f3770e0d48dba0460ca42edf42c113c73d623 100644 (file)
@@ -373,9 +373,9 @@ midori_history_initialize (KatzeArray*  array,
                       "CREATE TABLE IF NOT EXISTS "
                       "search (keywords text, uri text, day integer);"
                       "CREATE TEMP VIEW history_view AS SELECT "
-                      "1 AS type, uri, title FROM history;"
+                      "1 AS type, uri, title, day FROM history;"
                       "CREATE TEMP VIEW search_view AS SELECT "
-                      "2 AS type, uri, keywords AS title FROM search;",
+                      "2 AS type, uri, keywords AS title, day FROM search;",
                       NULL, NULL, errmsg) != SQLITE_OK)
         return NULL;
 
index b10a9fc8566ab0bdbfe7d0d8512e0a28b8a88389..f86260cb3fbcac0924952045dc09cda2e2aada9f 100644 (file)
@@ -361,7 +361,7 @@ midori_location_action_popup_timeout_cb (gpointer data)
         sqlcmd = "SELECT type, uri, title, count() AS ct FROM history_view "
                  "WHERE uri LIKE ?1 OR title LIKE ?1 GROUP BY uri "
                  "UNION ALL "
-                 "SELECT type, uri, title, count() AS ct FROM search_view "
+                 "SELECT type, replace(uri, '%s', title) AS uri, title, count() AS ct FROM search_view "
                  "WHERE title LIKE ?1 GROUP BY uri "
                  "ORDER BY ct DESC LIMIT ?2";
         sqlite3_prepare_v2 (db, sqlcmd, strlen (sqlcmd) + 1, &stmt, NULL);
@@ -450,12 +450,10 @@ midori_location_action_popup_timeout_cb (gpointer data)
                 FAVICON_COL, icon, -1);
         else if (type == 2 /* search_view */)
         {
-            gchar* search_uri = sokoke_search_uri ((gchar*)uri, (gchar*)title);
             gchar* search_title = g_strdup_printf (_("Search for %s"), title);
             gtk_list_store_insert_with_values (store, NULL, matches,
-                URI_COL, search_uri, TITLE_COL, search_title, YALIGN_COL, 0.25,
+                URI_COL, uri, TITLE_COL, search_title, YALIGN_COL, 0.25,
                 STYLE_COL, 1, FAVICON_COL, icon, -1);
-            g_free (search_uri);
             g_free (search_title);
         }
 
index 0d6c186ed7249804f00a9899385af87fc717dc71..41b19514ad3a1487c8a7f34af6466b80c4fbaae0 100644 (file)
@@ -210,9 +210,12 @@ midori_history_read_from_db (MidoriHistory* history,
     {
         gchar* filterstr;
 
-        sqlcmd = "SELECT uri, title, date "
-                 "FROM history WHERE uri LIKE ? or title LIKE ? "
-                 "GROUP BY uri ORDER BY date ASC";
+        sqlcmd = "SELECT uri, title, day FROM history_view "
+                 "WHERE uri LIKE ? or title LIKE ? GROUP BY uri "
+                 "UNION ALL "
+                 "SELECT replace(uri, '%s', title) AS uri, title, day "
+                 "FROM search_view WHERE title LIKE ?1 GROUP BY uri "
+                 "ORDER BY day ASC";
         result = sqlite3_prepare_v2 (db, sqlcmd, -1, &statement, NULL);
         filterstr = g_strdup_printf ("%%%s%%", filter);
         sqlite3_bind_text (statement, 1, filterstr, -1, g_free);