diff options
Diffstat (limited to 'shell')
-rw-r--r-- | shell/ChangeLog | 14 | ||||
-rw-r--r-- | shell/e-folder-list.c | 2 | ||||
-rw-r--r-- | shell/e-shell-view.c | 13 |
3 files changed, 28 insertions, 1 deletions
diff --git a/shell/ChangeLog b/shell/ChangeLog index e3068f8fe0..142e813ecc 100644 --- a/shell/ChangeLog +++ b/shell/ChangeLog @@ -1,3 +1,17 @@ +2002-10-25 Ettore Perazzoli <ettore@ximian.com> + + [#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. + +2002-10-25 Ettore Perazzoli <ettore@ximian.com> + + * e-folder-list.c (create_display_string): Don't turn the string + from UTF-8 to GTK. [#32032] + 2002-10-23 Ettore Perazzoli <ettore@ximian.com> * e-shell.c (setup_local_storage): Set the is_stock flag to TRUE diff --git a/shell/e-folder-list.c b/shell/e-folder-list.c index a4b558436b..a86461f303 100644 --- a/shell/e-folder-list.c +++ b/shell/e-folder-list.c @@ -103,7 +103,7 @@ create_display_string (EFolderList *efl, char *folder_uri, char *folder_name) storage_uri = g_strndup (folder_uri, p - folder_uri); storage_folder = get_folder_for_uri (efl, storage_uri); - storage_lname = e_utf8_to_gtk_string (GTK_WIDGET(efl), storage_folder->displayName); + storage_lname = g_strdup (storage_folder->displayName); CORBA_free (storage_folder); g_free (storage_uri); } 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)); |