ibusManager: Use Map to store engines
This is a clear case of key->value mapping, so using the corresponding data type makes sense. https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/612
This commit is contained in:
parent
0bdd1b6fc4
commit
e95f3febd6
@ -42,7 +42,7 @@ var IBusManager = class {
|
|||||||
this._candidatePopup = new IBusCandidatePopup.CandidatePopup();
|
this._candidatePopup = new IBusCandidatePopup.CandidatePopup();
|
||||||
|
|
||||||
this._panelService = null;
|
this._panelService = null;
|
||||||
this._engines = {};
|
this._engines = new Map();
|
||||||
this._ready = false;
|
this._ready = false;
|
||||||
this._registerPropertiesId = 0;
|
this._registerPropertiesId = 0;
|
||||||
this._currentEngineName = null;
|
this._currentEngineName = null;
|
||||||
@ -73,7 +73,7 @@ var IBusManager = class {
|
|||||||
|
|
||||||
this._panelService = null;
|
this._panelService = null;
|
||||||
this._candidatePopup.setPanelService(null);
|
this._candidatePopup.setPanelService(null);
|
||||||
this._engines = {};
|
this._engines.clear();
|
||||||
this._ready = false;
|
this._ready = false;
|
||||||
this._registerPropertiesId = 0;
|
this._registerPropertiesId = 0;
|
||||||
this._currentEngineName = null;
|
this._currentEngineName = null;
|
||||||
@ -96,7 +96,7 @@ var IBusManager = class {
|
|||||||
if (enginesList) {
|
if (enginesList) {
|
||||||
for (let i = 0; i < enginesList.length; ++i) {
|
for (let i = 0; i < enginesList.length; ++i) {
|
||||||
let name = enginesList[i].get_name();
|
let name = enginesList[i].get_name();
|
||||||
this._engines[name] = enginesList[i];
|
this._engines.set(name, enginesList[i]);
|
||||||
}
|
}
|
||||||
this._updateReadiness();
|
this._updateReadiness();
|
||||||
} else {
|
} else {
|
||||||
@ -150,8 +150,7 @@ var IBusManager = class {
|
|||||||
}
|
}
|
||||||
|
|
||||||
_updateReadiness() {
|
_updateReadiness() {
|
||||||
this._ready = (Object.keys(this._engines).length > 0 &&
|
this._ready = this._engines.size > 0 && this._panelService != null;
|
||||||
this._panelService != null);
|
|
||||||
this.emit('ready', this._ready);
|
this.emit('ready', this._ready);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -189,10 +188,10 @@ var IBusManager = class {
|
|||||||
}
|
}
|
||||||
|
|
||||||
getEngineDesc(id) {
|
getEngineDesc(id) {
|
||||||
if (!this._ready || !this._engines.hasOwnProperty(id))
|
if (!this._ready || !this._engines.has(id))
|
||||||
return null;
|
return null;
|
||||||
|
|
||||||
return this._engines[id];
|
return this._engines.get(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
setEngine(id, callback) {
|
setEngine(id, callback) {
|
||||||
|
Loading…
Reference in New Issue
Block a user