r3440 - in trunk/src/target/OM-2007.2/applications/openmoko-appmanager2: . src
thomas at sita.openmoko.org
thomas at sita.openmoko.org
Mon Nov 19 15:30:54 CET 2007
Author: thomas
Date: 2007-11-19 15:30:53 +0100 (Mon, 19 Nov 2007)
New Revision: 3440
Modified:
trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/ChangeLog
trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/navigation-area.c
trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/search-bar.c
Log:
* src/navigation-area.c: (model_filter_func),
(navigation_area_new): Enable fixed height rows in treeview to speed up
filtering
* src/search-bar.c: (text_changed_cb): Fast path blank search
Modified: trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/ChangeLog
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/ChangeLog 2007-11-19 14:01:02 UTC (rev 3439)
+++ trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/ChangeLog 2007-11-19 14:30:53 UTC (rev 3440)
@@ -1,3 +1,11 @@
+2007-11-19 Thomas Wood <thomas at openedhand.com>
+
+ * src/navigation-area.c: (model_filter_func),
+ (navigation_area_new): Enable fixed height rows in treeview to speed up
+ filtering
+
+ * src/search-bar.c: (text_changed_cb): Fast path blank search
+
2007-11-19 Thomas Wood <thomas at openedhand.com>
* src/navigation-area.c: (model_filter_func):
Modified: trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/navigation-area.c
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/navigation-area.c 2007-11-19 14:01:02 UTC (rev 3439)
+++ trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/navigation-area.c 2007-11-19 14:30:53 UTC (rev 3440)
@@ -90,7 +90,11 @@
}
else if (data->searchbar_search_type == SEARCH_ON_NAME)
{
- return (g_strrstr (pkg->name, data->searchbar_needle));
+ /* fast path initial blank search */
+ if (g_str_equal ("", data->searchbar_needle))
+ return FALSE;
+
+ return (g_strrstr (pkg->name, data->searchbar_needle) != NULL);
}
else if (data->searchbar_search_type == SEARCH_ON_STATUS)
{
@@ -123,9 +127,10 @@
gtk_tree_view_set_enable_search (GTK_TREE_VIEW (treeview), FALSE);
/* Add the status as the first column. */
+ /*
col = gtk_tree_view_column_new ();
gtk_tree_view_column_set_title (col, _("S"));
-
+ */
/*
renderer = gtk_cell_renderer_pixbuf_new ();
gtk_tree_view_column_pack_start (col, renderer, FALSE);
@@ -142,7 +147,7 @@
renderer = gtk_cell_renderer_text_new ();
gtk_tree_view_column_pack_start (col, renderer, TRUE);
- gtk_tree_view_column_set_sizing (col, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
+ gtk_tree_view_column_set_sizing (col, GTK_TREE_VIEW_COLUMN_FIXED);
gtk_tree_view_column_set_attributes (col, renderer, "text", COL_NAME, NULL);
g_object_set (G_OBJECT (renderer), "ellipsize", PANGO_ELLIPSIZE_END, NULL);
@@ -162,6 +167,9 @@
gtk_container_add (GTK_CONTAINER (scrollwindow), treeview);
application_manager_data_set_tvpkglist (appdata, treeview);
+ /* set fixed height mode to speed up filtering */
+ gtk_tree_view_set_fixed_height_mode (GTK_TREE_VIEW (treeview), TRUE);
+
/* Connect signal to the treeview */
g_signal_connect (gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview)),
"changed", G_CALLBACK (on_selection_changed), appdata);
Modified: trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/search-bar.c
===================================================================
--- trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/search-bar.c 2007-11-19 14:01:02 UTC (rev 3439)
+++ trunk/src/target/OM-2007.2/applications/openmoko-appmanager2/src/search-bar.c 2007-11-19 14:30:53 UTC (rev 3440)
@@ -46,7 +46,6 @@
g_debug ("Search = %s", needle);
-
GTimer *timer = g_timer_new ();
filter = gtk_tree_view_get_model (GTK_TREE_VIEW (data->tvpkglist));
g_object_ref (G_OBJECT (filter));
More information about the commitlog
mailing list