diff options
author | shrikant@chromium.org <shrikant@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-02-27 22:56:27 +0000 |
---|---|---|
committer | shrikant@chromium.org <shrikant@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-02-27 22:56:27 +0000 |
commit | a37cac5498b26dff7ee93dea47fa6b206e2303a5 (patch) | |
tree | 7dbf04ab413028cdf1bdec1d8047b4795b5950fd /win8/metro_driver/chrome_app_view_ash.h | |
parent | 9934b43df0157182b8cb452ab7a58c40352987ce (diff) | |
download | chromium_src-a37cac5498b26dff7ee93dea47fa6b206e2303a5.zip chromium_src-a37cac5498b26dff7ee93dea47fa6b206e2303a5.tar.gz chromium_src-a37cac5498b26dff7ee93dea47fa6b206e2303a5.tar.bz2 |
Closed UI channel for fast metro shutdown/restart.
As it works currently, when we close metro viewer with Alt+F4, the process remains in suspended state for approximately 10 seconds and terminates after that. On the browser process side, ChromeMetroViewerProcessHost class holds ref count to browser process and releases OnChannelError. With this change we trigger channel error immediately after sending Alt+F4 so that browser process can exit/restart.
BUG=335070
R=cpu,ananta
Review URL: https://codereview.chromium.org/164553007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253960 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'win8/metro_driver/chrome_app_view_ash.h')
-rw-r--r-- | win8/metro_driver/chrome_app_view_ash.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/win8/metro_driver/chrome_app_view_ash.h b/win8/metro_driver/chrome_app_view_ash.h index d347205..5de9f67 100644 --- a/win8/metro_driver/chrome_app_view_ash.h +++ b/win8/metro_driver/chrome_app_view_ash.h @@ -45,6 +45,11 @@ class FilePickerSessionBase; struct MetroViewerHostMsg_SaveAsDialogParams; +enum MetroTerminateMethod { + TERMINATE_USING_KEY_SEQUENCE = 1, + TERMINATE_USING_PROCESS_EXIT = 2, +}; + class ChromeAppViewAsh : public mswr::RuntimeClass<winapp::Core::IFrameworkView>, public metro_driver::ImePopupObserver, @@ -104,6 +109,8 @@ class ChromeAppViewAsh const std::vector<int32>& input_scopes, const std::vector<metro_viewer::CharacterBounds>& character_bounds); + void OnMetroExit(MetroTerminateMethod method); + HWND core_window_hwnd() const { return core_window_hwnd_; } |