From a8978726b6879529ea5bdbae73f03a9a46f1f111 Mon Sep 17 00:00:00 2001 From: Dennis Kaarsemaker Date: Wed, 27 Apr 2016 21:59:50 +0200 Subject: [PATCH 1/2] Add an option to create windows at the end I prefer to group my windows by topic, with occasional gaps between them to start the next group at a multiple of 10. This new option avoids irssi filling those gaps. --- src/fe-common/core/fe-windows.c | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/src/fe-common/core/fe-windows.c b/src/fe-common/core/fe-windows.c index 46c1593b..ee3b8d0b 100644 --- a/src/fe-common/core/fe-windows.c +++ b/src/fe-common/core/fe-windows.c @@ -49,16 +49,28 @@ static int window_get_new_refnum(void) refnum = 1; tmp = windows; - while (tmp != NULL) { - win = tmp->data; - - if (refnum != win->refnum) { + if(settings_get_bool("window_create_at_end")) { + while (tmp != NULL) { + win = tmp->data; + if(win->refnum > refnum) + refnum = win->refnum; tmp = tmp->next; - continue; } refnum++; - tmp = windows; + } + else { + while (tmp != NULL) { + win = tmp->data; + + if (refnum != win->refnum) { + tmp = tmp->next; + continue; + } + + refnum++; + tmp = windows; + } } return refnum; @@ -712,6 +724,7 @@ void windows_init(void) daycheck = 0; daytag = -1; settings_add_bool("lookandfeel", "window_auto_change", FALSE); settings_add_bool("lookandfeel", "windows_auto_renumber", TRUE); + settings_add_bool("lookandfeel", "window_create_at_end", FALSE); settings_add_bool("lookandfeel", "window_check_level_first", FALSE); settings_add_level("lookandfeel", "window_default_level", "NONE"); From ac337a560bf86f3c76f44116c29ae0e3574a1e7d Mon Sep 17 00:00:00 2001 From: Dennis Kaarsemaker Date: Wed, 27 Apr 2016 22:04:04 +0200 Subject: [PATCH 2/2] Add an option to specify a minimum window number I prefer irrsi's autogenerated windows for queries to be well away from well-known and consciously numbered windows. --- src/fe-common/core/fe-windows.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/fe-common/core/fe-windows.c b/src/fe-common/core/fe-windows.c index ee3b8d0b..1eaa745c 100644 --- a/src/fe-common/core/fe-windows.c +++ b/src/fe-common/core/fe-windows.c @@ -47,7 +47,7 @@ static int window_get_new_refnum(void) GSList *tmp; int refnum; - refnum = 1; + refnum = settings_get_int("window_create_min_number"); tmp = windows; if(settings_get_bool("window_create_at_end")) { while (tmp != NULL) { @@ -725,6 +725,7 @@ void windows_init(void) settings_add_bool("lookandfeel", "window_auto_change", FALSE); settings_add_bool("lookandfeel", "windows_auto_renumber", TRUE); settings_add_bool("lookandfeel", "window_create_at_end", FALSE); + settings_add_int("lookandfeel", "window_create_min_number", 0); settings_add_bool("lookandfeel", "window_check_level_first", FALSE); settings_add_level("lookandfeel", "window_default_level", "NONE");