Bug 1101648 - UITour API to determine selected search engine. r=gavin

This commit is contained in:
Felipe Gomes 2014-11-20 18:21:29 -02:00
parent 6b9328c997
commit 37353eb563
2 changed files with 25 additions and 0 deletions

View File

@ -1296,6 +1296,19 @@ this.UITour = {
props.forEach(property => appinfo[property] = Services.appinfo[property]);
this.sendPageCallback(aMessageManager, aCallbackID, appinfo);
break;
case "selectedSearchEngine":
Services.search.init(rv => {
let engine;
if (Components.isSuccessCode(rv)) {
engine = Services.search.defaultEngine;
} else {
engine = { identifier: "" };
}
this.sendPageCallback(aMessageManager, aCallbackID, {
searchEngineIdentifier: engine.identifier
});
});
break;
default:
log.error("getConfiguration: Unknown configuration requested: " + aConfiguration);
break;

View File

@ -8,6 +8,7 @@ let gContentAPI;
let gContentWindow;
Components.utils.import("resource:///modules/UITour.jsm");
Components.utils.import("resource://gre/modules/Services.jsm");
requestLongerTimeout(2);
@ -145,4 +146,15 @@ let tests = [
popup.removeAttribute("animate");
}),
function test_getConfiguration_selectedSearchEngine(done) {
Services.search.init(rv => {
ok(Components.isSuccessCode(rv), "Search service initialized");
let engine = Services.search.defaultEngine;
gContentAPI.getConfiguration("selectedSearchEngine", (data) => {
is(data.searchEngineIdentifier, engine.identifier, "Correct engine identifier");
done();
});
});
},
];