From 2fda2189cb1547286698ca61644228ebe6827448 Mon Sep 17 00:00:00 2001 From: Bryce Hackel <34104885+bhackel@users.noreply.github.com> Date: Wed, 8 May 2024 19:40:03 -0700 Subject: [PATCH] Fix Remaining Time --- Sources/uYouPlus.h | 3 +++ Sources/uYouPlus.xm | 18 +++++++++++------- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/Sources/uYouPlus.h b/Sources/uYouPlus.h index d2a3031..bbd180c 100644 --- a/Sources/uYouPlus.h +++ b/Sources/uYouPlus.h @@ -55,6 +55,9 @@ #define LOWCONTRASTMODE_CUTOFF_VERSION @"17.38.10" // LowContrastMode (v17.33.2-17.38.10) // Always show remaining time in video player - @bhackel +@interface YTPlayerBarController : NSObject +@property(nonatomic, strong) YTInlinePlayerBarContainerView *playerBar; +@end @interface YTInlinePlayerBarContainerView (uYouEnhanced) @property(nonatomic, assign) BOOL shouldDisplayTimeRemaining; @end diff --git a/Sources/uYouPlus.xm b/Sources/uYouPlus.xm index aa3774c..c664731 100644 --- a/Sources/uYouPlus.xm +++ b/Sources/uYouPlus.xm @@ -971,14 +971,18 @@ NSData *cellDividerData; %end // Always use remaining time in the video player - @bhackel -%hook YTInlinePlayerBarContainerView -// Modify constructor to enable the feature when it is done -- (instancetype)init { - YTInlinePlayerBarContainerView *playerBar = (YTInlinePlayerBarContainerView *)%orig; - if (playerBar && IS_ENABLED(@"alwaysShowRemainingTime_enabled")) { - playerBar.shouldDisplayTimeRemaining = YES; +%hook YTPlayerBarController +// When a new video is played, enable time remaining flag +- (void)setActiveSingleVideo:(id)arg1 { + %orig; + if (IS_ENABLED(@"alwaysShowRemainingTime_enabled")) { + // Get the player bar view + YTInlinePlayerBarContainerView *playerBar = self.playerBar; + if (playerBar) { + // Enable the time remaining flag + playerBar.shouldDisplayTimeRemaining = YES; + } } - return playerBar; } %end