Bug 1449338 - Show currently selected engine in newtabs search input. r=mikedeboer

MozReview-Commit-ID: GTsx9dReoxS

--HG--
extra : rebase_source : f44ae3d3eed6c5bbb6fc055fa0cdb3067b7841a1
This commit is contained in:
Dale Harvey 2018-04-17 13:30:54 +01:00
Родитель 3ef9e9fbe3
Коммит 80d9ecb796
3 изменённых файлов: 12 добавлений и 0 удалений

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

@ -9,6 +9,7 @@ this.ContentSearchUIController = (function() {
const MAX_DISPLAYED_SUGGESTIONS = 6;
const SUGGESTION_ID_PREFIX = "searchSuggestion";
const ONE_OFF_ID_PREFIX = "oneOff";
const DEFAULT_INPUT_ICON = "chrome://browser/skin/search-glass.svg";
const HTML_NS = "http://www.w3.org/1999/xhtml";
@ -91,6 +92,7 @@ ContentSearchUIController.prototype = {
icon,
};
this._updateDefaultEngineHeader();
this._updateDefaultEngineIcon();
if (engine && document.activeElement == this.input) {
this._speculativeConnect();
@ -609,6 +611,14 @@ ContentSearchUIController.prototype = {
this._strings.searchSettings;
},
_updateDefaultEngineIcon() {
let eng = this._engines.find(engine => engine.name === this.defaultEngine.name);
// We only show the engines icon for default engines, otherwise show
// a default; default engines have an identifier
let icon = eng.identifier ? this.defaultEngine.icon : DEFAULT_INPUT_ICON;
document.body.style.setProperty("--newtab-search-icon", "url(" + icon + ")");
},
_updateDefaultEngineHeader() {
let header = document.getElementById("contentSearchDefaultEngineHeader");
header.firstChild.setAttribute("src", this.defaultEngine.icon);

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

@ -339,6 +339,7 @@ var ContentSearch = {
name: engine.name,
iconBuffer,
hidden: hiddenList.includes(engine.name),
identifier: engine.identifier
});
}
return state;

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

@ -372,6 +372,7 @@ var currentStateObj = async function() {
name: engine.name,
iconBuffer: await arrayBufferFromDataURI(uri),
hidden: false,
identifier: engine.identifier,
});
}
return state;