summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLionel Landwerlin <lionel.g.landwerlin@intel.com>2017-01-06 15:51:08 +0000
committerLionel Landwerlin <lionel.g.landwerlin@intel.com>2017-01-09 23:52:21 +0000
commit54616de3c44d9db199aba2025305abfa471e38c7 (patch)
tree6f5a068490fe04d90a34c4aceddddaf5604c1380
parent7de67e18dddeb54ab8c1b53f5c753b24a7d62fad (diff)
downloadnautilus-54616de3c44d9db199aba2025305abfa471e38c7.tar.gz
canvas-container: listen to scale factor to invalidate icons
This is one of the condition that needs to trigger an invalidation to recompute layout at the correct size. https://bugzilla.gnome.org/show_bug.cgi?id=776896
-rw-r--r--src/nautilus-canvas-container.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/nautilus-canvas-container.c b/src/nautilus-canvas-container.c
index e15630e46..7f95ba116 100644
--- a/src/nautilus-canvas-container.c
+++ b/src/nautilus-canvas-container.c
@@ -5749,6 +5749,16 @@ handle_focus_out_event (GtkWidget *widget,
return FALSE;
}
+static void
+handle_scale_factor_changed (GObject *object,
+ GParamSpec *pspec,
+ gpointer user_data)
+{
+ nautilus_canvas_container_request_update_all_internal (NAUTILUS_CANVAS_CONTAINER (object),
+ TRUE);
+}
+
+
static int text_ellipsis_limits[NAUTILUS_CANVAS_ZOOM_LEVEL_N_ENTRIES];
static int desktop_text_ellipsis_limit;
@@ -5861,6 +5871,9 @@ nautilus_canvas_container_init (NautilusCanvasContainer *container)
g_signal_connect (container, "focus-out-event",
G_CALLBACK (handle_focus_out_event), NULL);
+ g_signal_connect (container, "notify::scale-factor",
+ G_CALLBACK (handle_scale_factor_changed), NULL);
+
if (!setup_prefs)
{
g_signal_connect_swapped (nautilus_icon_view_preferences,