aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPřemysl Eric Janouch <p@janouch.name>2025-10-18 15:24:36 +0100
committerPřemysl Eric Janouch <p@janouch.name>2025-10-18 15:24:36 +0100
commitcf6ded1d03f0b78c18ba1a26fc3e3e6d77762f4b (patch)
treeee9af13dfb1fcf7e92d45cc43992d764e86cc62b
parent3bea18708fa17339136f6860ae38c9882f5b6ed5 (diff)
downloadfiv-cf6ded1d03f0b78c18ba1a26fc3e3e6d77762f4b.tar.gz
fiv-cf6ded1d03f0b78c18ba1a26fc3e3e6d77762f4b.tar.xz
fiv-cf6ded1d03f0b78c18ba1a26fc3e3e6d77762f4b.zip
Make browser Cmd+click open new windows on macOS
-rw-r--r--fiv-browser.c8
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;