SevenTV / Extension

The Web Extension for 7TV, bringing new features, emotes, vanity and performance to Twitch, Kick & YouTube
Other
398 stars 98 forks source link

Feat: added support for pop-out and embedded chats. #1053

Closed tlstommy closed 1 month ago

tlstommy commented 4 months ago

Proposed changes

When viewing a Twitch chat that is using a Twitch chat embed url (https://www.twitch.tv/embed/<channel>/chat?) or a popout chat url (https://www.twitch.tv/popout/<channel>/chat), the 7TV extension will not load or work because it is only allowed to access top-level windows.

This is a simple fix that enables "all_frames": true in the manifest and then adds checks to see if the current window is a regular top-level window or a chat pop-out or embed.

This solves the following issues: https://github.com/SevenTV/Extension/issues/916 https://github.com/SevenTV/Extension/issues/844 https://github.com/SevenTV/Extension/issues/187

Types of changes

What types of changes does your code introduce to 7TV? Put an x in the boxes that apply

Checklist

Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.

Further comments

If this is a relatively large or complex change, you may want to start the discussion by explaining why you chose the solution you did, what alternatives you considered, etc.

TroyKomodo commented 4 months ago

I suspect this will require a store release @Excellify, if so I dont think we can merge this.

For OP; we have 2 deployment methods on the extension. 1. A hosted release, a store release. We cannot make store releases without first fixing some other issues with the chrome store / firefox store.

We plan to redo the extension entirely and we do not have the bandwidth to fix the extension's store issues. However this might be able to deployed as a tapermonkey script.

Excellify commented 4 months ago

We can't add permissions to the manifest either as that would cause the extension to be disabled for everyone who has it installed. We can only add optional permissions and request those at runtime.

tlstommy commented 4 months ago

I understand, thanks!