From af25720598bb35d9d953ac8d9a07528289ebfb4a Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Wed, 2 May 2007 13:51:16 +0930 Subject: [PATCH] Add missing files for ProcXiSelectEvent. Should have been a part of 5e439109292e54b5c4d1a7bc7b6ac0e42ee285f7. Oh well. --- Xi/xiselev.c | 78 ++++++++++++++++++++++++++++++++++++++++++++++++++++ Xi/xiselev.h | 44 +++++++++++++++++++++++++++++ 2 files changed, 122 insertions(+) create mode 100644 Xi/xiselev.c create mode 100644 Xi/xiselev.h diff --git a/Xi/xiselev.c b/Xi/xiselev.c new file mode 100644 index 000000000..8740487df --- /dev/null +++ b/Xi/xiselev.c @@ -0,0 +1,78 @@ +/* + +Copyright 2007 Peter Hutterer + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +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 AUTHOR 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 of the author shall +not be used in advertising or otherwise to promote the sale, use or +other dealings in this Software without prior written authorization +from the author. + +*/ + +#define NEED_EVENTS +#define NEED_REPLIES + +#ifdef HAVE_DIX_CONFIG_H +#include +#endif + +#include + +#include "dixstruct.h" +#include "windowstr.h" + +#include "exglobals.h" +#include "xiselev.h" +#include "geext.h" + +int +SProcXiSelectEvent(ClientPtr client) +{ + char n; + + REQUEST(xXiSelectEventReq); + swaps(&stuff->length, n); + REQUEST_SIZE_MATCH(xXiSelectEventReq); + swapl(&stuff->window, n); + swapl(&stuff->mask, n); + return (ProcXiSelectEvent(client)); +} + + +int +ProcXiSelectEvent(ClientPtr client) +{ + int ret; + WindowPtr pWin; + REQUEST(xXiSelectEventReq); + REQUEST_SIZE_MATCH(xXiSelectEventReq); + + ret = dixLookupWindow(&pWin, stuff->window, client, DixReadWriteAccess); + if (ret != Success) + { + SendErrorToClient(client, IReqCode, X_XiSelectEvent, 0, ret); + return Success; + } + + GEWindowSetMask(client, pWin, IReqCode, stuff->mask); + + return Success; +} + diff --git a/Xi/xiselev.h b/Xi/xiselev.h new file mode 100644 index 000000000..91028159b --- /dev/null +++ b/Xi/xiselev.h @@ -0,0 +1,44 @@ +/* + +Copyright 2007 Peter Hutterer + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +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 AUTHOR 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 of the author shall +not be used in advertising or otherwise to promote the sale, use or +other dealings in this Software without prior written authorization +from the author. + +*/ + + +#ifdef HAVE_DIX_CONFIG_H +#include +#endif + +#ifndef XISELEV_H +#define XISELEV_H 1 + +int SProcXiSelectEvent(ClientPtr /* client */ + ); + +int ProcXiSelectEvent(ClientPtr /* client */ + ); + +#endif /* XISELEV_H */ +