diff options
Diffstat (limited to 'fiv-browser.c')
| -rw-r--r-- | fiv-browser.c | 8 | 
1 files changed, 6 insertions, 2 deletions
diff --git a/fiv-browser.c b/fiv-browser.c index 4a904f0..89a94b6 100644 --- a/fiv-browser.c +++ b/fiv-browser.c @@ -1,7 +1,7 @@  //  // fiv-browser.c: filesystem browsing widget  // -// Copyright (c) 2021 - 2024, Přemysl Eric Janouch <p@janouch.name> +// Copyright (c) 2021 - 2025, Přemysl Eric Janouch <p@janouch.name>  //  // Permission to use, copy, modify, and/or distribute this software for any  // purpose with or without fee is hereby granted. @@ -1323,10 +1323,14 @@ fiv_browser_button_release_event(GtkWidget *widget, GdkEventButton *event)  	if (!entry || entry != entry_at(self, event->x, event->y))  		return GDK_EVENT_PROPAGATE; +	GdkModifierType primary = gdk_keymap_get_modifier_mask( +		gdk_keymap_get_for_display(gtk_widget_get_display(widget)), +		GDK_MODIFIER_INTENT_PRIMARY_ACCELERATOR); +  	guint state = event->state & gtk_accelerator_get_default_mod_mask();  	if ((event->button == GDK_BUTTON_PRIMARY && state == 0))  		return open_entry(widget, entry, FALSE); -	if ((event->button == GDK_BUTTON_PRIMARY && state == GDK_CONTROL_MASK) || +	if ((event->button == GDK_BUTTON_PRIMARY && state == primary) ||  		(event->button == GDK_BUTTON_MIDDLE && state == 0))  		return open_entry(widget, entry, TRUE);  	return GDK_EVENT_PROPAGATE;  | 
