summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVictor Kareh <[email protected]>2018-04-04 07:27:14 -0400
committerraveit65 <[email protected]>2018-04-05 09:10:07 +0200
commitce14bef5c36993b13f117d3134abac36825fef9a (patch)
treea4331a34960282790e01468be042c1cb074945a3
parentdade92d4f1edb6f47933e77229801971cb458ef1 (diff)
downloadcaja-ce14bef5c36993b13f117d3134abac36825fef9a.tar.bz2
caja-ce14bef5c36993b13f117d3134abac36825fef9a.tar.xz
sidebar: Respect sidebar dimensions on HiDPI
-rw-r--r--src/caja-navigation-window.c8
-rw-r--r--src/caja-sidebar-title.c4
2 files changed, 10 insertions, 2 deletions
diff --git a/src/caja-navigation-window.c b/src/caja-navigation-window.c
index 531c9ae0..a21e1595 100644
--- a/src/caja-navigation-window.c
+++ b/src/caja-navigation-window.c
@@ -362,9 +362,12 @@ side_pane_size_allocate_callback (GtkWidget *widget,
gpointer user_data)
{
CajaNavigationWindow *window;
+ gint scale;
window = CAJA_NAVIGATION_WINDOW (user_data);
+ scale = gtk_widget_get_scale_factor (widget);
+ allocation->width = allocation->width / scale;
if (allocation->width != window->details->side_pane_width)
{
window->details->side_pane_width = allocation->width;
@@ -377,11 +380,14 @@ side_pane_size_allocate_callback (GtkWidget *widget,
static void
setup_side_pane_width (CajaNavigationWindow *window)
{
+ gint scale;
+
g_return_if_fail (window->sidebar != NULL);
+ scale = gtk_widget_get_scale_factor (GTK_WIDGET (window->sidebar));
window->details->side_pane_width =
g_settings_get_int (caja_window_state,
- CAJA_WINDOW_STATE_SIDEBAR_WIDTH);
+ CAJA_WINDOW_STATE_SIDEBAR_WIDTH) * scale;
gtk_paned_set_position (GTK_PANED (window->details->content_paned),
window->details->side_pane_width);
diff --git a/src/caja-sidebar-title.c b/src/caja-sidebar-title.c
index 3b257230..2c2cebe1 100644
--- a/src/caja-sidebar-title.c
+++ b/src/caja-sidebar-title.c
@@ -731,9 +731,11 @@ caja_sidebar_title_size_allocate (GtkWidget *widget,
CajaSidebarTitle *sidebar_title;
guint16 old_width;
guint best_icon_size;
+ gint scale;
GtkAllocation old_allocation, new_allocation;
sidebar_title = CAJA_SIDEBAR_TITLE (widget);
+ scale = gtk_widget_get_scale_factor (widget);
gtk_widget_get_allocation (widget, &old_allocation);
old_width = old_allocation.width;
@@ -744,7 +746,7 @@ caja_sidebar_title_size_allocate (GtkWidget *widget,
if (old_width != new_allocation.width)
{
- best_icon_size = get_best_icon_size (sidebar_title);
+ best_icon_size = get_best_icon_size (sidebar_title) / scale;
if (best_icon_size != sidebar_title->details->best_icon_size)
{
sidebar_title->details->best_icon_size = best_icon_size;