From 6b8fbfe2f3acb42e9dba650fcb1172c8aa02ba16 Mon Sep 17 00:00:00 2001 From: "Nickolay V. Shmyrev" Date: Thu, 18 Aug 2005 06:24:58 +0000 Subject: [PATCH] Fix sed expression for FreeBSD. Thanks to Joe Marcus Clark * configure.ac: Fix sed expression for FreeBSD. Thanks to Joe Marcus Clark * shell/eggfindbar.c: (entry_activate_callback), (entry_changed_callback), (egg_find_bar_init), (egg_find_bar_set_search_string): Made findbar buttons unsensitive if there is no text in entry. Fix for the bug 313285. --- ChangeLog | 12 ++++++++++++ configure.ac | 2 +- shell/eggfindbar.c | 17 ++++++++++++++--- 3 files changed, 27 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index 9abd1826..3f96e10c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +2005-08-18 Nickolay V. Shmyrev + + * configure.ac: Fix sed expression for FreeBSD. Thanks + to Joe Marcus Clark + + * shell/eggfindbar.c: (entry_activate_callback), + (entry_changed_callback), (egg_find_bar_init), + (egg_find_bar_set_search_string): + + Made findbar buttons unsensitive if there is no text in + entry. Fix for the bug 313285. + 2005-08-17 Carlos Garcia Campos * ps/ps-document.c: Use g_filename_display_name for displaying diff --git a/configure.ac b/configure.ac index 9479ff50..541b6367 100644 --- a/configure.ac +++ b/configure.ac @@ -75,7 +75,7 @@ if test "x$enable_dbus" = "xyes" ; then AC_DEFINE([ENABLE_DBUS],[1],[Define if DBUS support is enabled]) - DBUS_VERSION=`$PKG_CONFIG --modversion dbus-glib-1 | sed 's/0\.\([[0-9]]*\)\.\?\([[0-9]]*\)/\1/'` + DBUS_VERSION=`$PKG_CONFIG --modversion dbus-glib-1 | sed 's/0\.\([[0-9]]*\)\.\{0,1\}\([[0-9]]*\)/\1/'` AC_DEFINE_UNQUOTED(DBUS_VERSION, $DBUS_VERSION, [DBUS version.]) fi diff --git a/shell/eggfindbar.c b/shell/eggfindbar.c index 063a220b..3a42ef6f 100644 --- a/shell/eggfindbar.c +++ b/shell/eggfindbar.c @@ -236,7 +236,8 @@ entry_activate_callback (GtkEntry *entry, /* We activate the "next" button here so we'll get a nice animation */ - gtk_widget_activate (priv->next_button); + if (find_bar->priv->search_string != NULL) + gtk_widget_activate (priv->next_button); } static void @@ -252,7 +253,7 @@ entry_changed_callback (GtkEntry *entry, text = g_strdup (gtk_entry_get_text (entry)); egg_find_bar_set_search_string (find_bar, text); - + g_free (text); } @@ -305,8 +306,11 @@ egg_find_bar_init (EggFindBar *find_bar) priv->previous_button = gtk_button_new_with_mnemonic (_("_Previous")); gtk_button_set_focus_on_click (GTK_BUTTON (priv->previous_button), FALSE); + gtk_widget_set_sensitive (GTK_WIDGET (priv->previous_button), FALSE); + priv->next_button = gtk_button_new_with_mnemonic (_("_Next")); gtk_button_set_focus_on_click (GTK_BUTTON (priv->next_button), FALSE); + gtk_widget_set_sensitive (GTK_WIDGET (priv->next_button), FALSE); image_back = gtk_image_new_from_stock (GTK_STOCK_GO_BACK, GTK_ICON_SIZE_BUTTON); @@ -583,6 +587,8 @@ egg_find_bar_set_search_string (EggFindBar *find_bar, (old && search_string && strcmp (old, search_string) != 0)) { + gboolean not_empty; + priv->search_string = g_strdup (search_string); g_free (old); @@ -590,7 +596,12 @@ egg_find_bar_set_search_string (EggFindBar *find_bar, priv->search_string ? priv->search_string : ""); - + + not_empty = (search_string == NULL) ? FALSE : TRUE; + + gtk_widget_set_sensitive (GTK_WIDGET (find_bar->priv->next_button), not_empty); + gtk_widget_set_sensitive (GTK_WIDGET (find_bar->priv->previous_button), not_empty); + g_object_notify (G_OBJECT (find_bar), "search_string"); } -- 2.43.0