Merge branch 'arichornlover:main' into main

This commit is contained in:
mattsblack 2024-07-03 07:52:02 -04:00 committed by GitHub
commit 2f796c310d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 68 additions and 111 deletions

25
.gitmodules vendored
View file

@ -20,8 +20,7 @@
branch = main branch = main
[submodule "Tweaks/Return-YouTube-Dislikes"] [submodule "Tweaks/Return-YouTube-Dislikes"]
path = Tweaks/Return-YouTube-Dislikes path = Tweaks/Return-YouTube-Dislikes
url = https://github.com/arichornloverALT/Return-YouTube-Dislikes.git url = https://github.com/PoomSmart/Return-YouTube-Dislikes.git
branch = uYouEnhanced
[submodule "Tweaks/YouTubeHeader"] [submodule "Tweaks/YouTubeHeader"]
path = Tweaks/YouTubeHeader path = Tweaks/YouTubeHeader
url = https://github.com/arichornloverALT/YouTubeHeader.git url = https://github.com/arichornloverALT/YouTubeHeader.git
@ -34,6 +33,10 @@
path = Tweaks/YTABConfig path = Tweaks/YTABConfig
url = https://github.com/PoomSmart/YTABConfig.git url = https://github.com/PoomSmart/YTABConfig.git
branch = main branch = main
[submodule "Tweaks/FLEXing"]
path = Tweaks/FLEXing
url = https://github.com/PoomSmart/FLEXing
branch = rootless
[submodule "Tweaks/Alderis"] [submodule "Tweaks/Alderis"]
path = Tweaks/Alderis path = Tweaks/Alderis
url = https://github.com/hbang/Alderis.git url = https://github.com/hbang/Alderis.git
@ -47,9 +50,6 @@
path = Tweaks/iSponsorBlock path = Tweaks/iSponsorBlock
url = https://github.com/Galactic-Dev/iSponsorBlock.git url = https://github.com/Galactic-Dev/iSponsorBlock.git
branch = master branch = master
[submodule "Tweaks/IAmYouTube"]
path = Tweaks/IAmYouTube
url = https://github.com/PoomSmart/IAmYouTube.git
[submodule "Tweaks/YTClassicVideoQuality"] [submodule "Tweaks/YTClassicVideoQuality"]
path = Tweaks/YTClassicVideoQuality path = Tweaks/YTClassicVideoQuality
url = https://github.com/PoomSmart/YTClassicVideoQuality.git url = https://github.com/PoomSmart/YTClassicVideoQuality.git
@ -59,16 +59,19 @@
[submodule "Tweaks/YTSpeed"] [submodule "Tweaks/YTSpeed"]
path = Tweaks/YTSpeed path = Tweaks/YTSpeed
url = https://github.com/arichornloverALT/YTSpeed.git url = https://github.com/arichornloverALT/YTSpeed.git
[submodule "Tweaks/YouTube-X"]
path = Tweaks/YouTube-X
url = https://github.com/PoomSmart/YouTube-X/
[submodule "Tweaks/IAmYouTube"]
path = Tweaks/IAmYouTube
url = https://github.com/PoomSmart/IAmYouTube.git
[submodule "Tweaks/YTHoldForSpeed"]
path = Tweaks/YTHoldForSpeed
url = https://github.com/arichornloverALT/YTHoldForSpeed.git
[submodule "Tweaks/MrBeastify"] [submodule "Tweaks/MrBeastify"]
path = Tweaks/MrBeastify path = Tweaks/MrBeastify
url = https://github.com/arichornloverALT/MrBeastify.git url = https://github.com/arichornloverALT/MrBeastify.git
branch = main branch = main
[submodule "Tweaks/FLEXing"]
path = Tweaks/FLEXing
url = https://github.com/PoomSmart/FLEXing
[submodule "Tweaks/YTHoldForSpeed"]
path = Tweaks/YTHoldForSpeed
url = https://github.com/arichornloverALT/YTHoldForSpeed.git
[submodule "Tweaks/uYouLocalization"] [submodule "Tweaks/uYouLocalization"]
path = Tweaks/uYouLocalization path = Tweaks/uYouLocalization
url = https://github.com/dayanch96/uYouLocalization.git url = https://github.com/dayanch96/uYouLocalization.git

