Add setting to enable/disable emotes
This commit is contained in:
parent
e83c6f92cb
commit
1bde3b4ec9
|
@ -24,6 +24,18 @@ export default new class EmoteModule {
|
||||||
this.favourite_emotes = [];
|
this.favourite_emotes = [];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
init() {
|
||||||
|
this.enabledSetting = Settings.getSetting('emotes', 'default', 'enable');
|
||||||
|
this.enabledSetting.on('setting-updated', event => {
|
||||||
|
// Rerender all messages (or if we're disabling emotes, those that have emotes)
|
||||||
|
for (const message of document.querySelectorAll(event.value ? '.message' : '.bd-emote-outer')) {
|
||||||
|
Reflection(event.value ? message : message.closest('.message')).forceUpdate();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
return this.observe();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Sets an emote as favourite.
|
* Sets an emote as favourite.
|
||||||
* @param {String} emote The name of the emote
|
* @param {String} emote The name of the emote
|
||||||
|
@ -66,7 +78,7 @@ export default new class EmoteModule {
|
||||||
}
|
}
|
||||||
|
|
||||||
processMarkup(markup, timestamp) {
|
processMarkup(markup, timestamp) {
|
||||||
if (!emotesEnabled) return markup; // TODO Get it from setttings
|
if (!this.enabledSetting.value) return markup;
|
||||||
|
|
||||||
timestamp = timestamp.valueOf();
|
timestamp = timestamp.valueOf();
|
||||||
const allowNoWrapper = timestamp < enforceWrapperFrom;
|
const allowNoWrapper = timestamp < enforceWrapperFrom;
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
"headertext": "Core Settings",
|
"headertext": "Core Settings",
|
||||||
"settings": [
|
"settings": [
|
||||||
{
|
{
|
||||||
"category": "default",
|
"id": "default",
|
||||||
"settings": [
|
"settings": [
|
||||||
{
|
{
|
||||||
"id": "test-setting",
|
"id": "test-setting",
|
||||||
|
@ -40,8 +40,8 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"category": "advanced",
|
"id": "advanced",
|
||||||
"category_name": "Advanced",
|
"name": "Advanced",
|
||||||
"type": "drawer",
|
"type": "drawer",
|
||||||
"settings": [
|
"settings": [
|
||||||
{
|
{
|
||||||
|
@ -74,7 +74,7 @@
|
||||||
"headertext": "UI Settings",
|
"headertext": "UI Settings",
|
||||||
"settings": [
|
"settings": [
|
||||||
{
|
{
|
||||||
"category": "default",
|
"id": "default",
|
||||||
"settings": [
|
"settings": [
|
||||||
{
|
{
|
||||||
"id": "hide-button",
|
"id": "hide-button",
|
||||||
|
@ -92,14 +92,26 @@
|
||||||
"id": "emotes",
|
"id": "emotes",
|
||||||
"text": "Emotes",
|
"text": "Emotes",
|
||||||
"headertext": "Emote Settings",
|
"headertext": "Emote Settings",
|
||||||
"settings": []
|
"settings": [
|
||||||
|
{
|
||||||
|
"id": "default",
|
||||||
|
"settings": [
|
||||||
|
{
|
||||||
|
"id": "enable",
|
||||||
|
"type": "bool",
|
||||||
|
"text": "Enable emotes",
|
||||||
|
"value": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "css",
|
"id": "css",
|
||||||
"text": "CSS Editor",
|
"text": "CSS Editor",
|
||||||
"settings": [
|
"settings": [
|
||||||
{
|
{
|
||||||
"category": "default",
|
"id": "default",
|
||||||
"settings": [
|
"settings": [
|
||||||
{
|
{
|
||||||
"id": "live-update",
|
"id": "live-update",
|
||||||
|
@ -123,8 +135,6 @@
|
||||||
"id": "security",
|
"id": "security",
|
||||||
"text": "Security",
|
"text": "Security",
|
||||||
"headertext": "Security Settings",
|
"headertext": "Security Settings",
|
||||||
"settings": [
|
"settings": []
|
||||||
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
|
@ -76,7 +76,7 @@ class BetterDiscord {
|
||||||
|
|
||||||
Events.emit('ready');
|
Events.emit('ready');
|
||||||
Events.emit('discord-ready');
|
Events.emit('discord-ready');
|
||||||
EmoteModule.observe();
|
EmoteModule.init();
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
Logger.err('main', ['FAILED TO LOAD!', err]);
|
Logger.err('main', ['FAILED TO LOAD!', err]);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue