diff --git a/Gtk4_Reset/res/mydock.ui b/Gtk4_Reset/res/mydock.ui index 026eee7..f11e2ea 100644 --- a/Gtk4_Reset/res/mydock.ui +++ b/Gtk4_Reset/res/mydock.ui @@ -17,7 +17,7 @@ 1 1 - + 48 My_GtkUI @@ -205,7 +205,7 @@ 1 1 - + 48 my_trash diff --git a/Gtk4_Reset/src/core/MyStack.cpp b/Gtk4_Reset/src/core/MyStack.cpp index 616869d..8462cf6 100644 --- a/Gtk4_Reset/src/core/MyStack.cpp +++ b/Gtk4_Reset/src/core/MyStack.cpp @@ -135,7 +135,7 @@ void create_main_stack(GtkWindow *win) main_win_set_prefs(MAIN_WIN(win), prefs); // Get DPI setting - double dpi = my_prefs_get_dpi(prefs); + double dpi = my_prefs_get_dpi_value(prefs); gtk_widget_set_size_request(btnlogin, 60 * dpi, 25 * dpi); gtk_widget_set_size_request(user_label, 60 * dpi, 25 * dpi); gtk_image_set_pixel_size(GTK_IMAGE(user_image), 40 * dpi); diff --git a/Gtk4_Reset/src/ui/MyDock.cpp b/Gtk4_Reset/src/ui/MyDock.cpp index 93311d3..91f4361 100644 --- a/Gtk4_Reset/src/ui/MyDock.cpp +++ b/Gtk4_Reset/src/ui/MyDock.cpp @@ -41,7 +41,8 @@ struct _MyDock GtkWidget *btnfiles, *btndraw, *btncalc, *btnedit, *btnimage, // Dock buttons *btnset, *btngame, *btngame24, *btnmine, *btnmedia; GtkWidget *image_file, *image_draw, *image_calc, *image_game, // Image widget for dock buttons - *image_edit, *image_viewer, *image_game24, *image_mine, *image_set, *image_media; + *image_edit, *image_viewer, *image_game24, *image_mine, *image_set, + *image_launch, *image_media, *image_trash; GtkWidget *padabout, *padaud, *paddraw, *padfile, *padgedit, // Launchpad icons *padgame, *padimage, *padnote, *padedit, *padvlc, *padvlc_win32, *padrun, *padset, *padgame24, *padcalc, *padmine, *padmedia; @@ -661,6 +662,22 @@ static void padvlc_win32(GtkWidget *widget, MyDock *dock) btnlaunch_clicked(NULL, dock); } +static void my_dock_apply_dpi(MyDock *self, double dpi) +{ + gtk_image_set_pixel_size(GTK_IMAGE(self->image_launch), 40 * dpi); + gtk_image_set_pixel_size(GTK_IMAGE(self->image_file), 40 * dpi); + gtk_image_set_pixel_size(GTK_IMAGE(self->image_calc), 40 * dpi); + gtk_image_set_pixel_size(GTK_IMAGE(self->image_draw), 40 * dpi); + gtk_image_set_pixel_size(GTK_IMAGE(self->image_edit), 40 * dpi); + gtk_image_set_pixel_size(GTK_IMAGE(self->image_game24), 40 * dpi); + gtk_image_set_pixel_size(GTK_IMAGE(self->image_game), 40 * dpi); + gtk_image_set_pixel_size(GTK_IMAGE(self->image_viewer), 40 * dpi); + gtk_image_set_pixel_size(GTK_IMAGE(self->image_mine), 40 * dpi); + gtk_image_set_pixel_size(GTK_IMAGE(self->image_set), 40 * dpi); + gtk_image_set_pixel_size(GTK_IMAGE(self->image_media), 40 * dpi); + gtk_image_set_pixel_size(GTK_IMAGE(self->image_trash), 40 * dpi); +} + static void my_dock_get_widgets(MyDock *self) { // Get widgets @@ -673,6 +690,7 @@ static void my_dock_get_widgets(MyDock *self) self->icons_sw = GTK_WIDGET(gtk_builder_get_object(self->dock_builder, "icons_sw")); self->icons_box = GTK_WIDGET(gtk_builder_get_object(self->dock_builder, "icons_box")); self->btnlaunch = GTK_WIDGET(gtk_builder_get_object(self->dock_builder, "btnlaunch")); + self->image_launch = GTK_WIDGET(gtk_builder_get_object(self->dock_builder, "image_launch")); self->btnfiles = GTK_WIDGET(gtk_builder_get_object(self->dock_builder, "btnfiles")); self->image_file = GTK_WIDGET(gtk_builder_get_object(self->dock_builder, "image_file")); self->btncalc = GTK_WIDGET(gtk_builder_get_object(self->dock_builder, "btncalc")); @@ -693,6 +711,7 @@ static void my_dock_get_widgets(MyDock *self) self->image_set = GTK_WIDGET(gtk_builder_get_object(self->dock_builder, "image_set")); self->btnmedia = GTK_WIDGET(gtk_builder_get_object(self->dock_builder, "btnmedia")); self->image_media = GTK_WIDGET(gtk_builder_get_object(self->dock_builder, "image_media")); + self->image_trash = GTK_WIDGET(gtk_builder_get_object(self->dock_builder, "image_trash")); self->launchpad_stack = GTK_WIDGET(gtk_builder_get_object(self->dock_builder, "launchpad_stack")); self->default_page = GTK_WIDGET(gtk_builder_get_object(self->dock_builder, "default_page")); self->launchpad_page = GTK_WIDGET(gtk_builder_get_object(self->dock_builder, "launchpad_page")); @@ -955,6 +974,10 @@ static void my_dock_init(MyDock *self) gtk_style_context_add_provider_for_display(gtk_widget_get_display(self->context_menu), GTK_STYLE_PROVIDER(provider), GTK_STYLE_PROVIDER_PRIORITY_APPLICATION); + + // Apply DPI Setting for the dock + double dpi_value = my_prefs_get_dpi_value(self->prefs_win); + my_dock_apply_dpi(self, dpi_value); } static void my_dock_class_init(MyDockClass *klass) diff --git a/Gtk4_Reset/src/ui/MyPrefs.cpp b/Gtk4_Reset/src/ui/MyPrefs.cpp index 06db066..0cbeb2b 100644 --- a/Gtk4_Reset/src/ui/MyPrefs.cpp +++ b/Gtk4_Reset/src/ui/MyPrefs.cpp @@ -1045,7 +1045,7 @@ void my_prefs_set_background(MyPrefs *prefs_win, GtkWidget *back) is_internal, prefs_win); } -double my_prefs_get_dpi(MyPrefs *self) +double my_prefs_get_dpi_value(MyPrefs *self) { return dpi_values[self->dpi_set]; } diff --git a/Gtk4_Reset/src/ui/MyPrefs.h b/Gtk4_Reset/src/ui/MyPrefs.h index 0fd6a67..af0b340 100644 --- a/Gtk4_Reset/src/ui/MyPrefs.h +++ b/Gtk4_Reset/src/ui/MyPrefs.h @@ -21,6 +21,6 @@ DockPos my_prefs_get_dock_pos(MyPrefs *self); void my_prefs_set_background(MyPrefs *prefs_win, GtkWidget *back); -double my_prefs_get_dpi(MyPrefs *self); +double my_prefs_get_dpi_value(MyPrefs *self); MyPrefs *my_prefs_new();