diff options
author | benwells@chromium.org <benwells@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-01-19 19:27:04 +0000 |
---|---|---|
committer | benwells@chromium.org <benwells@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-01-19 19:27:04 +0000 |
commit | 7f2c1921a1b70eeaf3e62c25dc6f72b308259080 (patch) | |
tree | 292e5bf06d5d31198170dc990eceabff259e506c /chrome | |
parent | a31c0d30aadeaf023b09162db4ac5f9f04dafaa4 (diff) | |
download | chromium_src-7f2c1921a1b70eeaf3e62c25dc6f72b308259080.zip chromium_src-7f2c1921a1b70eeaf3e62c25dc6f72b308259080.tar.gz chromium_src-7f2c1921a1b70eeaf3e62c25dc6f72b308259080.tar.bz2 |
Set windows AppId (for taskbar) for platform apps.
The windows AppId associates the taskbar shortcut for the app with
the running app window. Once properly set the taskbar shortcut is
highlighted when the app is running.
BUG=110422
TEST=Manual testing on Windows
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=118201
Review URL: http://codereview.chromium.org/9120026
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118332 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r-- | chrome/browser/ui/views/extensions/shell_window_views.cc | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/chrome/browser/ui/views/extensions/shell_window_views.cc b/chrome/browser/ui/views/extensions/shell_window_views.cc index 0f2936a3..91fe7c6 100644 --- a/chrome/browser/ui/views/extensions/shell_window_views.cc +++ b/chrome/browser/ui/views/extensions/shell_window_views.cc @@ -9,6 +9,12 @@ #include "chrome/common/extensions/extension.h" #include "ui/views/widget/widget.h" +#if defined(OS_WIN) && !defined(USE_AURA) +#include "chrome/browser/shell_integration.h" +#include "chrome/browser/web_applications/web_app.h" +#include "ui/base/win/shell.h" +#endif + ShellWindowViews::ShellWindowViews(ExtensionHost* host) : ShellWindow(host) { host_->view()->SetContainer(this); @@ -18,6 +24,14 @@ ShellWindowViews::ShellWindowViews(ExtensionHost* host) gfx::Rect bounds(0, 0, 512, 384); params.bounds = bounds; window_->Init(params); +#if defined(OS_WIN) && !defined(USE_AURA) + std::string app_name = web_app::GenerateApplicationNameFromExtensionId( + host_->extension()->id()); + ui::win::SetAppIdForWindow( + ShellIntegration::GetAppId(UTF8ToWide(app_name), + host_->profile()->GetPath()), + GetWidget()->GetTopLevelWidget()->GetNativeWindow()); +#endif window_->Show(); } |