summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--data/org.gnome.nautilus.gschema.xml2
-rw-r--r--libnautilus-private/nautilus-canvas-container.c8
-rw-r--r--libnautilus-private/nautilus-canvas-item.c2
-rw-r--r--libnautilus-private/nautilus-directory-async.c2
-rw-r--r--libnautilus-private/nautilus-icon-info.h14
-rw-r--r--src/nautilus-canvas-view-container.c1
-rw-r--r--src/nautilus-canvas-view.c8
-rw-r--r--src/nautilus-list-model.c8
-rw-r--r--src/nautilus-list-model.h1
-rw-r--r--src/nautilus-list-view.c11
-rw-r--r--src/resources/ui/nautilus-toolbar-view-menu.ui3
11 files changed, 41 insertions, 19 deletions
diff --git a/data/org.gnome.nautilus.gschema.xml b/data/org.gnome.nautilus.gschema.xml
index 463200c7b..24961bb93 100644
--- a/data/org.gnome.nautilus.gschema.xml
+++ b/data/org.gnome.nautilus.gschema.xml
@@ -36,12 +36,14 @@
<value value="0" nick="small"/>
<value value="1" nick="standard"/>
<value value="2" nick="large"/>
+ <value value="3" nick="larger"/>
</enum>
<enum id="org.gnome.nautilus.ListZoomLevel">
<value value="0" nick="small"/>
<value value="1" nick="standard"/>
<value value="2" nick="large"/>
+ <value value="3" nick="larger"/>
</enum>
<enum id="org.gnome.nautilus.TabPosition">
diff --git a/libnautilus-private/nautilus-canvas-container.c b/libnautilus-private/nautilus-canvas-container.c
index e3d0bd79a..65d73f6e5 100644
--- a/libnautilus-private/nautilus-canvas-container.c
+++ b/libnautilus-private/nautilus-canvas-container.c
@@ -98,7 +98,7 @@
* where a 76px canvas item would only take one.
* Canvas items are then centered in the extra available space.
*/
-#define STANDARD_ICON_GRID_WIDTH 80
+#define STANDARD_ICON_GRID_WIDTH 145
/* Desktop layout mode defines */
#define DESKTOP_PAD_HORIZONTAL 10
@@ -355,6 +355,8 @@ nautilus_canvas_container_get_icon_size_for_zoom_level (NautilusCanvasZoomLevel
return NAUTILUS_CANVAS_ICON_SIZE_STANDARD;
case NAUTILUS_CANVAS_ZOOM_LEVEL_LARGE:
return NAUTILUS_CANVAS_ICON_SIZE_LARGE;
+ case NAUTILUS_CANVAS_ZOOM_LEVEL_LARGER:
+ return NAUTILUS_CANVAS_ICON_SIZE_LARGER;
}
g_return_val_if_reached (NAUTILUS_CANVAS_ICON_SIZE_STANDARD);
}
@@ -6255,8 +6257,8 @@ nautilus_canvas_container_set_zoom_level (NautilusCanvasContainer *container, in
pinned_level = new_level;
if (pinned_level < NAUTILUS_CANVAS_ZOOM_LEVEL_SMALL) {
pinned_level = NAUTILUS_CANVAS_ZOOM_LEVEL_SMALL;
- } else if (pinned_level > NAUTILUS_CANVAS_ZOOM_LEVEL_LARGE) {
- pinned_level = NAUTILUS_CANVAS_ZOOM_LEVEL_LARGE;
+ } else if (pinned_level > NAUTILUS_CANVAS_ZOOM_LEVEL_LARGER) {
+ pinned_level = NAUTILUS_CANVAS_ZOOM_LEVEL_LARGER;
}
if (pinned_level == details->zoom_level) {
diff --git a/libnautilus-private/nautilus-canvas-item.c b/libnautilus-private/nautilus-canvas-item.c
index 318eb5329..426044b02 100644
--- a/libnautilus-private/nautilus-canvas-item.c
+++ b/libnautilus-private/nautilus-canvas-item.c
@@ -55,7 +55,7 @@
/* Width of the label with the standard icon size NAUTILUS_CANVAS_ICON_SIZE_STANDARD.
* It will adapt to other sizes keeping the same space.*/
-#define MAX_TEXT_WIDTH_STANDARD (134 - 2 * TEXT_BACK_PADDING_X)
+#define MAX_TEXT_WIDTH_STANDARD (142 - 2 * TEXT_BACK_PADDING_X)
/* special text height handling
* each item has three text height variables:
diff --git a/libnautilus-private/nautilus-directory-async.c b/libnautilus-private/nautilus-directory-async.c
index fd70c7b28..358dfb40c 100644
--- a/libnautilus-private/nautilus-directory-async.c
+++ b/libnautilus-private/nautilus-directory-async.c
@@ -3561,7 +3561,7 @@ thumbnail_loader_size_prepared (GdkPixbufLoader *loader,
aspect_ratio = ((double) width) / height;
/* cf. nautilus_file_get_icon() */
- max_thumbnail_size = NAUTILUS_CANVAS_ICON_SIZE_LARGE * cached_thumbnail_size / NAUTILUS_CANVAS_ICON_SIZE_SMALL;
+ max_thumbnail_size = NAUTILUS_CANVAS_ICON_SIZE_LARGER * cached_thumbnail_size / NAUTILUS_CANVAS_ICON_SIZE_SMALL;
if (MAX (width, height) > max_thumbnail_size) {
if (width > height) {
width = max_thumbnail_size;
diff --git a/libnautilus-private/nautilus-icon-info.h b/libnautilus-private/nautilus-icon-info.h
index 437d352b3..557588f2c 100644
--- a/libnautilus-private/nautilus-icon-info.h
+++ b/libnautilus-private/nautilus-icon-info.h
@@ -14,16 +14,18 @@ typedef enum {
NAUTILUS_CANVAS_ZOOM_LEVEL_SMALL,
NAUTILUS_CANVAS_ZOOM_LEVEL_STANDARD,
NAUTILUS_CANVAS_ZOOM_LEVEL_LARGE,
+ NAUTILUS_CANVAS_ZOOM_LEVEL_LARGER,
} NautilusCanvasZoomLevel;
typedef enum {
NAUTILUS_LIST_ZOOM_LEVEL_SMALL,
NAUTILUS_LIST_ZOOM_LEVEL_STANDARD,
NAUTILUS_LIST_ZOOM_LEVEL_LARGE,
+ NAUTILUS_LIST_ZOOM_LEVEL_LARGER,
} NautilusListZoomLevel;
-#define NAUTILUS_LIST_ZOOM_LEVEL_N_ENTRIES (NAUTILUS_LIST_ZOOM_LEVEL_LARGE + 1)
-#define NAUTILUS_CANVAS_ZOOM_LEVEL_N_ENTRIES (NAUTILUS_CANVAS_ZOOM_LEVEL_LARGE + 1)
+#define NAUTILUS_LIST_ZOOM_LEVEL_N_ENTRIES (NAUTILUS_LIST_ZOOM_LEVEL_LARGER + 1)
+#define NAUTILUS_CANVAS_ZOOM_LEVEL_N_ENTRIES (NAUTILUS_CANVAS_ZOOM_LEVEL_LARGER + 1)
/* Nominal icon sizes for each Nautilus zoom level.
* This scheme assumes that icons are designed to
@@ -34,10 +36,12 @@ typedef enum {
#define NAUTILUS_LIST_ICON_SIZE_SMALL 16
#define NAUTILUS_LIST_ICON_SIZE_STANDARD 32
#define NAUTILUS_LIST_ICON_SIZE_LARGE 48
+#define NAUTILUS_LIST_ICON_SIZE_LARGER 64
-#define NAUTILUS_CANVAS_ICON_SIZE_SMALL 64
-#define NAUTILUS_CANVAS_ICON_SIZE_STANDARD 96
-#define NAUTILUS_CANVAS_ICON_SIZE_LARGE 128
+#define NAUTILUS_CANVAS_ICON_SIZE_SMALL 48
+#define NAUTILUS_CANVAS_ICON_SIZE_STANDARD 64
+#define NAUTILUS_CANVAS_ICON_SIZE_LARGE 94
+#define NAUTILUS_CANVAS_ICON_SIZE_LARGER 128
/* Maximum size of an icon that the icon factory will ever produce */
#define NAUTILUS_ICON_MAXIMUM_SIZE 320
diff --git a/src/nautilus-canvas-view-container.c b/src/nautilus-canvas-view-container.c
index e9779bb56..55b498007 100644
--- a/src/nautilus-canvas-view-container.c
+++ b/src/nautilus-canvas-view-container.c
@@ -203,6 +203,7 @@ nautilus_canvas_view_container_get_icon_text_attribute_names (NautilusCanvasCont
1, /* NAUTILUS_ZOOM_LEVEL_SMALL */
2, /* NAUTILUS_ZOOM_LEVEL_STANDARD */
3, /* NAUTILUS_ZOOM_LEVEL_LARGE */
+ 3, /* NAUTILUS_ZOOM_LEVEL_LARGER */
};
piece_count = pieces_by_level[nautilus_canvas_container_get_zoom_level (container)];
diff --git a/src/nautilus-canvas-view.c b/src/nautilus-canvas-view.c
index 1d498e04d..84103688b 100644
--- a/src/nautilus-canvas-view.c
+++ b/src/nautilus-canvas-view.c
@@ -690,7 +690,7 @@ get_default_zoom_level (NautilusCanvasView *canvas_view)
default_zoom_level = g_settings_get_enum (nautilus_icon_view_preferences,
NAUTILUS_PREFERENCES_ICON_VIEW_DEFAULT_ZOOM_LEVEL);
- return CLAMP (default_zoom_level, NAUTILUS_CANVAS_ZOOM_LEVEL_SMALL, NAUTILUS_CANVAS_ZOOM_LEVEL_LARGE);
+ return CLAMP (default_zoom_level, NAUTILUS_CANVAS_ZOOM_LEVEL_SMALL, NAUTILUS_CANVAS_ZOOM_LEVEL_LARGER);
}
static void
@@ -794,7 +794,7 @@ nautilus_canvas_view_zoom_to_level (NautilusFilesView *view,
g_return_if_fail (NAUTILUS_IS_CANVAS_VIEW (view));
g_return_if_fail (new_level >= NAUTILUS_CANVAS_ZOOM_LEVEL_SMALL &&
- new_level <= NAUTILUS_CANVAS_ZOOM_LEVEL_LARGE);
+ new_level <= NAUTILUS_CANVAS_ZOOM_LEVEL_LARGER);
canvas_view = NAUTILUS_CANVAS_VIEW (view);
canvas_container = get_canvas_container (canvas_view);
@@ -821,7 +821,7 @@ nautilus_canvas_view_bump_zoom_level (NautilusFilesView *view, int zoom_incremen
new_level = nautilus_canvas_view_get_zoom_level (view) + zoom_increment;
if (new_level >= NAUTILUS_CANVAS_ZOOM_LEVEL_SMALL &&
- new_level <= NAUTILUS_CANVAS_ZOOM_LEVEL_LARGE) {
+ new_level <= NAUTILUS_CANVAS_ZOOM_LEVEL_LARGER) {
nautilus_canvas_view_zoom_to_level (view, new_level);
}
}
@@ -844,7 +844,7 @@ nautilus_canvas_view_can_zoom_in (NautilusFilesView *view)
g_return_val_if_fail (NAUTILUS_IS_CANVAS_VIEW (view), FALSE);
return nautilus_canvas_view_get_zoom_level (view)
- < NAUTILUS_CANVAS_ZOOM_LEVEL_LARGE;
+ < NAUTILUS_CANVAS_ZOOM_LEVEL_LARGER;
}
static gboolean
diff --git a/src/nautilus-list-model.c b/src/nautilus-list-model.c
index c7eb2c1fe..14656d821 100644
--- a/src/nautilus-list-model.c
+++ b/src/nautilus-list-model.c
@@ -147,6 +147,7 @@ nautilus_list_model_get_column_type (GtkTreeModel *tree_model, int index)
case NAUTILUS_LIST_MODEL_SMALL_ICON_COLUMN:
case NAUTILUS_LIST_MODEL_STANDARD_ICON_COLUMN:
case NAUTILUS_LIST_MODEL_LARGE_ICON_COLUMN:
+ case NAUTILUS_LIST_MODEL_LARGER_ICON_COLUMN:
return CAIRO_GOBJECT_TYPE_SURFACE;
case NAUTILUS_LIST_MODEL_FILE_NAME_IS_EDITABLE_COLUMN:
return G_TYPE_BOOLEAN;
@@ -257,6 +258,8 @@ nautilus_list_model_get_icon_size_for_zoom_level (NautilusListZoomLevel zoom_lev
return NAUTILUS_LIST_ICON_SIZE_STANDARD;
case NAUTILUS_LIST_ZOOM_LEVEL_LARGE:
return NAUTILUS_LIST_ICON_SIZE_LARGE;
+ case NAUTILUS_LIST_ZOOM_LEVEL_LARGER:
+ return NAUTILUS_LIST_ICON_SIZE_LARGER;
}
g_return_val_if_reached (NAUTILUS_LIST_ICON_SIZE_STANDARD);
}
@@ -296,6 +299,7 @@ nautilus_list_model_get_value (GtkTreeModel *tree_model, GtkTreeIter *iter, int
case NAUTILUS_LIST_MODEL_SMALL_ICON_COLUMN:
case NAUTILUS_LIST_MODEL_STANDARD_ICON_COLUMN:
case NAUTILUS_LIST_MODEL_LARGE_ICON_COLUMN:
+ case NAUTILUS_LIST_MODEL_LARGER_ICON_COLUMN:
g_value_init (value, CAIRO_GOBJECT_TYPE_SURFACE);
if (file != NULL) {
@@ -1256,6 +1260,8 @@ nautilus_list_model_get_zoom_level_from_column_id (int column)
return NAUTILUS_LIST_ZOOM_LEVEL_STANDARD;
case NAUTILUS_LIST_MODEL_LARGE_ICON_COLUMN:
return NAUTILUS_LIST_ZOOM_LEVEL_LARGE;
+ case NAUTILUS_LIST_MODEL_LARGER_ICON_COLUMN:
+ return NAUTILUS_LIST_ZOOM_LEVEL_LARGER;
}
g_return_val_if_reached (NAUTILUS_LIST_ZOOM_LEVEL_STANDARD);
@@ -1271,6 +1277,8 @@ nautilus_list_model_get_column_id_from_zoom_level (NautilusListZoomLevel zoom_le
return NAUTILUS_LIST_MODEL_STANDARD_ICON_COLUMN;
case NAUTILUS_LIST_ZOOM_LEVEL_LARGE:
return NAUTILUS_LIST_MODEL_LARGE_ICON_COLUMN;
+ case NAUTILUS_LIST_ZOOM_LEVEL_LARGER:
+ return NAUTILUS_LIST_MODEL_LARGER_ICON_COLUMN;
}
g_return_val_if_reached (NAUTILUS_LIST_MODEL_STANDARD_ICON_COLUMN);
diff --git a/src/nautilus-list-model.h b/src/nautilus-list-model.h
index 1e2a9b359..0a1b4d65e 100644
--- a/src/nautilus-list-model.h
+++ b/src/nautilus-list-model.h
@@ -48,6 +48,7 @@ enum {
NAUTILUS_LIST_MODEL_SMALL_ICON_COLUMN,
NAUTILUS_LIST_MODEL_STANDARD_ICON_COLUMN,
NAUTILUS_LIST_MODEL_LARGE_ICON_COLUMN,
+ NAUTILUS_LIST_MODEL_LARGER_ICON_COLUMN,
NAUTILUS_LIST_MODEL_FILE_NAME_IS_EDITABLE_COLUMN,
NAUTILUS_LIST_MODEL_NUM_COLUMNS
};
diff --git a/src/nautilus-list-view.c b/src/nautilus-list-view.c
index 3fde3f9f7..833b0e7d6 100644
--- a/src/nautilus-list-view.c
+++ b/src/nautilus-list-view.c
@@ -1535,6 +1535,7 @@ trash_orig_path_cell_data_func (GtkTreeViewColumn *column,
#define SMALL_ZOOM_ICON_PADDING 0
#define STANDARD_ZOOM_ICON_PADDING 6
#define LARGE_ZOOM_ICON_PADDING 6
+#define LARGER_ZOOM_ICON_PADDING 6
static gint
nautilus_list_view_get_icon_padding_for_zoom_level (NautilusListZoomLevel zoom_level)
@@ -1546,6 +1547,8 @@ nautilus_list_view_get_icon_padding_for_zoom_level (NautilusListZoomLevel zoom_l
return STANDARD_ZOOM_ICON_PADDING;
case NAUTILUS_LIST_ZOOM_LEVEL_LARGE:
return LARGE_ZOOM_ICON_PADDING;
+ case NAUTILUS_LIST_ZOOM_LEVEL_LARGER:
+ return LARGER_ZOOM_ICON_PADDING;
default:
g_assert_not_reached ();
}
@@ -2028,7 +2031,7 @@ get_default_zoom_level (void) {
NAUTILUS_PREFERENCES_LIST_VIEW_DEFAULT_ZOOM_LEVEL);
if (default_zoom_level < NAUTILUS_LIST_ZOOM_LEVEL_SMALL
- || default_zoom_level > NAUTILUS_LIST_ZOOM_LEVEL_LARGE) {
+ || default_zoom_level > NAUTILUS_LIST_ZOOM_LEVEL_LARGER) {
default_zoom_level = NAUTILUS_LIST_ZOOM_LEVEL_STANDARD;
}
@@ -2723,7 +2726,7 @@ nautilus_list_view_set_zoom_level (NautilusListView *view,
g_return_if_fail (NAUTILUS_IS_LIST_VIEW (view));
g_return_if_fail (new_level >= NAUTILUS_LIST_ZOOM_LEVEL_SMALL &&
- new_level <= NAUTILUS_LIST_ZOOM_LEVEL_LARGE);
+ new_level <= NAUTILUS_LIST_ZOOM_LEVEL_LARGER);
if (view->details->zoom_level == new_level) {
return;
@@ -2752,7 +2755,7 @@ nautilus_list_view_bump_zoom_level (NautilusFilesView *view, int zoom_increment)
new_level = list_view->details->zoom_level + zoom_increment;
if (new_level >= NAUTILUS_LIST_ZOOM_LEVEL_SMALL &&
- new_level <= NAUTILUS_LIST_ZOOM_LEVEL_LARGE) {
+ new_level <= NAUTILUS_LIST_ZOOM_LEVEL_LARGER) {
nautilus_list_view_zoom_to_level (view, new_level);
}
}
@@ -2770,7 +2773,7 @@ nautilus_list_view_can_zoom_in (NautilusFilesView *view)
{
g_return_val_if_fail (NAUTILUS_IS_LIST_VIEW (view), FALSE);
- return NAUTILUS_LIST_VIEW (view)->details->zoom_level < NAUTILUS_LIST_ZOOM_LEVEL_LARGE;
+ return NAUTILUS_LIST_VIEW (view)->details->zoom_level < NAUTILUS_LIST_ZOOM_LEVEL_LARGER;
}
static gboolean
diff --git a/src/resources/ui/nautilus-toolbar-view-menu.ui b/src/resources/ui/nautilus-toolbar-view-menu.ui
index d8d57e49d..b0b9fce5f 100644
--- a/src/resources/ui/nautilus-toolbar-view-menu.ui
+++ b/src/resources/ui/nautilus-toolbar-view-menu.ui
@@ -63,6 +63,7 @@
<mark value="0" position="bottom"/>
<mark value="1" position="bottom"/>
<mark value="2" position="bottom"/>
+ <mark value="3" position="bottom"/>
</marks>
</object>
<packing>
@@ -218,7 +219,7 @@
</object>
<object class="GtkAdjustment" id="zoom_adjustment">
<property name="lower">0</property>
- <property name="upper">2</property>
+ <property name="upper">3</property>
<property name="step_increment">1</property>
<property name="page_increment">1</property>
<property name="value">1</property>