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 e39118b8501f7b6aa6c7ba22c24dea92e1a8bfa2..08c165a042c1ce0219d56c7effe2b97c859f3437 100644 |
--- a/win8/metro_driver/chrome_app_view_ash.cc |
+++ b/win8/metro_driver/chrome_app_view_ash.cc |
@@ -884,8 +884,6 @@ HRESULT ChromeAppViewAsh::OnVisibilityChanged( |
HRESULT hr = args->get_Visible(&visible); |
if (FAILED(hr)) |
return hr; |
- |
- ui_channel_->Send(new MetroViewerHostMsg_VisibilityChanged(!!visible)); |
return S_OK; |
} |
@@ -896,6 +894,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 screen) the same. |
+ if (state == winui::Core::CoreWindowActivationState_CodeActivated || |
+ state == winui::Core::CoreWindowActivationState_PointerActivated) { |
+ ui_channel_->Send(new MetroViewerHostMsg_WindowActivated()); |
+ } |
return S_OK; |
} |