Skip to content

Commit 4ad5f93

Browse files
Merge remote-tracking branch 'upstream/dev' into feat/patcher_instruction_filters
2 parents a0191d2 + 18af8de commit 4ad5f93

File tree

79 files changed

+1307
-1150
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

79 files changed

+1307
-1150
lines changed

extensions/youtube/src/main/java/app/revanced/extension/youtube/sponsorblock/SegmentPlaybackController.java

Lines changed: 34 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@
4040
import app.revanced.extension.youtube.sponsorblock.objects.SponsorSegment;
4141
import app.revanced.extension.youtube.sponsorblock.requests.SBRequester;
4242
import app.revanced.extension.youtube.sponsorblock.ui.SponsorBlockViewController;
43+
import kotlin.Unit;
4344

4445
/**
4546
* Handles showing, scheduling, and skipping of all {@link SponsorSegment} for the current video.
@@ -163,6 +164,30 @@ public enum SponsorBlockDuration {
163164
*/
164165
private static WeakReference<Dialog> toastDialogRef = new WeakReference<>(null);
165166

167+
static {
168+
// Dismiss toast if app changes to PiP while undo skip is shown.
169+
PlayerType.getOnChange().addObserver((PlayerType type) -> {
170+
if (type == PlayerType.WATCH_WHILE_PICTURE_IN_PICTURE && dismissUndoToast()) {
171+
Logger.printDebug(() -> "Dismissed undo toast as playback is PiP");
172+
}
173+
174+
return Unit.INSTANCE;
175+
});
176+
}
177+
178+
/**
179+
* @return If the toast was on screen and is now dismissed.
180+
*/
181+
private static boolean dismissUndoToast() {
182+
Dialog toastDialog = toastDialogRef.get();
183+
if (toastDialog != null && toastDialog.isShowing()) {
184+
toastDialog.dismiss();
185+
return true;
186+
}
187+
188+
return false;
189+
}
190+
166191
/**
167192
* @return The adjusted duration to show the skip button, in milliseconds.
168193
*/
@@ -696,6 +721,11 @@ private static void showSkippedSegmentToast(SponsorSegment segment) {
696721
return;
697722
}
698723

724+
if (PlayerType.getCurrent() == PlayerType.WATCH_WHILE_PICTURE_IN_PICTURE) {
725+
Logger.printDebug(() -> "Not showing autoskip toast as playback is PiP");
726+
return;
727+
}
728+
699729
if (toastSegmentSkipped == null || undoAutoSkipRangeToast == null) {
700730
// Video was changed immediately after skipping segment.
701731
Logger.printDebug(() -> "Ignoring old scheduled show toast");
@@ -705,17 +735,15 @@ private static void showSkippedSegmentToast(SponsorSegment segment) {
705735
? toastSegmentSkipped.getSkippedToastText()
706736
: str("revanced_sb_skipped_multiple_segments");
707737

708-
showToastShortWithTapAction(message, undoAutoSkipRangeToast);
709-
} catch (Exception ex) {
710-
Logger.printException(() -> "showSkippedSegmentToast failure", ex);
738+
showAutoSkipToast(message, undoAutoSkipRangeToast);
711739
} finally {
712740
toastNumberOfSegmentsSkipped = 0;
713741
toastSegmentSkipped = null;
714742
}
715743
}, delayToToastMilliseconds);
716744
}
717745

