diff options
author | sadrul@chromium.org <sadrul@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-02-28 10:41:04 +0000 |
---|---|---|
committer | sadrul@chromium.org <sadrul@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-02-28 10:41:04 +0000 |
commit | 24d5f5688319b8b673a5b0121138d41ede949a71 (patch) | |
tree | 2d5caf8cff73d338312391a641587b6cf7c17975 /ash/accelerators/nested_dispatcher_controller.h | |
parent | 900a3242b7d49415814ad43a24a57a9d61dfb211 (diff) | |
download | chromium_src-24d5f5688319b8b673a5b0121138d41ede949a71.zip chromium_src-24d5f5688319b8b673a5b0121138d41ede949a71.tar.gz chromium_src-24d5f5688319b8b673a5b0121138d41ede949a71.tar.bz2 |
Use the default dispatcher where possible for nested message loops.
Notable changes:
* Add QuitNestedMessageLoop() to client::DispatcherClient, which can be used to
terminate a nested loop started by RunWithDispatcher().
* FirstRunDialog and SimpleMessageBoxViews are no longer
MessagePumpDispatchers. The default dispatcher is used instead, and
QuitNestedMessageLoop() is called to terminate the loop instead of returning
POST_DISPATCH_QUIT_LOOP from the Dispatch() override.
BUG=none
R=sky@chromium.org
Previously committed in r253723, but reverted in r253744 because it broke
interactive_ui_tests on win-dbg.
Review URL: https://codereview.chromium.org/182143002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@254089 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ash/accelerators/nested_dispatcher_controller.h')
-rw-r--r-- | ash/accelerators/nested_dispatcher_controller.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/ash/accelerators/nested_dispatcher_controller.h b/ash/accelerators/nested_dispatcher_controller.h index 958cbae..1f8b52e 100644 --- a/ash/accelerators/nested_dispatcher_controller.h +++ b/ash/accelerators/nested_dispatcher_controller.h @@ -6,6 +6,7 @@ #define ASH_ACCELERATORS_NESTED_DISPATCHER_CONTROLLER_H_ #include "ash/ash_export.h" +#include "base/callback.h" #include "base/message_loop/message_loop.h" #include "ui/aura/client/dispatcher_client.h" #include "ui/aura/window.h" @@ -22,10 +23,14 @@ class ASH_EXPORT NestedDispatcherController NestedDispatcherController(); virtual ~NestedDispatcherController(); + // aura::client::DispatcherClient: virtual void RunWithDispatcher(base::MessagePumpDispatcher* dispatcher, aura::Window* associated_window) OVERRIDE; + virtual void QuitNestedMessageLoop() OVERRIDE; private: + base::Closure quit_closure_; + DISALLOW_COPY_AND_ASSIGN(NestedDispatcherController); }; |