use glib directly for event handling until we can get support for processing single events from Qt

This commit is contained in:
Stuart Parmenter 2008-04-22 13:05:03 -07:00
Родитель 38f785047d
Коммит 5701efb9c0
2 изменённых файлов: 17 добавлений и 8 удалений

Просмотреть файл

@ -109,6 +109,7 @@ EXTRA_DSO_LDOPTS = \
$(LCMS_LIBS) \
$(MOZ_JS_LIBS) \
$(MOZ_QT_LIBS) \
$(GLIB_LIBS) \
$(NULL)
@ -121,8 +122,8 @@ endif
include $(topsrcdir)/config/rules.mk
CXXFLAGS += $(MOZ_QT_CFLAGS)
CFLAGS += $(MOZ_QT_CFLAGS)
CXXFLAGS += $(MOZ_QT_CFLAGS) $(GLIB_CFLAGS)
CFLAGS += $(MOZ_QT_CFLAGS) $(GLIB_CFLAGS)
DEFINES += -D_IMPL_NS_WIDGET
#DEFINES += -DDEBUG_WIDGETS

Просмотреть файл

@ -42,7 +42,10 @@
#include <fcntl.h>
#include <errno.h>
#define NOTIFY_TOKEN 0xFA
#include <glib.h>
#include <glib/gmain.h>
#include "prenv.h"
#ifdef MOZ_LOGGING
#define FORCE_PR_LOG
@ -88,16 +91,21 @@ nsAppShell::ScheduleNativeEventCallback()
new QEvent((QEvent::Type) sPokeEvent));
}
PRBool
nsAppShell::ProcessNextNativeEvent(PRBool mayWait)
{
QEventLoop::ProcessEventsFlags flags = QEventLoop::AllEvents;
if (PR_GetEnv("QT_NO_GLIB")) {
QEventLoop::ProcessEventsFlags flags = QEventLoop::AllEvents;
if (mayWait)
flags |= QEventLoop::WaitForMoreEvents;
if (mayWait)
flags |= QEventLoop::WaitForMoreEvents;
qApp->processEvents(flags);
return PR_TRUE;
qApp->processEvents(flags);
return PR_TRUE;
}
return g_main_context_iteration(g_main_context_default(), mayWait);
}
bool