mirror of
https://github.com/gnosygnu/xowa.git
synced 2024-10-27 20:34:16 +00:00
App_update: Add menu link to new Special page
This commit is contained in:
parent
ad646efb5c
commit
4bcefa2621
@ -23,7 +23,7 @@ import gplx.xowa.addons.apps.updates.apps.*;
|
||||
import gplx.core.envs.*;
|
||||
class Xoa_update_svc implements Gfo_invk {
|
||||
private Xoa_app app;
|
||||
private Io_url app_root_dir, update_dir, update_jar_fil;
|
||||
private Io_url app_root_dir, update_dir, update_jar_fil, version_root;
|
||||
private Xoa_app_version_itm version_itm;
|
||||
public Xoa_update_svc(Xoa_app app) {this.app = app;}
|
||||
private Xoa_update_db_mgr Init_db() {
|
||||
@ -39,8 +39,9 @@ class Xoa_update_svc implements Gfo_invk {
|
||||
|
||||
// get src, trg, etc..
|
||||
String src = version_itm.Package_url();
|
||||
Io_url trg = update_dir.GenSubFil_nest("temp", version_itm.Name(), version_itm.Name() + ".zip");
|
||||
Io_mgr.Instance.DeleteDirDeep(trg.OwnerDir());
|
||||
Io_url trg = update_dir.GenSubFil_nest("temp", version_itm.Name(), version_itm.Name() + ".zip"); // EX: "/xowa/user/app/install/update/temp/4.1.0/4.1.0.zip"
|
||||
this.version_root = trg.OwnerDir();
|
||||
Io_mgr.Instance.DeleteDirDeep(version_root);
|
||||
long src_len = -1;
|
||||
|
||||
// start download
|
||||
@ -65,11 +66,15 @@ class Xoa_update_svc implements Gfo_invk {
|
||||
Io_url src = unzip_wkr.Trg();
|
||||
Io_url trg = app_root_dir;
|
||||
|
||||
// delete zip
|
||||
Io_mgr.Instance.DeleteFil(unzip_wkr.Src());
|
||||
|
||||
// copy update_jar
|
||||
Io_url src_jar_fil = src.GenSubFil_nest("bin", "any", "xowa", "addon", "app", "update", "xoa_update.jar");
|
||||
this.update_jar_fil = app_root_dir.GenSubFil_nest("user", "install", "update", "xoa_update.jar");
|
||||
Io_mgr.Instance.MoveFil_args(src_jar_fil, update_jar_fil, true).Exec();
|
||||
|
||||
// run replace_wkr
|
||||
Xojs_wkr__replace replace_wkr = new Xojs_wkr__replace(unzip_wkr.Cbk_mgr(), unzip_wkr.Cbk_trg(), "xo.app_updater.download__prog", Gfo_invk_cmd.New_by_key(this, Invk__replace_done), src, trg);
|
||||
replace_wkr.Exec_async("app_updater");
|
||||
}
|
||||
@ -98,7 +103,7 @@ class Xoa_update_svc implements Gfo_invk {
|
||||
Xoa_update_startup.Version_cutoff_(app, version_itm.Id());
|
||||
|
||||
// run standalone app
|
||||
Runtime_.Exec("java -jar " + update_jar_fil.Raw()+ " " + manifest_url.Raw());
|
||||
Runtime_.Exec("java -jar " + update_jar_fil.Raw()+ " " + manifest_url.Raw() + " " + version_root.Raw());
|
||||
System_.Exit();
|
||||
}
|
||||
public Object Invk(GfsCtx ctx, int ikey, String k, GfoMsg m) {
|
||||
|
@ -49,6 +49,7 @@ public class Xog_bnd_mgr implements Gfo_invk {
|
||||
, "xowa.gui.shortcuts.xowa.nav.help.about-1"
|
||||
, "xowa.gui.shortcuts.xowa.nav.help.change_log-1"
|
||||
, "xowa.gui.shortcuts.xowa.nav.help.diagnostics-1"
|
||||
, "xowa.gui.shortcuts.xowa.nav.help.xowa_update-1"
|
||||
, "xowa.gui.shortcuts.xowa.nav.help.xowa_main-1"
|
||||
, "xowa.gui.shortcuts.xowa.nav.help.xowa_blog-1"
|
||||
, "xowa.gui.shortcuts.xowa.nav.setup.download_central-1"
|
||||
@ -231,6 +232,7 @@ public class Xog_bnd_mgr implements Gfo_invk {
|
||||
Init_itm(Xog_cmd_itm_.Key_nav_help_about , Xog_bnd_box_.Tid_browser , "");
|
||||
Init_itm(Xog_cmd_itm_.Key_nav_help_xowa_main , Xog_bnd_box_.Tid_browser , "");
|
||||
Init_itm(Xog_cmd_itm_.Key_nav_help_xowa_blog , Xog_bnd_box_.Tid_browser , "");
|
||||
Init_itm(Xog_cmd_itm_.Key_nav_help_xowa_update , Xog_bnd_box_.Tid_browser , "");
|
||||
Init_itm(Xog_cmd_itm_.Key_nav_setup_download_central , Xog_bnd_box_.Tid_browser , "");
|
||||
Init_itm(Xog_cmd_itm_.Key_nav_setup_import_from_list , Xog_bnd_box_.Tid_browser , "");
|
||||
Init_itm(Xog_cmd_itm_.Key_nav_setup_import_from_script , Xog_bnd_box_.Tid_browser , "");
|
||||
|
@ -31,12 +31,13 @@ public class Xog_cmd_itm_ {
|
||||
, Key_nav_wiki_sandbox = new_dflt_(Xog_ctg_itm_.Tid_nav , "xowa.nav.wiki.sandbox")
|
||||
, Key_nav_wiki_random = new_dflt_(Xog_ctg_itm_.Tid_nav , "xowa.nav.wiki.random")
|
||||
|
||||
, Key_nav_help_help = new_page_(Xog_ctg_itm_.Tid_nav_pages , "xowa.nav.help.help" , "home/wiki/Help/Contents") // HOME
|
||||
, Key_nav_help_about = new_page_(Xog_ctg_itm_.Tid_nav_pages , "xowa.nav.help.about" , "home/wiki/Help/About") // HOME
|
||||
, Key_nav_help_change_log = new_page_(Xog_ctg_itm_.Tid_nav_pages , "xowa.nav.help.change_log" , "home/wiki/Change_log") // HOME
|
||||
, Key_nav_help_diagnostics = new_page_(Xog_ctg_itm_.Tid_nav_pages , "xowa.nav.help.diagnostics" , "home/wiki/Diagnostics") // HOME
|
||||
, Key_nav_help_xowa_main = new_page_(Xog_ctg_itm_.Tid_nav_pages , "xowa.nav.help.xowa_main" , "home/wiki/Main_Page") // HOME
|
||||
, Key_nav_help_xowa_blog = new_page_(Xog_ctg_itm_.Tid_nav_pages , "xowa.nav.help.xowa_blog" , "home/wiki/Blog") // HOME
|
||||
, Key_nav_help_help = new_page_(Xog_ctg_itm_.Tid_nav_pages , "xowa.nav.help.help" , "home/wiki/Help/Contents") // HOME
|
||||
, Key_nav_help_about = new_page_(Xog_ctg_itm_.Tid_nav_pages , "xowa.nav.help.about" , "home/wiki/Help/About") // HOME
|
||||
, Key_nav_help_change_log = new_page_(Xog_ctg_itm_.Tid_nav_pages , "xowa.nav.help.change_log" , "home/wiki/Change_log") // HOME
|
||||
, Key_nav_help_diagnostics = new_page_(Xog_ctg_itm_.Tid_nav_pages , "xowa.nav.help.diagnostics" , "home/wiki/Diagnostics") // HOME
|
||||
, Key_nav_help_xowa_update = new_page_(Xog_ctg_itm_.Tid_nav_pages , "xowa.nav.help.xowa_update" , "home/wiki/Special:XowaAppUpdate") // HOME
|
||||
, Key_nav_help_xowa_main = new_page_(Xog_ctg_itm_.Tid_nav_pages , "xowa.nav.help.xowa_main" , "home/wiki/Main_Page") // HOME
|
||||
, Key_nav_help_xowa_blog = new_page_(Xog_ctg_itm_.Tid_nav_pages , "xowa.nav.help.xowa_blog" , "home/wiki/Blog") // HOME
|
||||
|
||||
, Key_nav_setup_download_central = new_page_(Xog_ctg_itm_.Tid_nav_pages , "xowa.nav.setup.download_central" , "home/wiki/Special:XowaDownloadCentral") // HOME
|
||||
, Key_nav_setup_import_from_list = new_page_(Xog_ctg_itm_.Tid_nav_pages , "xowa.nav.setup.import_from_list" , "home/wiki/Dashboard/Import/Online") // HOME
|
||||
|
Loading…
Reference in New Issue
Block a user