From c14f5dc237a31b13d98ae2d0d6143bd91083cf13 Mon Sep 17 00:00:00 2001 From: Jeremy Huddleston Date: Thu, 17 Apr 2008 20:21:45 -0700 Subject: [PATCH] XQuartz: Forgot to commit xprEvent.[hc] ... (cherry picked from commit 70e543baf2508d636f01b2b7e8cb05172195b68c) --- hw/xquartz/darwinEvents.c | 1 + hw/xquartz/xpr/xpr.h | 1 + hw/xquartz/xpr/xprEvent.c | 91 +++++++++++++++++++++++++++++++++++++++ hw/xquartz/xpr/xprEvent.h | 34 +++++++++++++++ 4 files changed, 127 insertions(+) create mode 100644 hw/xquartz/xpr/xprEvent.c create mode 100644 hw/xquartz/xpr/xprEvent.h diff --git a/hw/xquartz/darwinEvents.c b/hw/xquartz/darwinEvents.c index 589ca79f5..d69e6b744 100644 --- a/hw/xquartz/darwinEvents.c +++ b/hw/xquartz/darwinEvents.c @@ -538,5 +538,6 @@ void DarwinSendDDXEvent(int type, int argc, ...) { mieqEnqueue_lock(); mieqEnqueue(darwinPointer, &xe); + DarwinPokeEQ(); mieqEnqueue_unlock(); } diff --git a/hw/xquartz/xpr/xpr.h b/hw/xquartz/xpr/xpr.h index 7b7923ca2..ab79a42cd 100644 --- a/hw/xquartz/xpr/xpr.h +++ b/hw/xquartz/xpr/xpr.h @@ -29,6 +29,7 @@ #ifndef XPR_H #define XPR_H +#include "windowstr.h" #include "screenint.h" #include diff --git a/hw/xquartz/xpr/xprEvent.c b/hw/xquartz/xpr/xprEvent.c new file mode 100644 index 000000000..617d6e146 --- /dev/null +++ b/hw/xquartz/xpr/xprEvent.c @@ -0,0 +1,91 @@ +/* Copyright (c) 2008 Apple Inc. + * + * Permission is hereby granted, free of charge, to any person + * obtaining a copy of this software and associated documentation files + * (the "Software"), to deal in the Software without restriction, + * including without limitation the rights to use, copy, modify, merge, + * publish, distribute, sublicense, and/or sell copies of the Software, + * and to permit persons to whom the Software is furnished to do so, + * subject to the following conditions: + * + * The above copyright notice and this permission notice shall be + * included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT + * HOLDER(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + * + * Except as contained in this notice, the name(s) of the above + * copyright holders shall not be used in advertising or otherwise to + * promote the sale, use or other dealings in this Software without + * prior written authorization. + */ + +#ifdef HAVE_DIX_CONFIG_H +#include +#endif + +#include "xpr.h" + +#define NEED_EVENTS +#include +#include +#include +#include "misc.h" +#include "windowstr.h" +#include "pixmapstr.h" +#include "inputstr.h" +#include "mi.h" +#include "scrnintstr.h" +#include "mipointer.h" + +#include "darwin.h" +#include "quartz.h" +#include "quartzKeyboard.h" +#include "darwinEvents.h" + +#include +#include +#include + +#include "rootlessWindow.h" +#include "xprEvent.h" + +static void xprEventHandler(int screenNum, xEventPtr xe, DeviceIntPtr dev, int nevents) { + int i; + + TA_SERVER(); + + DEBUG_LOG("DarwinEventHandler(%d, %p, %p, %d)\n", screenNum, xe, dev, nevents); + for (i=0; i