View file

@ -296,7 +296,7 @@
| **Tweaks/App** | **Developer** | **Version** | **Open source** | | **Tweaks/App** | **Developer** | **Version** | **Open source** |
| - | - | :-: | :-: | | - | - | :-: | :-: |
| **YouTube** | Google Inc | 19.21.2 | ✖︎ | | **YouTube** | Google Inc | 19.26.5 | ✖︎ |
| [uYou](https://github.com/MiRO92/uYou-for-YouTube) | [MiRO92](https://twitter.com/miro92) | 3.0.4 | ✖︎ | | [uYou](https://github.com/MiRO92/uYou-for-YouTube) | [MiRO92](https://twitter.com/miro92) | 3.0.4 | ✖︎ |
| **Open in YouTube** | [CokePokes](https://github.com/CokePokes) | 1.2 | [✔︎](https://github.com/CokePokes/YoutubeExtensions) | | **Open in YouTube** | [CokePokes](https://github.com/CokePokes) | 1.2 | [✔︎](https://github.com/CokePokes/YoutubeExtensions) |
| **iSponsorBlock** | [Galactic-Dev](https://github.com/Galactic-Dev) | 1.2.5 | [✔︎](https://github.com/Galactic-Dev/iSponsorBlock) | | **iSponsorBlock** | [Galactic-Dev](https://github.com/Galactic-Dev) | 1.2.5 | [✔︎](https://github.com/Galactic-Dev/iSponsorBlock) |
@ -306,17 +306,18 @@
| **DontEatMyContent** | [therealFoxster](https://github.com/therealFoxster) | 1.1.6 | [✔︎](https://github.com/therealFoxster/DontEatMyContent) | | **DontEatMyContent** | [therealFoxster](https://github.com/therealFoxster) | 1.1.6 | [✔︎](https://github.com/therealFoxster/DontEatMyContent) |
| **YTSpeed** | [Lyvendia](https://github.com/Lyvendia) | 1.0.1 | [✔︎](https://github.com/Lyvendia/YTSpeed) | | **YTSpeed** | [Lyvendia](https://github.com/Lyvendia) | 1.0.1 | [✔︎](https://github.com/Lyvendia/YTSpeed) |
| **Alderis Color Picker** | [HASHBANG Productions](https://github.com/hbang) | 1.2 | [✔︎](https://github.com/hbang/Alderis) | | **Alderis Color Picker** | [HASHBANG Productions](https://github.com/hbang) | 1.2 | [✔︎](https://github.com/hbang/Alderis) |
| **YTUHD** | [PoomSmart](https://twitter.com/poomsmart) | 1.5.1 | [✔︎](https://github.com/PoomSmart/YTUHD) | | **YTUHD** | [PoomSmart](https://twitter.com/poomsmart) | 1.5.3 | [✔︎](https://github.com/PoomSmart/YTUHD) |
| **YouPiP** | [PoomSmart](https://twitter.com/poomsmart) | 1.8.9 | [✔︎](https://github.com/PoomSmart/YouPiP) | | **YouPiP** | [PoomSmart](https://twitter.com/poomsmart) | 1.8.12 | [✔︎](https://github.com/PoomSmart/YouPiP) |
| **IAmYouTube** | [PoomSmart](https://twitter.com/poomsmart) | 1.3.0 | [✔︎](https://github.com/PoomSmart/IAmYouTube) | | **IAmYouTube** | [PoomSmart](https://twitter.com/poomsmart) | 1.3.0 | [✔︎](https://github.com/PoomSmart/IAmYouTube) |
| **YTABConfig** | [PoomSmart](https://twitter.com/poomsmart) | 1.7.2 | [✔︎](https://github.com/PoomSmart/YTABConfig) | | **YTABConfig** | [PoomSmart](https://twitter.com/poomsmart) | 1.7.2 | [✔︎](https://github.com/PoomSmart/YTABConfig) |
| **YTReExplore** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.2 | [✔︎](https://github.com/PoomSmart/YTReExplore) | | **YTReExplore** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.2 | [✔︎](https://github.com/PoomSmart/YTReExplore) |
| **NoYTPremium** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.4 | [✔︎](https://github.com/PoomSmart/NoYTPremium) | | **NoYTPremium** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.4 | [✔︎](https://github.com/PoomSmart/NoYTPremium) |
| **YTNoPaidPromo** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.0 | [✔︎](https://github.com/PoomSmart/YTNoPaidPromo) | | **YTNoPaidPromo** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.0 | [✔︎](https://github.com/PoomSmart/YTNoPaidPromo) |
| **YouRememberCaption** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.0 | [✔︎](https://poomsmart.github.io/repo/depictions/youremembercaption.html) | | **YouRememberCaption** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.0 | [✔︎](https://poomsmart.github.io/repo/depictions/youremembercaption.html) |
| **Return YouTube Dislike** | [PoomSmart](https://twitter.com/poomsmart) | 1.11.11 | [✔︎](https://github.com/PoomSmart/Return-YouTube-Dislikes) | | **Return YouTube Dislike** | [PoomSmart](https://twitter.com/poomsmart) | 1.11.14 | [✔︎](https://github.com/PoomSmart/Return-YouTube-Dislikes) |
| **YouMute** | [PoomSmart](https://twitter.com/poomsmart) | 1.2.1-3 | [✔︎](https://github.com/PoomSmart/YouMute) | | **YouMute** | [PoomSmart](https://twitter.com/poomsmart) | 1.2.2 | [✔︎](https://github.com/PoomSmart/YouMute) |
| **YouQuality** | [PoomSmart](https://twitter.com/poomsmart) | 1.2.1 | [✔︎](https://github.com/PoomSmart/YouQuality) | | **YouQuality** | [PoomSmart](https://twitter.com/poomsmart) | 1.2.1 | [✔︎](https://github.com/PoomSmart/YouQuality) |
| **YouTube-X** | [PoomSmart](https://twitter.com/poomsmart) | 1.6.9 | [✔︎](https://github.com/PoomSmart/YouTube-X) |
| **YTVideoOverlay** | [PoomSmart](https://twitter.com/poomsmart) | 1.1.6 | [✔︎](https://github.com/PoomSmart/YTVideoOverlay) | | **YTVideoOverlay** | [PoomSmart](https://twitter.com/poomsmart) | 1.1.6 | [✔︎](https://github.com/PoomSmart/YTVideoOverlay) |
| **YTHoldForSpeed** | [joshuaseltzer](https://github.com/joshuaseltzer) | 1.2.0 | [✔︎](https://github.com/joshuaseltzer/YTHoldForSpeed) | | **YTHoldForSpeed** | [joshuaseltzer](https://github.com/joshuaseltzer) | 1.2.0 | [✔︎](https://github.com/joshuaseltzer/YTHoldForSpeed) |
| **LowContrastMode** | [arichornlover](https://github.com/arichornlover) | 1.5.2 | [✔︎](https://github.com/arichornlover/YTLowContrastMode) | | **LowContrastMode** | [arichornlover](https://github.com/arichornlover) | 1.5.2 | [✔︎](https://github.com/arichornlover/YTLowContrastMode) |
@ -332,7 +333,7 @@
| MiRO92 | uYou 3.0 | v18.06.6 - v18.18.2 | iOS 14.0 - iOS 15.8.2 | | MiRO92 | uYou 3.0 | v18.06.6 - v18.18.2 | iOS 14.0 - iOS 15.8.2 |
| MiRO92 | uYou 3.0.1 | v18.19.1 - v18.41.5 | iOS 14.0 - iOS 17.5.1 | | MiRO92 | uYou 3.0.1 | v18.19.1 - v18.41.5 | iOS 14.0 - iOS 17.5.1 |
| MiRO92 | uYou 3.0.2 / 3.0.3 | v19.06.2 - v19.15.1 | iOS 14.0 - iOS 17.5.1 | | MiRO92 | uYou 3.0.2 / 3.0.3 | v19.06.2 - v19.15.1 | iOS 14.0 - iOS 17.5.1 |
| MiRO92 | uYou 3.0.4 | v19.06.2 - latest | iOS 14.0 - 17.5.1 | | MiRO92 | uYou 3.0.4 | v19.06.2 - v19.22.6 | iOS 14.0 - 17.5.1 |
# Building # Building
@ -370,18 +371,19 @@ See [Installation - Wiki](https://github.com/qnblackcat/uYouPlus/wiki/Installati
# Wiki # Wiki
See [arichornlover - Wiki](https://github.com/arichornlover/uYouenhanced/wiki/) or [qnblackcat - Wiki](https://github.com/qnblackcat/uYouPlus/wiki/) See [arichornlover - Wiki](https://github.com/arichornlover/uYouEnhanced/wiki/) or [qnblackcat - Wiki](https://github.com/qnblackcat/uYouPlus/wiki/)
## Lightweight Alternative - YTLitePlus ## Lightweight Alternative - YTLitePlus
<details> <details>
<summary>Read more</summary><br> <summary>Read more</summary><br>
- Change from uYouEnhanced to YTLitePlus (optional)
Hello, this is here to showcase this tweak. I have been seeing the YTLitePlus tweak on Reddit for quite some time now and decided to join in. Before you download the tweak, you should take a look at the pros and cons below to learn more about the tweak. # Switch from uYouEnhanced to YTLitePlus (optional)
https://github.com/Balackburn/YTLitePlus/releases Hello, this is here to showcase this tweak. I have been seeing the posts about the YTLitePlus tweak on Reddit for quite some time now and decided to add it here. Before you download or check out the tweak, you should take a look at the pros and cons below to learn more about YTLitePlus.
https://github.com/YTLitePlus/YTLitePlus/releases
**Pros** **Pros**
@ -389,9 +391,9 @@ https://github.com/Balackburn/YTLitePlus/releases
- YTLitePlus provides more features in YTLite & YTLitePlus Sections in Settings that uYouPlus/uYouEnhanced may not have. - YTLitePlus provides more features in YTLite & YTLitePlus Sections in Settings that uYouPlus/uYouEnhanced may not have.
- YTLitePlus includes a lightweight version of the App Version Spoofer, making it easier to use. - YTLitePlus includes a lightweight and simplified version of the App Version Spoofer, making it easier to use.
- YTLitePlus does not cause your device to overheat, unlike uYouEnhanced. - YTLitePlus does not cause your device to overheat, unlike uYouPlus/uYouEnhanced.
- YTLitePlus provides faster video & audio downloading than uYouPlus/uYouEnhanced. - YTLitePlus provides faster video & audio downloading than uYouPlus/uYouEnhanced.
@ -399,5 +401,5 @@ https://github.com/Balackburn/YTLitePlus/releases
- Video quality on WiFi option is not available in YTLitePlus. - Video quality on WiFi option is not available in YTLitePlus.
- Reordering the pivot bar tabs such as Home, Shorts, Explore, Trending, Create, Subscriptions & You is not available in YTLitePlus. - Reordering the pivot bar tabs such as `Home`, `Shorts`, `Explore`, `Trending`, `Create`, `Subscriptions` & `You` is not available in YTLitePlus.
</details> </details>

View file

@ -166,101 +166,52 @@ NSString *getAdString(NSString *description) {
return @"video_display_full_buttoned_layout"; return @"video_display_full_buttoned_layout";
return nil; return nil;
} }
#define cellDividerDataBytesLength 719
static __strong NSData *cellDividerData; static __strong NSData *cellDividerData;
static uint8_t cellDividerDataBytes[] = {
0xa, 0x8c, 0x5, 0xca, 0xeb, 0xea, 0x83, 0x5, 0x85, 0x5,
0x1a, 0x29, 0x92, 0xcb, 0xa1, 0x90, 0x5, 0x23, 0xa, 0x21,
0x63, 0x65, 0x6c, 0x6c, 0x5f, 0x64, 0x69, 0x76, 0x69, 0x64,
0x65, 0x72, 0x2e, 0x65, 0x6d, 0x6c, 0x7c, 0x39, 0x33, 0x62,
0x65, 0x63, 0x30, 0x39, 0x37, 0x37, 0x63, 0x66, 0x64, 0x33,
0x61, 0x31, 0x37, 0x2a, 0xee, 0x3, 0xea, 0x84, 0xef, 0xab,
0xa, 0xe7, 0x3, 0x8, 0x4, 0x12, 0x0, 0x18, 0xff, 0xff,
0xff, 0x7, 0x32, 0xdb, 0x3, 0xfa, 0x3e, 0x4, 0x8, 0x5,
0x10, 0x1, 0x92, 0x3f, 0x4, 0xa, 0x2, 0x8, 0x1, 0xc2,
0xb8, 0x89, 0xbe, 0xa, 0x91, 0x1, 0xa, 0x8c, 0x1, 0x38,
0x1, 0x40, 0x1, 0x50, 0x1, 0x58, 0x1, 0x60, 0x5, 0x70,
0x1, 0x78, 0x1, 0x80, 0x1, 0x1, 0x90, 0x1, 0x1, 0x98,
0x1, 0x1, 0xa0, 0x1, 0x1, 0xa8, 0x1, 0x1, 0xc8, 0x1,
0x1, 0xe0, 0x1, 0x1, 0x88, 0x2, 0x1, 0x90, 0x2, 0x1,
0x98, 0x2, 0x1, 0xa0, 0x2, 0x1, 0xd0, 0x2, 0x1, 0x98,
0x3, 0x1, 0xa0, 0x3, 0x1, 0xb0, 0x3, 0x1, 0xd0, 0x3,
0x1, 0xd8, 0x3, 0x1, 0xe8, 0x3, 0x1, 0xf0, 0x3, 0x1,
0x98, 0x4, 0x1, 0xd0, 0x4, 0x1, 0xe8, 0x4, 0x1, 0xf0,
0x4, 0x1, 0xf8, 0x4, 0x1, 0xd8, 0x5, 0x1, 0xe5, 0x5,
0xcd, 0xcc, 0x4c, 0x3f, 0xed, 0x5, 0xcd, 0xcc, 0x4c, 0x3f,
0xf5, 0x5, 0x66, 0x66, 0xe6, 0x3f, 0xf8, 0x5, 0x1, 0x88,
0x6, 0x1, 0x98, 0x6, 0x1, 0xa0, 0x6, 0x1, 0xb8, 0x6,
0x1, 0xe0, 0x6, 0x1, 0xe8, 0x6, 0x1, 0xf0, 0x6, 0x1,
0x95, 0x7, 0x0, 0x0, 0x52, 0x44, 0xb8, 0x7, 0x1, 0x10,
0x5, 0xca, 0xb8, 0x89, 0xbe, 0xa, 0x6, 0xa, 0x4, 0x10,
0x1, 0x20, 0x1, 0xba, 0xa4, 0xf3, 0x83, 0xe, 0x18, 0xa,
0x16, 0x74, 0x68, 0x65, 0x6d, 0x65, 0x7c, 0x66, 0x33, 0x33,
0x38, 0x61, 0x34, 0x35, 0x63, 0x38, 0x62, 0x66, 0x39, 0x30,
0x35, 0x66, 0x64, 0xb2, 0xb9, 0x9e, 0x8b, 0xe, 0x20, 0xa,
0x1e, 0x8, 0x1, 0x40, 0x1, 0x50, 0x1, 0x58, 0x1, 0x60,
0x1, 0x75, 0x0, 0x0, 0x80, 0x3f, 0x85, 0x1, 0x33, 0x33,
0x33, 0x3f, 0x8d, 0x1, 0x0, 0x0, 0x0, 0x3f, 0xb0, 0x1,
0x1, 0xa2, 0xaf, 0xe0, 0x8d, 0xe, 0x46, 0xa, 0x44, 0x28,
0x1, 0x38, 0x1, 0x45, 0xcd, 0xcc, 0xcc, 0x3e, 0x48, 0x1,
0x70, 0x1, 0x90, 0x1, 0x1, 0x98, 0x1, 0x1, 0xa0, 0x1,
0x1, 0xe8, 0x1, 0x1, 0x88, 0x2, 0x1, 0x98, 0x2, 0x1,
0xa0, 0x2, 0x88, 0x27, 0xb8, 0x2, 0x1, 0xc0, 0x2, 0x1,
0xc8, 0x2, 0x1, 0xd0, 0x2, 0x1, 0xe8, 0x2, 0x1, 0xf0,
0x2, 0x1, 0xe0, 0x3, 0x1, 0xed, 0x3, 0x0, 0x0, 0x0,
0x3f, 0xcd, 0x4, 0x0, 0x0, 0x80, 0x3f, 0xd2, 0xbf, 0x99,
0xa7, 0xe, 0xa, 0xa, 0x8, 0x8, 0x1, 0x10, 0x1, 0x30,
0x1, 0x78, 0x1, 0xca, 0xc3, 0xc8, 0xa7, 0xe, 0x60, 0x12,
0x5e, 0x10, 0x1, 0x20, 0x1, 0x98, 0x1, 0x1, 0xa0, 0x1,
0x1, 0xfd, 0x1, 0x0, 0x0, 0xc0, 0x41, 0x85, 0x2, 0x0,
0x0, 0xe0, 0x41, 0x8d, 0x2, 0x0, 0x0, 0xe0, 0x41, 0x95,
0x2, 0x0, 0x0, 0x10, 0x42, 0x9d, 0x2, 0x0, 0x0, 0x10,
0x42, 0xa5, 0x2, 0x0, 0x0, 0x30, 0x42, 0xad, 0x2, 0x0,
0x0, 0x30, 0x42, 0xbd, 0x2, 0x0, 0x0, 0x40, 0x41, 0xc5,
0x2, 0x0, 0x0, 0x80, 0x41, 0xcd, 0x2, 0x0, 0x0, 0x80,
0x41, 0xd5, 0x2, 0x0, 0x0, 0xc0, 0x41, 0xdd, 0x2, 0x0,
0x0, 0xc0, 0x41, 0xe5, 0x2, 0x0, 0x0, 0x0, 0x42, 0xed,
0x2, 0x0, 0x0, 0x0, 0x42, 0x92, 0x94, 0xf6, 0xb2, 0xf,
0x1d, 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74,
0x69, 0x65, 0x73, 0x7c, 0x61, 0x37, 0x39, 0x38, 0x35, 0x39,
0x35, 0x34, 0x37, 0x39, 0x64, 0x62, 0x65, 0x36, 0x64, 0x63,
0x32, 0x67, 0x9a, 0xe8, 0xf9, 0xa9, 0x6, 0x8, 0x8, 0xcd,
0xf0, 0xbd, 0xa5, 0x1, 0x10, 0x7, 0xaa, 0xf1, 0xdf, 0xc1,
0xb, 0x24, 0xa, 0x1c, 0xa, 0x18, 0xa, 0x16, 0x74, 0x68,
0x65, 0x6d, 0x65, 0x7c, 0x66, 0x33, 0x33, 0x38, 0x61, 0x34,
0x35, 0x63, 0x38, 0x62, 0x66, 0x39, 0x30, 0x35, 0x66, 0x64,
0x10, 0x2, 0x10, 0xcd, 0xf0, 0xbd, 0xa5, 0x1, 0xb2, 0xf1,
0xdf, 0xc1, 0xb, 0x29, 0xa, 0x21, 0xa, 0x1d, 0x63, 0x61,
0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73,
0x7c, 0x61, 0x37, 0x39, 0x38, 0x35, 0x39, 0x35, 0x34, 0x37,
0x39, 0x64, 0x62, 0x65, 0x36, 0x64, 0x63, 0x10, 0xa, 0x10,
0xcd, 0xf0, 0xbd, 0xa5, 0x1, 0x12, 0x3e, 0xc2, 0x86, 0xa5,
0xbb, 0x5, 0x38, 0xa, 0x21, 0x63, 0x65, 0x6c, 0x6c, 0x5f,
0x64, 0x69, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2e, 0x65, 0x6d,
0x6c, 0x7c, 0x39, 0x33, 0x62, 0x65, 0x63, 0x30, 0x39, 0x37,
0x37, 0x63, 0x66, 0x64, 0x33, 0x61, 0x31, 0x37, 0x32, 0x13,
0x31, 0x37, 0x31, 0x39, 0x31, 0x32, 0x32, 0x35, 0x34, 0x39,
0x39, 0x39, 0x36, 0x30, 0x31, 0x37, 0x31, 0x33, 0x38,
};
%hook YTIElementRenderer %hook YTIElementRenderer
- (NSData *)elementData { - (NSData *)elementData {
if ([self respondsToSelector:@selector(hasCompatibilityOptions)] && self.hasCompatibilityOptions && self.compatibilityOptions.hasAdLoggingData) { NSString *description = [self description];
// HBLogInfo(@"YTX adLogging %@", cellDividerData); if ([description containsString:@"cell_divider"]) {
if (!cellDividerData) cellDividerData = %orig;
return cellDividerData;
}
if (!cellDividerData) return %orig;
if ([self respondsToSelector:@selector(hasCompatibilityOptions)] && self.hasCompatibilityOptions && self.compatibilityOptions.hasAdLoggingData) {
// HBLogInfo(@"YTX adLogging 1 %@", cellDividerData);
return cellDividerData; return cellDividerData;
} }
NSString *description = [self description];
NSString *adString = getAdString(description); NSString *adString = getAdString(description);
if (adString) { if (adString) {
// HBLogInfo(@"YTX getAdString %@ %@", str, cellDividerData); // HBLogInfo(@"YTX getAdString 1 %@ %@", adString, cellDividerData);
return cellDividerData; return cellDividerData;
} }
return %orig; return %orig;
} }
%end %end
%hook _ASDisplayView %hook YTInnerTubeCollectionViewController
- (void)didMoveToWindow { - (void)loadWithModel:(YTISectionListRenderer *)model {
%orig(); if ([model isKindOfClass:%c(YTISectionListRenderer)]) {
if ([self.accessibilityIdentifier isEqualToString:@"id.products_in_video_with_preview_overlay_badge.view"]) self.hidden = YES; NSMutableArray <YTISectionListSupportedRenderers *> *contentsArray = model.contentsArray;
NSIndexSet *removeIndexes = [contentsArray indexesOfObjectsPassingTest:^BOOL(YTISectionListSupportedRenderers *renderers, NSUInteger idx, BOOL *stop) {
if (![renderers isKindOfClass:%c(YTISectionListSupportedRenderers)])
return NO;
YTIItemSectionRenderer *sectionRenderer = renderers.itemSectionRenderer;
YTIItemSectionSupportedRenderers *firstObject = [sectionRenderer.contentsArray firstObject];
YTIElementRenderer *elementRenderer = firstObject.elementRenderer;
if ([elementRenderer respondsToSelector:@selector(hasCompatibilityOptions)] && elementRenderer.hasCompatibilityOptions && elementRenderer.compatibilityOptions.hasAdLoggingData) {
// HBLogInfo(@"YTX adLogging 2 %@", elementRenderer);
return YES;
}
NSString *description = [elementRenderer description];
NSString *adString = getAdString(description);
if (adString) {
// HBLogInfo(@"YTX getAdString 2 %@ %@", adString, elementRenderer);
return YES;
}
return NO;
}];
[contentsArray removeObjectsAtIndexes:removeIndexes];
}
%orig;
} }
%end %end
%end %end
@ -1094,9 +1045,12 @@ static int contrastMode() {
%end %end
// NEW VERSION // NEW VERSION
// Hide Fullscreen Button - @arichornlover // Hide Fullscreen Button - @arichornlover - UNTESTED!
// %hook YTInlinePlayerBarContainerView // %hook YTInlinePlayerBarContainerView
// ..Work-in-progres.. // - (BOOL)fullscreenButtonDisabled { return YES; }
// - (BOOL)canShowFullscreenButton { return NO; }
// - (BOOL)canShowFullscreenButtonExperimental { return NO; }
// - (void)setFullscreenButtonDisabled:(BOOL) // this line should remain disabled for now.
// %end // %end
// Hide HUD Messages // Hide HUD Messages
@ -1670,8 +1624,6 @@ static BOOL findCell(ASNodeController *nodeController, NSArray <NSString *> *ide
// Load uYou first so its functions are available for hooks. // Load uYou first so its functions are available for hooks.
// dlopen([[NSString stringWithFormat:@"%@/Frameworks/uYou.dylib", [[NSBundle mainBundle] bundlePath]] UTF8String], RTLD_LAZY); // dlopen([[NSString stringWithFormat:@"%@/Frameworks/uYou.dylib", [[NSBundle mainBundle] bundlePath]] UTF8String], RTLD_LAZY);
cellDividerData = [NSData dataWithBytes:cellDividerDataBytes length:cellDividerDataBytesLength];
%init; %init;
if (IS_ENABLED(@"hideYouTubeLogo_enabled")) { if (IS_ENABLED(@"hideYouTubeLogo_enabled")) {
%init(gHideYouTubeLogo); %init(gHideYouTubeLogo);