diff --git a/400_xowa/src/gplx/xowa/Xoa_app_.java b/400_xowa/src/gplx/xowa/Xoa_app_.java index 80fd58a90..d74daf496 100644 --- a/400_xowa/src/gplx/xowa/Xoa_app_.java +++ b/400_xowa/src/gplx/xowa/Xoa_app_.java @@ -32,7 +32,7 @@ public class Xoa_app_ { } } public static final String Name = "xowa"; - public static final String Version = "3.12.1.4"; + public static final String Version = "3.12.2.6"; public static String Build_date = "2012-12-30 00:00:00"; public static String Op_sys_str; public static String User_agent = ""; diff --git a/400_xowa/src/gplx/xowa/apps/apis/xowa/Xoapi_app.java b/400_xowa/src/gplx/xowa/apps/apis/xowa/Xoapi_app.java index 2abc2c184..c4599e451 100644 --- a/400_xowa/src/gplx/xowa/apps/apis/xowa/Xoapi_app.java +++ b/400_xowa/src/gplx/xowa/apps/apis/xowa/Xoapi_app.java @@ -17,7 +17,7 @@ along with this program. If not, see . */ package gplx.xowa.apps.apis.xowa; import gplx.*; import gplx.xowa.*; import gplx.xowa.apps.*; import gplx.xowa.apps.apis.*; import gplx.xowa.guis.views.*; -import gplx.xowa.apps.apis.xowa.apps.*; import gplx.xowa.apps.apis.xowa.envs.*; +import gplx.xowa.apps.apis.xowa.apps.*; public class Xoapi_app implements Gfo_invk { private Xog_win_itm win; public void Ctor_by_app(Xoae_app app) { @@ -28,13 +28,11 @@ public class Xoapi_app implements Gfo_invk { } public Xoapi_fsys Fsys() {return fsys;} private Xoapi_fsys fsys = new Xoapi_fsys(); public void Exit() {win.App__exit();} - public Xoapi_env Env() {return env;} private Xoapi_env env = new Xoapi_env(); public Object Invk(GfsCtx ctx, int ikey, String k, GfoMsg m) { if (ctx.Match(k, Invk_exit)) this.Exit(); else if (ctx.Match(k, Invk_fsys)) return fsys; - else if (ctx.Match(k, Invk_env)) return env; else return Gfo_invk_.Rv_unhandled; return this; } - private static final String Invk_exit = "exit", Invk_env = "env", Invk_fsys = "fsys"; + private static final String Invk_exit = "exit", Invk_fsys = "fsys"; } diff --git a/400_xowa/src/gplx/xowa/apps/apis/xowa/envs/Xoapi_env.java b/400_xowa/src/gplx/xowa/apps/apis/xowa/envs/Xoapi_env.java deleted file mode 100644 index b640381dc..000000000 --- a/400_xowa/src/gplx/xowa/apps/apis/xowa/envs/Xoapi_env.java +++ /dev/null @@ -1,29 +0,0 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012 gnosygnu@gmail.com - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU Affero General Public License as -published by the Free Software Foundation, either version 3 of the -License, or (at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU Affero General Public License for more details. - -You should have received a copy of the GNU Affero General Public License -along with this program. If not, see . -*/ -package gplx.xowa.apps.apis.xowa.envs; import gplx.*; import gplx.xowa.*; import gplx.xowa.apps.*; import gplx.xowa.apps.apis.*; import gplx.xowa.apps.apis.xowa.*; -public class Xoapi_env implements Gfo_invk { - public void Init_by_kit(Xoae_app app) {} - public String Version_previous() {return version_previous;} private String version_previous = ""; - public Object Invk(GfsCtx ctx, int ikey, String k, GfoMsg m) { - if (ctx.Match(k, Invk_version_previous)) return version_previous; - else if (ctx.Match(k, Invk_version_previous_)) version_previous = m.ReadStr("v"); - else return Gfo_invk_.Rv_unhandled; - return this; - } - private static final String Invk_version_previous = "version_previous", Invk_version_previous_ = "version_previous_"; -} diff --git a/400_xowa/src/gplx/xowa/apps/setups/Xoa_setup_mgr.java b/400_xowa/src/gplx/xowa/apps/setups/Xoa_setup_mgr.java index 7de91997c..727996509 100644 --- a/400_xowa/src/gplx/xowa/apps/setups/Xoa_setup_mgr.java +++ b/400_xowa/src/gplx/xowa/apps/setups/Xoa_setup_mgr.java @@ -19,7 +19,7 @@ package gplx.xowa.apps.setups; import gplx.*; import gplx.xowa.*; import gplx.xo import gplx.xowa.apps.versions.*; public class Xoa_setup_mgr { public static void Delete_old_files(Xoae_app app) { - String version_previous = app.Api_root().App().Env().Version_previous(); + String version_previous = gplx.xowa.guis.views.Xog_startup_tabs_.Version_previous(app); Gfo_usr_dlg usr_dlg = app.Usr_dlg(); Io_url root_dir = app.Fsys_mgr().Root_dir(); Delete_old_dir(usr_dlg, version_previous, "1.8.2.1" , root_dir.GenSubDir_nest("user", "anonymous", "lang")); @@ -27,7 +27,7 @@ public class Xoa_setup_mgr { Delete_old_dir(usr_dlg, version_previous, "1.10.2.1" , root_dir.GenSubDir_nest("bin", "any", "javascript")); Delete_old_dir(usr_dlg, version_previous, "1.10.2.1" , root_dir.GenSubDir_nest("bin", "any", "xowa", "html", "modules")); } - @gplx.Internal protected static void Delete_old_dir(Gfo_usr_dlg usr_dlg, String version_prv, String version_del, Io_url dir) { + public static void Delete_old_dir(Gfo_usr_dlg usr_dlg, String version_prv, String version_del, Io_url dir) { if (Xoa_version_.Compare(version_prv, version_del) != CompareAble_.Less) return; usr_dlg.Log_many("", "", "setup:checking if dir exists: version_prv=~{0} version_del=~{1} dir=~{2}", version_prv, version_del, dir.Raw()); if (!Io_mgr.Instance.ExistsDir(dir)) return; diff --git a/400_xowa/src/gplx/xowa/guis/views/Xog_startup_tabs_.java b/400_xowa/src/gplx/xowa/guis/views/Xog_startup_tabs_.java index c3da511a4..5e28d4955 100644 --- a/400_xowa/src/gplx/xowa/guis/views/Xog_startup_tabs_.java +++ b/400_xowa/src/gplx/xowa/guis/views/Xog_startup_tabs_.java @@ -70,8 +70,9 @@ public class Xog_startup_tabs_ { list.Add(itm); } } + public static String Version_previous(Xoa_app app) {return app.Cfg().Get_str_app_or(Cfg__prev_version, "");} private static void Add_xowa_home_if_new_version(List_adp rv, Xoae_app app, String xowa_home) { - if (gplx.xowa.apps.versions.Xoa_version_.Compare(app.Api_root().App().Env().Version_previous(), Xoa_app_.Version) == CompareAble_.Less) { + if (gplx.xowa.apps.versions.Xoa_version_.Compare(Version_previous(app), Xoa_app_.Version) == CompareAble_.Less) { boolean xowa_home_exists = false; int len = rv.Count(); for (int i = 0; i < len; ++i) { @@ -81,8 +82,10 @@ public class Xog_startup_tabs_ { break; } } - if (!xowa_home_exists) + if (!xowa_home_exists) { rv.Add(xowa_home); + app.Cfg().Set_int_app(Cfg__prev_selected, rv.Len()); + } } } private static final String @@ -92,4 +95,5 @@ public class Xog_startup_tabs_ { , Cfg__prev_selected = "xowa.app.startup.tabs.previous_selected" , Opt__tabs_type__previous = "previous" ; + public static final String Cfg__prev_version = "xowa.app.session.version"; } diff --git a/400_xowa/src/gplx/xowa/guis/views/Xog_startup_win_.java b/400_xowa/src/gplx/xowa/guis/views/Xog_startup_win_.java index fa80243b9..cccbf5219 100644 --- a/400_xowa/src/gplx/xowa/guis/views/Xog_startup_win_.java +++ b/400_xowa/src/gplx/xowa/guis/views/Xog_startup_win_.java @@ -81,8 +81,8 @@ public class Xog_startup_win_ { } Xog_startup_tabs_.Shutdown(app); + cfg_mgr.Set_str_app(gplx.xowa.guis.views.Xog_startup_tabs_.Cfg__prev_version, Xoa_app_.Version); gplx.xowa.apps.cfgs.Xoa_cfg_mgr cfg_mgr2 = app.Cfg_mgr(); - cfg_mgr2.Set_by_app("xowa.api.app.env.version_previous" , Xoa_app_.Version); app.Api_root().Html().Page().Toggle_mgr().Save(cfg_mgr2); cfg_mgr2.Db_save_txt(); }