Files
xserver/hw/xfree86/ramdac/xf86CursorPriv.h
Enrico Weigelt, metux IT consult 6557286084 xfree86: use own dev-privates key for per-screen cursor
Since it's storing an locally defined (ddx-internal) data, it's better
not to abuse some globally defined key for this.

It just happened to work before, since CursorScreenKey is only used by DDX
(and there's only one DDX per executable) and they currently (!) have the
same size (pointer) - but that's a fragile programming style, so clean it up.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1342>
2024-03-12 15:24:35 +00:00

54 lines
1.6 KiB
C

#ifdef HAVE_XORG_CONFIG_H
#include <xorg-config.h>
#endif
#ifndef _XF86CURSORPRIV_H
#define _XF86CURSORPRIV_H
#include "xf86Cursor.h"
#include "mipointrst.h"
typedef struct {
Bool SWCursor;
Bool isUp;
Bool showTransparent;
short HotX;
short HotY;
short x;
short y;
CursorPtr CurrentCursor, CursorToRestore;
xf86CursorInfoPtr CursorInfoPtr;
CloseScreenProcPtr CloseScreen;
RecolorCursorProcPtr RecolorCursor;
InstallColormapProcPtr InstallColormap;
QueryBestSizeProcPtr QueryBestSize;
miPointerSpriteFuncPtr spriteFuncs;
Bool PalettedCursor;
ColormapPtr pInstalledMap;
Bool (*SwitchMode) (ScrnInfoPtr, DisplayModePtr);
xf86EnableDisableFBAccessProc *EnableDisableFBAccess;
CursorPtr SavedCursor;
/* Number of requests to force HW cursor */
int ForceHWCursorCount;
Bool HWCursorForced;
void *transparentData;
} xf86CursorScreenRec, *xf86CursorScreenPtr;
Bool xf86SetCursor(ScreenPtr pScreen, CursorPtr pCurs, int x, int y);
void xf86SetTransparentCursor(ScreenPtr pScreen);
void xf86MoveCursor(ScreenPtr pScreen, int x, int y);
void xf86RecolorCursor(ScreenPtr pScreen, CursorPtr pCurs, Bool displayed);
Bool xf86InitHardwareCursor(ScreenPtr pScreen, xf86CursorInfoPtr infoPtr);
Bool xf86CheckHWCursor(ScreenPtr pScreen, CursorPtr cursor, xf86CursorInfoPtr infoPtr);
extern _X_EXPORT DevPrivateKeyRec xf86CursorScreenKeyRec;
#define xf86CursorScreenKey (&xf86CursorScreenKeyRec)
extern DevScreenPrivateKeyRec xf86ScreenCursorBitsKeyRec;
#endif /* _XF86CURSORPRIV_H */