mirror of
				https://github.com/SoPat712/YTLitePlus.git
				synced 2025-10-30 20:34:04 -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
 | 
