32 lines
1.1 KiB
C
32 lines
1.1 KiB
C
#ifndef __XSERVER_NAMESPACE_HOOKS_H
|
|
#define __XSERVER_NAMESPACE_HOOKS_H
|
|
|
|
#include "dix/registry_priv.h"
|
|
#include "include/misc.h"
|
|
|
|
#include "namespace.h"
|
|
|
|
#define XNS_HOOK_LOG(...) do { \
|
|
printf("XNS [" HOOK_NAME "] (#%d@%d) {%s} <%s>: ", \
|
|
(client ? client->index : -1), \
|
|
(client ? client->sequence : -1), \
|
|
(subj ? (subj->ns ? subj->ns->name : "(no ns)") : "<no client>"), \
|
|
LookupRequestName(client ? client->majorOp : 0, \
|
|
client ? client->minorOp : 0)); \
|
|
printf(__VA_ARGS__); \
|
|
} while (0)
|
|
|
|
#define XNS_HOOK_HEAD(t) \
|
|
t *param = calldata; \
|
|
ClientPtr client = param->client; \
|
|
if (!client) { \
|
|
/* XNS_LOG("hook %s NULL client\n", HOOK_NAME); */ \
|
|
} \
|
|
struct XnamespaceClientPriv *subj = XnsClientPriv(client);
|
|
|
|
void hookClientState(CallbackListPtr *pcbl, void *unused, void *calldata);
|
|
void hookInitRootWindow(CallbackListPtr *pcbl, void *unused, void *calldata);
|
|
void hookSelectionFilter(CallbackListPtr *pcbl, void *unused, void *calldata);
|
|
|
|
#endif /* __XSERVER_NAMESPACE_HOOKS_H */
|