summaryrefslogtreecommitdiff
path: root/amiga
diff options
context:
space:
mode:
Diffstat (limited to 'amiga')
-rw-r--r--amiga/context_menu.c1
-rw-r--r--amiga/download.c2
-rw-r--r--amiga/font_scan.c2
-rw-r--r--amiga/gui.c21
-rwxr-xr-xamiga/gui.h8
-rwxr-xr-xamiga/gui_options.c2
-rwxr-xr-xamiga/history_local.c4
-rwxr-xr-xamiga/login.c2
-rw-r--r--amiga/print.c4
-rwxr-xr-xamiga/search.c2
-rw-r--r--amiga/tree.c4
11 files changed, 33 insertions, 19 deletions
diff --git a/amiga/context_menu.c b/amiga/context_menu.c
index 88156203a..df16a0fd7 100644
--- a/amiga/context_menu.c
+++ b/amiga/context_menu.c
@@ -223,7 +223,6 @@ static void ami_context_menu_add_submenu(Object *ctxmenuobj, ULONG cmsub, void *
* CMID_SELECTFILE - userdata = ami_file_input_menu_data *
*/
- struct browser_window *bw = NULL;
struct gui_window *gw = NULL;
switch(cmsub)
diff --git a/amiga/download.c b/amiga/download.c
index 47ca18c63..1c49629e7 100644
--- a/amiga/download.c
+++ b/amiga/download.c
@@ -148,7 +148,7 @@ static struct gui_download_window *gui_download_window_create(download_context *
}
dw->objects[OID_MAIN] = WindowObject,
- WA_ScreenTitle,nsscreentitle,
+ WA_ScreenTitle, ami_gui_get_screen_title(),
WA_Title, dw->url,
WA_Activate, TRUE,
WA_DepthGadget, TRUE,
diff --git a/amiga/font_scan.c b/amiga/font_scan.c
index 43bdb8ea9..f39fcac2f 100644
--- a/amiga/font_scan.c
+++ b/amiga/font_scan.c
@@ -101,7 +101,7 @@ static struct ami_font_scan_window *ami_font_scan_gui_open(int32 fonts)
fsw->glyphtext = ami_utf8_easy(messages_get("FontGlyphs"));
fsw->objects[FS_OID_MAIN] = WindowObject,
- WA_ScreenTitle, nsscreentitle,
+ WA_ScreenTitle, ami_gui_get_screen_title(),
WA_Title, fsw->title,
WA_Activate, TRUE,
WA_DepthGadget, TRUE,
diff --git a/amiga/gui.c b/amiga/gui.c
index 680b83624..dd4daafac 100644
--- a/amiga/gui.c
+++ b/amiga/gui.c
@@ -175,6 +175,7 @@ static int screen_signal = -1;
static ULONG sz_gad_width = 0;
static ULONG sz_gad_height = 0;
static bool win_destroyed;
+static STRPTR nsscreentitle;
static struct MsgPort *applibport = NULL;
static ULONG applibsig = 0;
@@ -473,6 +474,15 @@ colour_option_from_pen(UWORD pen,
return NSERROR_OK;
}
+/* exported interface documented in amiga/gui.h */
+STRPTR ami_gui_get_screen_title(void)
+{
+ if(nsscreentitle == NULL)
+ nsscreentitle = ASPrintf("NetSurf %s", netsurf_version);
+
+ return nsscreentitle;
+}
+
static void ami_set_screen_defaults(struct Screen *screen)
{
nsoption_default_set_int(window_x, 0);
@@ -702,7 +712,7 @@ static void ami_openscreen(void)
LOG(("Screen signal %d", screen_signal));
scrn = OpenScreenTags(NULL,
SA_DisplayID, id,
- SA_Title, nsscreentitle,
+ SA_Title, ami_gui_get_screen_title(),
SA_Type, PUBLICSCREEN,
SA_PubName, "NetSurf",
SA_PubSig, screen_signal,
@@ -2971,7 +2981,7 @@ static void gui_quit(void)
LOG(("Closing screen"));
ami_gui_close_screen(scrn, locked_screen, FALSE);
- FreeVec(nsscreentitle);
+ if(nsscreentitle) FreeVec(nsscreentitle);
LOG(("Freeing menu items"));
ami_context_menu_free();
@@ -3643,7 +3653,7 @@ gui_window_create(struct browser_window *bw,
}
g->shared->objects[OID_MAIN] = WindowObject,
- WA_ScreenTitle,nsscreentitle,
+ WA_ScreenTitle, ami_gui_get_screen_title(),
WA_Activate, TRUE,
WA_DepthGadget, TRUE,
WA_DragBar, TRUE,
@@ -3856,7 +3866,7 @@ gui_window_create(struct browser_window *bw,
g->tab_node = NULL;
g->shared->objects[OID_MAIN] = WindowObject,
- WA_ScreenTitle,nsscreentitle,
+ WA_ScreenTitle, ami_gui_get_screen_title(),
WA_Activate, TRUE,
WA_DepthGadget, FALSE,
WA_DragBar, FALSE,
@@ -4170,7 +4180,7 @@ static void gui_window_set_title(struct gui_window *g, const char *title)
{
if(g->shared->wintitle) free(g->shared->wintitle);
g->shared->wintitle = strdup(utf8title);
- SetWindowTitles(g->shared->win, g->shared->wintitle, nsscreentitle);
+ SetWindowTitles(g->shared->win, g->shared->wintitle, ami_gui_get_screen_title());
}
}
}
@@ -5399,7 +5409,6 @@ int main(int argc, char** argv)
ami_init_mouse_pointers();
win_destroyed = false;
- nsscreentitle = ASPrintf("NetSurf %s",netsurf_version);
ami_font_setdevicedpi(0); /* for early font requests, eg treeview init */
window_list = NewObjList();
diff --git a/amiga/gui.h b/amiga/gui.h
index c20f76434..af2d65937 100755
--- a/amiga/gui.h
+++ b/amiga/gui.h
@@ -195,9 +195,15 @@ void ami_gui_free_space_box(struct IBox *bbox);
*/
uint32 ami_gui_get_app_id(void);
+/**
+ * Get the string for NetSurf's screen titlebar.
+ *
+ * @return String to use as the screen's titlebar text.
+ */
+STRPTR ami_gui_get_screen_title(void);
+
struct MinList *window_list;
struct Screen *scrn;
-STRPTR nsscreentitle;
struct MsgPort *sport;
struct gui_window *cur_gw;
struct gui_globals browserglob;
diff --git a/amiga/gui_options.c b/amiga/gui_options.c
index 8eb18f352..62b54773f 100755
--- a/amiga/gui_options.c
+++ b/amiga/gui_options.c
@@ -529,7 +529,7 @@ void ami_gui_opts_open(void)
gow = AllocVecTags(sizeof(struct ami_gui_opts_window), AVT_ClearWithValue, 0, TAG_DONE);
gow->objects[OID_MAIN] = WindowObject,
- WA_ScreenTitle,nsscreentitle,
+ WA_ScreenTitle, ami_gui_get_screen_title(),
WA_Title, gadlab[LAB_OPTS_WINTITLE],
WA_Activate, TRUE,
WA_DepthGadget, TRUE,
diff --git a/amiga/history_local.c b/amiga/history_local.c
index 8c95122d1..069d8b665 100755
--- a/amiga/history_local.c
+++ b/amiga/history_local.c
@@ -117,8 +117,8 @@ void ami_history_open(struct gui_window *gw, struct history *history)
gw->hw->scrollerhook.h_Data = gw->hw;
gw->hw->objects[OID_MAIN] = WindowObject,
- WA_ScreenTitle,nsscreentitle,
- WA_Title,messages_get("History"),
+ WA_ScreenTitle, ami_gui_get_screen_title(),
+ WA_Title, messages_get("History"),
WA_Activate, TRUE,
WA_DepthGadget, TRUE,
WA_DragBar, TRUE,
diff --git a/amiga/login.c b/amiga/login.c
index f7521c040..e9e221bbc 100755
--- a/amiga/login.c
+++ b/amiga/login.c
@@ -94,7 +94,7 @@ void gui_401login_open(nsurl *url, const char *realm,
}
lw->objects[OID_MAIN] = WindowObject,
- WA_ScreenTitle,nsscreentitle,
+ WA_ScreenTitle, ami_gui_get_screen_title(),
WA_Title, nsurl_access(lw->url),
WA_Activate, TRUE,
WA_DepthGadget, TRUE,
diff --git a/amiga/print.c b/amiga/print.c
index 77ecccc78..862e598c7 100644
--- a/amiga/print.c
+++ b/amiga/print.c
@@ -241,7 +241,7 @@ void ami_print_ui(struct hlcache_handle *c)
ami_print_ui_setup();
pw->objects[OID_MAIN] = WindowObject,
- WA_ScreenTitle, nsscreentitle,
+ WA_ScreenTitle, ami_gui_get_screen_title(),
WA_Title, gadlab[PGID_PRINT],
WA_Activate, TRUE,
WA_DepthGadget, TRUE,
@@ -531,7 +531,7 @@ bool ami_print_dump(void)
void ami_print_progress(void)
{
ami_print_info.objects[OID_MAIN] = WindowObject,
- WA_ScreenTitle,nsscreentitle,
+ WA_ScreenTitle, ami_gui_get_screen_title(),
WA_Title, messages_get("Printing"),
WA_Activate, TRUE,
WA_DepthGadget, TRUE,
diff --git a/amiga/search.c b/amiga/search.c
index 865159fed..ac061cbc3 100755
--- a/amiga/search.c
+++ b/amiga/search.c
@@ -106,7 +106,7 @@ void ami_search_open(struct gui_window *gwin)
fwin = AllocVecTags(sizeof(struct find_window), AVT_ClearWithValue, 0, TAG_DONE);
fwin->objects[OID_MAIN] = WindowObject,
- WA_ScreenTitle,nsscreentitle,
+ WA_ScreenTitle, ami_gui_get_screen_title(),
WA_Title,messages_get("FindTextNS"),
WA_Activate, TRUE,
WA_DepthGadget, TRUE,
diff --git a/amiga/tree.c b/amiga/tree.c
index fc07f0073..75ba123ad 100644
--- a/amiga/tree.c
+++ b/amiga/tree.c
@@ -732,7 +732,7 @@ void ami_tree_open(struct treeview_window *twin,int type)
if(type == AMI_TREE_SSLCERT)
{
twin->objects[OID_MAIN] = WindowObject,
- WA_ScreenTitle, nsscreentitle,
+ WA_ScreenTitle, ami_gui_get_screen_title(),
WA_Title, twin->wintitle,
WA_Activate, TRUE,
WA_DepthGadget, TRUE,
@@ -810,7 +810,7 @@ void ami_tree_open(struct treeview_window *twin,int type)
}
twin->objects[OID_MAIN] = WindowObject,
- WA_ScreenTitle,nsscreentitle,
+ WA_ScreenTitle, ami_gui_get_screen_title(),
WA_Title, twin->wintitle,
WA_Activate, TRUE,
WA_DepthGadget, TRUE,