Sync recently used reactions list across sessions
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
This commit is contained in:
@@ -351,6 +351,12 @@ export const SETTINGS = {
|
||||
default: "en",
|
||||
},
|
||||
"breadcrumb_rooms": {
|
||||
// not really a setting
|
||||
supportedLevels: ['account'],
|
||||
default: [],
|
||||
},
|
||||
"recent_emoji": {
|
||||
// not really a setting
|
||||
supportedLevels: ['account'],
|
||||
default: [],
|
||||
},
|
||||
|
||||
@@ -23,6 +23,7 @@ import {objectClone, objectKeyChanges} from "../../utils/objects";
|
||||
const BREADCRUMBS_LEGACY_EVENT_TYPE = "im.vector.riot.breadcrumb_rooms";
|
||||
const BREADCRUMBS_EVENT_TYPE = "im.vector.setting.breadcrumbs";
|
||||
const BREADCRUMBS_EVENT_TYPES = [BREADCRUMBS_LEGACY_EVENT_TYPE, BREADCRUMBS_EVENT_TYPE];
|
||||
const RECENT_EMOJI_EVENT_TYPE = "io.element.recent_emoji";
|
||||
|
||||
const INTEG_PROVISIONING_EVENT_TYPE = "im.vector.setting.integration_provisioning";
|
||||
|
||||
@@ -69,6 +70,9 @@ export default class AccountSettingsHandler extends MatrixClientBackedSettingsHa
|
||||
} else if (event.getType() === INTEG_PROVISIONING_EVENT_TYPE) {
|
||||
const val = event.getContent()['enabled'];
|
||||
this._watchers.notifyUpdate("integrationProvisioning", null, SettingLevel.ACCOUNT, val);
|
||||
} else if (event.getType() === RECENT_EMOJI_EVENT_TYPE) {
|
||||
const val = event.getContent()['enabled'];
|
||||
this._watchers.notifyUpdate("recent_emoji", null, SettingLevel.ACCOUNT, val);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -95,6 +99,12 @@ export default class AccountSettingsHandler extends MatrixClientBackedSettingsHa
|
||||
return content && content['recent_rooms'] ? content['recent_rooms'] : [];
|
||||
}
|
||||
|
||||
// Special case recent emoji
|
||||
if (settingName === "recent_emoji") {
|
||||
const content = this._getSettings(RECENT_EMOJI_EVENT_TYPE);
|
||||
return content ? content["recent_emoji"] : null;
|
||||
}
|
||||
|
||||
// Special case integration manager provisioning
|
||||
if (settingName === "integrationProvisioning") {
|
||||
const content = this._getSettings(INTEG_PROVISIONING_EVENT_TYPE);
|
||||
@@ -135,6 +145,13 @@ export default class AccountSettingsHandler extends MatrixClientBackedSettingsHa
|
||||
return MatrixClientPeg.get().setAccountData(BREADCRUMBS_EVENT_TYPE, content);
|
||||
}
|
||||
|
||||
// Special case recent emoji
|
||||
if (settingName === "recent_emoji") {
|
||||
const content = this._getSettings(RECENT_EMOJI_EVENT_TYPE) || {};
|
||||
content["recent_emoji"] = newValue;
|
||||
return MatrixClientPeg.get().setAccountData(RECENT_EMOJI_EVENT_TYPE, content);
|
||||
}
|
||||
|
||||
// Special case integration manager provisioning
|
||||
if (settingName === "integrationProvisioning") {
|
||||
const content = this._getSettings(INTEG_PROVISIONING_EVENT_TYPE) || {};
|
||||
|
||||
Reference in New Issue
Block a user