1
0
Fork 0
mirror of https://github.com/FrankerFaceZ/FrankerFaceZ.git synced 2025-08-29 09:20:54 +00:00
* Added: Link Cards. As an option, you can open a preview card when clicking on links in chat. These preview cards function similarly to the existing tool-tip or rich embed options but can provide for enhanced interaction (e.g. an embedded video player), with potential for more in the future.
* Changed: When using a custom theme with a dark background, use lighter border colors.
* Changed: Draw the FFZ Control Center and other dialogs with rounded corners.
* Fixed: Issue when clicking certain global Twitch emotes preventing the emote card from appearing correctly.
* Fixed: Issue with URL/safety data not being loaded correctly from the link service when the overall result was an error.
* Fixed: Issue with link tool-tips still appearing, but with no content, when link tool-tips are disabled.
* Fixed: Issue where (re)subscription notices in chat for multiple-month-at-once subscriptions would not be displayed correctly.
* Fixed: Tool-tips not displaying correctly in chat pop-outs in some circumstances.
* Fixed: Incorrect border styles when the chat is in portrait mode.
* Experiment Added: Set up an MQTT-based PubSub system. Let's see how well this scales.
This commit is contained in:
SirStendec 2023-09-26 17:40:25 -04:00
parent d01f66c6f3
commit 98e5373e9a
36 changed files with 1554 additions and 92 deletions

View file

@ -22,6 +22,7 @@ export default class ModView extends Module {
this.inject('site.twitch_data');
this.inject('metadata');
this.inject('socket');
this.inject('pubsub');
this.should_enable = true;
@ -60,15 +61,25 @@ export default class ModView extends Module {
this.checkNavigation();
}
updateSubscription(login) {
if ( this._subbed_login === login )
updateSubscription(id, login) {
if ( this._subbed_login === login && this._subbed_id === id )
return;
if ( this._subbed_id ) {
this.pubsub.unsubscribe(this, `twitch/${this._subbed_id}/channel/#`);
this._subbed_id = null;
}
if ( this._subbed_login ) {
this.socket.unsubscribe(this, `channel.${this._subbed_login}`);
this._subbed_login = null;
}
if ( id ) {
this.pubsub.subscribe(this, `twitch/${id}/channel`);
this._subbed_id = id;
}
if ( login ) {
this.socket.subscribe(this, `channel.${login}`);
this._subbed_login = login;
@ -114,7 +125,7 @@ export default class ModView extends Module {
this._cached_id = channel.id;
this._cached_channel = channel;
this._cached_color = null;
this.updateSubscription(channel.login);
this.updateSubscription(channel.id, channel.login);
this.getChannelColor(el, channel.id).then(color => {
if ( this._cached_id != channel.id )