From a67e47448d5534302f0efe588942e761881f28bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Erik=20Bro=C4=8Dko?= Date: Wed, 11 Nov 2020 16:43:52 +0100 Subject: Duplicate tabs using the scroll wheel (#1456) * middle-clicking the reload button duplicates tab --- src/caja-window.c | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) (limited to 'src/caja-window.c') diff --git a/src/caja-window.c b/src/caja-window.c index 42d43e82..640932c2 100644 --- a/src/caja-window.c +++ b/src/caja-window.c @@ -272,6 +272,12 @@ caja_window_go_up_signal (CajaWindow *window, gboolean close_behind) return TRUE; } +static void +caja_window_reload_signal (CajaWindow *window) +{ + caja_window_reload (window, FALSE); +} + void caja_window_new_tab (CajaWindow *window) { @@ -476,6 +482,28 @@ caja_window_sync_allow_stop (CajaWindow *window, } } +void +caja_window_reload (CajaWindow *window, gboolean new_tab) +{ + CajaWindowSlot *slot; + + g_assert (CAJA_IS_WINDOW (window)); + + slot = window->details->active_pane->active_slot; + + if (new_tab && slot->location != NULL) + { + caja_window_slot_open_location_full (slot, slot->location, + CAJA_WINDOW_OPEN_ACCORDING_TO_MODE, + CAJA_WINDOW_OPEN_FLAG_NEW_TAB, + NULL, NULL, NULL); + } + else + { + caja_window_slot_reload (slot); + } +} + void caja_window_allow_reload (CajaWindow *window, gboolean allow) { @@ -2220,6 +2248,6 @@ caja_window_class_init (CajaWindowClass *class) "prompt-for-location", 1, G_TYPE_STRING, "/"); - class->reload = caja_window_reload; + class->reload = caja_window_reload_signal; class->go_up = caja_window_go_up_signal; } -- cgit v1.2.1