mirror of
https://github.com/gryf/pentadactyl-pm.git
synced 2026-03-16 20:43:32 +01:00
Add Find highlight group.
This commit is contained in:
@@ -648,10 +648,9 @@ var CommandLine = Module("commandline", {
|
|||||||
* @param {XML} xml The output as an E4X XML object.
|
* @param {XML} xml The output as an E4X XML object.
|
||||||
*/
|
*/
|
||||||
commandOutput: function commandOutput(xml) {
|
commandOutput: function commandOutput(xml) {
|
||||||
XML.ignoreWhitespace = false;
|
XML.ignoreWhitespace = XML.prettyPrinting = false;
|
||||||
XML.prettyPrinting = false;
|
|
||||||
if (this.command)
|
if (this.command)
|
||||||
this.echo(<>:{this.command}{xml}</>, this.HIGHLIGHT_NORMAL, this.FORCE_MULTILINE);
|
this.echo(<><div xmlns={XHTML}>:{this.command}</div>
{xml}</>, this.HIGHLIGHT_NORMAL, this.FORCE_MULTILINE);
|
||||||
else
|
else
|
||||||
this.echo(xml, this.HIGHLIGHT_NORMAL, this.FORCE_MULTILINE);
|
this.echo(xml, this.HIGHLIGHT_NORMAL, this.FORCE_MULTILINE);
|
||||||
this.command = null;
|
this.command = null;
|
||||||
|
|||||||
@@ -79,6 +79,7 @@
|
|||||||
<dt>Enabled</dt> <dd>Text indicating enabled status, such as of an extension or style group</dd>
|
<dt>Enabled</dt> <dd>Text indicating enabled status, such as of an extension or style group</dd>
|
||||||
<dt>ErrorMsg</dt> <dd>Error messages</dd>
|
<dt>ErrorMsg</dt> <dd>Error messages</dd>
|
||||||
<dt>Filter</dt> <dd>The matching text in a completion list</dd>
|
<dt>Filter</dt> <dd>The matching text in a completion list</dd>
|
||||||
|
<dt>Find</dt> <dd>Text find highlighting. Only background and foreground colors apply.</dd>
|
||||||
<dt>FrameIndicator</dt> <dd>The indicator shown when a new frame is selected</dd>
|
<dt>FrameIndicator</dt> <dd>The indicator shown when a new frame is selected</dd>
|
||||||
<dt>Function</dt> <dd>A JavaScript Function object</dd>
|
<dt>Function</dt> <dd>A JavaScript Function object</dd>
|
||||||
<dt>Hint</dt> <dd>A hint indicator. See <ex>:help hints</ex></dd>
|
<dt>Hint</dt> <dd>A hint indicator. See <ex>:help hints</ex></dd>
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ Components.utils.import("resource://dactyl/bootstrap.jsm");
|
|||||||
defineModule("config", {
|
defineModule("config", {
|
||||||
exports: ["ConfigBase", "Config", "config"],
|
exports: ["ConfigBase", "Config", "config"],
|
||||||
require: ["services", "storage", "util", "template"],
|
require: ["services", "storage", "util", "template"],
|
||||||
use: ["io", "messages", "prefs"]
|
use: ["io", "messages", "prefs", "styles"]
|
||||||
}, this);
|
}, this);
|
||||||
|
|
||||||
var ConfigBase = Class("ConfigBase", {
|
var ConfigBase = Class("ConfigBase", {
|
||||||
@@ -33,9 +33,12 @@ var ConfigBase = Class("ConfigBase", {
|
|||||||
|
|
||||||
loadStyles: function loadStyles() {
|
loadStyles: function loadStyles() {
|
||||||
const { highlight } = require("highlight");
|
const { highlight } = require("highlight");
|
||||||
|
|
||||||
highlight.styleableChrome = this.styleableChrome;
|
highlight.styleableChrome = this.styleableChrome;
|
||||||
|
|
||||||
highlight.loadCSS(this.CSS);
|
highlight.loadCSS(this.CSS);
|
||||||
highlight.loadCSS(this.helpCSS);
|
highlight.loadCSS(this.helpCSS);
|
||||||
|
|
||||||
if (!util.haveGecko("2b"))
|
if (!util.haveGecko("2b"))
|
||||||
highlight.loadCSS(<![CDATA[
|
highlight.loadCSS(<![CDATA[
|
||||||
!TabNumber font-weight: bold; margin: 0px; padding-right: .8ex;
|
!TabNumber font-weight: bold; margin: 0px; padding-right: .8ex;
|
||||||
@@ -46,6 +49,25 @@ var ConfigBase = Class("ConfigBase", {
|
|||||||
text-shadow: black -1px 0 1px, black 0 1px 1px, black 1px 0 1px, black 0 -1px 1px;
|
text-shadow: black -1px 0 1px, black 0 1px 1px, black 1px 0 1px, black 0 -1px 1px;
|
||||||
}
|
}
|
||||||
]]>);
|
]]>);
|
||||||
|
|
||||||
|
let hl = highlight.set("Find", "");
|
||||||
|
hl.onChange = function () {
|
||||||
|
function hex(val) ("#" + util.regexp.iterate(/\d+/g, val)
|
||||||
|
.map(function (num) ("0" + Number(num).toString(16)).slice(-2))
|
||||||
|
.join("")
|
||||||
|
).slice(0, 7);
|
||||||
|
|
||||||
|
let elem = services.appShell.hiddenDOMWindow.document.createElement("div");
|
||||||
|
elem.style.cssText = this.cssText;
|
||||||
|
let style = util.computedStyle(elem);
|
||||||
|
|
||||||
|
let keys = iter(Styles.propertyIter(this.cssText)).map(function (p) p.name).toArray();
|
||||||
|
let bg = keys.some(function (k) /^background/.test(k));
|
||||||
|
let fg = keys.indexOf("color") >= 0;
|
||||||
|
|
||||||
|
prefs[bg ? "safeSet" : "safeReset"]("ui.textHighlightBackground", hex(style.backgroundColor));
|
||||||
|
prefs[fg ? "safeSet" : "safeReset"]("ui.textHighlightForeground", hex(style.color));
|
||||||
|
};
|
||||||
},
|
},
|
||||||
|
|
||||||
get addonID() this.name + "@dactyl.googlecode.com",
|
get addonID() this.name + "@dactyl.googlecode.com",
|
||||||
|
|||||||
@@ -33,6 +33,8 @@ Highlight.liveProperty = function (name, prop) {
|
|||||||
h.style.css = h.css;
|
h.style.css = h.css;
|
||||||
|
|
||||||
this.style[prop || name] = this[prop || name];
|
this.style[prop || name] = this[prop || name];
|
||||||
|
if (this.onChange)
|
||||||
|
this.onChange();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
Highlight.liveProperty("agent");
|
Highlight.liveProperty("agent");
|
||||||
|
|||||||
@@ -1694,7 +1694,7 @@ var Util = Module("Util", XPCOM([Ci.nsIObserver, Ci.nsISupportsWeakReference]),
|
|||||||
do {
|
do {
|
||||||
mainThread.processNextEvent(!flush);
|
mainThread.processNextEvent(!flush);
|
||||||
if (util.interrupted)
|
if (util.interrupted)
|
||||||
throw new Error("Interrupted");
|
throw Error("Interrupted");
|
||||||
}
|
}
|
||||||
while (flush === true && mainThread.hasPendingEvents());
|
while (flush === true && mainThread.hasPendingEvents());
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -134,6 +134,7 @@
|
|||||||
- CSS property name completion is now available. [b4]
|
- CSS property name completion is now available. [b4]
|
||||||
- :delstyle, :styleenable, :styledisable and :styletoggle accept a !
|
- :delstyle, :styleenable, :styledisable and :styletoggle accept a !
|
||||||
to operate on all styles. [b6]
|
to operate on all styles. [b6]
|
||||||
|
- Added Find group. [b7]
|
||||||
• IMPORTANT option changes:
|
• IMPORTANT option changes:
|
||||||
- Option value quoting has changed. List options will
|
- Option value quoting has changed. List options will
|
||||||
no longer be split at quoted commas and the option name,
|
no longer be split at quoted commas and the option name,
|
||||||
|
|||||||
Reference in New Issue
Block a user