From 4aab3627b298076ac4fb6b02cbf9f92c412b58c1 Mon Sep 17 00:00:00 2001 From: Ivan Yarcev Date: Fri, 14 Nov 2025 10:00:42 +0600 Subject: [PATCH] Added function to block combo boxes from scrolling wih M3 --- source/libublsettings-gtk3-misc.c | 9 +++++++++ source/libublsettings-gtk3.h | 5 +++++ 2 files changed, 14 insertions(+) diff --git a/source/libublsettings-gtk3-misc.c b/source/libublsettings-gtk3-misc.c index 6fa51b0..f3df043 100644 --- a/source/libublsettings-gtk3-misc.c +++ b/source/libublsettings-gtk3-misc.c @@ -544,4 +544,13 @@ int yon_ip_mask_get_bits(char *mask){ } yon_char_parsed_free(parsed,size); return bits; +} + +gboolean _yon_gtk_combo_box_block_scroll(GtkWidget *self, GdkEvent *event, void*){ + gtk_propagate_event(gtk_widget_get_parent(self), (GdkEvent*)event); + return 1; +} + +void yon_gtk_combo_box_block_scroll(GtkComboBox *target){ + g_signal_connect(G_OBJECT(target),"scroll-event",G_CALLBACK(_yon_gtk_combo_box_block_scroll),NULL); } \ No newline at end of file diff --git a/source/libublsettings-gtk3.h b/source/libublsettings-gtk3.h index ac6c1bf..02c055a 100644 --- a/source/libublsettings-gtk3.h +++ b/source/libublsettings-gtk3.h @@ -633,4 +633,9 @@ typedef struct apps void yon_apps_init(); apps *yon_apps_get(char *name); config_str yon_apps_get_by_categories(config_str categories, int categories_size, int *final_size); + + +/// @brief Block scroll element changing for GtkComboBox +/// @param target - GtkComboBox to block +void yon_gtk_combo_box_block_scroll(GtkComboBox *target); #endif \ No newline at end of file