Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/shell
diff options
context:
space:
mode:
authorCarlos Garcia Campos <carlosgc@gnome.org>2007-09-03 15:37:10 (GMT)
committer Carlos Garcia Campos <carlosgc@src.gnome.org>2007-09-03 15:37:10 (GMT)
commit34dc864999174a8416c4f2b772de897c581705e4 (patch)
treea3a4b2cf9d5d89d19afb707f4b08841dd3af1b66 /shell
parentd4ab4b8574b497c01f86b209a60867b576540e92 (diff)
Do not update visibility when changing a chrome flag so that it's possible
2007-09-03 Carlos Garcia Campos <carlosgc@gnome.org> * shell/ev-window.c: (update_chrome_flag), (setup_sidebar_from_metadata), (ev_window_cmd_focus_page_selector), (ev_window_cmd_edit_find), (ev_window_cmd_edit_find_next), (ev_window_cmd_edit_find_previous), (ev_window_cmd_escape), (ev_window_view_toolbar_cb), (ev_window_view_sidebar_cb), (find_bar_close_cb), (view_actions_focus_in_cb): Do not update visibility when changing a chrome flag so that it's possible to update several flags and update visibility only once for all of them. svn path=/trunk/; revision=2657
Diffstat (limited to 'shell')
-rw-r--r--shell/ev-window.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/shell/ev-window.c b/shell/ev-window.c
index 19fd583..c973f42 100644
--- a/shell/ev-window.c
+++ b/shell/ev-window.c
@@ -537,8 +537,6 @@ update_chrome_flag (EvWindow *window, EvChrome flag, gboolean active)
} else {
priv->chrome &= ~flag;
}
-
- update_chrome_visibility (window);
}
static void
@@ -856,6 +854,7 @@ setup_sidebar_from_metadata (EvWindow *window, EvDocument *document)
if (ev_metadata_manager_get (uri, "sidebar_visibility", &sidebar_visibility, FALSE)) {
update_chrome_flag (window, EV_CHROME_SIDEBAR, g_value_get_boolean (&sidebar_visibility));
g_value_unset (&sidebar_visibility);
+ update_chrome_visibility (window);
}
}
@@ -2678,6 +2677,7 @@ ev_window_cmd_focus_page_selector (GtkAction *act, EvWindow *window)
update_chrome_flag (window, EV_CHROME_RAISE_TOOLBAR, TRUE);
ev_window_set_action_sensitive (window, "ViewToolbar", FALSE);
+ update_chrome_visibility (window);
action = gtk_action_group_get_action (window->priv->action_group,
PAGE_SELECTOR_ACTION);
@@ -2768,6 +2768,7 @@ ev_window_cmd_edit_find (GtkAction *action, EvWindow *ev_window)
}
update_chrome_flag (ev_window, EV_CHROME_FINDBAR, TRUE);
+ update_chrome_visibility (ev_window);
gtk_widget_grab_focus (ev_window->priv->find_bar);
}
@@ -2777,6 +2778,7 @@ ev_window_cmd_edit_find_next (GtkAction *action, EvWindow *ev_window)
g_return_if_fail (EV_IS_WINDOW (ev_window));
update_chrome_flag (ev_window, EV_CHROME_FINDBAR, TRUE);
+ update_chrome_visibility (ev_window);
gtk_widget_grab_focus (ev_window->priv->find_bar);
ev_view_find_next (EV_VIEW (ev_window->priv->view));
}
@@ -2787,6 +2789,7 @@ ev_window_cmd_edit_find_previous (GtkAction *action, EvWindow *ev_window)
g_return_if_fail (EV_IS_WINDOW (ev_window));
update_chrome_flag (ev_window, EV_CHROME_FINDBAR, TRUE);
+ update_chrome_visibility (ev_window);
gtk_widget_grab_focus (ev_window->priv->find_bar);
ev_view_find_previous (EV_VIEW (ev_window->priv->view));
}
@@ -3511,6 +3514,7 @@ ev_window_cmd_escape (GtkAction *action, EvWindow *window)
widget = gtk_window_get_focus (GTK_WINDOW (window));
if (widget && gtk_widget_get_ancestor (widget, EGG_TYPE_FIND_BAR)) {
update_chrome_flag (window, EV_CHROME_FINDBAR, FALSE);
+ update_chrome_visibility (window);
gtk_widget_grab_focus (window->priv->view);
} else {
gboolean fullscreen;
@@ -3789,6 +3793,7 @@ ev_window_view_toolbar_cb (GtkAction *action, EvWindow *ev_window)
active = gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (action));
update_chrome_flag (ev_window, EV_CHROME_TOOLBAR, active);
+ update_chrome_visibility (ev_window);
ev_metadata_manager_set_boolean (NULL, "show_toolbar", active);
}
@@ -3800,6 +3805,7 @@ ev_window_view_sidebar_cb (GtkAction *action, EvWindow *ev_window)
update_chrome_flag (ev_window, EV_CHROME_SIDEBAR,
gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (action)));
+ update_chrome_visibility (ev_window);
}
static void
@@ -4002,6 +4008,7 @@ find_bar_close_cb (EggFindBar *find_bar,
EvWindow *ev_window)
{
update_chrome_flag (ev_window, EV_CHROME_FINDBAR, FALSE);
+ update_chrome_visibility (ev_window);
}
static void
@@ -4621,6 +4628,8 @@ view_actions_focus_in_cb (GtkWidget *widget, GdkEventFocus *event, EvWindow *win
ev_window_set_view_accels_sensitivity (window, TRUE);
+ update_chrome_visibility (window);
+
return FALSE;
}