diff options
author | xiyuan@chromium.org <xiyuan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-03-08 23:28:35 +0000 |
---|---|---|
committer | xiyuan@chromium.org <xiyuan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-03-08 23:28:35 +0000 |
commit | f45d2a74d471efbe10c8f4e7ea044dbb0a351156 (patch) | |
tree | 76718b30e905d966d550471f7264c94cb1a112d2 /chrome/browser/views/frame | |
parent | b9911c28e52d7d269adc2542b6198c21252bac98 (diff) | |
download | chromium_src-f45d2a74d471efbe10c8f4e7ea044dbb0a351156.zip chromium_src-f45d2a74d471efbe10c8f4e7ea044dbb0a351156.tar.gz chromium_src-f45d2a74d471efbe10c8f4e7ea044dbb0a351156.tar.bz2 |
Use web app icon as ICON_BIG for Windows
- Add a WindowDelegate::GetWindowAppIcon for BrowserView to expose an
icon to use as ICON_BIG;
- Add an app_icon_ memeber and accessor functions to TabContents;
- Update/Set the app_icon_ of TabContents when web app icon is
downloaded for converting a tab to app or for chrome web app shortcuts
update (this happens when chrome is opened as an app;
- Use the app icon as ICON_BIG in WindowWin::UpdateWindowIcon;
BUG=32039
TEST=Verify fix for issue 32039 and also Alt-Tab list on XP/Vista uses big icon.
Review URL: http://codereview.chromium.org/668265
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40962 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/views/frame')
-rw-r--r-- | chrome/browser/views/frame/browser_view.cc | 10 | ||||
-rw-r--r-- | chrome/browser/views/frame/browser_view.h | 1 |
2 files changed, 11 insertions, 0 deletions
diff --git a/chrome/browser/views/frame/browser_view.cc b/chrome/browser/views/frame/browser_view.cc index 0948c96..857c656 100644 --- a/chrome/browser/views/frame/browser_view.cc +++ b/chrome/browser/views/frame/browser_view.cc @@ -1387,6 +1387,16 @@ bool BrowserView::ShouldShowWindowTitle() const { return browser_->SupportsWindowFeature(Browser::FEATURE_TITLEBAR); } +SkBitmap BrowserView::GetWindowAppIcon() { + if (browser_->type() & Browser::TYPE_APP) { + TabContents* contents = browser_->GetSelectedTabContents(); + if (contents && !contents->app_icon().isNull()) + return contents->app_icon(); + } + + return GetWindowIcon(); +} + SkBitmap BrowserView::GetWindowIcon() { if (browser_->type() & Browser::TYPE_APP) return browser_->GetCurrentPageIcon(); diff --git a/chrome/browser/views/frame/browser_view.h b/chrome/browser/views/frame/browser_view.h index e683fdf..f29f810 100644 --- a/chrome/browser/views/frame/browser_view.h +++ b/chrome/browser/views/frame/browser_view.h @@ -352,6 +352,7 @@ class BrowserView : public BrowserBubbleHost, virtual std::wstring GetWindowTitle() const; virtual views::View* GetInitiallyFocusedView(); virtual bool ShouldShowWindowTitle() const; + virtual SkBitmap GetWindowAppIcon(); virtual SkBitmap GetWindowIcon(); virtual bool ShouldShowWindowIcon() const; virtual bool ExecuteWindowsCommand(int command_id); |