From cab48bbe9e35f28ed3f0db3978a39bcb85ef317a Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Mon, 11 Jul 2022 19:57:05 +0700 Subject: [PATCH 001/156] update submodules --- Tweaks/YouTubeHeader | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Tweaks/YouTubeHeader b/Tweaks/YouTubeHeader index 81309fe..c34699b 160000 --- a/Tweaks/YouTubeHeader +++ b/Tweaks/YouTubeHeader @@ -1 +1 @@ -Subproject commit 81309fe94f91102ed36ffb15909bad068f510169 +Subproject commit c34699b33c6f5dbfd59e1a0ed3023ca41cb831bd From f325a31196da48ad54c176f7274e4380b93bb63d Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Mon, 11 Jul 2022 20:20:26 +0700 Subject: [PATCH 002/156] v17.26.2-2.1 --- README.md | 53 +++++++++++++++++++++++++++-------------------------- 1 file changed, 27 insertions(+), 26 deletions(-) diff --git a/README.md b/README.md index d2beab8..6c23098 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,7 @@ - [HASHBANG Productions](https://github.com/hbang) for [Alderis Color Picker](https://github.com/hbang/Alderis) - a dependency of iSponsorBlock. -- [PoomSmart](https://twitter.com/poomsmart) - the developer of many tweaks used by uYouPlus, include: [NoYTPremium](https://github.com/PoomSmart/NoYTPremium/), [YouRememberCaption](https://www.ios-repo-updates.com/repository/poomsmart/package/com.ps.youremembercaption/), [YTClassicVideoQuality](https://poomsmart.github.io/repo/depictions/ytclassicvideoquality.html), [YTNoCheckLocalNetwork](https://poomsmart.github.io/repo/depictions/ytnochecklocalnetwork.html), [YTSystemAppearance](https://poomsmart.github.io/repo/depictions/ytsystemappearance.html), [YTAutoFullScreen](https://github.com/PoomSmart/YTAutoFullScreen/), [YTReExplore](https://github.com/PoomSmart/YTReExplore/), [IAmYouTube](https://github.com/PoomSmart/IAmYouTube), [YTUHD](https://poomsmart.github.io/repo/depictions/ytuhd.html), [YouPiP](https://poomsmart.github.io/repo/depictions/youpip.html), and [Return YouTube Dislike](https://github.com/PoomSmart/Return-YouTube-Dislikes) +- [PoomSmart](https://twitter.com/poomsmart) - the developer of many tweaks used by uYouPlus, see [Version info - Download](#download) for more details. - [level3tjg](https://twitter.com/level3tjg) - for [YTNoHoverCards](https://github.com/level3tjg/YTNoHoverCards) and [YTMiniplayerEnabler](https://github.com/level3tjg/YTMiniplayerEnabler). @@ -76,36 +76,37 @@ - My official AtlStore repo: https://qnblackcat.github.io/AltStore/ - - [Open in AltStore (v17.25.1-2.1)](https://tinyurl.com/2kaynk88) - It will take a while to install because AltStore needs to download the IPA. + - [Open in AltStore (v17.26.2-2.1)](https://tinyurl.com/2y86dh6b) - It will take a while to install because AltStore needs to download the IPA. -- Version info: _(last update: June 29)_ +- Version info: _(last update: Jul 11)_
Expand -| **Tweaks/App** | **Version** | **Open source** | -| :------------: | :----------:| :-------------: | -| **YouTube** | 17.25.1 | ✖︎ | -| [uYou](https://github.com/MiRO92/uYou-for-YouTube) | 2.1 | ✖︎ | -| [Open in YouTube](https://github.com/CokePokes/YoutubeExtensions) | 1.2 | ✖︎ | -| **Return YouTube Dislike** | 1.6.5 | [✔︎](https://github.com/PoomSmart/Return-YouTube-Dislikes) | -| **iSponsorBlock** | 1.0-14 | [✔︎](https://github.com/Galactic-Dev/iSponsorBlock) | -| **Alderis Color Picker** | 1.2| [✔︎](https://github.com/hbang/Alderis) | -| **NoYTPremium** | 1.0.4 | [✔︎](https://github.com/PoomSmart/NoYTPremium) | -| **YouRememberCaption** | 1.0.0 | [✔︎](https://poomsmart.github.io/repo/depictions/youremembercaption.html) | -| **YTClassicVideoQuality** | 1.0.1 | [✔︎](https://github.com/PoomSmart/YTClassicVideoQuality) | -| **YTNoCheckLocalNetwork** | 1.0.2 | [✔︎](https://poomsmart.github.io/repo/depictions/ytnochecklocalnetwork.html) | -| **YTNoHoverCards** | 0.0.3 | [✔︎](https://github.com/level3tjg/YTNoHoverCards) | -| **YTSystemAppearance** | 1.0.0 | [✔︎](https://poomsmart.github.io/repo/depictions/ytsystemappearance.html) | -| **YTUHD** | 1.2.8 | [✔︎](https://github.com/PoomSmart/YTUHD) | -| **YouPiP** | 1.7.7 | [✔︎](https://github.com/PoomSmart/YouPiP) | -| **IAmYouTube** | 1.2.0 | [✔︎](https://github.com/PoomSmart/IAmYouTube) | -| **YTSpeed** | 1.0.1 | [✔︎](https://github.com/Lyvendia/YTSpeed) | -| **YTAutoFullScreen** | 1.0.3 | [✔︎](https://github.com/PoomSmart/YTAutoFullScreen) | -| **YTReExplore** | 1.0.2 | [✔︎](https://github.com/PoomSmart/YTReExplore) | -| **BigYTMiniPlayer** | 1.0-1 | [✔︎](https://github.com/Galactic-Dev/BigYTMiniPlayer) | -| **YTCastConfirm** | 1.0.0 | [✔︎](https://github.com/JamieBerghmans/YTCastConfirm) | -| **YTMiniplayerEnabler** | 0.0.2 | [✔︎](https://github.com/level3tjg/YTMiniplayerEnabler) | +| **Tweaks/App** | **Developer** | **Version** | **Open source** | +| - | - | :-: | :-: | +| **YouTube** | Google Inc | 17.26.2 | ✖︎ | +| [uYou](https://github.com/MiRO92/uYou-for-YouTube) | [MiRO92](https://twitter.com/miro92) | 2.1 | ✖︎ | +| [Open in YouTube](https://github.com/CokePokes/YoutubeExtensions) | [CokePokes](https://github.com/CokePokes) | 1.2 | ✖︎ | +| **iSponsorBlock** | [Galactic-Dev](https://github.com/Galactic-Dev) | 1.0-14 | [✔︎](https://github.com/Galactic-Dev/iSponsorBlock) | +| **BigYTMiniPlayer** | [Galactic-Dev](https://github.com/Galactic-Dev) | 1.0-1 | [✔︎](https://github.com/Galactic-Dev/BigYTMiniPlayer) | +| **YTNoHoverCards** | [level3tjg](https://twitter.com/level3tjg) | 0.0.3 | [✔︎](https://github.com/level3tjg/YTNoHoverCards) | +| **YTMiniplayerEnabler** | [level3tjg](https://twitter.com/level3tjg) | 0.0.2 | [✔︎](https://github.com/level3tjg/YTMiniplayerEnabler) | +| **YTSpeed** | [Lyvendia](https://github.com/Lyvendia) | 1.0.1 | [✔︎](https://github.com/Lyvendia/YTSpeed) | +| **YTCastConfirm** | [JamieBerghmans](https://github.com/JamieBerghmans) | 1.0.0 | [✔︎](https://github.com/JamieBerghmans/YTCastConfirm) | +| **Alderis Color Picker** | [HASHBANG Productions](https://github.com/hbang) | 1.2| [✔︎](https://github.com/hbang/Alderis) | +| **YTUHD** | [PoomSmart](https://twitter.com/poomsmart) | 1.2.8 | [✔︎](https://github.com/PoomSmart/YTUHD) | +| **YouPiP** | [PoomSmart](https://twitter.com/poomsmart) | 1.7.7 | [✔︎](https://github.com/PoomSmart/YouPiP) | +| **IAmYouTube** | [PoomSmart](https://twitter.com/poomsmart) | 1.2.0 | [✔︎](https://github.com/PoomSmart/IAmYouTube) | +| **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) | +| **YTNoPaidPromo** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.0 | [✔︎](https://github.com/PoomSmart/YTNoPaidPromo) | +| **YTAutoFullScreen** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.3 | [✔︎](https://github.com/PoomSmart/YTAutoFullScreen) | +| **YouRememberCaption** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.0 | [✔︎](https://poomsmart.github.io/repo/depictions/youremembercaption.html) | +| **YTSystemAppearance** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.0 | [✔︎](https://poomsmart.github.io/repo/depictions/ytsystemappearance.html) | +| **YTClassicVideoQuality** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.1 | [✔︎](https://github.com/PoomSmart/YTClassicVideoQuality) | +| **Return YouTube Dislike** | [PoomSmart](https://twitter.com/poomsmart) | 1.6.5 | [✔︎](https://github.com/PoomSmart/Return-YouTube-Dislikes) | +| **YTNoCheckLocalNetwork** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.2 | [✔︎](https://poomsmart.github.io/repo/depictions/ytnochecklocalnetwork.html) |
From f45f1946b4a8bb3afca5fcaf46e2119d483b14b5 Mon Sep 17 00:00:00 2001 From: Sunka Date: Tue, 12 Jul 2022 21:04:10 +0200 Subject: [PATCH 003/156] couple spelling corrections, keep up the good work --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 6c23098..9393190 100644 --- a/README.md +++ b/README.md @@ -70,11 +70,11 @@ # Download -- **uYouPlus** (or you can call it uYou+) requires iOS & iPadOS 13.0 or later. The latest version of **uYouPlus** can be found in the [Release tab](https://github.com/qnblackcat/uYouPlus/releases). +- **uYouPlus** (or you can call it uYou+) requires iOS or iPadOS 13.0 or later. The latest version of **uYouPlus** can be found in the [Release tab](https://github.com/qnblackcat/uYouPlus/releases). - For AltStore user: - - My official AtlStore repo: https://qnblackcat.github.io/AltStore/ + - My official AltStore repo: https://qnblackcat.github.io/AltStore/ - [Open in AltStore (v17.26.2-2.1)](https://tinyurl.com/2y86dh6b) - It will take a while to install because AltStore needs to download the IPA. From f4bf32bcad965198616a0250affcd91a8ca8c98c Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Wed, 20 Jul 2022 08:44:23 +0700 Subject: [PATCH 004/156] Enable Reorder videos from playlist by @PoomSmart --- uYouPlus.xm | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/uYouPlus.xm b/uYouPlus.xm index a8d52fe..af74b55 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -68,11 +68,18 @@ BOOL castConfirm() { BOOL ytMiniPlayer() { return [[NSUserDefaults standardUserDefaults] boolForKey:@"ytMiniPlayer_enabled"]; } -BOOL hidePaidPromotionCard(){ +BOOL hidePaidPromotionCard() { return [[NSUserDefaults standardUserDefaults] boolForKey:@"hidePaidPromotionCard_enabled"]; } # pragma mark - Tweaks +// Enable Reorder videos from playlist while on the Watch page - @PoomSmart +%hook YTIPlaylistPanelVideoRenderer +%new +- (BOOL)canReorder { return YES; } +%end +// + // YTMiniPlayerEnabler: https://github.com/level3tjg/YTMiniplayerEnabler/ %hook YTWatchMiniBarViewController - (void)updateMiniBarPlayerStateFromRenderer { From f8a02e11d76f07b5e23314d1d52fa17b676e9541 Mon Sep 17 00:00:00 2001 From: Miraficus <63237821+miraficus@users.noreply.github.com> Date: Thu, 21 Jul 2022 20:15:10 +0200 Subject: [PATCH 005/156] Czech translation --- .../cz.lproj/Localizable.strings | 58 +++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 lang/uYouPlus.bundle/cz.lproj/Localizable.strings diff --git a/lang/uYouPlus.bundle/cz.lproj/Localizable.strings b/lang/uYouPlus.bundle/cz.lproj/Localizable.strings new file mode 100644 index 0000000..ce4d65c --- /dev/null +++ b/lang/uYouPlus.bundle/cz.lproj/Localizable.strings @@ -0,0 +1,58 @@ +// How to translate uYouPlus to your languate: +// +// 1. Fork uYouPlus repo +// 2. Duplicate the template.lproj folder, and edit the duplicated folder's name to your .lproj id. +// For example: for Russia. For more details, visit: https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes +// 3. Translate each line below after each = +// 4. Open a Pull Request +// +// If your language already exists then feel free to check it and/or improve it! +// You can also add your localiztion to YouPiP here, the process is the same +// https://github.com/PoomSmart/YouPiP/tree/main/layout/Library/Application%20Support/YouPiP.bundle +// +// Settings + +"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Skrýt tlačítka předchozí a následující"; +"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "Skryje tlačítka předchozí a následující v překrytí ovládání videa."; + +"YT_MINIPLAYER" = "Povolit Minipřehrávač pro všechna videa"; +"YT_MINIPLAYER_DESC" = "Například u videa pro děti"; + +"CAST_CONFIRM" = "Zobrazit potvrzení před začátkem sdílení obrazu (YTCastConfirm)"; +"CAST_CONFIRM_DESC" = "Zobrazí potvrzení aby se zamezilo nechtěnému sdílení do televize."; + +"HIDE_HOVER_CARD" = "Skrýt karty na konci videa (YTNoHoverCards)"; +"HIDE_HOVER_CARD_DESC" = "Skryje náhledy jiných videjí na konci videa."; + +"NEW_MINIPLAYER_STYLE" = "Nový styl minipřehrávače (BigYTMiniPlayer)"; +"NEW_MINIPLAYER_STYLE_DESC" = "Je potřeba restart aplikace."; + +"YT_RE_EXPLORE" = "Nahradit záložku Shorts tab záložkou Explore (YTReExplore)"; +"YT_RE_EXPLORE_DESC" = "Je potřeba restart aplikace."; + +"HIDE_SUBTITLES_BUTTON" = "Skrýt tlačítko titulky"; +"HIDE_SUBTITLES_BUTTON_DESC" = "Skryje talčítko titulky v překrytí ovládání videa."; + +"HIDE_AUTOPLAY_SWITCH" = "Skrýt přepínač automatického přehrávání"; +"HIDE_AUTOPLAY_SWITCH_DESC" = "Skryje přepínač automatického přehrávání v překrytí ovládání videa."; + +"AUTO_FULLSCREEN" = "Přes celou obrazovku (YTAutoFullScreen)"; +"AUTO_FULLSCREEN_DESC" = "Automaticky spouští videa přes celou obrazovku."; + +"HIDE_HUD_MESSAGES" = "Skrýt vyskakující zprávy"; +"HIDE_HUD_MESSAGES_DESC" = "Příklad: Titulky zapnuty/vypnuty, Smyčka videa zapnuta,..."; + +"OLED_DARKMODE" = "Tmavý OLED režim (Experimentální)"; +"OLED_DARKMODE_DESC" = "Mohou se vyskytnout chyby. Je potřeba restart aplikace."; + +"OLED_KEYBOARD" = "OLED Klávesnice (Experimentální)"; +"OLED_KEYBOARD_DESC" = "Mohou se vyskytnout chyby. Je potřeba restart aplikace."; + +"HIDE_PAID_PROMOTION_CARDS" = "Skrýt kartu placené propagace"; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "Skryje 'Obsahuje placenou propagaci' v některých videjích."; + +// YTCastConfirm +"CASTING" = "Sdílení obrazu"; +"MSG_ARE_YOU_SURE" = "Opravdu chcete začít sdílet obraz?"; +"MSG_YES" = "Ano"; +"MSG_CANCEL" = "Zrušit"; \ No newline at end of file From e6622b7e74e15c44ed6c8e7121d6b016db0afc75 Mon Sep 17 00:00:00 2001 From: Miraficus <63237821+miraficus@users.noreply.github.com> Date: Thu, 21 Jul 2022 20:17:28 +0200 Subject: [PATCH 006/156] Fixed typo --- lang/uYouPlus.bundle/cz.lproj/Localizable.strings | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lang/uYouPlus.bundle/cz.lproj/Localizable.strings b/lang/uYouPlus.bundle/cz.lproj/Localizable.strings index ce4d65c..c600782 100644 --- a/lang/uYouPlus.bundle/cz.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/cz.lproj/Localizable.strings @@ -31,7 +31,7 @@ "YT_RE_EXPLORE_DESC" = "Je potřeba restart aplikace."; "HIDE_SUBTITLES_BUTTON" = "Skrýt tlačítko titulky"; -"HIDE_SUBTITLES_BUTTON_DESC" = "Skryje talčítko titulky v překrytí ovládání videa."; +"HIDE_SUBTITLES_BUTTON_DESC" = "Skryje tlačítko titulky v překrytí ovládání videa."; "HIDE_AUTOPLAY_SWITCH" = "Skrýt přepínač automatického přehrávání"; "HIDE_AUTOPLAY_SWITCH_DESC" = "Skryje přepínač automatického přehrávání v překrytí ovládání videa."; @@ -49,7 +49,7 @@ "OLED_KEYBOARD_DESC" = "Mohou se vyskytnout chyby. Je potřeba restart aplikace."; "HIDE_PAID_PROMOTION_CARDS" = "Skrýt kartu placené propagace"; -"HIDE_PAID_PROMOTION_CARDS_DESC" = "Skryje 'Obsahuje placenou propagaci' v některých videjích."; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "Skryje 'Obsahuje placenou propagaci' u některých videjí."; // YTCastConfirm "CASTING" = "Sdílení obrazu"; From 11308d59b5360c9471f36554aee37c2d54e3ac28 Mon Sep 17 00:00:00 2001 From: Miraficus <63237821+miraficus@users.noreply.github.com> Date: Thu, 21 Jul 2022 20:40:35 +0200 Subject: [PATCH 007/156] Changed name to YoutubePlus --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 1d31526..d287f47 100644 --- a/Makefile +++ b/Makefile @@ -7,7 +7,7 @@ FINALPACKAGE = 1 CODESIGN_IPA = 0 TWEAK_NAME = uYouPlus -DISPLAY_NAME = YouTube +DISPLAY_NAME = YouTubePlus BUNDLE_ID = com.google.ios.youtube uYouPlus_INJECT_DYLIBS = Tweaks/uYou/Library/MobileSubstrate/DynamicLibraries/uYou.dylib .theos/obj/libcolorpicker.dylib .theos/obj/iSponsorBlock.dylib .theos/obj/YTUHD.dylib .theos/obj/YouPiP.dylib .theos/obj/YouTubeDislikesReturn.dylib .theos/obj/YoutubeSpeed.dylib From 7045e8256538588125d10610e5d8b75f50018f6a Mon Sep 17 00:00:00 2001 From: moh-ter <109860711+moh-ter@users.noreply.github.com> Date: Sat, 23 Jul 2022 16:39:53 +0300 Subject: [PATCH 008/156] Ar Translation --- .../ar.lproj/Localizable.strings | 58 +++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 lang/uYouPlus.bundle/ar.lproj/Localizable.strings diff --git a/lang/uYouPlus.bundle/ar.lproj/Localizable.strings b/lang/uYouPlus.bundle/ar.lproj/Localizable.strings new file mode 100644 index 0000000..2b13147 --- /dev/null +++ b/lang/uYouPlus.bundle/ar.lproj/Localizable.strings @@ -0,0 +1,58 @@ +// How to translate uYouPlus to your languate: +// +// 1. Fork uYouPlus repo +// 2. Duplicate the template.lproj folder, and edit the duplicated folder's name to your .lproj id. +// For example: for Russia. For more details, visit: https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes +// 3. Translate each line below after each = +// 4. Open a Pull Request +// +// If your language already exists then feel free to check it and/or improve it! +// You can also add your localiztion to YouPiP here, the process is the same +// https://github.com/PoomSmart/YouPiP/tree/main/layout/Library/Application%20Support/YouPiP.bundle +// +// Settings + +"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "إخفاء زر "السابق" و"التالي""; +"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "إخفاء زرّي "السابق" و"التالي" من أزرار التحكم على الفيديو."; + +"YT_MINIPLAYER" = "السماح بـ"المشغل المصغّر" لكل فيديوهات يوتيوب"; +"YT_MINIPLAYER_DESC" = "عند تصغير فيديوهات الأطفال مثلاً (قبل إغلاق المقطع)."; + +"CAST_CONFIRM" = "التأكيد قبل البث (أداة YTCastConfirm)"; +"CAST_CONFIRM_DESC" = "إظهار تنبيه للتأكيد قبل البث، من أجل منع البث للتلفاز عن طريق الخطأ."; + +"HIDE_HOVER_CARD" = "إخفاء صور المقاطع الأخرى في نهاية المقاطع (YTNoHoverCards)"; +"HIDE_HOVER_CARD_DESC" = "إخفاء الصور المصغرة الظاهرة على مشغل الفيديو في نهاية المقطع."; + +"NEW_MINIPLAYER_STYLE" = "تغيير شكل المشغّل المصغر (BigYTMiniPlayer)"; +"NEW_MINIPLAYER_STYLE_DESC" = "تغيير شكل المشغّل المصغر في الآيفون إلى نفس شكله في الآيباد - تتطلب إغلاق التطبيق وإعادة فتحه."; + +"YT_RE_EXPLORE" = "استبدال تبويب Shorts بتبويب Explore (YTReExplore)"; +"YT_RE_EXPLORE_DESC" = " تتطلب إغلاق التطبيق وإعادة فتحه."; + +"HIDE_SUBTITLES_BUTTON" = "إخفاء زر "الترجمة""; +"HIDE_SUBTITLES_BUTTON_DESC" = "إخفاء زر "الترجمة" من أزرار التحكم على الفيديو."; + +"HIDE_AUTOPLAY_SWITCH" = "إخفاء زر "التشغيل التلقائي""; +"HIDE_AUTOPLAY_SWITCH_DESC" = "إخفاء زر "التشغيل التلقائي" من أزرار التحكم على الفيديو."; + +"AUTO_FULLSCREEN" = "كامل الشاشة تلقائياً (YTAutoFullScreen)"; +"AUTO_FULLSCREEN_DESC" = "تشغيل الفيديوهات تلقائياً بكامل الشاشة."; + +"HIDE_HUD_MESSAGES" = "إخفاء رسائل المعلومات"; +"HIDE_HUD_MESSAGES_DESC" = "مثلاً: تم إيقاف الترحمة..."; + +"OLED_DARKMODE" = "وضغ داكن OLED (ميزة تجريبية)"; +"OLED_DARKMODE_DESC" = "قد لا تعمل في كل الحالات. يجب إعادة تشغيل التطبيق عند تشغيل أو إيقاف هذه الخاصية."; + +"OLED_KEYBOARD" = "لوحة مفاتيح داكنة OLED (ميزة تجريبية)"; +"OLED_KEYBOARD_DESC" = "قد لا تعمل في كل الحالات. يجب إعادة تشغيل التطبيق عند تشغيل أو إيقاف هذه الخاصية."; + +"HIDE_PAID_PROMOTION_CARDS" = "إخفاء شريط "الترويج المدفوع""; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "إخفاء عبارة "يتضمن ترويجاً مدفوعاً" الظاهرة على بعض الفيديوهات."; + +// YTCastConfirm +"CASTING" = "البث"; +"MSG_ARE_YOU_SURE" = "هل أنت متأكد أنك تريد بدء البث؟"; +"MSG_YES" = "نعم"; +"MSG_CANCEL" = "إلغاء"; \ No newline at end of file From 96c528fa72f0f13d290bc0a39f2df40b35ff5498 Mon Sep 17 00:00:00 2001 From: 5jd <85830207+5jd@users.noreply.github.com> Date: Sat, 23 Jul 2022 18:03:08 +0200 Subject: [PATCH 009/156] Add the translation for HIDE_PAID_PROMOTION_CARDS --- lang/uYouPlus.bundle/fr.lproj/Localizable.strings | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lang/uYouPlus.bundle/fr.lproj/Localizable.strings b/lang/uYouPlus.bundle/fr.lproj/Localizable.strings index d5047f0..a8da0b6 100644 --- a/lang/uYouPlus.bundle/fr.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/fr.lproj/Localizable.strings @@ -36,6 +36,9 @@ "OLED_KEYBOARD" = "Clavier OLED (Expérimental)"; "OLED_KEYBOARD_DESC" = "Peut ne pas fonctionner correctement dans certains cas. Un redémarrage de l'application est nécessaire."; +"HIDE_PAID_PROMOTION_CARDS" = "Masquer la bannière des communications commerciales"; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "Masque la bannière 'Inclut une communication commerciale' dans certaines vidéos."; + // YTCastConfirm "CASTING" = "Castings"; "MSG_ARE_YOU_SURE" = "Êtes-vous sûr de vouloir commencer le casting ?"; From 96b62b579181dfd95a94b91994016ceb13ffd516 Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Sat, 23 Jul 2022 23:36:08 +0700 Subject: [PATCH 010/156] update strings --- lang/uYouPlus.bundle/ar.lproj/Localizable.strings | 12 ------------ lang/uYouPlus.bundle/de.lproj/Localizable.strings | 10 ---------- .../template.lproj/Localizable.strings | 2 +- 3 files changed, 1 insertion(+), 23 deletions(-) diff --git a/lang/uYouPlus.bundle/ar.lproj/Localizable.strings b/lang/uYouPlus.bundle/ar.lproj/Localizable.strings index 2b13147..54d0caa 100644 --- a/lang/uYouPlus.bundle/ar.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/ar.lproj/Localizable.strings @@ -1,15 +1,3 @@ -// How to translate uYouPlus to your languate: -// -// 1. Fork uYouPlus repo -// 2. Duplicate the template.lproj folder, and edit the duplicated folder's name to your .lproj id. -// For example: for Russia. For more details, visit: https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes -// 3. Translate each line below after each = -// 4. Open a Pull Request -// -// If your language already exists then feel free to check it and/or improve it! -// You can also add your localiztion to YouPiP here, the process is the same -// https://github.com/PoomSmart/YouPiP/tree/main/layout/Library/Application%20Support/YouPiP.bundle -// // Settings "HIDE_PREVIOUS_AND_NEXT_BUTTON" = "إخفاء زر "السابق" و"التالي""; diff --git a/lang/uYouPlus.bundle/de.lproj/Localizable.strings b/lang/uYouPlus.bundle/de.lproj/Localizable.strings index 66a8ff7..0a4b7d0 100644 --- a/lang/uYouPlus.bundle/de.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/de.lproj/Localizable.strings @@ -1,13 +1,3 @@ -// How to translate uYouPlus to your languate: - // - // 1. Fork uYouPlus repo - // 2. Duplicate the template.lproj folder, and edit the duplicated folder's name to your .lproj id. For example: ru.lproj - // for Russia. For more details, visit: https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes - // 3. Translate each line below after each = - // 4. Open a Pull Request - // - // If your language already exists then feel free to check it and/or improve it! - // // Settings "HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Spultasten ausblenden"; diff --git a/lang/uYouPlus.bundle/template.lproj/Localizable.strings b/lang/uYouPlus.bundle/template.lproj/Localizable.strings index 3f7025b..976c049 100644 --- a/lang/uYouPlus.bundle/template.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/template.lproj/Localizable.strings @@ -2,7 +2,7 @@ // // 1. Fork uYouPlus repo // 2. Duplicate the template.lproj folder, and edit the duplicated folder's name to your .lproj id. -// For example: for Russia. For more details, visit: https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes +// For example: for Russia. For more details, visit: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes // 3. Translate each line below after each = // 4. Open a Pull Request // From 94fdb176ea4662e35559bb9f7ef1393bec8a7fc8 Mon Sep 17 00:00:00 2001 From: Miraficus <63237821+miraficus@users.noreply.github.com> Date: Sun, 24 Jul 2022 20:18:46 +0200 Subject: [PATCH 011/156] Revert "Changed name to YoutubePlus" This reverts commit 11308d59b5360c9471f36554aee37c2d54e3ac28. --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index d287f47..1d31526 100644 --- a/Makefile +++ b/Makefile @@ -7,7 +7,7 @@ FINALPACKAGE = 1 CODESIGN_IPA = 0 TWEAK_NAME = uYouPlus -DISPLAY_NAME = YouTubePlus +DISPLAY_NAME = YouTube BUNDLE_ID = com.google.ios.youtube uYouPlus_INJECT_DYLIBS = Tweaks/uYou/Library/MobileSubstrate/DynamicLibraries/uYou.dylib .theos/obj/libcolorpicker.dylib .theos/obj/iSponsorBlock.dylib .theos/obj/YTUHD.dylib .theos/obj/YouPiP.dylib .theos/obj/YouTubeDislikesReturn.dylib .theos/obj/YoutubeSpeed.dylib From c5935309caca7b5eed6172edfd4a3265292a22dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20=C4=90=E1=BA=A1t?= <52943116+qnblackcat@users.noreply.github.com> Date: Mon, 25 Jul 2022 17:23:07 +0700 Subject: [PATCH 012/156] Update bug.md --- .github/ISSUE_TEMPLATE/bug.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bug.md b/.github/ISSUE_TEMPLATE/bug.md index c72b57f..c6ec5da 100644 --- a/.github/ISSUE_TEMPLATE/bug.md +++ b/.github/ISSUE_TEMPLATE/bug.md @@ -27,6 +27,7 @@ _(Please attach videos or screenshots if possible)_ ### Crash log (if possible) _(The crash log can be found in the Settings app - Privacy - Analytics & Improvements - Analytics Data - Youtube...)_ +### Does the issue happen with the official YouTube from AppStore? +_(Well, YouTube itself is buggy sometimes...)_ -### Additional context: - +### Additional context: From ee98ec62375b3ec05a47efa201a3ec2720a444e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E0=B9=96=DB=A3=DB=9C=C5=87=C5=87=5FMyT=E3=83=84?= Date: Mon, 25 Jul 2022 18:10:28 +0700 Subject: [PATCH 013/156] Update Localizable.strings --- .../vi.lproj/Localizable.strings | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/lang/uYouPlus.bundle/vi.lproj/Localizable.strings b/lang/uYouPlus.bundle/vi.lproj/Localizable.strings index a201374..518349e 100644 --- a/lang/uYouPlus.bundle/vi.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/vi.lproj/Localizable.strings @@ -3,14 +3,14 @@ "HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Ẩn nút Next và nút Previous"; "HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "Ẩn nút Next và nút Previous trong trình phát video."; -"YT_MINIPLAYER" = "Cho phép trình phát thu nhỏ chạy với mọi video"; +"YT_MINIPLAYER" = "Cho phép sử dụng trình phát thu nhỏ với mọi video"; "YT_MINIPLAYER_DESC" = "Ví dụ: Video cho trẻ em."; "CAST_CONFIRM" = "Xác nhận trước khi cast video (YTCastConfirm)"; -"CAST_CONFIRM_DESC" = "Hiện hộp thoại xác nhận trước khi cast video sang TV để ngăn việc vô tình làm gián đoạn TV."; +"CAST_CONFIRM_DESC" = "Hiện hộp thoại xác nhận trước khi cast video sang TV để tránh vô tình chiếm quyền điều khiển TV."; "HIDE_HOVER_CARD" = "Ẩn video dạng thumbnails (YTNoHoverCards)"; -"HIDE_HOVER_CARD_DESC" = "Ẩn các video dạng thu nhỏ (thumbnails) xuất hiện ở gần cuối video."; +"HIDE_HOVER_CARD_DESC" = "Ẩn thumbnail của các video đề xuất xuất hiện ở cuối video."; "NEW_MINIPLAYER_STYLE" = "Giao diện trình phát thu nhỏ kiểu mới (BigYTMiniPlayer)"; "NEW_MINIPLAYER_STYLE_DESC" = "Cần khởi động lại ứng dụng."; @@ -21,26 +21,26 @@ "HIDE_SUBTITLES_BUTTON" = "Ẩn nút bật Phụ đề"; "HIDE_SUBTITLES_BUTTON_DESC" = "Ẩn nút bật phụ đề trong trình phát video."; -"HIDE_AUTOPLAY_SWITCH" = "Ẩn công tắc Tự động phát"; -"HIDE_AUTOPLAY_SWITCH_DESC" = "Ẩn công tắc Tự động phát trong trình phát video."; +"HIDE_AUTOPLAY_SWITCH" = "Ẩn nút Tự động phát"; +"HIDE_AUTOPLAY_SWITCH_DESC" = "Ẩn nút Tự động phát trong trình phát video."; "AUTO_FULLSCREEN" = "Tự động toàn màn hình (YTAutoFullScreen)"; "AUTO_FULLSCREEN_DESC" = "Tự động phát video ở chế độ toàn màn hình."; -"HIDE_HUD_MESSAGES" = "Ẩn tin nhắn HUD"; +"HIDE_HUD_MESSAGES" = "Ẩn thông báo HUD"; "HIDE_HUD_MESSAGES_DESC" = "Ví dụ: Đã bật/tắt phụ đề, Tính năng phát video lặp lại đang bật,..."; -"OLED_DARKMODE" = "Chế độ tối OLED (Thử nghiệm)"; -"OLED_DARKMODE_DESC" = "Cần khởi động lại ứng dụng nếu bạn bật/tắt tính năng này, nhưng không cần khởi động lại ứng dụng nếu chuyển giữa chế độ Sáng và chế độ Tối."; +"OLED_DARKMODE" = "Chế độ tối cho màn OLED (Thử nghiệm)"; +"OLED_DARKMODE_DESC" = "Tính năng này có thể không hoạt động. Cần khởi động lại ứng dụng."; -"OLED_KEYBOARD" = "Bàn phím OLED (Thử nghiệm)"; -"OLED_KEYBOARD_DESC" = "Tính năng này có thể không hoạt động tốt trong một vài trường hợp. Cần khởi động lại ứng dụng."; +"OLED_KEYBOARD" = "Bàn phím cho màn OLED (Thử nghiệm)"; +"OLED_KEYBOARD_DESC" = "Tính năng này có thể không hoạt động. Cần khởi động lại ứng dụng."; -"HIDE_PAID_PROMOTION_CARDS" = "Ẩn popup quảng cáo được trả tiền"; -"HIDE_PAID_PROMOTION_CARDS_DESC" = "Ẩn popup 'Chứa nội dung được trả tiền để quảng cáo' trong một số video."; +"HIDE_PAID_PROMOTION_CARDS" = "Ẩn banner quảng cáo được trả tiền"; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "Ẩn banner 'Chứa nội dung được trả tiền để quảng cáo' trong một số video."; // YTCastConfirm "CASTING" = "Truyền video"; "MSG_ARE_YOU_SURE" = "Bạn có muốn bắt đầu truyền video không?"; "MSG_YES" = "Có"; -"MSG_CANCEL" = "Không"; \ No newline at end of file +"MSG_CANCEL" = "Không"; From e3898018931fe64bea09ff584281cf25a225a1dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20=C4=90=E1=BA=A1t?= <52943116+qnblackcat@users.noreply.github.com> Date: Mon, 25 Jul 2022 20:25:38 +0700 Subject: [PATCH 014/156] update Vietnamese localization --- lang/uYouPlus.bundle/vi.lproj/Localizable.strings | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lang/uYouPlus.bundle/vi.lproj/Localizable.strings b/lang/uYouPlus.bundle/vi.lproj/Localizable.strings index 518349e..bf7ed6f 100644 --- a/lang/uYouPlus.bundle/vi.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/vi.lproj/Localizable.strings @@ -31,10 +31,10 @@ "HIDE_HUD_MESSAGES_DESC" = "Ví dụ: Đã bật/tắt phụ đề, Tính năng phát video lặp lại đang bật,..."; "OLED_DARKMODE" = "Chế độ tối cho màn OLED (Thử nghiệm)"; -"OLED_DARKMODE_DESC" = "Tính năng này có thể không hoạt động. Cần khởi động lại ứng dụng."; +"OLED_DARKMODE_DESC" = "Có thể không hoạt động tốt trong một số trường hợp. Cần khởi động lại ứng dụng nếu bạn bật/tắt tính năng này, nhưng không cần khởi động lại ứng dụng nếu chuyển giữa chế độ Sáng và chế độ Tối."; -"OLED_KEYBOARD" = "Bàn phím cho màn OLED (Thử nghiệm)"; -"OLED_KEYBOARD_DESC" = "Tính năng này có thể không hoạt động. Cần khởi động lại ứng dụng."; +"OLED_KEYBOARD" = "Bàn phím tối cho màn OLED (Thử nghiệm)"; +"OLED_KEYBOARD_DESC" = "Có thể không hoạt động tốt trong một vài trường hợp. Cần khởi động lại ứng dụng."; "HIDE_PAID_PROMOTION_CARDS" = "Ẩn banner quảng cáo được trả tiền"; "HIDE_PAID_PROMOTION_CARDS_DESC" = "Ẩn banner 'Chứa nội dung được trả tiền để quảng cáo' trong một số video."; From 3d05302b9b22d2d429f50f1570d0eee3b380a8b1 Mon Sep 17 00:00:00 2001 From: BandarHelal <31299470+BandarHL@users.noreply.github.com> Date: Tue, 26 Jul 2022 00:07:01 +0300 Subject: [PATCH 015/156] Fix typo --- lang/uYouPlus.bundle/template.lproj/Localizable.strings | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lang/uYouPlus.bundle/template.lproj/Localizable.strings b/lang/uYouPlus.bundle/template.lproj/Localizable.strings index 976c049..9d1b841 100644 --- a/lang/uYouPlus.bundle/template.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/template.lproj/Localizable.strings @@ -1,4 +1,4 @@ -// How to translate uYouPlus to your languate: +// How to translate uYouPlus to your language: // // 1. Fork uYouPlus repo // 2. Duplicate the template.lproj folder, and edit the duplicated folder's name to your .lproj id. @@ -7,7 +7,7 @@ // 4. Open a Pull Request // // If your language already exists then feel free to check it and/or improve it! -// You can also add your localiztion to YouPiP here, the process is the same +// You can also add your localization to YouPiP here, the process is the same // https://github.com/PoomSmart/YouPiP/tree/main/layout/Library/Application%20Support/YouPiP.bundle // // Settings @@ -55,4 +55,4 @@ "CASTING" = "Castings"; "MSG_ARE_YOU_SURE" = "Are you sure you want to start casting?"; "MSG_YES" = "Yes"; -"MSG_CANCEL" = "Cancel"; \ No newline at end of file +"MSG_CANCEL" = "Cancel"; From 932cae3473db284a8c5d2ee116640ad8a5923499 Mon Sep 17 00:00:00 2001 From: clc0321 <94593182+clc0321@users.noreply.github.com> Date: Wed, 27 Jul 2022 21:58:43 +0800 Subject: [PATCH 016/156] Update zh_tw translation fix some minor issues --- lang/uYouPlus.bundle/zh_tw.lproj/Localizable.strings | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lang/uYouPlus.bundle/zh_tw.lproj/Localizable.strings b/lang/uYouPlus.bundle/zh_tw.lproj/Localizable.strings index 4e8a34e..354b9ed 100644 --- a/lang/uYouPlus.bundle/zh_tw.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/zh_tw.lproj/Localizable.strings @@ -36,8 +36,11 @@ "OLED_KEYBOARD" = "OLED 鍵盤(實驗性)"; "OLED_KEYBOARD_DESC" = "在某些情況下可能無法正常工作。需要重新啟動應用程式。"; +"HIDE_PAID_PROMOTION_CARDS" = "隱藏付費促銷橫幅"; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "在某些視頻中隱藏“包括付費促銷”橫幅。"; + // YTCastConfirm "CASTING" = "投放中"; "MSG_ARE_YOU_SURE" = "確定要開始投放嗎?"; -"MSG_YES" = "是"; +"MSG_YES" = "確定"; "MSG_CANCEL" = "取消"; From 8dc2ed3166c4b785af1ba75d6f8bb3838703159c Mon Sep 17 00:00:00 2001 From: clc0321 <94593182+clc0321@users.noreply.github.com> Date: Wed, 27 Jul 2022 22:01:13 +0800 Subject: [PATCH 017/156] Update Localizable.strings --- lang/uYouPlus.bundle/zh_tw.lproj/Localizable.strings | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/uYouPlus.bundle/zh_tw.lproj/Localizable.strings b/lang/uYouPlus.bundle/zh_tw.lproj/Localizable.strings index 354b9ed..1d6e2c5 100644 --- a/lang/uYouPlus.bundle/zh_tw.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/zh_tw.lproj/Localizable.strings @@ -37,7 +37,7 @@ "OLED_KEYBOARD_DESC" = "在某些情況下可能無法正常工作。需要重新啟動應用程式。"; "HIDE_PAID_PROMOTION_CARDS" = "隱藏付費促銷橫幅"; -"HIDE_PAID_PROMOTION_CARDS_DESC" = "在某些視頻中隱藏“包括付費促銷”橫幅。"; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "在某些影片中隱藏“包括付費促銷”橫幅。"; // YTCastConfirm "CASTING" = "投放中"; From 922b86a749e59e3387a6c1e3c325f867bccd02de Mon Sep 17 00:00:00 2001 From: ErSpieltHD <40891294+ErSpieltHD@users.noreply.github.com> Date: Thu, 28 Jul 2022 21:45:12 +0200 Subject: [PATCH 018/156] Retranslation + Paid Promo Banner --- .../de.lproj/Localizable.strings | 63 ++++++++++--------- 1 file changed, 33 insertions(+), 30 deletions(-) diff --git a/lang/uYouPlus.bundle/de.lproj/Localizable.strings b/lang/uYouPlus.bundle/de.lproj/Localizable.strings index 0a4b7d0..b825e5a 100644 --- a/lang/uYouPlus.bundle/de.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/de.lproj/Localizable.strings @@ -1,43 +1,46 @@ - // Settings +// Settings - "HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Spultasten ausblenden"; - "HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "Spultasten im Video ausblenden"; +"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Vor- und Zurücktasten ausblenden"; +"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "Vor- und Zurückspultasten vom Videoplayer ausblenden."; - "YT_MINIPLAYER" = "Miniplayer für alle YouTube-Videos aktivieren"; - "YT_MINIPLAYER_DESC" = "Zum Beispiel bei Videos für Kinder."; +"YT_MINIPLAYER" = "Miniplayer für alle YT Videos aktivieren"; +"YT_MINIPLAYER_DESC" = "z.B. bei Videos für Kinder"; - "CAST_CONFIRM" = "Warnung vor Starten einer Übertragung (YTCastConfirm)"; - "CAST_CONFIRM_DESC" = "Warnung vor Starten einer Übertragung, um ein versehentliches Übernehmen des TVs zu verhindern."; +"CAST_CONFIRM" = "Warnung vor TV-Übertragungen (YTCastConfirm)"; +"CAST_CONFIRM_DESC" = "Zeigt eine Warnung an, um eine ausversehene TV-Übertragung zu verhindern."; - "HIDE_HOVER_CARD" = "Endkarten ausblenden (YTNoHoverCards)"; - "HIDE_HOVER_CARD_DESC" = "Endkarten (Thumbnails) am Ende von Videos ausblenden."; +"HIDE_HOVER_CARD" = "Endkarten ausblenden (YTNoHoverCards)"; +"HIDE_HOVER_CARD_DESC" = "Endkarten (Thumbnails) am Ende des Videos ausblenden."; - "NEW_MINIPLAYER_STYLE" = "Neue Miniplayer-Leiste (BigYTMiniPlayer)"; - "NEW_MINIPLAYER_STYLE_DESC" = "App-Neustart erforderlich."; +"NEW_MINIPLAYER_STYLE" = "Neuer Miniplayer Style (BigYTMiniPlayer)"; +"NEW_MINIPLAYER_STYLE_DESC" = "App-Neustart erforderlich!"; - "YT_RE_EXPLORE" = "Registerkarte Shorts durch Registerkarte Entdecken ersetzen (YTReExplore)"; - "YT_RE_EXPLORE_DESC" = "App-Neustart erforderlich."; +"YT_RE_EXPLORE" = "Shorts-Tab durch Entdecken-Tab ersetzen (YTReExplore)"; +"YT_RE_EXPLORE_DESC" = "App-Neustart erforderlich!"; - "HIDE_SUBTITLES_BUTTON" = "Schaltfläche Untertitel ausblenden"; - "HIDE_SUBTITLES_BUTTON_DESC" = "Schaltfläche Untertitel im Video ausblenden."; +"HIDE_SUBTITLES_BUTTON" = "Untertitel-Button ausblenden"; +"HIDE_SUBTITLES_BUTTON_DESC" = "Untertitel-Button vom Videoplayer ausblenden."; - "HIDE_AUTOPLAY_SWITCH" = "Schaltfläche Autoplay ausblenden"; - "HIDE_AUTOPLAY_SWITCH_DESC" = "Schaltfläche Autoplay im Video ausblenden."; +"HIDE_AUTOPLAY_SWITCH" = "Autoplay-Schalter ausblenden"; +"HIDE_AUTOPLAY_SWITCH_DESC" = "Autoplay-Schalter vom Videoplayer ausblenden."; - "AUTO_FULLSCREEN" = "Auto-Vollbild (YTAutoFullScreen)"; - "AUTO_FULLSCREEN_DESC" = "Auto. Videos im Vollbild starten."; +"AUTO_FULLSCREEN" = "Automatisches Vollbild (YTAutoFullScreen)"; +"AUTO_FULLSCREEN_DESC" = "Automatisch Videos im Vollbild starten."; - "HIDE_HUD_MESSAGES" = "HUD-Meldungen ausblenden"; - "HIDE_HUD_MESSAGES_DESC" = "Beispiel: CC ist ein/ausgeschaltet, Videoschleife ist eingeschaltet,..."; +"HIDE_HUD_MESSAGES" = "HUD-Nachrichten ausblenden"; +"HIDE_HUD_MESSAGES_DESC" = "z.B.: Untertitel sind akti-/deaktiviert, Videoschleife ist an, ..."; - "OLED_DARKMODE" = "OLED-Dunkelmodus (Experimentell)"; - "OLED_DARKMODE_DESC" = "Funktioniert in einigen Fällen möglicherweise nicht richtig. Ein App-Neustart ist nach Aktiv-/Deaktivierung erforderlich."; +"OLED_DARKMODE" = "OLED-Dunkelmodus (Experimental)"; +"OLED_DARKMODE_DESC" = "Könnte in manchen Fällen nicht richtig funktionieren. App-Neustart ist erforderlich, wenn diese Option akti-/deaktiviert wird!"; - "OLED_KEYBOARD" = "OLED-Tastatur (Experimentell)"; - "OLED_KEYBOARD_DESC" = "Funktioniert in einigen Fällen möglicherweise nicht richtig. App-Neustart erforderlich."; +"OLED_KEYBOARD" = "OLED-Tastatur (Experimental)"; +"OLED_KEYBOARD_DESC" = "Könnte in manchen Fällen nicht richtig funktionieren. App-Neustart erforderlich1"; - // YTCastConfirm - "CASTING" = "Übertragen"; - "MSG_ARE_YOU_SURE" = "Sind Sie sicher, dass Sie mit der Übertragung beginnen wollen?"; - "MSG_YES" = "Ja"; - "MSG_CANCEL" = "Abbrechen"; +"HIDE_PAID_PROMOTION_CARDS" = "Enthält bezahlte Werbung Info ausblenden"; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "Enthält bezahlte Werbung Infobanner bei manchen Videos ausblenden."; + +// YTCastConfirm +"CASTING" = "TV-Übertragung"; +"MSG_ARE_YOU_SURE" = "Sind Sie sicher, dass Sie mit der Videoübertragung beginnen wollen?"; +"MSG_YES" = "Ja"; +"MSG_CANCEL" = "Abbrechen"; From 02addcb00cb91bdb5ef9cf9ebba583fd19eeb542 Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Sat, 30 Jul 2022 17:45:13 +0700 Subject: [PATCH 019/156] update submodules --- Tweaks/YTSpeed | 2 +- Tweaks/YouPiP | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Tweaks/YTSpeed b/Tweaks/YTSpeed index 7c11d9c..2132bac 160000 --- a/Tweaks/YTSpeed +++ b/Tweaks/YTSpeed @@ -1 +1 @@ -Subproject commit 7c11d9c91686c6ea205bebf50e6ffc283be6d482 +Subproject commit 2132bac7f757a8af55cd9572c297f49354d810df diff --git a/Tweaks/YouPiP b/Tweaks/YouPiP index 9ce79c2..a137b2e 160000 --- a/Tweaks/YouPiP +++ b/Tweaks/YouPiP @@ -1 +1 @@ -Subproject commit 9ce79c280cb0965155717d8216dfc91fe9525e5b +Subproject commit a137b2eba5ddfa8b54e8df0f64f8e3d157523406 From 2b141cb50f3f497e7077d5a33190b50b83e15f27 Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Sat, 30 Jul 2022 17:45:58 +0700 Subject: [PATCH 020/156] minor improvements --- Header.h | 4 ++-- uYouPlus.xm | 14 +++++--------- 2 files changed, 7 insertions(+), 11 deletions(-) diff --git a/Header.h b/Header.h index b925c77..8e6718a 100644 --- a/Header.h +++ b/Header.h @@ -12,8 +12,8 @@ @interface YTMainAppControlsOverlayView : UIView @end -// @interface YTTransportControlsButtonView : UIView -// @end +@interface YTTransportControlsButtonView : UIView +@end @interface _ASCollectionViewCell : UICollectionViewCell - (id)node; diff --git a/uYouPlus.xm b/uYouPlus.xm index af74b55..3325ff8 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -78,7 +78,6 @@ BOOL hidePaidPromotionCard() { %new - (BOOL)canReorder { return YES; } %end -// // YTMiniPlayerEnabler: https://github.com/level3tjg/YTMiniplayerEnabler/ %hook YTWatchMiniBarViewController @@ -103,8 +102,8 @@ BOOL hidePaidPromotionCard() { if (hidePreviousAndNextButton()) { MSHookIvar(self, "_nextButton").hidden = YES; MSHookIvar(self, "_previousButton").hidden = YES; - // MSHookIvar(self, "_nextButtonView").hidden = YES; - // MSHookIvar(self, "_previousButtonView").hidden = YES; + MSHookIvar(self, "_nextButtonView").hidden = YES; + MSHookIvar(self, "_previousButtonView").hidden = YES; } } %end @@ -209,12 +208,9 @@ BOOL hidePaidPromotionCard() { - (BOOL)isPromptForLocalNetworkPermissionsEnabled { return NO; } %end -// YTSystemAppearance: https://poomsmart.github.io/repo/depictions/ytsystemappearance.html // YouRememberCaption: https://poomsmart.github.io/repo/depictions/youremembercaption.html %hook YTColdConfig -- (BOOL)shouldUseAppThemeSetting { return YES; } - (BOOL)respectDeviceCaptionSetting { return NO; } -- (BOOL)isEnhancedSearchBarEnabled { return YES; } %end // NOYTPremium - https://github.com/PoomSmart/NoYTPremium/ @@ -387,7 +383,7 @@ UIColor* raisedColor = [UIColor colorWithRed:0.035 green:0.035 blue:0.035 alpha: } - (UIColor *)raisedBackground { if (self.pageStyle == 1) { - return raisedColor; + return [UIColor blackColor]; } return %orig; } @@ -550,11 +546,11 @@ UIColor* raisedColor = [UIColor colorWithRed:0.035 green:0.035 blue:0.035 alpha: - (void)didMoveToWindow { %orig; if (isDarkMode()) { - if ([self.nextResponder isKindOfClass:%c(ASScrollView)]) { self.backgroundColor = raisedColor; } + if ([self.nextResponder isKindOfClass:%c(ASScrollView)]) { self.backgroundColor = [UIColor clearColor]; } if ([self.accessibilityIdentifier isEqualToString:@"eml.cvr"]) { self.backgroundColor = [UIColor blackColor]; } if ([self.accessibilityIdentifier isEqualToString:@"rich_header"]) { self.backgroundColor = [UIColor blackColor]; } if ([self.accessibilityIdentifier isEqualToString:@"id.ui.comment_cell"]) { self.backgroundColor = [UIColor blackColor]; } - if ([self.accessibilityIdentifier isEqualToString:@"id.ui.cancel.button"]) { self.superview.backgroundColor = raisedColor; } + if ([self.accessibilityIdentifier isEqualToString:@"id.ui.cancel.button"]) { self.superview.backgroundColor = [UIColor clearColor]; } if ([self.accessibilityIdentifier isEqualToString:@"id.elements.components.filter_chip_bar"]) { self.backgroundColor = [UIColor blackColor]; } if ([self.accessibilityIdentifier isEqualToString:@"id.elements.components.comment_composer"]) { self.backgroundColor = [UIColor blackColor]; } if ([self.accessibilityIdentifier isEqualToString:@"id.elements.components.video_list_entry"]) { self.backgroundColor = [UIColor blackColor]; } From 41ae9ef959c8115111994570133ca1feaf0dfdcc Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Tue, 2 Aug 2022 22:41:19 +0700 Subject: [PATCH 021/156] update submodules --- Tweaks/YouTubeHeader | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Tweaks/YouTubeHeader b/Tweaks/YouTubeHeader index c34699b..f2d6e1f 160000 --- a/Tweaks/YouTubeHeader +++ b/Tweaks/YouTubeHeader @@ -1 +1 @@ -Subproject commit c34699b33c6f5dbfd59e1a0ed3023ca41cb831bd +Subproject commit f2d6e1fa9dd0e635a101d73eb1375b29b3561a87 From 1036272ce3667fc74064c8e100dc04e6e38f45b0 Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Tue, 2 Aug 2022 23:33:46 +0700 Subject: [PATCH 022/156] update submodules --- Tweaks/YTSpeed | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Tweaks/YTSpeed b/Tweaks/YTSpeed index 2132bac..3fec2df 160000 --- a/Tweaks/YTSpeed +++ b/Tweaks/YTSpeed @@ -1 +1 @@ -Subproject commit 2132bac7f757a8af55cd9572c297f49354d810df +Subproject commit 3fec2dfcf0714a23e96d3cf523c7e86c019c2020 From fd8dc7a61d006db23e40c99d34ffa88f4b95c6bf Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Tue, 2 Aug 2022 23:34:25 +0700 Subject: [PATCH 023/156] close app button --- Settings.xm | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/Settings.xm b/Settings.xm index f5f737b..f731f7d 100644 --- a/Settings.xm +++ b/Settings.xm @@ -42,6 +42,15 @@ extern BOOL hidePaidPromotionCard(); YTSettingsViewController *delegate = [self valueForKey:@"_dataDelegate"]; NSBundle *tweakBundle = uYouPlusBundle(); + YTSettingsSectionItem *killApp = [%c(YTSettingsSectionItem) + itemWithTitle:LOC(@"KILL_YOUTUBE") + titleDescription:LOC(@"KILL_YOUTUBE_DESC") + accessibilityIdentifier:nil + detailTextBlock:nil + selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) { + exit(0); + }]; + YTSettingsSectionItem *hidePaidPromotionCard = [[%c(YTSettingsSectionItem) alloc] initWithTitle:LOC(@"HIDE_PAID_PROMOTION_CARDS") titleDescription:LOC(@"HIDE_PAID_PROMOTION_CARDS_DESC")]; hidePaidPromotionCard.hasSwitch = YES; hidePaidPromotionCard.switchVisible = YES; @@ -159,7 +168,7 @@ extern BOOL hidePaidPromotionCard(); return YES; }; - NSMutableArray *sectionItems = [NSMutableArray arrayWithArray:@[autoFull, castConfirm, ytMiniPlayer, hideAutoplaySwitch, hideCC, hideHUD, hidePaidPromotionCard, hidePreviousAndNextButton, hideHoverCard, bigYTMiniPlayer, oledDarkMode, oledKeyBoard, reExplore]]; + NSMutableArray *sectionItems = [NSMutableArray arrayWithArray:@[killApp, autoFull, castConfirm, ytMiniPlayer, hideAutoplaySwitch, hideCC, hideHUD, hidePaidPromotionCard, hidePreviousAndNextButton, hideHoverCard, bigYTMiniPlayer, oledDarkMode, oledKeyBoard, reExplore]]; [delegate setSectionItems:sectionItems forCategory:uYouPlusSection title:@"uYouPlus" titleDescription:nil headerHidden:NO]; } From 09b765d7d9e27a8038876a4e8950d5d8c99b0e0c Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Tue, 2 Aug 2022 23:34:38 +0700 Subject: [PATCH 024/156] update strings --- lang/uYouPlus.bundle/en.lproj/Localizable.strings | 3 +++ lang/uYouPlus.bundle/template.lproj/Localizable.strings | 3 +++ lang/uYouPlus.bundle/vi.lproj/Localizable.strings | 3 +++ 3 files changed, 9 insertions(+) diff --git a/lang/uYouPlus.bundle/en.lproj/Localizable.strings b/lang/uYouPlus.bundle/en.lproj/Localizable.strings index 394ef12..e73104c 100644 --- a/lang/uYouPlus.bundle/en.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/en.lproj/Localizable.strings @@ -1,5 +1,8 @@ // Settings +"KILL_APP" = "Close YouTube"; +"KILL_APP_DESC" = "Tap here to close YouTube!"; + "HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Hide Previous and Next button"; "HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "Hide Previous and Next button in video controls overlay."; diff --git a/lang/uYouPlus.bundle/template.lproj/Localizable.strings b/lang/uYouPlus.bundle/template.lproj/Localizable.strings index 9d1b841..76c40db 100644 --- a/lang/uYouPlus.bundle/template.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/template.lproj/Localizable.strings @@ -12,6 +12,9 @@ // // Settings +"KILL_APP" = "Close YouTube"; +"KILL_APP_DESC" = "Tap here to close YouTube!"; + "HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Hide Previous and Next button"; "HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "Hide Previous and Next button in video controls overlay."; diff --git a/lang/uYouPlus.bundle/vi.lproj/Localizable.strings b/lang/uYouPlus.bundle/vi.lproj/Localizable.strings index bf7ed6f..3432327 100644 --- a/lang/uYouPlus.bundle/vi.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/vi.lproj/Localizable.strings @@ -1,5 +1,8 @@ // Settings +"KILL_APP" = "Đóng ứng dụng"; +"KILL_APP_DESC" = "Chạm để đóng YouTube!"; + "HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Ẩn nút Next và nút Previous"; "HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "Ẩn nút Next và nút Previous trong trình phát video."; From 12f80fa7eea4bcfab111f3d2c6cb8b224677f9c2 Mon Sep 17 00:00:00 2001 From: Victor Alves Date: Tue, 2 Aug 2022 15:42:11 -0300 Subject: [PATCH 025/156] Add Portuguese Brazilian translation --- .../pt_br.lproj/Localizable.strings | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 lang/uYouPlus.bundle/pt_br.lproj/Localizable.strings diff --git a/lang/uYouPlus.bundle/pt_br.lproj/Localizable.strings b/lang/uYouPlus.bundle/pt_br.lproj/Localizable.strings new file mode 100644 index 0000000..9f1705d --- /dev/null +++ b/lang/uYouPlus.bundle/pt_br.lproj/Localizable.strings @@ -0,0 +1,49 @@ +// Settings + +"KILL_APP" = "Fechar o YouTube"; +"KILL_APP_DESC" = "Toque aqui para fechar o YouTube!"; + +"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Ocultar botão Anterior e Próximo"; +"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "Oculta o botão Anterior e Próximo na sobreposição de controles de vídeo."; + +"YT_MINIPLAYER" = "Ative o Miniplayer para todos os vídeos do YouTube"; +"YT_MINIPLAYER_DESC" = "Vídeos infantis, por exemplo."; + +"CAST_CONFIRM" = "Alerta de confirmação antes de transmitir (YTCastConfirm)"; +"CAST_CONFIRM_DESC" = "Mostra um alerta de confirmação antes da transmissão para evitar o sequestro acidental da TV."; + +"HIDE_HOVER_CARD" = "Ocultar Cartões flutuantes de telas finais (YTNoHoverCards)"; +"HIDE_HOVER_CARD_DESC" = "Oculta telas finais do criador (miniaturas) no final dos vídeos."; + +"NEW_MINIPLAYER_STYLE" = "Novo estilo de barra de miniplayer (BigYTMiniPlayer)"; +"NEW_MINIPLAYER_STYLE_DESC" = "A reinicialização do app é necessária."; + +"YT_RE_EXPLORE" = "Substituir a guia Shorts pela guia Explorar (YTReExplore)"; +"YT_RE_EXPLORE_DESC" = "A reinicialização do app é necessária."; + +"HIDE_SUBTITLES_BUTTON" = "Ocultar botão de Legendas"; +"HIDE_SUBTITLES_BUTTON_DESC" = "Oculta o botão de Legendas na sobreposição de controles de vídeo."; + +"HIDE_AUTOPLAY_SWITCH" = "Ocultar interruptor de Reprodução automática"; +"HIDE_AUTOPLAY_SWITCH_DESC" = "Oculta o interruptor de Reprodução automática na sobreposição de controles de vídeo."; + +"AUTO_FULLSCREEN" = "Tela cheia automática (YTAutoFullScreen)"; +"AUTO_FULLSCREEN_DESC" = "Reproduz videos em tela cheia automaticamente."; + +"HIDE_HUD_MESSAGES" = "Ocultar Mensagens do HUD"; +"HIDE_HUD_MESSAGES_DESC" = "Exemplo: Legendas/CC ativadas/desativadas, A repetição do vídeo está ativada,..."; + +"OLED_DARKMODE" = "Modo escuro OLED (Experimental)"; +"OLED_DARKMODE_DESC" = "Pode não funcionar corretamente em alguns casos. A reinicialização do app é necessária após você ativar/desativar essa opção."; + +"OLED_KEYBOARD" = "Teclado OLED (Experimental)"; +"OLED_KEYBOARD_DESC" = "Pode não funcionar corretamente em alguns casos. A reinicialização do app é necessária."; + +"HIDE_PAID_PROMOTION_CARDS" = "Ocultar Banner de promoção paga"; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "Oculta o banner 'Contém promoção paga' em alguns vídeos."; + +// YTCastConfirm +"CASTING" = "Transmissão"; +"MSG_ARE_YOU_SURE" = "Tem certeza de que deseja começar a transmitir?"; +"MSG_YES" = "Sim"; +"MSG_CANCEL" = "Cancelar"; From 8ec1cb8cba3b46222ea2dd9963d00751a5e0b3a0 Mon Sep 17 00:00:00 2001 From: Victor Alves Date: Wed, 3 Aug 2022 05:15:24 -0300 Subject: [PATCH 026/156] Set lang code to 'pt' to stay right with youtube app --- .../uYouPlus.bundle/{pt_br.lproj => pt.lproj}/Localizable.strings | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename lang/uYouPlus.bundle/{pt_br.lproj => pt.lproj}/Localizable.strings (100%) diff --git a/lang/uYouPlus.bundle/pt_br.lproj/Localizable.strings b/lang/uYouPlus.bundle/pt.lproj/Localizable.strings similarity index 100% rename from lang/uYouPlus.bundle/pt_br.lproj/Localizable.strings rename to lang/uYouPlus.bundle/pt.lproj/Localizable.strings From ac6fa7b8530481c05418735ff54472feff963530 Mon Sep 17 00:00:00 2001 From: 5jd <85830207+5jd@users.noreply.github.com> Date: Thu, 4 Aug 2022 14:09:35 +0200 Subject: [PATCH 027/156] Add close Youtube French translation Adds the Close Youtube French translation --- lang/uYouPlus.bundle/fr.lproj/Localizable.strings | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lang/uYouPlus.bundle/fr.lproj/Localizable.strings b/lang/uYouPlus.bundle/fr.lproj/Localizable.strings index a8da0b6..7b6717c 100644 --- a/lang/uYouPlus.bundle/fr.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/fr.lproj/Localizable.strings @@ -1,5 +1,8 @@ // Settings +"KILL_APP" = "Fermer YouTube"; +"KILL_APP_DESC" = "Appuyez ici pour fermer YouTube !"; + "HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Masquer les boutons Précédent et Suivant"; "HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "Masquer les boutons Précédent et Suivant dans la superposition des contrôles vidéo"; From 0db1e0991786805757cf16158810a1b6097ba61e Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Thu, 4 Aug 2022 20:56:57 +0700 Subject: [PATCH 028/156] update submodules --- Tweaks/YouPiP | 2 +- Tweaks/iSponsorBlock | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Tweaks/YouPiP b/Tweaks/YouPiP index a137b2e..27609f6 160000 --- a/Tweaks/YouPiP +++ b/Tweaks/YouPiP @@ -1 +1 @@ -Subproject commit a137b2eba5ddfa8b54e8df0f64f8e3d157523406 +Subproject commit 27609f6d0fbfb61d1d293ce2e67dc387b3d73bb3 diff --git a/Tweaks/iSponsorBlock b/Tweaks/iSponsorBlock index a936217..09a485c 160000 --- a/Tweaks/iSponsorBlock +++ b/Tweaks/iSponsorBlock @@ -1 +1 @@ -Subproject commit a936217c38ee0786ab5787935b905090056e717f +Subproject commit 09a485c8a085cc599c3ca2c1b3f2a377ec0d4711 From 93b7aa92587ab0e7396ef00ac13a910b23cf1757 Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Thu, 4 Aug 2022 23:20:29 +0700 Subject: [PATCH 029/156] update Settings.xm --- Settings.xm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Settings.xm b/Settings.xm index f731f7d..b1ac918 100644 --- a/Settings.xm +++ b/Settings.xm @@ -42,9 +42,9 @@ extern BOOL hidePaidPromotionCard(); YTSettingsViewController *delegate = [self valueForKey:@"_dataDelegate"]; NSBundle *tweakBundle = uYouPlusBundle(); - YTSettingsSectionItem *killApp = [%c(YTSettingsSectionItem) - itemWithTitle:LOC(@"KILL_YOUTUBE") - titleDescription:LOC(@"KILL_YOUTUBE_DESC") + YTSettingsSectionItem *killApp = [%c(YTSettingsSectionItem) // https://github.com/PoomSmart/YTABConfig/blob/b74d7f28151c407cffc21cce12908c49e9e65999/Tweak.x#L76 + itemWithTitle:LOC(@"KILL_APP") + titleDescription:LOC(@"KILL_APP_DESC") accessibilityIdentifier:nil detailTextBlock:nil selectBlock:^BOOL (YTSettingsCell *cell, NSUInteger arg1) { From 23ba60a3babb9c1a42dabe89dbf1207ae4c74c5b Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Fri, 5 Aug 2022 23:17:09 +0700 Subject: [PATCH 030/156] v17.30.3-2.1 (pre-release) --- README.md | 31 +++++++++++++++++++------------ 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 9393190..da4f1ca 100644 --- a/README.md +++ b/README.md @@ -21,7 +21,9 @@ - [PoomSmart](https://twitter.com/poomsmart) - the developer of many tweaks used by uYouPlus, see [Version info - Download](#download) for more details. -- [level3tjg](https://twitter.com/level3tjg) - for [YTNoHoverCards](https://github.com/level3tjg/YTNoHoverCards) and [YTMiniplayerEnabler](https://github.com/level3tjg/YTMiniplayerEnabler). +- [level3tjg](https://twitter.com/level3tjg) for [YTNoHoverCards](https://github.com/level3tjg/YTNoHoverCards), [YTMiniplayerEnabler](https://github.com/level3tjg/YTMiniplayerEnabler) and many hot patches for uYou. + +- [BandarHL](https://twitter.com/bandarhl) for a bunch of improvements. - [Lyvendia](https://github.com/Lyvendia/) for [YTSpeed](https://github.com/Lyvendia/YTSpeed/) @@ -29,6 +31,8 @@ - [theos team](https://github.com/theos/theos) for theos & theos-jailed. +- Thanks to all the translators who have contributed to uYouPlus. Your contribution is highly appreciated! + # Features 1. **uYou:** uYou has a ton of features that I can't list them all. Visit [here](https://miro92.com/repo/depictions/?p=com.miro.uyou) for more info! @@ -48,17 +52,15 @@ 7. **YTNoHoverCards:** offer an option to enable/disable the annoying suggested videos show up at the end of the videos. -8. **YTSystemAppearance**: sync the YouTube theme (dark/light) with the system theme. +8. **YTNoCheckLocalNetwork**: block the Local Network permission popup. -9. **YTNoCheckLocalNetwork**: block the Local Network permission popup. +9. **YouRememberCaption**: make YouTube remember your video caption setting (if not already). -10. **YouRememberCaption**: make YouTube remember your video caption setting (if not already). +10. **NoYTPremium**: remove YouTube Premium upshells. -11. **NoYTPremium**: remove YouTube Premium upshells. +11. **YTSpeed**: add 2.25, 2.5, 2.75, and 3x playback speed -12. **YTSpeed**: add 2.25, 2.5, 2.75, and 3x playback speed - -13. **YTMiniplayerEnabler**: enable Miniplayer for all YouTube videos. +12. **YTMiniplayerEnabler**: enable Miniplayer for all YouTube videos. @@ -76,16 +78,16 @@ - My official AltStore repo: https://qnblackcat.github.io/AltStore/ - - [Open in AltStore (v17.26.2-2.1)](https://tinyurl.com/2y86dh6b) - It will take a while to install because AltStore needs to download the IPA. + - [Open in AltStore (v17.30.3-2.1)](https://tinyurl.com/4usrjzzk) - It will take a while to install because AltStore needs to download the IPA. -- Version info: _(last update: Jul 11)_ +- Version info: _(last update: Aug 05)_
Expand | **Tweaks/App** | **Developer** | **Version** | **Open source** | | - | - | :-: | :-: | -| **YouTube** | Google Inc | 17.26.2 | ✖︎ | +| **YouTube** | Google Inc | 17.30.3 | ✖︎ | | [uYou](https://github.com/MiRO92/uYou-for-YouTube) | [MiRO92](https://twitter.com/miro92) | 2.1 | ✖︎ | | [Open in YouTube](https://github.com/CokePokes/YoutubeExtensions) | [CokePokes](https://github.com/CokePokes) | 1.2 | ✖︎ | | **iSponsorBlock** | [Galactic-Dev](https://github.com/Galactic-Dev) | 1.0-14 | [✔︎](https://github.com/Galactic-Dev/iSponsorBlock) | @@ -103,7 +105,6 @@ | **YTNoPaidPromo** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.0 | [✔︎](https://github.com/PoomSmart/YTNoPaidPromo) | | **YTAutoFullScreen** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.3 | [✔︎](https://github.com/PoomSmart/YTAutoFullScreen) | | **YouRememberCaption** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.0 | [✔︎](https://poomsmart.github.io/repo/depictions/youremembercaption.html) | -| **YTSystemAppearance** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.0 | [✔︎](https://poomsmart.github.io/repo/depictions/ytsystemappearance.html) | | **YTClassicVideoQuality** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.1 | [✔︎](https://github.com/PoomSmart/YTClassicVideoQuality) | | **Return YouTube Dislike** | [PoomSmart](https://twitter.com/poomsmart) | 1.6.5 | [✔︎](https://github.com/PoomSmart/Return-YouTube-Dislikes) | | **YTNoCheckLocalNetwork** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.2 | [✔︎](https://poomsmart.github.io/repo/depictions/ytnochecklocalnetwork.html) | @@ -130,6 +131,12 @@ See [Installation - Wiki](https://github.com/qnblackcat/uYouPlus/wiki/Installati
+
+ Bandar Alruwaili (BandarHL) + +- Paypal: https://www.paypal.com/paypalme/BandarHL +
+
Galactic-dev From 46b4ea6a270a0c99508b9717392d218788e2fde9 Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Fri, 5 Aug 2022 23:18:20 +0700 Subject: [PATCH 031/156] update submodules --- Tweaks/Alderis | 2 +- Tweaks/YouTubeHeader | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Tweaks/Alderis b/Tweaks/Alderis index 978ca5c..c5b3ed5 160000 --- a/Tweaks/Alderis +++ b/Tweaks/Alderis @@ -1 +1 @@ -Subproject commit 978ca5c48372c6047e06e26860839bf82a2e6da1 +Subproject commit c5b3ed5761b49542bd9bb8f011d97e68ab5ed293 diff --git a/Tweaks/YouTubeHeader b/Tweaks/YouTubeHeader index f2d6e1f..f2ab3b6 160000 --- a/Tweaks/YouTubeHeader +++ b/Tweaks/YouTubeHeader @@ -1 +1 @@ -Subproject commit f2d6e1fa9dd0e635a101d73eb1375b29b3561a87 +Subproject commit f2ab3b65626b4196264c98ca852b60af512821a9 From f275f72413baa3cc0c911dba5b6c3188b3f51e40 Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Fri, 5 Aug 2022 23:20:17 +0700 Subject: [PATCH 032/156] use iOS 15.5 SDK --- .github/workflows/buildapp.yml | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/.github/workflows/buildapp.yml b/.github/workflows/buildapp.yml index d707e72..4d40153 100644 --- a/.github/workflows/buildapp.yml +++ b/.github/workflows/buildapp.yml @@ -56,13 +56,10 @@ jobs: path: theos submodules: recursive - - name: Download iOS 15 SDK + - name: Download iOS 15.5 SDK run: | - curl -LO https://github.com/chrisharper22/sdks/archive/main.zip - TMP=$(mktemp -d) - unzip -qq main.zip -d $TMP - mv $TMP/sdks-main/*.sdk $THEOS/sdks - rm -r main.zip $TMP + svn checkout -q https://github.com/chrisharper22/sdks/trunk/iPhoneOS15.5.sdk + mv *.sdk $THEOS/sdks env: THEOS: ${{ github.workspace }}/theos From afb5cf1cb6e43f6997d5a412e15345b607d6dd55 Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Sat, 6 Aug 2022 11:28:53 +0700 Subject: [PATCH 033/156] update submodules --- Tweaks/Return-YouTube-Dislikes | 2 +- Tweaks/YTUHD | 2 +- Tweaks/YouPiP | 2 +- Tweaks/YouTubeHeader | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Tweaks/Return-YouTube-Dislikes b/Tweaks/Return-YouTube-Dislikes index 5f86ef7..deae67a 160000 --- a/Tweaks/Return-YouTube-Dislikes +++ b/Tweaks/Return-YouTube-Dislikes @@ -1 +1 @@ -Subproject commit 5f86ef7d91c984f3797902e230f3e542ba231b6d +Subproject commit deae67afeacfd6ab9ee12552a1eb2220c97f4607 diff --git a/Tweaks/YTUHD b/Tweaks/YTUHD index 5f4f9cf..b0d24c0 160000 --- a/Tweaks/YTUHD +++ b/Tweaks/YTUHD @@ -1 +1 @@ -Subproject commit 5f4f9cf1f051eb6d8774155a791b5c8522397321 +Subproject commit b0d24c0859f24c714334b60154ceaef9c09fb663 diff --git a/Tweaks/YouPiP b/Tweaks/YouPiP index 27609f6..a8c4224 160000 --- a/Tweaks/YouPiP +++ b/Tweaks/YouPiP @@ -1 +1 @@ -Subproject commit 27609f6d0fbfb61d1d293ce2e67dc387b3d73bb3 +Subproject commit a8c4224f7d44cb81efd9bf8075cd25aefa327f7f diff --git a/Tweaks/YouTubeHeader b/Tweaks/YouTubeHeader index f2ab3b6..291a6cf 160000 --- a/Tweaks/YouTubeHeader +++ b/Tweaks/YouTubeHeader @@ -1 +1 @@ -Subproject commit f2ab3b65626b4196264c98ca852b60af512821a9 +Subproject commit 291a6cfaa0d6c029790025d4b31c2104bb930c89 From e549c1e9e9a566a43fd3d4506297368087f5149d Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Sat, 6 Aug 2022 11:31:20 +0700 Subject: [PATCH 034/156] fixed missing scroll bar in Shorts (#343) --- uYouPlus.xm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/uYouPlus.xm b/uYouPlus.xm index 3325ff8..338d762 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -240,9 +240,13 @@ BOOL hidePaidPromotionCard() { - (void)showSurveyWithRenderer:(id)arg1 surveyParentResponder:(id)arg2 {} %end -// Enable Shorts scroll bar - @level3tjg - https://reddit.com/r/jailbreak/comments/v29yvk/_/iasl1l0/ +// Enable Shorts scroll bar - @PoomSmart & @level3tjg %hook YTReelPlayerViewController -- (BOOL)shouldEnablePlayerBar { return YES; } +- (BOOL)shouldAlwaysEnablePlayerBar { return YES; } +%end + +%hook YTInlinePlayerBarContainerView +- (void)setUserInteractionEnabled:(BOOL)enabled { %orig(YES); } %end // Workaround for issue #54 From f8336d035261065cc7035333781ee44980dd4778 Mon Sep 17 00:00:00 2001 From: moh-ter <109860711+moh-ter@users.noreply.github.com> Date: Sat, 6 Aug 2022 16:23:35 +0300 Subject: [PATCH 035/156] Fix Ar Translation + add "Kill App" translation Fix Ar Translation .. sorry for the mistake. + add translation for the new strings --- .../ar.lproj/Localizable.strings | 43 ++++++++----------- 1 file changed, 17 insertions(+), 26 deletions(-) diff --git a/lang/uYouPlus.bundle/ar.lproj/Localizable.strings b/lang/uYouPlus.bundle/ar.lproj/Localizable.strings index 2b13147..90d66f9 100644 --- a/lang/uYouPlus.bundle/ar.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/ar.lproj/Localizable.strings @@ -1,46 +1,37 @@ -// How to translate uYouPlus to your languate: -// -// 1. Fork uYouPlus repo -// 2. Duplicate the template.lproj folder, and edit the duplicated folder's name to your .lproj id. -// For example: for Russia. For more details, visit: https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes -// 3. Translate each line below after each = -// 4. Open a Pull Request -// -// If your language already exists then feel free to check it and/or improve it! -// You can also add your localiztion to YouPiP here, the process is the same -// https://github.com/PoomSmart/YouPiP/tree/main/layout/Library/Application%20Support/YouPiP.bundle -// // Settings -"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "إخفاء زر "السابق" و"التالي""; -"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "إخفاء زرّي "السابق" و"التالي" من أزرار التحكم على الفيديو."; +"KILL_APP" = "إغلاق تطبيق يوتيوب"; +"KILL_APP_DESC" = "المس هنا لإغلاق تطبيق يوتيوب!"; -"YT_MINIPLAYER" = "السماح بـ"المشغل المصغّر" لكل فيديوهات يوتيوب"; +"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "إخفاء زر السابق والتالي"; +"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "إخفاء زرّي السابق والتالي من أزرار التحكم على الفيديو."; + +"YT_MINIPLAYER" = "السماح بالمشغل المصغّر لكل فيديوهات يوتيوب"; "YT_MINIPLAYER_DESC" = "عند تصغير فيديوهات الأطفال مثلاً (قبل إغلاق المقطع)."; "CAST_CONFIRM" = "التأكيد قبل البث (أداة YTCastConfirm)"; "CAST_CONFIRM_DESC" = "إظهار تنبيه للتأكيد قبل البث، من أجل منع البث للتلفاز عن طريق الخطأ."; -"HIDE_HOVER_CARD" = "إخفاء صور المقاطع الأخرى في نهاية المقاطع (YTNoHoverCards)"; +"HIDE_HOVER_CARD" = "إخفاء صور المقاطع الأخرى في نهاية المقاطع (أداة YTNoHoverCards)"; "HIDE_HOVER_CARD_DESC" = "إخفاء الصور المصغرة الظاهرة على مشغل الفيديو في نهاية المقطع."; -"NEW_MINIPLAYER_STYLE" = "تغيير شكل المشغّل المصغر (BigYTMiniPlayer)"; +"NEW_MINIPLAYER_STYLE" = "تغيير شكل المشغّل المصغر (أداة BigYTMiniPlayer)"; "NEW_MINIPLAYER_STYLE_DESC" = "تغيير شكل المشغّل المصغر في الآيفون إلى نفس شكله في الآيباد - تتطلب إغلاق التطبيق وإعادة فتحه."; -"YT_RE_EXPLORE" = "استبدال تبويب Shorts بتبويب Explore (YTReExplore)"; +"YT_RE_EXPLORE" = "استبدال تبويب Shorts بتبويب Explore (أداة YTReExplore)"; "YT_RE_EXPLORE_DESC" = " تتطلب إغلاق التطبيق وإعادة فتحه."; -"HIDE_SUBTITLES_BUTTON" = "إخفاء زر "الترجمة""; -"HIDE_SUBTITLES_BUTTON_DESC" = "إخفاء زر "الترجمة" من أزرار التحكم على الفيديو."; +"HIDE_SUBTITLES_BUTTON" = "إخفاء زر الترجمة"; +"HIDE_SUBTITLES_BUTTON_DESC" = "إخفاء زر الترجمة من أزرار التحكم على الفيديو."; -"HIDE_AUTOPLAY_SWITCH" = "إخفاء زر "التشغيل التلقائي""; -"HIDE_AUTOPLAY_SWITCH_DESC" = "إخفاء زر "التشغيل التلقائي" من أزرار التحكم على الفيديو."; +"HIDE_AUTOPLAY_SWITCH" = "إخفاء زر التشغيل التلقائي"; +"HIDE_AUTOPLAY_SWITCH_DESC" = "إخفاء زر التشغيل التلقائي من أزرار التحكم على الفيديو."; -"AUTO_FULLSCREEN" = "كامل الشاشة تلقائياً (YTAutoFullScreen)"; +"AUTO_FULLSCREEN" = "كامل الشاشة تلقائياً (أداة YTAutoFullScreen)"; "AUTO_FULLSCREEN_DESC" = "تشغيل الفيديوهات تلقائياً بكامل الشاشة."; "HIDE_HUD_MESSAGES" = "إخفاء رسائل المعلومات"; -"HIDE_HUD_MESSAGES_DESC" = "مثلاً: تم إيقاف الترحمة..."; +"HIDE_HUD_MESSAGES_DESC" = "مثلاً: تم إيقاف الترجمة..."; "OLED_DARKMODE" = "وضغ داكن OLED (ميزة تجريبية)"; "OLED_DARKMODE_DESC" = "قد لا تعمل في كل الحالات. يجب إعادة تشغيل التطبيق عند تشغيل أو إيقاف هذه الخاصية."; @@ -48,8 +39,8 @@ "OLED_KEYBOARD" = "لوحة مفاتيح داكنة OLED (ميزة تجريبية)"; "OLED_KEYBOARD_DESC" = "قد لا تعمل في كل الحالات. يجب إعادة تشغيل التطبيق عند تشغيل أو إيقاف هذه الخاصية."; -"HIDE_PAID_PROMOTION_CARDS" = "إخفاء شريط "الترويج المدفوع""; -"HIDE_PAID_PROMOTION_CARDS_DESC" = "إخفاء عبارة "يتضمن ترويجاً مدفوعاً" الظاهرة على بعض الفيديوهات."; +"HIDE_PAID_PROMOTION_CARDS" = "إخفاء شريط الترويج المدفوع"; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "إخفاء عبارة يتضمن ترويجاً مدفوعاً الظاهرة على بعض الفيديوهات."; // YTCastConfirm "CASTING" = "البث"; From 9bd31e7189d980157dea5dcb80b4ff1a409715c6 Mon Sep 17 00:00:00 2001 From: Thunderz2016 <1031197842@qq.com> Date: Tue, 9 Aug 2022 23:16:28 -0700 Subject: [PATCH 036/156] Added Simplified Chinese translation --- .../zh_cn.lproj/Localizable.strings | 61 +++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings diff --git a/lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings b/lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings new file mode 100644 index 0000000..e734061 --- /dev/null +++ b/lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings @@ -0,0 +1,61 @@ +// How to translate uYouPlus to your language: +// +// 1. Fork uYouPlus repo +// 2. Duplicate the template.lproj folder, and edit the duplicated folder's name to your .lproj id. +// For example: for Russia. For more details, visit: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes +// 3. Translate each line below after each = +// 4. Open a Pull Request +// +// If your language already exists then feel free to check it and/or improve it! +// You can also add your localization to YouPiP here, the process is the same +// https://github.com/PoomSmart/YouPiP/tree/main/layout/Library/Application%20Support/YouPiP.bundle +// +// Settings + +"KILL_APP" = "关闭YouTube"; +"KILL_APP_DESC" = "点击此处关闭YouTube!"; + +"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "隐藏上一个/下一个按钮"; +"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "隐藏视频播放器控制界面上的上一个/下一个按钮。"; + +"YT_MINIPLAYER" = "为所有YouTube视频启用迷你播放器"; +"YT_MINIPLAYER_DESC" = "例如:面向儿童的视频。"; + +"CAST_CONFIRM" = "投屏前确认 (YTCastConfirm)"; +"CAST_CONFIRM_DESC" = "在投屏前显示确认对话框以防意外劫屏。"; + +"HIDE_HOVER_CARD" = "隐藏片尾画面悬浮卡片 (YTNoHoverCards)"; +"HIDE_HOVER_CARD_DESC" = "隐藏视频结尾处的创作者片尾画面元素(缩略图)。"; + +"NEW_MINIPLAYER_STYLE" = "新迷你播放器风格 (BigYTMiniPlayer)"; +"NEW_MINIPLAYER_STYLE_DESC" = "更改本设置需要重启App。"; + +"YT_RE_EXPLORE" = "将Shorts选项卡替换成探索选项卡 (YTReExplore)"; +"YT_RE_EXPLORE_DESC" = "更改本设置需要重启App。"; + +"HIDE_SUBTITLES_BUTTON" = "隐藏字幕按钮"; +"HIDE_SUBTITLES_BUTTON_DESC" = "隐藏视频播放器控制界面上的字幕按钮。"; + +"HIDE_AUTOPLAY_SWITCH" = "隐藏自动播放模式开关"; +"HIDE_AUTOPLAY_SWITCH_DESC" = "隐藏视频播放器控制界面上的自动播放开关。"; + +"AUTO_FULLSCREEN" = "自动全屏 (YTAutoFullScreen)"; +"AUTO_FULLSCREEN_DESC" = "自动全屏播放视频。"; + +"HIDE_HUD_MESSAGES" = "隐藏系统提醒"; +"HIDE_HUD_MESSAGES_DESC" = "例如:\"已启用/停用字幕\"、\"已开启/关闭视频循环播放\"等。"; + +"OLED_DARKMODE" = "OLED 深色模式(实验性功能)"; +"OLED_DARKMODE_DESC" = "在某些情况下可能不会正常工作;更改本设置需要重启App。"; + +"OLED_KEYBOARD" = "OLED 键盘(实验性功能)"; +"OLED_KEYBOARD_DESC" = "在某些情况下可能不会正常工作;更改本设置需要重启App。"; + +"HIDE_PAID_PROMOTION_CARDS" = "隐藏付费宣传内容提醒横幅"; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "隐藏出现在部分视频中的\"包含付费宣传内容\"横幅。"; + +// YTCastConfirm +"CASTING" = "正在投屏"; +"MSG_ARE_YOU_SURE" = "您确定要开始投屏吗?"; +"MSG_YES" = "确定"; +"MSG_CANCEL" = "取消"; \ No newline at end of file From 0db3c368a0a867f23b82e04d567c1484e914bdd7 Mon Sep 17 00:00:00 2001 From: Thunderz2016 <1031197842@qq.com> Date: Tue, 9 Aug 2022 23:21:20 -0700 Subject: [PATCH 037/156] Added Simplified Chinese translation Deleted comments that contain instructions to create translations. --- .../zh_cn.lproj/Localizable.strings | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) diff --git a/lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings b/lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings index e734061..164c71c 100644 --- a/lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings @@ -1,15 +1,3 @@ -// How to translate uYouPlus to your language: -// -// 1. Fork uYouPlus repo -// 2. Duplicate the template.lproj folder, and edit the duplicated folder's name to your .lproj id. -// For example: for Russia. For more details, visit: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes -// 3. Translate each line below after each = -// 4. Open a Pull Request -// -// If your language already exists then feel free to check it and/or improve it! -// You can also add your localization to YouPiP here, the process is the same -// https://github.com/PoomSmart/YouPiP/tree/main/layout/Library/Application%20Support/YouPiP.bundle -// // Settings "KILL_APP" = "关闭YouTube"; @@ -58,4 +46,4 @@ "CASTING" = "正在投屏"; "MSG_ARE_YOU_SURE" = "您确定要开始投屏吗?"; "MSG_YES" = "确定"; -"MSG_CANCEL" = "取消"; \ No newline at end of file +"MSG_CANCEL" = "取消"; From b6304bf20a04e5a99c39229f874bf0d882216b7e Mon Sep 17 00:00:00 2001 From: Thunderz2016 <1031197842@qq.com> Date: Tue, 9 Aug 2022 23:32:07 -0700 Subject: [PATCH 038/156] Added Simplified Chinese translation Minor grammar improvements. --- lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings b/lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings index 164c71c..4e3b7a4 100644 --- a/lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings @@ -16,10 +16,10 @@ "HIDE_HOVER_CARD_DESC" = "隐藏视频结尾处的创作者片尾画面元素(缩略图)。"; "NEW_MINIPLAYER_STYLE" = "新迷你播放器风格 (BigYTMiniPlayer)"; -"NEW_MINIPLAYER_STYLE_DESC" = "更改本设置需要重启App。"; +"NEW_MINIPLAYER_STYLE_DESC" = "更改本设置后需要重启App。"; "YT_RE_EXPLORE" = "将Shorts选项卡替换成探索选项卡 (YTReExplore)"; -"YT_RE_EXPLORE_DESC" = "更改本设置需要重启App。"; +"YT_RE_EXPLORE_DESC" = "更改本设置后需要重启App。"; "HIDE_SUBTITLES_BUTTON" = "隐藏字幕按钮"; "HIDE_SUBTITLES_BUTTON_DESC" = "隐藏视频播放器控制界面上的字幕按钮。"; @@ -34,10 +34,10 @@ "HIDE_HUD_MESSAGES_DESC" = "例如:\"已启用/停用字幕\"、\"已开启/关闭视频循环播放\"等。"; "OLED_DARKMODE" = "OLED 深色模式(实验性功能)"; -"OLED_DARKMODE_DESC" = "在某些情况下可能不会正常工作;更改本设置需要重启App。"; +"OLED_DARKMODE_DESC" = "在某些情况下可能不会正常工作。更改本设置后需要重启App。"; "OLED_KEYBOARD" = "OLED 键盘(实验性功能)"; -"OLED_KEYBOARD_DESC" = "在某些情况下可能不会正常工作;更改本设置需要重启App。"; +"OLED_KEYBOARD_DESC" = "在某些情况下可能不会正常工作。更改本设置后需要重启App。"; "HIDE_PAID_PROMOTION_CARDS" = "隐藏付费宣传内容提醒横幅"; "HIDE_PAID_PROMOTION_CARDS_DESC" = "隐藏出现在部分视频中的\"包含付费宣传内容\"横幅。"; From 7ff88f4106efc412f437b0ef11c4b125d77bfa43 Mon Sep 17 00:00:00 2001 From: fefifofum Date: Wed, 10 Aug 2022 10:36:01 +0200 Subject: [PATCH 039/156] Add Spanish translation --- .../es.lproj/Localizable.strings | 61 +++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 lang/uYouPlus.bundle/es.lproj/Localizable.strings diff --git a/lang/uYouPlus.bundle/es.lproj/Localizable.strings b/lang/uYouPlus.bundle/es.lproj/Localizable.strings new file mode 100644 index 0000000..0baf58f --- /dev/null +++ b/lang/uYouPlus.bundle/es.lproj/Localizable.strings @@ -0,0 +1,61 @@ +// How to translate uYouPlus to your language: +// +// 1. Fork uYouPlus repo +// 2. Duplicate the template.lproj folder, and edit the duplicated folder's name to your .lproj id. +// For example: for Russia. For more details, visit: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes +// 3. Translate each line below after each = +// 4. Open a Pull Request +// +// If your language already exists then feel free to check it and/or improve it! +// You can also add your localization to YouPiP here, the process is the same +// https://github.com/PoomSmart/YouPiP/tree/main/layout/Library/Application%20Support/YouPiP.bundle +// +// Settings + +"KILL_APP" = "Cerrar YouTube"; +"KILL_APP_DESC" = "Toca aquí para cerrar YouTube!"; + +"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Ocultar el botón de Anterior y Siguiente"; +"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "Ocultar el botón de Anterior y Siguiente en los botones superpuestos."; + +"YT_MINIPLAYER" = "Activar el minirreproductor para todos los vídeos de YouTube"; +"YT_MINIPLAYER_DESC" = "Vídeos infantiles por ejemplo."; + +"CAST_CONFIRM" = "Alerta de confirmación antes de Enviar contenido (YTCastConfirm)"; +"CAST_CONFIRM_DESC" = "Mostrar una alerta de confirmación antes de Enviar contenido para prevenir el secuestro accidental del TV."; + +"HIDE_HOVER_CARD" = "Ocultar tarjetas flotantes en las pantallas finales (YTNoHoverCards)"; +"HIDE_HOVER_CARD_DESC" = "Ocultar tarjetas flotantes del creador (miniaturas) al final de los vídeos."; + +"NEW_MINIPLAYER_STYLE" = "Nuevo estilo de barra del minirreproductor (BigYTMiniPlayer)"; +"NEW_MINIPLAYER_STYLE_DESC" = "Requiere reiniciar la app."; + +"YT_RE_EXPLORE" = "Reemplazar pestaña de Cortos con pestaña de Explorar (YTReExplore)"; +"YT_RE_EXPLORE_DESC" = "Requiere reiniciar la app."; + +"HIDE_SUBTITLES_BUTTON" = "Ocultar botón de Subtítulos"; +"HIDE_SUBTITLES_BUTTON_DESC" = "Ocultar el botón de Subtítulos en los botones superpuestos."; + +"HIDE_AUTOPLAY_SWITCH" = "Ocultar interruptor de Reproducir automáticamente"; +"HIDE_AUTOPLAY_SWITCH_DESC" = "Ocultar el interruptor de Reproducir automáticamente en los botones superpuestos."; + +"AUTO_FULLSCREEN" = "Pantalla completa automática (YTAutoFullScreen)"; +"AUTO_FULLSCREEN_DESC" = "Reproducir vídeos en pantalla completa automáticamente."; + +"HIDE_HUD_MESSAGES" = "Ocultar mensajes HUD"; +"HIDE_HUD_MESSAGES_DESC" = "Ejemplo: CC está activado/desactivado, Vídeo en bucle está activado,..."; + +"OLED_DARKMODE" = "Modo oscuro OLED (Experimental)"; +"OLED_DARKMODE_DESC" = "Puede no funcionar correctamente en algunos casos. Requiere reiniciar la app después de activar/desactivar esta opción."; + +"OLED_KEYBOARD" = "Teclado OLED (Experimental)"; +"OLED_KEYBOARD_DESC" = "Puede no funcionar correctamente en algunos casos. Requiere reiniciar la app."; + +"HIDE_PAID_PROMOTION_CARDS" = "Ocultar banner de contenido promocional"; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "Ocultar el banner de 'Incluye contenido promocional' en algunos vídeos."; + +// YTCastConfirm +"CASTING" = "Enviar contenido"; +"MSG_ARE_YOU_SURE" = "¿Estás seguro de que deseas Enviar contenido?"; +"MSG_YES" = "Sí"; +"MSG_CANCEL" = "Cancelar"; From 3bd1914a3674420f03bf1773bc0b15c6a7782055 Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Wed, 10 Aug 2022 21:30:43 +0700 Subject: [PATCH 040/156] update submodules --- Tweaks/YouTubeHeader | 2 +- Tweaks/iSponsorBlock | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Tweaks/YouTubeHeader b/Tweaks/YouTubeHeader index 291a6cf..08eeeb7 160000 --- a/Tweaks/YouTubeHeader +++ b/Tweaks/YouTubeHeader @@ -1 +1 @@ -Subproject commit 291a6cfaa0d6c029790025d4b31c2104bb930c89 +Subproject commit 08eeeb7a9c096694b681a05d216e359402d77858 diff --git a/Tweaks/iSponsorBlock b/Tweaks/iSponsorBlock index 09a485c..82d7178 160000 --- a/Tweaks/iSponsorBlock +++ b/Tweaks/iSponsorBlock @@ -1 +1 @@ -Subproject commit 09a485c8a085cc599c3ca2c1b3f2a377ec0d4711 +Subproject commit 82d717878f2056cb40977a96ee855ba01f00f2bb From edc1ac39124e2d06d6179420d4df74444a214daa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20=C4=90=E1=BA=A1t?= <52943116+qnblackcat@users.noreply.github.com> Date: Wed, 10 Aug 2022 21:37:47 +0700 Subject: [PATCH 041/156] Update Localizable.strings --- lang/uYouPlus.bundle/es.lproj/Localizable.strings | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/lang/uYouPlus.bundle/es.lproj/Localizable.strings b/lang/uYouPlus.bundle/es.lproj/Localizable.strings index 0baf58f..55976c6 100644 --- a/lang/uYouPlus.bundle/es.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/es.lproj/Localizable.strings @@ -1,15 +1,3 @@ -// How to translate uYouPlus to your language: -// -// 1. Fork uYouPlus repo -// 2. Duplicate the template.lproj folder, and edit the duplicated folder's name to your .lproj id. -// For example: for Russia. For more details, visit: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes -// 3. Translate each line below after each = -// 4. Open a Pull Request -// -// If your language already exists then feel free to check it and/or improve it! -// You can also add your localization to YouPiP here, the process is the same -// https://github.com/PoomSmart/YouPiP/tree/main/layout/Library/Application%20Support/YouPiP.bundle -// // Settings "KILL_APP" = "Cerrar YouTube"; From d3a347a9141c9a9a656928d587eab346fff47436 Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Wed, 10 Aug 2022 21:41:59 +0700 Subject: [PATCH 042/156] add Japan localization, credit: @Haerumastu - Twitter --- .../ja.lproj/Localizable.strings | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 lang/uYouPlus.bundle/ja.lproj/Localizable.strings diff --git a/lang/uYouPlus.bundle/ja.lproj/Localizable.strings b/lang/uYouPlus.bundle/ja.lproj/Localizable.strings new file mode 100644 index 0000000..2d2cafe --- /dev/null +++ b/lang/uYouPlus.bundle/ja.lproj/Localizable.strings @@ -0,0 +1,49 @@ +// Settings + +"KILL_APP" = "YouTubeを閉じる"; +"KILL_APP_DESC" = "ここをタップしてYouTubeを終了できます!"; + +"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "前後の動画のボタンを非表示"; +"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "コントロールのオーバーレイで前後の動画のボタンを非表示にします。"; + +"YT_MINIPLAYER" = "すべての動画でミニプレーヤーを有効にする"; +"YT_MINIPLAYER_DESC" = "例: 子供向けの動画"; + +"CAST_CONFIRM" = "キャストする前に確認画面を表示する (YTCastConfirm)"; +"CAST_CONFIRM_DESC" = "誤ってテレビにキャストしないよう、前に確認画面を表示します。"; + +"HIDE_HOVER_CARD" = "動画終わりのホバーカードを非表示 (YTNoHoverCards)"; +"HIDE_HOVER_CARD_DESC" = "動画終わりのホバーカード(サムネ)を非表示にします。"; + +"NEW_MINIPLAYER_STYLE" = "新しいミニプレーヤー・バーを使う (BigYTMiniPlayer)"; +"NEW_MINIPLAYER_STYLE_DESC" = "アプリを再起動してください。"; + +"YT_RE_EXPLORE" = "ショートのタブを「見つける」タブに置き換える (YTReExplore)"; +"YT_RE_EXPLORE_DESC" = "アプリを再起動してください。"; + +"HIDE_SUBTITLES_BUTTON" = "字幕ボタンを非表示"; +"HIDE_SUBTITLES_BUTTON_DESC" = "動画コントロールのオーバーレイから字幕ボタンを非表示にします。"; + +"HIDE_AUTOPLAY_SWITCH" = "自動再生ボタンを非表示"; +"HIDE_AUTOPLAY_SWITCH_DESC" = "動画コントロールのオーバーレイから自動再生ボタンを非表示にします。"; + +"AUTO_FULLSCREEN" = "自動でフルスクリーンにする (YTAutoFullScreen)"; +"AUTO_FULLSCREEN_DESC" = "動画を自動でフルスクリーンにします。"; + +"HIDE_HUD_MESSAGES" = "HUDのメッセージを非表示"; +"HIDE_HUD_MESSAGES_DESC" = "例: 字幕がon/offです、ループ再生は有効です 等"; + +"OLED_DARKMODE" = "有機ELダークモード (実験的機能)"; +"OLED_DARKMODE_DESC" = "一部では正しく動作しない可能性があります。 この設定を変更したあとはアプリを再起動してください。"; + +"OLED_KEYBOARD" = "有機ELキーボード (実験的機能)"; +"OLED_KEYBOARD_DESC" = "一部では正しく動作しない可能性があります。 この設定を変更したあとはアプリを再起動してください。"; + +"HIDE_PAID_PROMOTION_CARDS" = "「プロモーションを含む」 のバナーを非表示"; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "一部の動画にある「プロモーションを含む」 のバナーを非表示にします。"; + +// YTCastConfirm +"CASTING" = "キャスト"; +"MSG_ARE_YOU_SURE" = "本当にキャストを開始しますか?"; +"MSG_YES" = "はい"; +"MSG_CANCEL" = "キャンセル"; \ No newline at end of file From 3cabc4405d15a563b792dcc10b7a67f223c9da2e Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Fri, 12 Aug 2022 22:00:36 +0700 Subject: [PATCH 043/156] update uYouPlus.xm --- uYouPlus.xm | 41 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 40 insertions(+), 1 deletion(-) diff --git a/uYouPlus.xm b/uYouPlus.xm index 338d762..3cc13e5 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -12,6 +12,7 @@ #import "Tweaks/YouTubeHeader/YTIPivotBarRenderer.h" #import "Tweaks/YouTubeHeader/YTIBrowseRequest.h" #import "Tweaks/YouTubeHeader/YTCommonColorPalette.h" +#import "Tweaks/YouTubeHeader/YTColorPalette.h" #import "Tweaks/YouTubeHeader/ASCollectionView.h" #import "Tweaks/YouTubeHeader/YTPlayerOverlay.h" #import "Tweaks/YouTubeHeader/YTPlayerOverlayProvider.h" @@ -211,6 +212,7 @@ BOOL hidePaidPromotionCard() { // YouRememberCaption: https://poomsmart.github.io/repo/depictions/youremembercaption.html %hook YTColdConfig - (BOOL)respectDeviceCaptionSetting { return NO; } +- (BOOL)shouldUseAppThemeSetting { return YES; } // v16.xx %end // NOYTPremium - https://github.com/PoomSmart/NoYTPremium/ @@ -240,7 +242,7 @@ BOOL hidePaidPromotionCard() { - (void)showSurveyWithRenderer:(id)arg1 surveyParentResponder:(id)arg2 {} %end -// Enable Shorts scroll bar - @PoomSmart & @level3tjg +// Enable Shorts scroll bar - @PoomSmart %hook YTReelPlayerViewController - (BOOL)shouldAlwaysEnablePlayerBar { return YES; } %end @@ -249,6 +251,10 @@ BOOL hidePaidPromotionCard() { - (void)setUserInteractionEnabled:(BOOL)enabled { %orig(YES); } %end +%hook YTReelPlayerViewControllerSub // v16.42.3 - @level3tjg: https://reddit.com/r/jailbreak/comments/v29yvk/_/iasl1l0/ + - (BOOL)shouldEnablePlayerBar { return YES; } +%end + // Workaround for issue #54 %hook YTMainAppVideoPlayerOverlayViewController - (void)updateRelatedVideos { @@ -405,6 +411,39 @@ UIColor* raisedColor = [UIColor colorWithRed:0.035 green:0.035 blue:0.035 alpha: } %end +%hook YTColorPalette // v16.42.3 +- (UIColor *)brandBackgroundSolid { + if (self.pageStyle == 1) { + return [UIColor blackColor]; + } + return %orig; +} +- (UIColor *)brandBackgroundPrimary { + if (self.pageStyle == 1) { + return [UIColor blackColor]; + } + return %orig; +} +- (UIColor *)brandBackgroundSecondary { + if (self.pageStyle == 1) { + return [[UIColor blackColor] colorWithAlphaComponent:0.9]; + } + return %orig; +} +- (UIColor *)staticBrandBlack { + if (self.pageStyle == 1) { + return [UIColor blackColor]; + } + return %orig; +} +- (UIColor *)generalBackgroundA { + if (self.pageStyle == 1) { + return [UIColor blackColor]; + } + return %orig; +} +%end + // Account view controller %hook YTAccountPanelBodyViewController - (UIColor *)backgroundColor:(NSInteger)pageStyle { From d53b400235cfec0db0643d6ea729e4eedb902c0c Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Fri, 12 Aug 2022 22:00:53 +0700 Subject: [PATCH 044/156] v17.31.4-2.1 --- README.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index da4f1ca..82cb1a9 100644 --- a/README.md +++ b/README.md @@ -78,26 +78,26 @@ - My official AltStore repo: https://qnblackcat.github.io/AltStore/ - - [Open in AltStore (v17.30.3-2.1)](https://tinyurl.com/4usrjzzk) - It will take a while to install because AltStore needs to download the IPA. + - [Open in AltStore (v17.31.4-2.1)](https://tinyurl.com/2p99amjz) - It will take a while to install because AltStore needs to download the IPA. -- Version info: _(last update: Aug 05)_ +- Version info: _(last update: Aug 12)_
Expand | **Tweaks/App** | **Developer** | **Version** | **Open source** | | - | - | :-: | :-: | -| **YouTube** | Google Inc | 17.30.3 | ✖︎ | +| **YouTube** | Google Inc | 17.31.4 | ✖︎ | | [uYou](https://github.com/MiRO92/uYou-for-YouTube) | [MiRO92](https://twitter.com/miro92) | 2.1 | ✖︎ | | [Open in YouTube](https://github.com/CokePokes/YoutubeExtensions) | [CokePokes](https://github.com/CokePokes) | 1.2 | ✖︎ | -| **iSponsorBlock** | [Galactic-Dev](https://github.com/Galactic-Dev) | 1.0-14 | [✔︎](https://github.com/Galactic-Dev/iSponsorBlock) | +| **iSponsorBlock** | [Galactic-Dev](https://github.com/Galactic-Dev) | 1.0-15 | [✔︎](https://github.com/Galactic-Dev/iSponsorBlock) | | **BigYTMiniPlayer** | [Galactic-Dev](https://github.com/Galactic-Dev) | 1.0-1 | [✔︎](https://github.com/Galactic-Dev/BigYTMiniPlayer) | | **YTNoHoverCards** | [level3tjg](https://twitter.com/level3tjg) | 0.0.3 | [✔︎](https://github.com/level3tjg/YTNoHoverCards) | | **YTMiniplayerEnabler** | [level3tjg](https://twitter.com/level3tjg) | 0.0.2 | [✔︎](https://github.com/level3tjg/YTMiniplayerEnabler) | | **YTSpeed** | [Lyvendia](https://github.com/Lyvendia) | 1.0.1 | [✔︎](https://github.com/Lyvendia/YTSpeed) | | **YTCastConfirm** | [JamieBerghmans](https://github.com/JamieBerghmans) | 1.0.0 | [✔︎](https://github.com/JamieBerghmans/YTCastConfirm) | | **Alderis Color Picker** | [HASHBANG Productions](https://github.com/hbang) | 1.2| [✔︎](https://github.com/hbang/Alderis) | -| **YTUHD** | [PoomSmart](https://twitter.com/poomsmart) | 1.2.8 | [✔︎](https://github.com/PoomSmart/YTUHD) | +| **YTUHD** | [PoomSmart](https://twitter.com/poomsmart) | 1.2.9 | [✔︎](https://github.com/PoomSmart/YTUHD) | | **YouPiP** | [PoomSmart](https://twitter.com/poomsmart) | 1.7.7 | [✔︎](https://github.com/PoomSmart/YouPiP) | | **IAmYouTube** | [PoomSmart](https://twitter.com/poomsmart) | 1.2.0 | [✔︎](https://github.com/PoomSmart/IAmYouTube) | | **YTReExplore** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.2 | [✔︎](https://github.com/PoomSmart/YTReExplore) | @@ -106,7 +106,7 @@ | **YTAutoFullScreen** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.3 | [✔︎](https://github.com/PoomSmart/YTAutoFullScreen) | | **YouRememberCaption** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.0 | [✔︎](https://poomsmart.github.io/repo/depictions/youremembercaption.html) | | **YTClassicVideoQuality** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.1 | [✔︎](https://github.com/PoomSmart/YTClassicVideoQuality) | -| **Return YouTube Dislike** | [PoomSmart](https://twitter.com/poomsmart) | 1.6.5 | [✔︎](https://github.com/PoomSmart/Return-YouTube-Dislikes) | +| **Return YouTube Dislike** | [PoomSmart](https://twitter.com/poomsmart) | 1.6.6 | [✔︎](https://github.com/PoomSmart/Return-YouTube-Dislikes) | | **YTNoCheckLocalNetwork** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.2 | [✔︎](https://poomsmart.github.io/repo/depictions/ytnochecklocalnetwork.html) |
From c8a4acfff06c4c09a44b146ebe1a958b8edc6f01 Mon Sep 17 00:00:00 2001 From: Sh1hu <110207587+Sh1hu@users.noreply.github.com> Date: Sat, 13 Aug 2022 09:56:20 +0900 Subject: [PATCH 045/156] Update Japanese localization MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The correct Japanese translation of the "Explore" tab is "探索". Other translation optimizations were made. --- .../ja.lproj/Localizable.strings | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/lang/uYouPlus.bundle/ja.lproj/Localizable.strings b/lang/uYouPlus.bundle/ja.lproj/Localizable.strings index 2d2cafe..ecbeeac 100644 --- a/lang/uYouPlus.bundle/ja.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/ja.lproj/Localizable.strings @@ -1,25 +1,25 @@ // Settings "KILL_APP" = "YouTubeを閉じる"; -"KILL_APP_DESC" = "ここをタップしてYouTubeを終了できます!"; +"KILL_APP_DESC" = "ここをタップしてYouTubeを終了できます!"; "HIDE_PREVIOUS_AND_NEXT_BUTTON" = "前後の動画のボタンを非表示"; "HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "コントロールのオーバーレイで前後の動画のボタンを非表示にします。"; "YT_MINIPLAYER" = "すべての動画でミニプレーヤーを有効にする"; -"YT_MINIPLAYER_DESC" = "例: 子供向けの動画"; +"YT_MINIPLAYER_DESC" = "例: 子ども向けの動画"; "CAST_CONFIRM" = "キャストする前に確認画面を表示する (YTCastConfirm)"; "CAST_CONFIRM_DESC" = "誤ってテレビにキャストしないよう、前に確認画面を表示します。"; "HIDE_HOVER_CARD" = "動画終わりのホバーカードを非表示 (YTNoHoverCards)"; -"HIDE_HOVER_CARD_DESC" = "動画終わりのホバーカード(サムネ)を非表示にします。"; +"HIDE_HOVER_CARD_DESC" = "動画の最後のホバーカード(サムネイル)を非表示にします。"; "NEW_MINIPLAYER_STYLE" = "新しいミニプレーヤー・バーを使う (BigYTMiniPlayer)"; -"NEW_MINIPLAYER_STYLE_DESC" = "アプリを再起動してください。"; +"NEW_MINIPLAYER_STYLE_DESC" = "アプリの再起動が必要です。"; -"YT_RE_EXPLORE" = "ショートのタブを「見つける」タブに置き換える (YTReExplore)"; -"YT_RE_EXPLORE_DESC" = "アプリを再起動してください。"; +"YT_RE_EXPLORE" = "ショートタブを探索タブに置き換える (YTReExplore)"; +"YT_RE_EXPLORE_DESC" = "アプリの再起動が必要です。"; "HIDE_SUBTITLES_BUTTON" = "字幕ボタンを非表示"; "HIDE_SUBTITLES_BUTTON_DESC" = "動画コントロールのオーバーレイから字幕ボタンを非表示にします。"; @@ -31,19 +31,19 @@ "AUTO_FULLSCREEN_DESC" = "動画を自動でフルスクリーンにします。"; "HIDE_HUD_MESSAGES" = "HUDのメッセージを非表示"; -"HIDE_HUD_MESSAGES_DESC" = "例: 字幕がon/offです、ループ再生は有効です 等"; +"HIDE_HUD_MESSAGES_DESC" = "例: 字幕がオン/オフになりました、ループ再生はオンになっています 等"; "OLED_DARKMODE" = "有機ELダークモード (実験的機能)"; -"OLED_DARKMODE_DESC" = "一部では正しく動作しない可能性があります。 この設定を変更したあとはアプリを再起動してください。"; +"OLED_DARKMODE_DESC" = "一部では正しく動作しない可能性があります。この設定を変更したあとはアプリの再起動が必要です。"; "OLED_KEYBOARD" = "有機ELキーボード (実験的機能)"; -"OLED_KEYBOARD_DESC" = "一部では正しく動作しない可能性があります。 この設定を変更したあとはアプリを再起動してください。"; +"OLED_KEYBOARD_DESC" = "一部では正しく動作しない可能性があります。この設定を変更したあとはアプリの再起動が必要です。"; -"HIDE_PAID_PROMOTION_CARDS" = "「プロモーションを含む」 のバナーを非表示"; -"HIDE_PAID_PROMOTION_CARDS_DESC" = "一部の動画にある「プロモーションを含む」 のバナーを非表示にします。"; +"HIDE_PAID_PROMOTION_CARDS" = "プロモーションバナーを非表示"; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "一部の動画にある「プロモーションを含みます」のバナーを非表示にします。"; // YTCastConfirm "CASTING" = "キャスト"; -"MSG_ARE_YOU_SURE" = "本当にキャストを開始しますか?"; +"MSG_ARE_YOU_SURE" = "本当にキャストを開始しますか?"; "MSG_YES" = "はい"; -"MSG_CANCEL" = "キャンセル"; \ No newline at end of file +"MSG_CANCEL" = "キャンセル"; From 7b9fd7dcfbe0c24ccca2416ef93db343ab56a69d Mon Sep 17 00:00:00 2001 From: Jinbong Date: Sat, 13 Aug 2022 14:02:24 +0900 Subject: [PATCH 046/156] Add Korean localization --- .../ko.lproj/Localizable.strings | 49 +++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 lang/uYouPlus.bundle/ko.lproj/Localizable.strings diff --git a/lang/uYouPlus.bundle/ko.lproj/Localizable.strings b/lang/uYouPlus.bundle/ko.lproj/Localizable.strings new file mode 100644 index 0000000..b4ff77f --- /dev/null +++ b/lang/uYouPlus.bundle/ko.lproj/Localizable.strings @@ -0,0 +1,49 @@ +// Settings + +"KILL_APP" = "YouTube 닫기"; +"KILL_APP_DESC" = "YouTube 앱을 닫으려면 여기를 탭하세요!"; + +"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "이전, 다음 재생 버튼 숨기기"; +"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "비디오 재생 오버레이에서 이전 재생, 다음 재생 버튼을 숨깁니다."; + +"YT_MINIPLAYER" = "모든 YouTube 영상에서 미니 플레이어 활성화"; +"YT_MINIPLAYER_DESC" = "아동용 영상일 경우."; + +"CAST_CONFIRM" = "TV로 보낼 때 알림 (YTCastConfirm)"; +"CAST_CONFIRM_DESC" = "의도치 않게 TV로 보내는 것을 방지하기 위해 보내기 전에 확인 메시지를 표시합니다."; + +"HIDE_HOVER_CARD" = "영상 마지막의 호버카드 숨기기 (YTNoHoverCards)"; +"HIDE_HOVER_CARD_DESC" = "영상의 마지막에 게시자가 표시한 영상 썸네일을 숨깁니다."; + +"NEW_MINIPLAYER_STYLE" = "새로운 스타일의 미니 플레이어 재생 막대 (BigYTMiniPlayer)"; +"NEW_MINIPLAYER_STYLE_DESC" = "앱을 다시 시작해야 합니다."; + +"YT_RE_EXPLORE" = "Shorts 탭 대신 탐색 탭 보이기 (YTReExplore)"; +"YT_RE_EXPLORE_DESC" = "앱을 다시 시작해야 합니다."; + +"HIDE_SUBTITLES_BUTTON" = "자막 버튼 숨기기"; +"HIDE_SUBTITLES_BUTTON_DESC" = "비디오 재생 오버레이에서 자막 버튼을 숨깁니다."; + +"HIDE_AUTOPLAY_SWITCH" = "자동재생 스위치 숨기기"; +"HIDE_AUTOPLAY_SWITCH_DESC" = "비디오 재생 오버레이에서 자동재생 스위치를 숨깁니다."; + +"AUTO_FULLSCREEN" = "자동 전체화면 재생 (YTAutoFullScreen)"; +"AUTO_FULLSCREEN_DESC" = "자동으로 전체화면에서 재생합니다."; + +"HIDE_HUD_MESSAGES" = "화면 메시지 숨기기"; +"HIDE_HUD_MESSAGES_DESC" = "예: CC is turned on/off, Video loop is on,..."; + +"OLED_DARKMODE" = "OLED 다크모드 (실험실)"; +"OLED_DARKMODE_DESC" = "몇몇 경우 제대로 동작하지 않을 수도 있습니다. 이 기능을 켜거나 끄는 경우 앱을 다시 시작해야 합니다."; + +"OLED_KEYBOARD" = "OLED 키보드 (실험실)"; +"OLED_KEYBOARD_DESC" = "몇몇 경우 제대로 동작하지 않을 수도 있습니다. 앱을 다시 시작해야 합니다."; + +"HIDE_PAID_PROMOTION_CARDS" = "유료 광고 배너 숨기기"; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "'유료 광고가 포함됨' 배너를 숨깁니다."; + +// YTCastConfirm +"CASTING" = "Casting"; +"MSG_ARE_YOU_SURE" = "TV로 영상 전송을 시작하겠습니까?; +"MSG_YES" = "예"; +"MSG_CANCEL" = "취소"; From 329fb1681a6d8ea04f6e1105bfb8ee5a2d7fc580 Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Sun, 14 Aug 2022 02:02:23 +0700 Subject: [PATCH 047/156] Skips content warning before playing *some videos - @PoomSmart --- Header.h | 4 ++++ uYouPlus.xm | 5 +++++ 2 files changed, 9 insertions(+) diff --git a/Header.h b/Header.h index 8e6718a..b776d49 100644 --- a/Header.h +++ b/Header.h @@ -9,6 +9,10 @@ @end // uYouPlus +@interface YTPlayabilityResolutionUserActionUIController : NSObject // Skips content warning before playing *some videos - @PoomSmart +- (void)confirmAlertDidPressConfirm; +@end + @interface YTMainAppControlsOverlayView : UIView @end diff --git a/uYouPlus.xm b/uYouPlus.xm index 3cc13e5..68d89be 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -80,6 +80,11 @@ BOOL hidePaidPromotionCard() { - (BOOL)canReorder { return YES; } %end +// Skips content warning before playing *some videos - @PoomSmart +%hook YTPlayabilityResolutionUserActionUIController +- (void)showConfirmAlert { [self confirmAlertDidPressConfirm]; } +%end + // YTMiniPlayerEnabler: https://github.com/level3tjg/YTMiniplayerEnabler/ %hook YTWatchMiniBarViewController - (void)updateMiniBarPlayerStateFromRenderer { From 2ff0f3fb56798f6482e2a5b4e126b4f93bc957fd Mon Sep 17 00:00:00 2001 From: julioverne Date: Sat, 20 Aug 2022 15:28:51 -0300 Subject: [PATCH 048/156] Fix Login Fixes Login Account from Insecure App --- uYouPlus.xm | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/uYouPlus.xm b/uYouPlus.xm index 68d89be..ad6537e 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -374,6 +374,23 @@ BOOL hidePaidPromotionCard() { } %end +%hook NSJSONSerialization ++ (id)dataWithJSONObject:(id)arg1 options:(unsigned long long)arg2 error:(id*)arg3 +{ + @try { + if(arg1 && ([arg1 isKindOfClass:[NSDictionary class]] || [arg1 isKindOfClass:[NSMutableDictionary class]]) ) { + if(arg1[@"device_challenge_request"] != nil) { + NSMutableDictionary *MutRet = [arg1 mutableCopy]; + [MutRet removeObjectForKey:@"device_challenge_request"]; + arg1 = MutRet; + } + } + }@catch(NSException*e){ + } + return %orig(arg1, arg2, arg3); +} +%end + # pragma mark - OLED dark mode by BandarHL UIColor* raisedColor = [UIColor colorWithRed:0.035 green:0.035 blue:0.035 alpha:1.0]; %group gOLED @@ -773,4 +790,4 @@ static void replaceTab(YTIGuideResponse *response) { if (@available(iOS 16, *)) { %init(iOS16); } -} \ No newline at end of file +} From 1266cb5a384a0745700545153f71abc29e9dda64 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20=C4=90=E1=BA=A1t?= <52943116+qnblackcat@users.noreply.github.com> Date: Sun, 21 Aug 2022 11:00:59 +0700 Subject: [PATCH 049/156] More specifically... --- .github/ISSUE_TEMPLATE/bug.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/ISSUE_TEMPLATE/bug.md b/.github/ISSUE_TEMPLATE/bug.md index c6ec5da..c84342d 100644 --- a/.github/ISSUE_TEMPLATE/bug.md +++ b/.github/ISSUE_TEMPLATE/bug.md @@ -15,7 +15,7 @@ _Make sure you complete the template. Otherwise, it will be closed without furth - iOS/iPadOS version: - Device model: - Sideload tool (Ex: AltStore, Sideloadly...) -- Version of uYouPlus: +- Version of uYouPlus: _**latest** or **newest** is NOT a version number!!_ ### Describe the bug From 1d5de3cd4ca0e656a34cb4a56e1868864068ccf4 Mon Sep 17 00:00:00 2001 From: BandarHelal <31299470+BandarHL@users.noreply.github.com> Date: Sun, 21 Aug 2022 17:03:47 +0300 Subject: [PATCH 050/156] Update uYouPlus.xm Improve Julioverne's code by specifying YouTube SSOService because "device_challenge_request" can be used in other thinks with the App like Apple Push Service. --- uYouPlus.xm | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/uYouPlus.xm b/uYouPlus.xm index ad6537e..4070592 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -374,20 +374,20 @@ BOOL hidePaidPromotionCard() { } %end -%hook NSJSONSerialization -+ (id)dataWithJSONObject:(id)arg1 options:(unsigned long long)arg2 error:(id*)arg3 -{ - @try { - if(arg1 && ([arg1 isKindOfClass:[NSDictionary class]] || [arg1 isKindOfClass:[NSMutableDictionary class]]) ) { - if(arg1[@"device_challenge_request"] != nil) { - NSMutableDictionary *MutRet = [arg1 mutableCopy]; - [MutRet removeObjectForKey:@"device_challenge_request"]; - arg1 = MutRet; - } - } - }@catch(NSException*e){ - } - return %orig(arg1, arg2, arg3); +// Fix "You can't sign in to this app because Google can't confirm that it's safe" warning when signing in. by julioverne & PoomSmart +// https://gist.github.com/PoomSmart/ef5b172fd4c5371764e027bea2613f93 +// https://github.com/qnblackcat/uYouPlus/pull/398 +%hook SSOService ++ (id)fetcherWithRequest:(NSMutableURLRequest *)request configuration:(id)configuration { + if ([request isKindOfClass:[NSMutableURLRequest class]] && request.HTTPBody) { + NSError *error = nil; + NSMutableDictionary *body = [NSJSONSerialization JSONObjectWithData:request.HTTPBody options:NSJSONReadingMutableContainers error:&error]; + if (!error && [body isKindOfClass:[NSMutableDictionary class]]) { + [body removeObjectForKey:@"device_challenge_request"]; + request.HTTPBody = [NSJSONSerialization dataWithJSONObject:body options:kNilOptions error:&error]; + } + } + return %orig; } %end From 9e98ad94825b4514c2c81cb725137bd4628fe669 Mon Sep 17 00:00:00 2001 From: Jinbong Date: Thu, 25 Aug 2022 03:17:53 +0900 Subject: [PATCH 051/156] Update Korean localization --- .../ko.lproj/Localizable.strings | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/lang/uYouPlus.bundle/ko.lproj/Localizable.strings b/lang/uYouPlus.bundle/ko.lproj/Localizable.strings index b4ff77f..e1915a0 100644 --- a/lang/uYouPlus.bundle/ko.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/ko.lproj/Localizable.strings @@ -9,13 +9,13 @@ "YT_MINIPLAYER" = "모든 YouTube 영상에서 미니 플레이어 활성화"; "YT_MINIPLAYER_DESC" = "아동용 영상일 경우."; -"CAST_CONFIRM" = "TV로 보낼 때 알림 (YTCastConfirm)"; -"CAST_CONFIRM_DESC" = "의도치 않게 TV로 보내는 것을 방지하기 위해 보내기 전에 확인 메시지를 표시합니다."; +"CAST_CONFIRM" = "TV 전송 알림 (YTCastConfirm)"; +"CAST_CONFIRM_DESC" = "의도치 않게 TV로 영상을 전송하지 않도록 보내기 전에 확인 메시지를 표시합니다."; -"HIDE_HOVER_CARD" = "영상 마지막의 호버카드 숨기기 (YTNoHoverCards)"; -"HIDE_HOVER_CARD_DESC" = "영상의 마지막에 게시자가 표시한 영상 썸네일을 숨깁니다."; +"HIDE_HOVER_CARD" = "영상 끝 부분의 호버카드 숨기기 (YTNoHoverCards)"; +"HIDE_HOVER_CARD_DESC" = "영상의 끝 부분에서 게시자가 표시한 영상 썸네일을 숨깁니다."; -"NEW_MINIPLAYER_STYLE" = "새로운 스타일의 미니 플레이어 재생 막대 (BigYTMiniPlayer)"; +"NEW_MINIPLAYER_STYLE" = "새로운 스타일의 미니 플레이어 (BigYTMiniPlayer)"; "NEW_MINIPLAYER_STYLE_DESC" = "앱을 다시 시작해야 합니다."; "YT_RE_EXPLORE" = "Shorts 탭 대신 탐색 탭 보이기 (YTReExplore)"; @@ -31,7 +31,7 @@ "AUTO_FULLSCREEN_DESC" = "자동으로 전체화면에서 재생합니다."; "HIDE_HUD_MESSAGES" = "화면 메시지 숨기기"; -"HIDE_HUD_MESSAGES_DESC" = "예: CC is turned on/off, Video loop is on,..."; +"HIDE_HUD_MESSAGES_DESC" = "예: 자막 사용 설정됨/중지됨, 반복재생 설정됨,..."; "OLED_DARKMODE" = "OLED 다크모드 (실험실)"; "OLED_DARKMODE_DESC" = "몇몇 경우 제대로 동작하지 않을 수도 있습니다. 이 기능을 켜거나 끄는 경우 앱을 다시 시작해야 합니다."; @@ -40,10 +40,10 @@ "OLED_KEYBOARD_DESC" = "몇몇 경우 제대로 동작하지 않을 수도 있습니다. 앱을 다시 시작해야 합니다."; "HIDE_PAID_PROMOTION_CARDS" = "유료 광고 배너 숨기기"; -"HIDE_PAID_PROMOTION_CARDS_DESC" = "'유료 광고가 포함됨' 배너를 숨깁니다."; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "'유료 광고 포함' 배너를 숨깁니다."; // YTCastConfirm -"CASTING" = "Casting"; -"MSG_ARE_YOU_SURE" = "TV로 영상 전송을 시작하겠습니까?; +"CASTING" = "TV로 전송"; +"MSG_ARE_YOU_SURE" = "TV로 영상 전송을 시작하겠습니까?"; "MSG_YES" = "예"; "MSG_CANCEL" = "취소"; From 7ac253963e661b15dffbdd7509c2573be1ae244d Mon Sep 17 00:00:00 2001 From: BandarHelal <31299470+BandarHL@users.noreply.github.com> Date: Thu, 25 Aug 2022 18:31:28 +0300 Subject: [PATCH 052/156] Fix Login issue --- uYouPlus.xm | 42 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-) diff --git a/uYouPlus.xm b/uYouPlus.xm index 4070592..6b1244c 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -29,7 +29,24 @@ NSBundle *uYouPlusBundle() { } NSBundle *tweakBundle = uYouPlusBundle(); -// +static NSString *accessGroupID() { + NSDictionary *query = [NSDictionary dictionaryWithObjectsAndKeys: + (__bridge NSString *)kSecClassGenericPassword, (__bridge NSString *)kSecClass, + @"bundleSeedID", kSecAttrAccount, + @"", kSecAttrService, + (id)kCFBooleanTrue, kSecReturnAttributes, + nil]; + CFDictionaryRef result = nil; + OSStatus status = SecItemCopyMatching((__bridge CFDictionaryRef)query, (CFTypeRef *)&result); + if (status == errSecItemNotFound) + status = SecItemAdd((__bridge CFDictionaryRef)query, (CFTypeRef *)&result); + if (status != errSecSuccess) + return nil; + NSString *accessGroup = [(__bridge NSDictionary *)result objectForKey:(__bridge NSString *)kSecAttrAccessGroup]; + + return accessGroup; +} + BOOL hideHUD() { return [[NSUserDefaults standardUserDefaults] boolForKey:@"hideHUD_enabled"]; } @@ -391,6 +408,29 @@ BOOL hidePaidPromotionCard() { } %end +// Fix login for YouTube 17.33.2 and higher +%hook SSOKeychainCore ++ (NSString *)accessGroup { + return accessGroupID(); +} + ++ (NSString *)sharedAccessGroup { + return accessGroupID(); +} +%end + +// Fix App Group Directory by move it to document directory +%hook NSFileManager +- (NSURL *)containerURLForSecurityApplicationGroupIdentifier:(NSString *)groupIdentifier { + if (groupIdentifier != nil) { + NSArray *paths = [[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask]; + NSURL *documentsURL = [paths lastObject]; + return [documentsURL URLByAppendingPathComponent:@"AppGroup"]; + } + return %orig(arg1); +} +%end + # pragma mark - OLED dark mode by BandarHL UIColor* raisedColor = [UIColor colorWithRed:0.035 green:0.035 blue:0.035 alpha:1.0]; %group gOLED From 5adaec2c9330effcfa3d44e281cd3e0e0ecb5899 Mon Sep 17 00:00:00 2001 From: BandarHelal <31299470+BandarHL@users.noreply.github.com> Date: Thu, 25 Aug 2022 19:39:25 +0300 Subject: [PATCH 053/156] Update uYouPlus.xm --- uYouPlus.xm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uYouPlus.xm b/uYouPlus.xm index 6b1244c..d93acbb 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -427,7 +427,7 @@ BOOL hidePaidPromotionCard() { NSURL *documentsURL = [paths lastObject]; return [documentsURL URLByAppendingPathComponent:@"AppGroup"]; } - return %orig(arg1); + return %orig(groupIdentifier); } %end From 81088fadd3b56de34a0e0530ab12cff44b3f63a2 Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Fri, 26 Aug 2022 13:20:13 +0700 Subject: [PATCH 054/156] update Makefile --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 1d31526..edc7dad 100644 --- a/Makefile +++ b/Makefile @@ -13,7 +13,7 @@ BUNDLE_ID = com.google.ios.youtube uYouPlus_INJECT_DYLIBS = Tweaks/uYou/Library/MobileSubstrate/DynamicLibraries/uYou.dylib .theos/obj/libcolorpicker.dylib .theos/obj/iSponsorBlock.dylib .theos/obj/YTUHD.dylib .theos/obj/YouPiP.dylib .theos/obj/YouTubeDislikesReturn.dylib .theos/obj/YoutubeSpeed.dylib uYouPlus_FILES = uYouPlus.xm Settings.xm uYouPlus_IPA = ./tmp/Payload/YouTube.app -uYouPlus_FRAMEWORKS = UIKit +uYouPlus_FRAMEWORKS = UIKit Security uYouPlus_CFLAGS = -fobjc-arc include $(THEOS)/makefiles/common.mk From 2615436031f03e32a7e597242c16bae62ade9a7c Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Fri, 26 Aug 2022 13:20:22 +0700 Subject: [PATCH 055/156] v17.33.2-2.1 --- README.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 82cb1a9..429aedf 100644 --- a/README.md +++ b/README.md @@ -25,6 +25,8 @@ - [BandarHL](https://twitter.com/bandarhl) for a bunch of improvements. +- [Julioverne](https://twitter.com/ijulioverne) for the solution to skip Google's safety warning when logging in. + - [Lyvendia](https://github.com/Lyvendia/) for [YTSpeed](https://github.com/Lyvendia/YTSpeed/) - [YouTube Extensions](https://github.com/CokePokes/YoutubeExtensions) by [CokePokes](https://github.com/CokePokes/). @@ -78,16 +80,16 @@ - My official AltStore repo: https://qnblackcat.github.io/AltStore/ - - [Open in AltStore (v17.31.4-2.1)](https://tinyurl.com/2p99amjz) - It will take a while to install because AltStore needs to download the IPA. + - [Open in AltStore (v17.33.2-2.1)](https://tinyurl.com/33mv77u6) - It will take a while to install because AltStore needs to download the IPA. -- Version info: _(last update: Aug 12)_ +- Version info: _(last update: Aug 26)_
Expand | **Tweaks/App** | **Developer** | **Version** | **Open source** | | - | - | :-: | :-: | -| **YouTube** | Google Inc | 17.31.4 | ✖︎ | +| **YouTube** | Google Inc | 17.33.2 | ✖︎ | | [uYou](https://github.com/MiRO92/uYou-for-YouTube) | [MiRO92](https://twitter.com/miro92) | 2.1 | ✖︎ | | [Open in YouTube](https://github.com/CokePokes/YoutubeExtensions) | [CokePokes](https://github.com/CokePokes) | 1.2 | ✖︎ | | **iSponsorBlock** | [Galactic-Dev](https://github.com/Galactic-Dev) | 1.0-15 | [✔︎](https://github.com/Galactic-Dev/iSponsorBlock) | @@ -119,9 +121,7 @@ See [Installation - Wiki](https://github.com/qnblackcat/uYouPlus/wiki/Installati
MiRO92 -- CashApp: https://cash.app/$MiRO92M - -- Other payment methods are available in uYou's settings. +- https://github.com/MiRO92/uYou-for-YouTube#support
From 4b283110a640ef52608e6f3022937957b5513389 Mon Sep 17 00:00:00 2001 From: level3tjg Date: Fri, 26 Aug 2022 18:41:33 -0400 Subject: [PATCH 056/156] Various fixes for shorts (#170, #253, #263) --- Tweaks/YouTubeHeader | 2 +- uYouPlus.xm | 59 ++++++++++++++++++++++++++++++++++++++++---- 2 files changed, 55 insertions(+), 6 deletions(-) diff --git a/Tweaks/YouTubeHeader b/Tweaks/YouTubeHeader index 08eeeb7..6bf88aa 160000 --- a/Tweaks/YouTubeHeader +++ b/Tweaks/YouTubeHeader @@ -1 +1 @@ -Subproject commit 08eeeb7a9c096694b681a05d216e359402d77858 +Subproject commit 6bf88aa495e13224d8059f7ce9ec44cd23e0154f diff --git a/uYouPlus.xm b/uYouPlus.xm index d93acbb..658b2ba 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -16,6 +16,8 @@ #import "Tweaks/YouTubeHeader/ASCollectionView.h" #import "Tweaks/YouTubeHeader/YTPlayerOverlay.h" #import "Tweaks/YouTubeHeader/YTPlayerOverlayProvider.h" +#import "Tweaks/YouTubeHeader/YTReelWatchPlaybackOverlayView.h" +#import "Tweaks/YouTubeHeader/YTReelPlayerBottomButton.h" // Tweak's bundle for Localizations support - @PoomSmart - https://github.com/PoomSmart/YouPiP/commit/aea2473f64c75d73cab713e1e2d5d0a77675024f NSBundle *uYouPlusBundle() { @@ -197,13 +199,15 @@ BOOL hidePaidPromotionCard() { } %end -// Workaround for https://github.com/MiRO92/uYou-for-YouTube/issues/12 -%hook YTAdsInnerTubeContextDecorator -- (void)decorateContext:(id)arg1 { %orig(nil); } +// Workaround for MiRO92/uYou-for-YouTube#12, qnblackcat/uYouPlus#263 +%hook YTDataUtils ++ (NSMutableDictionary *)spamSignalsDictionary { + return nil; +} %end // Workaround for https://github.com/MiRO92/uYou-for-YouTube/issues/94 -%hook YTELMView +%hook UIResponder %new - (id)entry { return nil; @@ -283,7 +287,52 @@ BOOL hidePaidPromotionCard() { if ([[NSUserDefaults standardUserDefaults] boolForKey:@"relatedVideosAtTheEndOfYTVideos"] == NO) {} else { return %orig; } } -%end +%end + +// Workaround for qnblackcat/uYouPlus#253, qnblackcat/uYouPlus#170 +%hook YTReelWatchPlaybackOverlayView +- (YTQTMButton *)overflowButton { + if ([self respondsToSelector:@selector(orderedRightSideButtons)] && + [self orderedRightSideButtons].count != 0) + return [self orderedRightSideButtons][0]; + return %orig; +} +%end + +%hook NSLayoutConstraint ++ (instancetype)constraintWithItem:(UIView *)view1 + attribute:(NSLayoutAttribute)attr1 + relatedBy:(NSLayoutRelation)relation + toItem:(UIView *)view2 + attribute:(NSLayoutAttribute)attr2 + multiplier:(CGFloat)multiplier + constant:(CGFloat)c { + if (![view1.accessibilityIdentifier isEqualToString:@"com.miro.uyou"]) return %orig; + if (!view2) { + view1.hidden = YES; + return [NSLayoutConstraint alloc]; + } + YTReelPlayerBottomButton *uYouButton = (YTReelPlayerBottomButton *)view1; + YTReelPlayerBottomButton *topButton = (YTReelPlayerBottomButton *)view2; + NSString *uYouButtonTitle = + [view2.accessibilityIdentifier isEqualToString:@"com.miro.uyou"] + ? @"uYou" + : @"uYouLocal"; + uYouButton.accessibilityLabel = uYouButtonTitle; + uYouButton.uppercaseTitle = NO; + [uYouButton setTitle:uYouButtonTitle forState:UIControlStateNormal]; + [uYouButton + setTitleTypeKind:MSHookIvar(topButton, "_typeKind") + typeVariant:MSHookIvar(topButton, "_typeVariant")]; + uYouButton.applyRightSideLayoutImageSize = + topButton.applyRightSideLayoutImageSize; + uYouButton.buttonImageTitlePadding = topButton.buttonImageTitlePadding; + uYouButton.buttonLayoutStyle = topButton.buttonLayoutStyle; + uYouButton.sizeWithPaddingAndInsets = topButton.sizeWithPaddingAndInsets; + uYouButton.verticalContentPadding = topButton.verticalContentPadding; + return %orig; +} +%end // Hide YouTube Shorts banner in Home page? - @MiRO92 - YTNoShorts: https://github.com/MiRO92/YTNoShorts %hook YTAsyncCollectionView From 6418f3daeb0d1df78400bad17e81fd24d9051fbf Mon Sep 17 00:00:00 2001 From: level3tjg Date: Sat, 27 Aug 2022 02:12:18 -0400 Subject: [PATCH 057/156] Make sure we're modifying uYou shorts button --- uYouPlus.xm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/uYouPlus.xm b/uYouPlus.xm index 658b2ba..fd7ca68 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -307,7 +307,9 @@ BOOL hidePaidPromotionCard() { attribute:(NSLayoutAttribute)attr2 multiplier:(CGFloat)multiplier constant:(CGFloat)c { - if (![view1.accessibilityIdentifier isEqualToString:@"com.miro.uyou"]) return %orig; + if (![view1 isKindOfClass:%c(YTReelPlayerBottomButton)] && + ![view1.accessibilityIdentifier isEqualToString:@"com.miro.uyou"]) + return %orig; if (!view2) { view1.hidden = YES; return [NSLayoutConstraint alloc]; From 11ddcd421d265772fa13a8d4dfafcbf796e15339 Mon Sep 17 00:00:00 2001 From: level3tjg Date: Sat, 27 Aug 2022 02:49:20 -0400 Subject: [PATCH 058/156] Workaround for iOS 15 uYou settings bug (#10) --- Header.h | 3 +++ uYouPlus.xm | 10 ++++++++++ 2 files changed, 13 insertions(+) diff --git a/Header.h b/Header.h index b776d49..49a4131 100644 --- a/Header.h +++ b/Header.h @@ -30,6 +30,9 @@ @interface FRPSliderCell : UITableViewCell @end +@interface boolSettingsVC : UIViewController +@end + // iOS16 fix @interface OBPrivacyLinkButton : UIButton - (instancetype)initWithCaption:(NSString *)caption diff --git a/uYouPlus.xm b/uYouPlus.xm index fd7ca68..1fd6383 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -222,6 +222,16 @@ BOOL hidePaidPromotionCard() { } %end +// Workaround for qnblackcat/uYouPlus#10 +%hook boolSettingsVC +- (instancetype)initWithTitle:(NSString *)title sections:(NSArray *)sections footer:(NSString *)footer { + if (@available(iOS 15, *)) + if (![self valueForKey:@"_lastNotifiedTraitCollection"]) + [self setValue:[UITraitCollection currentTraitCollection] forKey:@"_lastNotifiedTraitCollection"]; + return %orig; +} +%end + // YTClassicVideoQuality: https://github.com/PoomSmart/YTClassicVideoQuality %hook YTVideoQualitySwitchControllerFactory - (id)videoQualitySwitchControllerWithParentResponder:(id)responder { From 3aa7c57d82cd25743024f0354780583e08aa16b1 Mon Sep 17 00:00:00 2001 From: level3tjg Date: Sun, 28 Aug 2022 02:02:18 -0400 Subject: [PATCH 059/156] Fix uYou player bar bug --- Header.h | 4 ++++ uYouPlus.xm | 9 +++++++++ 2 files changed, 13 insertions(+) diff --git a/Header.h b/Header.h index 49a4131..9032631 100644 --- a/Header.h +++ b/Header.h @@ -33,6 +33,10 @@ @interface boolSettingsVC : UIViewController @end +@interface PlayerManager : NSObject +- (float)progress; +@end + // iOS16 fix @interface OBPrivacyLinkButton : UIButton - (instancetype)initWithCaption:(NSString *)caption diff --git a/uYouPlus.xm b/uYouPlus.xm index 1fd6383..53b19f0 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -346,6 +346,15 @@ BOOL hidePaidPromotionCard() { } %end +// Prevent uYou player bar from showing when not playing downloaded media +%hook PlayerManager +- (void)pause { + if ([@([self progress]) isEqualToNumber:[NSDecimalNumber notANumber]]) + return; + %orig; +} +%end + // Hide YouTube Shorts banner in Home page? - @MiRO92 - YTNoShorts: https://github.com/MiRO92/YTNoShorts %hook YTAsyncCollectionView - (id)cellForItemAtIndexPath:(NSIndexPath *)indexPath { From 2e7fd253a88cef2e1de1266bff010b12a3e8ba6a Mon Sep 17 00:00:00 2001 From: level3tjg Date: Tue, 30 Aug 2022 10:44:48 -0400 Subject: [PATCH 060/156] just found out isnan() exists --- uYouPlus.xm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/uYouPlus.xm b/uYouPlus.xm index 53b19f0..58b4ba1 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -349,7 +349,7 @@ BOOL hidePaidPromotionCard() { // Prevent uYou player bar from showing when not playing downloaded media %hook PlayerManager - (void)pause { - if ([@([self progress]) isEqualToNumber:[NSDecimalNumber notANumber]]) + if (isnan([self progress])) return; %orig; } From e5b9ff21cf50fd27b278fffa37125228bceb24bf Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Thu, 1 Sep 2022 09:23:13 +0700 Subject: [PATCH 061/156] update submodules --- Tweaks/YouPiP | 2 +- Tweaks/YouTubeHeader | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Tweaks/YouPiP b/Tweaks/YouPiP index a8c4224..77bed4f 160000 --- a/Tweaks/YouPiP +++ b/Tweaks/YouPiP @@ -1 +1 @@ -Subproject commit a8c4224f7d44cb81efd9bf8075cd25aefa327f7f +Subproject commit 77bed4f3fbec0260a21473c61697d9d11095471f diff --git a/Tweaks/YouTubeHeader b/Tweaks/YouTubeHeader index 6bf88aa..fa1fb5a 160000 --- a/Tweaks/YouTubeHeader +++ b/Tweaks/YouTubeHeader @@ -1 +1 @@ -Subproject commit 6bf88aa495e13224d8059f7ce9ec44cd23e0154f +Subproject commit fa1fb5a993c35ee10317093656ba5e4b88dfd016 From e2cd37a8b6e7d37362dbcc01a590114b0aa8594a Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Thu, 1 Sep 2022 11:40:09 +0700 Subject: [PATCH 062/156] formating, remove old code, update IAmYouTube --- uYouPlus.xm | 111 ++++++++++++++++++---------------------------------- 1 file changed, 39 insertions(+), 72 deletions(-) diff --git a/uYouPlus.xm b/uYouPlus.xm index 58b4ba1..769a8c7 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -12,7 +12,6 @@ #import "Tweaks/YouTubeHeader/YTIPivotBarRenderer.h" #import "Tweaks/YouTubeHeader/YTIBrowseRequest.h" #import "Tweaks/YouTubeHeader/YTCommonColorPalette.h" -#import "Tweaks/YouTubeHeader/YTColorPalette.h" #import "Tweaks/YouTubeHeader/ASCollectionView.h" #import "Tweaks/YouTubeHeader/YTPlayerOverlay.h" #import "Tweaks/YouTubeHeader/YTPlayerOverlayProvider.h" @@ -202,7 +201,7 @@ BOOL hidePaidPromotionCard() { // Workaround for MiRO92/uYou-for-YouTube#12, qnblackcat/uYouPlus#263 %hook YTDataUtils + (NSMutableDictionary *)spamSignalsDictionary { - return nil; + return nil; } %end @@ -210,7 +209,7 @@ BOOL hidePaidPromotionCard() { %hook UIResponder %new - (id)entry { - return nil; + return nil; } %end @@ -218,7 +217,7 @@ BOOL hidePaidPromotionCard() { %hook YTLocalPlaybackController %new - (id)activeVideoController { - return [self activeVideo]; + return [self activeVideo]; } %end @@ -248,7 +247,6 @@ BOOL hidePaidPromotionCard() { // YouRememberCaption: https://poomsmart.github.io/repo/depictions/youremembercaption.html %hook YTColdConfig - (BOOL)respectDeviceCaptionSetting { return NO; } -- (BOOL)shouldUseAppThemeSetting { return YES; } // v16.xx %end // NOYTPremium - https://github.com/PoomSmart/NoYTPremium/ @@ -287,10 +285,6 @@ BOOL hidePaidPromotionCard() { - (void)setUserInteractionEnabled:(BOOL)enabled { %orig(YES); } %end -%hook YTReelPlayerViewControllerSub // v16.42.3 - @level3tjg: https://reddit.com/r/jailbreak/comments/v29yvk/_/iasl1l0/ - - (BOOL)shouldEnablePlayerBar { return YES; } -%end - // Workaround for issue #54 %hook YTMainAppVideoPlayerOverlayViewController - (void)updateRelatedVideos { @@ -302,10 +296,10 @@ BOOL hidePaidPromotionCard() { // Workaround for qnblackcat/uYouPlus#253, qnblackcat/uYouPlus#170 %hook YTReelWatchPlaybackOverlayView - (YTQTMButton *)overflowButton { - if ([self respondsToSelector:@selector(orderedRightSideButtons)] && - [self orderedRightSideButtons].count != 0) - return [self orderedRightSideButtons][0]; - return %orig; + if ([self respondsToSelector:@selector(orderedRightSideButtons)] && + [self orderedRightSideButtons].count != 0) + return [self orderedRightSideButtons][0]; + return %orig; } %end @@ -317,32 +311,31 @@ BOOL hidePaidPromotionCard() { attribute:(NSLayoutAttribute)attr2 multiplier:(CGFloat)multiplier constant:(CGFloat)c { - if (![view1 isKindOfClass:%c(YTReelPlayerBottomButton)] && - ![view1.accessibilityIdentifier isEqualToString:@"com.miro.uyou"]) - return %orig; - if (!view2) { - view1.hidden = YES; + if (![view1 isKindOfClass:%c(YTReelPlayerBottomButton)] && + ![view1.accessibilityIdentifier isEqualToString:@"com.miro.uyou"]) + return %orig; + if (!view2) { + view1.hidden = YES; return [NSLayoutConstraint alloc]; - } - YTReelPlayerBottomButton *uYouButton = (YTReelPlayerBottomButton *)view1; - YTReelPlayerBottomButton *topButton = (YTReelPlayerBottomButton *)view2; - NSString *uYouButtonTitle = - [view2.accessibilityIdentifier isEqualToString:@"com.miro.uyou"] - ? @"uYou" - : @"uYouLocal"; - uYouButton.accessibilityLabel = uYouButtonTitle; - uYouButton.uppercaseTitle = NO; - [uYouButton setTitle:uYouButtonTitle forState:UIControlStateNormal]; - [uYouButton - setTitleTypeKind:MSHookIvar(topButton, "_typeKind") + } + YTReelPlayerBottomButton *uYouButton = (YTReelPlayerBottomButton *)view1; + YTReelPlayerBottomButton *topButton = (YTReelPlayerBottomButton *)view2; + NSString *uYouButtonTitle = + [view2.accessibilityIdentifier isEqualToString:@"com.miro.uyou"] + ? @"uYou" + : @"uYouLocal"; + uYouButton.accessibilityLabel = uYouButtonTitle; + uYouButton.uppercaseTitle = NO; + [uYouButton setTitle:uYouButtonTitle forState:UIControlStateNormal]; + [uYouButton + setTitleTypeKind:MSHookIvar(topButton, "_typeKind") typeVariant:MSHookIvar(topButton, "_typeVariant")]; - uYouButton.applyRightSideLayoutImageSize = - topButton.applyRightSideLayoutImageSize; - uYouButton.buttonImageTitlePadding = topButton.buttonImageTitlePadding; - uYouButton.buttonLayoutStyle = topButton.buttonLayoutStyle; - uYouButton.sizeWithPaddingAndInsets = topButton.sizeWithPaddingAndInsets; - uYouButton.verticalContentPadding = topButton.verticalContentPadding; - return %orig; + uYouButton.applyRightSideLayoutImageSize = topButton.applyRightSideLayoutImageSize; + uYouButton.buttonImageTitlePadding = topButton.buttonImageTitlePadding; + uYouButton.buttonLayoutStyle = topButton.buttonLayoutStyle; + uYouButton.sizeWithPaddingAndInsets = topButton.sizeWithPaddingAndInsets; + uYouButton.verticalContentPadding = topButton.verticalContentPadding; + return %orig; } %end @@ -441,6 +434,14 @@ BOOL hidePaidPromotionCard() { } %end +%hook APMAEU ++ (BOOL)isFAS { return YES; } +%end + +%hook GULAppEnvironmentUtil ++ (BOOL)isFromAppStore { return YES; } +%end + %hook NSBundle - (NSString *)bundleIdentifier { NSArray *address = [NSThread callStackReturnAddresses]; @@ -543,39 +544,6 @@ UIColor* raisedColor = [UIColor colorWithRed:0.035 green:0.035 blue:0.035 alpha: } %end -%hook YTColorPalette // v16.42.3 -- (UIColor *)brandBackgroundSolid { - if (self.pageStyle == 1) { - return [UIColor blackColor]; - } - return %orig; -} -- (UIColor *)brandBackgroundPrimary { - if (self.pageStyle == 1) { - return [UIColor blackColor]; - } - return %orig; -} -- (UIColor *)brandBackgroundSecondary { - if (self.pageStyle == 1) { - return [[UIColor blackColor] colorWithAlphaComponent:0.9]; - } - return %orig; -} -- (UIColor *)staticBrandBlack { - if (self.pageStyle == 1) { - return [UIColor blackColor]; - } - return %orig; -} -- (UIColor *)generalBackgroundA { - if (self.pageStyle == 1) { - return [UIColor blackColor]; - } - return %orig; -} -%end - // Account view controller %hook YTAccountPanelBodyViewController - (UIColor *)backgroundColor:(NSInteger)pageStyle { @@ -601,7 +569,7 @@ UIColor* raisedColor = [UIColor colorWithRed:0.035 green:0.035 blue:0.035 alpha: - (void)didMoveToWindow { %orig; if (isDarkMode() && [self.nextResponder isKindOfClass:%c(_ASDisplayView)]) { - self.superview.backgroundColor = [UIColor clearColor]; + self.superview.backgroundColor = [UIColor blackColor]; } } %end @@ -726,7 +694,6 @@ UIColor* raisedColor = [UIColor colorWithRed:0.035 green:0.035 blue:0.035 alpha: if ([self.accessibilityIdentifier isEqualToString:@"rich_header"]) { self.backgroundColor = [UIColor blackColor]; } if ([self.accessibilityIdentifier isEqualToString:@"id.ui.comment_cell"]) { self.backgroundColor = [UIColor blackColor]; } if ([self.accessibilityIdentifier isEqualToString:@"id.ui.cancel.button"]) { self.superview.backgroundColor = [UIColor clearColor]; } - if ([self.accessibilityIdentifier isEqualToString:@"id.elements.components.filter_chip_bar"]) { self.backgroundColor = [UIColor blackColor]; } if ([self.accessibilityIdentifier isEqualToString:@"id.elements.components.comment_composer"]) { self.backgroundColor = [UIColor blackColor]; } if ([self.accessibilityIdentifier isEqualToString:@"id.elements.components.video_list_entry"]) { self.backgroundColor = [UIColor blackColor]; } if ([self.accessibilityIdentifier isEqualToString:@"id.comment.guidelines_text"]) { self.superview.backgroundColor = [UIColor blackColor]; } From b62746061d00f5de5e6526c92fd64cf77bec73bf Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Thu, 1 Sep 2022 20:20:40 +0700 Subject: [PATCH 063/156] v17.34.3-2.1 --- README.md | 44 ++++++++++++-------------------------------- 1 file changed, 12 insertions(+), 32 deletions(-) diff --git a/README.md b/README.md index 429aedf..8f20de4 100644 --- a/README.md +++ b/README.md @@ -80,16 +80,16 @@ - My official AltStore repo: https://qnblackcat.github.io/AltStore/ - - [Open in AltStore (v17.33.2-2.1)](https://tinyurl.com/33mv77u6) - It will take a while to install because AltStore needs to download the IPA. + - [Open in AltStore (v17.34.3-2.1)](https://tinyurl.com/3vjyvwwe) - It will take a while to install because AltStore needs to download the IPA. -- Version info: _(last update: Aug 26)_ +- Version info: _(last update: Sep 01)_
Expand | **Tweaks/App** | **Developer** | **Version** | **Open source** | | - | - | :-: | :-: | -| **YouTube** | Google Inc | 17.33.2 | ✖︎ | +| **YouTube** | Google Inc | 17.34.3 | ✖︎ | | [uYou](https://github.com/MiRO92/uYou-for-YouTube) | [MiRO92](https://twitter.com/miro92) | 2.1 | ✖︎ | | [Open in YouTube](https://github.com/CokePokes/YoutubeExtensions) | [CokePokes](https://github.com/CokePokes) | 1.2 | ✖︎ | | **iSponsorBlock** | [Galactic-Dev](https://github.com/Galactic-Dev) | 1.0-15 | [✔︎](https://github.com/Galactic-Dev/iSponsorBlock) | @@ -100,7 +100,7 @@ | **YTCastConfirm** | [JamieBerghmans](https://github.com/JamieBerghmans) | 1.0.0 | [✔︎](https://github.com/JamieBerghmans/YTCastConfirm) | | **Alderis Color Picker** | [HASHBANG Productions](https://github.com/hbang) | 1.2| [✔︎](https://github.com/hbang/Alderis) | | **YTUHD** | [PoomSmart](https://twitter.com/poomsmart) | 1.2.9 | [✔︎](https://github.com/PoomSmart/YTUHD) | -| **YouPiP** | [PoomSmart](https://twitter.com/poomsmart) | 1.7.7 | [✔︎](https://github.com/PoomSmart/YouPiP) | +| **YouPiP** | [PoomSmart](https://twitter.com/poomsmart) | 1.7.9 | [✔︎](https://github.com/PoomSmart/YouPiP) | | **IAmYouTube** | [PoomSmart](https://twitter.com/poomsmart) | 1.2.0 | [✔︎](https://github.com/PoomSmart/IAmYouTube) | | **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) | @@ -117,34 +117,14 @@ See [Installation - Wiki](https://github.com/qnblackcat/uYouPlus/wiki/Installation) # Support the developers - -
- MiRO92 - -- https://github.com/MiRO92/uYou-for-YouTube#support -
- -
- PoomSmart - -- Paypal: https://poomsmart.github.io/ - -
- -
- Bandar Alruwaili (BandarHL) - -- Paypal: https://www.paypal.com/paypalme/BandarHL -
- -
- Galactic-dev - -- Paypal: https://www.paypal.com/paypalme/DBrett684 - -- Venmo: https://venmo.com/u/DavidBrett -
- +- [**MiRO92**](https://twitter.com/miro92): https://github.com/MiRO92/uYou-for-YouTube#support +- [**Poomsmart**](https://twitter.com/poomsmart): https://poomsmart.github.io +- [**level3tjg**](https://twitter.com/level3tjg): https://ko-fi.com/level3tjg +- [**BandarHL**](https://twitter.com/bandarhl): https://www.paypal.com/paypalme/BandarHL +- [**julioverne**](https://twitter.com/ijulioverne): https://www.patreon.com/julioverne +- [**Galactic-dev**](https://twitter.com/dev_galactic): + - Paypal: https://www.paypal.com/paypalme/DBrett684 + - Venmo: https://venmo.com/u/DavidBrett # FAQ From 02bfe1ada37859173b28551804ffced88245d251 Mon Sep 17 00:00:00 2001 From: level3tjg Date: Thu, 1 Sep 2022 11:02:26 -0400 Subject: [PATCH 064/156] Fix shorts like button showing more menu --- uYouPlus.xm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/uYouPlus.xm b/uYouPlus.xm index 769a8c7..189bd16 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -303,6 +303,11 @@ BOOL hidePaidPromotionCard() { } %end +%hook YTReelContentView +- (void)didTapOverflowButton:(id)sender { +} +%end + %hook NSLayoutConstraint + (instancetype)constraintWithItem:(UIView *)view1 attribute:(NSLayoutAttribute)attr1 From eb0a64bd6902d6262db64d80082d68f79f5e38aa Mon Sep 17 00:00:00 2001 From: Sh1hu <110207587+Sh1hu@users.noreply.github.com> Date: Fri, 2 Sep 2022 17:47:35 +0900 Subject: [PATCH 065/156] Update Localizable.strings --- lang/uYouPlus.bundle/ja.lproj/Localizable.strings | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/lang/uYouPlus.bundle/ja.lproj/Localizable.strings b/lang/uYouPlus.bundle/ja.lproj/Localizable.strings index ecbeeac..716b89e 100644 --- a/lang/uYouPlus.bundle/ja.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/ja.lproj/Localizable.strings @@ -4,13 +4,13 @@ "KILL_APP_DESC" = "ここをタップしてYouTubeを終了できます!"; "HIDE_PREVIOUS_AND_NEXT_BUTTON" = "前後の動画のボタンを非表示"; -"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "コントロールのオーバーレイで前後の動画のボタンを非表示にします。"; +"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "動画コントロールのオーバーレイで前後の動画のボタンを非表示にします。"; "YT_MINIPLAYER" = "すべての動画でミニプレーヤーを有効にする"; "YT_MINIPLAYER_DESC" = "例: 子ども向けの動画"; -"CAST_CONFIRM" = "キャストする前に確認画面を表示する (YTCastConfirm)"; -"CAST_CONFIRM_DESC" = "誤ってテレビにキャストしないよう、前に確認画面を表示します。"; +"CAST_CONFIRM" = "キャストする前に確認をする (YTCastConfirm)"; +"CAST_CONFIRM_DESC" = "誤ってテレビにキャストしないように、確認の警告を表示します。"; "HIDE_HOVER_CARD" = "動画終わりのホバーカードを非表示 (YTNoHoverCards)"; "HIDE_HOVER_CARD_DESC" = "動画の最後のホバーカード(サムネイル)を非表示にします。"; @@ -31,16 +31,16 @@ "AUTO_FULLSCREEN_DESC" = "動画を自動でフルスクリーンにします。"; "HIDE_HUD_MESSAGES" = "HUDのメッセージを非表示"; -"HIDE_HUD_MESSAGES_DESC" = "例: 字幕がオン/オフになりました、ループ再生はオンになっています 等"; +"HIDE_HUD_MESSAGES_DESC" = "例: 字幕がオン/オフになりました、ループ再生はオンになっています、等"; "OLED_DARKMODE" = "有機ELダークモード (実験的機能)"; -"OLED_DARKMODE_DESC" = "一部では正しく動作しない可能性があります。この設定を変更したあとはアプリの再起動が必要です。"; +"OLED_DARKMODE_DESC" = "正しく動作しない可能性があります。この設定を変更した場合、アプリの再起動が必要です。"; "OLED_KEYBOARD" = "有機ELキーボード (実験的機能)"; -"OLED_KEYBOARD_DESC" = "一部では正しく動作しない可能性があります。この設定を変更したあとはアプリの再起動が必要です。"; +"OLED_KEYBOARD_DESC" = "正しく動作しない可能性があります。この設定を変更した場合、アプリの再起動が必要です。"; "HIDE_PAID_PROMOTION_CARDS" = "プロモーションバナーを非表示"; -"HIDE_PAID_PROMOTION_CARDS_DESC" = "一部の動画にある「プロモーションを含みます」のバナーを非表示にします。"; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "一部の動画で表示される「プロモーションを含みます」のバナーを非表示にします。"; // YTCastConfirm "CASTING" = "キャスト"; From 15124cf1c9b86f64d364d1157947353deff285ae Mon Sep 17 00:00:00 2001 From: clc0321 Date: Mon, 5 Sep 2022 12:36:46 +0800 Subject: [PATCH 066/156] add KILL_APP to zh_tw --- lang/uYouPlus.bundle/zh_tw.lproj/Localizable.strings | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lang/uYouPlus.bundle/zh_tw.lproj/Localizable.strings b/lang/uYouPlus.bundle/zh_tw.lproj/Localizable.strings index 1d6e2c5..a58e85c 100644 --- a/lang/uYouPlus.bundle/zh_tw.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/zh_tw.lproj/Localizable.strings @@ -1,5 +1,8 @@ // Settings +"KILL_APP" = "關閉YouTube"; +"KILL_APP_DESC" = "按這裡關閉YouTube!"; + "HIDE_PREVIOUS_AND_NEXT_BUTTON" = "隱藏上一個和下一個按鈕"; "HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "在影片控制層中隱藏上一個和下一個按鈕"; From c04f0b7e433d415997fd6c39ec5324dc0f9c12d1 Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Tue, 6 Sep 2022 08:43:34 +0700 Subject: [PATCH 067/156] update strings --- lang/uYouPlus.bundle/en.lproj/Localizable.strings | 3 +++ lang/uYouPlus.bundle/template.lproj/Localizable.strings | 3 +++ lang/uYouPlus.bundle/vi.lproj/Localizable.strings | 3 +++ 3 files changed, 9 insertions(+) diff --git a/lang/uYouPlus.bundle/en.lproj/Localizable.strings b/lang/uYouPlus.bundle/en.lproj/Localizable.strings index e73104c..00e859e 100644 --- a/lang/uYouPlus.bundle/en.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/en.lproj/Localizable.strings @@ -1,5 +1,8 @@ // Settings +"FIX_GOOGLE_SIGNIN" = "Fix Google Sign in (for TrollStore user only)"; +"FIX_GOOGLE_SIGNIN_DESC" = "Only works when the app was installed via TrollStore: Turn on this option so you can sign in with your Google account. App restart is required."; + "KILL_APP" = "Close YouTube"; "KILL_APP_DESC" = "Tap here to close YouTube!"; diff --git a/lang/uYouPlus.bundle/template.lproj/Localizable.strings b/lang/uYouPlus.bundle/template.lproj/Localizable.strings index 76c40db..8481fa4 100644 --- a/lang/uYouPlus.bundle/template.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/template.lproj/Localizable.strings @@ -12,6 +12,9 @@ // // Settings +"FIX_GOOGLE_SIGNIN" = "Fix Google Sign in (for TrollStore user only)"; +"FIX_GOOGLE_SIGNIN_DESC" = "Only works when the app was installed via TrollStore: Turn on this option so you can sign in with your Google account. App restart is required."; + "KILL_APP" = "Close YouTube"; "KILL_APP_DESC" = "Tap here to close YouTube!"; diff --git a/lang/uYouPlus.bundle/vi.lproj/Localizable.strings b/lang/uYouPlus.bundle/vi.lproj/Localizable.strings index 3432327..0dc9022 100644 --- a/lang/uYouPlus.bundle/vi.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/vi.lproj/Localizable.strings @@ -1,5 +1,8 @@ // Settings +"FIX_GOOGLE_SIGNIN" = "Sửa lỗi không thể đăng nhập tài khoản Google"; +"FIX_GOOGLE_SIGNIN_DESC" = "Lưu ý rằng tính năng này chỉ hoạt động khi ứng dụng được cài đặt bằng TrollStore: Bật tính năng này để sửa lỗi không thể đăng nhập bằng tài khoản Google. Cần khởi động lại ứng dụng."; + "KILL_APP" = "Đóng ứng dụng"; "KILL_APP_DESC" = "Chạm để đóng YouTube!"; From 1f5ad62544cb0ebb1f99980e8f278826869f4472 Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Tue, 6 Sep 2022 08:44:11 +0700 Subject: [PATCH 068/156] for TrollStore user only: add an option to fix Google Sign in --- Settings.xm | 11 ++++++++++- uYouPlus.xm | 24 ++++++++++++++++-------- 2 files changed, 26 insertions(+), 9 deletions(-) diff --git a/Settings.xm b/Settings.xm index b1ac918..ef3abc5 100644 --- a/Settings.xm +++ b/Settings.xm @@ -51,6 +51,15 @@ extern BOOL hidePaidPromotionCard(); exit(0); }]; + YTSettingsSectionItem *fixGoogleSigin = [[%c(YTSettingsSectionItem) alloc] initWithTitle:LOC(@"FIX_GOOGLE_SIGNIN") titleDescription:LOC(@"FIX_GOOGLE_SIGNIN_DESC")]; + fixGoogleSigin.hasSwitch = YES; + fixGoogleSigin.switchVisible = YES; + fixGoogleSigin.on = [[NSUserDefaults standardUserDefaults] boolForKey:@"fixGoogleSigin_enabled"]; + fixGoogleSigin.switchBlock = ^BOOL (YTSettingsCell *cell, BOOL enabled) { + [[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"fixGoogleSigin_enabled"]; + return YES; + }; + YTSettingsSectionItem *hidePaidPromotionCard = [[%c(YTSettingsSectionItem) alloc] initWithTitle:LOC(@"HIDE_PAID_PROMOTION_CARDS") titleDescription:LOC(@"HIDE_PAID_PROMOTION_CARDS_DESC")]; hidePaidPromotionCard.hasSwitch = YES; hidePaidPromotionCard.switchVisible = YES; @@ -168,7 +177,7 @@ extern BOOL hidePaidPromotionCard(); return YES; }; - NSMutableArray *sectionItems = [NSMutableArray arrayWithArray:@[killApp, autoFull, castConfirm, ytMiniPlayer, hideAutoplaySwitch, hideCC, hideHUD, hidePaidPromotionCard, hidePreviousAndNextButton, hideHoverCard, bigYTMiniPlayer, oledDarkMode, oledKeyBoard, reExplore]]; + NSMutableArray *sectionItems = [NSMutableArray arrayWithArray:@[killApp, autoFull, castConfirm, ytMiniPlayer, fixGoogleSigin, hideAutoplaySwitch, hideCC, hideHUD, hidePaidPromotionCard, hidePreviousAndNextButton, hideHoverCard, bigYTMiniPlayer, oledDarkMode, oledKeyBoard, reExplore]]; [delegate setSectionItems:sectionItems forCategory:uYouPlusSection title:@"uYouPlus" titleDescription:nil headerHidden:NO]; } diff --git a/uYouPlus.xm b/uYouPlus.xm index 189bd16..a986a94 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -90,6 +90,9 @@ BOOL ytMiniPlayer() { BOOL hidePaidPromotionCard() { return [[NSUserDefaults standardUserDefaults] boolForKey:@"hidePaidPromotionCard_enabled"]; } +BOOL fixGoogleSigin() { + return [[NSUserDefaults standardUserDefaults] boolForKey:@"fixGoogleSigin_enabled"]; +} # pragma mark - Tweaks // Enable Reorder videos from playlist while on the Watch page - @PoomSmart @@ -430,6 +433,14 @@ BOOL hidePaidPromotionCard() { - (NSString *)bundleId { return YT_BUNDLE_ID; } %end +%hook APMAEU ++ (BOOL)isFAS { return YES; } +%end + +%hook GULAppEnvironmentUtil ++ (BOOL)isFromAppStore { return YES; } +%end + %hook SSOConfiguration - (id)initWithClientID:(id)clientID supportedAccountServices:(id)supportedAccountServices { self = %orig; @@ -439,14 +450,6 @@ BOOL hidePaidPromotionCard() { } %end -%hook APMAEU -+ (BOOL)isFAS { return YES; } -%end - -%hook GULAppEnvironmentUtil -+ (BOOL)isFromAppStore { return YES; } -%end - %hook NSBundle - (NSString *)bundleIdentifier { NSArray *address = [NSThread callStackReturnAddresses]; @@ -470,6 +473,7 @@ BOOL hidePaidPromotionCard() { // Fix "You can't sign in to this app because Google can't confirm that it's safe" warning when signing in. by julioverne & PoomSmart // https://gist.github.com/PoomSmart/ef5b172fd4c5371764e027bea2613f93 // https://github.com/qnblackcat/uYouPlus/pull/398 +%group gDevice_challenge_request_hack %hook SSOService + (id)fetcherWithRequest:(NSMutableURLRequest *)request configuration:(id)configuration { if ([request isKindOfClass:[NSMutableURLRequest class]] && request.HTTPBody) { @@ -483,6 +487,7 @@ BOOL hidePaidPromotionCard() { return %orig; } %end +%end // Fix login for YouTube 17.33.2 and higher %hook SSOKeychainCore @@ -872,4 +877,7 @@ static void replaceTab(YTIGuideResponse *response) { if (@available(iOS 16, *)) { %init(iOS16); } + if (!fixGoogleSigin()) { + %init(gDevice_challenge_request_hack); + } } From 39849cac511ae333b92bf2e49028e1ffa6878300 Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Wed, 7 Sep 2022 21:29:12 +0700 Subject: [PATCH 069/156] update strings --- lang/uYouPlus.bundle/en.lproj/Localizable.strings | 3 +++ lang/uYouPlus.bundle/template.lproj/Localizable.strings | 3 +++ lang/uYouPlus.bundle/vi.lproj/Localizable.strings | 3 +++ 3 files changed, 9 insertions(+) diff --git a/lang/uYouPlus.bundle/en.lproj/Localizable.strings b/lang/uYouPlus.bundle/en.lproj/Localizable.strings index 00e859e..3af9516 100644 --- a/lang/uYouPlus.bundle/en.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/en.lproj/Localizable.strings @@ -1,5 +1,8 @@ // Settings +"REPLACE_PREVIOUS_NEXT_BUTTON" = "Replace Previous and Next Button"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Replace Previous and Next Button with Fast forward and Rewind button. App restart is required."; + "FIX_GOOGLE_SIGNIN" = "Fix Google Sign in (for TrollStore user only)"; "FIX_GOOGLE_SIGNIN_DESC" = "Only works when the app was installed via TrollStore: Turn on this option so you can sign in with your Google account. App restart is required."; diff --git a/lang/uYouPlus.bundle/template.lproj/Localizable.strings b/lang/uYouPlus.bundle/template.lproj/Localizable.strings index 8481fa4..23c16b9 100644 --- a/lang/uYouPlus.bundle/template.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/template.lproj/Localizable.strings @@ -12,6 +12,9 @@ // // Settings +"REPLACE_PREVIOUS_NEXT_BUTTON" = "Replace Previous and Next Button"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Replace Previous and Next Button with Fast forward and Rewind button. App restart is required."; + "FIX_GOOGLE_SIGNIN" = "Fix Google Sign in (for TrollStore user only)"; "FIX_GOOGLE_SIGNIN_DESC" = "Only works when the app was installed via TrollStore: Turn on this option so you can sign in with your Google account. App restart is required."; diff --git a/lang/uYouPlus.bundle/vi.lproj/Localizable.strings b/lang/uYouPlus.bundle/vi.lproj/Localizable.strings index 0dc9022..20fe639 100644 --- a/lang/uYouPlus.bundle/vi.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/vi.lproj/Localizable.strings @@ -1,5 +1,8 @@ // Settings +"REPLACE_PREVIOUS_NEXT_BUTTON" = "Thay thế nút chuyển video"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Thay thế nút chuyển video bằng nút tua nhanh. Cần khởi động lại ứng dụng."; + "FIX_GOOGLE_SIGNIN" = "Sửa lỗi không thể đăng nhập tài khoản Google"; "FIX_GOOGLE_SIGNIN_DESC" = "Lưu ý rằng tính năng này chỉ hoạt động khi ứng dụng được cài đặt bằng TrollStore: Bật tính năng này để sửa lỗi không thể đăng nhập bằng tài khoản Google. Cần khởi động lại ứng dụng."; From 2191478712ca12f6f1bb8039e0c5032f1ff0808c Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Wed, 7 Sep 2022 21:30:15 +0700 Subject: [PATCH 070/156] an option to replace Previous & Next button with Fast forward & Rewind button --- Settings.xm | 11 ++++++++++- uYouPlus.xm | 44 +++++++++++++++++++++++++++++++------------- 2 files changed, 41 insertions(+), 14 deletions(-) diff --git a/Settings.xm b/Settings.xm index ef3abc5..33d4b93 100644 --- a/Settings.xm +++ b/Settings.xm @@ -51,6 +51,15 @@ extern BOOL hidePaidPromotionCard(); exit(0); }]; + YTSettingsSectionItem *replacePreviousAndNextButton = [[%c(YTSettingsSectionItem) alloc] initWithTitle:LOC(@"REPLACE_PREVIOUS_NEXT_BUTTON") titleDescription:LOC(@"REPLACE_PREVIOUS_NEXT_BUTTON_DESC")]; + replacePreviousAndNextButton.hasSwitch = YES; + replacePreviousAndNextButton.switchVisible = YES; + replacePreviousAndNextButton.on = [[NSUserDefaults standardUserDefaults] boolForKey:@"replacePreviousAndNextButton_enabled"]; + replacePreviousAndNextButton.switchBlock = ^BOOL (YTSettingsCell *cell, BOOL enabled) { + [[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"replacePreviousAndNextButton_enabled"]; + return YES; + }; + YTSettingsSectionItem *fixGoogleSigin = [[%c(YTSettingsSectionItem) alloc] initWithTitle:LOC(@"FIX_GOOGLE_SIGNIN") titleDescription:LOC(@"FIX_GOOGLE_SIGNIN_DESC")]; fixGoogleSigin.hasSwitch = YES; fixGoogleSigin.switchVisible = YES; @@ -177,7 +186,7 @@ extern BOOL hidePaidPromotionCard(); return YES; }; - NSMutableArray *sectionItems = [NSMutableArray arrayWithArray:@[killApp, autoFull, castConfirm, ytMiniPlayer, fixGoogleSigin, hideAutoplaySwitch, hideCC, hideHUD, hidePaidPromotionCard, hidePreviousAndNextButton, hideHoverCard, bigYTMiniPlayer, oledDarkMode, oledKeyBoard, reExplore]]; + NSMutableArray *sectionItems = [NSMutableArray arrayWithArray:@[killApp, autoFull, castConfirm, ytMiniPlayer, fixGoogleSigin, hideAutoplaySwitch, hideCC, hideHUD, hidePaidPromotionCard, hidePreviousAndNextButton, hideHoverCard, bigYTMiniPlayer, oledDarkMode, oledKeyBoard, replacePreviousAndNextButton, reExplore]]; [delegate setSectionItems:sectionItems forCategory:uYouPlusSection title:@"uYouPlus" titleDescription:nil headerHidden:NO]; } diff --git a/uYouPlus.xm b/uYouPlus.xm index a986a94..9350e89 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -30,6 +30,7 @@ NSBundle *uYouPlusBundle() { } NSBundle *tweakBundle = uYouPlusBundle(); +// Keychain patching static NSString *accessGroupID() { NSDictionary *query = [NSDictionary dictionaryWithObjectsAndKeys: (__bridge NSString *)kSecClassGenericPassword, (__bridge NSString *)kSecClass, @@ -93,6 +94,9 @@ BOOL hidePaidPromotionCard() { BOOL fixGoogleSigin() { return [[NSUserDefaults standardUserDefaults] boolForKey:@"fixGoogleSigin_enabled"]; } +BOOL replacePreviousAndNextButton() { + return [[NSUserDefaults standardUserDefaults] boolForKey:@"replacePreviousAndNextButton_enabled"]; +} # pragma mark - Tweaks // Enable Reorder videos from playlist while on the Watch page - @PoomSmart @@ -114,7 +118,7 @@ BOOL fixGoogleSigin() { } %end -// Hide CC / Autoplay switch / Next & Previous button +// Hide CC / Autoplay switch %hook YTMainAppControlsOverlayView - (void)setClosedCaptionsOrSubtitlesButtonAvailable:(BOOL)arg1 { // hide CC button if (hideCC()) { return %orig(NO); } @@ -124,15 +128,22 @@ BOOL fixGoogleSigin() { if (hideAutoplaySwitch()) {} else { return %orig; } } -- (void)layoutSubviews { // hide Next & Previous button - %orig; - if (hidePreviousAndNextButton()) { - MSHookIvar(self, "_nextButton").hidden = YES; - MSHookIvar(self, "_previousButton").hidden = YES; - MSHookIvar(self, "_nextButtonView").hidden = YES; - MSHookIvar(self, "_previousButtonView").hidden = YES; - } -} +%end + +// Hide Next & Previous button +%group gHidePreviousAndNextButton +%hook YTColdConfig +- (BOOL)removeNextPaddleForSingletonVideos { return YES; } +- (BOOL)removePreviousPaddleForSingletonVideos { return YES; } +%end +%end + +// Replace Next & Previous button with Fast forward & Rewind button +%group gReplacePreviousAndNextButton +%hook YTColdConfig +- (BOOL)replaceNextPaddleWithFastForwardButtonForSingletonVods { return YES; } +- (BOOL)replacePreviousPaddleWithRewindButtonForSingletonVods { return YES; } +%end %end // Hide HUD Messages @@ -250,6 +261,7 @@ BOOL fixGoogleSigin() { // YouRememberCaption: https://poomsmart.github.io/repo/depictions/youremembercaption.html %hook YTColdConfig - (BOOL)respectDeviceCaptionSetting { return NO; } +- (BOOL)isLandscapeEngagementPanelSwipeRightToDismissEnabled { return YES; } %end // NOYTPremium - https://github.com/PoomSmart/NoYTPremium/ @@ -350,9 +362,9 @@ BOOL fixGoogleSigin() { // Prevent uYou player bar from showing when not playing downloaded media %hook PlayerManager - (void)pause { - if (isnan([self progress])) - return; - %orig; + if (isnan([self progress])) + return; + %orig; } %end @@ -874,6 +886,12 @@ static void replaceTab(YTIGuideResponse *response) { if (bigYTMiniPlayer() && (UIDevice.currentDevice.userInterfaceIdiom != UIUserInterfaceIdiomPad)) { %init(Main); } + if (hidePreviousAndNextButton()) { + %init(gHidePreviousAndNextButton); + } + if (replacePreviousAndNextButton()) { + %init(gReplacePreviousAndNextButton); + } if (@available(iOS 16, *)) { %init(iOS16); } From 7a128ab908685353e1cec78c1f4e14a51fcf91b0 Mon Sep 17 00:00:00 2001 From: PoomSmart Date: Wed, 7 Sep 2022 22:47:29 +0700 Subject: [PATCH 071/156] Test fixing app crash on video view --- Tweaks/Return-YouTube-Dislikes | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Tweaks/Return-YouTube-Dislikes b/Tweaks/Return-YouTube-Dislikes index deae67a..691abad 160000 --- a/Tweaks/Return-YouTube-Dislikes +++ b/Tweaks/Return-YouTube-Dislikes @@ -1 +1 @@ -Subproject commit deae67afeacfd6ab9ee12552a1eb2220c97f4607 +Subproject commit 691abad1d9a1884390707d32129a2ec134e1abd1 From bb5c02272f0f4352c0cd709aabd3c206b5527d34 Mon Sep 17 00:00:00 2001 From: PoomSmart Date: Thu, 8 Sep 2022 12:26:12 +0700 Subject: [PATCH 072/156] Wrapped up --- Tweaks/Return-YouTube-Dislikes | 2 +- Tweaks/YouTubeHeader | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Tweaks/Return-YouTube-Dislikes b/Tweaks/Return-YouTube-Dislikes index 691abad..9085ad1 160000 --- a/Tweaks/Return-YouTube-Dislikes +++ b/Tweaks/Return-YouTube-Dislikes @@ -1 +1 @@ -Subproject commit 691abad1d9a1884390707d32129a2ec134e1abd1 +Subproject commit 9085ad1176f223beb27b1057a2de3f2b63df3ba7 diff --git a/Tweaks/YouTubeHeader b/Tweaks/YouTubeHeader index fa1fb5a..f9f516a 160000 --- a/Tweaks/YouTubeHeader +++ b/Tweaks/YouTubeHeader @@ -1 +1 @@ -Subproject commit fa1fb5a993c35ee10317093656ba5e4b88dfd016 +Subproject commit f9f516a3d8ca5228e845290e270644b5c2de773b From 99299cc5bf30457cc65e97bfcf6a65ab4509dfdd Mon Sep 17 00:00:00 2001 From: PoomSmart Date: Thu, 8 Sep 2022 12:41:17 +0700 Subject: [PATCH 073/156] Switched to main --- Tweaks/Return-YouTube-Dislikes | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Tweaks/Return-YouTube-Dislikes b/Tweaks/Return-YouTube-Dislikes index 9085ad1..e7f65e2 160000 --- a/Tweaks/Return-YouTube-Dislikes +++ b/Tweaks/Return-YouTube-Dislikes @@ -1 +1 @@ -Subproject commit 9085ad1176f223beb27b1057a2de3f2b63df3ba7 +Subproject commit e7f65e2a68345904720ad97b324e87401e33d4be From 35b6374d8cd210b18ab0b82e42bce95e320b68f0 Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Thu, 8 Sep 2022 15:48:48 +0700 Subject: [PATCH 074/156] update submodules --- Tweaks/Return-YouTube-Dislikes | 2 +- Tweaks/YouTubeHeader | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Tweaks/Return-YouTube-Dislikes b/Tweaks/Return-YouTube-Dislikes index deae67a..e7f65e2 160000 --- a/Tweaks/Return-YouTube-Dislikes +++ b/Tweaks/Return-YouTube-Dislikes @@ -1 +1 @@ -Subproject commit deae67afeacfd6ab9ee12552a1eb2220c97f4607 +Subproject commit e7f65e2a68345904720ad97b324e87401e33d4be diff --git a/Tweaks/YouTubeHeader b/Tweaks/YouTubeHeader index fa1fb5a..f9f516a 160000 --- a/Tweaks/YouTubeHeader +++ b/Tweaks/YouTubeHeader @@ -1 +1 @@ -Subproject commit fa1fb5a993c35ee10317093656ba5e4b88dfd016 +Subproject commit f9f516a3d8ca5228e845290e270644b5c2de773b From 377ebec52576e8c47a0df2078b98341854b6ce9f Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Thu, 8 Sep 2022 16:23:54 +0700 Subject: [PATCH 075/156] v17.35.3-2.1 --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 8f20de4..396d62c 100644 --- a/README.md +++ b/README.md @@ -80,16 +80,16 @@ - My official AltStore repo: https://qnblackcat.github.io/AltStore/ - - [Open in AltStore (v17.34.3-2.1)](https://tinyurl.com/3vjyvwwe) - It will take a while to install because AltStore needs to download the IPA. + - [Open in AltStore (v17.35.3-2.1)](https://tinyurl.com/yeyvntka) - It will take a while to install because AltStore needs to download the IPA. -- Version info: _(last update: Sep 01)_ +- Version info: _(last update: Sep 08)_
Expand | **Tweaks/App** | **Developer** | **Version** | **Open source** | | - | - | :-: | :-: | -| **YouTube** | Google Inc | 17.34.3 | ✖︎ | +| **YouTube** | Google Inc | 17.35.3 | ✖︎ | | [uYou](https://github.com/MiRO92/uYou-for-YouTube) | [MiRO92](https://twitter.com/miro92) | 2.1 | ✖︎ | | [Open in YouTube](https://github.com/CokePokes/YoutubeExtensions) | [CokePokes](https://github.com/CokePokes) | 1.2 | ✖︎ | | **iSponsorBlock** | [Galactic-Dev](https://github.com/Galactic-Dev) | 1.0-15 | [✔︎](https://github.com/Galactic-Dev/iSponsorBlock) | @@ -108,7 +108,7 @@ | **YTAutoFullScreen** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.3 | [✔︎](https://github.com/PoomSmart/YTAutoFullScreen) | | **YouRememberCaption** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.0 | [✔︎](https://poomsmart.github.io/repo/depictions/youremembercaption.html) | | **YTClassicVideoQuality** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.1 | [✔︎](https://github.com/PoomSmart/YTClassicVideoQuality) | -| **Return YouTube Dislike** | [PoomSmart](https://twitter.com/poomsmart) | 1.6.6 | [✔︎](https://github.com/PoomSmart/Return-YouTube-Dislikes) | +| **Return YouTube Dislike** | [PoomSmart](https://twitter.com/poomsmart) | 1.6.7 | [✔︎](https://github.com/PoomSmart/Return-YouTube-Dislikes) | | **YTNoCheckLocalNetwork** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.2 | [✔︎](https://poomsmart.github.io/repo/depictions/ytnochecklocalnetwork.html) |
From b1ea29dc6c09eee6174336458174ec6fd280424e Mon Sep 17 00:00:00 2001 From: Thunderz2016 <1031197842@qq.com> Date: Sat, 10 Sep 2022 16:16:31 +0800 Subject: [PATCH 076/156] Add translations for new strings Translated REPLACE_PREVIOUS_NEXT_BUTTON and FIX_GOOGLE_SIGNIN, corrected quotation marks, and clarified translation for CASTING. --- lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings b/lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings index 4e3b7a4..9facbc7 100644 --- a/lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings @@ -1,5 +1,11 @@ // Settings +"REPLACE_PREVIOUS_NEXT_BUTTON" = "替换上一个/下一个按钮"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "将播放器控制界面上的上一个/下一个按钮替换成快进/快退按钮。更改本设置后需要重启App。"; + +"FIX_GOOGLE_SIGNIN" = "修复Google账号登录问题(仅针对TrollStore用户)"; +"FIX_GOOGLE_SIGNIN_DESC" = "仅在使用TrollStore安装本App的情况下生效:启用本选项后可正常登录您的Google账号。更改本设置后需要重启App。"; + "KILL_APP" = "关闭YouTube"; "KILL_APP_DESC" = "点击此处关闭YouTube!"; @@ -31,7 +37,7 @@ "AUTO_FULLSCREEN_DESC" = "自动全屏播放视频。"; "HIDE_HUD_MESSAGES" = "隐藏系统提醒"; -"HIDE_HUD_MESSAGES_DESC" = "例如:\"已启用/停用字幕\"、\"已开启/关闭视频循环播放\"等。"; +"HIDE_HUD_MESSAGES_DESC" = "例如:“已启用/停用字幕”、“已开启/关闭视频循环播放”等。"; "OLED_DARKMODE" = "OLED 深色模式(实验性功能)"; "OLED_DARKMODE_DESC" = "在某些情况下可能不会正常工作。更改本设置后需要重启App。"; @@ -40,10 +46,10 @@ "OLED_KEYBOARD_DESC" = "在某些情况下可能不会正常工作。更改本设置后需要重启App。"; "HIDE_PAID_PROMOTION_CARDS" = "隐藏付费宣传内容提醒横幅"; -"HIDE_PAID_PROMOTION_CARDS_DESC" = "隐藏出现在部分视频中的\"包含付费宣传内容\"横幅。"; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "隐藏出现在部分视频中的“包含付费宣传内容”横幅。"; // YTCastConfirm -"CASTING" = "正在投屏"; +"CASTING" = "准备投屏"; "MSG_ARE_YOU_SURE" = "您确定要开始投屏吗?"; "MSG_YES" = "确定"; "MSG_CANCEL" = "取消"; From aed82d4f12c6128166e53423c42c843acf10bbf0 Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Sat, 10 Sep 2022 19:32:09 +0700 Subject: [PATCH 077/156] update JA strings --- lang/uYouPlus.bundle/ja.lproj/Localizable.strings | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lang/uYouPlus.bundle/ja.lproj/Localizable.strings b/lang/uYouPlus.bundle/ja.lproj/Localizable.strings index 716b89e..49e6d61 100644 --- a/lang/uYouPlus.bundle/ja.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/ja.lproj/Localizable.strings @@ -1,5 +1,11 @@ // Settings +"REPLACE_PREVIOUS_NEXT_BUTTON" = "前後の動画のボタンを置き換える"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "前後の動画を再生するボタンを早送り、巻き戻しボタンに置き換えます。アプリの再起動が必要です。"; + +"FIX_GOOGLE_SIGNIN" = "Googleのサインイン (TrollStoreユーザーのみ)"; +"FIX_GOOGLE_SIGNIN_DESC" = "アプリがTrollStoreでインストールされた場合のみ機能します。このオプションを有効にしてGoogleアカウントでサインインできるようにします。アプリの再起動が必要です。"; + "KILL_APP" = "YouTubeを閉じる"; "KILL_APP_DESC" = "ここをタップしてYouTubeを終了できます!"; From 6180fe7512d55a7b2395781c20f5a3a4bac8ee2e Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Sat, 10 Sep 2022 19:32:35 +0700 Subject: [PATCH 078/156] update Settings.xm --- Settings.xm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Settings.xm b/Settings.xm index 33d4b93..715a6fd 100644 --- a/Settings.xm +++ b/Settings.xm @@ -23,6 +23,8 @@ extern BOOL castConfirm(); extern BOOL ytMiniPlayer(); extern BOOL hidePreviousAndNextButton(); extern BOOL hidePaidPromotionCard(); +extern BOOL fixGoogleSigin(); +extern BOOL replacePreviousAndNextButton(); // Settings %hook YTAppSettingsPresentationData From 975cb6005cf60088e6573d5e542e88d47756c9bc Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Sat, 10 Sep 2022 19:33:15 +0700 Subject: [PATCH 079/156] update submodules --- Tweaks/Return-YouTube-Dislikes | 2 +- Tweaks/YouPiP | 2 +- Tweaks/YouTubeHeader | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Tweaks/Return-YouTube-Dislikes b/Tweaks/Return-YouTube-Dislikes index e7f65e2..8b1e9d1 160000 --- a/Tweaks/Return-YouTube-Dislikes +++ b/Tweaks/Return-YouTube-Dislikes @@ -1 +1 @@ -Subproject commit e7f65e2a68345904720ad97b324e87401e33d4be +Subproject commit 8b1e9d14f12b4dab09c8c63ae77e77025a01edf9 diff --git a/Tweaks/YouPiP b/Tweaks/YouPiP index 77bed4f..a754e1b 160000 --- a/Tweaks/YouPiP +++ b/Tweaks/YouPiP @@ -1 +1 @@ -Subproject commit 77bed4f3fbec0260a21473c61697d9d11095471f +Subproject commit a754e1bf32056203235ffa0e2f843fb84f342ddb diff --git a/Tweaks/YouTubeHeader b/Tweaks/YouTubeHeader index f9f516a..f807d2e 160000 --- a/Tweaks/YouTubeHeader +++ b/Tweaks/YouTubeHeader @@ -1 +1 @@ -Subproject commit f9f516a3d8ca5228e845290e270644b5c2de773b +Subproject commit f807d2eabd21c3ddfd38a2c83588e0f18bd13c86 From 72a6f1caacd1ee3ac038b7b97334099d7e3d516d Mon Sep 17 00:00:00 2001 From: moh-ter <109860711+moh-ter@users.noreply.github.com> Date: Mon, 12 Sep 2022 21:44:36 +0300 Subject: [PATCH 080/156] Update Localizable.strings --- lang/uYouPlus.bundle/ar.lproj/Localizable.strings | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/lang/uYouPlus.bundle/ar.lproj/Localizable.strings b/lang/uYouPlus.bundle/ar.lproj/Localizable.strings index 90d66f9..d2b97c4 100644 --- a/lang/uYouPlus.bundle/ar.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/ar.lproj/Localizable.strings @@ -1,10 +1,16 @@ // Settings +"REPLACE_PREVIOUS_NEXT_BUTTON" = "تقدم وتراجع بدلاً من السابق والتالي"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "استبدال زرّي المقطع السابق والمقطع التالي بزرّي تقدم وتراجع. يتطلب إعادة تشغيل التطبيق."; + +"FIX_GOOGLE_SIGNIN" = "إصلاح تسجيل الدخول بحساب جوجل (لمستخدمي TrollStore فقط)"; +"FIX_GOOGLE_SIGNIN_DESC" = "هذا الخيار لا يعمل إلا إذا كان التطبيق مثبت بواسطة TrollStore: فعل هذا الخيار لتتمكن من تسجيل الدخول بحساب جوجل. يتطلب إعادة تشغيل التطبيق."; + "KILL_APP" = "إغلاق تطبيق يوتيوب"; "KILL_APP_DESC" = "المس هنا لإغلاق تطبيق يوتيوب!"; -"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "إخفاء زر السابق والتالي"; -"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "إخفاء زرّي السابق والتالي من أزرار التحكم على الفيديو."; +"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "إخفاء زرّي السابق والتالي"; +"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "إخفاء زرّي المقطع السابق والمقطع التالي من أزرار التحكم على الفيديو."; "YT_MINIPLAYER" = "السماح بالمشغل المصغّر لكل فيديوهات يوتيوب"; "YT_MINIPLAYER_DESC" = "عند تصغير فيديوهات الأطفال مثلاً (قبل إغلاق المقطع)."; @@ -46,4 +52,4 @@ "CASTING" = "البث"; "MSG_ARE_YOU_SURE" = "هل أنت متأكد أنك تريد بدء البث؟"; "MSG_YES" = "نعم"; -"MSG_CANCEL" = "إلغاء"; \ No newline at end of file +"MSG_CANCEL" = "إلغاء"; From 80c36940f6356333b5eca510590535c223161070 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20=C4=90=E1=BA=A1t?= <52943116+qnblackcat@users.noreply.github.com> Date: Tue, 13 Sep 2022 13:10:50 +0700 Subject: [PATCH 081/156] v17.36.3-2.1 --- README.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 396d62c..5678860 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -![cydia-1900000830-iphone-0-1628105716 3](https://user-images.githubusercontent.com/52943116/135612614-3d3138cb-2a3d-4ed1-9244-905bab8f5c9f.PNG) +![IMG_2196](https://user-images.githubusercontent.com/52943116/189822859-8a0952db-9264-4b5b-9cbe-d0a87b2db5a0.PNG) # Table of Contents @@ -74,22 +74,22 @@ # Download -- **uYouPlus** (or you can call it uYou+) requires iOS or iPadOS 13.0 or later. The latest version of **uYouPlus** can be found in the [Release tab](https://github.com/qnblackcat/uYouPlus/releases). +- **uYouPlus** (or you can call it uYou+) requires iOS or iPadOS 14.0 or later. The latest version of **uYouPlus** can be found in the [Release tab](https://github.com/qnblackcat/uYouPlus/releases). Note that [v17.35.2-2.1](https://github.com/qnblackcat/uYouPlus/releases/tag/v17.35.3-2.1) is the latest version that supports iOS 13. - For AltStore user: - My official AltStore repo: https://qnblackcat.github.io/AltStore/ - - [Open in AltStore (v17.35.3-2.1)](https://tinyurl.com/yeyvntka) - It will take a while to install because AltStore needs to download the IPA. + - [Open in AltStore (v17.36.3-2.1)](https://tinyurl.com/mv4dd4yn) - It will take a while to install because AltStore needs to download the IPA. -- Version info: _(last update: Sep 08)_ +- Version info: _(last update: Sep 13)_
Expand | **Tweaks/App** | **Developer** | **Version** | **Open source** | | - | - | :-: | :-: | -| **YouTube** | Google Inc | 17.35.3 | ✖︎ | +| **YouTube** | Google Inc | 17.36.3 | ✖︎ | | [uYou](https://github.com/MiRO92/uYou-for-YouTube) | [MiRO92](https://twitter.com/miro92) | 2.1 | ✖︎ | | [Open in YouTube](https://github.com/CokePokes/YoutubeExtensions) | [CokePokes](https://github.com/CokePokes) | 1.2 | ✖︎ | | **iSponsorBlock** | [Galactic-Dev](https://github.com/Galactic-Dev) | 1.0-15 | [✔︎](https://github.com/Galactic-Dev/iSponsorBlock) | @@ -108,7 +108,7 @@ | **YTAutoFullScreen** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.3 | [✔︎](https://github.com/PoomSmart/YTAutoFullScreen) | | **YouRememberCaption** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.0 | [✔︎](https://poomsmart.github.io/repo/depictions/youremembercaption.html) | | **YTClassicVideoQuality** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.1 | [✔︎](https://github.com/PoomSmart/YTClassicVideoQuality) | -| **Return YouTube Dislike** | [PoomSmart](https://twitter.com/poomsmart) | 1.6.7 | [✔︎](https://github.com/PoomSmart/Return-YouTube-Dislikes) | +| **Return YouTube Dislike** | [PoomSmart](https://twitter.com/poomsmart) | 1.6.8 | [✔︎](https://github.com/PoomSmart/Return-YouTube-Dislikes) | | **YTNoCheckLocalNetwork** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.2 | [✔︎](https://poomsmart.github.io/repo/depictions/ytnochecklocalnetwork.html) |
From c4fd520a3dbbaefdf3697250b58e3b045ed4da8b Mon Sep 17 00:00:00 2001 From: Victor Alves Date: Tue, 13 Sep 2022 03:51:28 -0300 Subject: [PATCH 082/156] Update Portuguese strings --- lang/uYouPlus.bundle/pt.lproj/Localizable.strings | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lang/uYouPlus.bundle/pt.lproj/Localizable.strings b/lang/uYouPlus.bundle/pt.lproj/Localizable.strings index 9f1705d..08ca305 100644 --- a/lang/uYouPlus.bundle/pt.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/pt.lproj/Localizable.strings @@ -1,4 +1,9 @@ // Settings +"REPLACE_PREVIOUS_NEXT_BUTTON" = "Substituir o botão Anterior e Próximo"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Substitui o botão Anterior e Próximo pelo botão Avançar e Retroceder. A reinicialização do app é necessária."; + +"FIX_GOOGLE_SIGNIN" = "Corrigir o login do Google (somente para usuários da TrollStore)"; +"FIX_GOOGLE_SIGNIN_DESC" = "Funciona apenas quando o app foi instalado via TrollStore: ative esta opção para que você possa fazer login com sua conta do Google. A reinicialização do app é necessária."; "KILL_APP" = "Fechar o YouTube"; "KILL_APP_DESC" = "Toque aqui para fechar o YouTube!"; From cce821741d4b2eebaa3e8ee60e0add480e380120 Mon Sep 17 00:00:00 2001 From: Jinbong Date: Wed, 14 Sep 2022 06:33:32 +0900 Subject: [PATCH 083/156] Update Korean localization --- lang/uYouPlus.bundle/ko.lproj/Localizable.strings | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lang/uYouPlus.bundle/ko.lproj/Localizable.strings b/lang/uYouPlus.bundle/ko.lproj/Localizable.strings index e1915a0..ae7a8bf 100644 --- a/lang/uYouPlus.bundle/ko.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/ko.lproj/Localizable.strings @@ -1,5 +1,11 @@ // Settings +"REPLACE_PREVIOUS_NEXT_BUTTON" = "이전, 다음 재생 버튼 교체"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "이전 재생, 다음 재생 버튼을 빨리 감기, 되감기 버튼으로 교체합니다. 앱을 다시 시작해야 합니다."; + +"FIX_GOOGLE_SIGNIN" = "구글 로그인 문제 수정 (TrollStore 사용자 대상)"; +"FIX_GOOGLE_SIGNIN_DESC" = "TrollStore를 통해 설치된 앱에서만 동작합니다: 구글 계정으로 로그인하려면 이 옵션을 켜 주세요. 앱을 다시 시작해야 합니다."; + "KILL_APP" = "YouTube 닫기"; "KILL_APP_DESC" = "YouTube 앱을 닫으려면 여기를 탭하세요!"; From 4a5f1dae695e6af4a27f9a99104bdc2c66ceaa72 Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Sat, 17 Sep 2022 10:20:17 +0700 Subject: [PATCH 084/156] update submodules --- Tweaks/YTUHD | 2 +- Tweaks/YouTubeHeader | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Tweaks/YTUHD b/Tweaks/YTUHD index b0d24c0..47bcdc5 160000 --- a/Tweaks/YTUHD +++ b/Tweaks/YTUHD @@ -1 +1 @@ -Subproject commit b0d24c0859f24c714334b60154ceaef9c09fb663 +Subproject commit 47bcdc5a5b7fb4e7bb77809c6b5d50035d67649f diff --git a/Tweaks/YouTubeHeader b/Tweaks/YouTubeHeader index f807d2e..efcf986 160000 --- a/Tweaks/YouTubeHeader +++ b/Tweaks/YouTubeHeader @@ -1 +1 @@ -Subproject commit f807d2eabd21c3ddfd38a2c83588e0f18bd13c86 +Subproject commit efcf986beb29c25d9f570e57795dff6842cd3ee3 From 8b95b82492ccc3289facc3db58b75ef8c0726837 Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Sat, 17 Sep 2022 10:20:24 +0700 Subject: [PATCH 085/156] udpate uYouPlus.xm --- uYouPlus.xm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/uYouPlus.xm b/uYouPlus.xm index 9350e89..d45445d 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -748,6 +748,7 @@ UIColor* raisedColor = [UIColor colorWithRed:0.035 green:0.035 blue:0.035 alpha: - (void)didMoveToWindow { %orig; if (isDarkMode()) { + self.backgroundColor = raisedColor; self.subviews[1].backgroundColor = raisedColor; self.superview.backgroundColor = raisedColor; } @@ -887,15 +888,15 @@ static void replaceTab(YTIGuideResponse *response) { %init(Main); } if (hidePreviousAndNextButton()) { - %init(gHidePreviousAndNextButton); + %init(gHidePreviousAndNextButton); } if (replacePreviousAndNextButton()) { - %init(gReplacePreviousAndNextButton); + %init(gReplacePreviousAndNextButton); } if (@available(iOS 16, *)) { %init(iOS16); } if (!fixGoogleSigin()) { - %init(gDevice_challenge_request_hack); + %init(gDevice_challenge_request_hack); } } From 799a98951aae10b8df48fa5c789b7cc93259210f Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Sat, 17 Sep 2022 10:20:33 +0700 Subject: [PATCH 086/156] v17.36.4-2.1 --- README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 5678860..c0e22f1 100644 --- a/README.md +++ b/README.md @@ -74,22 +74,22 @@ # Download -- **uYouPlus** (or you can call it uYou+) requires iOS or iPadOS 14.0 or later. The latest version of **uYouPlus** can be found in the [Release tab](https://github.com/qnblackcat/uYouPlus/releases). Note that [v17.35.2-2.1](https://github.com/qnblackcat/uYouPlus/releases/tag/v17.35.3-2.1) is the latest version that supports iOS 13. +- **uYouPlus** (or you can call it uYou+) requires iOS or iPadOS 13.0 or later. The latest version of **uYouPlus** can be found in the [Release tab](https://github.com/qnblackcat/uYouPlus/releases). - For AltStore user: - My official AltStore repo: https://qnblackcat.github.io/AltStore/ - - [Open in AltStore (v17.36.3-2.1)](https://tinyurl.com/mv4dd4yn) - It will take a while to install because AltStore needs to download the IPA. + - [Open in AltStore (v17.36.4-2.1)](https://tinyurl.com/bdezph3t) - It will take a while to install because AltStore needs to download the IPA. -- Version info: _(last update: Sep 13)_ +- Version info: _(last update: Sep 17)_
Expand | **Tweaks/App** | **Developer** | **Version** | **Open source** | | - | - | :-: | :-: | -| **YouTube** | Google Inc | 17.36.3 | ✖︎ | +| **YouTube** | Google Inc | 17.36.4 | ✖︎ | | [uYou](https://github.com/MiRO92/uYou-for-YouTube) | [MiRO92](https://twitter.com/miro92) | 2.1 | ✖︎ | | [Open in YouTube](https://github.com/CokePokes/YoutubeExtensions) | [CokePokes](https://github.com/CokePokes) | 1.2 | ✖︎ | | **iSponsorBlock** | [Galactic-Dev](https://github.com/Galactic-Dev) | 1.0-15 | [✔︎](https://github.com/Galactic-Dev/iSponsorBlock) | @@ -99,7 +99,7 @@ | **YTSpeed** | [Lyvendia](https://github.com/Lyvendia) | 1.0.1 | [✔︎](https://github.com/Lyvendia/YTSpeed) | | **YTCastConfirm** | [JamieBerghmans](https://github.com/JamieBerghmans) | 1.0.0 | [✔︎](https://github.com/JamieBerghmans/YTCastConfirm) | | **Alderis Color Picker** | [HASHBANG Productions](https://github.com/hbang) | 1.2| [✔︎](https://github.com/hbang/Alderis) | -| **YTUHD** | [PoomSmart](https://twitter.com/poomsmart) | 1.2.9 | [✔︎](https://github.com/PoomSmart/YTUHD) | +| **YTUHD** | [PoomSmart](https://twitter.com/poomsmart) | 1.2.10 | [✔︎](https://github.com/PoomSmart/YTUHD) | | **YouPiP** | [PoomSmart](https://twitter.com/poomsmart) | 1.7.9 | [✔︎](https://github.com/PoomSmart/YouPiP) | | **IAmYouTube** | [PoomSmart](https://twitter.com/poomsmart) | 1.2.0 | [✔︎](https://github.com/PoomSmart/IAmYouTube) | | **YTReExplore** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.2 | [✔︎](https://github.com/PoomSmart/YTReExplore) | From aa338eab73cc6cbc0f6f88f05994f25561d7930b Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Sun, 18 Sep 2022 17:00:46 +0700 Subject: [PATCH 087/156] disable device_challenge_request hack? --- Settings.xm | 4 +++- uYouPlus.xm | 8 +++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/Settings.xm b/Settings.xm index 715a6fd..90b2b08 100644 --- a/Settings.xm +++ b/Settings.xm @@ -62,6 +62,7 @@ extern BOOL replacePreviousAndNextButton(); return YES; }; + /* YTSettingsSectionItem *fixGoogleSigin = [[%c(YTSettingsSectionItem) alloc] initWithTitle:LOC(@"FIX_GOOGLE_SIGNIN") titleDescription:LOC(@"FIX_GOOGLE_SIGNIN_DESC")]; fixGoogleSigin.hasSwitch = YES; fixGoogleSigin.switchVisible = YES; @@ -70,6 +71,7 @@ extern BOOL replacePreviousAndNextButton(); [[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"fixGoogleSigin_enabled"]; return YES; }; + */ YTSettingsSectionItem *hidePaidPromotionCard = [[%c(YTSettingsSectionItem) alloc] initWithTitle:LOC(@"HIDE_PAID_PROMOTION_CARDS") titleDescription:LOC(@"HIDE_PAID_PROMOTION_CARDS_DESC")]; hidePaidPromotionCard.hasSwitch = YES; @@ -188,7 +190,7 @@ extern BOOL replacePreviousAndNextButton(); return YES; }; - NSMutableArray *sectionItems = [NSMutableArray arrayWithArray:@[killApp, autoFull, castConfirm, ytMiniPlayer, fixGoogleSigin, hideAutoplaySwitch, hideCC, hideHUD, hidePaidPromotionCard, hidePreviousAndNextButton, hideHoverCard, bigYTMiniPlayer, oledDarkMode, oledKeyBoard, replacePreviousAndNextButton, reExplore]]; + NSMutableArray *sectionItems = [NSMutableArray arrayWithArray:@[killApp, autoFull, castConfirm, ytMiniPlayer, hideAutoplaySwitch, hideCC, hideHUD, hidePaidPromotionCard, hidePreviousAndNextButton, hideHoverCard, bigYTMiniPlayer, oledDarkMode, oledKeyBoard, replacePreviousAndNextButton, reExplore]]; [delegate setSectionItems:sectionItems forCategory:uYouPlusSection title:@"uYouPlus" titleDescription:nil headerHidden:NO]; } diff --git a/uYouPlus.xm b/uYouPlus.xm index d45445d..cbabb94 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -485,6 +485,7 @@ BOOL replacePreviousAndNextButton() { // Fix "You can't sign in to this app because Google can't confirm that it's safe" warning when signing in. by julioverne & PoomSmart // https://gist.github.com/PoomSmart/ef5b172fd4c5371764e027bea2613f93 // https://github.com/qnblackcat/uYouPlus/pull/398 +/* %group gDevice_challenge_request_hack %hook SSOService + (id)fetcherWithRequest:(NSMutableURLRequest *)request configuration:(id)configuration { @@ -500,6 +501,7 @@ BOOL replacePreviousAndNextButton() { } %end %end +*/ // Fix login for YouTube 17.33.2 and higher %hook SSOKeychainCore @@ -896,7 +898,7 @@ static void replaceTab(YTIGuideResponse *response) { if (@available(iOS 16, *)) { %init(iOS16); } - if (!fixGoogleSigin()) { - %init(gDevice_challenge_request_hack); - } + // if (!fixGoogleSigin()) { + // %init(gDevice_challenge_request_hack); + // } } From 5741ae5584f3093da9becba7883b8ca105b34f5b Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Tue, 20 Sep 2022 18:14:56 +0700 Subject: [PATCH 088/156] better explanation --- lang/uYouPlus.bundle/en.lproj/Localizable.strings | 2 +- lang/uYouPlus.bundle/template.lproj/Localizable.strings | 2 +- lang/uYouPlus.bundle/vi.lproj/Localizable.strings | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lang/uYouPlus.bundle/en.lproj/Localizable.strings b/lang/uYouPlus.bundle/en.lproj/Localizable.strings index 3af9516..dcaf18c 100644 --- a/lang/uYouPlus.bundle/en.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/en.lproj/Localizable.strings @@ -4,7 +4,7 @@ "REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Replace Previous and Next Button with Fast forward and Rewind button. App restart is required."; "FIX_GOOGLE_SIGNIN" = "Fix Google Sign in (for TrollStore user only)"; -"FIX_GOOGLE_SIGNIN_DESC" = "Only works when the app was installed via TrollStore: Turn on this option so you can sign in with your Google account. App restart is required."; +"FIX_GOOGLE_SIGNIN_DESC" = "Turn on this option only when you can't sign in with your Google account and the app was installed via TrollStore. If you can log in normally, keep it disabled. App restart is required."; "KILL_APP" = "Close YouTube"; "KILL_APP_DESC" = "Tap here to close YouTube!"; diff --git a/lang/uYouPlus.bundle/template.lproj/Localizable.strings b/lang/uYouPlus.bundle/template.lproj/Localizable.strings index 23c16b9..bebbf5f 100644 --- a/lang/uYouPlus.bundle/template.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/template.lproj/Localizable.strings @@ -16,7 +16,7 @@ "REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Replace Previous and Next Button with Fast forward and Rewind button. App restart is required."; "FIX_GOOGLE_SIGNIN" = "Fix Google Sign in (for TrollStore user only)"; -"FIX_GOOGLE_SIGNIN_DESC" = "Only works when the app was installed via TrollStore: Turn on this option so you can sign in with your Google account. App restart is required."; +"FIX_GOOGLE_SIGNIN_DESC" = "Turn on this option only when you can't sign in with your Google account and the app was installed via TrollStore. If you can log in normally, keep it disabled. App restart is required."; "KILL_APP" = "Close YouTube"; "KILL_APP_DESC" = "Tap here to close YouTube!"; diff --git a/lang/uYouPlus.bundle/vi.lproj/Localizable.strings b/lang/uYouPlus.bundle/vi.lproj/Localizable.strings index 20fe639..9f846fc 100644 --- a/lang/uYouPlus.bundle/vi.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/vi.lproj/Localizable.strings @@ -4,7 +4,7 @@ "REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Thay thế nút chuyển video bằng nút tua nhanh. Cần khởi động lại ứng dụng."; "FIX_GOOGLE_SIGNIN" = "Sửa lỗi không thể đăng nhập tài khoản Google"; -"FIX_GOOGLE_SIGNIN_DESC" = "Lưu ý rằng tính năng này chỉ hoạt động khi ứng dụng được cài đặt bằng TrollStore: Bật tính năng này để sửa lỗi không thể đăng nhập bằng tài khoản Google. Cần khởi động lại ứng dụng."; +"FIX_GOOGLE_SIGNIN_DESC" = "Chỉ bật tính năng này khi bạn không thể đăng nhập tài khoản Google và ứng dụng được cài qua TrollStore. Nếu bạn có thể đăng nhập bình thường thì hãy tắt tính năng này. Cần khởi động lại ứng dụng."; "KILL_APP" = "Đóng ứng dụng"; "KILL_APP_DESC" = "Chạm để đóng YouTube!"; From e6835b9e330ac2a2508a457ff68e86a6304a6a7f Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Tue, 20 Sep 2022 18:16:35 +0700 Subject: [PATCH 089/156] fix Google sign in, again. Thanks to @AhmedBafkir and @kkirby - https://gist.github.com/AhmedBafkir/0c16b806b3fb233995aa01b93da44f93 --- Settings.xm | 2 -- uYouPlus.xm | 32 ++++++++++++++++++++++++++++---- 2 files changed, 28 insertions(+), 6 deletions(-) diff --git a/Settings.xm b/Settings.xm index 90b2b08..3e7b817 100644 --- a/Settings.xm +++ b/Settings.xm @@ -62,7 +62,6 @@ extern BOOL replacePreviousAndNextButton(); return YES; }; - /* YTSettingsSectionItem *fixGoogleSigin = [[%c(YTSettingsSectionItem) alloc] initWithTitle:LOC(@"FIX_GOOGLE_SIGNIN") titleDescription:LOC(@"FIX_GOOGLE_SIGNIN_DESC")]; fixGoogleSigin.hasSwitch = YES; fixGoogleSigin.switchVisible = YES; @@ -71,7 +70,6 @@ extern BOOL replacePreviousAndNextButton(); [[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"fixGoogleSigin_enabled"]; return YES; }; - */ YTSettingsSectionItem *hidePaidPromotionCard = [[%c(YTSettingsSectionItem) alloc] initWithTitle:LOC(@"HIDE_PAID_PROMOTION_CARDS") titleDescription:LOC(@"HIDE_PAID_PROMOTION_CARDS_DESC")]; hidePaidPromotionCard.hasSwitch = YES; diff --git a/uYouPlus.xm b/uYouPlus.xm index cbabb94..a80c8b6 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -49,6 +49,7 @@ static NSString *accessGroupID() { return accessGroup; } +// BOOL hideHUD() { return [[NSUserDefaults standardUserDefaults] boolForKey:@"hideHUD_enabled"]; } @@ -482,6 +483,30 @@ BOOL replacePreviousAndNextButton() { } %end +// Fix "Google couldn't confirm this attempt to sign in is safe. If you think this is a mistake, you can close and try again to sign in" - qnblackcat/uYouPlus#420 +// Thanks to @AhmedBafkir and @kkirby - https://github.com/qnblackcat/uYouPlus/discussions/447#discussioncomment-3672881 +%group gFixGoogleSignIn +%hook SSORPCService ++ (id)URLFromURL:(id)arg1 withAdditionalFragmentParameters:(NSDictionary *)arg2 { + NSURL *orig = %orig; + NSURLComponents *urlComponents = [[NSURLComponents alloc] initWithURL:orig resolvingAgainstBaseURL:NO]; + NSMutableArray *newQueryItems = [urlComponents.queryItems mutableCopy]; + for (NSURLQueryItem *queryItem in urlComponents.queryItems) { + if ([queryItem.name isEqualToString:@"system_version"] + || [queryItem.name isEqualToString:@"app_version"] + || [queryItem.name isEqualToString:@"kdlc"] + || [queryItem.name isEqualToString:@"kss"] + || [queryItem.name isEqualToString:@"lib_ver"] + || [queryItem.name isEqualToString:@"device_model"]) { + [newQueryItems removeObject:queryItem]; + } + } + urlComponents.queryItems = [newQueryItems copy]; + return urlComponents.URL; +} +%end +%end + // Fix "You can't sign in to this app because Google can't confirm that it's safe" warning when signing in. by julioverne & PoomSmart // https://gist.github.com/PoomSmart/ef5b172fd4c5371764e027bea2613f93 // https://github.com/qnblackcat/uYouPlus/pull/398 @@ -508,7 +533,6 @@ BOOL replacePreviousAndNextButton() { + (NSString *)accessGroup { return accessGroupID(); } - + (NSString *)sharedAccessGroup { return accessGroupID(); } @@ -898,7 +922,7 @@ static void replaceTab(YTIGuideResponse *response) { if (@available(iOS 16, *)) { %init(iOS16); } - // if (!fixGoogleSigin()) { - // %init(gDevice_challenge_request_hack); - // } + if (!fixGoogleSigin()) { + %init(gFixGoogleSignIn); + } } From ad2c426fe60c11428b3b54f1b1b29e6bf3dc485b Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Tue, 20 Sep 2022 18:25:17 +0700 Subject: [PATCH 090/156] typo :/ --- Settings.xm | 16 ++++++++-------- uYouPlus.xm | 6 +++--- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/Settings.xm b/Settings.xm index 3e7b817..7cd2bd8 100644 --- a/Settings.xm +++ b/Settings.xm @@ -23,7 +23,7 @@ extern BOOL castConfirm(); extern BOOL ytMiniPlayer(); extern BOOL hidePreviousAndNextButton(); extern BOOL hidePaidPromotionCard(); -extern BOOL fixGoogleSigin(); +extern BOOL fixGoogleSignIn(); extern BOOL replacePreviousAndNextButton(); // Settings @@ -62,12 +62,12 @@ extern BOOL replacePreviousAndNextButton(); return YES; }; - YTSettingsSectionItem *fixGoogleSigin = [[%c(YTSettingsSectionItem) alloc] initWithTitle:LOC(@"FIX_GOOGLE_SIGNIN") titleDescription:LOC(@"FIX_GOOGLE_SIGNIN_DESC")]; - fixGoogleSigin.hasSwitch = YES; - fixGoogleSigin.switchVisible = YES; - fixGoogleSigin.on = [[NSUserDefaults standardUserDefaults] boolForKey:@"fixGoogleSigin_enabled"]; - fixGoogleSigin.switchBlock = ^BOOL (YTSettingsCell *cell, BOOL enabled) { - [[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"fixGoogleSigin_enabled"]; + YTSettingsSectionItem *fixGoogleSignIn = [[%c(YTSettingsSectionItem) alloc] initWithTitle:LOC(@"FIX_GOOGLE_SIGNIN") titleDescription:LOC(@"FIX_GOOGLE_SIGNIN_DESC")]; + fixGoogleSignIn.hasSwitch = YES; + fixGoogleSignIn.switchVisible = YES; + fixGoogleSignIn.on = [[NSUserDefaults standardUserDefaults] boolForKey:@"fixGoogleSignIn_enabled"]; + fixGoogleSignIn.switchBlock = ^BOOL (YTSettingsCell *cell, BOOL enabled) { + [[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"fixGoogleSignIn_enabled"]; return YES; }; @@ -188,7 +188,7 @@ extern BOOL replacePreviousAndNextButton(); return YES; }; - NSMutableArray *sectionItems = [NSMutableArray arrayWithArray:@[killApp, autoFull, castConfirm, ytMiniPlayer, hideAutoplaySwitch, hideCC, hideHUD, hidePaidPromotionCard, hidePreviousAndNextButton, hideHoverCard, bigYTMiniPlayer, oledDarkMode, oledKeyBoard, replacePreviousAndNextButton, reExplore]]; + NSMutableArray *sectionItems = [NSMutableArray arrayWithArray:@[killApp, autoFull, castConfirm, ytMiniPlayer, fixGoogleSignIn, hideAutoplaySwitch, hideCC, hideHUD, hidePaidPromotionCard, hidePreviousAndNextButton, hideHoverCard, bigYTMiniPlayer, oledDarkMode, oledKeyBoard, replacePreviousAndNextButton, reExplore]]; [delegate setSectionItems:sectionItems forCategory:uYouPlusSection title:@"uYouPlus" titleDescription:nil headerHidden:NO]; } diff --git a/uYouPlus.xm b/uYouPlus.xm index a80c8b6..fe78e58 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -92,8 +92,8 @@ BOOL ytMiniPlayer() { BOOL hidePaidPromotionCard() { return [[NSUserDefaults standardUserDefaults] boolForKey:@"hidePaidPromotionCard_enabled"]; } -BOOL fixGoogleSigin() { - return [[NSUserDefaults standardUserDefaults] boolForKey:@"fixGoogleSigin_enabled"]; +BOOL fixGoogleSignIn() { + return [[NSUserDefaults standardUserDefaults] boolForKey:@"fixGoogleSignIn_enabled"]; } BOOL replacePreviousAndNextButton() { return [[NSUserDefaults standardUserDefaults] boolForKey:@"replacePreviousAndNextButton_enabled"]; @@ -922,7 +922,7 @@ static void replaceTab(YTIGuideResponse *response) { if (@available(iOS 16, *)) { %init(iOS16); } - if (!fixGoogleSigin()) { + if (!fixGoogleSignIn()) { %init(gFixGoogleSignIn); } } From db1318b576a29693390bf7ef6a884525ffdc435c Mon Sep 17 00:00:00 2001 From: Victor Alves Date: Thu, 22 Sep 2022 18:17:13 -0300 Subject: [PATCH 091/156] Update Portuguese localization --- lang/uYouPlus.bundle/pt.lproj/Localizable.strings | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lang/uYouPlus.bundle/pt.lproj/Localizable.strings b/lang/uYouPlus.bundle/pt.lproj/Localizable.strings index 08ca305..ef4330e 100644 --- a/lang/uYouPlus.bundle/pt.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/pt.lproj/Localizable.strings @@ -1,9 +1,10 @@ // Settings + "REPLACE_PREVIOUS_NEXT_BUTTON" = "Substituir o botão Anterior e Próximo"; "REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Substitui o botão Anterior e Próximo pelo botão Avançar e Retroceder. A reinicialização do app é necessária."; "FIX_GOOGLE_SIGNIN" = "Corrigir o login do Google (somente para usuários da TrollStore)"; -"FIX_GOOGLE_SIGNIN_DESC" = "Funciona apenas quando o app foi instalado via TrollStore: ative esta opção para que você possa fazer login com sua conta do Google. A reinicialização do app é necessária."; +"FIX_GOOGLE_SIGNIN_DESC" = "Ative esta opção somente quando você não conseguir fazer login com sua conta do Google e o aplicativo foi instalado via TrollStore. Se você conseguir fazer login normalmente, mantenha-o desativado. A reinicialização do app é necessária."; "KILL_APP" = "Fechar o YouTube"; "KILL_APP_DESC" = "Toque aqui para fechar o YouTube!"; From 34a66bec01b9d5cc75061b485a285d64a4757827 Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Fri, 23 Sep 2022 22:29:39 +0700 Subject: [PATCH 092/156] update submodules --- Tweaks/YouPiP | 2 +- Tweaks/iSponsorBlock | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Tweaks/YouPiP b/Tweaks/YouPiP index a754e1b..394bc2f 160000 --- a/Tweaks/YouPiP +++ b/Tweaks/YouPiP @@ -1 +1 @@ -Subproject commit a754e1bf32056203235ffa0e2f843fb84f342ddb +Subproject commit 394bc2f97b8c1db40c044eb20e4c4d43410efcc9 diff --git a/Tweaks/iSponsorBlock b/Tweaks/iSponsorBlock index 82d7178..997d792 160000 --- a/Tweaks/iSponsorBlock +++ b/Tweaks/iSponsorBlock @@ -1 +1 @@ -Subproject commit 82d717878f2056cb40977a96ee855ba01f00f2bb +Subproject commit 997d79231710bbe3b246edf1ada843f0d4f6edf8 From 0b64741d504140632931238535b86ee5747b80ae Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Fri, 23 Sep 2022 22:34:30 +0700 Subject: [PATCH 093/156] the Github action should not remove binary's entitlements... --- .github/workflows/buildapp.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/buildapp.yml b/.github/workflows/buildapp.yml index 4d40153..12487f1 100644 --- a/.github/workflows/buildapp.yml +++ b/.github/workflows/buildapp.yml @@ -9,7 +9,7 @@ on: uyou_version: description: "The version of uYou" default: "2.1" - required: false + required: true type: string decrypted_youtube_url: description: "The direct URL to the decrypted YouTube ipa" @@ -66,7 +66,7 @@ jobs: - name: Setup Theos Jailed uses: actions/checkout@v3 with: - repository: kabiroberai/theos-jailed + repository: qnblackcat/theos-jailed ref: master path: theos-jailed submodules: recursive From 6604f5e4975047690a70d61ae806e643f91a1e7f Mon Sep 17 00:00:00 2001 From: ErSpieltHD <40891294+ErSpieltHD@users.noreply.github.com> Date: Fri, 23 Sep 2022 20:30:35 +0200 Subject: [PATCH 094/156] Added new options --- .../de.lproj/Localizable.strings | 21 +++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/lang/uYouPlus.bundle/de.lproj/Localizable.strings b/lang/uYouPlus.bundle/de.lproj/Localizable.strings index b825e5a..d98f85c 100644 --- a/lang/uYouPlus.bundle/de.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/de.lproj/Localizable.strings @@ -1,16 +1,25 @@ // Settings -"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Vor- und Zurücktasten ausblenden"; -"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "Vor- und Zurückspultasten vom Videoplayer ausblenden."; +"REPLACE_PREVIOUS_NEXT_BUTTON" = "Vor- und Zurücktasten ersetzen"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Vor- und Zurücktasten mit Vor- und Zurückspultasten ersetzen. App restart is required."; -"YT_MINIPLAYER" = "Miniplayer für alle YT Videos aktivieren"; -"YT_MINIPLAYER_DESC" = "z.B. bei Videos für Kinder"; +"FIX_GOOGLE_SIGNIN" = "Google-Anmeldung beheben (nur für TrollStore Benutzer!)"; +"FIX_GOOGLE_SIGNIN_DESC" = "Aktiviere diese Option nur, wenn Sie sich nicht mit Ihrem Google-Account anmelden können und die App über TrollStore installiert wurde. Wenn Sie sich normal anmelden können, halte diese Option deaktiviert! App-Neustart erforderlich!"; + +"KILL_APP" = "YouTube crashen"; +"KILL_APP_DESC" = "Tippe hier, um YouTube zum Abstürzen zu bringen!"; + +"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Vor- und Zurücktasten ausblenden"; +"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "Vor- und Zurücktasten vom Videoplayer ausblenden."; + +"YT_MINIPLAYER" = "Miniplayer für alle YouTube-Videos aktivieren"; +"YT_MINIPLAYER_DESC" = "z.B. bei Videos für Kinder."; "CAST_CONFIRM" = "Warnung vor TV-Übertragungen (YTCastConfirm)"; "CAST_CONFIRM_DESC" = "Zeigt eine Warnung an, um eine ausversehene TV-Übertragung zu verhindern."; "HIDE_HOVER_CARD" = "Endkarten ausblenden (YTNoHoverCards)"; -"HIDE_HOVER_CARD_DESC" = "Endkarten (Thumbnails) am Ende des Videos ausblenden."; +"HIDE_HOVER_CARD_DESC" = "Creator-Endkarten (Thumbnails) am Ende des Videos ausblenden."; "NEW_MINIPLAYER_STYLE" = "Neuer Miniplayer Style (BigYTMiniPlayer)"; "NEW_MINIPLAYER_STYLE_DESC" = "App-Neustart erforderlich!"; @@ -34,7 +43,7 @@ "OLED_DARKMODE_DESC" = "Könnte in manchen Fällen nicht richtig funktionieren. App-Neustart ist erforderlich, wenn diese Option akti-/deaktiviert wird!"; "OLED_KEYBOARD" = "OLED-Tastatur (Experimental)"; -"OLED_KEYBOARD_DESC" = "Könnte in manchen Fällen nicht richtig funktionieren. App-Neustart erforderlich1"; +"OLED_KEYBOARD_DESC" = "Könnte in manchen Fällen nicht richtig funktionieren. App-Neustart erforderlich!"; "HIDE_PAID_PROMOTION_CARDS" = "Enthält bezahlte Werbung Info ausblenden"; "HIDE_PAID_PROMOTION_CARDS_DESC" = "Enthält bezahlte Werbung Infobanner bei manchen Videos ausblenden."; From c864966f1138c58f53b15bcf0a7a6eadb945c6f2 Mon Sep 17 00:00:00 2001 From: Aric <78001398+arichorn@users.noreply.github.com> Date: Sat, 24 Sep 2022 19:40:50 -0500 Subject: [PATCH 095/156] DontEatMyContent - @therealFoxster Prevent the notch/Dynamic Island from munching on 2:1 video content in YouTube --- Header.h | 33 +++++++++++- Settings.xm | 12 ++++- uYouPlus.xm | 147 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 189 insertions(+), 3 deletions(-) diff --git a/Header.h b/Header.h index 9032631..d59a830 100644 --- a/Header.h +++ b/Header.h @@ -37,6 +37,26 @@ - (float)progress; @end +@interface YTPlayerView : UIView +- (BOOL)zoomToFill; +- (id)renderingView; +- (id)playerView; +@end + +@interface MLHAMSBDLSampleBufferRenderingView : UIView +@end + +@interface YTMainAppVideoPlayerOverlayViewController : UIViewController +- (BOOL)isFullscreen; +- (id)videoPlayerOverlayView; +- (id)activeVideoPlayerOverlay; +@end + +@interface YTMainAppVideoPlayerOverlayView : UIView +- (UIViewController *)_viewControllerForAncestor; ++ (CGFloat)topButtonAdditionalPadding; +@end + // iOS16 fix @interface OBPrivacyLinkButton : UIButton - (instancetype)initWithCaption:(NSString *)caption @@ -61,8 +81,10 @@ @end // YTAutoFullScreen -@interface YTPlayerViewController (YTAFS) +@interface YTPlayerViewController (YTPlayerViewControllerCategory) - (void)autoFullscreen; +- (id)activeVideoPlayerOverlay; +- (id)playerView; @end // OLED Darkmode @@ -94,4 +116,11 @@ @end @interface UIPredictionViewController : UIViewController -@end \ No newline at end of file +@end + +// +NSString* deviceName(); +BOOL isDeviceSupported(); +void activate(); +void deactivate(); +void center(); \ No newline at end of file diff --git a/Settings.xm b/Settings.xm index 7cd2bd8..f98e7a3 100644 --- a/Settings.xm +++ b/Settings.xm @@ -25,6 +25,7 @@ extern BOOL hidePreviousAndNextButton(); extern BOOL hidePaidPromotionCard(); extern BOOL fixGoogleSignIn(); extern BOOL replacePreviousAndNextButton(); +extern BOOL dontEatMyContent(); // Settings %hook YTAppSettingsPresentationData @@ -53,6 +54,15 @@ extern BOOL replacePreviousAndNextButton(); exit(0); }]; + YTSettingsSectionItem *dontEatMyContent = [[%c(YTSettingsSectionItem) alloc] initWithTitle:LOC(@"DONT_EAT_MY_CONTENT") titleDescription:LOC(@"DONT_EAT_MY_CONTENT_DESC")]; + dontEatMyContent.hasSwitch = YES; + dontEatMyContent.switchVisible = YES; + dontEatMyContent.on = [[NSUserDefaults standardUserDefaults] boolForKey:@"dontEatMyContent_enabled"]; + dontEatMyContent.switchBlock = ^BOOL (YTSettingsCell *cell, BOOL enabled) { + [[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"dontEatMyContent_enabled"]; + return YES; + }; + YTSettingsSectionItem *replacePreviousAndNextButton = [[%c(YTSettingsSectionItem) alloc] initWithTitle:LOC(@"REPLACE_PREVIOUS_NEXT_BUTTON") titleDescription:LOC(@"REPLACE_PREVIOUS_NEXT_BUTTON_DESC")]; replacePreviousAndNextButton.hasSwitch = YES; replacePreviousAndNextButton.switchVisible = YES; @@ -188,7 +198,7 @@ extern BOOL replacePreviousAndNextButton(); return YES; }; - NSMutableArray *sectionItems = [NSMutableArray arrayWithArray:@[killApp, autoFull, castConfirm, ytMiniPlayer, fixGoogleSignIn, hideAutoplaySwitch, hideCC, hideHUD, hidePaidPromotionCard, hidePreviousAndNextButton, hideHoverCard, bigYTMiniPlayer, oledDarkMode, oledKeyBoard, replacePreviousAndNextButton, reExplore]]; + NSMutableArray *sectionItems = [NSMutableArray arrayWithArray:@[killApp, autoFull, castConfirm, ytMiniPlayer, dontEatMyContent, fixGoogleSignIn, hideAutoplaySwitch, hideCC, hideHUD, hidePaidPromotionCard, hidePreviousAndNextButton, hideHoverCard, bigYTMiniPlayer, oledDarkMode, oledKeyBoard, replacePreviousAndNextButton, reExplore]]; [delegate setSectionItems:sectionItems forCategory:uYouPlusSection title:@"uYouPlus" titleDescription:nil headerHidden:NO]; } diff --git a/uYouPlus.xm b/uYouPlus.xm index fe78e58..53de697 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -2,6 +2,8 @@ #import #import #import +#import +#import #import "Header.h" #import "Tweaks/YouTubeHeader/YTVideoQualitySwitchOriginalController.h" #import "Tweaks/YouTubeHeader/YTPlayerViewController.h" @@ -98,6 +100,9 @@ BOOL fixGoogleSignIn() { BOOL replacePreviousAndNextButton() { return [[NSUserDefaults standardUserDefaults] boolForKey:@"replacePreviousAndNextButton_enabled"]; } +BOOL dontEatMyContent() { + return [[NSUserDefaults standardUserDefaults] boolForKey:@"dontEatMyContent_enabled"]; +} # pragma mark - Tweaks // Enable Reorder videos from playlist while on the Watch page - @PoomSmart @@ -876,6 +881,145 @@ static void replaceTab(YTIGuideResponse *response) { %end %end +#define UNSUPPORTED_DEVICES @[@"iPhone14,3", @"iPhone14,6", @"iPhone14,8"] +#define THRESHOLD 1.99 + +double aspectRatio = 16/9; +bool zoomedToFill = false; + +MLHAMSBDLSampleBufferRenderingView *renderingView; +NSLayoutConstraint *widthConstraint, *heightConstraint, *centerXConstraint, *centerYConstraint; + +%group gDontEatMyContent +%hook YTPlayerViewController + +- (void)viewDidAppear:(BOOL)animated { + YTPlayerView *playerView = [self playerView]; + UIView *renderingViewContainer = MSHookIvar(playerView, "_renderingViewContainer"); + renderingView = [playerView renderingView]; + + CGFloat constant = 23; // Make renderingView a bit larger since safe area has sizeable margins from the notch and side borders; tested on iPhone 13 mini + + widthConstraint = [renderingView.widthAnchor constraintEqualToAnchor:renderingViewContainer.safeAreaLayoutGuide.widthAnchor constant:constant]; + heightConstraint = [renderingView.heightAnchor constraintEqualToAnchor:renderingViewContainer.safeAreaLayoutGuide.heightAnchor constant:constant]; + centerXConstraint = [renderingView.centerXAnchor constraintEqualToAnchor:renderingViewContainer.centerXAnchor]; + centerYConstraint = [renderingView.centerYAnchor constraintEqualToAnchor:renderingViewContainer.centerYAnchor]; + + // playerView.backgroundColor = [UIColor greenColor]; + // renderingViewContainer.backgroundColor = [UIColor redColor]; + // renderingView.backgroundColor = [UIColor blueColor]; + + YTMainAppVideoPlayerOverlayViewController *activeVideoPlayerOverlay = [self activeVideoPlayerOverlay]; + + // Must check class since YTInlineMutedPlaybackPlayerOverlayViewController doesn't have -(BOOL)isFullscreen + if ([NSStringFromClass([activeVideoPlayerOverlay class]) isEqualToString:@"YTMainAppVideoPlayerOverlayViewController"] && [activeVideoPlayerOverlay isFullscreen]) { + activate(); + } else { + center(); + } + %orig(animated); +} +- (void)didPressToggleFullscreen { + YTMainAppVideoPlayerOverlayViewController *activeVideoPlayerOverlay = [self activeVideoPlayerOverlay]; + + if (![activeVideoPlayerOverlay isFullscreen]) // Entering fullscreen + activate(); + else // Exiting fullscreen + deactivate(); + + %orig; +} +- (void)didSwipeToEnterFullscreen { + %orig; activate(); +} +- (void)didSwipeToExitFullscreen { + %orig; deactivate(); +} +- (void)singleVideo:(id)arg1 aspectRatioDidChange:(CGFloat)arg2 { + aspectRatio = arg2; + if (aspectRatio == 0.0) { + // App backgrounded + } else if (aspectRatio < THRESHOLD) { + deactivate(); + } else { + activate(); + } + %orig(arg1, arg2); +} +%end + +%hook YTVideoZoomOverlayView +- (void)didRecognizePinch:(UIPinchGestureRecognizer *)pinchGestureRecognizer { + // %log((CGFloat) [pinchGestureRecognizer scale], (CGFloat) [pinchGestureRecognizer velocity]); + if ([pinchGestureRecognizer velocity] <= 0.0) { // >>Zoom out<< + zoomedToFill = false; + activate(); + } else if ([pinchGestureRecognizer velocity] > 0.0) { // <> + zoomedToFill = true; + deactivate(); + } + + %orig(pinchGestureRecognizer); +} +- (void)flashAndHideSnapIndicator {} + +// https://github.com/lgariv/UniZoom/blob/master/Tweak.xm +- (void)setSnapIndicatorVisible:(bool)arg1 { + %orig(NO); +} +%end +%end + +// https://stackoverflow.com/a/11197770/19227228 + NSString* deviceName() { + struct utsname systemInfo; + uname(&systemInfo); + return [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding]; + } + + BOOL isDeviceSupported() { + NSString *identifier = deviceName(); + NSArray *unsupportedDevices = UNSUPPORTED_DEVICES; + + for (NSString *device in unsupportedDevices) { + if ([device isEqualToString:identifier]) { + return NO; + } + } + + if ([identifier containsString:@"iPhone"]) { + NSString *model = [identifier stringByReplacingOccurrencesOfString:@"iPhone" withString:@""]; + model = [model stringByReplacingOccurrencesOfString:@"," withString:@"."]; + if ([identifier isEqualToString:@"iPhone13,1"]) { // iPhone 12 mini + return YES; + } else if ([model floatValue] >= 14.0) { // iPhone 13 series and newer + return YES; + } else return NO; + } else return NO; + } + + void activate() { + if (aspectRatio < THRESHOLD || zoomedToFill) return; + // NSLog(@"activate"); + center(); + renderingView.translatesAutoresizingMaskIntoConstraints = NO; + widthConstraint.active = YES; + heightConstraint.active = YES; + } + + void deactivate() { + // NSLog(@"deactivate"); + center(); + renderingView.translatesAutoresizingMaskIntoConstraints = YES; + widthConstraint.active = NO; + heightConstraint.active = NO; + } + + void center() { + centerXConstraint.active = YES; + centerYConstraint.active = YES; + } + // iOS 16 uYou crash fix - @level3tjg: https://github.com/qnblackcat/uYouPlus/pull/224 %group iOS16 %hook OBPrivacyLinkButton @@ -918,6 +1062,9 @@ static void replaceTab(YTIGuideResponse *response) { } if (replacePreviousAndNextButton()) { %init(gReplacePreviousAndNextButton); + } + if (dontEatMyContent() && isDeviceSupported()) { + %init(gDontEatMyContent); } if (@available(iOS 16, *)) { %init(iOS16); From 1bed1db40411e09094f0e714b9c676b49c0a3f6f Mon Sep 17 00:00:00 2001 From: Aric <78001398+arichorn@users.noreply.github.com> Date: Sat, 24 Sep 2022 19:49:59 -0500 Subject: [PATCH 096/156] Localization Support English Localization. --- lang/uYouPlus.bundle/en.lproj/Localizable.strings | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lang/uYouPlus.bundle/en.lproj/Localizable.strings b/lang/uYouPlus.bundle/en.lproj/Localizable.strings index dcaf18c..f6bc208 100644 --- a/lang/uYouPlus.bundle/en.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/en.lproj/Localizable.strings @@ -1,5 +1,8 @@ // Settings +"DONT_EAT_MY_CONTENT" = "Prevent Notch/Island on 2:1 Video Content" +"DONT_EAT_MY_CONTENT_DESC" = "Prevent the notch/Dynamic Island from munching on 2:1 video content in YouTube. App restart is required."; + "REPLACE_PREVIOUS_NEXT_BUTTON" = "Replace Previous and Next Button"; "REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Replace Previous and Next Button with Fast forward and Rewind button. App restart is required."; From ea309fd094a4e69ed9e75c0a876b61dae5cd3e30 Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Sun, 25 Sep 2022 17:44:49 +0700 Subject: [PATCH 097/156] update AltStore link for v17.37.3-2.1 --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index c0e22f1..43cd1b5 100644 --- a/README.md +++ b/README.md @@ -80,16 +80,16 @@ - My official AltStore repo: https://qnblackcat.github.io/AltStore/ - - [Open in AltStore (v17.36.4-2.1)](https://tinyurl.com/bdezph3t) - It will take a while to install because AltStore needs to download the IPA. + - [Open in AltStore (v17.37.3-2.1)](https://tinyurl.com/2p8pd9n7) - It will take a while to install because AltStore needs to download the IPA. -- Version info: _(last update: Sep 17)_ +- Version info: _(last update: Sep 24)_
Expand | **Tweaks/App** | **Developer** | **Version** | **Open source** | | - | - | :-: | :-: | -| **YouTube** | Google Inc | 17.36.4 | ✖︎ | +| **YouTube** | Google Inc | 17.37.3 | ✖︎ | | [uYou](https://github.com/MiRO92/uYou-for-YouTube) | [MiRO92](https://twitter.com/miro92) | 2.1 | ✖︎ | | [Open in YouTube](https://github.com/CokePokes/YoutubeExtensions) | [CokePokes](https://github.com/CokePokes) | 1.2 | ✖︎ | | **iSponsorBlock** | [Galactic-Dev](https://github.com/Galactic-Dev) | 1.0-15 | [✔︎](https://github.com/Galactic-Dev/iSponsorBlock) | From 9d27a3b9c08b9bd5dc65cbbcca2f73da3d09d0d6 Mon Sep 17 00:00:00 2001 From: Aric <78001398+arichorn@users.noreply.github.com> Date: Sun, 25 Sep 2022 09:03:52 -0500 Subject: [PATCH 098/156] Fixed Duplicate Interface My apologies, I mistakenly added a duplicate piece of @interface code that would prevent uYouPlus to build but should work now! --- Header.h | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/Header.h b/Header.h index d59a830..174b33c 100644 --- a/Header.h +++ b/Header.h @@ -52,11 +52,6 @@ - (id)activeVideoPlayerOverlay; @end -@interface YTMainAppVideoPlayerOverlayView : UIView -- (UIViewController *)_viewControllerForAncestor; -+ (CGFloat)topButtonAdditionalPadding; -@end - // iOS16 fix @interface OBPrivacyLinkButton : UIButton - (instancetype)initWithCaption:(NSString *)caption @@ -75,6 +70,7 @@ // BigYTMiniPlayer @interface YTMainAppVideoPlayerOverlayView : UIView - (UIViewController *)_viewControllerForAncestor; ++ (CGFloat)topButtonAdditionalPadding; @end @interface YTWatchMiniBarView : UIView @@ -123,4 +119,4 @@ NSString* deviceName(); BOOL isDeviceSupported(); void activate(); void deactivate(); -void center(); \ No newline at end of file +void center(); From 0147865c53d4f5f36176158ba34c9aeb09bfa556 Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Wed, 28 Sep 2022 10:35:32 +0700 Subject: [PATCH 099/156] update template --- .../template.lproj/Localizable.strings | 27 ++++++++++--------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/lang/uYouPlus.bundle/template.lproj/Localizable.strings b/lang/uYouPlus.bundle/template.lproj/Localizable.strings index bebbf5f..efd5317 100644 --- a/lang/uYouPlus.bundle/template.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/template.lproj/Localizable.strings @@ -1,17 +1,18 @@ -// How to translate uYouPlus to your language: -// -// 1. Fork uYouPlus repo -// 2. Duplicate the template.lproj folder, and edit the duplicated folder's name to your .lproj id. -// For example: for Russia. For more details, visit: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes -// 3. Translate each line below after each = -// 4. Open a Pull Request -// -// If your language already exists then feel free to check it and/or improve it! -// You can also add your localization to YouPiP here, the process is the same -// https://github.com/PoomSmart/YouPiP/tree/main/layout/Library/Application%20Support/YouPiP.bundle -// -// Settings +/* Read me: +- How to translate uYouPlus (if your language already exists then feel free to check it and/or improve it): +1. Fork uYouPlus repo +2. Duplicate the template.lproj folder, and edit the duplicated folder's name to your .lproj id. +For example: for Russia. For more details, visit: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes +3. Translate each line below after each = +4. Open a Pull Request +- You can also add your localization to YouPiP, YTUHD and Return YouTube Dislike. The process is the same: +https://github.com/PoomSmart/YouPiP/tree/main/layout/Library/Application%20Support/YouPiP.bundle +https://github.com/PoomSmart/YTUHD/tree/master/layout/Library/Application%20Support/YTUHD.bundle +https://github.com/PoomSmart/Return-YouTube-Dislikes/tree/main/layout/Library/Application%20Support/RYD.bundle +*/ + +// Settings "REPLACE_PREVIOUS_NEXT_BUTTON" = "Replace Previous and Next Button"; "REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Replace Previous and Next Button with Fast forward and Rewind button. App restart is required."; From dcb41ab74d4f9a7268f6a64954bf5a216f16b3cc Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Wed, 28 Sep 2022 10:35:46 +0700 Subject: [PATCH 100/156] update submodules --- Tweaks/Return-YouTube-Dislikes | 2 +- Tweaks/YTUHD | 2 +- Tweaks/YouPiP | 2 +- Tweaks/YouTubeHeader | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Tweaks/Return-YouTube-Dislikes b/Tweaks/Return-YouTube-Dislikes index 8b1e9d1..6d9ed78 160000 --- a/Tweaks/Return-YouTube-Dislikes +++ b/Tweaks/Return-YouTube-Dislikes @@ -1 +1 @@ -Subproject commit 8b1e9d14f12b4dab09c8c63ae77e77025a01edf9 +Subproject commit 6d9ed785ebd251bb0f8735af9fcc05929ddd8876 diff --git a/Tweaks/YTUHD b/Tweaks/YTUHD index 47bcdc5..5f55607 160000 --- a/Tweaks/YTUHD +++ b/Tweaks/YTUHD @@ -1 +1 @@ -Subproject commit 47bcdc5a5b7fb4e7bb77809c6b5d50035d67649f +Subproject commit 5f556078cff79c7c50bdf7849a5711e2e9d2e11b diff --git a/Tweaks/YouPiP b/Tweaks/YouPiP index 394bc2f..b73ce46 160000 --- a/Tweaks/YouPiP +++ b/Tweaks/YouPiP @@ -1 +1 @@ -Subproject commit 394bc2f97b8c1db40c044eb20e4c4d43410efcc9 +Subproject commit b73ce464dc99dacdfd6cafc070904fb57643b855 diff --git a/Tweaks/YouTubeHeader b/Tweaks/YouTubeHeader index efcf986..d6bc59b 160000 --- a/Tweaks/YouTubeHeader +++ b/Tweaks/YouTubeHeader @@ -1 +1 @@ -Subproject commit efcf986beb29c25d9f570e57795dff6842cd3ee3 +Subproject commit d6bc59b8f96741b152fd09075bac61171ac4603a From 2657f8ca7c5296a90328c4379e50e88f24f116ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20=C4=90=E1=BA=A1t?= <52943116+qnblackcat@users.noreply.github.com> Date: Wed, 28 Sep 2022 10:52:39 +0700 Subject: [PATCH 101/156] clean up --- uYouPlus.xm | 105 +++++++++++++++++++++++++--------------------------- 1 file changed, 51 insertions(+), 54 deletions(-) diff --git a/uYouPlus.xm b/uYouPlus.xm index 53de697..35ef8d5 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -881,9 +881,7 @@ static void replaceTab(YTIGuideResponse *response) { %end %end -#define UNSUPPORTED_DEVICES @[@"iPhone14,3", @"iPhone14,6", @"iPhone14,8"] -#define THRESHOLD 1.99 - +// DontEatMyContent - @therealFoxster: https://github.com/therealFoxster/DontEatMyContent double aspectRatio = 16/9; bool zoomedToFill = false; @@ -892,7 +890,6 @@ NSLayoutConstraint *widthConstraint, *heightConstraint, *centerXConstraint, *cen %group gDontEatMyContent %hook YTPlayerViewController - - (void)viewDidAppear:(BOOL)animated { YTPlayerView *playerView = [self playerView]; UIView *renderingViewContainer = MSHookIvar(playerView, "_renderingViewContainer"); @@ -904,7 +901,7 @@ NSLayoutConstraint *widthConstraint, *heightConstraint, *centerXConstraint, *cen heightConstraint = [renderingView.heightAnchor constraintEqualToAnchor:renderingViewContainer.safeAreaLayoutGuide.heightAnchor constant:constant]; centerXConstraint = [renderingView.centerXAnchor constraintEqualToAnchor:renderingViewContainer.centerXAnchor]; centerYConstraint = [renderingView.centerYAnchor constraintEqualToAnchor:renderingViewContainer.centerYAnchor]; - + // playerView.backgroundColor = [UIColor greenColor]; // renderingViewContainer.backgroundColor = [UIColor redColor]; // renderingView.backgroundColor = [UIColor blueColor]; @@ -917,16 +914,17 @@ NSLayoutConstraint *widthConstraint, *heightConstraint, *centerXConstraint, *cen } else { center(); } + %orig(animated); } - (void)didPressToggleFullscreen { YTMainAppVideoPlayerOverlayViewController *activeVideoPlayerOverlay = [self activeVideoPlayerOverlay]; - + if (![activeVideoPlayerOverlay isFullscreen]) // Entering fullscreen activate(); else // Exiting fullscreen deactivate(); - + %orig; } - (void)didSwipeToEnterFullscreen { @@ -958,67 +956,66 @@ NSLayoutConstraint *widthConstraint, *heightConstraint, *centerXConstraint, *cen zoomedToFill = true; deactivate(); } - %orig(pinchGestureRecognizer); } - (void)flashAndHideSnapIndicator {} - // https://github.com/lgariv/UniZoom/blob/master/Tweak.xm - (void)setSnapIndicatorVisible:(bool)arg1 { %orig(NO); } %end -%end +%end // gDontEatMyContent +// DontEatMycontent - detecting device model // https://stackoverflow.com/a/11197770/19227228 - NSString* deviceName() { - struct utsname systemInfo; - uname(&systemInfo); - return [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding]; - } +NSString* deviceName() { + struct utsname systemInfo; + uname(&systemInfo); + return [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding]; +} - BOOL isDeviceSupported() { - NSString *identifier = deviceName(); - NSArray *unsupportedDevices = UNSUPPORTED_DEVICES; +BOOL isDeviceSupported() { + NSString *identifier = deviceName(); + NSArray *unsupportedDevices = UNSUPPORTED_DEVICES; + + for (NSString *device in unsupportedDevices) { + if ([device isEqualToString:identifier]) { + return NO; + } + } - for (NSString *device in unsupportedDevices) { - if ([device isEqualToString:identifier]) { - return NO; - } - } + if ([identifier containsString:@"iPhone"]) { + NSString *model = [identifier stringByReplacingOccurrencesOfString:@"iPhone" withString:@""]; + model = [model stringByReplacingOccurrencesOfString:@"," withString:@"."]; + if ([identifier isEqualToString:@"iPhone13,1"]) { // iPhone 12 mini + return YES; + } else if ([model floatValue] >= 14.0) { // iPhone 13 series and newer + return YES; + } else return NO; + } else return NO; +} - if ([identifier containsString:@"iPhone"]) { - NSString *model = [identifier stringByReplacingOccurrencesOfString:@"iPhone" withString:@""]; - model = [model stringByReplacingOccurrencesOfString:@"," withString:@"."]; - if ([identifier isEqualToString:@"iPhone13,1"]) { // iPhone 12 mini - return YES; - } else if ([model floatValue] >= 14.0) { // iPhone 13 series and newer - return YES; - } else return NO; - } else return NO; - } +void activate() { + if (aspectRatio < THRESHOLD || zoomedToFill) return; + // NSLog(@"activate"); + center(); + renderingView.translatesAutoresizingMaskIntoConstraints = NO; + widthConstraint.active = YES; + heightConstraint.active = YES; +} - void activate() { - if (aspectRatio < THRESHOLD || zoomedToFill) return; - // NSLog(@"activate"); - center(); - renderingView.translatesAutoresizingMaskIntoConstraints = NO; - widthConstraint.active = YES; - heightConstraint.active = YES; - } +void deactivate() { + // NSLog(@"deactivate"); + center(); + renderingView.translatesAutoresizingMaskIntoConstraints = YES; + widthConstraint.active = NO; + heightConstraint.active = NO; +} - void deactivate() { - // NSLog(@"deactivate"); - center(); - renderingView.translatesAutoresizingMaskIntoConstraints = YES; - widthConstraint.active = NO; - heightConstraint.active = NO; - } - - void center() { - centerXConstraint.active = YES; - centerYConstraint.active = YES; - } +void center() { + centerXConstraint.active = YES; + centerYConstraint.active = YES; +} // iOS 16 uYou crash fix - @level3tjg: https://github.com/qnblackcat/uYouPlus/pull/224 %group iOS16 @@ -1063,7 +1060,7 @@ NSLayoutConstraint *widthConstraint, *heightConstraint, *centerXConstraint, *cen if (replacePreviousAndNextButton()) { %init(gReplacePreviousAndNextButton); } - if (dontEatMyContent() && isDeviceSupported()) { + if (dontEatMyContent() && isDeviceSupported()) { %init(gDontEatMyContent); } if (@available(iOS 16, *)) { From a902d90449e0594cbd2d12a9987e35411589a8a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20=C4=90=E1=BA=A1t?= <52943116+qnblackcat@users.noreply.github.com> Date: Wed, 28 Sep 2022 10:56:55 +0700 Subject: [PATCH 102/156] clean up --- Settings.xm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Settings.xm b/Settings.xm index f98e7a3..611b0b2 100644 --- a/Settings.xm +++ b/Settings.xm @@ -198,7 +198,7 @@ extern BOOL dontEatMyContent(); return YES; }; - NSMutableArray *sectionItems = [NSMutableArray arrayWithArray:@[killApp, autoFull, castConfirm, ytMiniPlayer, dontEatMyContent, fixGoogleSignIn, hideAutoplaySwitch, hideCC, hideHUD, hidePaidPromotionCard, hidePreviousAndNextButton, hideHoverCard, bigYTMiniPlayer, oledDarkMode, oledKeyBoard, replacePreviousAndNextButton, reExplore]]; + NSMutableArray *sectionItems = [NSMutableArray arrayWithArray:@[killApp, autoFull, castConfirm, ytMiniPlayer, fixGoogleSignIn, hideAutoplaySwitch, hideCC, hideHUD, hidePaidPromotionCard, hidePreviousAndNextButton, hideHoverCard, bigYTMiniPlayer, oledDarkMode, oledKeyBoard, dontEatMyContent, replacePreviousAndNextButton, reExplore]]; [delegate setSectionItems:sectionItems forCategory:uYouPlusSection title:@"uYouPlus" titleDescription:nil headerHidden:NO]; } @@ -209,4 +209,4 @@ extern BOOL dontEatMyContent(); } %orig; } -%end \ No newline at end of file +%end From dad5377435f1cc05ec5c7422b82c579f24632a90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20=C4=90=E1=BA=A1t?= <52943116+qnblackcat@users.noreply.github.com> Date: Wed, 28 Sep 2022 10:58:06 +0700 Subject: [PATCH 103/156] Update Header.h --- Header.h | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/Header.h b/Header.h index 174b33c..2146374 100644 --- a/Header.h +++ b/Header.h @@ -3,6 +3,8 @@ #define LOC(x) [tweakBundle localizedStringForKey:x value:nil table:nil] #define YT_BUNDLE_ID @"com.google.ios.youtube" #define YT_NAME @"YouTube" +#define UNSUPPORTED_DEVICES @[@"iPhone14,3", @"iPhone14,6", @"iPhone14,8"] // DontEatMycontent +#define THRESHOLD 1.99 // DontEatMycontent // IAmYouTube @interface SSOConfiguration : NSObject @@ -37,6 +39,13 @@ - (float)progress; @end +// DontEatMyContent +NSString* deviceName(); +BOOL isDeviceSupported(); +void activate(); +void deactivate(); +void center(); + @interface YTPlayerView : UIView - (BOOL)zoomToFill; - (id)renderingView; @@ -70,17 +79,16 @@ // BigYTMiniPlayer @interface YTMainAppVideoPlayerOverlayView : UIView - (UIViewController *)_viewControllerForAncestor; -+ (CGFloat)topButtonAdditionalPadding; @end @interface YTWatchMiniBarView : UIView @end // YTAutoFullScreen -@interface YTPlayerViewController (YTPlayerViewControllerCategory) +@interface YTPlayerViewController (YTAFS) - (void)autoFullscreen; -- (id)activeVideoPlayerOverlay; -- (id)playerView; +- (id)activeVideoPlayerOverlay; // DontEatMycontent +- (id)playerView; // DontEatMycontent @end // OLED Darkmode @@ -113,10 +121,3 @@ @interface UIPredictionViewController : UIViewController @end - -// -NSString* deviceName(); -BOOL isDeviceSupported(); -void activate(); -void deactivate(); -void center(); From f91287b7370d51dc035010643dbfa4b33599cac1 Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Wed, 28 Sep 2022 11:05:31 +0700 Subject: [PATCH 104/156] update strings --- lang/uYouPlus.bundle/en.lproj/Localizable.strings | 2 +- lang/uYouPlus.bundle/template.lproj/Localizable.strings | 3 +++ lang/uYouPlus.bundle/vi.lproj/Localizable.strings | 2 ++ 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/lang/uYouPlus.bundle/en.lproj/Localizable.strings b/lang/uYouPlus.bundle/en.lproj/Localizable.strings index f6bc208..babb21a 100644 --- a/lang/uYouPlus.bundle/en.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/en.lproj/Localizable.strings @@ -1,6 +1,6 @@ // Settings -"DONT_EAT_MY_CONTENT" = "Prevent Notch/Island on 2:1 Video Content" +"DONT_EAT_MY_CONTENT" = "Prevent Notch/Island on 2:1 Video Content (DontEatMyContent)"; "DONT_EAT_MY_CONTENT_DESC" = "Prevent the notch/Dynamic Island from munching on 2:1 video content in YouTube. App restart is required."; "REPLACE_PREVIOUS_NEXT_BUTTON" = "Replace Previous and Next Button"; diff --git a/lang/uYouPlus.bundle/template.lproj/Localizable.strings b/lang/uYouPlus.bundle/template.lproj/Localizable.strings index efd5317..1fc3110 100644 --- a/lang/uYouPlus.bundle/template.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/template.lproj/Localizable.strings @@ -13,6 +13,9 @@ https://github.com/PoomSmart/Return-YouTube-Dislikes/tree/main/layout/Library/Ap */ // Settings +"DONT_EAT_MY_CONTENT" = "Prevent Notch/Island on 2:1 Video Content (DontEatMyContent)"; +"DONT_EAT_MY_CONTENT_DESC" = "Prevent the notch/Dynamic Island from munching on 2:1 video content in YouTube. App restart is required."; + "REPLACE_PREVIOUS_NEXT_BUTTON" = "Replace Previous and Next Button"; "REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Replace Previous and Next Button with Fast forward and Rewind button. App restart is required."; diff --git a/lang/uYouPlus.bundle/vi.lproj/Localizable.strings b/lang/uYouPlus.bundle/vi.lproj/Localizable.strings index 9f846fc..b88bc0a 100644 --- a/lang/uYouPlus.bundle/vi.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/vi.lproj/Localizable.strings @@ -1,4 +1,6 @@ // Settings +"DONT_EAT_MY_CONTENT" = "Ẩn tai thỏ/Dynamic Island (DontEatMyContent)"; +"DONT_EAT_MY_CONTENT_DESC" = "Ẩn tai thỏ/Dynamic Island chèn vào các video có tỷ lệ 2:1. Cần khởi động lại ứng dụng."; "REPLACE_PREVIOUS_NEXT_BUTTON" = "Thay thế nút chuyển video"; "REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Thay thế nút chuyển video bằng nút tua nhanh. Cần khởi động lại ứng dụng."; From f00e66bdedd6b915f4e095c9f900fc6ce56c2c22 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20=C4=90=E1=BA=A1t?= <52943116+qnblackcat@users.noreply.github.com> Date: Thu, 29 Sep 2022 17:40:55 +0700 Subject: [PATCH 105/156] I'm losing my sanity... --- .github/ISSUE_TEMPLATE/bug.md | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bug.md b/.github/ISSUE_TEMPLATE/bug.md index c84342d..b71c2f8 100644 --- a/.github/ISSUE_TEMPLATE/bug.md +++ b/.github/ISSUE_TEMPLATE/bug.md @@ -1,6 +1,6 @@ --- name: Bug -about: Create a report to help us improve +about: Make sure you complete the template. Otherwise, it will be closed without further explanation! title: "[Bug]" labels: bug assignees: '' @@ -14,8 +14,8 @@ _Make sure you complete the template. Otherwise, it will be closed without furth ### Device info - iOS/iPadOS version: - Device model: -- Sideload tool (Ex: AltStore, Sideloadly...) -- Version of uYouPlus: _**latest** or **newest** is NOT a version number!!_ +- Sideload tool (Ex: AltStore, Sideloadly, TrollStore,...) +- The specific version of uYouPlus: _**latest** or **newest** is NOT a version number!!_ ### Describe the bug @@ -23,9 +23,11 @@ _Make sure you complete the template. Otherwise, it will be closed without furth ### How to reproduce the bug _(Please attach videos or screenshots if possible)_ - ### Crash log (if possible) -_(The crash log can be found in the Settings app - Privacy - Analytics & Improvements - Analytics Data - Youtube...)_ +_(The crash log can be found in the Settings app > Privacy > Analytics & Improvements > Analytics Data > Youtube...)_ + +### Are you using the newest version of uYouPlus? If not, why? +_(Developers spend time and effort to fix bugs & add improvements with every release. Why don't you update to the latest version before reporting about an issue???)_ ### Does the issue happen with the official YouTube from AppStore? _(Well, YouTube itself is buggy sometimes...)_ From 645036d28e7d3980b53c2bbe9eeeaf09e0450dfc Mon Sep 17 00:00:00 2001 From: Jinbong Date: Sun, 2 Oct 2022 00:04:50 +0900 Subject: [PATCH 106/156] Update Korean localization --- lang/uYouPlus.bundle/ko.lproj/Localizable.strings | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lang/uYouPlus.bundle/ko.lproj/Localizable.strings b/lang/uYouPlus.bundle/ko.lproj/Localizable.strings index ae7a8bf..3bedee9 100644 --- a/lang/uYouPlus.bundle/ko.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/ko.lproj/Localizable.strings @@ -1,9 +1,11 @@ // Settings +"DONT_EAT_MY_CONTENT" = "노치/아일랜드 영역이 2:1 비율 비디오를 가리지 않게 함 (DontEatMyContent)"; +"DONT_EAT_MY_CONTENT_DESC" = "노치/다이내믹 아일랜드 영역이 유튜브의 2:1 비율 영상 일부를 가리는 것을 막아줍니다. 앱을 다시 시작해야 합니다."; "REPLACE_PREVIOUS_NEXT_BUTTON" = "이전, 다음 재생 버튼 교체"; "REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "이전 재생, 다음 재생 버튼을 빨리 감기, 되감기 버튼으로 교체합니다. 앱을 다시 시작해야 합니다."; -"FIX_GOOGLE_SIGNIN" = "구글 로그인 문제 수정 (TrollStore 사용자 대상)"; +"FIX_GOOGLE_SIGNIN" = "구글 로그인 문제 수정 (TrollStore 사용자만 해당)"; "FIX_GOOGLE_SIGNIN_DESC" = "TrollStore를 통해 설치된 앱에서만 동작합니다: 구글 계정으로 로그인하려면 이 옵션을 켜 주세요. 앱을 다시 시작해야 합니다."; "KILL_APP" = "YouTube 닫기"; @@ -13,10 +15,10 @@ "HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "비디오 재생 오버레이에서 이전 재생, 다음 재생 버튼을 숨깁니다."; "YT_MINIPLAYER" = "모든 YouTube 영상에서 미니 플레이어 활성화"; -"YT_MINIPLAYER_DESC" = "아동용 영상일 경우."; +"YT_MINIPLAYER_DESC" = "유튜브 키즈의 영상 같은 경우."; "CAST_CONFIRM" = "TV 전송 알림 (YTCastConfirm)"; -"CAST_CONFIRM_DESC" = "의도치 않게 TV로 영상을 전송하지 않도록 보내기 전에 확인 메시지를 표시합니다."; +"CAST_CONFIRM_DESC" = "의도하지 않게 TV로 영상을 전송하지 않도록 보내기 전에 확인 메시지를 표시합니다."; "HIDE_HOVER_CARD" = "영상 끝 부분의 호버카드 숨기기 (YTNoHoverCards)"; "HIDE_HOVER_CARD_DESC" = "영상의 끝 부분에서 게시자가 표시한 영상 썸네일을 숨깁니다."; From 87813f8acbde900cff4ffad35ae6e0d794190d8a Mon Sep 17 00:00:00 2001 From: darkbrow Date: Sun, 2 Oct 2022 00:59:53 +0900 Subject: [PATCH 107/156] Update Localizable.strings --- lang/uYouPlus.bundle/ko.lproj/Localizable.strings | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/uYouPlus.bundle/ko.lproj/Localizable.strings b/lang/uYouPlus.bundle/ko.lproj/Localizable.strings index 3bedee9..c6dc3fb 100644 --- a/lang/uYouPlus.bundle/ko.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/ko.lproj/Localizable.strings @@ -18,7 +18,7 @@ "YT_MINIPLAYER_DESC" = "유튜브 키즈의 영상 같은 경우."; "CAST_CONFIRM" = "TV 전송 알림 (YTCastConfirm)"; -"CAST_CONFIRM_DESC" = "의도하지 않게 TV로 영상을 전송하지 않도록 보내기 전에 확인 메시지를 표시합니다."; +"CAST_CONFIRM_DESC" = "의도치 않게 TV로 영상을 전송하지 않도록 보내기 전에 확인 메시지를 표시합니다."; "HIDE_HOVER_CARD" = "영상 끝 부분의 호버카드 숨기기 (YTNoHoverCards)"; "HIDE_HOVER_CARD_DESC" = "영상의 끝 부분에서 게시자가 표시한 영상 썸네일을 숨깁니다."; From 6b799b5c014cb9c38f44d5ce4b2f9bdd86624863 Mon Sep 17 00:00:00 2001 From: PoomSmart Date: Sun, 2 Oct 2022 09:03:20 +0700 Subject: [PATCH 108/156] Copy YTUHD and RYD bundles to the sideloaded app --- Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Makefile b/Makefile index edc7dad..1f5d995 100644 --- a/Makefile +++ b/Makefile @@ -25,6 +25,8 @@ before-package:: @echo -e "==> \033[1mMoving tweak's bundle to Resources/...\033[0m" @mkdir -p Resources/Frameworks/Alderis.framework && find .theos/obj/install/Library/Frameworks/Alderis.framework -maxdepth 1 -type f -exec cp {} Resources/Frameworks/Alderis.framework/ \; @cp -R Tweaks/YouPiP/layout/Library/Application\ Support/YouPiP.bundle Resources/ + @cp -R Tweaks/YTUHD/layout/Library/Application\ Support/YTUHD.bundle Resources/ + @cp -R Tweaks/Return-YouTube-Dislikes/layout/Library/Application\ Support/RYD.bundle Resources/ @cp -R Tweaks/iSponsorBlock/layout/Library/Application\ Support/iSponsorBlock.bundle Resources/ @cp -R Tweaks/uYou/Library/Application\ Support/uYouBundle.bundle Resources/ @cp -R lang/uYouPlus.bundle Resources/ From 36a1f1267161cacf928096dd611db2837aa33ddf Mon Sep 17 00:00:00 2001 From: moh-ter <109860711+moh-ter@users.noreply.github.com> Date: Mon, 3 Oct 2022 01:06:40 +0300 Subject: [PATCH 109/156] Update Localizable.strings --- lang/uYouPlus.bundle/ar.lproj/Localizable.strings | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lang/uYouPlus.bundle/ar.lproj/Localizable.strings b/lang/uYouPlus.bundle/ar.lproj/Localizable.strings index d2b97c4..0b2d00f 100644 --- a/lang/uYouPlus.bundle/ar.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/ar.lproj/Localizable.strings @@ -1,5 +1,8 @@ // Settings +"DONT_EAT_MY_CONTENT" = "منع النوتش/الجزيرة التفاعلية على مقاطع 2:1 (أداة DontEatMyContent)"; +"DONT_EAT_MY_CONTENT_DESC" = "منع النوتش/الجزيرة التفاعلية من قص المقاطع التي تكون نسبة العرض إلى الارتفاع فيها تساوي 2:1. يتطلب إعادة تشغيل التطبيق."; + "REPLACE_PREVIOUS_NEXT_BUTTON" = "تقدم وتراجع بدلاً من السابق والتالي"; "REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "استبدال زرّي المقطع السابق والمقطع التالي بزرّي تقدم وتراجع. يتطلب إعادة تشغيل التطبيق."; From cb2c7ff9515d02b811051c986d2dca3235ed883c Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Mon, 3 Oct 2022 09:36:26 +0700 Subject: [PATCH 110/156] update strings --- .../cz.lproj/Localizable.strings | 23 +++++++++---------- .../de.lproj/Localizable.strings | 11 +++++++++ .../el.lproj/Localizable.strings | 11 +++++++++ .../es.lproj/Localizable.strings | 8 +++++++ .../fr.lproj/Localizable.strings | 8 +++++++ .../he.lproj/Localizable.strings | 11 +++++++++ .../ru.lproj/Localizable.strings | 11 +++++++++ 7 files changed, 71 insertions(+), 12 deletions(-) diff --git a/lang/uYouPlus.bundle/cz.lproj/Localizable.strings b/lang/uYouPlus.bundle/cz.lproj/Localizable.strings index c600782..c1de009 100644 --- a/lang/uYouPlus.bundle/cz.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/cz.lproj/Localizable.strings @@ -1,16 +1,15 @@ -// How to translate uYouPlus to your languate: -// -// 1. Fork uYouPlus repo -// 2. Duplicate the template.lproj folder, and edit the duplicated folder's name to your .lproj id. -// For example: for Russia. For more details, visit: https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes -// 3. Translate each line below after each = -// 4. Open a Pull Request -// -// If your language already exists then feel free to check it and/or improve it! -// You can also add your localiztion to YouPiP here, the process is the same -// https://github.com/PoomSmart/YouPiP/tree/main/layout/Library/Application%20Support/YouPiP.bundle -// // Settings +"DONT_EAT_MY_CONTENT" = "Zabránit zářezu/ostrovu na videoobsahu 2:1 (DontEatMyContent)"; +"DONT_EAT_MY_CONTENT_DESC" = "Zabraňte tomu, aby zářez/Dynamic Island žvýkal video obsah 2:1 na YouTube. Je vyžadován restart aplikace."; + +"REPLACE_PREVIOUS_NEXT_BUTTON" = "Nahradit předchozí a další tlačítko"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Nahradit předchozí a následující tlačítko tlačítkem Přetočit vpřed a vzad. Je vyžadován restart aplikace."; + +"FIX_GOOGLE_SIGNIN" = "Opravit přihlášení přes Google (pouze pro uživatele TrollStore)"; +"FIX_GOOGLE_SIGNIN_DESC" = "Tuto možnost zapněte pouze v případě, že se nemůžete přihlásit pomocí svého účtu Google a aplikace byla nainstalována prostřednictvím TrollStore. Pokud se můžete normálně přihlásit, ponechte ji deaktivovanou. Je vyžadován restart aplikace."; + +"KILL_APP" = "Zavřít YouTube"; +"KILL_APP_DESC" = "Klepnutím sem zavřete YouTube!"; "HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Skrýt tlačítka předchozí a následující"; "HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "Skryje tlačítka předchozí a následující v překrytí ovládání videa."; diff --git a/lang/uYouPlus.bundle/de.lproj/Localizable.strings b/lang/uYouPlus.bundle/de.lproj/Localizable.strings index d98f85c..a06ca81 100644 --- a/lang/uYouPlus.bundle/de.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/de.lproj/Localizable.strings @@ -1,4 +1,15 @@ // Settings +"DONT_EAT_MY_CONTENT" = "Kerbe/Insel bei 2:1-Videoinhalten verhindern (DontEatMyContent)"; +"DONT_EAT_MY_CONTENT_DESC" = "Verhindert, dass die Notch/Dynamic Island 2:1-Videoinhalte auf YouTube kaut. Neustart der App erforderlich."; + +"REPLACE_PREVIOUS_NEXT_BUTTON" = "Zurück- und Weiter-Schaltfläche ersetzen"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Ersetzen Sie die Schaltflächen „Zurück“ und „Weiter“ durch die Schaltflächen „Schnellvorlauf“ und „Rücklauf“. App-Neustart ist erforderlich.“; + +"FIX_GOOGLE_SIGNIN" = "Google-Anmeldung reparieren (nur für TrollStore-Benutzer)"; +"FIX_GOOGLE_SIGNIN_DESC" = "Aktivieren Sie diese Option nur, wenn Sie sich nicht mit Ihrem Google-Konto anmelden können und die App über den TrollStore installiert wurde. Wenn Sie sich normal anmelden können, lassen Sie sie deaktiviert. Ein Neustart der App ist erforderlich."; + +"KILL_APP" = "YouTube schließen"; +"KILL_APP_DESC" = "Hier tippen, um YouTube zu schließen!"; "REPLACE_PREVIOUS_NEXT_BUTTON" = "Vor- und Zurücktasten ersetzen"; "REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Vor- und Zurücktasten mit Vor- und Zurückspultasten ersetzen. App restart is required."; diff --git a/lang/uYouPlus.bundle/el.lproj/Localizable.strings b/lang/uYouPlus.bundle/el.lproj/Localizable.strings index a230f60..03f05c2 100644 --- a/lang/uYouPlus.bundle/el.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/el.lproj/Localizable.strings @@ -1,4 +1,15 @@ // Settings +"DONT_EAT_MY_CONTENT" = "Αποτροπή Notch/Island σε περιεχόμενο βίντεο 2:1 (DontEatMyContent)"; +"DONT_EAT_MY_CONTENT_DESC" = "Αποτρέψτε το notch/Dynamic Island από το να μασουλάει περιεχόμενο βίντεο 2:1 στο YouTube. Απαιτείται επανεκκίνηση της εφαρμογής."; + +"REPLACE_PREVIOUS_NEXT_BUTTON" = "Αντικατάσταση του Προηγούμενου και του Επόμενου Κουμπιού"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Αντικατάσταση του Προηγούμενου και του Επόμενου κουμπιού με το κουμπί Γρήγορη κίνηση προς τα εμπρός και προς τα πίσω. Απαιτείται επανεκκίνηση της εφαρμογής."; + +"FIX_GOOGLE_SIGNIN" = "Διόρθωση σύνδεσης Google (μόνο για χρήστες του TrollStore)"; +"FIX_GOOGLE_SIGNIN_DESC" = "Ενεργοποιήστε αυτήν την επιλογή μόνο όταν δεν μπορείτε να συνδεθείτε με τον λογαριασμό σας Google και η εφαρμογή έχει εγκατασταθεί μέσω του TrollStore. Εάν μπορείτε να συνδεθείτε κανονικά, διατηρήστε την απενεργοποιημένη. Απαιτείται επανεκκίνηση της εφαρμογής."; + +"KILL_APP" = "Κλείσιμο YouTube"; +"KILL_APP_DESC" = "Πατήστε εδώ για να κλείσετε το YouTube!"; "HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Κρύψτε το προηγούμενο και το επόμενο κουμπί"; "HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "Κρύψτε το προηγούμενο και το επόμενο κουμπί κατά την αναπαραγωγή βίντεο."; diff --git a/lang/uYouPlus.bundle/es.lproj/Localizable.strings b/lang/uYouPlus.bundle/es.lproj/Localizable.strings index 55976c6..b3230e9 100644 --- a/lang/uYouPlus.bundle/es.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/es.lproj/Localizable.strings @@ -1,4 +1,12 @@ // Settings +"DONT_EAT_MY_CONTENT" = "Evitar Notch/Island en contenido de video 2:1 (DontEatMyContent)"; +"DONT_EAT_MY_CONTENT_DESC" = "Evite que la muesca/Dynamic Island se trague contenido de video 2:1 en YouTube. Es necesario reiniciar la aplicación."; + +"REPLACE_PREVIOUS_NEXT_BUTTON" = "Reemplazar botón anterior y siguiente"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Reemplace el botón Anterior y Siguiente con el botón Avance rápido y Rebobinado. Es necesario reiniciar la aplicación."; + +"FIX_GOOGLE_SIGNIN" = "Reparar el inicio de sesión de Google (solo para usuarios de TrollStore)"; +"FIX_GOOGLE_SIGNIN_DESC" = "Active esta opción solo cuando no pueda iniciar sesión con su cuenta de Google y la aplicación se instaló a través de TrollStore. Si puede iniciar sesión normalmente, manténgala desactivada. Es necesario reiniciar la aplicación."; "KILL_APP" = "Cerrar YouTube"; "KILL_APP_DESC" = "Toca aquí para cerrar YouTube!"; diff --git a/lang/uYouPlus.bundle/fr.lproj/Localizable.strings b/lang/uYouPlus.bundle/fr.lproj/Localizable.strings index 7b6717c..546a16d 100644 --- a/lang/uYouPlus.bundle/fr.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/fr.lproj/Localizable.strings @@ -1,4 +1,12 @@ // Settings +"DONT_EAT_MY_CONTENT" = "Evitar Notch/Island en contenido de video 2:1 (DontEatMyContent)"; +"DONT_EAT_MY_CONTENT_DESC" = "Evite que la muesca/Dynamic Island se trague contenido de video 2:1 en YouTube. Es necesario reiniciar la aplicación."; + +"REPLACE_PREVIOUS_NEXT_BUTTON" = "Reemplazar botón anterior y siguiente"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Reemplace el botón Anterior y Siguiente con el botón Avance rápido y Rebobinado. Es necesario reiniciar la aplicación."; + +"FIX_GOOGLE_SIGNIN" = "Reparar el inicio de sesión de Google (solo para usuarios de TrollStore)"; +"FIX_GOOGLE_SIGNIN_DESC" = "Active esta opción solo cuando no pueda iniciar sesión con su cuenta de Google y la aplicación se instaló a través de TrollStore. Si puede iniciar sesión normalmente, manténgala desactivada. Es necesario reiniciar la aplicación."; "KILL_APP" = "Fermer YouTube"; "KILL_APP_DESC" = "Appuyez ici pour fermer YouTube !"; diff --git a/lang/uYouPlus.bundle/he.lproj/Localizable.strings b/lang/uYouPlus.bundle/he.lproj/Localizable.strings index fe36e3c..f4d5199 100644 --- a/lang/uYouPlus.bundle/he.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/he.lproj/Localizable.strings @@ -1,4 +1,15 @@ // Settings +"DONT_EAT_MY_CONTENT" = "מנע חריץ/אי בתוכן וידאו 2:1 (DontEatMyContent)"; +"DONT_EAT_MY_CONTENT_DESC" = "מנע מהחריץ/האי הדינמי ללעוס תוכן וידאו 2:1 ב-YouTube. נדרשת הפעלה מחדש של האפליקציה."; + +"REPLACE_PREVIOUS_NEXT_BUTTON" = "החלף את הלחצן הקודם והבא"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "החלף את הלחצן הקודם והבא בלחצן הרצה קדימה והאחורה. נדרשת הפעלה מחדש של האפליקציה."; + +"FIX_GOOGLE_SIGNIN" = "תקן כניסה של Google (עבור משתמש TrollStore בלבד)"; +"FIX_GOOGLE_SIGNIN_DESC" = "הפעל אפשרות זו רק כאשר אינך יכול להיכנס עם חשבון Google שלך והאפליקציה הותקנה דרך TrollStore. אם אתה יכול להתחבר כרגיל, השאר אותה מושבתת. נדרשת הפעלה מחדש של האפליקציה."; + +"KILL_APP" = "סגור את YouTube"; +"KILL_APP_DESC" = "הקש כאן כדי לסגור את YouTube!"; "HIDE_PREVIOUS_AND_NEXT_BUTTON" = "הסתר את הקודם והבא"; "HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "הסתר את כפתורי הקודם והבא בתצוגת השליטה בסרטון."; diff --git a/lang/uYouPlus.bundle/ru.lproj/Localizable.strings b/lang/uYouPlus.bundle/ru.lproj/Localizable.strings index 836dc85..c39607d 100644 --- a/lang/uYouPlus.bundle/ru.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/ru.lproj/Localizable.strings @@ -1,4 +1,15 @@ /* uYouPlusSettings */ +"DONT_EAT_MY_CONTENT" = "Предотвратить выемку/остров на видеоконтенте 2:1 (DontEatMyContent)"; +"DONT_EAT_MY_CONTENT_DESC" = "Не позволяйте вырезу/Dynamic Island поглощать видеоконтент 2:1 на YouTube. Требуется перезапуск приложения."; + +"REPLACE_PREVIOUS_NEXT_BUTTON" = "Заменить кнопку "Назад" и "Далее"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Замените кнопки «Назад» и «Далее» на кнопки «Перемотка вперед» и «Назад». Требуется перезапуск приложения."; + +"FIX_GOOGLE_SIGNIN" = "Исправить вход через Google (только для пользователя TrollStore)"; +"FIX_GOOGLE_SIGNIN_DESC" = "Включайте эту опцию, только если вы не можете войти в свою учетную запись Google и приложение было установлено через TrollStore. Если вы можете нормально войти в систему, оставьте ее отключенной. Требуется перезапуск приложения."; + +"KILL_APP" = "Закрыть YouTube"; +"KILL_APP_DESC" = "Нажмите здесь, чтобы закрыть YouTube!"; "HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Скрыть «Пред.» и «След.»"; "HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "Убирает кнопки переключения видео «Следующий» и «Предыдущий» с плеера."; From 9ce39051ef86774ea488c94c22fc4505c4afd21f Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Mon, 3 Oct 2022 09:36:40 +0700 Subject: [PATCH 111/156] update submodules --- Tweaks/Return-YouTube-Dislikes | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Tweaks/Return-YouTube-Dislikes b/Tweaks/Return-YouTube-Dislikes index 6d9ed78..80074de 160000 --- a/Tweaks/Return-YouTube-Dislikes +++ b/Tweaks/Return-YouTube-Dislikes @@ -1 +1 @@ -Subproject commit 6d9ed785ebd251bb0f8735af9fcc05929ddd8876 +Subproject commit 80074def6c0412b56fc4237f664528f0a9f1a894 From c85d92895240c90fd8c9119561998d6af187becd Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Mon, 3 Oct 2022 17:20:30 +0700 Subject: [PATCH 112/156] change the default value of some uYou's options --- uYouPlus.xm | 30 +++++++++++++++++++++--------- 1 file changed, 21 insertions(+), 9 deletions(-) diff --git a/uYouPlus.xm b/uYouPlus.xm index 35ef8d5..203b9af 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -105,12 +105,6 @@ BOOL dontEatMyContent() { } # pragma mark - Tweaks -// Enable Reorder videos from playlist while on the Watch page - @PoomSmart -%hook YTIPlaylistPanelVideoRenderer -%new -- (BOOL)canReorder { return YES; } -%end - // Skips content warning before playing *some videos - @PoomSmart %hook YTPlayabilityResolutionUserActionUIController - (void)showConfirmAlert { [self confirmAlertDidPressConfirm]; } @@ -1039,9 +1033,6 @@ void center() { # pragma mark - ctor %ctor { %init; - if (![[[[NSUserDefaults standardUserDefaults] dictionaryRepresentation] allKeys] containsObject:@"relatedVideosAtTheEndOfYTVideos"]) { - [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"relatedVideosAtTheEndOfYTVideos"]; - } if (oled()) { %init(gOLED); } @@ -1069,4 +1060,25 @@ void center() { if (!fixGoogleSignIn()) { %init(gFixGoogleSignIn); } + + // Disable broken options of uYou + [[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"removeYouTubeAds"]; + [[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"disableAgeRestriction"]; + + // Change the default value of some uYou's options + if (![[[[NSUserDefaults standardUserDefaults] dictionaryRepresentation] allKeys] containsObject:@"relatedVideosAtTheEndOfYTVideos"]) { + [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"relatedVideosAtTheEndOfYTVideos"]; + } + if (![[[[NSUserDefaults standardUserDefaults] dictionaryRepresentation] allKeys] containsObject:@"uYouButtonVideoControlsOverlay"]) { + [[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"uYouButtonVideoControlsOverlay"]; + } + if (![[[[NSUserDefaults standardUserDefaults] dictionaryRepresentation] allKeys] containsObject:@"uYouPiPButtonVideoControlsOverlay"]) { + [[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"uYouPiPButtonVideoControlsOverlay"]; + } + // if (![[[[NSUserDefaults standardUserDefaults] dictionaryRepresentation] allKeys] containsObject:@"uYouRepeatButtonVideoControlsOverlay"]) { + // [[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"uYouRepeatButtonVideoControlsOverlay"]; + // } + // if (![[[[NSUserDefaults standardUserDefaults] dictionaryRepresentation] allKeys] containsObject:@"uYouRightRotateButtonVideoControlsOverlay"]) { + // [[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"uYouRightRotateButtonVideoControlsOverlay"]; + // } } From 48228e14f01a56a816c28b7e14be4246c9c9521c Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Mon, 3 Oct 2022 22:20:32 +0700 Subject: [PATCH 113/156] v17.39.4-2.1 --- README.md | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 43cd1b5..f8ee35c 100644 --- a/README.md +++ b/README.md @@ -29,6 +29,8 @@ - [Lyvendia](https://github.com/Lyvendia/) for [YTSpeed](https://github.com/Lyvendia/YTSpeed/) +- [therealFoxster](https://github.com/therealFoxster) for [DontEatMyContent](https://github.com/therealFoxster/DontEatMyContent). + - [YouTube Extensions](https://github.com/CokePokes/YoutubeExtensions) by [CokePokes](https://github.com/CokePokes/). - [theos team](https://github.com/theos/theos) for theos & theos-jailed. @@ -64,6 +66,8 @@ 12. **YTMiniplayerEnabler**: enable Miniplayer for all YouTube videos. +13. **DontEatMyContent**: Prevent the notch/Dynamic Island from munching on 2:1 video content in YouTube. +
# Known issues @@ -80,27 +84,28 @@ - My official AltStore repo: https://qnblackcat.github.io/AltStore/ - - [Open in AltStore (v17.37.3-2.1)](https://tinyurl.com/2p8pd9n7) - It will take a while to install because AltStore needs to download the IPA. + - [Open in AltStore (v17.39.4-2.1)](https://tinyurl.com/t9hnhmhu) - It will take a while to install because AltStore needs to download the IPA. -- Version info: _(last update: Sep 24)_ +- Version info: _(last update: Oct 04)_
Expand | **Tweaks/App** | **Developer** | **Version** | **Open source** | | - | - | :-: | :-: | -| **YouTube** | Google Inc | 17.37.3 | ✖︎ | +| **YouTube** | Google Inc | 17.39.4 | ✖︎ | | [uYou](https://github.com/MiRO92/uYou-for-YouTube) | [MiRO92](https://twitter.com/miro92) | 2.1 | ✖︎ | | [Open in YouTube](https://github.com/CokePokes/YoutubeExtensions) | [CokePokes](https://github.com/CokePokes) | 1.2 | ✖︎ | | **iSponsorBlock** | [Galactic-Dev](https://github.com/Galactic-Dev) | 1.0-15 | [✔︎](https://github.com/Galactic-Dev/iSponsorBlock) | | **BigYTMiniPlayer** | [Galactic-Dev](https://github.com/Galactic-Dev) | 1.0-1 | [✔︎](https://github.com/Galactic-Dev/BigYTMiniPlayer) | | **YTNoHoverCards** | [level3tjg](https://twitter.com/level3tjg) | 0.0.3 | [✔︎](https://github.com/level3tjg/YTNoHoverCards) | | **YTMiniplayerEnabler** | [level3tjg](https://twitter.com/level3tjg) | 0.0.2 | [✔︎](https://github.com/level3tjg/YTMiniplayerEnabler) | +| **DontEatMyContent** | [therealFoxster](https://github.com/therealFoxster) | 1.0.0 | [✔︎](https://github.com/therealFoxster/DontEatMyContent) | | **YTSpeed** | [Lyvendia](https://github.com/Lyvendia) | 1.0.1 | [✔︎](https://github.com/Lyvendia/YTSpeed) | | **YTCastConfirm** | [JamieBerghmans](https://github.com/JamieBerghmans) | 1.0.0 | [✔︎](https://github.com/JamieBerghmans/YTCastConfirm) | | **Alderis Color Picker** | [HASHBANG Productions](https://github.com/hbang) | 1.2| [✔︎](https://github.com/hbang/Alderis) | -| **YTUHD** | [PoomSmart](https://twitter.com/poomsmart) | 1.2.10 | [✔︎](https://github.com/PoomSmart/YTUHD) | -| **YouPiP** | [PoomSmart](https://twitter.com/poomsmart) | 1.7.9 | [✔︎](https://github.com/PoomSmart/YouPiP) | +| **YTUHD** | [PoomSmart](https://twitter.com/poomsmart) | 1.3.0 | [✔︎](https://github.com/PoomSmart/YTUHD) | +| **YouPiP** | [PoomSmart](https://twitter.com/poomsmart) | 1.7.10 | [✔︎](https://github.com/PoomSmart/YouPiP) | | **IAmYouTube** | [PoomSmart](https://twitter.com/poomsmart) | 1.2.0 | [✔︎](https://github.com/PoomSmart/IAmYouTube) | | **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) | @@ -108,7 +113,7 @@ | **YTAutoFullScreen** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.3 | [✔︎](https://github.com/PoomSmart/YTAutoFullScreen) | | **YouRememberCaption** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.0 | [✔︎](https://poomsmart.github.io/repo/depictions/youremembercaption.html) | | **YTClassicVideoQuality** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.1 | [✔︎](https://github.com/PoomSmart/YTClassicVideoQuality) | -| **Return YouTube Dislike** | [PoomSmart](https://twitter.com/poomsmart) | 1.6.8 | [✔︎](https://github.com/PoomSmart/Return-YouTube-Dislikes) | +| **Return YouTube Dislike** | [PoomSmart](https://twitter.com/poomsmart) | 1.7.0 | [✔︎](https://github.com/PoomSmart/Return-YouTube-Dislikes) | | **YTNoCheckLocalNetwork** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.2 | [✔︎](https://poomsmart.github.io/repo/depictions/ytnochecklocalnetwork.html) |
From 971eff33ff06c437a43c863e14099cdd0ced8080 Mon Sep 17 00:00:00 2001 From: 5jd <85830207+5jd@users.noreply.github.com> Date: Mon, 3 Oct 2022 19:11:20 +0200 Subject: [PATCH 114/156] Update French translation Fixes Spanish strings and simplify YTCastConfirm strings! --- .../uYouPlus.bundle/fr.lproj/Localizable.strings | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/lang/uYouPlus.bundle/fr.lproj/Localizable.strings b/lang/uYouPlus.bundle/fr.lproj/Localizable.strings index 546a16d..ae084f9 100644 --- a/lang/uYouPlus.bundle/fr.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/fr.lproj/Localizable.strings @@ -1,12 +1,12 @@ // Settings -"DONT_EAT_MY_CONTENT" = "Evitar Notch/Island en contenido de video 2:1 (DontEatMyContent)"; -"DONT_EAT_MY_CONTENT_DESC" = "Evite que la muesca/Dynamic Island se trague contenido de video 2:1 en YouTube. Es necesario reiniciar la aplicación."; +"DONT_EAT_MY_CONTENT" = "Empêcher l'encoche/l'île dynamique de grignoter le contenu vidéo 2:1 (DontEatMyContent)" ; +"DONT_EAT_MY_CONTENT_DESC" = "Empêche l'encoche/Dynamic Island de grignoter du contenu vidéo 2:1 dans YouTube. Le redémarrage de l'application est nécessaire."; -"REPLACE_PREVIOUS_NEXT_BUTTON" = "Reemplazar botón anterior y siguiente"; -"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Reemplace el botón Anterior y Siguiente con el botón Avance rápido y Rebobinado. Es necesario reiniciar la aplicación."; +"REPLACE_PREVIOUS_NEXT_BUTTON" = "Remplacer le bouton précédent et suivant"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Remplacer les boutons Précédent et Suivant par les boutons Avance rapide et Retour rapide. Le redémarrage de l'application est nécessaire"; -"FIX_GOOGLE_SIGNIN" = "Reparar el inicio de sesión de Google (solo para usuarios de TrollStore)"; -"FIX_GOOGLE_SIGNIN_DESC" = "Active esta opción solo cuando no pueda iniciar sesión con su cuenta de Google y la aplicación se instaló a través de TrollStore. Si puede iniciar sesión normalmente, manténgala desactivada. Es necesario reiniciar la aplicación."; +"FIX_GOOGLE_SIGNIN" = "Fixe l'identification Google (pour les utilisateurs de TrollStore uniquement)" ; +"FIX_GOOGLE_SIGNIN_DESC" = "Activez cette option uniquement si vous ne pouvez pas vous connecter avec votre compte Google et que l'application a été installée via TrollStore. Si vous pouvez vous connecter normalement, laissez-la désactivée. Le redémarrage de l'application est nécessaire."; "KILL_APP" = "Fermer YouTube"; "KILL_APP_DESC" = "Appuyez ici pour fermer YouTube !"; @@ -51,7 +51,7 @@ "HIDE_PAID_PROMOTION_CARDS_DESC" = "Masque la bannière 'Inclut une communication commerciale' dans certaines vidéos."; // YTCastConfirm -"CASTING" = "Castings"; -"MSG_ARE_YOU_SURE" = "Êtes-vous sûr de vouloir commencer le casting ?"; +"CASTING" = "Cast"; +"MSG_ARE_YOU_SURE" = "Êtes-vous sûr de vouloir commencer un cast sur votre télévision ?"; "MSG_YES" = "Oui"; "MSG_CANCEL" = "Annuler"; From 314b2aaaf96e71f818962fb594c478970626a6b2 Mon Sep 17 00:00:00 2001 From: 5jd <85830207+5jd@users.noreply.github.com> Date: Mon, 3 Oct 2022 19:16:33 +0200 Subject: [PATCH 115/156] Forgot Dynamic Island in a place --- lang/uYouPlus.bundle/fr.lproj/Localizable.strings | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/uYouPlus.bundle/fr.lproj/Localizable.strings b/lang/uYouPlus.bundle/fr.lproj/Localizable.strings index ae084f9..ffdfe81 100644 --- a/lang/uYouPlus.bundle/fr.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/fr.lproj/Localizable.strings @@ -1,5 +1,5 @@ // Settings -"DONT_EAT_MY_CONTENT" = "Empêcher l'encoche/l'île dynamique de grignoter le contenu vidéo 2:1 (DontEatMyContent)" ; +"DONT_EAT_MY_CONTENT" = "Empêcher l'encoche/Dynamic Island de grignoter le contenu vidéo 2:1 (DontEatMyContent)" ; "DONT_EAT_MY_CONTENT_DESC" = "Empêche l'encoche/Dynamic Island de grignoter du contenu vidéo 2:1 dans YouTube. Le redémarrage de l'application est nécessaire."; "REPLACE_PREVIOUS_NEXT_BUTTON" = "Remplacer le bouton précédent et suivant"; From e911ee4e4d7717387015cae852a33f4dbd4ba553 Mon Sep 17 00:00:00 2001 From: 5jd <85830207+5jd@users.noreply.github.com> Date: Mon, 3 Oct 2022 21:14:57 +0200 Subject: [PATCH 116/156] Remove a space --- lang/uYouPlus.bundle/fr.lproj/Localizable.strings | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/uYouPlus.bundle/fr.lproj/Localizable.strings b/lang/uYouPlus.bundle/fr.lproj/Localizable.strings index ffdfe81..758f692 100644 --- a/lang/uYouPlus.bundle/fr.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/fr.lproj/Localizable.strings @@ -1,5 +1,5 @@ // Settings -"DONT_EAT_MY_CONTENT" = "Empêcher l'encoche/Dynamic Island de grignoter le contenu vidéo 2:1 (DontEatMyContent)" ; +"DONT_EAT_MY_CONTENT" = "Empêcher l'encoche/Dynamic Island de grignoter le contenu vidéo 2:1 (DontEatMyContent)"; "DONT_EAT_MY_CONTENT_DESC" = "Empêche l'encoche/Dynamic Island de grignoter du contenu vidéo 2:1 dans YouTube. Le redémarrage de l'application est nécessaire."; "REPLACE_PREVIOUS_NEXT_BUTTON" = "Remplacer le bouton précédent et suivant"; From 6ea9f1b4a7ddbc020b82fb158e9054be2c7d5705 Mon Sep 17 00:00:00 2001 From: 5jd <85830207+5jd@users.noreply.github.com> Date: Mon, 3 Oct 2022 23:22:46 +0200 Subject: [PATCH 117/156] Update Localizable.strings --- lang/uYouPlus.bundle/fr.lproj/Localizable.strings | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/uYouPlus.bundle/fr.lproj/Localizable.strings b/lang/uYouPlus.bundle/fr.lproj/Localizable.strings index 758f692..e0f4b3b 100644 --- a/lang/uYouPlus.bundle/fr.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/fr.lproj/Localizable.strings @@ -3,7 +3,7 @@ "DONT_EAT_MY_CONTENT_DESC" = "Empêche l'encoche/Dynamic Island de grignoter du contenu vidéo 2:1 dans YouTube. Le redémarrage de l'application est nécessaire."; "REPLACE_PREVIOUS_NEXT_BUTTON" = "Remplacer le bouton précédent et suivant"; -"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Remplacer les boutons Précédent et Suivant par les boutons Avance rapide et Retour rapide. Le redémarrage de l'application est nécessaire"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Remplace les boutons Précédent et Suivant par les boutons Avance rapide et Retour rapide. Le redémarrage de l'application est nécessaire"; "FIX_GOOGLE_SIGNIN" = "Fixe l'identification Google (pour les utilisateurs de TrollStore uniquement)" ; "FIX_GOOGLE_SIGNIN_DESC" = "Activez cette option uniquement si vous ne pouvez pas vous connecter avec votre compte Google et que l'application a été installée via TrollStore. Si vous pouvez vous connecter normalement, laissez-la désactivée. Le redémarrage de l'application est nécessaire."; From ea61bb0d651cdc96a3ce78b999990cd4e26f873f Mon Sep 17 00:00:00 2001 From: 5jd <85830207+5jd@users.noreply.github.com> Date: Mon, 3 Oct 2022 23:25:20 +0200 Subject: [PATCH 118/156] Update Localizable.strings --- lang/uYouPlus.bundle/fr.lproj/Localizable.strings | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/uYouPlus.bundle/fr.lproj/Localizable.strings b/lang/uYouPlus.bundle/fr.lproj/Localizable.strings index e0f4b3b..5fd55a3 100644 --- a/lang/uYouPlus.bundle/fr.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/fr.lproj/Localizable.strings @@ -5,7 +5,7 @@ "REPLACE_PREVIOUS_NEXT_BUTTON" = "Remplacer le bouton précédent et suivant"; "REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Remplace les boutons Précédent et Suivant par les boutons Avance rapide et Retour rapide. Le redémarrage de l'application est nécessaire"; -"FIX_GOOGLE_SIGNIN" = "Fixe l'identification Google (pour les utilisateurs de TrollStore uniquement)" ; +"FIX_GOOGLE_SIGNIN" = "Réparer l'identification Google (pour les utilisateurs de TrollStore uniquement)" ; "FIX_GOOGLE_SIGNIN_DESC" = "Activez cette option uniquement si vous ne pouvez pas vous connecter avec votre compte Google et que l'application a été installée via TrollStore. Si vous pouvez vous connecter normalement, laissez-la désactivée. Le redémarrage de l'application est nécessaire."; "KILL_APP" = "Fermer YouTube"; From 598c62605bcdd5aa5176da7cf1e5f4540330de23 Mon Sep 17 00:00:00 2001 From: Ludovico Manto <32181504+ludovi-com@users.noreply.github.com> Date: Tue, 4 Oct 2022 15:01:38 +0200 Subject: [PATCH 119/156] Added Italian Language --- .../it.lproj/Localizable.strings | 57 +++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 lang/uYouPlus.bundle/it.lproj/Localizable.strings diff --git a/lang/uYouPlus.bundle/it.lproj/Localizable.strings b/lang/uYouPlus.bundle/it.lproj/Localizable.strings new file mode 100644 index 0000000..cf75174 --- /dev/null +++ b/lang/uYouPlus.bundle/it.lproj/Localizable.strings @@ -0,0 +1,57 @@ +// Settings +"DONT_EAT_MY_CONTENT" = "Previeni la Tacca/Isola sui Contenuti Video 2:1 (DontEatMyContent)"; +"DONT_EAT_MY_CONTENT_DESC" = "Previene alla Tacca/Isola di nascondere parte dei Contenuti Video 2:1 in YouTube. È richiesto un riavvio dell'app."; + +"REPLACE_PREVIOUS_NEXT_BUTTON" = "Sostituisci i Bottoni Precedente e Successivo"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Sostituisci i Bottoni Precedente e Successivo con Avanti veloce e Indietro veloce. È richiesto un riavvio dell'app."; + +"FIX_GOOGLE_SIGNIN" = "Ripara Google Sign in (solo per utenti TrollStore)"; +"FIX_GOOGLE_SIGNIN_DESC" = "Attiva questa opzione solo quando non puoi accedere al tuo account Google e l'app è stata installata attraverso TrollStore. Se puoi accedere normalmente, tienila disabilitata. È richiesto un riavvio dell'app."; + +"KILL_APP" = "Chiudi YouTube"; +"KILL_APP_DESC" = "Premi qui per chiudere YouTube!"; + +"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Nascondi i bottoni Precedente e Successivo"; +"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "Nasconde i bottoni Precedente e Successivo dai controlli in sovrimpressione al video."; + +"YT_MINIPLAYER" = "Abilita il Miniplayer su tutti i video di YouTube"; +"YT_MINIPLAYER_DESC" = "Video YouTube Kids per esempio."; + +"CAST_CONFIRM" = "Avviso di conferma prima della condivisione su TV (YTCastConfirm)"; +"CAST_CONFIRM_DESC" = "Mostra un avviso di conferma prima della condivisione per evitar e di irrompere accidentalmente sulla TV."; + +"HIDE_HOVER_CARD" = "Nascondi i riquadri in sovrimpressione a fine video (YTNoHoverCards)"; +"HIDE_HOVER_CARD_DESC" = "Nasconde i riquadri (miniature) a fine video proposti dall'autore."; + +"NEW_MINIPLAYER_STYLE" = "Nuovo stile per la barra del miniplayer (BigYTMiniPlayer)"; +"NEW_MINIPLAYER_STYLE_DESC" = "È richiesto un riavvio dell'app."; + +"YT_RE_EXPLORE" = "Sostituisci il tab Shorts con il tab Esplora (YTReExplore)"; +"YT_RE_EXPLORE_DESC" = "È richiesto un riavvio dell'app."; + +"HIDE_SUBTITLES_BUTTON" = "Nascondi Bottone Sottotitoli"; +"HIDE_SUBTITLES_BUTTON_DESC" = "Nasconde il controllo per i sottotitoli in sovrimpressione al video."; + +"HIDE_AUTOPLAY_SWITCH" = "Nascondi Interruttore Riproduzione Automatica"; +"HIDE_AUTOPLAY_SWITCH_DESC" = "Nasconde il controllo per la riproduzione automatica in sovrimpressione al video."; + +"AUTO_FULLSCREEN" = "Auto Schermo Intero (YTAutoFullScreen)"; +"AUTO_FULLSCREEN_DESC" = "Riproduce automaticamente video a tutto schermo."; + +"HIDE_HUD_MESSAGES" = "Nascondi messaggi in sovrimpressione"; +"HIDE_HUD_MESSAGES_DESC" = "Esempio: Sottotitoli attivati/disattivati, Ripetizione video attiva,..."; + +"OLED_DARKMODE" = "Modalità Scura OLED (Sperimentale)"; +"OLED_DARKMODE_DESC" = "Potrebbe non funzionare correttamente in alcuni scenari. È richiesto un riavvio dell'app dopo aver abilitato/disabilitato questa opzione."; + +"OLED_KEYBOARD" = "Tastiera OLED (Sperimentale)"; +"OLED_KEYBOARD_DESC" = "Potrebbe non funzionare correttamente in alcuni scenari. È richiesto un riavvio dell'app."; + +"HIDE_PAID_PROMOTION_CARDS" = "Nascondi i banner sponsorizzati"; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "Nasconde il banner 'Include Promozioni a Pagamento' in alcuni video."; + +// YTCastConfirm +"CASTING" = "Condivisione su TV"; +"MSG_ARE_YOU_SURE" = "Sei sicuro di voler avviare la condivisione?"; +"MSG_YES" = "Sì"; +"MSG_CANCEL" = "Annulla"; From da75038a9c2a155d3fb4129e3dd6a1a1f2ae39d6 Mon Sep 17 00:00:00 2001 From: Laszlo Jozsef Koles <115018876+Koles13@users.noreply.github.com> Date: Tue, 4 Oct 2022 16:48:36 +0200 Subject: [PATCH 120/156] Create hu.Iproj --- lang/uYouPlus.bundle/hu.Iproj | 58 +++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 lang/uYouPlus.bundle/hu.Iproj diff --git a/lang/uYouPlus.bundle/hu.Iproj b/lang/uYouPlus.bundle/hu.Iproj new file mode 100644 index 0000000..34c5b66 --- /dev/null +++ b/lang/uYouPlus.bundle/hu.Iproj @@ -0,0 +1,58 @@ +// Settings + +"DONT_EAT_MY_CONTENT" = "Notch/Island megelőzése 2:1 arányú videótartalomnál (DontEatMyContent)"; +"DONT_EAT_MY_CONTENT_DESC" = "Akadályozza meg, hogy a Notch/Dynamic Island 2:1 arányú videótartalmat csámcsogjon a YouTube-on. Az alkalmazás újraindítása szükséges."; + +"REPLACE_PREVIOUS_NEXT_BUTTON" = "Előző és Következő gomb cseréje"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Cserélje ki az Előző és Következő gombot Gyors előre és visszatekerés gombbal. Az alkalmazás újraindítása szükséges."; + +"FIX_GOOGLE_SIGNIN" = "A Google bejelentkezés javítása (csak a TrollStore-felhasználók számára)"; +"FIX_GOOGLE_SIGNIN_DESC" = "Csak akkor kapcsolja be ezt az opciót, ha nem tud bejelentkezni Google-fiókjával, és az alkalmazást a TrollStore-on keresztül telepítették. Ha normálisan be tud jelentkezni, tartsa letiltva. Az alkalmazás újraindítása szükséges."; + +"KILL_APP" = "YouTube bezárása"; +"KILL_APP_DESC" = "Kattints ide a YouTube bezárásához!"; + +"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Előző és Következő gomb elrejtése"; +"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "Az Előző és a Következő gomb elrejtése a videóvezérlők fedvényén."; + +"YT_MINIPLAYER" = "Engedélyezze a Minilejátszót az összes YouTube-videóhoz"; +"YT_MINIPLAYER_DESC" = "Például gyermekvideók."; + +"CAST_CONFIRM" = "Megerősítés átküldés előtt (YTCastConfirm)"; +"CAST_CONFIRM_DESC" = "Az átküldés előtt mutasson megerősítő figyelmeztetést, hogy megakadályozza a TV véletlen eltérítését."; + +"HIDE_HOVER_CARD" = "A záróképernyők lebegő kártyáinak elrejtése (YTNoHoverCards)"; +"HIDE_HOVER_CARD_DESC" = "Az alkotói záróképernyők (bélyegképek) elrejtése a videók végén."; + +"NEW_MINIPLAYER_STYLE" = "Új minilejátszó sáv (BigYTMiniPlayer)"; +"NEW_MINIPLAYER_STYLE_DESC" = "Az alkalmazás újraindítása szükséges."; + +"YT_RE_EXPLORE" = "Cserélje le a Shorts fület a Felfedezés fülre (YTReExplore)"; +"YT_RE_EXPLORE_DESC" = "Az alkalmazás újraindítása szükséges."; + +"HIDE_SUBTITLES_BUTTON" = "Feliratok elrejtése"; +"HIDE_SUBTITLES_BUTTON_DESC" = "A Feliratok gomb elrejtése a videóvezérlők fedvényében."; + +"HIDE_AUTOPLAY_SWITCH" = "Az automatikus lejátszás kapcsoló elrejtése"; +"HIDE_AUTOPLAY_SWITCH_DESC" = "Az Automatikus lejátszás kapcsoló elrejtése a videovezérlők fedvényében."; + +"AUTO_FULLSCREEN" = "Automatikus teljes képernyő (YTAutoFullScreen)"; +"AUTO_FULLSCREEN_DESC" = "Videók automatikus lejátszása teljes képernyőn."; + +"HIDE_HUD_MESSAGES" = "HUD üzenetek elrejtése"; +"HIDE_HUD_MESSAGES_DESC" = "Példa: A CC be/ki van kapcsolva, a videó hurok be van kapcsolva,..."; + +"OLED_DARKMODE" = "OLED sötét mód (Kísérleti)"; +"OLED_DARKMODE_DESC" = "Előfordulhat, hogy bizonyos esetekben nem működik megfelelően. Az alkalmazás újraindítása szükséges az opció engedélyezése/letiltása után."; + +"OLED_KEYBOARD" = "OLED Billentyűzet (Kísérleti)"; +"OLED_KEYBOARD_DESC" = "Előfordulhat, hogy bizonyos esetekben nem működik megfelelően. Az alkalmazás újraindítása szükséges az opció engedélyezése/letiltása után."; + +"HIDE_PAID_PROMOTION_CARDS" = "Fizetett promóciós szalaghirdetés elrejtése"; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "A „Fizetett promóciókat tartalmaz” szalaghirdetés elrejtése egyes videóknál."; + +// YTCastConfirm +"CASTING" = "Casting"; +"MSG_ARE_YOU_SURE" = "Biztos, hogy elkezdi az átküldést?"; +"MSG_YES" = "Igen"; +"MSG_CANCEL" = "Visszavon"; From 3d79dfa8fd05621ea42b538f978f85abdf28d82f Mon Sep 17 00:00:00 2001 From: Laszlo Jozsef Koles <115018876+Koles13@users.noreply.github.com> Date: Tue, 4 Oct 2022 16:59:18 +0200 Subject: [PATCH 121/156] Rename hu.Iproj to Localizable.strings --- lang/uYouPlus.bundle/{hu.Iproj => Localizable.strings} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename lang/uYouPlus.bundle/{hu.Iproj => Localizable.strings} (100%) diff --git a/lang/uYouPlus.bundle/hu.Iproj b/lang/uYouPlus.bundle/Localizable.strings similarity index 100% rename from lang/uYouPlus.bundle/hu.Iproj rename to lang/uYouPlus.bundle/Localizable.strings From 125e8948c7fdbe395e66ae80fb104d7fbe71e7c1 Mon Sep 17 00:00:00 2001 From: Laszlo Jozsef Koles Date: Tue, 4 Oct 2022 17:24:24 +0200 Subject: [PATCH 122/156] hu.lproj_repository --- lang/uYouPlus.bundle/{ => hu.lproj}/Localizable.strings | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename lang/uYouPlus.bundle/{ => hu.lproj}/Localizable.strings (100%) diff --git a/lang/uYouPlus.bundle/Localizable.strings b/lang/uYouPlus.bundle/hu.lproj/Localizable.strings similarity index 100% rename from lang/uYouPlus.bundle/Localizable.strings rename to lang/uYouPlus.bundle/hu.lproj/Localizable.strings From a1f03be5b6c0d7fc000ba6da083eb06b5bf74dd2 Mon Sep 17 00:00:00 2001 From: ErSpieltHD <40891294+ErSpieltHD@users.noreply.github.com> Date: Wed, 5 Oct 2022 15:28:06 +0200 Subject: [PATCH 123/156] fixed duplicates/wrong chars --- .../de.lproj/Localizable.strings | 20 ++++++------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/lang/uYouPlus.bundle/de.lproj/Localizable.strings b/lang/uYouPlus.bundle/de.lproj/Localizable.strings index a06ca81..fa581ed 100644 --- a/lang/uYouPlus.bundle/de.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/de.lproj/Localizable.strings @@ -1,20 +1,12 @@ // Settings -"DONT_EAT_MY_CONTENT" = "Kerbe/Insel bei 2:1-Videoinhalten verhindern (DontEatMyContent)"; -"DONT_EAT_MY_CONTENT_DESC" = "Verhindert, dass die Notch/Dynamic Island 2:1-Videoinhalte auf YouTube kaut. Neustart der App erforderlich."; -"REPLACE_PREVIOUS_NEXT_BUTTON" = "Zurück- und Weiter-Schaltfläche ersetzen"; -"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Ersetzen Sie die Schaltflächen „Zurück“ und „Weiter“ durch die Schaltflächen „Schnellvorlauf“ und „Rücklauf“. App-Neustart ist erforderlich.“; - -"FIX_GOOGLE_SIGNIN" = "Google-Anmeldung reparieren (nur für TrollStore-Benutzer)"; -"FIX_GOOGLE_SIGNIN_DESC" = "Aktivieren Sie diese Option nur, wenn Sie sich nicht mit Ihrem Google-Konto anmelden können und die App über den TrollStore installiert wurde. Wenn Sie sich normal anmelden können, lassen Sie sie deaktiviert. Ein Neustart der App ist erforderlich."; - -"KILL_APP" = "YouTube schließen"; -"KILL_APP_DESC" = "Hier tippen, um YouTube zu schließen!"; +"DONT_EAT_MY_CONTENT" = "Kerbe/Insel bei 2:1-Videoinhalten berücksichtigen (DontEatMyContent)"; +"DONT_EAT_MY_CONTENT_DESC" = "Verhindert, dass die Notch/Dynamic Island 2:1-Videoinhalte überdeckt. App-Neustart erforderlich!"; "REPLACE_PREVIOUS_NEXT_BUTTON" = "Vor- und Zurücktasten ersetzen"; -"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Vor- und Zurücktasten mit Vor- und Zurückspultasten ersetzen. App restart is required."; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Tasten zum Vor- und Zurückspringen zwischen Videos durch Vor- und Zurückspultasten ersetzen. App-Neustart erforderlich!"; -"FIX_GOOGLE_SIGNIN" = "Google-Anmeldung beheben (nur für TrollStore Benutzer!)"; +"FIX_GOOGLE_SIGNIN" = "Google-Anmeldung reparieren (nur für TrollStore-Benutzer!)"; "FIX_GOOGLE_SIGNIN_DESC" = "Aktiviere diese Option nur, wenn Sie sich nicht mit Ihrem Google-Account anmelden können und die App über TrollStore installiert wurde. Wenn Sie sich normal anmelden können, halte diese Option deaktiviert! App-Neustart erforderlich!"; "KILL_APP" = "YouTube crashen"; @@ -48,10 +40,10 @@ "AUTO_FULLSCREEN_DESC" = "Automatisch Videos im Vollbild starten."; "HIDE_HUD_MESSAGES" = "HUD-Nachrichten ausblenden"; -"HIDE_HUD_MESSAGES_DESC" = "z.B.: Untertitel sind akti-/deaktiviert, Videoschleife ist an, ..."; +"HIDE_HUD_MESSAGES_DESC" = "z.B.: Untertitel sind aktiviert/deaktiviert, Videoschleife ist an, ..."; "OLED_DARKMODE" = "OLED-Dunkelmodus (Experimental)"; -"OLED_DARKMODE_DESC" = "Könnte in manchen Fällen nicht richtig funktionieren. App-Neustart ist erforderlich, wenn diese Option akti-/deaktiviert wird!"; +"OLED_DARKMODE_DESC" = "Könnte in manchen Fällen nicht richtig funktionieren. App-Neustart ist erforderlich, wenn diese Option aktiviert/deaktiviert wird!"; "OLED_KEYBOARD" = "OLED-Tastatur (Experimental)"; "OLED_KEYBOARD_DESC" = "Könnte in manchen Fällen nicht richtig funktionieren. App-Neustart erforderlich!"; From 8e59b59faa8e46677540a6a49c54ca630b527ff0 Mon Sep 17 00:00:00 2001 From: Thunderz2016 <1031197842@qq.com> Date: Thu, 6 Oct 2022 00:34:19 +0800 Subject: [PATCH 124/156] Add new strings for Simplified Chinese translation Translated DontEatMyContent-related strings and used fullwidth parentheses to be grammatically consistent. --- .../zh_cn.lproj/Localizable.strings | 21 +++++++++++-------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings b/lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings index 9facbc7..46ee97e 100644 --- a/lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings @@ -1,10 +1,13 @@ // Settings -"REPLACE_PREVIOUS_NEXT_BUTTON" = "替换上一个/下一个按钮"; -"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "将播放器控制界面上的上一个/下一个按钮替换成快进/快退按钮。更改本设置后需要重启App。"; +"DONT_EAT_MY_CONTENT" = "2:1视频刘海屏/灵动岛优化 (DontEatMyContent)"; +"DONT_EAT_MY_CONTENT_DESC" = "改进部分机型的刘海区域或灵动岛在2:1比例视频中出现的遮挡问题。更改本设置后需要重启App。"; -"FIX_GOOGLE_SIGNIN" = "修复Google账号登录问题(仅针对TrollStore用户)"; -"FIX_GOOGLE_SIGNIN_DESC" = "仅在使用TrollStore安装本App的情况下生效:启用本选项后可正常登录您的Google账号。更改本设置后需要重启App。"; +"REPLACE_PREVIOUS_NEXT_BUTTON" = "替换上一个/下一个按钮"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "将视频播放器控制界面上的上一个/下一个按钮替换成快进/快退按钮。更改本设置后需要重启App。"; + +"FIX_GOOGLE_SIGNIN" = "修复Google账号登录问题(仅TrollStore用户有效)"; +"FIX_GOOGLE_SIGNIN_DESC" = "仅在使用TrollStore安装本App的情况下生效:启用本设置后即可正常登录您的Google账号。更改本设置后需要重启App。"; "KILL_APP" = "关闭YouTube"; "KILL_APP_DESC" = "点击此处关闭YouTube!"; @@ -15,16 +18,16 @@ "YT_MINIPLAYER" = "为所有YouTube视频启用迷你播放器"; "YT_MINIPLAYER_DESC" = "例如:面向儿童的视频。"; -"CAST_CONFIRM" = "投屏前确认 (YTCastConfirm)"; +"CAST_CONFIRM" = "投屏前确认 (YTCastConfirm)"; "CAST_CONFIRM_DESC" = "在投屏前显示确认对话框以防意外劫屏。"; -"HIDE_HOVER_CARD" = "隐藏片尾画面悬浮卡片 (YTNoHoverCards)"; +"HIDE_HOVER_CARD" = "隐藏片尾画面悬浮卡片 (YTNoHoverCards)"; "HIDE_HOVER_CARD_DESC" = "隐藏视频结尾处的创作者片尾画面元素(缩略图)。"; -"NEW_MINIPLAYER_STYLE" = "新迷你播放器风格 (BigYTMiniPlayer)"; +"NEW_MINIPLAYER_STYLE" = "新迷你播放器风格 (BigYTMiniPlayer)"; "NEW_MINIPLAYER_STYLE_DESC" = "更改本设置后需要重启App。"; -"YT_RE_EXPLORE" = "将Shorts选项卡替换成探索选项卡 (YTReExplore)"; +"YT_RE_EXPLORE" = "将Shorts选项卡替换成探索选项卡 (YTReExplore)"; "YT_RE_EXPLORE_DESC" = "更改本设置后需要重启App。"; "HIDE_SUBTITLES_BUTTON" = "隐藏字幕按钮"; @@ -33,7 +36,7 @@ "HIDE_AUTOPLAY_SWITCH" = "隐藏自动播放模式开关"; "HIDE_AUTOPLAY_SWITCH_DESC" = "隐藏视频播放器控制界面上的自动播放开关。"; -"AUTO_FULLSCREEN" = "自动全屏 (YTAutoFullScreen)"; +"AUTO_FULLSCREEN" = "自动全屏 (YTAutoFullScreen)"; "AUTO_FULLSCREEN_DESC" = "自动全屏播放视频。"; "HIDE_HUD_MESSAGES" = "隐藏系统提醒"; From 333b821eca2e0ffc5e69092422eb45aad980173e Mon Sep 17 00:00:00 2001 From: Thunderz2016 <1031197842@qq.com> Date: Thu, 6 Oct 2022 01:12:52 +0800 Subject: [PATCH 125/156] Add new strings to Simplified Chinese translation Fixed minor wording issue. --- lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings b/lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings index 46ee97e..6ea769f 100644 --- a/lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/zh_cn.lproj/Localizable.strings @@ -1,7 +1,7 @@ // Settings "DONT_EAT_MY_CONTENT" = "2:1视频刘海屏/灵动岛优化 (DontEatMyContent)"; -"DONT_EAT_MY_CONTENT_DESC" = "改进部分机型的刘海区域或灵动岛在2:1比例视频中出现的遮挡问题。更改本设置后需要重启App。"; +"DONT_EAT_MY_CONTENT_DESC" = "改进部分机型的刘海区域或灵动岛在2:1比例视频中引发的遮挡问题。更改本设置后需要重启App。"; "REPLACE_PREVIOUS_NEXT_BUTTON" = "替换上一个/下一个按钮"; "REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "将视频播放器控制界面上的上一个/下一个按钮替换成快进/快退按钮。更改本设置后需要重启App。"; From 5692f872088cf3e8640826eb8c050359b8f808b8 Mon Sep 17 00:00:00 2001 From: koevoet1221 <76625701+koevoet1221@users.noreply.github.com> Date: Wed, 5 Oct 2022 21:12:35 +0200 Subject: [PATCH 126/156] Create nl.lproy --- lang/uYouPlus.bundle/nl.lproy | 1 + 1 file changed, 1 insertion(+) create mode 100644 lang/uYouPlus.bundle/nl.lproy diff --git a/lang/uYouPlus.bundle/nl.lproy b/lang/uYouPlus.bundle/nl.lproy new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/lang/uYouPlus.bundle/nl.lproy @@ -0,0 +1 @@ + From 252cb10e308edf7dc91c7de76484836fbcf0859a Mon Sep 17 00:00:00 2001 From: koevoet1221 <76625701+koevoet1221@users.noreply.github.com> Date: Wed, 5 Oct 2022 21:12:51 +0200 Subject: [PATCH 127/156] Delete nl.lproy --- lang/uYouPlus.bundle/nl.lproy | 1 - 1 file changed, 1 deletion(-) delete mode 100644 lang/uYouPlus.bundle/nl.lproy diff --git a/lang/uYouPlus.bundle/nl.lproy b/lang/uYouPlus.bundle/nl.lproy deleted file mode 100644 index 8b13789..0000000 --- a/lang/uYouPlus.bundle/nl.lproy +++ /dev/null @@ -1 +0,0 @@ - From 08437ff883dacdb786df6474b9a02eaa25c99216 Mon Sep 17 00:00:00 2001 From: koevoet1221 <76625701+koevoet1221@users.noreply.github.com> Date: Wed, 5 Oct 2022 21:34:07 +0200 Subject: [PATCH 128/156] dutch translations --- lang/uYouPlus.bundle/nl.lproj | 71 +++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 lang/uYouPlus.bundle/nl.lproj diff --git a/lang/uYouPlus.bundle/nl.lproj b/lang/uYouPlus.bundle/nl.lproj new file mode 100644 index 0000000..42c4384 --- /dev/null +++ b/lang/uYouPlus.bundle/nl.lproj @@ -0,0 +1,71 @@ +/* Read me: +- How to translate uYouPlus (if your language already exists then feel free to check it and/or improve it): +1. Fork uYouPlus repo +2. Duplicate the template.lproj folder, and edit the duplicated folder's name to your .lproj id. +For example: for Russia. For more details, visit: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes +3. Translate each line below after each = +4. Open a Pull Request + +- You can also add your localization to YouPiP, YTUHD and Return YouTube Dislike. The process is the same: +https://github.com/PoomSmart/YouPiP/tree/main/layout/Library/Application%20Support/YouPiP.bundle +https://github.com/PoomSmart/YTUHD/tree/master/layout/Library/Application%20Support/YTUHD.bundle +https://github.com/PoomSmart/Return-YouTube-Dislikes/tree/main/layout/Library/Application%20Support/RYD.bundle +*/ + +// Settings +"DONT_EAT_MY_CONTENT" = "Voorkom Notch/Eiland Bij 2:1 Video's (DontEatMyContent)";# +"DONT_EAT_MY_CONTENT_DESC" = "Voorkomt dat de video zich achter de Notch/het Dynamische Eiland bevind bij 2:1 video's. Je moet de app opnieuw opstarten om dit te activeren."; + +"REPLACE_PREVIOUS_NEXT_BUTTON" = "Vervang Volgende en Vorige knoppen"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Vervang de Vorige en Volgende knoppen met spoelknoppen."; + +"FIX_GOOGLE_SIGNIN" = "Fix Inloggen met Google (Alleen voor TrollStore gebruikers)"; +"FIX_GOOGLE_SIGNIN_DESC" = "Zet dit aan wanneer je niet kan inloggen met je Google account en je de app hebt geïnstalleerd met Trollstore. Als je in kan loggen laat dit dan met rust. Om dit te activeren moet je de app opnieuw opstarten."; + +"KILL_APP" = "Sluit YouTube"; +"KILL_APP_DESC" = "Klik om YouTube te sluiten!"; + +"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Verberg vorige en volgende knoppen"; +"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "Verberg de vorige en volgende knop in de video speler."; + +"YT_MINIPLAYER" = "Schakel de Mini Player in voor alle video's"; +"YT_MINIPLAYER_DESC" = "Video's voor kinderen bijvoorbeeld."; + +"CAST_CONFIRM" = "Bevestig casten (YTCastConfirm)"; +"CAST_CONFIRM_DESC" = "Toon een melding na het drukken op de cast knop om te voorkomen dat je per ongeluk cast."; + +"HIDE_HOVER_CARD" = "Verberg eind scherm hover cards (YTNoHoverCards)"; +"HIDE_HOVER_CARD_DESC" = "Verberg eind schermen (thumbnails) aan het einde van video's."; + +"NEW_MINIPLAYER_STYLE" = "Nieuwe Mini Speler stijl (BigYTMiniPlayer)"; +"NEW_MINIPLAYER_STYLE_DESC" = "Je moet de app opnieuw opstarten om dit te activeren."; + +"YT_RE_EXPLORE" = "Vervang Shorts met Explore (YTReExplore)"; +"YT_RE_EXPLORE_DESC" = "Je moet de app opnieuw opstarten om dit te activeren."; + +"HIDE_SUBTITLES_BUTTON" = "Verberg ondertitels knop"; +"HIDE_SUBTITLES_BUTTON_DESC" = "Verberg de ondertitels knop in de video speler."; + +"HIDE_AUTOPLAY_SWITCH" = "Verberg Autoplay schakelaar"; +"HIDE_AUTOPLAY_SWITCH_DESC" = "Verberg de Autoplay schakelaar in de video speler."; + +"AUTO_FULLSCREEN" = "Auto Volledig Scherm (YTAutoFullScreen)"; +"AUTO_FULLSCREEN_DESC" = "Automatisch volledig scherm wanneer je een video aan klikt."; + +"HIDE_HUD_MESSAGES" = "Verberg HUD Berichten"; +"HIDE_HUD_MESSAGES_DESC" = "Bijvoorbeeld: CC is ingeschakeld/uitgeschakeld, Video lus is ingeschakeld,..."; + +"OLED_DARKMODE" = "OLED Donkere Stand (Experimenteel)"; +"OLED_DARKMODE_DESC" = "Werkt mogelijk niet correct in sommige gevallen. Je moet de app opnieuw opstarten om dit te activeren."; + +"OLED_KEYBOARD" = "OLED Toetsenbord (Experimenteel)"; +"OLED_KEYBOARD_DESC" = "Werkt mogelijk niet correct in sommige gevallen. Je moet de app opnieuw opstarten om dit te activeren."; + +"HIDE_PAID_PROMOTION_CARDS" = "Verberg Betaalde Promoties"; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "Verberg de 'Bevat Betaalde Promotie' in sommige video's."; + +// YTCastConfirm +"CASTING" = "Castings"; +"MSG_ARE_YOU_SURE" = "Weet je zeker dat je wilt casten?"; +"MSG_YES" = "Ja!"; +"MSG_CANCEL" = "Niet casten!";p \ No newline at end of file From d0abd34fe5061346fcf9fb13e3d54c069deb89c0 Mon Sep 17 00:00:00 2001 From: koevoet1221 <76625701+koevoet1221@users.noreply.github.com> Date: Wed, 5 Oct 2022 21:36:39 +0200 Subject: [PATCH 129/156] Delete nl.lproj --- lang/uYouPlus.bundle/nl.lproj | 71 ----------------------------------- 1 file changed, 71 deletions(-) delete mode 100644 lang/uYouPlus.bundle/nl.lproj diff --git a/lang/uYouPlus.bundle/nl.lproj b/lang/uYouPlus.bundle/nl.lproj deleted file mode 100644 index 42c4384..0000000 --- a/lang/uYouPlus.bundle/nl.lproj +++ /dev/null @@ -1,71 +0,0 @@ -/* Read me: -- How to translate uYouPlus (if your language already exists then feel free to check it and/or improve it): -1. Fork uYouPlus repo -2. Duplicate the template.lproj folder, and edit the duplicated folder's name to your .lproj id. -For example: for Russia. For more details, visit: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes -3. Translate each line below after each = -4. Open a Pull Request - -- You can also add your localization to YouPiP, YTUHD and Return YouTube Dislike. The process is the same: -https://github.com/PoomSmart/YouPiP/tree/main/layout/Library/Application%20Support/YouPiP.bundle -https://github.com/PoomSmart/YTUHD/tree/master/layout/Library/Application%20Support/YTUHD.bundle -https://github.com/PoomSmart/Return-YouTube-Dislikes/tree/main/layout/Library/Application%20Support/RYD.bundle -*/ - -// Settings -"DONT_EAT_MY_CONTENT" = "Voorkom Notch/Eiland Bij 2:1 Video's (DontEatMyContent)";# -"DONT_EAT_MY_CONTENT_DESC" = "Voorkomt dat de video zich achter de Notch/het Dynamische Eiland bevind bij 2:1 video's. Je moet de app opnieuw opstarten om dit te activeren."; - -"REPLACE_PREVIOUS_NEXT_BUTTON" = "Vervang Volgende en Vorige knoppen"; -"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Vervang de Vorige en Volgende knoppen met spoelknoppen."; - -"FIX_GOOGLE_SIGNIN" = "Fix Inloggen met Google (Alleen voor TrollStore gebruikers)"; -"FIX_GOOGLE_SIGNIN_DESC" = "Zet dit aan wanneer je niet kan inloggen met je Google account en je de app hebt geïnstalleerd met Trollstore. Als je in kan loggen laat dit dan met rust. Om dit te activeren moet je de app opnieuw opstarten."; - -"KILL_APP" = "Sluit YouTube"; -"KILL_APP_DESC" = "Klik om YouTube te sluiten!"; - -"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Verberg vorige en volgende knoppen"; -"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "Verberg de vorige en volgende knop in de video speler."; - -"YT_MINIPLAYER" = "Schakel de Mini Player in voor alle video's"; -"YT_MINIPLAYER_DESC" = "Video's voor kinderen bijvoorbeeld."; - -"CAST_CONFIRM" = "Bevestig casten (YTCastConfirm)"; -"CAST_CONFIRM_DESC" = "Toon een melding na het drukken op de cast knop om te voorkomen dat je per ongeluk cast."; - -"HIDE_HOVER_CARD" = "Verberg eind scherm hover cards (YTNoHoverCards)"; -"HIDE_HOVER_CARD_DESC" = "Verberg eind schermen (thumbnails) aan het einde van video's."; - -"NEW_MINIPLAYER_STYLE" = "Nieuwe Mini Speler stijl (BigYTMiniPlayer)"; -"NEW_MINIPLAYER_STYLE_DESC" = "Je moet de app opnieuw opstarten om dit te activeren."; - -"YT_RE_EXPLORE" = "Vervang Shorts met Explore (YTReExplore)"; -"YT_RE_EXPLORE_DESC" = "Je moet de app opnieuw opstarten om dit te activeren."; - -"HIDE_SUBTITLES_BUTTON" = "Verberg ondertitels knop"; -"HIDE_SUBTITLES_BUTTON_DESC" = "Verberg de ondertitels knop in de video speler."; - -"HIDE_AUTOPLAY_SWITCH" = "Verberg Autoplay schakelaar"; -"HIDE_AUTOPLAY_SWITCH_DESC" = "Verberg de Autoplay schakelaar in de video speler."; - -"AUTO_FULLSCREEN" = "Auto Volledig Scherm (YTAutoFullScreen)"; -"AUTO_FULLSCREEN_DESC" = "Automatisch volledig scherm wanneer je een video aan klikt."; - -"HIDE_HUD_MESSAGES" = "Verberg HUD Berichten"; -"HIDE_HUD_MESSAGES_DESC" = "Bijvoorbeeld: CC is ingeschakeld/uitgeschakeld, Video lus is ingeschakeld,..."; - -"OLED_DARKMODE" = "OLED Donkere Stand (Experimenteel)"; -"OLED_DARKMODE_DESC" = "Werkt mogelijk niet correct in sommige gevallen. Je moet de app opnieuw opstarten om dit te activeren."; - -"OLED_KEYBOARD" = "OLED Toetsenbord (Experimenteel)"; -"OLED_KEYBOARD_DESC" = "Werkt mogelijk niet correct in sommige gevallen. Je moet de app opnieuw opstarten om dit te activeren."; - -"HIDE_PAID_PROMOTION_CARDS" = "Verberg Betaalde Promoties"; -"HIDE_PAID_PROMOTION_CARDS_DESC" = "Verberg de 'Bevat Betaalde Promotie' in sommige video's."; - -// YTCastConfirm -"CASTING" = "Castings"; -"MSG_ARE_YOU_SURE" = "Weet je zeker dat je wilt casten?"; -"MSG_YES" = "Ja!"; -"MSG_CANCEL" = "Niet casten!";p \ No newline at end of file From 6f26599f2ad100985b5f1fb8ee8baa1bf73d099c Mon Sep 17 00:00:00 2001 From: koevoet1221 <76625701+koevoet1221@users.noreply.github.com> Date: Wed, 5 Oct 2022 21:36:48 +0200 Subject: [PATCH 130/156] Create temp MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Don’t know how else i can make this folder lol --- lang/uYouPlus.bundle/nl.lproj/temp | 1 + 1 file changed, 1 insertion(+) create mode 100644 lang/uYouPlus.bundle/nl.lproj/temp diff --git a/lang/uYouPlus.bundle/nl.lproj/temp b/lang/uYouPlus.bundle/nl.lproj/temp new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/lang/uYouPlus.bundle/nl.lproj/temp @@ -0,0 +1 @@ + From 4e71210618e6aa07f72d921ed559569a50d38a6d Mon Sep 17 00:00:00 2001 From: koevoet1221 <76625701+koevoet1221@users.noreply.github.com> Date: Wed, 5 Oct 2022 21:38:54 +0200 Subject: [PATCH 131/156] Add files via upload Dutch translations --- .../nl.lproj/Localizable.strings | 71 +++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 lang/uYouPlus.bundle/nl.lproj/Localizable.strings diff --git a/lang/uYouPlus.bundle/nl.lproj/Localizable.strings b/lang/uYouPlus.bundle/nl.lproj/Localizable.strings new file mode 100644 index 0000000..42c4384 --- /dev/null +++ b/lang/uYouPlus.bundle/nl.lproj/Localizable.strings @@ -0,0 +1,71 @@ +/* Read me: +- How to translate uYouPlus (if your language already exists then feel free to check it and/or improve it): +1. Fork uYouPlus repo +2. Duplicate the template.lproj folder, and edit the duplicated folder's name to your .lproj id. +For example: for Russia. For more details, visit: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes +3. Translate each line below after each = +4. Open a Pull Request + +- You can also add your localization to YouPiP, YTUHD and Return YouTube Dislike. The process is the same: +https://github.com/PoomSmart/YouPiP/tree/main/layout/Library/Application%20Support/YouPiP.bundle +https://github.com/PoomSmart/YTUHD/tree/master/layout/Library/Application%20Support/YTUHD.bundle +https://github.com/PoomSmart/Return-YouTube-Dislikes/tree/main/layout/Library/Application%20Support/RYD.bundle +*/ + +// Settings +"DONT_EAT_MY_CONTENT" = "Voorkom Notch/Eiland Bij 2:1 Video's (DontEatMyContent)";# +"DONT_EAT_MY_CONTENT_DESC" = "Voorkomt dat de video zich achter de Notch/het Dynamische Eiland bevind bij 2:1 video's. Je moet de app opnieuw opstarten om dit te activeren."; + +"REPLACE_PREVIOUS_NEXT_BUTTON" = "Vervang Volgende en Vorige knoppen"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Vervang de Vorige en Volgende knoppen met spoelknoppen."; + +"FIX_GOOGLE_SIGNIN" = "Fix Inloggen met Google (Alleen voor TrollStore gebruikers)"; +"FIX_GOOGLE_SIGNIN_DESC" = "Zet dit aan wanneer je niet kan inloggen met je Google account en je de app hebt geïnstalleerd met Trollstore. Als je in kan loggen laat dit dan met rust. Om dit te activeren moet je de app opnieuw opstarten."; + +"KILL_APP" = "Sluit YouTube"; +"KILL_APP_DESC" = "Klik om YouTube te sluiten!"; + +"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Verberg vorige en volgende knoppen"; +"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "Verberg de vorige en volgende knop in de video speler."; + +"YT_MINIPLAYER" = "Schakel de Mini Player in voor alle video's"; +"YT_MINIPLAYER_DESC" = "Video's voor kinderen bijvoorbeeld."; + +"CAST_CONFIRM" = "Bevestig casten (YTCastConfirm)"; +"CAST_CONFIRM_DESC" = "Toon een melding na het drukken op de cast knop om te voorkomen dat je per ongeluk cast."; + +"HIDE_HOVER_CARD" = "Verberg eind scherm hover cards (YTNoHoverCards)"; +"HIDE_HOVER_CARD_DESC" = "Verberg eind schermen (thumbnails) aan het einde van video's."; + +"NEW_MINIPLAYER_STYLE" = "Nieuwe Mini Speler stijl (BigYTMiniPlayer)"; +"NEW_MINIPLAYER_STYLE_DESC" = "Je moet de app opnieuw opstarten om dit te activeren."; + +"YT_RE_EXPLORE" = "Vervang Shorts met Explore (YTReExplore)"; +"YT_RE_EXPLORE_DESC" = "Je moet de app opnieuw opstarten om dit te activeren."; + +"HIDE_SUBTITLES_BUTTON" = "Verberg ondertitels knop"; +"HIDE_SUBTITLES_BUTTON_DESC" = "Verberg de ondertitels knop in de video speler."; + +"HIDE_AUTOPLAY_SWITCH" = "Verberg Autoplay schakelaar"; +"HIDE_AUTOPLAY_SWITCH_DESC" = "Verberg de Autoplay schakelaar in de video speler."; + +"AUTO_FULLSCREEN" = "Auto Volledig Scherm (YTAutoFullScreen)"; +"AUTO_FULLSCREEN_DESC" = "Automatisch volledig scherm wanneer je een video aan klikt."; + +"HIDE_HUD_MESSAGES" = "Verberg HUD Berichten"; +"HIDE_HUD_MESSAGES_DESC" = "Bijvoorbeeld: CC is ingeschakeld/uitgeschakeld, Video lus is ingeschakeld,..."; + +"OLED_DARKMODE" = "OLED Donkere Stand (Experimenteel)"; +"OLED_DARKMODE_DESC" = "Werkt mogelijk niet correct in sommige gevallen. Je moet de app opnieuw opstarten om dit te activeren."; + +"OLED_KEYBOARD" = "OLED Toetsenbord (Experimenteel)"; +"OLED_KEYBOARD_DESC" = "Werkt mogelijk niet correct in sommige gevallen. Je moet de app opnieuw opstarten om dit te activeren."; + +"HIDE_PAID_PROMOTION_CARDS" = "Verberg Betaalde Promoties"; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "Verberg de 'Bevat Betaalde Promotie' in sommige video's."; + +// YTCastConfirm +"CASTING" = "Castings"; +"MSG_ARE_YOU_SURE" = "Weet je zeker dat je wilt casten?"; +"MSG_YES" = "Ja!"; +"MSG_CANCEL" = "Niet casten!";p \ No newline at end of file From 383a6448641dc835002aca74288c79f84263aefe Mon Sep 17 00:00:00 2001 From: koevoet1221 <76625701+koevoet1221@users.noreply.github.com> Date: Wed, 5 Oct 2022 21:40:06 +0200 Subject: [PATCH 132/156] Update Localizable.strings --- lang/uYouPlus.bundle/nl.lproj/Localizable.strings | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lang/uYouPlus.bundle/nl.lproj/Localizable.strings b/lang/uYouPlus.bundle/nl.lproj/Localizable.strings index 42c4384..36d2366 100644 --- a/lang/uYouPlus.bundle/nl.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/nl.lproj/Localizable.strings @@ -28,7 +28,7 @@ https://github.com/PoomSmart/Return-YouTube-Dislikes/tree/main/layout/Library/Ap "HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Verberg vorige en volgende knoppen"; "HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "Verberg de vorige en volgende knop in de video speler."; -"YT_MINIPLAYER" = "Schakel de Mini Player in voor alle video's"; +"YT_MINIPLAYER" = "Schakel de Mini Speler in voor alle video's"; "YT_MINIPLAYER_DESC" = "Video's voor kinderen bijvoorbeeld."; "CAST_CONFIRM" = "Bevestig casten (YTCastConfirm)"; @@ -40,7 +40,7 @@ https://github.com/PoomSmart/Return-YouTube-Dislikes/tree/main/layout/Library/Ap "NEW_MINIPLAYER_STYLE" = "Nieuwe Mini Speler stijl (BigYTMiniPlayer)"; "NEW_MINIPLAYER_STYLE_DESC" = "Je moet de app opnieuw opstarten om dit te activeren."; -"YT_RE_EXPLORE" = "Vervang Shorts met Explore (YTReExplore)"; +"YT_RE_EXPLORE" = "Vervang Shorts met Ontdekken (YTReExplore)"; "YT_RE_EXPLORE_DESC" = "Je moet de app opnieuw opstarten om dit te activeren."; "HIDE_SUBTITLES_BUTTON" = "Verberg ondertitels knop"; @@ -68,4 +68,4 @@ https://github.com/PoomSmart/Return-YouTube-Dislikes/tree/main/layout/Library/Ap "CASTING" = "Castings"; "MSG_ARE_YOU_SURE" = "Weet je zeker dat je wilt casten?"; "MSG_YES" = "Ja!"; -"MSG_CANCEL" = "Niet casten!";p \ No newline at end of file +"MSG_CANCEL" = "Niet casten!";p From 6e8a99e7335fa346c972a5d31a9ea039f0416a63 Mon Sep 17 00:00:00 2001 From: koevoet1221 <76625701+koevoet1221@users.noreply.github.com> Date: Wed, 5 Oct 2022 21:45:08 +0200 Subject: [PATCH 133/156] Delete temp --- lang/uYouPlus.bundle/nl.lproj/temp | 1 - 1 file changed, 1 deletion(-) delete mode 100644 lang/uYouPlus.bundle/nl.lproj/temp diff --git a/lang/uYouPlus.bundle/nl.lproj/temp b/lang/uYouPlus.bundle/nl.lproj/temp deleted file mode 100644 index 8b13789..0000000 --- a/lang/uYouPlus.bundle/nl.lproj/temp +++ /dev/null @@ -1 +0,0 @@ - From a0e453da45e7c6d5c921ec5527388a1f0a9fec58 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20=C4=90=E1=BA=A1t?= <52943116+qnblackcat@users.noreply.github.com> Date: Thu, 6 Oct 2022 12:58:08 +0700 Subject: [PATCH 134/156] clean up --- .../uYouPlus.bundle/nl.lproj/Localizable.strings | 16 +--------------- 1 file changed, 1 insertion(+), 15 deletions(-) diff --git a/lang/uYouPlus.bundle/nl.lproj/Localizable.strings b/lang/uYouPlus.bundle/nl.lproj/Localizable.strings index 36d2366..2d565bd 100644 --- a/lang/uYouPlus.bundle/nl.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/nl.lproj/Localizable.strings @@ -1,17 +1,3 @@ -/* Read me: -- How to translate uYouPlus (if your language already exists then feel free to check it and/or improve it): -1. Fork uYouPlus repo -2. Duplicate the template.lproj folder, and edit the duplicated folder's name to your .lproj id. -For example: for Russia. For more details, visit: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes -3. Translate each line below after each = -4. Open a Pull Request - -- You can also add your localization to YouPiP, YTUHD and Return YouTube Dislike. The process is the same: -https://github.com/PoomSmart/YouPiP/tree/main/layout/Library/Application%20Support/YouPiP.bundle -https://github.com/PoomSmart/YTUHD/tree/master/layout/Library/Application%20Support/YTUHD.bundle -https://github.com/PoomSmart/Return-YouTube-Dislikes/tree/main/layout/Library/Application%20Support/RYD.bundle -*/ - // Settings "DONT_EAT_MY_CONTENT" = "Voorkom Notch/Eiland Bij 2:1 Video's (DontEatMyContent)";# "DONT_EAT_MY_CONTENT_DESC" = "Voorkomt dat de video zich achter de Notch/het Dynamische Eiland bevind bij 2:1 video's. Je moet de app opnieuw opstarten om dit te activeren."; @@ -68,4 +54,4 @@ https://github.com/PoomSmart/Return-YouTube-Dislikes/tree/main/layout/Library/Ap "CASTING" = "Castings"; "MSG_ARE_YOU_SURE" = "Weet je zeker dat je wilt casten?"; "MSG_YES" = "Ja!"; -"MSG_CANCEL" = "Niet casten!";p +"MSG_CANCEL" = "Niet casten!"; From c39f2b5a699b8869e1896ef9658b7124f1c1e39e Mon Sep 17 00:00:00 2001 From: Foxster <77606385+therealFoxster@users.noreply.github.com> Date: Thu, 6 Oct 2022 14:29:19 -0700 Subject: [PATCH 135/156] Update DontEatMyContent (1.0.0 -> 1.0.2) Add -(void)resetForVideoWithAspectRatio:(double) as fallback in case -(void)singleVideo:(id)aspectRatioDidChange:(CGFloat) never gets called --- uYouPlus.xm | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/uYouPlus.xm b/uYouPlus.xm index 203b9af..6618d45 100644 --- a/uYouPlus.xm +++ b/uYouPlus.xm @@ -927,6 +927,7 @@ NSLayoutConstraint *widthConstraint, *heightConstraint, *centerXConstraint, *cen - (void)didSwipeToExitFullscreen { %orig; deactivate(); } +// Get video aspect ratio; doesn't work for some users; see -(void)resetForVideoWithAspectRatio:(double) - (void)singleVideo:(id)arg1 aspectRatioDidChange:(CGFloat)arg2 { aspectRatio = arg2; if (aspectRatio == 0.0) { @@ -958,6 +959,21 @@ NSLayoutConstraint *widthConstraint, *heightConstraint, *centerXConstraint, *cen %orig(NO); } %end + +%hook YTVideoZoomOverlayController +// Get video aspect ratio; fallback for -(void)singleVideo:(id)aspectRatioDidChange:(CGFloat) +- (void)resetForVideoWithAspectRatio:(double)arg1 { + aspectRatio = arg1; + %log; + if (aspectRatio == 0.0) {} + else if (aspectRatio < THRESHOLD) { + deactivate(); + } else { + activate(); + } + %orig(arg1); +} +%end %end // gDontEatMyContent // DontEatMycontent - detecting device model From 7bafd0f5e153848b167e1a86bda448a367e07ac8 Mon Sep 17 00:00:00 2001 From: PoomSmart Date: Fri, 7 Oct 2022 09:08:30 +0700 Subject: [PATCH 136/156] Updated YouPiP, YTUHD, Return YouTube Dislikes submodules --- Tweaks/Return-YouTube-Dislikes | 2 +- Tweaks/YTUHD | 2 +- Tweaks/YouPiP | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Tweaks/Return-YouTube-Dislikes b/Tweaks/Return-YouTube-Dislikes index 80074de..3098524 160000 --- a/Tweaks/Return-YouTube-Dislikes +++ b/Tweaks/Return-YouTube-Dislikes @@ -1 +1 @@ -Subproject commit 80074def6c0412b56fc4237f664528f0a9f1a894 +Subproject commit 3098524af38355c745255bad16d1231bf6ffe323 diff --git a/Tweaks/YTUHD b/Tweaks/YTUHD index 5f55607..c0c1e47 160000 --- a/Tweaks/YTUHD +++ b/Tweaks/YTUHD @@ -1 +1 @@ -Subproject commit 5f556078cff79c7c50bdf7849a5711e2e9d2e11b +Subproject commit c0c1e472dcc9919368de254b727974934b23ee89 diff --git a/Tweaks/YouPiP b/Tweaks/YouPiP index b73ce46..661af46 160000 --- a/Tweaks/YouPiP +++ b/Tweaks/YouPiP @@ -1 +1 @@ -Subproject commit b73ce464dc99dacdfd6cafc070904fb57643b855 +Subproject commit 661af465d7f2674a6938852286ffdbd447c84d5c From ab09ac27f143c1cb1417a5aa51d34d07a97c271b Mon Sep 17 00:00:00 2001 From: qnblackcat Date: Fri, 7 Oct 2022 13:20:03 +0700 Subject: [PATCH 137/156] v17.39.5-2.1 --- README.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index f8ee35c..c439226 100644 --- a/README.md +++ b/README.md @@ -84,28 +84,28 @@ - My official AltStore repo: https://qnblackcat.github.io/AltStore/ - - [Open in AltStore (v17.39.4-2.1)](https://tinyurl.com/t9hnhmhu) - It will take a while to install because AltStore needs to download the IPA. + - [Open in AltStore (v17.39.5-2.1)](https://tinyurl.com/39rph5zt) - It will take a while to install because AltStore needs to download the IPA. -- Version info: _(last update: Oct 04)_ +- Version info: _(last update: Oct 07)_
Expand | **Tweaks/App** | **Developer** | **Version** | **Open source** | | - | - | :-: | :-: | -| **YouTube** | Google Inc | 17.39.4 | ✖︎ | +| **YouTube** | Google Inc | 17.39.5 | ✖︎ | | [uYou](https://github.com/MiRO92/uYou-for-YouTube) | [MiRO92](https://twitter.com/miro92) | 2.1 | ✖︎ | | [Open in YouTube](https://github.com/CokePokes/YoutubeExtensions) | [CokePokes](https://github.com/CokePokes) | 1.2 | ✖︎ | | **iSponsorBlock** | [Galactic-Dev](https://github.com/Galactic-Dev) | 1.0-15 | [✔︎](https://github.com/Galactic-Dev/iSponsorBlock) | | **BigYTMiniPlayer** | [Galactic-Dev](https://github.com/Galactic-Dev) | 1.0-1 | [✔︎](https://github.com/Galactic-Dev/BigYTMiniPlayer) | | **YTNoHoverCards** | [level3tjg](https://twitter.com/level3tjg) | 0.0.3 | [✔︎](https://github.com/level3tjg/YTNoHoverCards) | | **YTMiniplayerEnabler** | [level3tjg](https://twitter.com/level3tjg) | 0.0.2 | [✔︎](https://github.com/level3tjg/YTMiniplayerEnabler) | -| **DontEatMyContent** | [therealFoxster](https://github.com/therealFoxster) | 1.0.0 | [✔︎](https://github.com/therealFoxster/DontEatMyContent) | +| **DontEatMyContent** | [therealFoxster](https://github.com/therealFoxster) | 1.0.2 | [✔︎](https://github.com/therealFoxster/DontEatMyContent) | | **YTSpeed** | [Lyvendia](https://github.com/Lyvendia) | 1.0.1 | [✔︎](https://github.com/Lyvendia/YTSpeed) | | **YTCastConfirm** | [JamieBerghmans](https://github.com/JamieBerghmans) | 1.0.0 | [✔︎](https://github.com/JamieBerghmans/YTCastConfirm) | | **Alderis Color Picker** | [HASHBANG Productions](https://github.com/hbang) | 1.2| [✔︎](https://github.com/hbang/Alderis) | -| **YTUHD** | [PoomSmart](https://twitter.com/poomsmart) | 1.3.0 | [✔︎](https://github.com/PoomSmart/YTUHD) | -| **YouPiP** | [PoomSmart](https://twitter.com/poomsmart) | 1.7.10 | [✔︎](https://github.com/PoomSmart/YouPiP) | +| **YTUHD** | [PoomSmart](https://twitter.com/poomsmart) | 1.3.1 | [✔︎](https://github.com/PoomSmart/YTUHD) | +| **YouPiP** | [PoomSmart](https://twitter.com/poomsmart) | 1.7.11 | [✔︎](https://github.com/PoomSmart/YouPiP) | | **IAmYouTube** | [PoomSmart](https://twitter.com/poomsmart) | 1.2.0 | [✔︎](https://github.com/PoomSmart/IAmYouTube) | | **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) | @@ -113,7 +113,7 @@ | **YTAutoFullScreen** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.3 | [✔︎](https://github.com/PoomSmart/YTAutoFullScreen) | | **YouRememberCaption** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.0 | [✔︎](https://poomsmart.github.io/repo/depictions/youremembercaption.html) | | **YTClassicVideoQuality** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.1 | [✔︎](https://github.com/PoomSmart/YTClassicVideoQuality) | -| **Return YouTube Dislike** | [PoomSmart](https://twitter.com/poomsmart) | 1.7.0 | [✔︎](https://github.com/PoomSmart/Return-YouTube-Dislikes) | +| **Return YouTube Dislike** | [PoomSmart](https://twitter.com/poomsmart) | 1.7.1 | [✔︎](https://github.com/PoomSmart/Return-YouTube-Dislikes) | | **YTNoCheckLocalNetwork** | [PoomSmart](https://twitter.com/poomsmart) | 1.0.2 | [✔︎](https://poomsmart.github.io/repo/depictions/ytnochecklocalnetwork.html) |
From 7b4af1d93891d57909eb4e3056f19adfcf78fc1a Mon Sep 17 00:00:00 2001 From: PoomSmart Date: Fri, 7 Oct 2022 20:37:15 +0700 Subject: [PATCH 138/156] Fixed localization in YouPiP --- Tweaks/YouPiP | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Tweaks/YouPiP b/Tweaks/YouPiP index 661af46..0201657 160000 --- a/Tweaks/YouPiP +++ b/Tweaks/YouPiP @@ -1 +1 @@ -Subproject commit 661af465d7f2674a6938852286ffdbd447c84d5c +Subproject commit 020165703f6cbd570b44b09fda2b65e70fbfd139 From 0b9ac11842be1ecfac4d852660cf7833a8cf3da6 Mon Sep 17 00:00:00 2001 From: chimaha <107383950+chimaha@users.noreply.github.com> Date: Sat, 8 Oct 2022 16:59:49 +0900 Subject: [PATCH 139/156] Update Japanese translation --- .../ja.lproj/Localizable.strings | 20 ++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/lang/uYouPlus.bundle/ja.lproj/Localizable.strings b/lang/uYouPlus.bundle/ja.lproj/Localizable.strings index 49e6d61..2a7d024 100644 --- a/lang/uYouPlus.bundle/ja.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/ja.lproj/Localizable.strings @@ -1,19 +1,21 @@ // Settings +"DONT_EAT_MY_CONTENT" = "2:1比率の動画とノッチ/Dynamic Islandの最適化 (DontEatMyContent)"; +"DONT_EAT_MY_CONTENT_DESC" = "2:1比率の動画とノッチ/Dynamic Islandが干渉することを防ぎます。アプリの再起動が必要です。"; -"REPLACE_PREVIOUS_NEXT_BUTTON" = "前後の動画のボタンを置き換える"; -"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "前後の動画を再生するボタンを早送り、巻き戻しボタンに置き換えます。アプリの再起動が必要です。"; +"REPLACE_PREVIOUS_NEXT_BUTTON" = "次へと前へのボタンを置き換える"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "次へと前へのボタンをそれぞれ早送りと巻き戻しボタンに置き換えます。アプリの再起動が必要です。"; -"FIX_GOOGLE_SIGNIN" = "Googleのサインイン (TrollStoreユーザーのみ)"; +"FIX_GOOGLE_SIGNIN" = "Googleのサインインを修正 (TrollStoreユーザーのみ)"; "FIX_GOOGLE_SIGNIN_DESC" = "アプリがTrollStoreでインストールされた場合のみ機能します。このオプションを有効にしてGoogleアカウントでサインインできるようにします。アプリの再起動が必要です。"; "KILL_APP" = "YouTubeを閉じる"; "KILL_APP_DESC" = "ここをタップしてYouTubeを終了できます!"; -"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "前後の動画のボタンを非表示"; -"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "動画コントロールのオーバーレイで前後の動画のボタンを非表示にします。"; +"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "次へと前へのボタンを非表示"; +"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "動画コントロールのオーバーレイで次へと前へのボタンを非表示にします。"; "YT_MINIPLAYER" = "すべての動画でミニプレーヤーを有効にする"; -"YT_MINIPLAYER_DESC" = "例: 子ども向けの動画"; +"YT_MINIPLAYER_DESC" = "例:子ども向けの動画"; "CAST_CONFIRM" = "キャストする前に確認をする (YTCastConfirm)"; "CAST_CONFIRM_DESC" = "誤ってテレビにキャストしないように、確認の警告を表示します。"; @@ -37,13 +39,13 @@ "AUTO_FULLSCREEN_DESC" = "動画を自動でフルスクリーンにします。"; "HIDE_HUD_MESSAGES" = "HUDのメッセージを非表示"; -"HIDE_HUD_MESSAGES_DESC" = "例: 字幕がオン/オフになりました、ループ再生はオンになっています、等"; +"HIDE_HUD_MESSAGES_DESC" = "例:字幕がオン/オフになりました、ループ再生はオンになっています、等"; "OLED_DARKMODE" = "有機ELダークモード (実験的機能)"; -"OLED_DARKMODE_DESC" = "正しく動作しない可能性があります。この設定を変更した場合、アプリの再起動が必要です。"; +"OLED_DARKMODE_DESC" = "正常に動作しない可能性があります。この設定を変更した場合、アプリの再起動が必要です。"; "OLED_KEYBOARD" = "有機ELキーボード (実験的機能)"; -"OLED_KEYBOARD_DESC" = "正しく動作しない可能性があります。この設定を変更した場合、アプリの再起動が必要です。"; +"OLED_KEYBOARD_DESC" = "正常に動作しない可能性があります。この設定を変更した場合、アプリの再起動が必要です。"; "HIDE_PAID_PROMOTION_CARDS" = "プロモーションバナーを非表示"; "HIDE_PAID_PROMOTION_CARDS_DESC" = "一部の動画で表示される「プロモーションを含みます」のバナーを非表示にします。"; From 28b0e66841defb9b04e8cd76e19dbf3a1564971a Mon Sep 17 00:00:00 2001 From: chimaha <107383950+chimaha@users.noreply.github.com> Date: Sat, 8 Oct 2022 17:07:39 +0900 Subject: [PATCH 140/156] Update Japanese translation --- lang/uYouPlus.bundle/ja.lproj/Localizable.strings | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lang/uYouPlus.bundle/ja.lproj/Localizable.strings b/lang/uYouPlus.bundle/ja.lproj/Localizable.strings index 2a7d024..bf86a60 100644 --- a/lang/uYouPlus.bundle/ja.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/ja.lproj/Localizable.strings @@ -2,8 +2,8 @@ "DONT_EAT_MY_CONTENT" = "2:1比率の動画とノッチ/Dynamic Islandの最適化 (DontEatMyContent)"; "DONT_EAT_MY_CONTENT_DESC" = "2:1比率の動画とノッチ/Dynamic Islandが干渉することを防ぎます。アプリの再起動が必要です。"; -"REPLACE_PREVIOUS_NEXT_BUTTON" = "次へと前へのボタンを置き換える"; -"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "次へと前へのボタンをそれぞれ早送りと巻き戻しボタンに置き換えます。アプリの再起動が必要です。"; +"REPLACE_PREVIOUS_NEXT_BUTTON" = "前後の動画を再生するボタンを置き換える"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "次の動画と前の動画を再生するボタンをそれぞれ早送りと巻き戻しボタンに置き換えます。アプリの再起動が必要です。"; "FIX_GOOGLE_SIGNIN" = "Googleのサインインを修正 (TrollStoreユーザーのみ)"; "FIX_GOOGLE_SIGNIN_DESC" = "アプリがTrollStoreでインストールされた場合のみ機能します。このオプションを有効にしてGoogleアカウントでサインインできるようにします。アプリの再起動が必要です。"; @@ -11,8 +11,8 @@ "KILL_APP" = "YouTubeを閉じる"; "KILL_APP_DESC" = "ここをタップしてYouTubeを終了できます!"; -"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "次へと前へのボタンを非表示"; -"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "動画コントロールのオーバーレイで次へと前へのボタンを非表示にします。"; +"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "前後の動画を再生するボタンを非表示"; +"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "動画コントロールのオーバーレイで次の動画と前の動画を再生するボタンを非表示にします。"; "YT_MINIPLAYER" = "すべての動画でミニプレーヤーを有効にする"; "YT_MINIPLAYER_DESC" = "例:子ども向けの動画"; From a85b50d1ff916b9e6db1fc84bdb8bdf5954a390c Mon Sep 17 00:00:00 2001 From: fifi2202 <45606005+fifi2202@users.noreply.github.com> Date: Sat, 8 Oct 2022 16:58:29 +0000 Subject: [PATCH 141/156] Create Localizable.strings --- .../pl.lproj/Localizable.strings | 71 +++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 lang/uYouPlus.bundle/pl.lproj/Localizable.strings diff --git a/lang/uYouPlus.bundle/pl.lproj/Localizable.strings b/lang/uYouPlus.bundle/pl.lproj/Localizable.strings new file mode 100644 index 0000000..fe99be3 --- /dev/null +++ b/lang/uYouPlus.bundle/pl.lproj/Localizable.strings @@ -0,0 +1,71 @@ +/* Read me: +- How to translate uYouPlus (if your language already exists then feel free to check it and/or improve it): +1. Fork uYouPlus repo +2. Duplicate the template.lproj folder, and edit the duplicated folder's name to your .lproj id. +For example: for Russia. For more details, visit: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes +3. Translate each line below after each = +4. Open a Pull Request + +- You can also add your localization to YouPiP, YTUHD and Return YouTube Dislike. The process is the same: +https://github.com/PoomSmart/YouPiP/tree/main/layout/Library/Application%20Support/YouPiP.bundle +https://github.com/PoomSmart/YTUHD/tree/master/layout/Library/Application%20Support/YTUHD.bundle +https://github.com/PoomSmart/Return-YouTube-Dislikes/tree/main/layout/Library/Application%20Support/RYD.bundle +*/ + +// Settings +"DONT_EAT_MY_CONTENT" = "Zapobiega przeszkadzaniu Notcha/Island na filmach o proporcjach 2:1 (DontEatMyContent)"; +"DONT_EAT_MY_CONTENT_DESC" = "Zapobiega notcha/Dynamic Island przed jedzeniem filmów o proporcjach 2:1 na YouTubie. Restart aplikacji jest wymagany."; + +"REPLACE_PREVIOUS_NEXT_BUTTON" = "Zamień przyciski Poprzedni i Następny"; +"REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Zamienia przyciski Poprzedni i Następny z przyciskami Przewiń w przód i tył. Restart aplikacji jest wymagany."; + +"FIX_GOOGLE_SIGNIN" = "Napraw logowanie się z Google (tylko dla użytkowników TrollStore)"; +"FIX_GOOGLE_SIGNIN_DESC" = "Włącz tą opcję tylko wtedy, kiedy nie możesz zalogować się swoim kontem Google, a aplikacja została zainstalowana przez TrollStore. Jeżeli da się zalogować normalnie, zostaw to wyłączone. Restart aplikacji jest wymagany."; + +"KILL_APP" = "Zamknij YouTube"; +"KILL_APP_DESC" = "Naciśnuj tutaj aby zamknąć YouTube!"; + +"HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Ukryj przyciski Poprzedni i Następny"; +"HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "Ukryj przyciski Poprzedni i Następny w okładce sterowania filmu."; + +"YT_MINIPLAYER" = "Włącz miniodtwarzach dla wszystkich filmów."; +"YT_MINIPLAYER_DESC" = "Np. filmów dla dzieci."; + +"CAST_CONFIRM" = "Alert przed przesyłaniem (YTCastConfirm)"; +"CAST_CONFIRM_DESC" = "Pokaż alert przed przesyłaniem aby nie łączyć się przez przypadek z telewizorem."; + +"HIDE_HOVER_CARD" = "Ukryj ekrany końcowe (YTNoHoverCards)"; +"HIDE_HOVER_CARD_DESC" = "Ukryj ekrany końcowe (miniaturki) na końcu filmów."; + +"NEW_MINIPLAYER_STYLE" = "Nowy styl miniodtwarzacza (BigYTMiniPlayer)"; +"NEW_MINIPLAYER_STYLE_DESC" = "Restart aplikacji jest wymagany."; + +"YT_RE_EXPLORE" = "Zamień kartę Shorts na kartę Odkrywaj (YTReExplore)"; +"YT_RE_EXPLORE_DESC" = "Restart aplikacji jest wymagany."; + +"HIDE_SUBTITLES_BUTTON" = "Ukryj przycisk Napisy"; +"HIDE_SUBTITLES_BUTTON_DESC" = "Ukrywa przycisk Napisy w okładce odtwarzacza filmów."; + +"HIDE_AUTOPLAY_SWITCH" = "Ukryj przycisk Autoodtwarzanie"; +"HIDE_AUTOPLAY_SWITCH_DESC" = "Ukrywa przycisk Autoodtwarzanie w okładce odtwarzacza filmów."; + +"AUTO_FULLSCREEN" = "Auto pełny ekran (YTAutoFullScreen)"; +"AUTO_FULLSCREEN_DESC" = "Automaczycznie otwórz filmy w pełnym ekranie."; + +"HIDE_HUD_MESSAGES" = "Ukryj komunikaty HUD."; +"HIDE_HUD_MESSAGES_DESC" = "Np. Napisy są wył/wł, Odtwarzanie w pętli jest włączone, ..."; + +"OLED_DARKMODE" = "Tryb ciemny OLED (Eksperymentalny)"; +"OLED_DARKMODE_DESC" = "Może w niektórych przypadkach nie działać. Restart aplikacji jest wymagany."; + +"OLED_KEYBOARD" = "OLED Keyboard (Experimental)"; +"OLED_KEYBOARD_DESC" = "Might not working correctly in some cases. App restart is required."; + +"HIDE_PAID_PROMOTION_CARDS" = "Hide Paid Promotion banner"; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "Hide the 'Includes Paid Promotions' banner in some videos."; + +// YTCastConfirm +"CASTING" = "Castings"; +"MSG_ARE_YOU_SURE" = "Are you sure you want to start casting?"; +"MSG_YES" = "Yes"; +"MSG_CANCEL" = "Cancel"; From cd6a32a77828a97a5d5f0ea44f90aed7b41a5583 Mon Sep 17 00:00:00 2001 From: fifi2202 <45606005+fifi2202@users.noreply.github.com> Date: Sat, 8 Oct 2022 20:09:32 +0000 Subject: [PATCH 142/156] Update Localizable.strings --- .../uYouPlus.bundle/pl.lproj/Localizable.strings | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/lang/uYouPlus.bundle/pl.lproj/Localizable.strings b/lang/uYouPlus.bundle/pl.lproj/Localizable.strings index fe99be3..62a8a11 100644 --- a/lang/uYouPlus.bundle/pl.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/pl.lproj/Localizable.strings @@ -58,14 +58,14 @@ https://github.com/PoomSmart/Return-YouTube-Dislikes/tree/main/layout/Library/Ap "OLED_DARKMODE" = "Tryb ciemny OLED (Eksperymentalny)"; "OLED_DARKMODE_DESC" = "Może w niektórych przypadkach nie działać. Restart aplikacji jest wymagany."; -"OLED_KEYBOARD" = "OLED Keyboard (Experimental)"; -"OLED_KEYBOARD_DESC" = "Might not working correctly in some cases. App restart is required."; +"OLED_KEYBOARD" = "Klawiatura OLED (Eksperymentalna)"; +"OLED_KEYBOARD_DESC" = "Może w niektórych przypadkach nie działać. Restart aplikacji jest wymagany."; -"HIDE_PAID_PROMOTION_CARDS" = "Hide Paid Promotion banner"; -"HIDE_PAID_PROMOTION_CARDS_DESC" = "Hide the 'Includes Paid Promotions' banner in some videos."; +"HIDE_PAID_PROMOTION_CARDS" = "Ukryj baner płatnej promocji"; +"HIDE_PAID_PROMOTION_CARDS_DESC" = "Ukrywa baner 'Zawiera płatną promocję' w niektórych filmach."; // YTCastConfirm -"CASTING" = "Castings"; -"MSG_ARE_YOU_SURE" = "Are you sure you want to start casting?"; -"MSG_YES" = "Yes"; -"MSG_CANCEL" = "Cancel"; +"CASTING" = "Przesyłania"; +"MSG_ARE_YOU_SURE" = "Czy na pewno chcesz przesyłać?"; +"MSG_YES" = "Tak"; +"MSG_CANCEL" = "Anuluj"; From 9eb8ca1950fb203a06978c544cf672117a476b15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20=C4=90=E1=BA=A1t?= <52943116+qnblackcat@users.noreply.github.com> Date: Sun, 9 Oct 2022 08:03:00 +0700 Subject: [PATCH 143/156] Update Localizable.strings --- .../pl.lproj/Localizable.strings | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) diff --git a/lang/uYouPlus.bundle/pl.lproj/Localizable.strings b/lang/uYouPlus.bundle/pl.lproj/Localizable.strings index 62a8a11..e987e0f 100644 --- a/lang/uYouPlus.bundle/pl.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/pl.lproj/Localizable.strings @@ -1,17 +1,3 @@ -/* Read me: -- How to translate uYouPlus (if your language already exists then feel free to check it and/or improve it): -1. Fork uYouPlus repo -2. Duplicate the template.lproj folder, and edit the duplicated folder's name to your .lproj id. -For example: for Russia. For more details, visit: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes -3. Translate each line below after each = -4. Open a Pull Request - -- You can also add your localization to YouPiP, YTUHD and Return YouTube Dislike. The process is the same: -https://github.com/PoomSmart/YouPiP/tree/main/layout/Library/Application%20Support/YouPiP.bundle -https://github.com/PoomSmart/YTUHD/tree/master/layout/Library/Application%20Support/YTUHD.bundle -https://github.com/PoomSmart/Return-YouTube-Dislikes/tree/main/layout/Library/Application%20Support/RYD.bundle -*/ - // Settings "DONT_EAT_MY_CONTENT" = "Zapobiega przeszkadzaniu Notcha/Island na filmach o proporcjach 2:1 (DontEatMyContent)"; "DONT_EAT_MY_CONTENT_DESC" = "Zapobiega notcha/Dynamic Island przed jedzeniem filmów o proporcjach 2:1 na YouTubie. Restart aplikacji jest wymagany."; @@ -28,7 +14,7 @@ https://github.com/PoomSmart/Return-YouTube-Dislikes/tree/main/layout/Library/Ap "HIDE_PREVIOUS_AND_NEXT_BUTTON" = "Ukryj przyciski Poprzedni i Następny"; "HIDE_PREVIOUS_AND_NEXT_BUTTON_DESC" = "Ukryj przyciski Poprzedni i Następny w okładce sterowania filmu."; -"YT_MINIPLAYER" = "Włącz miniodtwarzach dla wszystkich filmów."; +"YT_MINIPLAYER" = "Włącz miniodtwarzach dla wszystkich filmów"; "YT_MINIPLAYER_DESC" = "Np. filmów dla dzieci."; "CAST_CONFIRM" = "Alert przed przesyłaniem (YTCastConfirm)"; @@ -52,7 +38,7 @@ https://github.com/PoomSmart/Return-YouTube-Dislikes/tree/main/layout/Library/Ap "AUTO_FULLSCREEN" = "Auto pełny ekran (YTAutoFullScreen)"; "AUTO_FULLSCREEN_DESC" = "Automaczycznie otwórz filmy w pełnym ekranie."; -"HIDE_HUD_MESSAGES" = "Ukryj komunikaty HUD."; +"HIDE_HUD_MESSAGES" = "Ukryj komunikaty HUD"; "HIDE_HUD_MESSAGES_DESC" = "Np. Napisy są wył/wł, Odtwarzanie w pętli jest włączone, ..."; "OLED_DARKMODE" = "Tryb ciemny OLED (Eksperymentalny)"; From 9964988bbbed7f28a44d45118029fb4cd1b40205 Mon Sep 17 00:00:00 2001 From: chimaha <107383950+chimaha@users.noreply.github.com> Date: Sun, 9 Oct 2022 23:36:13 +0900 Subject: [PATCH 144/156] Fix Japanese --- lang/uYouPlus.bundle/ja.lproj/Localizable.strings | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lang/uYouPlus.bundle/ja.lproj/Localizable.strings b/lang/uYouPlus.bundle/ja.lproj/Localizable.strings index bf86a60..1326ba4 100644 --- a/lang/uYouPlus.bundle/ja.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/ja.lproj/Localizable.strings @@ -1,5 +1,5 @@ // Settings -"DONT_EAT_MY_CONTENT" = "2:1比率の動画とノッチ/Dynamic Islandの最適化 (DontEatMyContent)"; +"DONT_EAT_MY_CONTENT" = "2:1の動画とノッチ/Dynamic Islandの最適化 (DontEatMyContent)"; "DONT_EAT_MY_CONTENT_DESC" = "2:1比率の動画とノッチ/Dynamic Islandが干渉することを防ぎます。アプリの再起動が必要です。"; "REPLACE_PREVIOUS_NEXT_BUTTON" = "前後の動画を再生するボタンを置き換える"; From 54ca35f15e0ff7a783d781493b2e552528a37402 Mon Sep 17 00:00:00 2001 From: Victor Alves Date: Tue, 11 Oct 2022 13:21:53 -0300 Subject: [PATCH 145/156] Update Portuguese localization --- lang/uYouPlus.bundle/pt.lproj/Localizable.strings | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lang/uYouPlus.bundle/pt.lproj/Localizable.strings b/lang/uYouPlus.bundle/pt.lproj/Localizable.strings index ef4330e..39f5e41 100644 --- a/lang/uYouPlus.bundle/pt.lproj/Localizable.strings +++ b/lang/uYouPlus.bundle/pt.lproj/Localizable.strings @@ -1,4 +1,6 @@ // Settings +"DONT_EAT_MY_CONTENT" = "Evitar o notch/Island em conteúdo de vídeo 2:1 (DontEatMyContent)"; +"DONT_EAT_MY_CONTENT_DESC" = "Evita que o notch/Dynamic Island coma conteúdo de vídeo 2:1 no YouTube. A reinicialização do app é necessária."; "REPLACE_PREVIOUS_NEXT_BUTTON" = "Substituir o botão Anterior e Próximo"; "REPLACE_PREVIOUS_NEXT_BUTTON_DESC" = "Substitui o botão Anterior e Próximo pelo botão Avançar e Retroceder. A reinicialização do app é necessária."; From 22b45d06271c86bc41d55eff39bb3e1ef4e7a7a3 Mon Sep 17 00:00:00 2001 From: PoomSmart Date: Thu, 13 Oct 2022 10:58:12 +0700 Subject: [PATCH 146/156] Updated YouPiP and YTUHD --- Tweaks/YTUHD | 2 +- Tweaks/YouPiP | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Tweaks/YTUHD b/Tweaks/YTUHD index c0c1e47..e735f14 160000 --- a/Tweaks/YTUHD +++ b/Tweaks/YTUHD @@ -1 +1 @@ -Subproject commit c0c1e472dcc9919368de254b727974934b23ee89 +Subproject commit e735f14e50e8ae77a2cad6ded11cd5371d6bad85 diff --git a/Tweaks/YouPiP b/Tweaks/YouPiP index 0201657..b92cce3 160000 --- a/Tweaks/YouPiP +++ b/Tweaks/YouPiP @@ -1 +1 @@ -Subproject commit 020165703f6cbd570b44b09fda2b65e70fbfd139 +Subproject commit b92cce301391db05e80876c92dd5d5e0731e7383 From 0a0f655db584c6592d77321fe472568ad4df7fea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20=C4=90=E1=BA=A1t?= <52943116+qnblackcat@users.noreply.github.com> Date: Fri, 14 Oct 2022 19:07:17 +0700 Subject: [PATCH 147/156] Update buildapp.yml --- .github/workflows/buildapp.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/buildapp.yml b/.github/workflows/buildapp.yml index 12487f1..9c4971e 100644 --- a/.github/workflows/buildapp.yml +++ b/.github/workflows/buildapp.yml @@ -99,7 +99,7 @@ jobs: (cd ${{ github.workspace }}/main/Tweaks/YouPiP && sed -i '' "14s/$/ AVFoundation UIKit/" Makefile) make package FINALPACKAGE=1 (mv "packages/$(ls -t packages | head -n1)" "packages/uYouPlus_${{ env.YOUTUBE_VERSION }}_${{ env.UYOU_VERSION }}.ipa") - echo "::set-output name=package::$(ls -t packages | head -n1)" + echo "package=$(ls -t packages | head -n1)" >>$GITHUB_OUTPUT env: THEOS: ${{ github.workspace }}/theos UYOU_VERSION: ${{ inputs.uyou_version }} From c04ff7e6d5a5853986c314b97c567c6453c44263 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20=C4=90=E1=BA=A1t?= <52943116+qnblackcat@users.noreply.github.com> Date: Fri, 14 Oct 2022 22:24:57 +0700 Subject: [PATCH 148/156] Update buildapp.yml --- .github/workflows/buildapp.yml | 32 ++++++-------------------------- 1 file changed, 6 insertions(+), 26 deletions(-) diff --git a/.github/workflows/buildapp.yml b/.github/workflows/buildapp.yml index 9c4971e..f2a91a1 100644 --- a/.github/workflows/buildapp.yml +++ b/.github/workflows/buildapp.yml @@ -13,7 +13,7 @@ on: type: string decrypted_youtube_url: description: "The direct URL to the decrypted YouTube ipa" - default: "" + default: "https://27man-my.sharepoint.com/:u:/g/personal/qn____27man_onmicrosoft_com/EfZLHsAs_CpGtyzPhAi7Dy8BtGjTxYif-DAmW0-rxzE4sA?download=1" required: true type: string youtube_version: @@ -114,30 +114,10 @@ jobs: name: uYouPlus_${{ env.YOUTUBE_VERSION }}_${{ env.UYOU_VERSION }} path: ${{ github.workspace }}/main/packages/${{ steps.build_package.outputs.package }} if-no-files-found: error - - - name: Create Release - if: ${{ inputs.create_release }} - id: create_release - uses: actions/create-release@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - UYOU_VERSION: ${{ inputs.uyou_version }} - YOUTUBE_VERSION: ${{ inputs.youtube_version }} + + - name: Gh Release + uses: softprops/action-gh-release@v0.1.14 + if: startsWith(github.ref, 'refs/tags/') with: - tag_name: v${{ env.YOUTUBE_VERSION }}-${{ env.UYOU_VERSION }}-(${{ github.run_number }}) - release_name: v${{ env.YOUTUBE_VERSION }}-${{ env.UYOU_VERSION }}-(${{ github.run_number }}) - draft: true - prerelease: false + files: ./main/packages/*.ipa - - name: Upload Release Asset - if: ${{ inputs.create_release }} - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - UYOU_VERSION: ${{ inputs.uyou_version }} - YOUTUBE_VERSION: ${{ inputs.youtube_version }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: ${{ github.workspace }}/main/packages/${{ steps.build_package.outputs.package }} - asset_name: uYouPlus_${{ env.YOUTUBE_VERSION }}_${{ env.UYOU_VERSION }}.ipa - asset_content_type: application/vnd.debian.binary-package From 82c7b1367b67640d2196386e9f8c04a81dd1815a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20=C4=90=E1=BA=A1t?= <52943116+qnblackcat@users.noreply.github.com> Date: Fri, 14 Oct 2022 22:36:07 +0700 Subject: [PATCH 149/156] Update buildapp.yml --- .github/workflows/buildapp.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/buildapp.yml b/.github/workflows/buildapp.yml index f2a91a1..81b8107 100644 --- a/.github/workflows/buildapp.yml +++ b/.github/workflows/buildapp.yml @@ -117,7 +117,6 @@ jobs: - name: Gh Release uses: softprops/action-gh-release@v0.1.14 - if: startsWith(github.ref, 'refs/tags/') with: files: ./main/packages/*.ipa From 0db40410d865bfc6e977120dc864d4297f096b48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20=C4=90=E1=BA=A1t?= <52943116+qnblackcat@users.noreply.github.com> Date: Fri, 14 Oct 2022 22:37:11 +0700 Subject: [PATCH 150/156] Update Makefile --- Makefile | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/Makefile b/Makefile index 1f5d995..9810cdd 100644 --- a/Makefile +++ b/Makefile @@ -10,7 +10,7 @@ TWEAK_NAME = uYouPlus DISPLAY_NAME = YouTube BUNDLE_ID = com.google.ios.youtube -uYouPlus_INJECT_DYLIBS = Tweaks/uYou/Library/MobileSubstrate/DynamicLibraries/uYou.dylib .theos/obj/libcolorpicker.dylib .theos/obj/iSponsorBlock.dylib .theos/obj/YTUHD.dylib .theos/obj/YouPiP.dylib .theos/obj/YouTubeDislikesReturn.dylib .theos/obj/YoutubeSpeed.dylib +uYouPlus_INJECT_DYLIBS = Tweaks/uYou/Library/MobileSubstrate/DynamicLibraries/uYou.dylib .theos/obj/YTUHD.dylib .theos/obj/YouPiP.dylib .theos/obj/YouTubeDislikesReturn.dylib .theos/obj/YoutubeSpeed.dylib uYouPlus_FILES = uYouPlus.xm Settings.xm uYouPlus_IPA = ./tmp/Payload/YouTube.app uYouPlus_FRAMEWORKS = UIKit Security @@ -18,18 +18,13 @@ uYouPlus_CFLAGS = -fobjc-arc include $(THEOS)/makefiles/common.mk include $(THEOS_MAKE_PATH)/tweak.mk -SUBPROJECTS += Tweaks/Alderis Tweaks/iSponsorBlock Tweaks/YTUHD Tweaks/YouPiP Tweaks/Return-YouTube-Dislikes Tweaks/YTSpeed +SUBPROJECTS += Tweaks/YTUHD Tweaks/YouPiP Tweaks/Return-YouTube-Dislikes Tweaks/YTSpeed include $(THEOS_MAKE_PATH)/aggregate.mk before-package:: @echo -e "==> \033[1mMoving tweak's bundle to Resources/...\033[0m" - @mkdir -p Resources/Frameworks/Alderis.framework && find .theos/obj/install/Library/Frameworks/Alderis.framework -maxdepth 1 -type f -exec cp {} Resources/Frameworks/Alderis.framework/ \; @cp -R Tweaks/YouPiP/layout/Library/Application\ Support/YouPiP.bundle Resources/ @cp -R Tweaks/YTUHD/layout/Library/Application\ Support/YTUHD.bundle Resources/ @cp -R Tweaks/Return-YouTube-Dislikes/layout/Library/Application\ Support/RYD.bundle Resources/ - @cp -R Tweaks/iSponsorBlock/layout/Library/Application\ Support/iSponsorBlock.bundle Resources/ @cp -R Tweaks/uYou/Library/Application\ Support/uYouBundle.bundle Resources/ @cp -R lang/uYouPlus.bundle Resources/ - @echo -e "==> \033[1mChanging the installation path of dylibs...\033[0m" - @codesign --remove-signature .theos/obj/iSponsorBlock.dylib && install_name_tool -change /usr/lib/libcolorpicker.dylib @rpath/libcolorpicker.dylib .theos/obj/iSponsorBlock.dylib - @codesign --remove-signature .theos/obj/libcolorpicker.dylib && install_name_tool -change /Library/Frameworks/Alderis.framework/Alderis @rpath/Alderis.framework/Alderis .theos/obj/libcolorpicker.dylib From 3f6f62a3e4e5a6e9a0fc9a135bf1e20b0ce02739 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20=C4=90=E1=BA=A1t?= <52943116+qnblackcat@users.noreply.github.com> Date: Fri, 14 Oct 2022 22:47:04 +0700 Subject: [PATCH 151/156] Update Makefile --- Makefile | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 9810cdd..34a8b04 100644 --- a/Makefile +++ b/Makefile @@ -10,7 +10,7 @@ TWEAK_NAME = uYouPlus DISPLAY_NAME = YouTube BUNDLE_ID = com.google.ios.youtube -uYouPlus_INJECT_DYLIBS = Tweaks/uYou/Library/MobileSubstrate/DynamicLibraries/uYou.dylib .theos/obj/YTUHD.dylib .theos/obj/YouPiP.dylib .theos/obj/YouTubeDislikesReturn.dylib .theos/obj/YoutubeSpeed.dylib +uYouPlus_INJECT_DYLIBS = Tweaks/uYou/Library/MobileSubstrate/DynamicLibraries/uYou.dylib .theos/obj/libcolorpicker.dylib .theos/obj/iSponsorBlock.dylib .theos/obj/YTUHD.dylib .theos/obj/YouPiP.dylib .theos/obj/YouTubeDislikesReturn.dylib .theos/obj/YoutubeSpeed.dylib uYouPlus_FILES = uYouPlus.xm Settings.xm uYouPlus_IPA = ./tmp/Payload/YouTube.app uYouPlus_FRAMEWORKS = UIKit Security @@ -18,13 +18,18 @@ uYouPlus_CFLAGS = -fobjc-arc include $(THEOS)/makefiles/common.mk include $(THEOS_MAKE_PATH)/tweak.mk -SUBPROJECTS += Tweaks/YTUHD Tweaks/YouPiP Tweaks/Return-YouTube-Dislikes Tweaks/YTSpeed +SUBPROJECTS += Tweaks/Alderis Tweaks/iSponsorBlock Tweaks/YTUHD Tweaks/YouPiP Tweaks/Return-YouTube-Dislikes Tweaks/YTSpeed include $(THEOS_MAKE_PATH)/aggregate.mk before-package:: @echo -e "==> \033[1mMoving tweak's bundle to Resources/...\033[0m" + @mkdir -p Resources/Frameworks/Alderis.framework && find .theos/obj/install/Library/Frameworks/Alderis.framework -maxdepth 1 -type f -exec cp {} Resources/Frameworks/Alderis.framework/ \; @cp -R Tweaks/YouPiP/layout/Library/Application\ Support/YouPiP.bundle Resources/ @cp -R Tweaks/YTUHD/layout/Library/Application\ Support/YTUHD.bundle Resources/ @cp -R Tweaks/Return-YouTube-Dislikes/layout/Library/Application\ Support/RYD.bundle Resources/ + @cp -R Tweaks/iSponsorBlock/layout/Library/Application\ Support/iSponsorBlock.bundle Resources/ @cp -R Tweaks/uYou/Library/Application\ Support/uYouBundle.bundle Resources/ @cp -R lang/uYouPlus.bundle Resources/ + @echo -e "==> \033[1mChanging the installation path of dylibs...\033[0m" + @codesign --remove-signature .theos/obj/iSponsorBlock.dylib && install_name_tool -change /usr/lib/libcolorpicker.dylib @rpath/libcolorpicker.dylib .theos/obj/iSponsorBlock.dylib + @codesign --remove-signature .theos/obj/libcolorpicker.dylib && install_name_tool -change /Library/Frameworks/Alderis.framework/Alderis @rpath/Alderis.framework/Alderis .theos/obj/libcolorpicker.dylib From 398660cd983142a357abbe88e0f1e7b0c9e1c096 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20=C4=90=E1=BA=A1t?= <52943116+qnblackcat@users.noreply.github.com> Date: Fri, 14 Oct 2022 22:52:22 +0700 Subject: [PATCH 152/156] Update Makefile --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 34a8b04..1f5d995 100644 --- a/Makefile +++ b/Makefile @@ -31,5 +31,5 @@ before-package:: @cp -R Tweaks/uYou/Library/Application\ Support/uYouBundle.bundle Resources/ @cp -R lang/uYouPlus.bundle Resources/ @echo -e "==> \033[1mChanging the installation path of dylibs...\033[0m" - @codesign --remove-signature .theos/obj/iSponsorBlock.dylib && install_name_tool -change /usr/lib/libcolorpicker.dylib @rpath/libcolorpicker.dylib .theos/obj/iSponsorBlock.dylib - @codesign --remove-signature .theos/obj/libcolorpicker.dylib && install_name_tool -change /Library/Frameworks/Alderis.framework/Alderis @rpath/Alderis.framework/Alderis .theos/obj/libcolorpicker.dylib + @codesign --remove-signature .theos/obj/iSponsorBlock.dylib && install_name_tool -change /usr/lib/libcolorpicker.dylib @rpath/libcolorpicker.dylib .theos/obj/iSponsorBlock.dylib + @codesign --remove-signature .theos/obj/libcolorpicker.dylib && install_name_tool -change /Library/Frameworks/Alderis.framework/Alderis @rpath/Alderis.framework/Alderis .theos/obj/libcolorpicker.dylib From f4a9aeabb0e352d4b31f4507d646e894d9f0b10b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20=C4=90=E1=BA=A1t?= <52943116+qnblackcat@users.noreply.github.com> Date: Fri, 14 Oct 2022 23:52:24 +0700 Subject: [PATCH 153/156] Update buildapp.yml --- .github/workflows/buildapp.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.github/workflows/buildapp.yml b/.github/workflows/buildapp.yml index 81b8107..593bd96 100644 --- a/.github/workflows/buildapp.yml +++ b/.github/workflows/buildapp.yml @@ -116,7 +116,16 @@ jobs: if-no-files-found: error - name: Gh Release + id: gh_release uses: softprops/action-gh-release@v0.1.14 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + UYOU_VERSION: ${{ inputs.uyou_version }} + YOUTUBE_VERSION: ${{ inputs.youtube_version }} with: + tag_name: v${{ env.YOUTUBE_VERSION }}-${{ env.UYOU_VERSION }}-(${{ github.run_number }}) + name: v${{ env.YOUTUBE_VERSION }}-${{ env.UYOU_VERSION }}-(${{ github.run_number }}) files: ./main/packages/*.ipa + draft: true + prerelease: false From e2b31644affad5890802742a220ba9b937aecc3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20=C4=90=E1=BA=A1t?= <52943116+qnblackcat@users.noreply.github.com> Date: Sat, 15 Oct 2022 00:23:25 +0700 Subject: [PATCH 154/156] Update buildapp.yml --- .github/workflows/buildapp.yml | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/.github/workflows/buildapp.yml b/.github/workflows/buildapp.yml index 593bd96..6441a11 100644 --- a/.github/workflows/buildapp.yml +++ b/.github/workflows/buildapp.yml @@ -104,19 +104,10 @@ jobs: THEOS: ${{ github.workspace }}/theos UYOU_VERSION: ${{ inputs.uyou_version }} YOUTUBE_VERSION: ${{ inputs.youtube_version }} - - - name: Upload Artifact - uses: actions/upload-artifact@v3 - env: - UYOU_VERSION: ${{ inputs.uyou_version }} - YOUTUBE_VERSION: ${{ inputs.youtube_version }} - with: - name: uYouPlus_${{ env.YOUTUBE_VERSION }}_${{ env.UYOU_VERSION }} - path: ${{ github.workspace }}/main/packages/${{ steps.build_package.outputs.package }} - if-no-files-found: error - name: Gh Release - id: gh_release + if: ${{ inputs.create_release }} + id: create_release uses: softprops/action-gh-release@v0.1.14 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} From 2f4ea4130c2d249a9d6cf02685ce33cd8968ffbb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20=C4=90=E1=BA=A1t?= <52943116+qnblackcat@users.noreply.github.com> Date: Sat, 15 Oct 2022 00:34:35 +0700 Subject: [PATCH 155/156] Update buildapp.yml --- .github/workflows/buildapp.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/buildapp.yml b/.github/workflows/buildapp.yml index 6441a11..3e6fc26 100644 --- a/.github/workflows/buildapp.yml +++ b/.github/workflows/buildapp.yml @@ -106,17 +106,15 @@ jobs: YOUTUBE_VERSION: ${{ inputs.youtube_version }} - name: Gh Release - if: ${{ inputs.create_release }} id: create_release uses: softprops/action-gh-release@v0.1.14 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} UYOU_VERSION: ${{ inputs.uyou_version }} YOUTUBE_VERSION: ${{ inputs.youtube_version }} + DRAFT: ${{ inputs.create_release }} with: tag_name: v${{ env.YOUTUBE_VERSION }}-${{ env.UYOU_VERSION }}-(${{ github.run_number }}) name: v${{ env.YOUTUBE_VERSION }}-${{ env.UYOU_VERSION }}-(${{ github.run_number }}) files: ./main/packages/*.ipa - draft: true - prerelease: false - + draft: ${{ env.create_release }} From 8295fa484267fe9f5b6ebb152f11083d0e5fd73e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20=C4=90=E1=BA=A1t?= <52943116+qnblackcat@users.noreply.github.com> Date: Sat, 15 Oct 2022 00:52:52 +0700 Subject: [PATCH 156/156] Update buildapp.yml --- .github/workflows/buildapp.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/buildapp.yml b/.github/workflows/buildapp.yml index 3e6fc26..8ba2e5e 100644 --- a/.github/workflows/buildapp.yml +++ b/.github/workflows/buildapp.yml @@ -117,4 +117,4 @@ jobs: tag_name: v${{ env.YOUTUBE_VERSION }}-${{ env.UYOU_VERSION }}-(${{ github.run_number }}) name: v${{ env.YOUTUBE_VERSION }}-${{ env.UYOU_VERSION }}-(${{ github.run_number }}) files: ./main/packages/*.ipa - draft: ${{ env.create_release }} + draft: ${{ env.DRAFT }}