private booleanupdateConfigurationLocked(Configuration values, ActivityRecord starting,boolean initLocale, boolean persistent, int userId, booleandeferResume) {int changes = 0;if (mWindowManager != null) {
mWindowManager.deferSurfaceLayout();
}if (values != null) {
Configuration newConfig= newConfiguration(mConfiguration);
changes=newConfig.updateFrom(values);if (changes != 0) {if (DEBUG_SWITCH ||DEBUG_CONFIGURATION) Slog.i(TAG_CONFIGURATION,"Updating configuration to: " +values);
EventLog.writeEvent(EventLogTags.CONFIGURATION_CHANGED, changes);if (!initLocale && !values.getLocales().isEmpty() &&values.userSetLocale) {final LocaleList locales =values.getLocales();int bestLocaleIndex = 0;if (locales.size() > 1) {if (mSupportedSystemLocales == null) {
mSupportedSystemLocales=Resources.getSystem().getAss