diff options
author | sadrul@chromium.org <sadrul@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-12-01 16:42:16 +0000 |
---|---|---|
committer | sadrul@chromium.org <sadrul@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-12-01 16:42:16 +0000 |
commit | 754bebc123ff35ecd50c68f43b7675953b1cb431 (patch) | |
tree | 744f3516d716d7c4ca66c98424a05176d64cc789 /base/message_pump_x.cc | |
parent | 0e12d7d59d4778e1a8ef692d244bf66aea1a80b8 (diff) | |
download | chromium_src-754bebc123ff35ecd50c68f43b7675953b1cb431.zip chromium_src-754bebc123ff35ecd50c68f43b7675953b1cb431.tar.gz chromium_src-754bebc123ff35ecd50c68f43b7675953b1cb431.tar.bz2 |
aura: Fix unit_tests on linux
Make sure the aura::Desktop is destroyed with the message-loop. This is
done by adding a DestroyMessagePump notification to MessagePumpObserver.
Also remove some views_unittests that were added to test
NativeWidgetViews (which aren't used anymore), and do proper cleanup
in AccessibilityEventRouter unittest.
TBR=darin@chromium.org
BUG=104559, 105613
TEST=unit_tests
Review URL: http://codereview.chromium.org/8566037
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@112474 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/message_pump_x.cc')
-rw-r--r-- | base/message_pump_x.cc | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/base/message_pump_x.cc b/base/message_pump_x.cc index 3b1ed3d..8a253df 100644 --- a/base/message_pump_x.cc +++ b/base/message_pump_x.cc @@ -183,6 +183,8 @@ bool MessagePumpX::RunOnce(GMainContext* context, bool block) { } bool MessagePumpX::WillProcessXEvent(XEvent* xevent) { + if (!observers().might_have_observers()) + return false; ObserverListBase<MessagePumpObserver>::Iterator it(observers()); MessagePumpObserver* obs; while ((obs = it.GetNext()) != NULL) { @@ -193,11 +195,7 @@ bool MessagePumpX::WillProcessXEvent(XEvent* xevent) { } void MessagePumpX::DidProcessXEvent(XEvent* xevent) { - ObserverListBase<MessagePumpObserver>::Iterator it(observers()); - MessagePumpObserver* obs; - while ((obs = it.GetNext()) != NULL) { - obs->DidProcessEvent(xevent); - } + FOR_EACH_OBSERVER(MessagePumpObserver, observers(), DidProcessEvent(xevent)); } } // namespace base |