summaryrefslogtreecommitdiffstats
path: root/base/message_loop.cc
diff options
context:
space:
mode:
authormark@chromium.org <mark@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2008-09-23 21:08:28 +0000
committermark@chromium.org <mark@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2008-09-23 21:08:28 +0000
commit96c9ea12f042a0c12f4de097c86e3be27a458bd2 (patch)
tree38d6199b0d20963fcaae13986fd1a1bc75992be9 /base/message_loop.cc
parent0aaaa256de3da10ffdb145bfd12dc0d51933c4bb (diff)
downloadchromium_src-96c9ea12f042a0c12f4de097c86e3be27a458bd2.zip
chromium_src-96c9ea12f042a0c12f4de097c86e3be27a458bd2.tar.gz
chromium_src-96c9ea12f042a0c12f4de097c86e3be27a458bd2.tar.bz2
Mac-specific CFRunLoop-based MessagePump implementation
Review URL: http://codereview.chromium.org/444 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2521 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/message_loop.cc')
-rw-r--r--base/message_loop.cc12
1 files changed, 10 insertions, 2 deletions
diff --git a/base/message_loop.cc b/base/message_loop.cc
index ccd6d3e..91c40d3 100644
--- a/base/message_loop.cc
+++ b/base/message_loop.cc
@@ -13,6 +13,9 @@
#include "base/string_util.h"
#include "base/thread_local.h"
+#if defined(OS_MACOSX)
+#include "base/message_pump_mac.h"
+#endif
#if defined(OS_POSIX)
#include "base/message_pump_libevent.h"
#endif
@@ -83,14 +86,19 @@ MessageLoop::MessageLoop(Type type)
pump_ = new base::MessagePumpWin();
}
#elif defined(OS_POSIX)
+#if defined(OS_MACOSX)
+ if (type_ == TYPE_UI) {
+ pump_ = base::MessagePumpMac::Create();
+ } else
+#endif // OS_MACOSX
if (type_ == TYPE_IO) {
pump_ = new base::MessagePumpLibevent();
} else {
pump_ = new base::MessagePumpDefault();
}
-#else
+#else // OS_POSIX
pump_ = new base::MessagePumpDefault();
-#endif
+#endif // OS_POSIX
}
MessageLoop::~MessageLoop() {