mirror of
https://github.com/gryf/pentadactyl-pm.git
synced 2026-02-21 22:35:45 +01:00
Remove some config.name checks. Add configbase module.
This commit is contained in:
@@ -27,26 +27,29 @@ the terms of any one of the MPL, the GPL or the LGPL.
|
|||||||
}}} ***** END LICENSE BLOCK *****/
|
}}} ***** END LICENSE BLOCK *****/
|
||||||
|
|
||||||
const configbase = { //{{{
|
const configbase = { //{{{
|
||||||
features: [],
|
autocommands: [],
|
||||||
|
|
||||||
|
get browserModes() [modes.NORMAL],
|
||||||
|
|
||||||
defaults: { guioptions: "rb" },
|
defaults: { guioptions: "rb" },
|
||||||
|
|
||||||
guioptions: {},
|
|
||||||
|
|
||||||
autocommands: [],
|
|
||||||
|
|
||||||
dialogs: [],
|
dialogs: [],
|
||||||
|
|
||||||
|
features: [],
|
||||||
|
|
||||||
|
guioptions: {},
|
||||||
|
|
||||||
hasTabbrowser: false,
|
hasTabbrowser: false,
|
||||||
|
|
||||||
// they are sorted by relevance, not alphabetically
|
|
||||||
helpFiles: [],
|
helpFiles: [],
|
||||||
|
|
||||||
|
init: function () {},
|
||||||
|
|
||||||
|
ignoreKeys: {},
|
||||||
|
|
||||||
optionDefaults: {},
|
optionDefaults: {},
|
||||||
|
|
||||||
scripts: [],
|
scripts: [],
|
||||||
|
|
||||||
init: function () {},
|
|
||||||
}; //}}}
|
}; //}}}
|
||||||
|
|
||||||
// vim: set fdm=marker sw=4 ts=4 et:
|
// vim: set fdm=marker sw=4 ts=4 et:
|
||||||
|
|||||||
@@ -1014,10 +1014,8 @@ function Events() //{{{
|
|||||||
|
|
||||||
if (this.duringFeed != "")
|
if (this.duringFeed != "")
|
||||||
{
|
{
|
||||||
//Create a scalar constant for closure.
|
|
||||||
let duringFeed = this.duringFeed;
|
let duringFeed = this.duringFeed;
|
||||||
this.duringFeed = "";
|
this.duringFeed = "";
|
||||||
|
|
||||||
setTimeout(function () events.feedkeys(duringFeed, false, false, true), 0);
|
setTimeout(function () events.feedkeys(duringFeed, false, false, true), 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1458,13 +1456,8 @@ function Events() //{{{
|
|||||||
// XXX: ugly hack for now pass certain keys to Firefox as they are without beeping
|
// XXX: ugly hack for now pass certain keys to Firefox as they are without beeping
|
||||||
// also fixes key navigation in combo boxes, submitting forms, etc.
|
// also fixes key navigation in combo boxes, submitting forms, etc.
|
||||||
// FIXME: breaks iabbr for now --mst
|
// FIXME: breaks iabbr for now --mst
|
||||||
if (((config.name == "Xulmus" || config.name == "Vimperator") && liberator.mode == modes.NORMAL || liberator.mode == modes.INSERT))
|
if (key in config.ignoreKeys && (config.ignoreKeys[key] & liberator.mode))
|
||||||
{
|
return false;
|
||||||
if (key == "<Return>")
|
|
||||||
return false;
|
|
||||||
else if (key == "<Space>" || key == "<Up>" || key == "<Down>")
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
// TODO: handle middle click in content area
|
// TODO: handle middle click in content area
|
||||||
|
|
||||||
@@ -1601,8 +1594,8 @@ function Events() //{{{
|
|||||||
else // if the key is neither a mapping nor the start of one
|
else // if the key is neither a mapping nor the start of one
|
||||||
{
|
{
|
||||||
// the mode checking is necessary so that things like g<esc> do not beep
|
// the mode checking is necessary so that things like g<esc> do not beep
|
||||||
if (input.buffer != "" && !skipMap && (liberator.mode == modes.INSERT ||
|
if (input.buffer != "" && !skipMap &&
|
||||||
liberator.mode == modes.COMMAND_LINE || liberator.mode == modes.TEXTAREA))
|
(liberator.mode & (modes.INSERT | modes.COMMAND_LINE | modes.TEXTAREA)))
|
||||||
{
|
{
|
||||||
// no map found -> refeed stuff in input.buffer (only while in INSERT, CO... modes)
|
// no map found -> refeed stuff in input.buffer (only while in INSERT, CO... modes)
|
||||||
skipMap = true; // ignore maps while doing so
|
skipMap = true; // ignore maps while doing so
|
||||||
|
|||||||
@@ -33,6 +33,7 @@
|
|||||||
|
|
||||||
["services.js",
|
["services.js",
|
||||||
"liberator.js",
|
"liberator.js",
|
||||||
|
"configbase.js",
|
||||||
"config.js",
|
"config.js",
|
||||||
"util.js",
|
"util.js",
|
||||||
"style.js",
|
"style.js",
|
||||||
@@ -50,9 +51,9 @@
|
|||||||
"template.js",
|
"template.js",
|
||||||
"ui.js"].forEach(load);
|
"ui.js"].forEach(load);
|
||||||
|
|
||||||
|
modules.config.__proto__ = modules.configbase;
|
||||||
prefix.unshift("chrome://" + modules.config.name.toLowerCase() + "/content/");
|
prefix.unshift("chrome://" + modules.config.name.toLowerCase() + "/content/");
|
||||||
if (modules.config.scripts)
|
modules.config.scripts.forEach(load);
|
||||||
modules.config.scripts.forEach(load);
|
|
||||||
|
|
||||||
})()
|
})()
|
||||||
|
|
||||||
|
|||||||
@@ -1232,25 +1232,7 @@ const liberator = (function () //{{{
|
|||||||
let start = Date.now();
|
let start = Date.now();
|
||||||
liberator.log("Initializing liberator object...", 0);
|
liberator.log("Initializing liberator object...", 0);
|
||||||
|
|
||||||
config.features = config.features || [];
|
|
||||||
config.features.push(getPlatformFeature());
|
config.features.push(getPlatformFeature());
|
||||||
config.defaults = config.defaults || {};
|
|
||||||
config.guioptions = config.guioptions || {};
|
|
||||||
|
|
||||||
// -> we can't use this, since config.browserModes might already be defined as a getter-only
|
|
||||||
// TODO: also change the other config.* defaults?
|
|
||||||
// config.browserModes = config.browserModes || [modes.NORMAL];
|
|
||||||
if (!config.browserModes)
|
|
||||||
config.browserModes = [modes.NORMAL];
|
|
||||||
config.mailModes = config.mailModes || [modes.NORMAL];
|
|
||||||
// TODO: suitable defaults?
|
|
||||||
//config.mainWidget
|
|
||||||
//config.mainWindowID
|
|
||||||
//config.visualbellWindow
|
|
||||||
//config.styleableChrome
|
|
||||||
config.autocommands = config.autocommands || [];
|
|
||||||
config.dialogs = config.dialogs || [];
|
|
||||||
config.helpFiles = config.helpFiles || [];
|
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -28,8 +28,6 @@ the terms of any one of the MPL, the GPL or the LGPL.
|
|||||||
|
|
||||||
/** @scope modules */
|
/** @scope modules */
|
||||||
|
|
||||||
// Do NOT create instances of this class yourself, use the helper method
|
|
||||||
// mappings.add() instead
|
|
||||||
/**
|
/**
|
||||||
* A class representing key mappings. Instances are created by the
|
* A class representing key mappings. Instances are created by the
|
||||||
* {@link Mappings} class.
|
* {@link Mappings} class.
|
||||||
|
|||||||
@@ -110,7 +110,7 @@ function Tabs() //{{{
|
|||||||
}
|
}
|
||||||
|
|
||||||
// hide tabs initially
|
// hide tabs initially
|
||||||
if (config.name == "Vimperator")
|
if (config.hasTabbrowser)
|
||||||
getBrowser().mStrip.getElementsByClassName("tabbrowser-tabs")[0].collapsed = true;
|
getBrowser().mStrip.getElementsByClassName("tabbrowser-tabs")[0].collapsed = true;
|
||||||
|
|
||||||
/////////////////////////////////////////////////////////////////////////////}}}
|
/////////////////////////////////////////////////////////////////////////////}}}
|
||||||
|
|||||||
@@ -122,6 +122,16 @@ const config = { //{{{
|
|||||||
"various.html", "index.html", "version.html"
|
"various.html", "index.html", "version.html"
|
||||||
],
|
],
|
||||||
|
|
||||||
|
get ignoreKeys() {
|
||||||
|
delete this.ignoreKeys;
|
||||||
|
return this.ignoreKeys = {
|
||||||
|
"<Return>": modes.NORMAL | modes.INSERT,
|
||||||
|
"<Space>": modes.NORMAL | modes.INSERT,
|
||||||
|
"<Up>": modes.NORMAL | modes.INSERT,
|
||||||
|
"<Down>": modes.NORMAL | modes.INSERT,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
optionDefaults: {
|
optionDefaults: {
|
||||||
showtabline: 2,
|
showtabline: 2,
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -165,6 +165,16 @@ const config = { //{{{
|
|||||||
|
|
||||||
modes: [["PLAYER", { char: "p" }]],
|
modes: [["PLAYER", { char: "p" }]],
|
||||||
|
|
||||||
|
get ignoreKeys() {
|
||||||
|
delete this.ignoreKeys;
|
||||||
|
return this.ignoreKeys = {
|
||||||
|
"<Return>": modes.NORMAL | modes.INSERT,
|
||||||
|
"<Space>": modes.NORMAL | modes.INSERT,
|
||||||
|
"<Up>": modes.NORMAL | modes.INSERT,
|
||||||
|
"<Down>": modes.NORMAL | modes.INSERT,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
optionDefaults: {
|
optionDefaults: {
|
||||||
showtabline: 2,
|
showtabline: 2,
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user