summaryrefslogtreecommitdiff
path: root/src/nautilus-action-bar.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/nautilus-action-bar.c')
-rw-r--r--src/nautilus-action-bar.c24
1 files changed, 7 insertions, 17 deletions
diff --git a/src/nautilus-action-bar.c b/src/nautilus-action-bar.c
index 55736f3bf..8f70e412f 100644
--- a/src/nautilus-action-bar.c
+++ b/src/nautilus-action-bar.c
@@ -48,9 +48,6 @@ struct _NautilusActionBar
GtkWidget *new_folder_0_button;
GtkWidget *paste_button;
GtkWidget *select_all_button;
- GtkWidget *no_selection_separator;
- GtkWidget *bookmark_button;
- GtkWidget *properties_0_button;
GtkWidget *no_selection_overflow_button;
GtkWidget *no_selection_folder_label;
@@ -64,7 +61,7 @@ struct _NautilusActionBar
GtkWidget *properties_folders_button;
GtkWidget *folders_overflow_button;
- GtkWidget *no_selection_widgets [5];
+ GtkWidget *no_selection_widgets [3];
GtkWidget *files_folders_widgets [5];
/* Labels */
@@ -531,9 +528,9 @@ nautilus_action_bar_set_property (GObject *object,
static void
set_visible_buttons (GtkWidget **widgets,
GtkWidget *overflow,
+ gint length,
gint visible_items)
{
- const gint length = 5;
gint i;
gtk_widget_set_visible (overflow, visible_items < length);
@@ -550,12 +547,13 @@ nautilus_action_bar_size_allocate (GtkWidget *widget,
GtkWidget **widgets;
GtkWidget *overflow_button, *reference_button;
gint visible_items, button_width, overflow_button_width, static_button_width;
- gint max_width;
+ gint max_width, max_items;
self = NAUTILUS_ACTION_BAR (widget);
max_width = 2 * allocation->width / 3 - 2 * gtk_container_get_border_width (GTK_CONTAINER (self->stack));
reference_button = overflow_button = NULL;
static_button_width = 0;
+ max_items = 5;
switch (self->mode)
{
@@ -563,6 +561,7 @@ nautilus_action_bar_size_allocate (GtkWidget *widget,
overflow_button = self->no_selection_overflow_button;
reference_button = self->new_folder_0_button;
widgets = self->no_selection_widgets;
+ max_items = 3;
break;
case MODE_FILES_ONLY:
@@ -614,14 +613,10 @@ nautilus_action_bar_size_allocate (GtkWidget *widget,
}
/* Number of visible widgets */
- visible_items = CLAMP ((max_width - overflow_button_width - static_button_width) / MAX (button_width, 1), 0, 5);
+ visible_items = CLAMP ((max_width - overflow_button_width - static_button_width) / MAX (button_width, 1), 0, max_items);
if (visible_items > 0)
- set_visible_buttons (widgets, overflow_button, visible_items);
-
- /* Hide the separator if needed */
- if (self->mode == MODE_NO_SELECTION)
- gtk_widget_set_visible (self->no_selection_separator, visible_items > 3);
+ set_visible_buttons (widgets, overflow_button, max_items, visible_items);
/* Let GtkBox allocate and position the widgets */
GTK_WIDGET_CLASS (nautilus_action_bar_parent_class)->size_allocate (widget, allocation);
@@ -693,7 +688,6 @@ nautilus_action_bar_class_init (NautilusActionBarClass *klass)
gtk_widget_class_set_template_from_resource (widget_class, "/org/gnome/nautilus/ui/nautilus-action-bar.ui");
- gtk_widget_class_bind_template_child (widget_class, NautilusActionBar, bookmark_button);
gtk_widget_class_bind_template_child (widget_class, NautilusActionBar, copy_folders_button);
gtk_widget_class_bind_template_child (widget_class, NautilusActionBar, default_app_button);
gtk_widget_class_bind_template_child (widget_class, NautilusActionBar, default_app_icon);
@@ -705,11 +699,9 @@ nautilus_action_bar_class_init (NautilusActionBarClass *klass)
gtk_widget_class_bind_template_child (widget_class, NautilusActionBar, new_folder_0_button);
gtk_widget_class_bind_template_child (widget_class, NautilusActionBar, no_selection_folder_label);
gtk_widget_class_bind_template_child (widget_class, NautilusActionBar, no_selection_overflow_button);
- gtk_widget_class_bind_template_child (widget_class, NautilusActionBar, no_selection_separator);
gtk_widget_class_bind_template_child (widget_class, NautilusActionBar, open_file_box);
gtk_widget_class_bind_template_child (widget_class, NautilusActionBar, open_folders_button);
gtk_widget_class_bind_template_child (widget_class, NautilusActionBar, paste_button);
- gtk_widget_class_bind_template_child (widget_class, NautilusActionBar, properties_0_button);
gtk_widget_class_bind_template_child (widget_class, NautilusActionBar, properties_folders_button);
gtk_widget_class_bind_template_child (widget_class, NautilusActionBar, rename_folders_button);
gtk_widget_class_bind_template_child (widget_class, NautilusActionBar, select_all_button);
@@ -731,8 +723,6 @@ nautilus_action_bar_init (NautilusActionBar *self)
self->no_selection_widgets[0] = self->new_folder_0_button;
self->no_selection_widgets[1] = self->paste_button;
self->no_selection_widgets[2] = self->select_all_button;
- self->no_selection_widgets[3] = self->bookmark_button;
- self->no_selection_widgets[4] = self->properties_0_button;
/* Folder- and folder-only widgets */
self->files_folders_widgets[0] = self->move_folders_button;