[nautilus/wip/neilh/toolbar-reorg: 1/3] files-view: close menu when new folder prompt appears



commit 0453216b8a6731d92cfcd6405c323d76c0c1182c
Author: Neil Herald <neil herald gmail com>
Date:   Sat Jun 18 09:49:26 2016 +0100

    files-view: close menu when new folder prompt appears
    
    The menu previously remained open when the New Folder prompt appeared,
    if New Folder was selected from the menu. This change closes the menu
    when New Folder is selected.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=764632

 src/nautilus-files-view.c |    5 +++++
 src/nautilus-window.c     |    9 +++++++++
 src/nautilus-window.h     |    1 +
 3 files changed, 15 insertions(+), 0 deletions(-)
---
diff --git a/src/nautilus-files-view.c b/src/nautilus-files-view.c
index 74f08f3..b5e03d3 100644
--- a/src/nautilus-files-view.c
+++ b/src/nautilus-files-view.c
@@ -2255,8 +2255,13 @@ action_new_folder (GSimpleAction *action,
                    GVariant      *state,
                    gpointer       user_data)
 {
+        NautilusWindow *window;
+
         g_assert (NAUTILUS_IS_FILES_VIEW (user_data));
 
+        window = nautilus_files_view_get_window (NAUTILUS_FILES_VIEW (user_data));
+        nautilus_window_hide_view_menu (window);
+
         nautilus_files_view_new_folder (NAUTILUS_FILES_VIEW (user_data), FALSE);
 }
 
diff --git a/src/nautilus-window.c b/src/nautilus-window.c
index 5137e71..4e4a5bc 100644
--- a/src/nautilus-window.c
+++ b/src/nautilus-window.c
@@ -773,6 +773,15 @@ update_cursor (NautilusWindow *window)
 }
 
 void
+nautilus_window_hide_view_menu (NautilusWindow *window)
+{
+        GAction *menu_action;
+
+        menu_action = g_action_map_lookup_action (G_ACTION_MAP (window), "view-menu");
+        g_action_change_state (menu_action, g_variant_new_boolean (FALSE));
+}
+
+void
 nautilus_window_reset_menus (NautilusWindow *window)
 {
        nautilus_window_sync_allow_stop (window, nautilus_window_get_active_slot (window));
diff --git a/src/nautilus-window.h b/src/nautilus-window.h
index b2108db..b6095f5 100644
--- a/src/nautilus-window.h
+++ b/src/nautilus-window.h
@@ -127,6 +127,7 @@ void     nautilus_window_back_or_forward      (NautilusWindow *window,
                                                gboolean        back,
                                                guint           distance,
                                                NautilusWindowOpenFlags flags);
+void nautilus_window_hide_view_menu (NautilusWindow *window);
 void nautilus_window_reset_menus (NautilusWindow *window);
 
 GtkWidget *         nautilus_window_get_notebook (NautilusWindow *window);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]