#include "chrome/browser/ui/webui/cr_components/theme_color_picker/theme_color_picker_handler.h"
#include <limits>
#include "base/containers/fixed_flat_map.h"
#include "chrome/browser/new_tab_page/chrome_colors/generated_colors_info.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/themes/theme_service.h"
#include "chrome/browser/themes/theme_service_factory.h"
#include "chrome/browser/ui/color/chrome_color_id.h"
#include "chrome/browser/ui/webui/cr_components/theme_color_picker/customize_chrome_colors.h"
#include "chrome/common/pref_names.h"
#include "chrome/common/themes/autogenerated_theme_util.h"
#include "components/prefs/pref_registry_simple.h"
#include "components/prefs/pref_service.h"
#include "components/prefs/scoped_user_pref_update.h"
#include "content/public/browser/web_contents.h"
#include "mojo/public/cpp/bindings/pending_remote.h"
#include "ui/base/l10n/l10n_util.h"
#include "ui/base/mojom/themes.mojom.h"
#include "ui/color/color_provider.h"
#include "ui/color/color_provider_key.h"
#include "ui/color/dynamic_color/palette_factory.h"
#include "ui/native_theme/native_theme.h"
namespace {
ui::ColorProviderKey::SchemeVariant GetSchemeVariant(
ui::mojom::BrowserColorVariant color_variant) { … }
theme_color_picker::mojom::ChromeColorPtr CreateDynamicChromeColor(
DynamicColorInfo color_info,
bool is_dark_mode) { … }
}
ThemeColorPickerHandler::ThemeColorPickerHandler(
mojo::PendingReceiver<theme_color_picker::mojom::ThemeColorPickerHandler>
pending_handler,
mojo::PendingRemote<theme_color_picker::mojom::ThemeColorPickerClient>
pending_client,
NtpCustomBackgroundService* ntp_custom_background_service,
content::WebContents* web_contents)
: … { … }
ThemeColorPickerHandler::~ThemeColorPickerHandler() { … }
void ThemeColorPickerHandler::RegisterProfilePrefs(
PrefRegistrySimple* registry) { … }
void ThemeColorPickerHandler::SetDefaultColor() { … }
void ThemeColorPickerHandler::SetGreyDefaultColor() { … }
void ThemeColorPickerHandler::SetSeedColor(
SkColor seed_color,
ui::mojom::BrowserColorVariant variant) { … }
void ThemeColorPickerHandler::SetSeedColorFromHue(float hue) { … }
void ThemeColorPickerHandler::GetChromeColors(
bool is_dark_mode,
GetChromeColorsCallback callback) { … }
void ThemeColorPickerHandler::RemoveBackgroundImage() { … }
void ThemeColorPickerHandler::UpdateTheme() { … }
void ThemeColorPickerHandler::MaybeIncrementSeedColorChangeCount() { … }
void ThemeColorPickerHandler::OnNativeThemeUpdated(
ui::NativeTheme* observed_theme) { … }
void ThemeColorPickerHandler::OnThemeChanged() { … }
void ThemeColorPickerHandler::OnCustomBackgroundImageUpdated() { … }