diff options
-rw-r--r-- | !NetSurf/Resources/de/Messages | 1 | ||||
-rw-r--r-- | !NetSurf/Resources/en/Messages | 1 | ||||
-rw-r--r-- | !NetSurf/Resources/fr/Messages | 1 | ||||
-rwxr-xr-x | !NetSurf/Resources/it/Messages | 1 | ||||
-rw-r--r-- | !NetSurf/Resources/nl/Messages | 1 | ||||
-rw-r--r-- | amiga/download.c | 19 | ||||
-rwxr-xr-x | amiga/download.h | 2 | ||||
-rwxr-xr-x | amiga/gui.c | 5 |
8 files changed, 30 insertions, 1 deletions
diff --git a/!NetSurf/Resources/de/Messages b/!NetSurf/Resources/de/Messages index a145f882f..b866013a2 100644 --- a/!NetSurf/Resources/de/Messages +++ b/!NetSurf/Resources/de/Messages @@ -373,6 +373,7 @@ Download:%s von %s • %s/s • noch %s DownloadU:%s von unbekannt • %s/s • bisher %s Downloaded:%s komplett • etwa %s/s • gesamt %s Unwritten:Schreiben der Datei ist fehlgeschlagen. +Abort:Abort # Amiga download window tokens # diff --git a/!NetSurf/Resources/en/Messages b/!NetSurf/Resources/en/Messages index b0e7e0003..ea30b864b 100644 --- a/!NetSurf/Resources/en/Messages +++ b/!NetSurf/Resources/en/Messages @@ -373,6 +373,7 @@ Download:%s of %s • %s/s • %s remaining DownloadU:%s of unknown • %s/s • %s total Downloaded:%s complete • average %s/s • %s total Unwritten:Writing data to file failed. +Abort:Abort # Amiga download window tokens # diff --git a/!NetSurf/Resources/fr/Messages b/!NetSurf/Resources/fr/Messages index 2533829fa..19bda4f88 100644 --- a/!NetSurf/Resources/fr/Messages +++ b/!NetSurf/Resources/fr/Messages @@ -373,6 +373,7 @@ Download:%s de %s • %s/s • %s restants DownloadU:%s sur inconnu • %s/s • %s total Downloaded:%s effectués • moyenne %s/s • %s total Unwritten:L'écriture de données dans le fichier a échoué. +Abort:Abort # Amiga download window tokens # diff --git a/!NetSurf/Resources/it/Messages b/!NetSurf/Resources/it/Messages index 0541088de..c1b7582d4 100755 --- a/!NetSurf/Resources/it/Messages +++ b/!NetSurf/Resources/it/Messages @@ -374,6 +374,7 @@ Download:%s di %s ? %s/s ? %s al termine DownloadU:%s sconosciuto ? %s/s ? %s totale Downloaded:%s completato ? media %s/s ? %s totale Unwritten:Scrittura dei dati sul file fallita. +Abort:Abort # Amiga download window tokens # diff --git a/!NetSurf/Resources/nl/Messages b/!NetSurf/Resources/nl/Messages index 0fcbabcc6..a7272c2ee 100644 --- a/!NetSurf/Resources/nl/Messages +++ b/!NetSurf/Resources/nl/Messages @@ -373,6 +373,7 @@ Download:%s van %s • %s/s • nog %s DownloadU:%s van onbekend • %s/s • %s totaal Downloaded:%s compleet • gemiddeld %s/s • %s totaal Unwritten:Data naar bestand schrijven ging fout. +Abort:Abort # Amiga download window tokens # diff --git a/amiga/download.c b/amiga/download.c index bd4f05a5e..4e9b2966a 100644 --- a/amiga/download.c +++ b/amiga/download.c @@ -31,6 +31,8 @@ #include "amiga/options.h" #include "amiga/save_complete.h" +#include "content/fetch.h" + #include "desktop/selection.h" #include "utils/messages.h" @@ -103,6 +105,8 @@ struct gui_download_window *gui_download_window_create(const char *url, WA_CloseGadget, FALSE, WA_SizeGadget, TRUE, WA_CustomScreen,scrn, + WINDOW_SharedPort,sport, + WINDOW_UserData,dw, WINDOW_IconifyGadget, TRUE, WINDOW_LockHeight,TRUE, WINDOW_Position, WPOS_CENTERSCREEN, @@ -118,13 +122,20 @@ struct gui_download_window *gui_download_window_create(const char *url, FUELGAUGE_VarArgs,va, FUELGAUGE_Percent,FALSE, FUELGAUGE_Justification,FGJ_CENTER, - StringEnd, + FuelGaugeEnd, CHILD_NominalSize,TRUE, CHILD_WeightedHeight,0, + LAYOUT_AddChild, dw->gadgets[GID_CANCEL] = ButtonObject, + GA_ID,GID_CANCEL, + GA_RelVerify,TRUE, + GA_Text,messages_get("Abort"), + GA_TabCycle,TRUE, + ButtonEnd, EndGroup, EndWindow; dw->win = (struct Window *)RA_OpenWindow(dw->objects[OID_MAIN]); + dw->fetch = fetch; dw->node = AddObject(window_list,AMINS_DLWINDOW); dw->node->objstruct = dw; @@ -170,6 +181,12 @@ void gui_download_window_error(struct gui_download_window *dw, gui_download_window_done(dw); } +void ami_download_window_abort(struct gui_download_window *dw) +{ + fetch_abort(dw->fetch); + gui_download_window_done(dw); +} + void gui_download_window_done(struct gui_download_window *dw) { struct dlnode *dln,*dln2; diff --git a/amiga/download.h b/amiga/download.h index 3628add70..e48069d0e 100755 --- a/amiga/download.h +++ b/amiga/download.h @@ -37,11 +37,13 @@ struct gui_download_window { uint32 downloaded; struct dlnode *dln; struct browser_window *bw; + struct fetch *fetch; }; int drag_save; void *drag_save_data; +void ami_download_window_abort(struct gui_download_window *dw); void ami_drag_save(struct Window *win); void ami_free_download_list(struct List *dllist); diff --git a/amiga/gui.c b/amiga/gui.c index 33afd9120..4d5e98208 100755 --- a/amiga/gui.c +++ b/amiga/gui.c @@ -947,6 +947,11 @@ void ami_handle_msg(void) ami_401login_close((struct gui_login_window *)gwin); win_destroyed = true; } + else if(gwin->node->Type == AMINS_DLWINDOW) + { + ami_download_window_abort((struct gui_download_window *)gwin); + win_destroyed = true; + } break; default: |