[giggle] Reenable case sensitive search



commit 30b95eaad8c3430f8dc0bc7d488b1f71418b830a
Author: Javier Jardón <jjardon gnome org>
Date:   Sat Nov 20 09:35:28 2010 +0100

    Reenable case sensitive search

 libgiggle/giggle-searchable.c |    5 +++--
 libgiggle/giggle-searchable.h |    6 ++++--
 src/giggle-view-file.c        |    8 +++++---
 src/giggle-view-history.c     |    9 ++++++---
 src/giggle-window.c           |    7 +++++--
 5 files changed, 23 insertions(+), 12 deletions(-)
---
diff --git a/libgiggle/giggle-searchable.c b/libgiggle/giggle-searchable.c
index fc1c462..019302a 100644
--- a/libgiggle/giggle-searchable.c
+++ b/libgiggle/giggle-searchable.c
@@ -52,7 +52,8 @@ gboolean
 giggle_searchable_search (GiggleSearchable      *searchable,
 			  const gchar           *search_term,
 			  GiggleSearchDirection  direction,
-			  gboolean               full_search)
+                          gboolean               full_search,
+                          gboolean               case_sensitive)
 {
 	GiggleSearchableIface *iface;
 	gboolean result = FALSE;
@@ -68,7 +69,7 @@ giggle_searchable_search (GiggleSearchable      *searchable,
 
 		casefold_search_term = g_utf8_casefold (search_term, -1);
 		result = (* iface->search) (searchable, casefold_search_term,
-					    direction, full_search);
+					    direction, full_search, case_sensitive);
 
 		g_free (casefold_search_term);
 	}
diff --git a/libgiggle/giggle-searchable.h b/libgiggle/giggle-searchable.h
index d9c219e..bd2aa95 100644
--- a/libgiggle/giggle-searchable.h
+++ b/libgiggle/giggle-searchable.h
@@ -44,7 +44,8 @@ struct GiggleSearchableIface {
 	gboolean (* search) (GiggleSearchable      *searchable,
 			     const gchar           *search_term,
 			     GiggleSearchDirection  direction,
-			     gboolean               full_search);
+			     gboolean               full_search,
+	                     gboolean               case_insensitive);
 	void     (* cancel) (GiggleSearchable      *searchable);
 };
 
@@ -52,7 +53,8 @@ GType      giggle_searchable_get_type (void);
 gboolean   giggle_searchable_search   (GiggleSearchable      *searchable,
 				       const gchar           *search_term,
 				       GiggleSearchDirection  direction,
-				       gboolean               full_search);
+                                       gboolean               full_search,
+                                       gboolean               case_sensitive);
 
 void       giggle_searchable_cancel   (GiggleSearchable      *searchable);
 
diff --git a/src/giggle-view-file.c b/src/giggle-view-file.c
index 5224de8..deff753 100644
--- a/src/giggle-view-file.c
+++ b/src/giggle-view-file.c
@@ -1239,7 +1239,8 @@ static gboolean
 view_file_search (GiggleSearchable      *searchable,
 		  const gchar           *search_term,
 		  GiggleSearchDirection  direction,
-		  gboolean               full_search)
+                  gboolean               full_search,
+                  gboolean               case_sensitive)
 {
 	GiggleViewFilePriv   *priv;
 	GtkTextSearchFlags    flags;
@@ -1251,8 +1252,9 @@ view_file_search (GiggleSearchable      *searchable,
 
 	priv = GET_PRIV (searchable);
 
-	flags = GTK_TEXT_SEARCH_TEXT_ONLY |
-	        GTK_TEXT_SEARCH_CASE_INSENSITIVE;
+	flags = GTK_TEXT_SEARCH_TEXT_ONLY;
+	if (case_sensitive == FALSE)
+		flags |= GTK_TEXT_SEARCH_CASE_INSENSITIVE;
 
 	buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (priv->source_view));
 	g_object_get (buffer, "cursor-position", &cursor_position, NULL);
diff --git a/src/giggle-view-history.c b/src/giggle-view-history.c
index 30cc0d2..20b2cfa 100644
--- a/src/giggle-view-history.c
+++ b/src/giggle-view-history.c
@@ -671,19 +671,22 @@ static gboolean
 view_history_search (GiggleSearchable      *searchable,
 		     const gchar           *search_term,
 		     GiggleSearchDirection  direction,
-		     gboolean               full_search)
+		     gboolean               full_search,
+                     gboolean               case_sensitive)
 {
 	GiggleViewHistoryPriv *priv;
 
 	priv = GIGGLE_VIEW_HISTORY (searchable)->priv;
 
 	if (!giggle_searchable_search (GIGGLE_SEARCHABLE (priv->revision_list),
-				       search_term, direction, full_search)) {
+	                               search_term, direction,
+	                               full_search, case_sensitive)) {
 		return FALSE;
 	}
 
 	if (giggle_searchable_search (GIGGLE_SEARCHABLE (priv->revision_view),
-				      search_term, direction, full_search)) {
+	                              search_term, direction,
+	                              full_search, case_sensitive)) {
 		/* search term is contained in the
 		 * revision description, expand it
 		 */
diff --git a/src/giggle-window.c b/src/giggle-window.c
index cec040a..62627f0 100644
--- a/src/giggle-window.c
+++ b/src/giggle-window.c
@@ -777,7 +777,7 @@ window_find (EggFindBar            *find_bar,
 	GiggleWindowPriv *priv;
 	GiggleView       *view;
 	const gchar      *search_string;
-	gboolean          full_search;
+	gboolean          full_search, case_sensitive;
 
 	priv = window->priv;
 
@@ -791,8 +791,11 @@ window_find (EggFindBar            *find_bar,
 		full_search = gtk_toggle_tool_button_get_active (
 			GTK_TOGGLE_TOOL_BUTTON (priv->full_search));
 
+		case_sensitive = egg_find_bar_get_case_sensitive (find_bar);
+
 		giggle_searchable_search (GIGGLE_SEARCHABLE (view),
-					  search_string, direction, full_search);
+					  search_string, direction,
+		                          full_search, case_sensitive);
 	}
 }
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]