Correctly identify sticker picker widgets
Widgets added to account data have the `type` of "m.widget", meaning we have to look at the `content.type` which will tell us what it is. This also fixes a bug where all user widgets become sticker picker widgets under the right conditions. Signed-off-by: Travis Ralston <travpc@gmail.com>
This commit is contained in:
parent
f8fd90c559
commit
210fcf0d52
1 changed files with 2 additions and 3 deletions
|
@ -58,8 +58,7 @@ function getUserWidgetsArray() {
|
||||||
*/
|
*/
|
||||||
function getStickerpickerWidgets() {
|
function getStickerpickerWidgets() {
|
||||||
const widgets = getUserWidgetsArray();
|
const widgets = getUserWidgetsArray();
|
||||||
const stickerpickerWidgets = widgets.filter((widget) => widget.type='m.stickerpicker');
|
return widgets.filter((widget) => widget.content && widget.content.type === "m.stickerpicker");
|
||||||
return stickerpickerWidgets;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -73,7 +72,7 @@ function removeStickerpickerWidgets() {
|
||||||
}
|
}
|
||||||
const userWidgets = client.getAccountData('m.widgets').getContent() || {};
|
const userWidgets = client.getAccountData('m.widgets').getContent() || {};
|
||||||
Object.entries(userWidgets).forEach(([key, widget]) => {
|
Object.entries(userWidgets).forEach(([key, widget]) => {
|
||||||
if (widget.type === 'm.stickerpicker') {
|
if (widget.content && widget.content.type === 'm.stickerpicker') {
|
||||||
delete userWidgets[key];
|
delete userWidgets[key];
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in a new issue