x11: Make the event-source work with both glib and libevent message-pumps.

Split up the X11EventSource into X11EventSourceGlib to work with the glib message-pump,
and X11EventSourceLibevent to work with the libevent message-pump. With this change, it
is possible to build and run chromeos without glib (use_glib = 0).

BUG=354062, 240715
R=darin@chromium.org, sky@chromium.org

Review URL: https://codereview.chromium.org/244093002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@265007 0039d316-1c4b-4281-b951-d872f2087c98


CrOS-Libchrome-Original-Commit: 4378628c0af281735b7e209e4dbe5ea6bccf3333
diff --git a/base/message_loop/message_loop.h b/base/message_loop/message_loop.h
index edb9da7..6617646 100644
--- a/base/message_loop/message_loop.h
+++ b/base/message_loop/message_loop.h
@@ -34,7 +34,9 @@
 #include "base/message_loop/message_pump_libevent.h"
 #if !defined(OS_MACOSX) && !defined(OS_ANDROID)
 
-#if defined(USE_GLIB) && !defined(OS_NACL)
+#if defined(OS_CHROMEOS) && !defined(OS_NACL) && !defined(USE_GLIB)
+#include "base/message_loop/message_pump_libevent.h"
+#elif defined(USE_GLIB) && !defined(OS_NACL)
 #include "base/message_loop/message_pump_glib.h"
 #elif !defined(OS_ANDROID_HOST)
 #include "base/message_loop/message_pump_glib.h"
@@ -51,7 +53,7 @@
 class ThreadTaskRunnerHandle;
 #if defined(OS_ANDROID)
 class MessagePumpForUI;
-#elif defined(OS_ANDROID_HOST)
+#elif defined(OS_ANDROID_HOST) || (defined(OS_CHROMEOS) && !defined(USE_GLIB))
 typedef MessagePumpLibevent MessagePumpForUI;
 #endif
 class WaitableEvent;
@@ -561,7 +563,8 @@
   void RemoveObserver(Observer* observer);
 #endif
 
-#if defined(USE_OZONE) && !defined(OS_NACL)
+#if !defined(OS_NACL) && \
+    (defined(USE_OZONE) || (defined(OS_CHROMEOS) && !defined(USE_GLIB)))
   // Please see MessagePumpLibevent for definition.
   bool WatchFileDescriptor(
       int fd,