Bug 1197146: Part 2: Use dispatcher for listener findElementsContent

r=dburns

--HG--
extra : commitid : 6C4UE1m18Da
extra : source : f7e4900ea7ca194f282fae199d64b712aee85251
This commit is contained in:
Andreas Tolfsen 2015-08-21 15:03:03 +01:00
Родитель 2c61350827
Коммит c92e905c2e
2 изменённых файлов: 19 добавлений и 17 удалений

Просмотреть файл

@ -1945,10 +1945,10 @@ GeckoDriver.prototype.findElements = function(cmd, resp) {
case Context.CONTENT:
resp.value = yield this.listener.findElementsContent({
value: cmd.parameters.value,
using: cmd.parameters.using,
element: cmd.parameters.element,
searchTimeout: this.searchTimeout});
value: cmd.parameters.value,
using: cmd.parameters.using,
element: cmd.parameters.element,
searchTimeout: this.searchTimeout});
break;
}
};

Просмотреть файл

@ -205,6 +205,7 @@ let getElementTagNameFn = dispatch(getElementTagName);
let getElementRectFn = dispatch(getElementRect);
let isElementEnabledFn = dispatch(isElementEnabled);
let getCurrentUrlFn = dispatch(getCurrentUrl);
let findElementsContentFn = dispatch(findElementsContent);
/**
* Start all message listeners
@ -228,7 +229,7 @@ function startListeners() {
addMessageListenerId("Marionette:goForward", goForward);
addMessageListenerId("Marionette:refresh", refresh);
addMessageListenerId("Marionette:findElementContent", findElementContent);
addMessageListenerId("Marionette:findElementsContent", findElementsContent);
addMessageListenerId("Marionette:findElementsContent", findElementsContentFn);
addMessageListenerId("Marionette:getActiveElement", getActiveElementFn);
addMessageListenerId("Marionette:clickElement", clickElementFn);
addMessageListenerId("Marionette:getElementAttribute", getElementAttributeFn);
@ -333,7 +334,7 @@ function deleteSession(msg) {
removeMessageListenerId("Marionette:goForward", goForward);
removeMessageListenerId("Marionette:refresh", refresh);
removeMessageListenerId("Marionette:findElementContent", findElementContent);
removeMessageListenerId("Marionette:findElementsContent", findElementsContent);
removeMessageListenerId("Marionette:findElementsContent", findElementsContentFn);
removeMessageListenerId("Marionette:getActiveElement", getActiveElementFn);
removeMessageListenerId("Marionette:clickElement", clickElementFn);
removeMessageListenerId("Marionette:getElementAttribute", getElementAttributeFn);
@ -1405,18 +1406,19 @@ function findElementContent(msg) {
}
/**
* Find elements in the document using requested search strategy
* Find elements in the current browsing context's document using the
* given search strategy.
*/
function findElementsContent(msg) {
let command_id = msg.json.command_id;
try {
let onSuccess = (els, id) => sendResponse({value: els}, id);
let onError = (err, id) => sendError(err, id);
elementManager.find(curFrame, msg.json, msg.json.searchTimeout,
true /* all */, onSuccess, onError, command_id);
} catch (e) {
sendError(e, command_id);
}
function findElementsContent(opts) {
return new Promise((resolve, reject) => {
elementManager.find(
curFrame,
opts,
opts.searchTimeout,
true /* all */,
resolve,
reject);
});
}
/**