From cfe4ba6711c12ea9ad1ddba4cbd60e964715170b Mon Sep 17 00:00:00 2001 From: Nickolay V. Shmyrev Date: Sun, 07 Sep 2008 16:27:14 +0000 Subject: Patch for case unsensitive page label match by Michael Lee. See bug 2008-09-07 Nickolay V. Shmyrev * shell/ev-page-cache.c (ev_page_cache_set_page_label): Patch for case unsensitive page label match by Michael Lee. See bug #550136. * shell/ev-page-action.c (create_tool_item): * test/Makefile.am: * test/test1.py: * test/test4.py: * test/test5.py: Added test for the above and updated other tests. svn path=/trunk/; revision=3161 --- (limited to 'shell') diff --git a/shell/ev-page-action.c b/shell/ev-page-action.c index ef87e75..cc3615a 100644 --- a/shell/ev-page-action.c +++ b/shell/ev-page-action.c @@ -163,6 +163,7 @@ create_tool_item (GtkAction *action) { EvPageActionWidget *proxy; GtkWidget *hbox; + AtkObject *obj; proxy = g_object_new (ev_page_action_widget_get_type (), NULL); gtk_container_set_border_width (GTK_CONTAINER (proxy), 6); @@ -172,6 +173,9 @@ create_tool_item (GtkAction *action) gtk_box_set_spacing (GTK_BOX (hbox), 6); proxy->entry = gtk_entry_new (); + obj = gtk_widget_get_accessible (proxy->entry); + atk_object_set_name (obj, "page-label-entry"); + g_signal_connect(proxy->entry, "scroll-event",G_CALLBACK(page_scroll_cb),action); gtk_widget_add_events(GTK_WIDGET(proxy->entry),GDK_BUTTON_MOTION_MASK); gtk_entry_set_width_chars (GTK_ENTRY (proxy->entry), 5); diff --git a/shell/ev-page-cache.c b/shell/ev-page-cache.c index bbddbbc..a43876a 100644 --- a/shell/ev-page-cache.c +++ b/shell/ev-page-cache.c @@ -482,6 +482,15 @@ ev_page_cache_set_page_label (EvPageCache *page_cache, } } + /* Second, look for a match with case insensitively */ + for (i = 0; i < page_cache->n_pages; i++) { + if (page_cache->page_labels[i] != NULL && + ! strcasecmp (page_label, page_cache->page_labels[i])) { + ev_page_cache_set_current_page (page_cache, i); + return TRUE; + } + } + /* Next, parse the label, and see if the number fits */ value = strtol (page_label, &endptr, 10); if (endptr[0] == '\0') { -- cgit v0.9.1