| Index: chrome/browser/browser_theme_provider.cc
|
| ===================================================================
|
| --- chrome/browser/browser_theme_provider.cc (revision 22263)
|
| +++ chrome/browser/browser_theme_provider.cc (working copy)
|
| @@ -126,6 +126,9 @@
|
| const skia::HSL BrowserThemeProvider::kDefaultTintBackgroundTab =
|
| { -1, 0.5, 0.75 };
|
|
|
| +// Saved default values.
|
| +const char* BrowserThemeProvider::kDefaultThemeID = "";
|
| +
|
| // Default display properties.
|
| static const int kDefaultDisplayPropertyNTPAlignment =
|
| BrowserThemeProvider::ALIGN_BOTTOM;
|
| @@ -369,6 +372,7 @@
|
| SaveColorData();
|
| SaveTintData();
|
| SaveDisplayPropertyData();
|
| + SaveThemeID(extension->id());
|
|
|
| NotifyThemeChanged();
|
| UserMetrics::RecordAction(L"Themes_Installed", profile_);
|
| @@ -380,6 +384,11 @@
|
| UserMetrics::RecordAction(L"Themes_Reset", profile_);
|
| }
|
|
|
| +std::string BrowserThemeProvider::GetThemeID() {
|
| + std::wstring id = profile_->GetPrefs()->GetString(prefs::kCurrentThemeID);
|
| + return WideToUTF8(id);
|
| +}
|
| +
|
| bool BrowserThemeProvider::ReadThemeFileData(
|
| int id, std::vector<unsigned char>* raw_data) {
|
| if (images_.count(id)) {
|
| @@ -776,6 +785,7 @@
|
| SaveColorData();
|
| SaveTintData();
|
| SaveDisplayPropertyData();
|
| + SaveThemeID(kDefaultThemeID);
|
| }
|
|
|
| SkBitmap* BrowserThemeProvider::GenerateBitmap(int id) {
|
| @@ -905,6 +915,10 @@
|
| }
|
| }
|
|
|
| +void BrowserThemeProvider::SaveThemeID(const std::string& id) {
|
| + profile_->GetPrefs()->SetString(prefs::kCurrentThemeID, UTF8ToWide(id));
|
| +}
|
| +
|
| void BrowserThemeProvider::NotifyThemeChanged() {
|
| // Redraw!
|
| NotificationService* service = NotificationService::current();
|
|
|