aboutsummaryrefslogtreecommitdiffstats
path: root/shell/e-shell-view.c
diff options
context:
space:
mode:
authorEttore Perazzoli <ettore@src.gnome.org>2002-10-26 02:19:08 +0800
committerEttore Perazzoli <ettore@src.gnome.org>2002-10-26 02:19:08 +0800
commitf59f9aa65a93d63fadd0ab49ab0dd3ff7be9afa5 (patch)
tree0e63f1b3545fb4f384eea8bb68425472cf76ccae /shell/e-shell-view.c
parent00a23404df0aaec9d978435fd3ba42724135ac35 (diff)
downloadgsoc2013-evolution-f59f9aa65a93d63fadd0ab49ab0dd3ff7be9afa5.tar.gz
gsoc2013-evolution-f59f9aa65a93d63fadd0ab49ab0dd3ff7be9afa5.tar.zst
gsoc2013-evolution-f59f9aa65a93d63fadd0ab49ab0dd3ff7be9afa5.zip
[#31303]
* e-shell-view (storage_set_view_box_button_release_event_cb): Pop down the popup folder bar if it's a toplevel node. (folder_bar_popup_map_callback): Connect to the "folder_opened" signal on the storage_set_view. [#32032] * e-folder-list.c (create_display_string): Don't turn the string from UTF-8 to GTK. svn path=/trunk/; revision=18437
Diffstat (limited to 'shell/e-shell-view.c')
-rw-r--r--shell/e-shell-view.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/shell/e-shell-view.c b/shell/e-shell-view.c
index 22248815d9..1ba9eb466f 100644
--- a/shell/e-shell-view.c
+++ b/shell/e-shell-view.c
@@ -627,6 +627,16 @@ storage_set_view_box_button_release_event_cb (GtkWidget *widget,
}
static void
+storage_set_view_folder_opened_cb (EStorageSetView *storage_set_view,
+ const char *path,
+ void *data)
+{
+ /* Pop down for top level nodes, see #31303. */
+ if (strchr (path + 1, E_PATH_SEPARATOR) == NULL)
+ popdown_transient_folder_bar (E_SHELL_VIEW (data));
+}
+
+static void
popup_storage_set_view_button_clicked (ETitleBar *title_bar,
void *data)
{
@@ -679,6 +689,9 @@ folder_bar_popup_map_callback (GtkWidget *widget,
gtk_signal_connect_while_alive (GTK_OBJECT (widget), "button_release_event",
GTK_SIGNAL_FUNC (storage_set_view_box_button_release_event_cb), shell_view,
GTK_OBJECT (priv->folder_bar_popup));
+ gtk_signal_connect_while_alive (GTK_OBJECT (priv->storage_set_view), "folder_opened",
+ GTK_SIGNAL_FUNC (storage_set_view_folder_opened_cb), shell_view,
+ GTK_OBJECT (priv->folder_bar_popup));
gtk_signal_connect_while_alive (GTK_OBJECT (priv->storage_set_view), "button_release_event",
GTK_SIGNAL_FUNC (storage_set_view_box_button_release_event_cb), shell_view,
GTK_OBJECT (priv->folder_bar_popup));