1
0
mirror of https://github.com/gryf/pentadactyl-pm.git synced 2026-04-21 16:21:25 +02:00

move the global evaluateXPath() function to vimperator.buffer

This commit is contained in:
Doug Kearns
2007-08-16 11:14:50 +00:00
parent 1ec6743b5d
commit 7352f0a680
4 changed files with 33 additions and 36 deletions
+22
View File
@@ -138,6 +138,28 @@ function Buffer() //{{{
return window.content.document.title;
});
// returns an XPathResult object
this.evaluateXPath = function(expression, doc, ordered)
{
if (!doc)
doc = window.content.document;
var result = doc.evaluate(expression, doc,
function lookupNamespaceURI(prefix) {
switch (prefix) {
case 'xhtml':
return 'http://www.w3.org/1999/xhtml';
default:
return null;
}
},
ordered ? XPathResult.ORDERED_NODE_SNAPSHOT_TYPE : XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
null
);
return result;
}
// TODO: move to v.buffers.list()
this.list = function(fullmode)
{
+6 -31
View File
@@ -1237,12 +1237,12 @@ function Commands() //{{{
//}}}
} //}}}
/* takes a string like 'google bla, www.osnews.com'
* and returns an array ['www.google.com/search?q=bla', 'www.osnews.com']
*/
String.prototype.toURLArray = function()
// takes a string like 'google bla, www.osnews.com'
// and returns an array ['www.google.com/search?q=bla', 'www.osnews.com']
String.prototype.toURLArray = function() // {{{
{
var urls = this.split(/\s*\,\s+/);
begin: for (var url = 0; url < urls.length; url++)
{
// FIXME: not really that good (doesn't handle .. in the middle), also problems with trailing slashes
@@ -1311,33 +1311,8 @@ String.prototype.toURLArray = function()
// if we are here let Firefox handle the url and hope it does
// something useful with it :)
}
return urls;
}
/////////////////////////////////////////////////////////////////////}}}
// misc helper functions ///////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////{{{
// returns an XPathResult object
function evaluateXPath(expression, doc, ordered)
{
if (!doc)
doc = window.content.document;
var res = doc.evaluate(expression, doc,
function lookupNamespaceURI(prefix) {
switch (prefix) {
case 'xhtml':
return 'http://www.w3.org/1999/xhtml';
default:
return null;
}
},
ordered ? XPathResult.ORDERED_NODE_SNAPSHOT_TYPE : XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
null
);
return res;
}
//}}}
} // }}}
// vim: set fdm=marker sw=4 ts=4 et:
+1 -1
View File
@@ -245,7 +245,7 @@ vimperator.help = function(section, easter) //{{{
{
function findSectionElement(section)
{
return evaluateXPath('//code[@class="tag" and text()="' + section + '"]')
return vimperator.buffer.evaluateXPath('//code[@class="tag" and text()="' + section + '"]')
.snapshotItem(0);
}
+3 -3
View File
@@ -64,7 +64,7 @@ function Hints() //{{{
wins.push(win);
}
// logMessage("winId:"+win.winId);
win.res = evaluateXPath(vimperator.options["hinttags"], doc);
win.res = vimperator.buffer.evaluateXPath(vimperator.options["hinttags"], doc);
win.coordLoaderId = window.setTimeout("vimperator.hints.loadCoord(" + win.winId + ", 0);", 1);
}
@@ -141,7 +141,7 @@ function Hints() //{{{
area[3] = area[1] + win.innerHeight;
var doc = win.document;
var res = evaluateXPath(vimperator.options["hinttags"], doc);
var res = vimperator.buffer.evaluateXPath(vimperator.options["hinttags"], doc);
var elem, i;
@@ -260,7 +260,7 @@ function Hints() //{{{
win = window.content;
var doc = win.document;
var res = evaluateXPath("//HINTS/SPAN", doc)
var res = vimperator.buffer.evaluateXPath("//HINTS/SPAN", doc)
var elem, i;
for (i = 0; i < res.snapshotLength; i++)