Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(256)

Side by Side Diff: base/message_pump_win.cc

Issue 9958152: Consolidate win/x dispatchers (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: cleanup Created 8 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/message_pump_win.h" 5 #include "base/message_pump_win.h"
6 6
7 #include <math.h> 7 #include <math.h>
8 8
9 #include "base/message_loop.h" 9 #include "base/message_loop.h"
10 #include "base/metrics/histogram.h" 10 #include "base/metrics/histogram.h"
11 #include "base/win/wrapped_window_proc.h" 11 #include "base/win/wrapped_window_proc.h"
(...skipping 19 matching lines...) Expand all
31 31
32 void MessagePumpWin::WillProcessMessage(const MSG& msg) { 32 void MessagePumpWin::WillProcessMessage(const MSG& msg) {
33 FOR_EACH_OBSERVER(MessagePumpObserver, observers_, WillProcessEvent(msg)); 33 FOR_EACH_OBSERVER(MessagePumpObserver, observers_, WillProcessEvent(msg));
34 } 34 }
35 35
36 void MessagePumpWin::DidProcessMessage(const MSG& msg) { 36 void MessagePumpWin::DidProcessMessage(const MSG& msg) {
37 FOR_EACH_OBSERVER(MessagePumpObserver, observers_, DidProcessEvent(msg)); 37 FOR_EACH_OBSERVER(MessagePumpObserver, observers_, DidProcessEvent(msg));
38 } 38 }
39 39
40 void MessagePumpWin::RunWithDispatcher( 40 void MessagePumpWin::RunWithDispatcher(
41 Delegate* delegate, Dispatcher* dispatcher) { 41 Delegate* delegate, MessagePumpDispatcher* dispatcher) {
42 RunState s; 42 RunState s;
43 s.delegate = delegate; 43 s.delegate = delegate;
44 s.dispatcher = dispatcher; 44 s.dispatcher = dispatcher;
45 s.should_quit = false; 45 s.should_quit = false;
46 s.run_depth = state_ ? state_->run_depth + 1 : 1; 46 s.run_depth = state_ ? state_->run_depth + 1 : 1;
47 47
48 RunState* previous_state = state_; 48 RunState* previous_state = state_;
49 state_ = &s; 49 state_ = &s;
50 50
51 DoRunLoop(); 51 DoRunLoop();
(...skipping 292 matching lines...) Expand 10 before | Expand all | Expand 10 after
344 // While running our main message pump, we discard kMsgHaveWork messages. 344 // While running our main message pump, we discard kMsgHaveWork messages.
345 if (msg.message == kMsgHaveWork && msg.hwnd == message_hwnd_) 345 if (msg.message == kMsgHaveWork && msg.hwnd == message_hwnd_)
346 return ProcessPumpReplacementMessage(); 346 return ProcessPumpReplacementMessage();
347 347
348 if (CallMsgFilter(const_cast<MSG*>(&msg), kMessageFilterCode)) 348 if (CallMsgFilter(const_cast<MSG*>(&msg), kMessageFilterCode))
349 return true; 349 return true;
350 350
351 WillProcessMessage(msg); 351 WillProcessMessage(msg);
352 352
353 if (state_->dispatcher) { 353 if (state_->dispatcher) {
354 if (!state_->dispatcher->Dispatch(msg)) 354 if (state_->dispatcher->Dispatch(msg) == base::EVENT_QUIT)
355 state_->should_quit = true; 355 state_->should_quit = true;
356 } else { 356 } else {
357 TranslateMessage(&msg); 357 TranslateMessage(&msg);
358 DispatchMessage(&msg); 358 DispatchMessage(&msg);
359 } 359 }
360 360
361 DidProcessMessage(msg); 361 DidProcessMessage(msg);
362 return true; 362 return true;
363 } 363 }
364 364
(...skipping 209 matching lines...) Expand 10 before | Expand all | Expand 10 after
574 574
575 void MessagePumpForIO::WillProcessIOEvent() { 575 void MessagePumpForIO::WillProcessIOEvent() {
576 FOR_EACH_OBSERVER(IOObserver, io_observers_, WillProcessIOEvent()); 576 FOR_EACH_OBSERVER(IOObserver, io_observers_, WillProcessIOEvent());
577 } 577 }
578 578
579 void MessagePumpForIO::DidProcessIOEvent() { 579 void MessagePumpForIO::DidProcessIOEvent() {
580 FOR_EACH_OBSERVER(IOObserver, io_observers_, DidProcessIOEvent()); 580 FOR_EACH_OBSERVER(IOObserver, io_observers_, DidProcessIOEvent());
581 } 581 }
582 582
583 } // namespace base 583 } // namespace base
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698