Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(867)

Unified Diff: win8/metro_driver/chrome_app_view_ash.cc

Issue 27058004: Use WindowActivated message instead of VisibilityChanged message to determine that Ash is the activ… (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: merge up to r229418 Created 7 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « win8/metro_driver/chrome_app_view_ash.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: win8/metro_driver/chrome_app_view_ash.cc
diff --git a/win8/metro_driver/chrome_app_view_ash.cc b/win8/metro_driver/chrome_app_view_ash.cc
index cffb0432638f553c9439a6da5d3e236c423ec5a5..b795b928bc2cc878057c38ce5ee372fd66c2bf37 100644
--- a/win8/metro_driver/chrome_app_view_ash.cc
+++ b/win8/metro_driver/chrome_app_view_ash.cc
@@ -50,10 +50,6 @@ typedef winfoundtn::ITypedEventHandler<
typedef winfoundtn::ITypedEventHandler<
winui::Core::CoreWindow*,
- winui::Core::VisibilityChangedEventArgs*> VisibilityChangedHandler;
-
-typedef winfoundtn::ITypedEventHandler<
- winui::Core::CoreWindow*,
winui::Core::WindowActivatedEventArgs*> WindowActivatedHandler;
typedef winfoundtn::ITypedEventHandler<
@@ -422,11 +418,6 @@ ChromeAppViewAsh::SetWindow(winui::Core::ICoreWindow* window) {
&character_received_token_);
CheckHR(hr);
- hr = window_->add_VisibilityChanged(mswr::Callback<VisibilityChangedHandler>(
- this, &ChromeAppViewAsh::OnVisibilityChanged).Get(),
- &visibility_changed_token_);
- CheckHR(hr);
-
hr = window_->add_Activated(mswr::Callback<WindowActivatedHandler>(
this, &ChromeAppViewAsh::OnWindowActivated).Get(),
&window_activated_token_);
@@ -880,18 +871,6 @@ HRESULT ChromeAppViewAsh::OnCharacterReceived(
return S_OK;
}
-HRESULT ChromeAppViewAsh::OnVisibilityChanged(
- winui::Core::ICoreWindow* sender,
- winui::Core::IVisibilityChangedEventArgs* args) {
- boolean visible = false;
- HRESULT hr = args->get_Visible(&visible);
- if (FAILED(hr))
- return hr;
-
- ui_channel_->Send(new MetroViewerHostMsg_VisibilityChanged(!!visible));
- return S_OK;
-}
-
HRESULT ChromeAppViewAsh::OnWindowActivated(
winui::Core::ICoreWindow* sender,
winui::Core::IWindowActivatedEventArgs* args) {
@@ -899,6 +878,14 @@ HRESULT ChromeAppViewAsh::OnWindowActivated(
HRESULT hr = args->get_WindowActivationState(&state);
if (FAILED(hr))
return hr;
+
+ // Treat both full activation (Ash was reopened from the Start Screen or from
+ // any other Metro entry point in Windows) and pointer activation (user
+ // clicked back in Ash after using another app on another monitor) the same.
+ if (state == winui::Core::CoreWindowActivationState_CodeActivated ||
+ state == winui::Core::CoreWindowActivationState_PointerActivated) {
+ ui_channel_->Send(new MetroViewerHostMsg_WindowActivated());
+ }
return S_OK;
}
« no previous file with comments | « win8/metro_driver/chrome_app_view_ash.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698