diff --git a/src/main.js b/src/main.js index 82aa4c0b..68c1ef4c 100644 --- a/src/main.js +++ b/src/main.js @@ -149,7 +149,7 @@ ${typeof x[1] === 'string' ? x[1] : JSON.stringify(x[1], null, 4)}` FrankerFaceZ.Logger = Logger; const VER = FrankerFaceZ.version_info = { - major: 4, minor: 0, revision: 0, extra: '-rc21.5', + major: 4, minor: 0, revision: 0, extra: '-rc21.6', commit: __git_commit__, build: __webpack_hash__, toString: () => diff --git a/src/modules/chat/badges.jsx b/src/modules/chat/badges.jsx index a2f03b5b..5a356d22 100644 --- a/src/modules/chat/badges.jsx +++ b/src/modules/chat/badges.jsx @@ -406,7 +406,7 @@ export default class Badges extends Module { } for(const badge of badges) - if ( badge && badge.id ) { + if ( badge && badge.id != null ) { if ( hidden_badges[badge.id] ) continue; @@ -440,7 +440,7 @@ export default class Badges extends Module { style = old_badge.props.style; - } else if ( ! slot ) + } else if ( slot == null ) continue; else { diff --git a/src/modules/main_menu/index.js b/src/modules/main_menu/index.js index ade8a23f..2c12d5b9 100644 --- a/src/modules/main_menu/index.js +++ b/src/modules/main_menu/index.js @@ -642,16 +642,15 @@ export default class MainMenu extends Module { } - if ( ! item.setting ) - return; + if ( item.setting ) { + if ( ! seen.includes(item.setting) ) { + seen.push(item.setting); - if ( ! seen.includes(item.setting) ) { - seen.push(item.setting); - - let i = item.parent; - while(i) { - i.unseen = (i.unseen || 1) - 1; - i = i.parent; + let i = item.parent; + while(i) { + i.unseen = (i.unseen || 1) - 1; + i = i.parent; + } } } diff --git a/src/sites/twitch-twilight/modules/css_tweaks/index.js b/src/sites/twitch-twilight/modules/css_tweaks/index.js index 98fb1b3e..926582e5 100644 --- a/src/sites/twitch-twilight/modules/css_tweaks/index.js +++ b/src/sites/twitch-twilight/modules/css_tweaks/index.js @@ -216,6 +216,18 @@ export default class CSSTweaks extends Module { }, changed: val => this.toggle('hide-bits', !val) }); + + // Other? + + this.settings.add('channel.round-avatars', { + default: true, + ui: { + path: 'Channel > Appearance >> General', + title: 'Allow avatar images to be rounded.', + component: 'setting-check-box' + }, + changed: val => this.toggle('square-avatars', !val) + }); } onEnable() { @@ -230,6 +242,8 @@ export default class CSSTweaks extends Module { this.toggleHide('prime-offers', !this.settings.get('layout.prime-offers')); this.toggleHide('top-discover', !this.settings.get('layout.discover')); + this.toggle('square-avatars', ! this.settings.get('channel.round-avatars')); + const recs = this.settings.get('layout.side-nav.show-rec-channels'); this.toggleHide('side-rec-channels', recs === 0); this.toggleHide('side-closed-rec-channels', recs === 2); diff --git a/src/sites/twitch-twilight/modules/css_tweaks/styles/chat-width.scss b/src/sites/twitch-twilight/modules/css_tweaks/styles/chat-width.scss index 5f2ff728..0bea2837 100644 --- a/src/sites/twitch-twilight/modules/css_tweaks/styles/chat-width.scss +++ b/src/sites/twitch-twilight/modules/css_tweaks/styles/chat-width.scss @@ -1,4 +1,4 @@ -body .whispers--theatre-mode.whispers--right-column-expanded { +body .whispers--theatre-mode.whispers--right-column-expanded-beside { right: var(--ffz-chat-width); } diff --git a/src/sites/twitch-twilight/modules/css_tweaks/styles/square-avatars.scss b/src/sites/twitch-twilight/modules/css_tweaks/styles/square-avatars.scss new file mode 100644 index 00000000..395da169 --- /dev/null +++ b/src/sites/twitch-twilight/modules/css_tweaks/styles/square-avatars.scss @@ -0,0 +1,4 @@ +.tw-root--theme-dark .tw-avatar .tw-border-radius-rounded, +.tw-avatar .tw-border-radius-rounded { + border-radius: 0 !important; +} \ No newline at end of file diff --git a/src/sites/twitch-twilight/modules/directory/index.jsx b/src/sites/twitch-twilight/modules/directory/index.jsx index 504dd0e2..d1018695 100644 --- a/src/sites/twitch-twilight/modules/directory/index.jsx +++ b/src/sites/twitch-twilight/modules/directory/index.jsx @@ -54,7 +54,7 @@ export default class Directory extends SiteModule { this.DirectoryShelf = this.fine.define( 'directory-shelf', - n => n.onEmptyShelfRender && n.shouldRenderShelf, + n => n.getShelfTitle && n.props && n.props.shelf, DIR_ROUTES ); diff --git a/src/sites/twitch-twilight/modules/menu_button.jsx b/src/sites/twitch-twilight/modules/menu_button.jsx index 363e1774..ff878150 100644 --- a/src/sites/twitch-twilight/modules/menu_button.jsx +++ b/src/sites/twitch-twilight/modules/menu_button.jsx @@ -101,12 +101,18 @@ export default class MenuButton extends SiteModule { } updateButton(inst) { - const root = this.fine.getChildNode(inst), - container = root && root.querySelector('.top-nav__menu'); + const root = this.fine.getChildNode(inst); + let container = root && root.querySelector('.top-nav__menu'); if ( ! container ) return; + const user_stuff = container.querySelector(':scope > .tw-justify-content-end:last-child'); + if ( user_stuff ) + container = user_stuff; + else + container = container.lastElementChild; + let btn, el = container.querySelector('.ffz-top-nav'); if ( el ) el.remove(); @@ -160,11 +166,7 @@ export default class MenuButton extends SiteModule { )} ); - const user_menu = container.querySelector('.top-nav__nav-items-container:last-child'); - if ( user_menu ) - container.insertBefore(el, user_menu); - else - container.insertBefore(el, container.lastElementChild); + container.insertBefore(el, container.lastElementChild); }