Cfg: Fix multiple mis-mapped gui shortcut keys

pull/620/head
gnosygnu 8 years ago
parent ab4d7de36d
commit eee0a7de1d

@ -34,17 +34,17 @@ public class Xocfg_mgr implements Gfo_invk {
public void Bind_many_app (Gfo_invk sub, String... keys) {Bind_many(Bool_.Y, sub, Xocfg_mgr.Ctx__app, keys);}
public void Bind_many_wiki (Gfo_invk sub, Xow_wiki wiki, String... keys) {Bind_many(Bool_.Y, sub, wiki.Domain_itm().Abrv_xo_str(), keys);}
private void Bind_many(boolean pub, Gfo_invk sub, String ctx, String... keys) {
try {
for (String key : keys) {
for (String key : keys) {
try {
cache_mgr.Sub(sub, ctx, key, key);
if (pub) {
String val = cache_mgr.Get(ctx, key);
cache_mgr.Pub(ctx, key, val);
}
}
}
catch (Exception e) {
Gfo_usr_dlg_.Instance.Warn_many("", "", "bind failed: ctx=~{0} keys=~{1} err=~{2}", ctx, String_.AryXtoStr(keys), Err_.Message_gplx_log(e));
catch (Exception e) {
Gfo_usr_dlg_.Instance.Warn_many("", "", "bind failed: ctx=~{0} key=~{1} err=~{2}", ctx, key, Err_.Message_gplx_log(e));
}
}
}
public boolean Get_bool_app_or(String key, boolean or) {

@ -73,6 +73,7 @@ public class Xocfg_cache_mgr {
public void Dflt(String key, String val) {
Xocfg_cache_grp grp = Grps__get_or_load(key);
grp.Dflt_(val);
grp.Pub(Xocfg_mgr.Ctx__app, val); // need to pub after dflt is changed; for now, just pub at app-level
}
public Xocfg_cache_grp Grps__get_or_load(String key) {
Xocfg_cache_grp grp = (Xocfg_cache_grp)grps.Get_by(key);

@ -28,8 +28,8 @@ public class Xocfg_dflt_mgr {
return (itm == null) ? or : (String)Gfo_invk_.Invk_by_key(itm, key);
}
public void Add(String key, String val) {
cache_mgr.Dflt(key, val);
hash.Add(key, new Xocfg_dflt_itm__static(val));
cache_mgr.Dflt(key, val);
}
public void Add(Gfo_invk invk, String... keys) {
for (String key : keys) {

@ -85,7 +85,9 @@ public class Xoa_prog_mgr implements Gfo_invk {
else if (String_.Eq(k, Cfg__djvu)) {Init_cmd(m.ReadStr("v"), Xof_ext_.Id_djvu);}
else if (String_.Eq(k, Cfg__gz)) {Init_cmd(m.ReadStr("v"), app_decompress_gz);}
else if (String_.Eq(k, Cfg__bz2)) {Init_cmd(m.ReadStr("v"), app_decompress_bz2);}
else if (String_.Eq(k, Cfg__bz2__stdout_cmd)) {Init_cmd(m.ReadStr("v"), app_decompress_bz2_by_stdout);}
else if (String_.Eq(k, Cfg__bz2__stdout_cmd)) {
Init_cmd(m.ReadStr("v"), app_decompress_bz2_by_stdout);
}
else if (String_.Eq(k, Cfg__query_size)) {Init_cmd(m.ReadStr("v"), app_query_img_size);}
else if (String_.Eq(k, Cfg__resize_img)) {Init_cmd(m.ReadStr("v"), app_resize_img);}
else if (String_.Eq(k, Cfg__convert_svg_to_png)) {Init_cmd(m.ReadStr("v"), app_convert_svg_to_png);}

@ -109,34 +109,35 @@ public class Xog_bnd_mgr implements Gfo_invk {
, "xowa.gui.shortcuts.xowa.gui.browser.prog_log.show-2"
, "xowa.gui.shortcuts.xowa.gui.browser.info.focus-1"
, "xowa.gui.shortcuts.xowa.gui.browser.info.clear-1"
, "xowa.gui.shortcuts.xowa.gui.tabs.new_dflt__at_dflt__focus_y-1"
, "xowa.gui.shortcuts.xowa.gui.tabs.new_link__at_dflt__focus_n-1"
, "xowa.gui.shortcuts.xowa.gui.tabs.new_link__at_dflt__focus_y-1"
, "xowa.gui.shortcuts.xowa.gui.tabs.select_bwd-1"
, "xowa.gui.shortcuts.xowa.gui.tabs.select_bwd-2"
, "xowa.gui.shortcuts.xowa.gui.tabs.select_fwd-1"
, "xowa.gui.shortcuts.xowa.gui.tabs.select_fwd-2"
, "xowa.gui.shortcuts.xowa.gui.tabs.select_by_idx_1-2"
, "xowa.gui.shortcuts.xowa.gui.tabs.select_by_idx_2-2"
, "xowa.gui.shortcuts.xowa.gui.tabs.select_by_idx_3-2"
, "xowa.gui.shortcuts.xowa.gui.tabs.select_by_idx_4-2"
, "xowa.gui.shortcuts.xowa.gui.tabs.select_by_idx_5-2"
, "xowa.gui.shortcuts.xowa.gui.tabs.select_by_idx_6-2"
, "xowa.gui.shortcuts.xowa.gui.tabs.select_by_idx_7-2"
, "xowa.gui.shortcuts.xowa.gui.tabs.select_by_idx_8-2"
, "xowa.gui.shortcuts.xowa.gui.tabs.select_by_idx_9-2"
, "xowa.gui.shortcuts.xowa.gui.tabs.move_bwd-1"
, "xowa.gui.shortcuts.xowa.gui.tabs.move_fwd-1"
, "xowa.gui.shortcuts.xowa.gui.tabs.close_cur-1"
, "xowa.gui.shortcuts.xowa.gui.tabs.close_others-1"
, "xowa.gui.shortcuts.xowa.gui.tabs.close_to_bgn-1"
, "xowa.gui.shortcuts.xowa.gui.tabs.close_to_end-1"
, "xowa.gui.shortcuts.xowa.gui.tabs.close_undo-1"
, "xowa.gui.shortcuts.xowa.gui.tabs.pin_toggle-1"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.new_dflt__at_dflt__focus_y-1"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.new_link__at_dflt__focus_y-1"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.new_link__at_dflt__focus_n-1"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.new_href__at_dflt__focus_y-1"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.select_bwd-1"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.select_bwd-2"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.select_fwd-1"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.select_fwd-2"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.select_by_idx_1-1"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.select_by_idx_2-1"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.select_by_idx_3-1"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.select_by_idx_4-1"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.select_by_idx_5-1"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.select_by_idx_6-1"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.select_by_idx_7-1"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.select_by_idx_8-1"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.select_by_idx_9-1"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.move_bwd-1"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.move_fwd-1"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.close_cur-1"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.close_others-1"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.close_to_bgn-1"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.close_to_end-1"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.close_undo-1"
, "xowa.gui.shortcuts.xowa.gui.browser.tabs.pin_toggle-1"
, "xowa.gui.shortcuts.xowa.html.tidy.toggle-1"
, "xowa.gui.shortcuts.xowa.net.enable_n_-1"
, "xowa.gui.shortcuts.xowa.net.enable_y_-1"
, "xowa.gui.shortcuts.xowa.net.enable_x_-1"
, "xowa.gui.shortcuts.xowa.net.enabled_n_-1"
, "xowa.gui.shortcuts.xowa.net.enabled_y_-1"
, "xowa.gui.shortcuts.xowa.net.enabled_x_-1"
, "xowa.gui.shortcuts.xowa.usr.bookmarks.add-1"
, "xowa.gui.shortcuts.xowa.usr.bookmarks.show-1"
, "xowa.gui.shortcuts.xowa.usr.history.goto_recent-1"
@ -268,6 +269,7 @@ public class Xog_bnd_mgr implements Gfo_invk {
Init_itm(Xog_cmd_itm_.Key_gui_browser_search_exec , Xog_bnd_box_.Tid_browser_search , "key.enter");
Init_itm(Xog_cmd_itm_.Key_gui_browser_tabs_new_dflt__at_dflt__focus_y , Xog_bnd_box_.Tid_browser , "mod.c+key.t");
Init_itm(Xog_cmd_itm_.Key_gui_browser_tabs_new_link__at_dflt__focus_n , Xog_bnd_box_.Tid_browser_html , "mouse.middle");
Init_itm(Xog_cmd_itm_.Key_gui_browser_tabs_new_link__at_dflt__focus_y , Xog_bnd_box_.Tid_browser , "");
Init_itm(Xog_cmd_itm_.Key_gui_browser_tabs_new_href__at_dflt__focus_y , Xog_bnd_box_.Tid_browser , "mod.c+key.g,mod.c+key.f");
Init_itm(Xog_cmd_itm_.Key_gui_browser_tabs_close_cur , Xog_bnd_box_.Tid_browser , "mod.c+key.w");
Init_itm(Xog_cmd_itm_.Key_gui_browser_tabs_close_others , Xog_bnd_box_.Tid_browser , "mod.cs+key.w,mod.cs+key.w");

@ -70,7 +70,7 @@ public class Scrib_core {
public Scrib_lib_wikibase Lib_wikibase() {return lib_wikibase;} private Scrib_lib_wikibase lib_wikibase;
public Scrib_lib_wikibase_entity Lib_wikibase_entity() {return lib_wikibase_entity;} private Scrib_lib_wikibase_entity lib_wikibase_entity;
public Scrib_core Init() { // REF:LuaCommon.php!Load
Scrib_xtn_mgr xtn_mgr = (Scrib_xtn_mgr)wiki.Xtn_mgr().Get_or_fail(Scrib_xtn_mgr.XTN_KEY);
Scrib_xtn_mgr xtn_mgr = (Scrib_xtn_mgr)app.Xtn_mgr().Get_or_fail(Scrib_xtn_mgr.XTN_KEY);
Engine_(xtn_mgr.Engine_type(), xtn_mgr.Luaj_debug_enabled());
engine.Server().Server_timeout_(xtn_mgr.Lua_timeout()).Server_timeout_polling_(xtn_mgr.Lua_timeout_polling()).Server_timeout_busy_wait_(xtn_mgr.Lua_timeout_busy_wait());
enabled = xtn_mgr.Enabled();

@ -19,7 +19,9 @@ package gplx.xowa.xtns.titleBlacklists; import gplx.*; import gplx.xowa.*; impor
import gplx.xowa.xtns.scribunto.*; import gplx.xowa.xtns.scribunto.libs.*; import gplx.xowa.xtns.scribunto.procs.*;
public class Blacklist_scrib_lib implements Scrib_lib {
public Scrib_lua_mod Mod() {return mod;} private Scrib_lua_mod mod;
public Scrib_lib Init() {procs.Init_by_lib(this, Proc_names); return this;}
public Scrib_lib Init() {
procs.Init_by_lib(this, Proc_names); return this;
}
public Scrib_lib Clone_lib(Scrib_core core) {return new Blacklist_scrib_lib();}
public Scrib_lua_mod Register(Scrib_core core, Io_url script_dir) {
Init();

Loading…
Cancel
Save