Skip to content

Commit

Permalink
[Clippy] Set titlebar colors for MS365 apps that start new documents
Browse files Browse the repository at this point in the history
This CL sets the URL matching for the MS365 titlebar color experiment to
include "app={Word,Excel,PowerPoint}" for when the file extension is not
present in the URL.

(cherry picked from commit 05ea651)

Bug: b:283028180
Change-Id: I4d075a8cacac2736f555938f316397e60109fcad
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4554559
Auto-Submit: Alan Cutter <alancutter@chromium.org>
Commit-Queue: Alan Cutter <alancutter@chromium.org>
Reviewed-by: Peter Marshall <petermarshall@chromium.org>
Cr-Original-Commit-Position: refs/heads/main@{#1148307}
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4570953
Reviewed-by: Glen Robertson <glenrob@chromium.org>
Commit-Queue: Alexander Bolodurin <alexbn@chromium.org>
Auto-Submit: Alexander Bolodurin <alexbn@chromium.org>
Cr-Commit-Position: refs/branch-heads/5790@{#124}
Cr-Branched-From: 1d71a33-refs/heads/main@{#1148114}
  • Loading branch information
alancutter authored and Chromium LUCI CQ committed May 30, 2023
1 parent 28462ef commit 2abab76
Showing 1 changed file with 26 additions and 18 deletions.
44 changes: 26 additions & 18 deletions chrome/browser/web_applications/chromeos_web_app_experiments.cc
Expand Up @@ -30,24 +30,28 @@ constexpr const char* kMicrosoftOfficeWebAppExperimentScopeExtensions[] = {
const char kOneDriveBusinessDomain[] = "sharepoint.com";

struct FallbackPageThemeColor {
const char* page_url_piece;
std::vector<std::string> page_url_pieces;
SkColor page_theme_color;
};

constexpr FallbackPageThemeColor
kMicrosoftOfficeWebAppExperimentFallbackPageThemeColors[] = {
// Word theme color.
{.page_url_piece = "file%2cdocx",
.page_theme_color = SkColorSetRGB(0x18, 0x5A, 0xBD)},

// Excel theme color.
{.page_url_piece = "file%2cxlsx",
.page_theme_color = SkColorSetRGB(0x10, 0x7C, 0x41)},

// PowerPoint theme color.
{.page_url_piece = "file%2cpptx",
.page_theme_color = SkColorSetRGB(0xC4, 0x3E, 0x1C)},
};
const std::vector<FallbackPageThemeColor>&
GetMicrosoftOfficeWebAppExperimentFallbackPageThemeColors() {
static base::NoDestructor<std::vector<FallbackPageThemeColor>>
page_theme_colours({
// Word theme color.
{.page_url_pieces = {"file%2cdocx", "app=Word"},
.page_theme_color = SkColorSetRGB(0x18, 0x5A, 0xBD)},

// Excel theme color.
{.page_url_pieces = {"file%2cxlsx", "app=Excel"},
.page_theme_color = SkColorSetRGB(0x10, 0x7C, 0x41)},

// PowerPoint theme color.
{.page_url_pieces = {"file%2cpptx", "app=PowerPoint"},
.page_theme_color = SkColorSetRGB(0xC4, 0x3E, 0x1C)},
});
return *page_theme_colours;
}

bool g_always_enabled_for_testing = false;

Expand Down Expand Up @@ -116,9 +120,13 @@ absl::optional<SkColor> ChromeOsWebAppExperiments::GetFallbackPageThemeColor(
return absl::nullopt;

for (const FallbackPageThemeColor& fallback_theme_color :
kMicrosoftOfficeWebAppExperimentFallbackPageThemeColors) {
if (base::Contains(url.spec(), fallback_theme_color.page_url_piece))
return fallback_theme_color.page_theme_color;
GetMicrosoftOfficeWebAppExperimentFallbackPageThemeColors()) {
for (const std::string& page_url_piece :
fallback_theme_color.page_url_pieces) {
if (base::Contains(url.spec(), page_url_piece)) {
return fallback_theme_color.page_theme_color;
}
}
}

return absl::nullopt;
Expand Down

0 comments on commit 2abab76

Please sign in to comment.