From cda65a33a1885e61cbaafb5e98e56c742a4828b0 Mon Sep 17 00:00:00 2001 From: Marco Pesenti Gritti Date: Sat, 8 Nov 2003 17:35:30 +0000 Subject: Focus history entry on _show. Do not try to update paste menu item using 2003-11-08 Marco Pesenti Gritti * src/bookmarks/ephy-bookmarks-editor.c: (ephy_bookmarks_editor_update_menu): * src/ephy-history-window.c: (ephy_history_window_show), (ephy_history_window_class_init), (ephy_history_window_update_menu): Focus history entry on _show. Do not try to update paste menu item using the wait api, it can cause a crash on a timeout and anyway it's incosistent what we do in main window. --- ChangeLog | 13 +++++++++++++ src/bookmarks/ephy-bookmarks-editor.c | 5 +---- src/ephy-history-window.c | 18 ++++++++++++++---- 3 files changed, 28 insertions(+), 8 deletions(-) diff --git a/ChangeLog b/ChangeLog index d96cafca0..d18d28243 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,16 @@ +2003-11-08 Marco Pesenti Gritti + + * src/bookmarks/ephy-bookmarks-editor.c: + (ephy_bookmarks_editor_update_menu): + * src/ephy-history-window.c: (ephy_history_window_show), + (ephy_history_window_class_init), + (ephy_history_window_update_menu): + + Focus history entry on _show. + Do not try to update paste menu item using the wait + api, it can cause a crash on a timeout and anyway + it's incosistent what we do in main window. + 2003-11-08 Christian Persch * embed/ephy-favicon-cache.c: (ephy_favicon_cache_get_type), diff --git a/src/bookmarks/ephy-bookmarks-editor.c b/src/bookmarks/ephy-bookmarks-editor.c index 17ca97729..7942112f3 100644 --- a/src/bookmarks/ephy-bookmarks-editor.c +++ b/src/bookmarks/ephy-bookmarks-editor.c @@ -911,16 +911,13 @@ ephy_bookmarks_editor_update_menu (EphyBookmarksEditor *editor) if (GTK_IS_EDITABLE (focus_widget)) { gboolean has_selection; - gboolean clipboard_contains_text; has_selection = gtk_editable_get_selection_bounds (GTK_EDITABLE (focus_widget), NULL, NULL); - clipboard_contains_text = gtk_clipboard_wait_is_text_available - (gtk_clipboard_get (GDK_SELECTION_CLIPBOARD)); cut = has_selection; copy = has_selection; - paste = clipboard_contains_text; + paste = TRUE; select_all = TRUE; } else diff --git a/src/ephy-history-window.c b/src/ephy-history-window.c index b541e91bd..115cb3ac0 100644 --- a/src/ephy-history-window.c +++ b/src/ephy-history-window.c @@ -612,10 +612,21 @@ ephy_history_window_get_type (void) return ephy_history_window_type; } +static void +ephy_history_window_show (GtkWidget *widget) +{ + EphyHistoryWindow *window = EPHY_HISTORY_WINDOW (widget); + + gtk_widget_grab_focus (window->priv->search_entry); + + GTK_WIDGET_CLASS (parent_class)->show (widget); +} + static void ephy_history_window_class_init (EphyHistoryWindowClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); + GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass); parent_class = g_type_class_peek_parent (klass); @@ -625,6 +636,8 @@ ephy_history_window_class_init (EphyHistoryWindowClass *klass) object_class->get_property = ephy_history_window_get_property; object_class->dispose = ephy_history_window_dispose; + widget_class->show = ephy_history_window_show; + g_object_class_install_property (object_class, PROP_HISTORY, g_param_spec_object ("history", @@ -695,16 +708,13 @@ ephy_history_window_update_menu (EphyHistoryWindow *editor) if (GTK_IS_EDITABLE (focus_widget)) { gboolean has_selection; - gboolean clipboard_contains_text; has_selection = gtk_editable_get_selection_bounds (GTK_EDITABLE (focus_widget), NULL, NULL); - clipboard_contains_text = gtk_clipboard_wait_is_text_available - (gtk_clipboard_get (GDK_SELECTION_CLIPBOARD)); cut = has_selection; copy = has_selection; - paste = clipboard_contains_text; + paste = TRUE; select_all = TRUE; } else -- cgit v1.2.3