[Xfce4-commits] <midori:master> Disable Save/ add button in bookmark dialog if address lacks protocol
Christian Dywan
noreply at xfce.org
Sat Sep 19 17:28:01 CEST 2009
Updating branch refs/heads/master
to 16e00c379e03f6d3e9bc127894e710c1138e76a1 (commit)
from eaba9f0acf578c9bb6b15ac04cd150e6e8960263 (commit)
commit 16e00c379e03f6d3e9bc127894e710c1138e76a1
Author: Christian Dywan <christian at twotoasts.de>
Date: Sat Sep 19 17:25:10 2009 +0200
Disable Save/ add button in bookmark dialog if address lacks protocol
midori/midori-browser.c | 24 ++++++++++++++++++++++++
1 files changed, 24 insertions(+), 0 deletions(-)
diff --git a/midori/midori-browser.c b/midori/midori-browser.c
index 649119e..e4d3faf 100644
--- a/midori/midori-browser.c
+++ b/midori/midori-browser.c
@@ -601,6 +601,26 @@ midori_view_notify_statusbar_text_cb (MidoriView* view,
}
}
+static gboolean
+midori_browser_edit_bookmark_uri_focus_in_cb (GtkEntry* entry,
+ GdkEventFocus* event,
+ GtkDialog* dialog)
+{
+ gtk_dialog_set_response_sensitive (dialog, GTK_RESPONSE_ACCEPT, TRUE);
+ return FALSE;
+}
+
+static gboolean
+midori_browser_edit_bookmark_uri_focus_out_cb (GtkEntry* entry,
+ GdkEventFocus* event,
+ GtkDialog* dialog)
+{
+ const gchar* uri = gtk_entry_get_text (entry);
+ gtk_dialog_set_response_sensitive (dialog, GTK_RESPONSE_ACCEPT,
+ uri && g_strstr_len (uri, -1, "://"));
+ return FALSE;
+}
+
/* Private function, used by MidoriBookmarks and MidoriHistory */
/* static */ void
midori_browser_edit_bookmark_dialog_new (MidoriBrowser* browser,
@@ -694,6 +714,10 @@ midori_browser_edit_bookmark_dialog_new (MidoriBrowser* browser,
entry_uri = gtk_entry_new ();
gtk_entry_set_activates_default (GTK_ENTRY (entry_uri), TRUE);
gtk_entry_set_text (GTK_ENTRY (entry_uri), katze_item_get_uri (bookmark));
+ g_signal_connect (entry_uri, "focus-in-event",
+ G_CALLBACK (midori_browser_edit_bookmark_uri_focus_in_cb), dialog);
+ g_signal_connect (entry_uri, "focus-out-event",
+ G_CALLBACK (midori_browser_edit_bookmark_uri_focus_out_cb), dialog);
gtk_box_pack_start (GTK_BOX (hbox), entry_uri, TRUE, TRUE, 0);
gtk_container_add (GTK_CONTAINER (GTK_DIALOG (dialog)->vbox), hbox);
gtk_widget_show_all (hbox);
More information about the Xfce4-commits
mailing list