diff options
author | Jorge Arellano Cid <jcid@dillo.org> | 2011-04-29 12:30:39 -0300 |
---|---|---|
committer | Jorge Arellano Cid <jcid@dillo.org> | 2011-04-29 12:30:39 -0300 |
commit | 9193ddeffbe3ede83193f302cba21b86e6b6c94b (patch) | |
tree | 5b1aba5e94771380a3594ca95cf335d6b7567fa5 | |
parent | 1e61bf1c83d638941739be2c786af63851bc4338 (diff) |
Set middle click as default for close tab (+ right_click_closes_tab in dillorc)
-rw-r--r-- | dillorc | 4 | ||||
-rw-r--r-- | src/prefs.c | 1 | ||||
-rw-r--r-- | src/prefs.h | 1 | ||||
-rw-r--r-- | src/prefsparser.cc | 1 | ||||
-rw-r--r-- | src/uicmd.cc | 3 |
5 files changed, 9 insertions, 1 deletions
@@ -228,6 +228,10 @@ # If you prefer to open a new Window instead, set it to NO. #middle_click_opens_new_tab=YES +# A mouse's middle click over a tab closes the Tab. +# With mousewheel mouses, right click feels way better (set to YES). +#right_click_closes_tab=NO + # Mouse middle click by default drives drag-scrolling. # To paste an URL into the window instead of scrolling, set it to NO. # Note: You could always paste the URL onto the URL box clear button. diff --git a/src/prefs.c b/src/prefs.c index f968710a..be0882bd 100644 --- a/src/prefs.c +++ b/src/prefs.c @@ -70,6 +70,7 @@ void a_Prefs_init(void) prefs.load_stylesheets=TRUE; prefs.middle_click_drags_page = TRUE; prefs.middle_click_opens_new_tab = TRUE; + prefs.right_click_closes_tab = FALSE; prefs.no_proxy = dStrdup(PREFS_NO_PROXY); prefs.panel_size = P_medium; prefs.parse_embedded_css=TRUE; diff --git a/src/prefs.h b/src/prefs.h index 4009925c..4debee89 100644 --- a/src/prefs.h +++ b/src/prefs.h @@ -84,6 +84,7 @@ struct _DilloPrefs { char *font_monospace; bool_t enterpress_forces_submit; bool_t middle_click_opens_new_tab; + bool_t right_click_closes_tab; char *search_url; char *save_dir; bool_t show_msg; diff --git a/src/prefsparser.cc b/src/prefsparser.cc index 95f98c16..7d0582cd 100644 --- a/src/prefsparser.cc +++ b/src/prefsparser.cc @@ -81,6 +81,7 @@ int PrefsParser::parseOption(char *name, char *value) PREFS_BOOL }, { "middle_click_opens_new_tab", &prefs.middle_click_opens_new_tab, PREFS_BOOL }, + { "right_click_closes_tab", &prefs.right_click_closes_tab, PREFS_BOOL }, { "no_proxy", &prefs.no_proxy, PREFS_STRING }, { "panel_size", &prefs.panel_size, PREFS_PANEL_SIZE }, { "parse_embedded_css", &prefs.parse_embedded_css, PREFS_BOOL }, diff --git a/src/uicmd.cc b/src/uicmd.cc index c12b7e9d..fd6067e6 100644 --- a/src/uicmd.cc +++ b/src/uicmd.cc @@ -125,7 +125,8 @@ static void tab_btn_cb (Fl_Widget *w, void *cb_data) if (b == FL_LEFT_MOUSE) { tabs->switch_tab(btn); - } else if (b == FL_RIGHT_MOUSE) { + } else if ((b == FL_RIGHT_MOUSE && prefs.right_click_closes_tab) || + (b == FL_MIDDLE_MOUSE && !prefs.right_click_closes_tab)) { // TODO: just an example, not necessarily final a_UIcmd_close_bw(a_UIcmd_get_bw_by_widget(btn->ui())); } |