2018-07-13 15:50:49 +02:00
|
|
|
//
|
2019-02-06 06:36:03 +01:00
|
|
|
// Copyright (c) 2019 Open Whisper Systems. All rights reserved.
|
2018-07-13 15:50:49 +02:00
|
|
|
//
|
|
|
|
|
2020-11-11 06:30:54 +01:00
|
|
|
#import <SignalUtilitiesKit/UIColor+OWS.h>
|
2018-07-13 15:50:49 +02:00
|
|
|
#import <UIKit/UIKit.h>
|
|
|
|
|
|
|
|
NS_ASSUME_NONNULL_BEGIN
|
|
|
|
|
2018-07-23 21:03:07 +02:00
|
|
|
extern NSString *const ThemeDidChangeNotification;
|
2018-07-13 15:50:49 +02:00
|
|
|
|
|
|
|
@interface Theme : NSObject
|
|
|
|
|
|
|
|
- (instancetype)init NS_UNAVAILABLE;
|
|
|
|
|
2018-10-09 15:09:03 +02:00
|
|
|
@property (class, readonly, atomic) BOOL isDarkThemeEnabled;
|
2018-08-08 15:29:23 +02:00
|
|
|
|
2018-07-13 15:50:49 +02:00
|
|
|
+ (void)setIsDarkThemeEnabled:(BOOL)value;
|
|
|
|
|
|
|
|
@property (class, readonly, nonatomic) UIColor *backgroundColor;
|
|
|
|
@property (class, readonly, nonatomic) UIColor *primaryColor;
|
|
|
|
@property (class, readonly, nonatomic) UIColor *secondaryColor;
|
|
|
|
@property (class, readonly, nonatomic) UIColor *boldColor;
|
2018-08-08 15:47:54 +02:00
|
|
|
@property (class, readonly, nonatomic) UIColor *offBackgroundColor;
|
2018-08-08 17:07:05 +02:00
|
|
|
@property (class, readonly, nonatomic) UIColor *middleGrayColor;
|
2018-08-16 17:31:55 +02:00
|
|
|
@property (class, readonly, nonatomic) UIColor *placeholderColor;
|
|
|
|
@property (class, readonly, nonatomic) UIColor *hairlineColor;
|
2018-07-13 15:50:49 +02:00
|
|
|
|
|
|
|
#pragma mark - Global App Colors
|
|
|
|
|
|
|
|
@property (class, readonly, nonatomic) UIColor *navbarBackgroundColor;
|
|
|
|
@property (class, readonly, nonatomic) UIColor *navbarIconColor;
|
|
|
|
@property (class, readonly, nonatomic) UIColor *navbarTitleColor;
|
|
|
|
|
|
|
|
@property (class, readonly, nonatomic) UIColor *toolbarBackgroundColor;
|
|
|
|
|
2018-07-23 21:36:39 +02:00
|
|
|
@property (class, readonly, nonatomic) UIColor *conversationButtonBackgroundColor;
|
|
|
|
|
|
|
|
@property (class, readonly, nonatomic) UIColor *cellSelectedColor;
|
2018-08-10 00:43:25 +02:00
|
|
|
@property (class, readonly, nonatomic) UIColor *cellSeparatorColor;
|
2018-07-20 21:47:35 +02:00
|
|
|
|
2018-11-26 00:49:30 +01:00
|
|
|
// In some contexts, e.g. media viewing/sending, we always use "dark theme" UI regardless of the
|
|
|
|
// users chosen theme.
|
|
|
|
@property (class, readonly, nonatomic) UIColor *darkThemeNavbarIconColor;
|
|
|
|
@property (class, readonly, nonatomic) UIColor *darkThemeNavbarBackgroundColor;
|
2018-11-15 17:23:32 +01:00
|
|
|
@property (class, readonly, nonatomic) UIColor *darkThemeBackgroundColor;
|
|
|
|
@property (class, readonly, nonatomic) UIColor *darkThemePrimaryColor;
|
2018-11-26 00:49:30 +01:00
|
|
|
@property (class, readonly, nonatomic) UIBlurEffect *darkThemeBarBlurEffect;
|
2018-11-15 03:01:21 +01:00
|
|
|
@property (class, readonly, nonatomic) UIColor *galleryHighlightColor;
|
2018-11-14 17:09:24 +01:00
|
|
|
|
2018-07-20 21:47:35 +02:00
|
|
|
#pragma mark -
|
|
|
|
|
2018-08-21 22:56:21 +02:00
|
|
|
@property (class, readonly, nonatomic) UIBarStyle barStyle;
|
2018-08-21 23:36:13 +02:00
|
|
|
@property (class, readonly, nonatomic) UIColor *searchFieldBackgroundColor;
|
2018-08-10 01:24:51 +02:00
|
|
|
@property (class, readonly, nonatomic) UIBlurEffect *barBlurEffect;
|
2018-08-19 01:43:21 +02:00
|
|
|
@property (class, readonly, nonatomic) UIKeyboardAppearance keyboardAppearance;
|
2018-12-09 00:36:27 +01:00
|
|
|
@property (class, readonly, nonatomic) UIKeyboardAppearance darkThemeKeyboardAppearance;
|
2018-07-20 21:47:35 +02:00
|
|
|
|
2018-08-10 18:36:07 +02:00
|
|
|
#pragma mark -
|
|
|
|
|
|
|
|
@property (class, readonly, nonatomic) UIColor *toastForegroundColor;
|
|
|
|
@property (class, readonly, nonatomic) UIColor *toastBackgroundColor;
|
|
|
|
|
2019-02-06 06:36:03 +01:00
|
|
|
@property (class, readonly, nonatomic) UIColor *scrollButtonBackgroundColor;
|
|
|
|
|
2018-07-13 15:50:49 +02:00
|
|
|
@end
|
|
|
|
|
|
|
|
NS_ASSUME_NONNULL_END
|