summaryrefslogtreecommitdiff
path: root/amiga
diff options
context:
space:
mode:
Diffstat (limited to 'amiga')
-rwxr-xr-xamiga/gui.c9
-rwxr-xr-xamiga/gui_options.c19
-rw-r--r--amiga/options.h3
3 files changed, 28 insertions, 3 deletions
diff --git a/amiga/gui.c b/amiga/gui.c
index ba6245feb..6e115c2d8 100755
--- a/amiga/gui.c
+++ b/amiga/gui.c
@@ -2411,7 +2411,14 @@ struct gui_window *gui_create_browser_window(struct browser_window *bw,
TNA_CloseGadget, TRUE,
TAG_DONE);
- AddTail(&gwin->shared->tab_list,gwin->tab_node);
+ if(option_new_tab_last)
+ {
+ AddTail(&gwin->shared->tab_list, gwin->tab_node);
+ }
+ else
+ {
+ Insert(&gwin->shared->tab_list, gwin->tab_node, clone->window->tab_node);
+ }
RefreshSetGadgetAttrs((struct Gadget *)gwin->shared->objects[GID_TABS],
gwin->shared->win, NULL,
diff --git a/amiga/gui_options.c b/amiga/gui_options.c
index 83963257b..0f453439f 100755
--- a/amiga/gui_options.c
+++ b/amiga/gui_options.c
@@ -114,6 +114,7 @@ enum
GID_OPTS_DLDIR,
GID_OPTS_TAB_ACTIVE,
GID_OPTS_TAB_2,
+ GID_OPTS_TAB_LAST,
GID_OPTS_SEARCH_PROV,
GID_OPTS_CLIPBOARD,
GID_OPTS_CMENU_ENABLE,
@@ -280,6 +281,7 @@ void ami_gui_opts_setup(void)
gadlab[GID_OPTS_DLDIR] = (char *)ami_utf8_easy((char *)messages_get("DownloadDir"));
gadlab[GID_OPTS_TAB_ACTIVE] = (char *)ami_utf8_easy((char *)messages_get("TabActive"));
gadlab[GID_OPTS_TAB_2] = (char *)ami_utf8_easy((char *)messages_get("TabMiddle"));
+ gadlab[GID_OPTS_TAB_LAST] = (char *)ami_utf8_easy((char *)messages_get("TabLast"));
gadlab[GID_OPTS_SEARCH_PROV] = (char *)ami_utf8_easy((char *)messages_get("SearchProvider"));
gadlab[GID_OPTS_CLIPBOARD] = (char *)ami_utf8_easy((char *)messages_get("ClipboardUTF8"));
gadlab[GID_OPTS_CMENU_ENABLE] = (char *)ami_utf8_easy((char *)messages_get("Enable"));
@@ -1111,6 +1113,12 @@ void ami_gui_opts_open(void)
GA_Text, gadlab[GID_OPTS_TAB_ACTIVE],
GA_Selected, !option_new_tab_active,
CheckBoxEnd,
+ LAYOUT_AddChild, gow->objects[GID_OPTS_TAB_LAST] = CheckBoxObject,
+ GA_ID, GID_OPTS_TAB_LAST,
+ GA_RelVerify, TRUE,
+ GA_Text, gadlab[GID_OPTS_TAB_LAST],
+ GA_Selected, option_new_tab_last,
+ CheckBoxEnd,
LAYOUT_AddChild, gow->objects[GID_OPTS_TAB_2] = CheckBoxObject,
GA_ID, GID_OPTS_TAB_2,
GA_RelVerify, TRUE,
@@ -1118,10 +1126,11 @@ void ami_gui_opts_open(void)
GA_Selected, option_button_2_tab,
CheckBoxEnd,
LayoutEnd, // tabbed browsing
+ LAYOUT_AddChild,VGroupObject, // temp extra group
+ LAYOUT_BevelStyle, BVS_GROUP, // stolen from below
+ LAYOUT_Label, gadlab[GRP_OPTS_CONTEXTMENU], // and this
LAYOUT_AddChild,VGroupObject,
LAYOUT_SpaceOuter, TRUE,
- LAYOUT_BevelStyle, BVS_GROUP,
- LAYOUT_Label, gadlab[GRP_OPTS_CONTEXTMENU],
LAYOUT_AddChild, gow->objects[GID_OPTS_CMENU_ENABLE] = CheckBoxObject,
GA_ID, GID_OPTS_CMENU_ENABLE,
GA_RelVerify, TRUE,
@@ -1136,6 +1145,8 @@ void ami_gui_opts_open(void)
GA_Selected, option_sticky_context_menu,
CheckBoxEnd,
LayoutEnd, // context menus
+ CHILD_WeightedHeight, 0,
+ LayoutEnd, // temp extra group for spacing
LayoutEnd, // hgroup
CHILD_WeightedHeight, 0,
LAYOUT_AddChild, HGroupObject,
@@ -1563,6 +1574,10 @@ void ami_gui_opts_use(void)
if(data) option_new_tab_active = false;
else option_new_tab_active = true;
+ GetAttr(GA_Selected,gow->objects[GID_OPTS_TAB_LAST],(ULONG *)&data);
+ if(data) option_new_tab_last = true;
+ else option_new_tab_last = false;
+
GetAttr(GA_Selected,gow->objects[GID_OPTS_TAB_2],(ULONG *)&data);
if(data) option_button_2_tab = true;
else option_button_2_tab = false;
diff --git a/amiga/options.h b/amiga/options.h
index dda6f5127..7101bbfe8 100644
--- a/amiga/options.h
+++ b/amiga/options.h
@@ -32,6 +32,7 @@ extern bool option_sticky_context_menu;
extern bool option_truecolour_mouse_pointers;
extern bool option_use_os_pointers;
extern bool option_new_tab_active;
+extern bool option_new_tab_last;
extern bool option_kiosk_mode;
extern char *option_search_engines_file;
extern char *option_search_ico_file;
@@ -79,6 +80,7 @@ bool option_sticky_context_menu = false; \
bool option_truecolour_mouse_pointers = false; \
bool option_use_os_pointers = true; \
bool option_new_tab_active = false; \
+bool option_new_tab_last = true; \
bool option_kiosk_mode = false; \
char *option_search_engines_file = 0; \
char *option_search_ico_file = 0; \
@@ -126,6 +128,7 @@ int option_amiga_ydpi = 72; \
{ "truecolour_mouse_pointers", OPTION_BOOL, &option_truecolour_mouse_pointers}, \
{ "os_mouse_pointers", OPTION_BOOL, &option_use_os_pointers}, \
{ "new_tab_is_active", OPTION_BOOL, &option_new_tab_active}, \
+{ "new_tab_last", OPTION_BOOL, &option_new_tab_last}, \
{ "kiosk_mode", OPTION_BOOL, &option_kiosk_mode}, \
{ "search_engines_file", OPTION_STRING, &option_search_engines_file }, \
{ "search_ico_file", OPTION_STRING, &option_search_ico_file }, \