Gitweb links:
...log
http://git.netsurf-browser.org/netsurf.git/shortlog/3df40959e368c99275767ae630956d16f541fb75
...commit
http://git.netsurf-browser.org/netsurf.git/commit/3df40959e368c99275767ae630956d16f541fb75
...tree
http://git.netsurf-browser.org/netsurf.git/tree/3df40959e368c99275767ae630956d16f541fb75
The branch, master has been updated
via 3df40959e368c99275767ae630956d16f541fb75 (commit)
from 7706ba5bebfaef5f83f23998199fe6a650b84301 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commitdiff
http://git.netsurf-browser.org/netsurf.git/commit/?id=3df40959e368c99275767ae630956d16f541fb75
commit 3df40959e368c99275767ae630956d16f541fb75
Author: Chris Young <[email protected]>
Commit: Chris Young <[email protected]>
Allow for more varied notification backmsgs
diff --git a/frontends/amiga/download.c b/frontends/amiga/download.c
index 49e756b..41ff6a6 100644
--- a/frontends/amiga/download.c
+++ b/frontends/amiga/download.c
@@ -76,6 +76,10 @@
#define APPNOTIFY_Percentage ( TAG_USER + 14 )
#endif
+#ifndef APPNOTIFY_StopBackMsg
+#define APPNOTIFY_StopBackMsg ( TAG_USER + 17 )
+#endif
+
struct gui_download_window {
struct ami_generic_window w;
struct Window *win;
@@ -93,7 +97,8 @@ struct gui_download_window {
};
enum {
- AMINS_DLOAD_OK = 0,
+ AMINS_DLOAD_PROGRESS = 0,
+ AMINS_DLOAD_OK,
AMINS_DLOAD_ERROR,
AMINS_DLOAD_ABORT,
};
@@ -167,11 +172,15 @@ static struct gui_download_window
*gui_download_window_create(download_context *
}
if((nsoption_bool(download_notify_progress) == true)) {
+ char bkm[1030];
+ snprintf(bkm, 1030, "STOP %p", dw);
+
Notify(ami_gui_get_app_id(), APPNOTIFY_Title,
messages_get("amiDownloading"),
APPNOTIFY_PubScreenName, "FRONT",
APPNOTIFY_Text, dw->fname,
APPNOTIFY_DisplayTime, TRUE,
APPNOTIFY_Percentage, 0,
+ APPNOTIFY_StopBackMsg, bkm,
TAG_DONE);
} else {
dw->objects[OID_MAIN] = WindowObj,
@@ -216,6 +225,7 @@ static struct gui_download_window
*gui_download_window_create(download_context *
}
dw->ctx = ctx;
+ dw->result = AMINS_DLOAD_PROGRESS;
ami_gui_win_list_add(dw, AMINS_DLWINDOW, &ami_download_table);
@@ -281,6 +291,9 @@ static void gui_download_window_done(struct
gui_download_window *dw)
if(!dw) return;
bw = dw->bw;
+ if(dw->result == AMINS_DLOAD_PROGRESS)
+ dw->result = AMINS_DLOAD_OK;
+
if((nsoption_bool(download_notify_progress) == true)) {
Notify(ami_gui_get_app_id(),
APPNOTIFY_Update, TRUE,
@@ -289,9 +302,12 @@ static void gui_download_window_done(struct
gui_download_window *dw)
if((nsoption_bool(download_notify)) && (dw->result == AMINS_DLOAD_OK))
{
+ char bkm[1030];
+ snprintf(bkm, 1030, "OPEN %s", dw->fname);
+
Notify(ami_gui_get_app_id(), APPNOTIFY_Title,
messages_get("amiDownloadComplete"),
APPNOTIFY_PubScreenName, "FRONT",
- APPNOTIFY_BackMsg, dw->fname,
+ APPNOTIFY_BackMsg, bkm,
APPNOTIFY_CloseOnDC, TRUE,
APPNOTIFY_Text, dw->fname,
TAG_DONE);
@@ -360,6 +376,8 @@ static BOOL ami_download_window_event(void *w)
ULONG result;
uint16 code;
+ if(dw == NULL) return FALSE; /* We may not have a real window */
+
while((result = RA_HandleInput(dw->objects[OID_MAIN], &code)) !=
WMHI_LASTMSG)
{
switch(result & WMHI_CLASSMASK) // class
@@ -491,6 +509,13 @@ BOOL ami_download_check_overwrite(const char *file, struct
Window *win, ULONG si
else return FALSE;
}
+void ami_download_parse_backmsg(const char *backmsg)
+{
+ if((backmsg[0] == 'O') && (backmsg[1] == 'P') && (backmsg[2] == 'E') &&
(backmsg[3] == 'N')) {
+ OpenWorkbenchObjectA((backmsg + 5), NULL);
+ }
+}
+
static struct gui_download_table download_table = {
.create = gui_download_window_create,
.data = gui_download_window_data,
diff --git a/frontends/amiga/download.h b/frontends/amiga/download.h
index b60b4f0..1c2a3d0 100755
--- a/frontends/amiga/download.h
+++ b/frontends/amiga/download.h
@@ -36,7 +36,7 @@ struct dlnode
void ami_free_download_list(struct List *dllist);
BOOL ami_download_check_overwrite(const char *file, struct Window *win, ULONG
size);
+void ami_download_parse_backmsg(const char *backmsg);
nserror gui_window_save_link(struct gui_window *g, struct nsurl *url, const
char *title);
-
#endif
diff --git a/frontends/amiga/gui.c b/frontends/amiga/gui.c
index 5e5efd5..4b6daa7 100644
--- a/frontends/amiga/gui.c
+++ b/frontends/amiga/gui.c
@@ -2763,7 +2763,8 @@ static void ami_handle_applib(void)
struct ApplicationCustomMsg *applibcustmsg =
(struct ApplicationCustomMsg
*)applibmsg;
LOG("Ringhio BackMsg received: %s",
applibcustmsg->customMsg);
- OpenWorkbenchObjectA(applibcustmsg->customMsg,
NULL);
+
+
ami_download_parse_backmsg(applibcustmsg->customMsg);
}
break;
}
-----------------------------------------------------------------------
Summary of changes:
frontends/amiga/download.c | 29 +++++++++++++++++++++++++++--
frontends/amiga/download.h | 2 +-
frontends/amiga/gui.c | 3 ++-
3 files changed, 30 insertions(+), 4 deletions(-)
diff --git a/frontends/amiga/download.c b/frontends/amiga/download.c
index 49e756b..41ff6a6 100644
--- a/frontends/amiga/download.c
+++ b/frontends/amiga/download.c
@@ -76,6 +76,10 @@
#define APPNOTIFY_Percentage ( TAG_USER + 14 )
#endif
+#ifndef APPNOTIFY_StopBackMsg
+#define APPNOTIFY_StopBackMsg ( TAG_USER + 17 )
+#endif
+
struct gui_download_window {
struct ami_generic_window w;
struct Window *win;
@@ -93,7 +97,8 @@ struct gui_download_window {
};
enum {
- AMINS_DLOAD_OK = 0,
+ AMINS_DLOAD_PROGRESS = 0,
+ AMINS_DLOAD_OK,
AMINS_DLOAD_ERROR,
AMINS_DLOAD_ABORT,
};
@@ -167,11 +172,15 @@ static struct gui_download_window
*gui_download_window_create(download_context *
}
if((nsoption_bool(download_notify_progress) == true)) {
+ char bkm[1030];
+ snprintf(bkm, 1030, "STOP %p", dw);
+
Notify(ami_gui_get_app_id(), APPNOTIFY_Title,
messages_get("amiDownloading"),
APPNOTIFY_PubScreenName, "FRONT",
APPNOTIFY_Text, dw->fname,
APPNOTIFY_DisplayTime, TRUE,
APPNOTIFY_Percentage, 0,
+ APPNOTIFY_StopBackMsg, bkm,
TAG_DONE);
} else {
dw->objects[OID_MAIN] = WindowObj,
@@ -216,6 +225,7 @@ static struct gui_download_window
*gui_download_window_create(download_context *
}
dw->ctx = ctx;
+ dw->result = AMINS_DLOAD_PROGRESS;
ami_gui_win_list_add(dw, AMINS_DLWINDOW, &ami_download_table);
@@ -281,6 +291,9 @@ static void gui_download_window_done(struct
gui_download_window *dw)
if(!dw) return;
bw = dw->bw;
+ if(dw->result == AMINS_DLOAD_PROGRESS)
+ dw->result = AMINS_DLOAD_OK;
+
if((nsoption_bool(download_notify_progress) == true)) {
Notify(ami_gui_get_app_id(),
APPNOTIFY_Update, TRUE,
@@ -289,9 +302,12 @@ static void gui_download_window_done(struct
gui_download_window *dw)
if((nsoption_bool(download_notify)) && (dw->result == AMINS_DLOAD_OK))
{
+ char bkm[1030];
+ snprintf(bkm, 1030, "OPEN %s", dw->fname);
+
Notify(ami_gui_get_app_id(), APPNOTIFY_Title,
messages_get("amiDownloadComplete"),
APPNOTIFY_PubScreenName, "FRONT",
- APPNOTIFY_BackMsg, dw->fname,
+ APPNOTIFY_BackMsg, bkm,
APPNOTIFY_CloseOnDC, TRUE,
APPNOTIFY_Text, dw->fname,
TAG_DONE);
@@ -360,6 +376,8 @@ static BOOL ami_download_window_event(void *w)
ULONG result;
uint16 code;
+ if(dw == NULL) return FALSE; /* We may not have a real window */
+
while((result = RA_HandleInput(dw->objects[OID_MAIN], &code)) !=
WMHI_LASTMSG)
{
switch(result & WMHI_CLASSMASK) // class
@@ -491,6 +509,13 @@ BOOL ami_download_check_overwrite(const char *file, struct
Window *win, ULONG si
else return FALSE;
}
+void ami_download_parse_backmsg(const char *backmsg)
+{
+ if((backmsg[0] == 'O') && (backmsg[1] == 'P') && (backmsg[2] == 'E') &&
(backmsg[3] == 'N')) {
+ OpenWorkbenchObjectA((backmsg + 5), NULL);
+ }
+}
+
static struct gui_download_table download_table = {
.create = gui_download_window_create,
.data = gui_download_window_data,
diff --git a/frontends/amiga/download.h b/frontends/amiga/download.h
index b60b4f0..1c2a3d0 100755
--- a/frontends/amiga/download.h
+++ b/frontends/amiga/download.h
@@ -36,7 +36,7 @@ struct dlnode
void ami_free_download_list(struct List *dllist);
BOOL ami_download_check_overwrite(const char *file, struct Window *win, ULONG
size);
+void ami_download_parse_backmsg(const char *backmsg);
nserror gui_window_save_link(struct gui_window *g, struct nsurl *url, const
char *title);
-
#endif
diff --git a/frontends/amiga/gui.c b/frontends/amiga/gui.c
index 5e5efd5..4b6daa7 100644
--- a/frontends/amiga/gui.c
+++ b/frontends/amiga/gui.c
@@ -2763,7 +2763,8 @@ static void ami_handle_applib(void)
struct ApplicationCustomMsg *applibcustmsg =
(struct ApplicationCustomMsg
*)applibmsg;
LOG("Ringhio BackMsg received: %s",
applibcustmsg->customMsg);
- OpenWorkbenchObjectA(applibcustmsg->customMsg,
NULL);
+
+
ami_download_parse_backmsg(applibcustmsg->customMsg);
}
break;
}
--
NetSurf Browser
_______________________________________________
netsurf-commits mailing list
[email protected]
http://listmaster.pepperfish.net/cgi-bin/mailman/listinfo/netsurf-commits-netsurf-browser.org