diff --git a/400_xowa/src/gplx/xowa/Xoa_app_.java b/400_xowa/src/gplx/xowa/Xoa_app_.java index 6f2e897a6..9a2607411 100644 --- a/400_xowa/src/gplx/xowa/Xoa_app_.java +++ b/400_xowa/src/gplx/xowa/Xoa_app_.java @@ -30,8 +30,8 @@ public class Xoa_app_ { } } public static final String Name = "xowa"; - public static final int Version_id = 516; - public static final String Version = "4.3.0.1702"; + public static final int Version_id = 517; + public static final String Version = "4.3.1.1702"; public static String Build_date = "2012-12-30 00:00:00"; public static String Build_date_fmt = "yyyy-MM-dd HH:mm:ss"; public static String Op_sys_str; diff --git a/400_xowa/src/gplx/xowa/guis/views/Xog_win_itm.java b/400_xowa/src/gplx/xowa/guis/views/Xog_win_itm.java index 59144335b..e520d5ef9 100644 --- a/400_xowa/src/gplx/xowa/guis/views/Xog_win_itm.java +++ b/400_xowa/src/gplx/xowa/guis/views/Xog_win_itm.java @@ -268,16 +268,33 @@ public class Xog_win_itm implements Gfo_invk, Gfo_evt_itm { public byte[] App__retrieve_by_url(String url_str, String output_str) { synchronized (App__retrieve__lock) { boolean output_html = String_.Eq(output_str, "html"); + + // parse url according to rules of home_wiki; Xowe_wiki home_wiki = app.Usere().Wiki(); Xoa_url url = home_wiki.Utl__url_parser().Parse_by_urlbar_or_null(url_str); if (url == null) return Bry_.Empty; + + // get wiki from url Xowe_wiki wiki = (Xowe_wiki)app.Wiki_mgr().Get_by_or_make_init_y(url.Wiki_bry()); + + // parse url again, but this time according to rules of actual wiki + wiki.Utl__url_parser().Parse(Bry_.new_u8(url_str)); + + // get title Xoa_ttl ttl = Xoa_ttl.Parse(wiki, url.Page_bry()); - Xoae_page new_page = wiki.Data_mgr().Load_page_and_parse(url, ttl); - if (new_page.Db().Page().Exists_n()) {return Bry_.Empty;} - gplx.xowa.apps.servers.Gxw_html_server.Assert_tab(app, new_page); // HACK: assert at least 1 tab for Firefox addon; DATE:2015-01-23 + + // get tab for Load_page + gplx.xowa.apps.servers.Gxw_html_server.Assert_tab(app, Xoae_page.Empty); // HACK: assert at least 1 tab for Firefox addon; DATE:2015-01-23 Xog_tab_itm tab = tab_mgr.Active_tab(); + + // get page + Xoae_page new_page = wiki.Page_mgr().Load_page(url, ttl, tab); + if (new_page.Db().Page().Exists_n()) {return Bry_.Empty;} + + // update tab-specific vars tab.Page_(new_page); - tab.History_mgr().Add(new_page); + tab.History_mgr().Add(new_page); + + // gen html byte[] rv = output_html ? wiki.Html_mgr().Page_wtr_mgr().Gen(new_page, tab.View_mode()) : new_page.Db().Text().Text_bry(); diff --git a/xowa.home.version b/xowa.home.version index 10add0a5b..420ca2390 100644 --- a/xowa.home.version +++ b/xowa.home.version @@ -1 +1 @@ -test 7 +v4.3.0.4