When applying settings, log ime-change only if needed
Change-Id: I62b4ce777948c18cec5117279523198f4514c3a6
This commit is contained in:
@@ -528,18 +528,26 @@
|
|||||||
* Handle the apply button press
|
* Handle the apply button press
|
||||||
*/
|
*/
|
||||||
apply: function () {
|
apply: function () {
|
||||||
var toggleHookName,
|
var previousIM,
|
||||||
inputSettings = this;
|
inputSettings = this,
|
||||||
|
previousLanguage = inputSettings.savedRegistry.language,
|
||||||
|
currentlyEnabled = $.ime.preferences.isEnabled(),
|
||||||
|
currentLanguage = $.ime.preferences.getLanguage(),
|
||||||
|
currentIM = $.ime.preferences.getIM( currentLanguage );
|
||||||
|
|
||||||
mw.hook( 'mw.uls.ime.change' ).fire(
|
if ( previousLanguage ) {
|
||||||
$.ime.preferences.getIM( $.ime.preferences.getLanguage() )
|
previousIM = inputSettings.savedRegistry.imes[previousLanguage];
|
||||||
);
|
}
|
||||||
|
|
||||||
if ( inputSettings.savedRegistry.enable !== $.ime.preferences.isEnabled() ) {
|
if ( currentLanguage !== inputSettings.savedRegistry.language ||
|
||||||
toggleHookName = $.ime.preferences.isEnabled() ?
|
currentIM !== previousIM
|
||||||
'mw.uls.ime.enable' :
|
) {
|
||||||
'mw.uls.ime.disable';
|
mw.hook( 'mw.uls.ime.change' ).fire( currentIM );
|
||||||
mw.hook( toggleHookName ).fire( 'inputsettings' );
|
}
|
||||||
|
|
||||||
|
if ( inputSettings.savedRegistry.enable !== currentlyEnabled ) {
|
||||||
|
mw.hook( currentlyEnabled ? 'mw.uls.ime.enable' : 'mw.uls.ime.disable' )
|
||||||
|
.fire( 'inputsettings' );
|
||||||
}
|
}
|
||||||
|
|
||||||
// Save the preferences
|
// Save the preferences
|
||||||
|
|||||||
Reference in New Issue
Block a user