Commit 56119ae9 authored by Robbie Gibson's avatar Robbie Gibson Committed by Commit Bot

[iOS] Support new dark mode colors in incognito toolbars on iOS 12

Essentially, for each color in question, this creates a new colorset
that is only the dark mode variant of the color always. Then, if we're
running on iOS 12 and in incognito, we return that new color.

Bug: 976643
Change-Id: I14ede8cb4280af7f960d53880712d74f8e4564b5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1710539Reviewed-by: default avatarStepan Khapugin <stkhapugin@chromium.org>
Reviewed-by: default avatarGauthier Ambard <gambard@chromium.org>
Commit-Queue: Robbie Gibson <rkgibson@google.com>
Cr-Commit-Position: refs/heads/master@{#680477}
parent d85e91ca
...@@ -61,6 +61,7 @@ source_set("location_bar") { ...@@ -61,6 +61,7 @@ source_set("location_bar") {
"//ios/chrome/browser/ui/orchestrator:orchestrator", "//ios/chrome/browser/ui/orchestrator:orchestrator",
"//ios/chrome/browser/ui/toolbar/buttons", "//ios/chrome/browser/ui/toolbar/buttons",
"//ios/chrome/browser/ui/toolbar/buttons/resources:tab_toolbar_button_color", "//ios/chrome/browser/ui/toolbar/buttons/resources:tab_toolbar_button_color",
"//ios/chrome/browser/ui/toolbar/buttons/resources:tab_toolbar_button_color_incognito",
"//ios/chrome/browser/ui/toolbar/keyboard_assist:keyboard_assist", "//ios/chrome/browser/ui/toolbar/keyboard_assist:keyboard_assist",
"//ios/chrome/browser/ui/toolbar/public", "//ios/chrome/browser/ui/toolbar/public",
"//ios/chrome/browser/ui/toolbar/public:feature_flags", "//ios/chrome/browser/ui/toolbar/public:feature_flags",
......
...@@ -77,9 +77,13 @@ const CGFloat kButtonTrailingSpacing = 10; ...@@ -77,9 +77,13 @@ const CGFloat kButtonTrailingSpacing = 10;
LocationBarSteadyViewColorScheme* scheme = LocationBarSteadyViewColorScheme* scheme =
[[LocationBarSteadyViewColorScheme alloc] init]; [[LocationBarSteadyViewColorScheme alloc] init];
scheme.fontColor = [UIColor whiteColor]; // In iOS 12, the overridePreferredInterfaceStyle API is unavailable, so
scheme.placeholderColor = [UIColor colorWithWhite:1 alpha:0.5]; // incognito colors need to be set specifically.
scheme.trailingButtonColor = [UIColor whiteColor]; // TODO(crbug.com/981889): Clean up after iOS 12 support is dropped.
scheme.fontColor = [UIColor colorNamed:kTextPrimaryDarkColor];
scheme.placeholderColor = [UIColor colorNamed:kTextfieldPlaceholderDarkColor];
scheme.trailingButtonColor =
[UIColor colorNamed:@"tab_toolbar_button_color_incognito"];
return scheme; return scheme;
} }
......
...@@ -27,7 +27,10 @@ source_set("buttons") { ...@@ -27,7 +27,10 @@ source_set("buttons") {
deps = [ deps = [
"resources:tab_toolbar_button_color", "resources:tab_toolbar_button_color",
"resources:tab_toolbar_button_color_highlighted", "resources:tab_toolbar_button_color_highlighted",
"resources:tab_toolbar_button_color_highlighted_incognito",
"resources:tab_toolbar_button_color_incognito",
"resources:tab_toolbar_button_halo_color", "resources:tab_toolbar_button_halo_color",
"resources:tab_toolbar_button_halo_color_incognito",
"resources:toolbar_back", "resources:toolbar_back",
"resources:toolbar_bookmark", "resources:toolbar_bookmark",
"resources:toolbar_bookmark_active", "resources:toolbar_bookmark_active",
......
...@@ -10,18 +10,36 @@ colorset("tab_toolbar_button_color") { ...@@ -10,18 +10,36 @@ colorset("tab_toolbar_button_color") {
] ]
} }
colorset("tab_toolbar_button_color_incognito") {
sources = [
"tab_toolbar_button_color_incognito.colorset/Contents.json",
]
}
colorset("tab_toolbar_button_color_highlighted") { colorset("tab_toolbar_button_color_highlighted") {
sources = [ sources = [
"tab_toolbar_button_color_highlighted.colorset/Contents.json", "tab_toolbar_button_color_highlighted.colorset/Contents.json",
] ]
} }
colorset("tab_toolbar_button_color_highlighted_incognito") {
sources = [
"tab_toolbar_button_color_highlighted_incognito.colorset/Contents.json",
]
}
colorset("tab_toolbar_button_halo_color") { colorset("tab_toolbar_button_halo_color") {
sources = [ sources = [
"tab_toolbar_button_halo_color.colorset/Contents.json", "tab_toolbar_button_halo_color.colorset/Contents.json",
] ]
} }
colorset("tab_toolbar_button_halo_color_incognito") {
sources = [
"tab_toolbar_button_halo_color_incognito.colorset/Contents.json",
]
}
imageset("toolbar_new_tab_page") { imageset("toolbar_new_tab_page") {
sources = [ sources = [
"toolbar_new_tab_page.imageset/Contents.json", "toolbar_new_tab_page.imageset/Contents.json",
......
{
"info" : {
"version" : 1,
"author" : "xcode"
},
"colors" : [
{
"idiom" : "universal",
"color" : {
"color-space" : "display-p3",
"components" : {
"red" : "0x7D",
"alpha" : "1.000",
"blue" : "0x82",
"green" : "0x7F"
}
}
}
]
}
{
"info" : {
"version" : 1,
"author" : "xcode"
},
"colors" : [
{
"idiom" : "universal",
"color" : {
"color-space" : "display-p3",
"components" : {
"red" : "0xE8",
"alpha" : "1.000",
"blue" : "0xED",
"green" : "0xEA"
}
}
}
]
}
{
"info" : {
"version" : 1,
"author" : "xcode"
},
"colors" : [
{
"idiom" : "universal",
"color" : {
"color-space" : "display-p3",
"components" : {
"red" : "0x5F",
"alpha" : "1.000",
"blue" : "0x67",
"green" : "0x63"
}
}
}
]
}
...@@ -40,8 +40,7 @@ ...@@ -40,8 +40,7 @@
case NORMAL: case NORMAL:
return ntp_home::kNTPBackgroundColor(); return ntp_home::kNTPBackgroundColor();
case INCOGNITO: case INCOGNITO:
return [UIColor colorWithWhite:kNTPBackgroundColorBrightnessIncognito return [UIColor colorNamed:kBackgroundDarkColor];
alpha:1.0];
} }
} }
...@@ -58,7 +57,7 @@ ...@@ -58,7 +57,7 @@
case NORMAL: case NORMAL:
return [UIColor colorNamed:kBackgroundColor]; return [UIColor colorNamed:kBackgroundColor];
case INCOGNITO: case INCOGNITO:
return UIColorFromRGB(kIncognitoToolbarBackgroundColor); return [UIColor colorNamed:kBackgroundDarkColor];
} }
} }
...@@ -75,7 +74,7 @@ ...@@ -75,7 +74,7 @@
case NORMAL: case NORMAL:
return [UIColor colorNamed:@"tab_toolbar_button_color"]; return [UIColor colorNamed:@"tab_toolbar_button_color"];
case INCOGNITO: case INCOGNITO:
return [UIColor whiteColor]; return [UIColor colorNamed:@"tab_toolbar_button_color_incognito"];
} }
} }
...@@ -93,8 +92,7 @@ ...@@ -93,8 +92,7 @@
return [UIColor colorNamed:@"tab_toolbar_button_color_highlighted"]; return [UIColor colorNamed:@"tab_toolbar_button_color_highlighted"];
case INCOGNITO: case INCOGNITO:
return [UIColor return [UIColor
colorWithWhite:1 colorNamed:@"tab_toolbar_button_color_highlighted_incognito"];
alpha:kIncognitoToolbarButtonTintColorAlphaHighlighted];
} }
} }
...@@ -111,7 +109,7 @@ ...@@ -111,7 +109,7 @@
case NORMAL: case NORMAL:
return [UIColor colorNamed:@"tab_toolbar_button_halo_color"]; return [UIColor colorNamed:@"tab_toolbar_button_halo_color"];
case INCOGNITO: case INCOGNITO:
return [UIColor colorWithWhite:1 alpha:kToolbarSpotlightAlpha]; return [UIColor colorNamed:@"tab_toolbar_button_halo_color_incognito"];
} }
} }
...@@ -128,7 +126,7 @@ ...@@ -128,7 +126,7 @@
case NORMAL: case NORMAL:
return [UIColor colorNamed:@"tab_toolbar_button_halo_color"]; return [UIColor colorNamed:@"tab_toolbar_button_halo_color"];
case INCOGNITO: case INCOGNITO:
return [UIColor colorWithWhite:1 alpha:kDimmedToolbarSpotlightAlpha]; return [UIColor colorNamed:@"tab_toolbar_button_halo_color_incognito"];
} }
} }
...@@ -147,10 +145,8 @@ ...@@ -147,10 +145,8 @@
return [[UIColor colorNamed:kTextfieldBackgroundColor] return [[UIColor colorNamed:kTextfieldBackgroundColor]
colorWithAlphaComponent:visibilityFactor]; colorWithAlphaComponent:visibilityFactor];
case INCOGNITO: case INCOGNITO:
return return [[UIColor colorNamed:kTextfieldBackgroundDarkColor]
[UIColor colorWithWhite:1 colorWithAlphaComponent:visibilityFactor];
alpha:kAdaptiveLocationBarBackgroundAlphaIncognito *
visibilityFactor];
} }
} }
......
...@@ -7,13 +7,17 @@ import("//build/config/ios/asset_catalog.gni") ...@@ -7,13 +7,17 @@ import("//build/config/ios/asset_catalog.gni")
group("resources") { group("resources") {
deps = [ deps = [
":background_color", ":background_color",
":background_dark_color",
":destructive_tint_color", ":destructive_tint_color",
":disabled_tint_color", ":disabled_tint_color",
":scrim_background_color", ":scrim_background_color",
":solid_button_text_color", ":solid_button_text_color",
":text_primary_color", ":text_primary_color",
":text_primary_dark_color",
":textfield_background_color", ":textfield_background_color",
":textfield_background_dark_color",
":textfield_placeholder_color", ":textfield_placeholder_color",
":textfield_placeholder_dark_color",
":tint_color", ":tint_color",
] ]
} }
...@@ -24,6 +28,12 @@ colorset("background_color") { ...@@ -24,6 +28,12 @@ colorset("background_color") {
] ]
} }
colorset("background_dark_color") {
sources = [
"background_dark_color.colorset/Contents.json",
]
}
colorset("destructive_tint_color") { colorset("destructive_tint_color") {
sources = [ sources = [
"destructive_tint_color.colorset/Contents.json", "destructive_tint_color.colorset/Contents.json",
...@@ -54,18 +64,36 @@ colorset("text_primary_color") { ...@@ -54,18 +64,36 @@ colorset("text_primary_color") {
] ]
} }
colorset("text_primary_dark_color") {
sources = [
"text_primary_dark_color.colorset/Contents.json",
]
}
colorset("textfield_placeholder_color") { colorset("textfield_placeholder_color") {
sources = [ sources = [
"textfield_placeholder_color.colorset/Contents.json", "textfield_placeholder_color.colorset/Contents.json",
] ]
} }
colorset("textfield_placeholder_dark_color") {
sources = [
"textfield_placeholder_dark_color.colorset/Contents.json",
]
}
colorset("textfield_background_color") { colorset("textfield_background_color") {
sources = [ sources = [
"textfield_background_color.colorset/Contents.json", "textfield_background_color.colorset/Contents.json",
] ]
} }
colorset("textfield_background_dark_color") {
sources = [
"textfield_background_dark_color.colorset/Contents.json",
]
}
colorset("tint_color") { colorset("tint_color") {
sources = [ sources = [
"tint_color.colorset/Contents.json", "tint_color.colorset/Contents.json",
......
{
"info" : {
"version" : 1,
"author" : "xcode"
},
"colors" : [
{
"idiom" : "universal",
"color" : {
"color-space" : "display-p3",
"components" : {
"red" : "0.208",
"alpha" : "1.000",
"blue" : "0.227",
"green" : "0.216"
}
}
}
]
}
{
"info" : {
"version" : 1,
"author" : "xcode"
},
"colors" : [
{
"idiom" : "universal",
"color" : {
"color-space" : "display-p3",
"components" : {
"red" : "0xE8",
"alpha" : "1.000",
"blue" : "0xED",
"green" : "0xEA"
}
}
}
]
}
{
"info" : {
"version" : 1,
"author" : "xcode"
},
"colors" : [
{
"idiom" : "universal",
"color" : {
"color-space" : "display-p3",
"components" : {
"red" : "0x5F",
"alpha" : "1.000",
"blue" : "0x67",
"green" : "0x63"
}
}
}
]
}
{
"info" : {
"version" : 1,
"author" : "xcode"
},
"colors" : [
{
"idiom" : "universal",
"color" : {
"color-space" : "display-p3",
"components" : {
"red" : "0xBD",
"alpha" : "1.000",
"blue" : "0xC5",
"green" : "0xC1"
}
}
}
]
}
...@@ -17,4 +17,13 @@ extern NSString* const kTextfieldBackgroundColor; ...@@ -17,4 +17,13 @@ extern NSString* const kTextfieldBackgroundColor;
extern NSString* const kTextfieldPlaceholderColor; extern NSString* const kTextfieldPlaceholderColor;
extern NSString* const kTintColor; extern NSString* const kTintColor;
// Temporary colors for iOS 12. Because overridePreferredInterfaceStyle isn't
// available in iOS 12, any views that should always be dark (e.g. incognito)
// need to use colorsets that always use the dark variant.
// TODO(crbug.com/981889): Clean up after iOS 12 support is dropped.
extern NSString* const kBackgroundDarkColor;
extern NSString* const kTextPrimaryDarkColor;
extern NSString* const kTextfieldBackgroundDarkColor;
extern NSString* const kTextfieldPlaceholderDarkColor;
#endif // IOS_CHROME_COMMON_COLORS_SEMANTIC_COLOR_NAMES_H_ #endif // IOS_CHROME_COMMON_COLORS_SEMANTIC_COLOR_NAMES_H_
...@@ -17,3 +17,11 @@ NSString* const kTextPrimaryColor = @"text_primary_color"; ...@@ -17,3 +17,11 @@ NSString* const kTextPrimaryColor = @"text_primary_color";
NSString* const kTextfieldBackgroundColor = @"textfield_background_color"; NSString* const kTextfieldBackgroundColor = @"textfield_background_color";
NSString* const kTextfieldPlaceholderColor = @"textfield_placeholder_color"; NSString* const kTextfieldPlaceholderColor = @"textfield_placeholder_color";
NSString* const kTintColor = @"tint_color"; NSString* const kTintColor = @"tint_color";
// Temporary for iOS 12
NSString* const kBackgroundDarkColor = @"background_dark_color";
NSString* const kTextPrimaryDarkColor = @"text_primary_dark_color";
NSString* const kTextfieldBackgroundDarkColor =
@"textfield_background_dark_color";
NSString* const kTextfieldPlaceholderDarkColor =
@"textfield_placeholder_dark_color";
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment