OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/themes/browser_theme_provider.h" | 5 #include "chrome/browser/themes/browser_theme_provider.h" |
6 | 6 |
7 #include "app/resource_bundle.h" | 7 #include "app/resource_bundle.h" |
8 #include "base/string_util.h" | 8 #include "base/string_util.h" |
9 #include "base/utf_string_conversions.h" | 9 #include "base/utf_string_conversions.h" |
10 #include "chrome/browser/extensions/extensions_service.h" | 10 #include "chrome/browser/extensions/extensions_service.h" |
(...skipping 584 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
595 void BrowserThemeProvider::SavePackName(const FilePath& pack_path) { | 595 void BrowserThemeProvider::SavePackName(const FilePath& pack_path) { |
596 profile_->GetPrefs()->SetFilePath( | 596 profile_->GetPrefs()->SetFilePath( |
597 prefs::kCurrentThemePackFilename, pack_path); | 597 prefs::kCurrentThemePackFilename, pack_path); |
598 } | 598 } |
599 | 599 |
600 void BrowserThemeProvider::SaveThemeID(const std::string& id) { | 600 void BrowserThemeProvider::SaveThemeID(const std::string& id) { |
601 profile_->GetPrefs()->SetString(prefs::kCurrentThemeID, id); | 601 profile_->GetPrefs()->SetString(prefs::kCurrentThemeID, id); |
602 } | 602 } |
603 | 603 |
604 void BrowserThemeProvider::BuildFromExtension(const Extension* extension) { | 604 void BrowserThemeProvider::BuildFromExtension(const Extension* extension) { |
605 scoped_refptr<BrowserThemePack> pack = | 605 scoped_refptr<BrowserThemePack> pack( |
606 BrowserThemePack::BuildFromExtension(extension); | 606 BrowserThemePack::BuildFromExtension(extension)); |
607 if (!pack.get()) { | 607 if (!pack.get()) { |
608 // TODO(erg): We've failed to install the theme; perhaps we should tell the | 608 // TODO(erg): We've failed to install the theme; perhaps we should tell the |
609 // user? http://crbug.com/34780 | 609 // user? http://crbug.com/34780 |
610 LOG(ERROR) << "Could not load theme."; | 610 LOG(ERROR) << "Could not load theme."; |
611 return; | 611 return; |
612 } | 612 } |
613 | 613 |
614 // Write the packed file to disk. | 614 // Write the packed file to disk. |
615 FilePath pack_path = extension->path().Append(chrome::kThemePackFilename); | 615 FilePath pack_path = extension->path().Append(chrome::kThemePackFilename); |
616 BrowserThread::PostTask(BrowserThread::FILE, FROM_HERE, | 616 BrowserThread::PostTask(BrowserThread::FILE, FROM_HERE, |
617 new WritePackToDiskTask(pack, pack_path)); | 617 new WritePackToDiskTask(pack, pack_path)); |
618 | 618 |
619 SavePackName(pack_path); | 619 SavePackName(pack_path); |
620 theme_pack_ = pack; | 620 theme_pack_ = pack; |
621 } | 621 } |
622 | 622 |
623 void BrowserThemeProvider::OnInfobarDisplayed() { | 623 void BrowserThemeProvider::OnInfobarDisplayed() { |
624 number_of_infobars_++; | 624 number_of_infobars_++; |
625 } | 625 } |
626 | 626 |
627 void BrowserThemeProvider::OnInfobarDestroyed() { | 627 void BrowserThemeProvider::OnInfobarDestroyed() { |
628 number_of_infobars_--; | 628 number_of_infobars_--; |
629 | 629 |
630 if (number_of_infobars_ == 0) | 630 if (number_of_infobars_ == 0) |
631 RemoveUnusedThemes(); | 631 RemoveUnusedThemes(); |
632 } | 632 } |
OLD | NEW |