Add native SponsorBlock integration#49
Add native SponsorBlock integration#49grohit1810 wants to merge 40 commits intoTonwalter888:mainfrom
Conversation
Implements built-in SponsorBlock with all 9 segment categories, per-category skip modes, seek bar markers, skip notification banners, and a full settings page. - API integration with sponsor.ajay.app - Categories: sponsor, intro, outro, interaction, selfpromo, music_offtopic, preview, poi_highlight (highlight), filler - Per-category actions: disable, auto-skip, ask, display, skip-to - Colored seek bar markers on the progress bar - Skip notification banner with unskip button - Player overlay toggle button (shield icon) - Full settings page with color presets per category - Backward compatible across YouTube 16.x-21.x - No external dependencies Resolves Tonwalter888#34
|
Can you send me a screenshot about the skip banner? I want to see what it looks like. |
|
Can you trigger a skip dialog and send a screenshot here? |
|
Note: This is a v1 implementation focused on getting all the core functionality working. Known limitations that I plan to address later(in a follow up PR):
All core SponsorBlock functionality is complete and working — skipping, notifications, per-category settings, overlay toggle, and highlight support. |
|
One more thing, can you do a long press on the miniplayer to see what happens? |
Nothing happens on long press of the miniplayer. Video continues to play normally |
|
@grohit1810 Nevermind, I tested it. The dialog is too small compares to YTLite. But a lot of things need to implement here.
|
- Add skip dialog for highlight segments (jump-to-highlight banner) - Use built-in UIColorPickerViewController for segment colors - Match segment marker height to YouTube's seekbar (iSponsorBlock approach) - Redesign settings page with UIMenu action pickers, duration sliders, and rainbow color circles matching YTLite's UI - Fix unskip re-skip bug and notification timing
Keep both upstream's new additions (YTSingleVideoController, gesture defines, ambient removal) and our SponsorBlock declarations.
|
@Tonwalter888 Updated the PR with all the requested changes
|
|
@grohit1810 Can you make the skip dialog like in YTLite? |
|
@grohit1810 Actually, can you use system UI settings (like this Sponsorblock) for all settings? YouTube’s settings are unstable and glichy. |
|
@Tonwalter888 For the system UI settings rewrite do you want that in this same PR, or should I open a separate one? It's a bigger change that touches the entire settings flow, so wanted to check. Also just a heads up: I am writing and understanding the code myself (not fully AI generated), so my turnaround will be slower |
You can do on this PR. Just rewrite like the SponsorBlock you wrote, that's all I wanted. (Inside the sections) |
|
@Tonwalter888 Update the PR with both the changes
|
Will test this, thanks for implementing them. |
|
@grohit1810 I think there are some missing SponsorBlock segments. |
|
Also adds a skip dialog for hightlight |
|
@grohit1810 Also makes the button hidden with the overlay. |
|
@grohit1810 I will add the new features in v1.4.0 in here. |
|
@Tonwalter888 I am not sure why you are not able to see the new pill shaped button in fullscreen mode? I have the fix other two issues - Slider bar and hide sponsorblock button overlay |
Thanks! |
|
@grohit1810 Can you make the background dialog less transparent (or fully no transparent like the YTLite's dialog) ? |
|
I noticed one thing, the highlight dialog gets override if other segments are before that. Can you make the highlight dialog always shows on top unless you are changing the video? |
I'll take a look |
f1af423 to
b15697d
Compare
…, highlight unskip (Restore commit)
|
@Tonwalter888 For the highlight dialog override issue, just to clarify: you want the "Highlight available. Jump to the point?" pill to never be dismissed by other SponsorBlock segment notifications (sponsor skip, intro skip, etc.)? So if a sponsor segment auto-skips while the highlight pill is showing, the highlight pill stays and the sponsor notification suppressed? |
|
Yes. |









Summary
Adds built-in SponsorBlock support to YouMod, implementing all 9 segment categories with configurable per-category actions. This is a native implementation (not a bundled iSponsorBlock dylib), making it easier to maintain and extending support to include the Highlight (poi_highlight) category that iSponsorBlock lacks.
Resolves #34
Features
Architecture
Files/SponsorBlock.xFiles/SponsorBlockUI.xFiles/SponsorBlockSettings.x