diff options
author | Chris Young <chris@unsatisfactorysoftware.co.uk> | 2015-09-04 00:26:52 +0100 |
---|---|---|
committer | Chris Young <chris@unsatisfactorysoftware.co.uk> | 2015-09-04 00:26:52 +0100 |
commit | 41f219192c6a9ee34a14d0cb149946eff9eeec50 (patch) | |
tree | 989c9448246342cc761fad523d15abe4d653a58f /amiga/gui.c | |
parent | cdaae7b30e22373b99117438a15e062e8749688d (diff) | |
download | netsurf-41f219192c6a9ee34a14d0cb149946eff9eeec50.tar.gz netsurf-41f219192c6a9ee34a14d0cb149946eff9eeec50.tar.bz2 |
Create back/forward context menu using menuclass
Reconstructs itself periodically as it cannot be created on demand
Diffstat (limited to 'amiga/gui.c')
-rw-r--r-- | amiga/gui.c | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/amiga/gui.c b/amiga/gui.c index 9b312e52f..3a09a1e1b 100644 --- a/amiga/gui.c +++ b/amiga/gui.c @@ -1103,6 +1103,10 @@ static void ami_update_buttons(struct gui_window_2 *gwin) SetGadgetAttrs((struct Gadget *)gwin->objects[GID_CLOSETAB], gwin->win, NULL, GA_Disabled, tabclose, TAG_DONE); } + + /* Update the back/forward buttons history context menu */ + ami_ctxmenu_history_create(AMI_CTXMENU_HISTORY_BACK, gwin); + ami_ctxmenu_history_create(AMI_CTXMENU_HISTORY_FORWARD, gwin); } void ami_gui_history(struct gui_window_2 *gwin, bool back) @@ -3771,6 +3775,8 @@ gui_window_create(struct browser_window *bw, newprefs_hook.h_Data = 0; g->shared->ctxmenu_hook = ami_ctxmenu_get_hook(g->shared); + g->shared->history_ctxmenu[AMI_CTXMENU_HISTORY_BACK] = NULL; + g->shared->history_ctxmenu[AMI_CTXMENU_HISTORY_FORWARD] = NULL; if(nsoption_bool(window_simple_refresh) == true) { refresh_mode = WA_SimpleRefresh; @@ -3962,9 +3968,10 @@ gui_window_create(struct browser_window *bw, LAYOUT_AddChild, g->shared->objects[GID_TOOLBARLAYOUT] = LayoutHObj, LAYOUT_VertAlignment, LALIGN_CENTER, LAYOUT_AddChild, g->shared->objects[GID_BACK] = ButtonObj, - GA_ID,GID_BACK, - GA_RelVerify,TRUE, - GA_Disabled,TRUE, + GA_ID, GID_BACK, + GA_RelVerify, TRUE, + GA_Disabled, TRUE, + GA_ContextMenu, ami_ctxmenu_history_create(AMI_CTXMENU_HISTORY_BACK, g->shared), GA_HintInfo, g->shared->helphints[GID_BACK], BUTTON_RenderImage,BitMapObj, BITMAP_SourceFile,nav_west, @@ -3977,9 +3984,10 @@ gui_window_create(struct browser_window *bw, CHILD_WeightedWidth,0, CHILD_WeightedHeight,0, LAYOUT_AddChild, g->shared->objects[GID_FORWARD] = ButtonObj, - GA_ID,GID_FORWARD, - GA_RelVerify,TRUE, - GA_Disabled,TRUE, + GA_ID, GID_FORWARD, + GA_RelVerify, TRUE, + GA_Disabled, TRUE, + GA_ContextMenu, ami_ctxmenu_history_create(AMI_CTXMENU_HISTORY_FORWARD, g->shared), GA_HintInfo, g->shared->helphints[GID_FORWARD], BUTTON_RenderImage,BitMapObj, BITMAP_SourceFile,nav_east, @@ -4391,6 +4399,8 @@ static void gui_window_destroy(struct gui_window *g) ami_gui_opts_websearch_free(g->shared->web_search_list); if(g->shared->search_bm) DisposeObject(g->shared->search_bm); + DisposeObject((Object *)g->shared->history_ctxmenu[AMI_CTXMENU_HISTORY_BACK]); + DisposeObject((Object *)g->shared->history_ctxmenu[AMI_CTXMENU_HISTORY_FORWARD]); ami_ctxmenu_release_hook(g->shared->ctxmenu_hook); ami_free_menulabs(g->shared); #ifndef __amigaos4__ |