[nautilus] Remove tree side bar
- From: Cosimo Cecchi <cosimoc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [nautilus] Remove tree side bar
- Date: Thu, 31 May 2012 14:04:38 +0000 (UTC)
commit 253d4bf50b04a2ad3a063d467818b02ca2002584
Author: William Jon McCann <jmccann redhat com>
Date: Thu May 31 10:03:42 2012 -0400
Remove tree side bar
It is inconsistent with the file chooser, doesn't work well with
touch, is really hard to use, and isn't consistent with any other
GNOME 3 apps.
https://bugzilla.gnome.org/show_bug.cgi?id=676897
libnautilus-private/nautilus-global-preferences.h | 6 +-
libnautilus-private/nautilus.convert | 4 -
.../org.gnome.nautilus.gschema.xml.in | 26 -
src/Makefile.am | 4 -
src/nautilus-file-management-properties.c | 4 -
src/nautilus-file-management-properties.ui | 65 -
src/nautilus-shell-ui.xml | 9 +-
src/nautilus-tree-sidebar-model.c | 1900 --------------------
src/nautilus-tree-sidebar-model.h | 100 -
src/nautilus-tree-sidebar.c | 1623 -----------------
src/nautilus-tree-sidebar.h | 66 -
src/nautilus-window-menus.c | 104 +-
src/nautilus-window-private.h | 1 -
src/nautilus-window.c | 62 +-
14 files changed, 22 insertions(+), 3952 deletions(-)
---
diff --git a/libnautilus-private/nautilus-global-preferences.h b/libnautilus-private/nautilus-global-preferences.h
index 2dd27da..a334cca 100644
--- a/libnautilus-private/nautilus-global-preferences.h
+++ b/libnautilus-private/nautilus-global-preferences.h
@@ -58,9 +58,6 @@ typedef enum
NAUTILUS_NEW_TAB_POSITION_END,
} NautilusNewTabPosition;
-/* Sidebar panels */
-#define NAUTILUS_PREFERENCES_TREE_SHOW_ONLY_DIRECTORIES "show-only-directories"
-
/* Single/Double click preference */
#define NAUTILUS_PREFERENCES_CLICK_POLICY "click-policy"
@@ -77,8 +74,7 @@ typedef enum
#define NAUTILUS_PREFERENCES_ALWAYS_USE_LOCATION_ENTRY "always-use-location-entry"
/* Which views should be displayed for new windows */
-#define NAUTILUS_WINDOW_STATE_START_WITH_SIDEBAR "start-with-sidebar"
-#define NAUTILUS_WINDOW_STATE_SIDE_PANE_VIEW "side-pane-view"
+#define NAUTILUS_WINDOW_STATE_START_WITH_SIDEBAR "start-with-sidebar"
#define NAUTILUS_WINDOW_STATE_GEOMETRY "geometry"
#define NAUTILUS_WINDOW_STATE_MAXIMIZED "maximized"
#define NAUTILUS_WINDOW_STATE_SIDEBAR_WIDTH "sidebar-width"
diff --git a/libnautilus-private/nautilus.convert b/libnautilus-private/nautilus.convert
index d64d79c..bca7d37 100644
--- a/libnautilus-private/nautilus.convert
+++ b/libnautilus-private/nautilus.convert
@@ -34,9 +34,6 @@ default-zoom-level = /apps/nautilus/list_view/default_zoom_level
default-visible-columns = /apps/nautilus/list_view/default_visible_columns
default-column-order = /apps/nautilus/list_view/default_column_order
-[org.gnome.nautilus.sidebar-panels.tree]
-show-only-directories = /apps/nautilus/sidebar_panels/tree/show_only_directories
-
[org.gnome.nautilus.desktop]
font = /apps/nautilus/preferences/desktop_font
home-icon-visible = /apps/nautilus/desktop/home_icon_visible
@@ -54,4 +51,3 @@ maximized = /apps/nautilus/preferences/navigation_window_saved_maximized
sidebar-width = /apps/nautilus/preferences/sidebar_width
start-with-location-bar = /apps/nautilus/preferences/start_with_location_bar
start-with-sidebar = /apps/nautilus/preferences/start_with_sidebar
-side-pane-view = /apps/nautilus/preferences/side_pane_view
diff --git a/libnautilus-private/org.gnome.nautilus.gschema.xml.in b/libnautilus-private/org.gnome.nautilus.gschema.xml.in
index 778e226..1365207 100644
--- a/libnautilus-private/org.gnome.nautilus.gschema.xml.in
+++ b/libnautilus-private/org.gnome.nautilus.gschema.xml.in
@@ -56,7 +56,6 @@
<child name="preferences" schema="org.gnome.nautilus.preferences"/>
<child name="icon-view" schema="org.gnome.nautilus.icon-view"/>
<child name="list-view" schema="org.gnome.nautilus.list-view"/>
- <child name="sidebar-panels" schema="org.gnome.nautilus.sidebar-panels"/>
<child name="desktop" schema="org.gnome.nautilus.desktop"/>
<child name="window-state" schema="org.gnome.nautilus.window-state"/>
</schema>
@@ -262,18 +261,6 @@
</key>
</schema>
- <schema id="org.gnome.nautilus.sidebar-panels" path="/org/gnome/nautilus/sidebar-panels/" gettext-domain="nautilus">
- <child name="tree" schema="org.gnome.nautilus.sidebar-panels.tree"/>
- </schema>
-
- <schema id="org.gnome.nautilus.sidebar-panels.tree" path="/org/gnome/nautilus/sidebar-panels/tree/" gettext-domain="nautilus">
- <key name="show-only-directories" type="b">
- <default>true</default>
- <_summary>Only show folders in the tree side pane</_summary>
- <_description>If set to true, Nautilus will only show folders in the tree side pane. Otherwise it will show both folders and files.</_description>
- </key>
- </schema>
-
<schema id="org.gnome.nautilus.desktop" path="/org/gnome/nautilus/desktop/" gettext-domain="nautilus">
<key name="font" type="s">
<default l10n="messages" context="desktop-font">''</default>
@@ -353,18 +340,5 @@
<_summary>Show side pane in new windows</_summary>
<_description>If set to true, newly opened windows will have the side pane visible.</_description>
</key>
- <key name="side-pane-view" type="s">
- <choices>
- <choice value='places'/>
- <choice value='tree'/>
- </choices>
- <aliases>
- <alias value='NautilusPlacesSidebar' target='places'/>
- <alias value='NautilusTreeSidebar' target='tree'/>
- </aliases>
- <default>'places'</default>
- <_summary>Side pane view</_summary>
- <_description>The side pane view to show in newly opened windows.</_description>
- </key>
</schema>
</schemalist>
diff --git a/src/Makefile.am b/src/Makefile.am
index 92e8ab8..0f85ff2 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -149,10 +149,6 @@ nautilus_SOURCES = \
nautilus-self-check-functions.h \
nautilus-toolbar.c \
nautilus-toolbar.h \
- nautilus-tree-sidebar.c \
- nautilus-tree-sidebar.h \
- nautilus-tree-sidebar-model.c \
- nautilus-tree-sidebar-model.h \
nautilus-trash-bar.c \
nautilus-trash-bar.h \
nautilus-view.c \
diff --git a/src/nautilus-file-management-properties.c b/src/nautilus-file-management-properties.c
index 8076c02..7f693f6 100644
--- a/src/nautilus-file-management-properties.c
+++ b/src/nautilus-file-management-properties.c
@@ -738,10 +738,6 @@ nautilus_file_management_properties_dialog_setup (GtkBuilder *builder, GtkWindow
NAUTILUS_FILE_MANAGEMENT_PROPERTIES_SHOW_HIDDEN_WIDGET,
NAUTILUS_PREFERENCES_SHOW_HIDDEN_FILES);
- bind_builder_bool (builder, nautilus_tree_sidebar_preferences,
- NAUTILUS_FILE_MANAGEMENT_PROPERTIES_TREE_VIEW_FOLDERS_WIDGET,
- NAUTILUS_PREFERENCES_TREE_SHOW_ONLY_DIRECTORIES);
-
bind_builder_enum (builder, nautilus_preferences,
NAUTILUS_FILE_MANAGEMENT_PROPERTIES_DEFAULT_VIEW_WIDGET,
NAUTILUS_PREFERENCES_DEFAULT_FOLDER_VIEWER,
diff --git a/src/nautilus-file-management-properties.ui b/src/nautilus-file-management-properties.ui
index e1ea152..a59ca19 100644
--- a/src/nautilus-file-management-properties.ui
+++ b/src/nautilus-file-management-properties.ui
@@ -446,71 +446,6 @@
<property name="position">3</property>
</packing>
</child>
- <child>
- <object class="GtkBox" id="vbox24">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="orientation">vertical</property>
- <property name="spacing">6</property>
- <child>
- <object class="GtkLabel" id="label25">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">Tree View Defaults</property>
- <attributes>
- <attribute name="weight" value="bold"/>
- </attributes>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkAlignment" id="alignment4">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="left_padding">12</property>
- <child>
- <object class="GtkBox" id="vbox25">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="orientation">vertical</property>
- <property name="spacing">6</property>
- <child>
- <object class="GtkCheckButton" id="treeview_folders_checkbutton">
- <property name="label" translatable="yes">Show _only folders</property>
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="use_action_appearance">False</property>
- <property name="use_underline">True</property>
- <property name="draw_indicator">True</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- </object>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">4</property>
- </packing>
- </child>
</object>
</child>
<child type="tab">
diff --git a/src/nautilus-shell-ui.xml b/src/nautilus-shell-ui.xml
index 1473bc0..30ad88b 100644
--- a/src/nautilus-shell-ui.xml
+++ b/src/nautilus-shell-ui.xml
@@ -53,14 +53,7 @@
<menuitem name="Stop" action="Stop"/>
<menuitem name="Reload" action="Reload"/>
<separator/>
- <placeholder name="Show Hide Placeholder">
- <menu action="Sidebar List">
- <menuitem name="Sidebar Places" action="Sidebar Places"/>
- <menuitem name="Sidebar Tree" action="Sidebar Tree"/>
- <separator/>
- <menuitem name="Show Hide Sidebar" action="Show Hide Sidebar"/>
- </menu>
- </placeholder>
+ <menuitem name="Show Hide Sidebar" action="Show Hide Sidebar"/>
<separator/>
<placeholder name="View Preferences Placeholder"/>
<separator/>
diff --git a/src/nautilus-window-menus.c b/src/nautilus-window-menus.c
index 9adae36..4189823 100644
--- a/src/nautilus-window-menus.c
+++ b/src/nautilus-window-menus.c
@@ -365,11 +365,6 @@ nautilus_window_initialize_trash_icon_monitor (NautilusWindow *window)
#define MENU_ITEM_MAX_WIDTH_CHARS 32
-enum {
- SIDEBAR_PLACES,
- SIDEBAR_TREE
-};
-
static void
action_close_all_windows_callback (GtkAction *action,
gpointer user_data)
@@ -396,44 +391,17 @@ action_forward_callback (GtkAction *action,
static void
action_show_hide_sidebar_callback (GtkAction *action,
- gpointer user_data)
+ gpointer user_data)
{
- NautilusWindow *window;
+ NautilusWindow *window;
- window = NAUTILUS_WINDOW (user_data);
+ window = NAUTILUS_WINDOW (user_data);
- if (gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (action))) {
- nautilus_window_show_sidebar (window);
- } else {
- nautilus_window_hide_sidebar (window);
- }
-}
-
-/* TODO: bind all of this with g_settings_bind and GBinding */
-static guint
-sidebar_id_to_value (const gchar *sidebar_id)
-{
- guint retval = SIDEBAR_PLACES;
-
- if (g_strcmp0 (sidebar_id, NAUTILUS_WINDOW_SIDEBAR_TREE) == 0)
- retval = SIDEBAR_TREE;
-
- return retval;
-}
-
-void
-nautilus_window_update_show_hide_menu_items (NautilusWindow *window)
-{
- GtkActionGroup *action_group;
- GtkAction *action;
- guint current_value;
-
- action_group = nautilus_window_get_main_action_group (window);
-
- action = gtk_action_group_get_action (action_group,
- "Sidebar Places");
- current_value = sidebar_id_to_value (window->details->sidebar_id);
- gtk_radio_action_set_current_value (GTK_RADIO_ACTION (action), current_value);
+ if (gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (action))) {
+ nautilus_window_show_sidebar (window);
+ } else {
+ nautilus_window_hide_sidebar (window);
+ }
}
static void
@@ -578,26 +546,6 @@ action_tab_change_action_activate_callback (GtkAction *action,
}
}
-static void
-sidebar_radio_entry_changed_cb (GtkAction *action,
- GtkRadioAction *current,
- gpointer user_data)
-{
- gint current_value;
-
- current_value = gtk_radio_action_get_current_value (current);
-
- if (current_value == SIDEBAR_PLACES) {
- g_settings_set_string (nautilus_window_state,
- NAUTILUS_WINDOW_STATE_SIDE_PANE_VIEW,
- NAUTILUS_WINDOW_SIDEBAR_PLACES);
- } else if (current_value == SIDEBAR_TREE) {
- g_settings_set_string (nautilus_window_state,
- NAUTILUS_WINDOW_STATE_SIDE_PANE_VIEW,
- NAUTILUS_WINDOW_SIDEBAR_TREE);
- }
-}
-
static const GtkActionEntry main_entries[] = {
/* name, stock id, label */ { "File", NULL, N_("_File") },
/* name, stock id, label */ { "Edit", NULL, N_("_Edit") },
@@ -745,7 +693,7 @@ static const GtkToggleActionEntry main_toggle_entries[] = {
/* label, accelerator */ N_("_Show Sidebar"), "F9",
/* tooltip */ N_("Change the visibility of this window's side pane"),
G_CALLBACK (action_show_hide_sidebar_callback),
- /* is_active */ TRUE },
+ /* is_active */ TRUE },
/* name, stock id */ { "Search", "edit-find-symbolic",
/* label, accelerator */ N_("_Search for Files..."), "<control>f",
/* tooltip */ N_("Search documents and folders by name"),
@@ -753,15 +701,6 @@ static const GtkToggleActionEntry main_toggle_entries[] = {
/* is_active */ FALSE },
};
-static const GtkRadioActionEntry main_radio_entries[] = {
- { "Sidebar Places", NULL,
- N_("Places"), NULL, N_("Select Places as the default sidebar"),
- SIDEBAR_PLACES },
- { "Sidebar Tree", NULL,
- N_("Tree"), NULL, N_("Select Tree as the default sidebar"),
- SIDEBAR_TREE }
-};
-
static const gchar* app_actions[] = {
NAUTILUS_ACTION_NEW_WINDOW,
NAUTILUS_ACTION_CONNECT_TO_SERVER,
@@ -836,19 +775,19 @@ nautilus_window_create_toolbar_action_group (NautilusWindow *window)
static void
window_menus_set_bindings (NautilusWindow *window)
{
- GtkActionGroup *action_group;
- GtkAction *action;
+ GtkActionGroup *action_group;
+ GtkAction *action;
- action_group = nautilus_window_get_main_action_group (window);
+ action_group = nautilus_window_get_main_action_group (window);
- action = gtk_action_group_get_action (action_group,
- NAUTILUS_ACTION_SHOW_HIDE_SIDEBAR);
+ action = gtk_action_group_get_action (action_group,
+ NAUTILUS_ACTION_SHOW_HIDE_SIDEBAR);
- g_settings_bind (nautilus_window_state,
- NAUTILUS_WINDOW_STATE_START_WITH_SIDEBAR,
- action,
- "active",
- G_SETTINGS_BIND_DEFAULT);
+ g_settings_bind (nautilus_window_state,
+ NAUTILUS_WINDOW_STATE_START_WITH_SIDEBAR,
+ action,
+ "active",
+ G_SETTINGS_BIND_DEFAULT);
}
void
@@ -865,7 +804,6 @@ nautilus_window_initialize_actions (NautilusWindow *window)
nav_state_actions);
window_menus_set_bindings (window);
- nautilus_window_update_show_hide_menu_items (window);
}
static void
@@ -917,10 +855,6 @@ nautilus_window_initialize_menus (NautilusWindow *window)
gtk_action_group_add_toggle_actions (action_group,
main_toggle_entries, G_N_ELEMENTS (main_toggle_entries),
window);
- gtk_action_group_add_radio_actions (action_group,
- main_radio_entries, G_N_ELEMENTS (main_radio_entries),
- 0, G_CALLBACK (sidebar_radio_entry_changed_cb),
- window);
nautilus_window_menus_set_visibility_for_app_menu (window);
g_signal_connect_swapped (gtk_settings_get_for_screen (gtk_widget_get_screen (GTK_WIDGET (window))),
diff --git a/src/nautilus-window-private.h b/src/nautilus-window-private.h
index f3b3866..0d7a4b3 100644
--- a/src/nautilus-window-private.h
+++ b/src/nautilus-window-private.h
@@ -81,7 +81,6 @@ struct NautilusWindowDetails
/* Side Pane */
int side_pane_width;
GtkWidget *sidebar;
- gchar *sidebar_id;
/* Main view */
GtkWidget *main_view;
diff --git a/src/nautilus-window.c b/src/nautilus-window.c
index c038daf..bd5ba5d 100644
--- a/src/nautilus-window.c
+++ b/src/nautilus-window.c
@@ -40,7 +40,6 @@
#include "nautilus-pathbar.h"
#include "nautilus-search-bar.h"
#include "nautilus-toolbar.h"
-#include "nautilus-tree-sidebar.h"
#include "nautilus-view-factory.h"
#include "nautilus-window-manage-views.h"
#include "nautilus-window-bookmarks.h"
@@ -700,20 +699,11 @@ setup_side_pane_width (NautilusWindow *window)
window->details->side_pane_width);
}
-static gboolean
-sidebar_id_is_valid (const gchar *sidebar_id)
-{
- return (g_strcmp0 (sidebar_id, NAUTILUS_WINDOW_SIDEBAR_PLACES) == 0 ||
- g_strcmp0 (sidebar_id, NAUTILUS_WINDOW_SIDEBAR_TREE) == 0);
-}
-
static void
nautilus_window_set_up_sidebar (NautilusWindow *window)
{
GtkWidget *sidebar;
- DEBUG ("Setting up sidebar id %s", window->details->sidebar_id);
-
window->details->sidebar = gtk_box_new (GTK_ORIENTATION_VERTICAL, 6);
gtk_style_context_add_class (gtk_widget_get_style_context (window->details->sidebar),
GTK_STYLE_CLASS_SIDEBAR);
@@ -728,14 +718,7 @@ nautilus_window_set_up_sidebar (NautilusWindow *window)
G_CALLBACK (side_pane_size_allocate_callback),
window);
- if (g_strcmp0 (window->details->sidebar_id, NAUTILUS_WINDOW_SIDEBAR_PLACES) == 0) {
- sidebar = nautilus_places_sidebar_new (window);
- } else if (g_strcmp0 (window->details->sidebar_id, NAUTILUS_WINDOW_SIDEBAR_TREE) == 0) {
- sidebar = nautilus_tree_sidebar_new (window);
- } else {
- g_assert_not_reached ();
- }
-
+ sidebar = nautilus_places_sidebar_new (window);
gtk_box_pack_start (GTK_BOX (window->details->sidebar), sidebar, TRUE, TRUE, 0);
gtk_widget_show (sidebar);
gtk_widget_show (GTK_WIDGET (window->details->sidebar));
@@ -762,8 +745,6 @@ nautilus_window_hide_sidebar (NautilusWindow *window)
}
nautilus_window_tear_down_sidebar (window);
- nautilus_window_update_show_hide_menu_items (window);
-
g_settings_set_boolean (nautilus_window_state, NAUTILUS_WINDOW_STATE_START_WITH_SIDEBAR, FALSE);
}
@@ -781,40 +762,9 @@ nautilus_window_show_sidebar (NautilusWindow *window)
}
nautilus_window_set_up_sidebar (window);
- nautilus_window_update_show_hide_menu_items (window);
g_settings_set_boolean (nautilus_window_state, NAUTILUS_WINDOW_STATE_START_WITH_SIDEBAR, TRUE);
}
-static void
-side_pane_id_changed (NautilusWindow *window)
-{
- gchar *sidebar_id;
-
- sidebar_id = g_settings_get_string (nautilus_window_state,
- NAUTILUS_WINDOW_STATE_SIDE_PANE_VIEW);
-
- DEBUG ("Sidebar id changed to %s", sidebar_id);
-
- if (g_strcmp0 (sidebar_id, window->details->sidebar_id) == 0) {
- g_free (sidebar_id);
- return;
- }
-
- if (!sidebar_id_is_valid (sidebar_id)) {
- g_free (sidebar_id);
- return;
- }
-
- g_free (window->details->sidebar_id);
- window->details->sidebar_id = sidebar_id;
-
- if (window->details->sidebar != NULL) {
- /* refresh the sidebar setting */
- nautilus_window_tear_down_sidebar (window);
- nautilus_window_set_up_sidebar (window);
- }
-}
-
gboolean
nautilus_window_disable_chrome_mapping (GValue *value,
GVariant *variant,
@@ -1315,13 +1265,6 @@ nautilus_window_constructed (GObject *self)
window->details->toolbar = create_toolbar (window);
window->details->notebook = create_notebook (window);
- g_signal_connect_swapped (nautilus_window_state,
- "changed::" NAUTILUS_WINDOW_STATE_SIDE_PANE_VIEW,
- G_CALLBACK (side_pane_id_changed),
- window);
-
- side_pane_id_changed (window);
-
nautilus_window_initialize_bookmarks_menu (window);
nautilus_window_set_initial_window_geometry (window);
@@ -1422,14 +1365,11 @@ nautilus_window_finalize (GObject *object)
}
nautilus_window_finalize_menus (window);
- g_signal_handlers_disconnect_by_func (nautilus_window_state,
- side_pane_id_changed, window);
g_clear_object (&window->details->nav_state);
g_clear_object (&window->details->bookmark_list);
g_clear_object (&window->details->ui_manager);
- g_free (window->details->sidebar_id);
free_stored_viewers (window);
/* nautilus_window_close() should have run */
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]