aboutsummaryrefslogtreecommitdiffstats
path: root/xpathBlink.js
diff options
context:
space:
mode:
authoranekos2010-12-12 18:08:36 +0900
committeranekos2010-12-12 18:09:34 +0900
commitbbc899568ba504cf75b2bc7e71c04e69d7aa79da (patch)
tree4d6dc983d3c020683abcc66d82e30ffc0e6dace4 /xpathBlink.js
parent18324f064373424392dbdb3d5bbf2f9e8bec513d (diff)
downloadvimperator-plugins-bbc899568ba504cf75b2bc7e71c04e69d7aa79da.tar.bz2
Follow Fx4
Diffstat (limited to 'xpathBlink.js')
-rw-r--r--xpathBlink.js101
1 files changed, 52 insertions, 49 deletions
diff --git a/xpathBlink.js b/xpathBlink.js
index 48c6ee0..9929a96 100644
--- a/xpathBlink.js
+++ b/xpathBlink.js
@@ -1,5 +1,5 @@
let INFO =
-<plugin name="xpathBlink" version="1.1.1"
+<plugin name="xpathBlink" version="1.1.2"
href="http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk/xpathBlink.js"
summary="blink elements by XPath"
xmlns="http://vimperator.org/namespaces/liberator">
@@ -28,9 +28,9 @@ let PLUGIN_INFO =
<author mail="teramako@gmail.com" homepage="http://vimperator.g.hatena.ne.jp/teramako/">teramako</author>
<require type="extension" id="inspector@mozilla.org">DOM Inspector</require>
<license>MPL 1.1</license>
-<version>1.1.1</version>
+<version>1.1.2</version>
<minVersion>2.2</minVersion>
-<maxVersion>2.3</maxVersion>
+<maxVersion>3.0</maxVersion>
<updateURL>https://github.com/vimpr/vimperator-plugins/raw/master/xpathBlink.js</updateURL>
<detail><![CDATA[
for test xpath
@@ -47,55 +47,58 @@ It's need "DOM Inspector" addon
(function(){
let extid = "inspector@mozilla.org";
-if (!Application.extensions.has(extid) || !Application.extensions.get(extid).enabled){
- liberator.echomsg("DOM Inspector is not installed or enabled", 2);
- return;
-}
-let flasher = null;
-function getFlasher(){
- if (!flasher){
- flasher = Cc['@mozilla.org/inspector/flasher;1'].createInstance(Ci.inIFlasher);
- flasher.color = '#FF0000';
- flasher.thickness = 2;
- }
- return flasher;
-}
-/**
- * @param {Node} aNode
- */
-function blink(aNode){
- if (aNode.nodeType == 3) aNode = aNode.parentNode;
- let toggle = true;
- let flasher = getFlasher();
- function setOutline(){
- if (toggle){
- flasher.drawElementOutline(aNode);
- } else {
- flasher.repaintElement(aNode);
- }
- toggle = !toggle;
- }
- for (let i=1; i<7; ++i){
- setTimeout(setOutline, i * 100);
- }
-}
-commands.addUserCommand(['xpathb[link]','xb'],'XPath blink nodes',
- function(expression){
- let result;
- try {
- result = util.evaluateXPath(expression.string);
- } catch(e) {
- liberator.echoerr('XPath blink: ' + e);
- }
- if (!result.snapshotLength){
- liberator.echo('XPath blink: none');
+Application.getExtensions(
+ function (extensions){
+ if (!extensions.has(extid) || !extensions.get(extid).enabled){
+ liberator.echomsg("DOM Inspector is not installed or enabled", 2);
return;
}
- for (let i=0; i<result.snapshotLength; i++){
- blink(result.snapshotItem(i));
+ let flasher = null;
+ function getFlasher(){
+ if (!flasher){
+ flasher = Cc['@mozilla.org/inspector/flasher;1'].createInstance(Ci.inIFlasher);
+ flasher.color = '#FF0000';
+ flasher.thickness = 2;
+ }
+ return flasher;
+ }
+ /**
+ * @param {Node} aNode
+ */
+ function blink(aNode){
+ if (aNode.nodeType == 3) aNode = aNode.parentNode;
+ let toggle = true;
+ let flasher = getFlasher();
+ function setOutline(){
+ if (toggle){
+ flasher.drawElementOutline(aNode);
+ } else {
+ flasher.repaintElement(aNode);
+ }
+ toggle = !toggle;
+ }
+ for (let i=1; i<7; ++i){
+ setTimeout(setOutline, i * 100);
+ }
}
- },{}
-);
+ commands.addUserCommand(['xpathb[link]','xb'],'XPath blink nodes',
+ function(expression){
+ let result;
+ try {
+ result = util.evaluateXPath(expression.string);
+ } catch(e) {
+ liberator.echoerr('XPath blink: ' + e);
+ }
+ if (!result.snapshotLength){
+ liberator.echo('XPath blink: none');
+ return;
+ }
+ for (let i=0; i<result.snapshotLength; i++){
+ blink(result.snapshotItem(i));
+ }
+ },{}
+ );
+});
})();
// vim: set fdm=marker sw=4 ts=4 et: