xserver

xserver with xephyr scale patch
git clone https://git.neptards.moe/u3shit/xserver.git
Log | Files | Refs | README | LICENSE

xprEvent.c (2697B)


      1 /* Copyright (c) 2008-2012 Apple Inc.
      2  *
      3  * Permission is hereby granted, free of charge, to any person
      4  * obtaining a copy of this software and associated documentation files
      5  * (the "Software"), to deal in the Software without restriction,
      6  * including without limitation the rights to use, copy, modify, merge,
      7  * publish, distribute, sublicense, and/or sell copies of the Software,
      8  * and to permit persons to whom the Software is furnished to do so,
      9  * subject to the following conditions:
     10  *
     11  * The above copyright notice and this permission notice shall be
     12  * included in all copies or substantial portions of the Software.
     13  *
     14  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
     15  * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
     16  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
     17  * NONINFRINGEMENT.  IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT
     18  * HOLDER(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
     19  * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
     20  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
     21  * DEALINGS IN THE SOFTWARE.
     22  *
     23  * Except as contained in this notice, the name(s) of the above
     24  * copyright holders shall not be used in advertising or otherwise to
     25  * promote the sale, use or other dealings in this Software without
     26  * prior written authorization.
     27  */
     28 
     29 #ifdef HAVE_DIX_CONFIG_H
     30 #include <dix-config.h>
     31 #endif
     32 
     33 #include "xpr.h"
     34 
     35 #include   <X11/X.h>
     36 #include   <X11/Xmd.h>
     37 #include   <X11/Xproto.h>
     38 #include   "misc.h"
     39 #include   "windowstr.h"
     40 #include   "pixmapstr.h"
     41 #include   "inputstr.h"
     42 #include   "eventstr.h"
     43 #include   "mi.h"
     44 #include   "scrnintstr.h"
     45 #include   "mipointer.h"
     46 
     47 #include "quartz.h"
     48 #include "quartzKeyboard.h"
     49 #include "darwinEvents.h"
     50 
     51 #include <sys/types.h>
     52 #include <sys/uio.h>
     53 #include <unistd.h>
     54 
     55 #include <dispatch/dispatch.h>
     56 
     57 #include "rootlessWindow.h"
     58 #include "xprEvent.h"
     59 
     60 Bool
     61 QuartzModeEventHandler(int screenNum, XQuartzEvent *e, DeviceIntPtr dev)
     62 {
     63     switch (e->subtype) {
     64     case kXquartzWindowState:
     65         DEBUG_LOG("kXquartzWindowState\n");
     66         RootlessNativeWindowStateChanged(xprGetXWindow(e->data[0]),
     67                                          e->data[1]);
     68         return TRUE;
     69 
     70     case kXquartzWindowMoved:
     71         DEBUG_LOG("kXquartzWindowMoved\n");
     72         RootlessNativeWindowMoved(xprGetXWindow(e->data[0]));
     73         return TRUE;
     74 
     75     case kXquartzBringAllToFront:
     76         DEBUG_LOG("kXquartzBringAllToFront\n");
     77         dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
     78             xp_window_bring_all_to_front();
     79         });
     80 
     81         return TRUE;
     82 
     83     default:
     84         return FALSE;
     85     }
     86 }