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") {
"//ios/chrome/browser/ui/orchestrator:orchestrator",
"//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_incognito",
"//ios/chrome/browser/ui/toolbar/keyboard_assist:keyboard_assist",
"//ios/chrome/browser/ui/toolbar/public",
"//ios/chrome/browser/ui/toolbar/public:feature_flags",
......
......@@ -77,9 +77,13 @@ const CGFloat kButtonTrailingSpacing = 10;
LocationBarSteadyViewColorScheme* scheme =
[[LocationBarSteadyViewColorScheme alloc] init];
scheme.fontColor = [UIColor whiteColor];
scheme.placeholderColor = [UIColor colorWithWhite:1 alpha:0.5];
scheme.trailingButtonColor = [UIColor whiteColor];
// In iOS 12, the overridePreferredInterfaceStyle API is unavailable, so
// incognito colors need to be set specifically.
// 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;
}
......
......@@ -27,7 +27,10 @@ source_set("buttons") {
deps = [
"resources:tab_toolbar_button_color",
"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_incognito",
"resources:toolbar_back",
"resources:toolbar_bookmark",
"resources:toolbar_bookmark_active",
......
......@@ -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") {
sources = [
"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") {
sources = [
"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") {
sources = [
"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 @@
case NORMAL:
return ntp_home::kNTPBackgroundColor();
case INCOGNITO:
return [UIColor colorWithWhite:kNTPBackgroundColorBrightnessIncognito
alpha:1.0];
return [UIColor colorNamed:kBackgroundDarkColor];
}
}
......@@ -58,7 +57,7 @@
case NORMAL:
return [UIColor colorNamed:kBackgroundColor];
case INCOGNITO:
return UIColorFromRGB(kIncognitoToolbarBackgroundColor);
return [UIColor colorNamed:kBackgroundDarkColor];
}
}
......@@ -75,7 +74,7 @@
case NORMAL:
return [UIColor colorNamed:@"tab_toolbar_button_color"];
case INCOGNITO:
return [UIColor whiteColor];
return [UIColor colorNamed:@"tab_toolbar_button_color_incognito"];
}
}
......@@ -93,8 +92,7 @@
return [UIColor colorNamed:@"tab_toolbar_button_color_highlighted"];
case INCOGNITO:
return [UIColor
colorWithWhite:1
alpha:kIncognitoToolbarButtonTintColorAlphaHighlighted];
colorNamed:@"tab_toolbar_button_color_highlighted_incognito"];
}
}
......@@ -111,7 +109,7 @@
case NORMAL:
return [UIColor colorNamed:@"tab_toolbar_button_halo_color"];
case INCOGNITO:
return [UIColor colorWithWhite:1 alpha:kToolbarSpotlightAlpha];
return [UIColor colorNamed:@"tab_toolbar_button_halo_color_incognito"];
}
}
......@@ -128,7 +126,7 @@
case NORMAL:
return [UIColor colorNamed:@"tab_toolbar_button_halo_color"];
case INCOGNITO:
return [UIColor colorWithWhite:1 alpha:kDimmedToolbarSpotlightAlpha];
return [UIColor colorNamed:@"tab_toolbar_button_halo_color_incognito"];
}
}
......@@ -147,10 +145,8 @@
return [[UIColor colorNamed:kTextfieldBackgroundColor]
colorWithAlphaComponent:visibilityFactor];
case INCOGNITO:
return
[UIColor colorWithWhite:1
alpha:kAdaptiveLocationBarBackgroundAlphaIncognito *
visibilityFactor];
return [[UIColor colorNamed:kTextfieldBackgroundDarkColor]
colorWithAlphaComponent:visibilityFactor];
}
}
......
......@@ -7,13 +7,17 @@ import("//build/config/ios/asset_catalog.gni")
group("resources") {
deps = [
":background_color",
":background_dark_color",
":destructive_tint_color",
":disabled_tint_color",
":scrim_background_color",
":solid_button_text_color",
":text_primary_color",
":text_primary_dark_color",
":textfield_background_color",
":textfield_background_dark_color",
":textfield_placeholder_color",
":textfield_placeholder_dark_color",
":tint_color",
]
}
......@@ -24,6 +28,12 @@ colorset("background_color") {
]
}
colorset("background_dark_color") {
sources = [
"background_dark_color.colorset/Contents.json",
]
}
colorset("destructive_tint_color") {
sources = [
"destructive_tint_color.colorset/Contents.json",
......@@ -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") {
sources = [
"textfield_placeholder_color.colorset/Contents.json",
]
}
colorset("textfield_placeholder_dark_color") {
sources = [
"textfield_placeholder_dark_color.colorset/Contents.json",
]
}
colorset("textfield_background_color") {
sources = [
"textfield_background_color.colorset/Contents.json",
]
}
colorset("textfield_background_dark_color") {
sources = [
"textfield_background_dark_color.colorset/Contents.json",
]
}
colorset("tint_color") {
sources = [
"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;
extern NSString* const kTextfieldPlaceholderColor;
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_
......@@ -17,3 +17,11 @@ NSString* const kTextPrimaryColor = @"text_primary_color";
NSString* const kTextfieldBackgroundColor = @"textfield_background_color";
NSString* const kTextfieldPlaceholderColor = @"textfield_placeholder_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