718-
private static void showToastShortWithTapAction(String messageToToast, Range<Long> rangeToUndo) {
746+
private static void showAutoSkipToast(String messageToToast, Range<Long> rangeToUndo) {
719747
Objects.requireNonNull(messageToToast);
720748
Utils.verifyOnMainThread();
721749

@@ -812,10 +840,8 @@ public void onAnimationRepeat(Animation animation) { }
812840
window.addFlags(WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH);
813841
}
814842

815-
Dialog priorDialog = toastDialogRef.get();
816-
if (priorDialog != null && priorDialog.isShowing()) {
817-
Logger.printDebug(() -> "Removing previous skip toast that is still on screen: " + priorDialog);
818-
priorDialog.dismiss();
843+
if (dismissUndoToast()) {
844+
Logger.printDebug(() -> "Dismissed previous skip toast that was still on screen");
819845
}
820846
toastDialogRef = new WeakReference<>(dialog);
821847

patches/src/main/resources/addresources/values-af-rZA/strings.xml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,9 @@ Second \"item\" text"</string>
5555
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
5656
</patch>
5757
<patch id="ad.general.hideAdsResourcePatch">
58-
<!-- 'Visit store' should be translated with the same localized wording that YouTube displays. -->
5958
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
59+
<!-- 'View products' should be translated with the same localized wording that YouTube displays. -->
60+
<!-- 'Visit store' should be translated with the same localized wording that YouTube displays. -->
6061
</patch>
6162
<patch id="ad.getpremium.hideGetPremiumPatch">
6263
</patch>

patches/src/main/resources/addresources/values-am-rET/strings.xml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,9 @@ Second \"item\" text"</string>
5555
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
5656
</patch>
5757
<patch id="ad.general.hideAdsResourcePatch">
58-
<!-- 'Visit store' should be translated with the same localized wording that YouTube displays. -->
5958
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
59+
<!-- 'View products' should be translated with the same localized wording that YouTube displays. -->
60+
<!-- 'Visit store' should be translated with the same localized wording that YouTube displays. -->
6061
</patch>
6162
<patch id="ad.getpremium.hideGetPremiumPatch">
6263
</patch>

patches/src/main/resources/addresources/values-ar-rSA/strings.xml

Lines changed: 27 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -315,15 +315,15 @@ Second \"item\" text"</string>
315315
<string name="revanced_hide_comments_create_a_short_button_title">إخفاء زر \'إنشاء Short\'</string>
316316
<string name="revanced_hide_comments_create_a_short_button_summary_on">تم إخفاء زر إنشاء Short</string>
317317
<string name="revanced_hide_comments_create_a_short_button_summary_off">يتم عرض زر إنشاء Short</string>
318-
<string name="revanced_hide_comments_timestamp_button_title">زر إخفاء الطابع الزمني</string>
319-
<string name="revanced_hide_comments_timestamp_button_summary_on">زر الطابع الزمني مخفي</string>
320-
<string name="revanced_hide_comments_timestamp_button_summary_off">زر الطابع الزمني معروض</string>
321318
<string name="revanced_hide_comments_preview_comment_title">إخفاء تعليق المعاينة</string>
322319
<string name="revanced_hide_comments_preview_comment_summary_on">تم إخفاء تعليق المعاينة</string>
323320
<string name="revanced_hide_comments_preview_comment_summary_off">يتم عرض تعليق المعاينة</string>
324321
<string name="revanced_hide_comments_thanks_button_title">إخفاء زر شكرًا</string>
325322
<string name="revanced_hide_comments_thanks_button_summary_on">تم إخفاء زر شكرًا</string>
326323
<string name="revanced_hide_comments_thanks_button_summary_off">يتم عرض زر شكرًا</string>
324+
<string name="revanced_hide_comments_timestamp_button_title">زر إخفاء الطابع الزمني</string>
325+
<string name="revanced_hide_comments_timestamp_button_summary_on">زر الطابع الزمني مخفي</string>
326+
<string name="revanced_hide_comments_timestamp_button_summary_off">زر الطابع الزمني معروض</string>
327327
<!-- https://logos.fandom.com/wiki/YouTube/Yoodles -->
328328
<string name="revanced_hide_doodles_title">إخفاء رسومات YouTube</string>
329329
<string name="revanced_hide_doodles_summary_on">تم إخفاء رسومات شريط البحث</string>
@@ -377,44 +377,45 @@ Second \"item\" text"</string>
377377
<string name="revanced_hide_keyword_toast_invalid_broad">الكلمة المفتاحية سوف تخفي جميع الفيديوهات: %s</string>
378378
</patch>
379379
<patch id="ad.general.hideAdsResourcePatch">
380-
<string name="revanced_hide_general_ads_title">إخفاء الإعلانات العامة</string>
381-
<string name="revanced_hide_general_ads_summary_on">تم إخفاء الإعلانات بشكل عام</string>
382-
<string name="revanced_hide_general_ads_summary_off">يتم عرض الإعلانات العامة</string>
380+
<string name="revanced_hide_creator_store_shelves_title">إخفاء رفوف متجر المنشئ</string>
381+
<string name="revanced_hide_creator_store_shelves_summary_on">رفوف المتجر أسفل المشغل وفي وصف الفيديو مخفية</string>
382+
<string name="revanced_hide_creator_store_shelves_summary_off">تظهر أرفف المتجر أسفل المشغل وفي وصف الفيديو</string>
383+
<string name="revanced_hide_end_screen_store_banner_title">إخفاء لافتة شاشة المتجر النهائية</string>
384+
<string name="revanced_hide_end_screen_store_banner_summary_on">تم إخفاء لافتة المتجر</string>
385+
<string name="revanced_hide_end_screen_store_banner_summary_off">يتم عرض لافتة المتجر</string>
383386
<string name="revanced_hide_fullscreen_ads_title">إخفاء إعلانات ملء الشاشة</string>
384387
<string name="revanced_hide_fullscreen_ads_summary_on">"يتم إخفاء إعلانات ملء الشاشة
385388

386389
هذه الميزة متاحة فقط للأجهزة القديمة"</string>
387390
<string name="revanced_hide_fullscreen_ads_summary_off">يتم عرض إعلانات ملء الشاشة</string>
391+
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
392+
<string name="revanced_hide_fullscreen_ads_feature_not_available_toast">إخفاء إعلانات ملء الشاشة يعمل فقط مع الأجهزة القديمة</string>
393+
<string name="revanced_hide_general_ads_title">إخفاء الإعلانات العامة</string>
394+
<string name="revanced_hide_general_ads_summary_on">تم إخفاء الإعلانات بشكل عام</string>
395+
<string name="revanced_hide_general_ads_summary_off">يتم عرض الإعلانات العامة</string>
396+
<string name="revanced_hide_merchandise_banners_title">إخفاء لافتات البضائع</string>
397+
<string name="revanced_hide_merchandise_banners_summary_on">تم إخفاء لافتات البضائع</string>
398+
<string name="revanced_hide_merchandise_banners_summary_off">يتم عرض لافتات البضائع</string>
388399
<string name="revanced_hide_paid_promotion_label_title">إخفاء تسمية الترقية المدفوعة</string>
389400
<string name="revanced_hide_paid_promotion_label_summary_on">تم إخفاء تسمية الترقية المدفوعة</string>
390401
<string name="revanced_hide_paid_promotion_label_summary_off">يتم عرض تسمية الترقية المدفوعة</string>
402+
<!-- 'View products' should be translated with the same localized wording that YouTube displays. -->
403+
<string name="revanced_hide_view_products_banner_title">إخفاء لافتة \'عرض المنتجات\'</string>
404+
<string name="revanced_hide_view_products_banner_summary_on">الشعار في تراكب الفيديو مخفي</string>
405+
<string name="revanced_hide_view_products_banner_summary_off">تظهر اللافتة في تراكب الفيديو</string>
391406
<string name="revanced_hide_self_sponsor_ads_title">إخفاء بطاقات الرعاية الذاتية</string>
392407
<string name="revanced_hide_self_sponsor_ads_summary_on">تم إخفاء بطاقات الرعاية الذاتية</string>
393408
<string name="revanced_hide_self_sponsor_ads_summary_off">يتم عرض بطاقات الرعاية الذاتية</string>
394-
<string name="revanced_hide_products_banner_title">إخفاء لافتة \'عرض المنتجات\'</string>
395-
<string name="revanced_hide_products_banner_summary_on">تم إخفاء البانر</string>
396-
<string name="revanced_hide_products_banner_summary_off">يتم عرض البانر</string>
397-
<string name="revanced_hide_end_screen_store_banner_title">إخفاء لافتة شاشة المتجر النهائية</string>
398-
<string name="revanced_hide_end_screen_store_banner_summary_on">تم إخفاء لافتة المتجر</string>
399-
<string name="revanced_hide_end_screen_store_banner_summary_off">يتم عرض لافتة المتجر</string>
400-
<string name="revanced_hide_player_store_shelf_title">إخفاء رف مشغل التسوق</string>
401-
<string name="revanced_hide_player_store_shelf_summary_on">تم إخفاء رف التسوق</string>
402-
<string name="revanced_hide_player_store_shelf_summary_off">يتم عرض رف التسوق</string>
403-
<string name="revanced_hide_shopping_links_title">إخفاء روابط التسوق في وصف الفيديو</string>
404-
<string name="revanced_hide_shopping_links_summary_on">تم إخفاء روابط التسوق في وصف الفيديو</string>
405-
<string name="revanced_hide_shopping_links_summary_off">يتم عرض روابط التسوق في وصف الفيديو</string>
409+
<string name="revanced_hide_tagged_products_title">إخفاء المنتجات الموسومة</string>
410+
<string name="revanced_hide_tagged_products_summary_on">المنتجات الموسومة في وصف الفيديو مخفية</string>
411+
<string name="revanced_hide_tagged_products_summary_off">تظهر المنتجات الموسومة في وصف الفيديو</string>
406412
<!-- 'Visit store' should be translated with the same localized wording that YouTube displays. -->
407413
<string name="revanced_hide_visit_store_button_title">إخفاء زر \'زيارة المتجر\' على صفحات القناة</string>
408414
<string name="revanced_hide_visit_store_button_summary_on">تم إخفاء الزر في صفحة القناة</string>
409415
<string name="revanced_hide_visit_store_button_summary_off">يتم عرض الزر في صفحة القناة</string>
410416
<string name="revanced_hide_web_search_results_title">إخفاء نتائج بحث الويب</string>
411417
<string name="revanced_hide_web_search_results_summary_on">تم إخفاء نتائج البحث على الويب</string>
412418
<string name="revanced_hide_web_search_results_summary_off">يتم عرض نتائج البحث على الويب</string>
413-
<string name="revanced_hide_merchandise_banners_title">إخفاء لافتات البضائع</string>
414-
<string name="revanced_hide_merchandise_banners_summary_on">تم إخفاء لافتات البضائع</string>
415-
<string name="revanced_hide_merchandise_banners_summary_off">يتم عرض لافتات البضائع</string>
416-
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
417-
<string name="revanced_hide_fullscreen_ads_feature_not_available_toast">إخفاء إعلانات ملء الشاشة يعمل فقط مع الأجهزة القديمة</string>
418419
</patch>
419420
<patch id="ad.getpremium.hideGetPremiumPatch">
420421
<string name="revanced_hide_get_premium_title">إخفاء ترقية YouTube Premium</string>
@@ -826,7 +827,7 @@ Second \"item\" text"</string>
826827
<string name="revanced_hide_shorts_sound_metadata_label_title">إخفاء تسمية بيانات التعريف الصوتية</string>
827828
<string name="revanced_hide_shorts_sound_metadata_label_summary_on">تم إخفاء تسمية بيانات التعريف</string>
828829
<string name="revanced_hide_shorts_sound_metadata_label_summary_off">يتم عرض تسمية بيانات التعريف</string>
829-
<string name="revanced_hide_shorts_full_video_link_label_title">إخفاء تسمية رابط الفيديو الكامل</string>
830+
<string name="revanced_hide_shorts_full_video_link_label_title">إخفاء تسمية رابط الفيديو</string>
830831
<string name="revanced_hide_shorts_full_video_link_label_summary_on">تم إخفاء تسمية رابط الفيديو</string>
831832
<string name="revanced_hide_shorts_full_video_link_label_summary_off">يتم عرض تسمية رابط الفيديو</string>
832833
<string name="revanced_hide_shorts_sound_button_title">إخفاء زر الصوت</string>
@@ -963,7 +964,7 @@ Second \"item\" text"</string>
963964
<string name="revanced_sb_auto_hide_skip_button_duration">مدة زر التخطي</string>
964965
<string name="revanced_sb_auto_hide_skip_button_duration_sum">المدة التي تظهر فيها أزرار التخطي والتخطي إلى التمييز المخفية تلقائيًا</string>
965966
<string name="revanced_sb_general_skiptoast">إظهار إشعار التراجع عن التخطي</string>
966-
<string name="revanced_sb_general_skiptoast_sum_on">يظهر إشعار عند تخطي مقطع تلقائيًا. انقر على الإشعار للتراجع عن التخطي.</string>
967+
<string name="revanced_sb_general_skiptoast_sum_on">يظهر إشعار عند تخطي مقطع تلقائيًا. انقر على الإشعار للتراجع عن التخطي</string>
967968
<string name="revanced_sb_general_skiptoast_sum_off">لا يتم عرض التوست</string>
968969
<string name="revanced_sb_toast_on_skip_duration">مدة توست التخطي</string>
969970
<string name="revanced_sb_toast_on_skip_duration_sum">المدة التي يظهر فيها إشعار التخطي</string>
@@ -1156,6 +1157,7 @@ Second \"item\" text"</string>
11561157
<string name="revanced_change_form_factor_entry_1">الافتراضي</string>
11571158
<string name="revanced_change_form_factor_entry_2">الجوّال</string>
11581159
<string name="revanced_change_form_factor_entry_3">الجهاز اللوحي</string>
1160+
<string name="revanced_change_form_factor_entry_4">السيارات</string>
11591161
<string name="revanced_change_form_factor_user_dialog_message">"التغييرات تشمل:
11601162

11611163
تصميم الجهاز اللوحي

patches/src/main/resources/addresources/values-as-rIN/strings.xml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,9 @@ Second \"item\" text"</string>
5555
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
5656
</patch>
5757
<patch id="ad.general.hideAdsResourcePatch">
58-
<!-- 'Visit store' should be translated with the same localized wording that YouTube displays. -->
5958
<!-- Translations of this should not be longer than the original English text, otherwise the text can be clipped and not entirely shown. -->
59+
<!-- 'View products' should be translated with the same localized wording that YouTube displays. -->
60+
<!-- 'Visit store' should be translated with the same localized wording that YouTube displays. -->
6061
</patch>
6162
<patch id="ad.getpremium.hideGetPremiumPatch">
6263
</patch>

0 commit comments

Comments
 (0)