LowContrastMode v1.7.0.1

Small changes
This commit is contained in:
aricloverEXTRA 2025-06-09 08:08:25 -05:00 committed by GitHub
parent 6fc403fa4b
commit 15e15f6a8c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -27,23 +27,28 @@ static UIColor *getCustomContrastColor() {
return kLowContrastColor; return kLowContrastColor;
} }
// Shared Color Hook Macro for Low Contrast Mode // Shared Color Hook Macros
#define HOOK_LCM_COLOR_METHOD(method) \ #define HOOK_LCM_COLOR_METHOD(method) \
+ (UIColor *)method { \ + (UIColor *)method { \
return lowContrastMode() ? kLowContrastColor : %orig; \ if (lowContrastMode()) { \
return kLowContrastColor; \
} \
return %orig; \
} }
// Shared Color Hook Macro for Custom Contrast Mode
#define HOOK_CCM_COLOR_METHOD(method) \ #define HOOK_CCM_COLOR_METHOD(method) \
+ (UIColor *)method { \ + (UIColor *)method { \
return customContrastMode() ? getCustomContrastColor() : %orig; \ if (customContrastMode()) { \
return getCustomContrastColor(); \
} \
return %orig; \
} }
// Shared Palette Hook Macro // Shared Palette Hook Macro
#define HOOK_PALETTE_METHOD(method, alpha, color) \ #define HOOK_PALETTE_METHOD(method, alpha) \
- (UIColor *)method { \ - (UIColor *)method { \
if (self.pageStyle == 1) { \ if (self.pageStyle == 1) { \
UIColor *baseColor = color; \ UIColor *baseColor = lowContrastMode() ? kLowContrastColor : customContrastMode() ? getCustomContrastColor() : kDefaultTextColor; \
return alpha < 1.0 ? [baseColor colorWithAlphaComponent:alpha] : baseColor; \ return alpha < 1.0 ? [baseColor colorWithAlphaComponent:alpha] : baseColor; \
} \ } \
return %orig; \ return %orig; \
@ -66,25 +71,24 @@ HOOK_LCM_COLOR_METHOD(quaternaryLabelColor)
%end %end
%hook YTCommonColorPalette %hook YTCommonColorPalette
HOOK_PALETTE_METHOD(textPrimary, 1.0, kLowContrastColor) HOOK_PALETTE_METHOD(textPrimary, 1.0)
HOOK_PALETTE_METHOD(textSecondary, 1.0, kLowContrastColor) HOOK_PALETTE_METHOD(textSecondary, 1.0)
HOOK_PALETTE_METHOD(overlayTextPrimary, 1.0, kLowContrastColor) HOOK_PALETTE_METHOD(overlayTextPrimary, 1.0)
HOOK_PALETTE_METHOD(overlayTextSecondary, 1.0, kLowContrastColor) HOOK_PALETTE_METHOD(overlayTextSecondary, 1.0)
HOOK_PALETTE_METHOD(iconActive, 1.0, kLowContrastColor) HOOK_PALETTE_METHOD(iconActive, 1.0)
HOOK_PALETTE_METHOD(iconActiveOther, 1.0, kLowContrastColor) HOOK_PALETTE_METHOD(iconActiveOther, 1.0)
HOOK_PALETTE_METHOD(brandIconActive, 1.0, kLowContrastColor) HOOK_PALETTE_METHOD(brandIconActive, 1.0)
HOOK_PALETTE_METHOD(staticBrandWhite, 1.0, kLowContrastColor) HOOK_PALETTE_METHOD(staticBrandWhite, 1.0)
HOOK_PALETTE_METHOD(overlayIconActiveOther, 1.0, kLowContrastColor) HOOK_PALETTE_METHOD(overlayIconActiveOther, 1.0)
HOOK_PALETTE_METHOD(overlayIconInactive, 0.7, kLowContrastColor) HOOK_PALETTE_METHOD(overlayIconInactive, 0.7)
HOOK_PALETTE_METHOD(overlayIconDisabled, 0.3, kLowContrastColor) HOOK_PALETTE_METHOD(overlayIconDisabled, 0.3)
HOOK_PALETTE_METHOD(overlayFilledButtonActive, 0.2, kLowContrastColor) HOOK_PALETTE_METHOD(overlayFilledButtonActive, 0.2)
%end %end
%hook YTColor %hook YTColor
+ (BOOL)darkerPaletteTextColorEnabled { + (BOOL)darkerPaletteTextColorEnabled {
return NO; return NO;
} }
+ (UIColor *)white1 { return kDefaultTextColor; } + (UIColor *)white1 { return kDefaultTextColor; }
+ (UIColor *)white2 { return kDefaultTextColor; } + (UIColor *)white2 { return kDefaultTextColor; }
+ (UIColor *)white3 { return kDefaultTextColor; } + (UIColor *)white3 { return kDefaultTextColor; }
@ -98,7 +102,6 @@ HOOK_PALETTE_METHOD(overlayFilledButtonActive, 0.2, kLowContrastColor)
- (void)layoutSubviews { - (void)layoutSubviews {
%orig; %orig;
NSArray *accessibilityLabels = @[@"connect account", @"Thanks", @"Save to playlist", @"Report"]; NSArray *accessibilityLabels = @[@"connect account", @"Thanks", @"Save to playlist", @"Report"];
for (UIView *subview in self.subviews) { for (UIView *subview in self.subviews) {
if ([accessibilityLabels containsObject:subview.accessibilityLabel]) { if ([accessibilityLabels containsObject:subview.accessibilityLabel]) {
subview.backgroundColor = kLowContrastColor; subview.backgroundColor = kLowContrastColor;
@ -168,7 +171,6 @@ HOOK_PALETTE_METHOD(overlayFilledButtonActive, 0.2, kLowContrastColor)
[[UILabel appearance] setTextColor:kDefaultTextColor]; [[UILabel appearance] setTextColor:kDefaultTextColor];
} }
} }
- (void)setTextColor:(UIColor *)textColor { - (void)setTextColor:(UIColor *)textColor {
%orig(kDefaultTextColor); %orig(kDefaultTextColor);
} }
@ -181,7 +183,6 @@ HOOK_PALETTE_METHOD(overlayFilledButtonActive, 0.2, kLowContrastColor)
%end %end
%hook UITextView %hook UITextView
- (void)setTextColor elek
- (void)setTextColor:(UIColor *)textColor { - (void)setTextColor:(UIColor *)textColor {
%orig(kDefaultTextColor); %orig(kDefaultTextColor);
} }
@ -280,25 +281,24 @@ HOOK_CCM_COLOR_METHOD(quaternaryLabelColor)
%end %end
%hook YTCommonColorPalette %hook YTCommonColorPalette
HOOK_PALETTE_METHOD(textPrimary, 1.0, getCustomContrastColor()) HOOK_PALETTE_METHOD(textPrimary, 1.0)
HOOK_PALETTE_METHOD(textSecondary, 1.0, getCustomContrastColor()) HOOK_PALETTE_METHOD(textSecondary, 1.0)
HOOK_PALETTE_METHOD(overlayTextPrimary, 1.0, getCustomContrastColor()) HOOK_PALETTE_METHOD(overlayTextPrimary, 1.0)
HOOK_PALETTE_METHOD(overlayTextSecondary, 1.0, getCustomContrastColor()) HOOK_PALETTE_METHOD(overlayTextSecondary, 1.0)
HOOK_PALETTE_METHOD(iconActive, 1.0, getCustomContrastColor()) HOOK_PALETTE_METHOD(iconActive, 1.0)
HOOK_PALETTE_METHOD(iconActiveOther, 1.0, getCustomContrastColor()) HOOK_PALETTE_METHOD(iconActiveOther, 1.0)
HOOK_PALETTE_METHOD(brandIconActive, 1.0, getCustomContrastColor()) HOOK_PALETTE_METHOD(brandIconActive, 1.0)
HOOK_PALETTE_METHOD(staticBrandWhite, 1.0, getCustomContrastColor()) HOOK_PALETTE_METHOD(staticBrandWhite, 1.0)
HOOK_PALETTE_METHOD(overlayIconActiveOther, 1.0, getCustomContrastColor()) HOOK_PALETTE_METHOD(overlayIconActiveOther, 1.0)
HOOK_PALETTE_METHOD(overlayIconInactive, 0.7, getCustomContrastColor()) HOOK_PALETTE_METHOD(overlayIconInactive, 0.7)
HOOK_PALETTE_METHOD(overlayIconDisabled, 0.3, getCustomContrastColor()) HOOK_PALETTE_METHOD(overlayIconDisabled, 0.3)
HOOK_PALETTE_METHOD(overlayFilledButtonActive, 0.2, getCustomContrastColor()) HOOK_PALETTE_METHOD(overlayFilledButtonActive, 0.2)
%end %end
%hook YTColor %hook YTColor
+ (BOOL)darkerPaletteTextColorEnabled { + (BOOL)darkerPaletteTextColorEnabled {
return NO; return NO;
} }
+ (UIColor *)white1 { return kDefaultTextColor; } + (UIColor *)white1 { return kDefaultTextColor; }
+ (UIColor *)white2 { return kDefaultTextColor; } + (UIColor *)white2 { return kDefaultTextColor; }
+ (UIColor *)white3 { return kDefaultTextColor; } + (UIColor *)white3 { return kDefaultTextColor; }
@ -312,7 +312,6 @@ HOOK_PALETTE_METHOD(overlayFilledButtonActive, 0.2, getCustomContrastColor())
- (void)layoutSubviews { - (void)layoutSubviews {
%orig; %orig;
NSArray *accessibilityLabels = @[@"connect account", @"Thanks", @"Save to playlist", @"Report"]; NSArray *accessibilityLabels = @[@"connect account", @"Thanks", @"Save to playlist", @"Report"];
for (UIView *subview in self.subviews) { for (UIView *subview in self.subviews) {
if ([accessibilityLabels containsObject:subview.accessibilityLabel]) { if ([accessibilityLabels containsObject:subview.accessibilityLabel]) {
subview.backgroundColor = getCustomContrastColor(); subview.backgroundColor = getCustomContrastColor();
@ -382,7 +381,6 @@ HOOK_PALETTE_METHOD(overlayFilledButtonActive, 0.2, getCustomContrastColor())
[[UILabel appearance] setTextColor:kDefaultTextColor]; [[UILabel appearance] setTextColor:kDefaultTextColor];
} }
} }
- (void)setTextColor:(UIColor *)textColor { - (void)setTextColor:(UIColor *)textColor {
%orig(kDefaultTextColor); %orig(kDefaultTextColor);
} }
@ -430,7 +428,7 @@ HOOK_PALETTE_METHOD(overlayFilledButtonActive, 0.2, getCustomContrastColor())
%hook NSAttributedString %hook NSAttributedString
- (instancetype)initWithString:(NSString *)str attributes:(NSDictionary<NSAttributedStringKey, id> *)attrs { - (instancetype)initWithString:(NSString *)str attributes:(NSDictionary<NSAttributedStringKey, id> *)attrs {
NSMutableDictionary *modifiedAttributes = [NSMutableDictionary dictionaryWithDictionary:attributes]; NSMutableDictionary *modifiedAttributes = [NSMutableDictionary dictionaryWithDictionary:attrs];
[modifiedAttributes setObject:kDefaultTextColor forKey:NSForegroundColorAttributeName]; [modifiedAttributes setObject:kDefaultTextColor forKey:NSForegroundColorAttributeName];
return %orig(str, modifiedAttributes); return %orig(str, modifiedAttributes);
} }