mirror of
https://github.com/SoPat712/YTLitePlus.git
synced 2025-10-30 12:23:58 -04:00
137 lines
3.4 KiB
Objective-C
137 lines
3.4 KiB
Objective-C
//
|
|
// FLEXColor.m
|
|
// FLEX
|
|
//
|
|
// Created by Benny Wong on 6/18/19.
|
|
// Copyright © 2020 FLEX Team. All rights reserved.
|
|
//
|
|
|
|
#import "FLEXColor.h"
|
|
#import "FLEXUtility.h"
|
|
|
|
#define FLEXDynamicColor(dynamic, static) ({ \
|
|
UIColor *c; \
|
|
if (@available(iOS 13.0, *)) { \
|
|
c = [UIColor dynamic]; \
|
|
} else { \
|
|
c = [UIColor static]; \
|
|
} \
|
|
c; \
|
|
});
|
|
|
|
@implementation FLEXColor
|
|
|
|
#pragma mark - Background Colors
|
|
|
|
+ (UIColor *)primaryBackgroundColor {
|
|
return FLEXDynamicColor(systemBackgroundColor, whiteColor);
|
|
}
|
|
|
|
+ (UIColor *)primaryBackgroundColorWithAlpha:(CGFloat)alpha {
|
|
return [[self primaryBackgroundColor] colorWithAlphaComponent:alpha];
|
|
}
|
|
|
|
+ (UIColor *)secondaryBackgroundColor {
|
|
return FLEXDynamicColor(
|
|
secondarySystemBackgroundColor,
|
|
colorWithHue:2.0/3.0 saturation:0.02 brightness:0.97 alpha:1
|
|
);
|
|
}
|
|
|
|
+ (UIColor *)secondaryBackgroundColorWithAlpha:(CGFloat)alpha {
|
|
return [[self secondaryBackgroundColor] colorWithAlphaComponent:alpha];
|
|
}
|
|
|
|
+ (UIColor *)tertiaryBackgroundColor {
|
|
// All the background/fill colors are varying shades
|
|
// of white and black with really low alpha levels.
|
|
// We use systemGray4Color instead to avoid alpha issues.
|
|
return FLEXDynamicColor(systemGray4Color, lightGrayColor);
|
|
}
|
|
|
|
+ (UIColor *)tertiaryBackgroundColorWithAlpha:(CGFloat)alpha {
|
|
return [[self tertiaryBackgroundColor] colorWithAlphaComponent:alpha];
|
|
}
|
|
|
|
+ (UIColor *)groupedBackgroundColor {
|
|
return FLEXDynamicColor(
|
|
systemGroupedBackgroundColor,
|
|
colorWithHue:2.0/3.0 saturation:0.02 brightness:0.97 alpha:1
|
|
);
|
|
}
|
|
|
|
+ (UIColor *)groupedBackgroundColorWithAlpha:(CGFloat)alpha {
|
|
return [[self groupedBackgroundColor] colorWithAlphaComponent:alpha];
|
|
}
|
|
|
|
+ (UIColor *)secondaryGroupedBackgroundColor {
|
|
return FLEXDynamicColor(secondarySystemGroupedBackgroundColor, whiteColor);
|
|
}
|
|
|
|
+ (UIColor *)secondaryGroupedBackgroundColorWithAlpha:(CGFloat)alpha {
|
|
return [[self secondaryGroupedBackgroundColor] colorWithAlphaComponent:alpha];
|
|
}
|
|
|
|
#pragma mark - Text colors
|
|
|
|
+ (UIColor *)primaryTextColor {
|
|
return FLEXDynamicColor(labelColor, blackColor);
|
|
}
|
|
|
|
+ (UIColor *)deemphasizedTextColor {
|
|
return FLEXDynamicColor(secondaryLabelColor, lightGrayColor);
|
|
}
|
|
|
|
#pragma mark - UI Element Colors
|
|
|
|
+ (UIColor *)tintColor {
|
|
#if FLEX_AT_LEAST_IOS13_SDK
|
|
if (@available(iOS 13.0, *)) {
|
|
return UIColor.systemBlueColor;
|
|
} else {
|
|
return UIApplication.sharedApplication.keyWindow.tintColor;
|
|
}
|
|
#else
|
|
return UIApplication.sharedApplication.keyWindow.tintColor;
|
|
#endif
|
|
}
|
|
|
|
+ (UIColor *)scrollViewBackgroundColor {
|
|
return FLEXDynamicColor(
|
|
systemGroupedBackgroundColor,
|
|
colorWithHue:2.0/3.0 saturation:0.02 brightness:0.95 alpha:1
|
|
);
|
|
}
|
|
|
|
+ (UIColor *)iconColor {
|
|
return FLEXDynamicColor(labelColor, blackColor);
|
|
}
|
|
|
|
+ (UIColor *)borderColor {
|
|
return [self primaryBackgroundColor];
|
|
}
|
|
|
|
+ (UIColor *)toolbarItemHighlightedColor {
|
|
return FLEXDynamicColor(
|
|
quaternaryLabelColor,
|
|
colorWithHue:2.0/3.0 saturation:0.1 brightness:0.25 alpha:0.6
|
|
);
|
|
}
|
|
|
|
+ (UIColor *)toolbarItemSelectedColor {
|
|
return FLEXDynamicColor(
|
|
secondaryLabelColor,
|
|
colorWithHue:2.0/3.0 saturation:0.1 brightness:0.25 alpha:0.68
|
|
);
|
|
}
|
|
|
|
+ (UIColor *)hairlineColor {
|
|
return FLEXDynamicColor(systemGray3Color, colorWithWhite:0.75 alpha:1);
|
|
}
|
|
|
|
+ (UIColor *)destructiveColor {
|
|
return FLEXDynamicColor(systemRedColor, redColor);
|
|
}
|
|
|
|
@end
|