summaryrefslogtreecommitdiffstats
path: root/chrome/browser/browser_process_impl.h
diff options
context:
space:
mode:
authorjackhou@chromium.org <jackhou@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-07-31 12:14:40 +0000
committerjackhou@chromium.org <jackhou@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-07-31 12:14:40 +0000
commit90a4b9d59dbf2665c1c849e0b12e422e2d9eb426 (patch)
treed5d56721b301d3ab353a831f9dcd25c8d7a9d1a9 /chrome/browser/browser_process_impl.h
parent5942c9b902ce06562084cd1c598639a9d1e745fc (diff)
downloadchromium_src-90a4b9d59dbf2665c1c849e0b12e422e2d9eb426.zip
chromium_src-90a4b9d59dbf2665c1c849e0b12e422e2d9eb426.tar.gz
chromium_src-90a4b9d59dbf2665c1c849e0b12e422e2d9eb426.tar.bz2
Cmd+Q on an app window quits the app.
In applicationShouldTerminate, if the terminate was triggered by a keyboard event, and the currently focused window is a ShellWindow, then quit the app associated with that window and return NSTerminateCancel. An accessor for ExtensionAppShimHandler is added to BrowserProcessPlatFormPart to allow manipulating apps from anywhere. This will also be used for the Quit menu option for app menus. Cmd+Q behavior on a browser window remains mostly unchanged. The only difference is that Cmd+Q when there are no windows quits immediately, even if confirm-to-quit is enabled. Note that this does not affect termination due to OSX shutting down. Even if the shutdown is triggered by a keyboard shortcut (e.g. Ctrl+Cmd+Eject), the event type will be NSSystemDefined, so Chrome terminates as usual. BUG=168080,249059,227472 TEST=Start an app. Cmd+Q with one of the app's windows focused should quit the app. Quit Chrome and start an app using its shim. Cmd+Q on the app should quit the app and Chrome. TEST=Start an app. Ctrl+Cmd+Eject with the app window focused to shut down OSX. Chrome should terminate cleanly. Review URL: https://chromiumcodereview.appspot.com/17448007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@214672 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/browser_process_impl.h')
-rw-r--r--chrome/browser/browser_process_impl.h9
1 files changed, 0 insertions, 9 deletions
diff --git a/chrome/browser/browser_process_impl.h b/chrome/browser/browser_process_impl.h
index 50a76d1..728c0d9 100644
--- a/chrome/browser/browser_process_impl.h
+++ b/chrome/browser/browser_process_impl.h
@@ -41,10 +41,6 @@ class BrowserPolicyConnector;
class PolicyService;
};
-#if defined(OS_MACOSX)
-class AppShimHostManager;
-#endif
-
// Real implementation of BrowserProcess that creates and returns the services.
class BrowserProcessImpl : public BrowserProcess,
public base::NonThreadSafe {
@@ -292,11 +288,6 @@ class BrowserProcessImpl : public BrowserProcess,
scoped_refptr<PluginsResourceService> plugins_resource_service_;
#endif
-#if defined(OS_MACOSX)
- // Hosts the IPC channel factory that App Shims connect to on Mac.
- scoped_ptr<AppShimHostManager> app_shim_host_manager_;
-#endif
-
scoped_ptr<BrowserProcessPlatformPart> platform_part_;
// TODO(eroman): Remove this when done debugging 113031. This tracks