Compare commits

...

23 Commits

Author SHA1 Message Date
Enrico Weigelt, metux IT consult 3acbea5bba fb: unexport fbGetScreenPixmap() macro
No external users, so no need to keep it exported any longer.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-05 15:08:48 +02:00
Enrico Weigelt, metux IT consult 9234ef1306 fb: unexport fbGetGCPrivate() macro
Not used by drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-05 15:08:48 +02:00
Enrico Weigelt, metux IT consult 7247c99e42 fb: unexport FbDash*() macros
No external users, so no need to keep them exported.

(note that xf86-video-intel has it's own copies of them)

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-05 15:08:48 +02:00
Enrico Weigelt, metux IT consult b1d01277cf fb: unexport FbMaskBits() macro
No external users, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-05 15:08:48 +02:00
Enrico Weigelt, metux IT consult cc52d9f2a7 fb: unexport FB_HEAD_BITS and FB_TAIL_BITS macros
Not used by any driver, so no need to keep them exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-05 15:08:48 +02:00
Enrico Weigelt, metux IT consult 319c06a43e fb: unexport FbBitsStrideToStipStride() macro
Not used by any drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-05 15:08:48 +02:00
Enrico Weigelt, metux IT consult 720fcb0e5f fb: move FbStipStrideToBitsStride() to fbblt.c
It's only consumer is fbblt.c, so move it there.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-05 15:08:48 +02:00
Enrico Weigelt, metux IT consult fc100d1477 fb: move MEMCPY_WRAPPED() and MEMSET_WRAPPED() into fbblt.c
Only used inside fbblt.c, so we can move them into there.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-05 15:08:48 +02:00
Enrico Weigelt, metux IT consult a02135a1e3 fb: unexport fbListInstalledColormaps()
Not used by any drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-05 15:08:48 +02:00
Enrico Weigelt, metux IT consult 3e097272b6 fb: unexport fbAllocatePrivates()
Only used inside fb/, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-05 15:08:48 +02:00
Enrico Weigelt, metux IT consult 9c0d93bc3e fb: unexport fbSetBits()
Only used within fb/, not by any driver, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-05 15:08:48 +02:00
Enrico Weigelt, metux IT consult 954b8a7df3 fb: unexport fbInitializeDrawable() and make it static
Only used inside fbpixmap.c (where it's defined), so can be static.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-05 15:08:48 +02:00
Enrico Weigelt, metux IT consult 6a55c94883 fb: unexport fbValidateDrawable()
Not used by any drivers, so no need to keep it exported.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-05 15:08:46 +02:00
Enrico Weigelt, metux IT consult 7704464dc4 fb: make fbGCFuncs static
Not used outside fbgc.c, so can be made static.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-05 15:08:05 +02:00
Enrico Weigelt, metux IT consult a938ed6206 fb: make fbGCOps static
Not used anywhere outside fbgc.c, so can be static.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-05 15:08:05 +02:00
Enrico Weigelt, metux IT consult b9162798c0 fb: drop obsolete fbPolyFillArc and fbPolyRectangle defines
Those aliases haven't been used (outside fb core itself), since XAA removal
back 17 years ago, no no need to carry them in public interface any longer.

See: 703a9645f3
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-05 15:08:05 +02:00
Enrico Weigelt, metux IT consult 57790da625 fb: drop obsolete fbGetExpose() macro
Hasn't been used since 15 years so, probably should was forgotten to clean up.

See: bbbf795e6b
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-05 15:08:05 +02:00
Enrico Weigelt, metux IT consult ebd5114ca2 fb: drop obsolete FbLaneCase*() macros
They haven't been used for over a decade now, so no need to keem'em any longer.
(note: xf86-video-intel has it's own copy of them)
2025-05-05 15:08:05 +02:00
Enrico Weigelt, metux IT consult 03c3a0d410 fb: drop obsolete FbMaskStip macro
Hasn't been used since 24bpp support was dropped, almost a decade ago.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-05 15:08:05 +02:00
Enrico Weigelt, metux IT consult 676e3722e4 fb: drop obsolete fbFillPolygon define
Hasn't been used since XAA removal, back 17 years ago. Probably just had been
forgotten to clean up.

See: 703a9645f3
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-05 15:08:04 +02:00
Enrico Weigelt, metux IT consult e3ca015dbc fb: drop FbRotStipLeft, FbRotRight, FbRotStipRight macros
Not used anywhere, so can be dropped. Doesn't seem to be ever used
since added over two decades ago.

See: 9508a382f8
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-05 15:08:04 +02:00
Enrico Weigelt, metux IT consult 9eeb8b8304 fb: drop commented-out FbLeftBits and FbLeftBits macros
Not used anywhere, so can be dropped. They always have been commented-out
since added over two decades ago.

See: 9508a382f8

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-05 15:08:04 +02:00
Enrico Weigelt, metux IT consult 3d652bf68e fb: drop obsolete FB_STIP_ODDSTRIDE and FB_STIP_ODDPTR macro()
Those haven't been used for over a decade now, so no need to keep
it around any longer.

See: a198373685

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-05 15:08:04 +02:00
21 changed files with 159 additions and 197 deletions

174
fb/fb.h
View File

@ -48,29 +48,11 @@
#define WRITE(ptr, val) ((*wfbWriteMemory)((ptr), (val), sizeof(*(ptr))))
#define READ(ptr) ((*wfbReadMemory)((ptr), sizeof(*(ptr))))
#define MEMCPY_WRAPPED(dst, src, size) do { \
size_t _i; \
CARD8 *_dst = (CARD8*)(dst), *_src = (CARD8*)(src); \
for(_i = 0; _i < size; _i++) { \
WRITE(_dst +_i, READ(_src + _i)); \
} \
} while(0)
#define MEMSET_WRAPPED(dst, val, size) do { \
size_t _i; \
CARD8 *_dst = (CARD8*)(dst); \
for(_i = 0; _i < size; _i++) { \
WRITE(_dst +_i, (val)); \
} \
} while(0)
#else
#define FBPREFIX(x) fb##x
#define WRITE(ptr, val) (*(ptr) = (val))
#define READ(ptr) (*(ptr))
#define MEMCPY_WRAPPED(dst, src, size) memcpy((dst), (src), (size))
#define MEMSET_WRAPPED(dst, val, size) memset((dst), (val), (size))
#endif
@ -93,10 +75,6 @@
#define FB_STIP_UNIT (1 << FB_STIP_SHIFT)
#define FB_STIP_MASK (FB_STIP_UNIT - 1)
#define FB_STIP_ALLONES ((FbStip) -1)
#define FB_STIP_ODDSTRIDE(s) (((s) & (FB_MASK >> FB_STIP_SHIFT)) != 0)
#define FB_STIP_ODDPTR(p) ((((long) (p)) & (FB_MASK >> 3)) != 0)
#define FbStipStrideToBitsStride(s) (((s) >> (FB_SHIFT - FB_STIP_SHIFT)))
#define FbBitsStrideToStipStride(s) (((s) << (FB_SHIFT - FB_STIP_SHIFT)))
#define FbFullMask(n) ((n) == FB_UNIT ? FB_ALLONES : ((((FbBits) 1) << n) - 1))
#if FB_SHIFT == 5
@ -111,31 +89,17 @@ typedef FbBits FbStip;
typedef int FbStride;
#ifdef FB_DEBUG
extern _X_EXPORT void fbValidateDrawable(DrawablePtr d);
extern _X_EXPORT void fbInitializeDrawable(DrawablePtr d);
extern _X_EXPORT void fbSetBits(FbStip * bits, int stride, FbStip data);
#define FB_HEAD_BITS (FbStip) (0xbaadf00d)
#define FB_TAIL_BITS (FbStip) (0xbaddf0ad)
#else
#define fbValidateDrawable(d)
#define fdInitializeDrawable(d)
#endif
#include "fbrop.h"
#if BITMAP_BIT_ORDER == LSBFirst
#define FbScrLeft(x,n) ((x) >> (n))
#define FbScrRight(x,n) ((x) << (n))
/* #define FbLeftBits(x,n) ((x) & ((((FbBits) 1) << (n)) - 1)) */
#define FbLeftStipBits(x,n) ((x) & ((((FbStip) 1) << (n)) - 1))
#define FbStipMoveLsb(x,s,n) (FbStipRight (x,(s)-(n)))
#define FbPatternOffsetBits 0
#else
#define FbScrLeft(x,n) ((x) << (n))
#define FbScrRight(x,n) ((x) >> (n))
/* #define FbLeftBits(x,n) ((x) >> (FB_UNIT - (n))) */
#define FbLeftStipBits(x,n) ((x) >> (FB_STIP_UNIT - (n)))
#define FbStipMoveLsb(x,s,n) (x)
#define FbPatternOffsetBits (sizeof (FbBits) - 1)
@ -147,10 +111,6 @@ extern _X_EXPORT void fbSetBits(FbStip * bits, int stride, FbStip data);
#define FbStipRight(x,n) FbScrRight(x,n)
#define FbRotLeft(x,n) FbScrLeft(x,n) | (n ? FbScrRight(x,FB_UNIT-n) : 0)
#define FbRotRight(x,n) FbScrRight(x,n) | (n ? FbScrLeft(x,FB_UNIT-n) : 0)
#define FbRotStipLeft(x,n) FbStipLeft(x,n) | (n ? FbStipRight(x,FB_STIP_UNIT-n) : 0)
#define FbRotStipRight(x,n) FbStipRight(x,n) | (n ? FbStipLeft(x,FB_STIP_UNIT-n) : 0)
#define FbLeftMask(x) ( ((x) & FB_MASK) ? \
FbScrRight(FB_ALLONES,(x) & FB_MASK) : 0)
@ -168,21 +128,6 @@ extern _X_EXPORT void fbSetBits(FbStip * bits, int stride, FbStip data);
#define FbStipMask(x,w) (FbStipRight(FB_STIP_ALLONES,(x) & FB_STIP_MASK) & \
FbStipLeft(FB_STIP_ALLONES,(FB_STIP_UNIT - ((x)+(w))) & FB_STIP_MASK))
#define FbMaskBits(x,w,l,n,r) { \
n = (w); \
r = FbRightMask((x)+n); \
l = FbLeftMask(x); \
if (l) { \
n -= FB_UNIT - ((x) & FB_MASK); \
if (n < 0) { \
n = 0; \
l &= r; \
r = 0; \
} \
} \
n >>= FB_SHIFT; \
}
#define FbByteMaskInvalid 0x10
#define FbPatternOffset(o,t) ((o) ^ (FbPatternOffsetBits & ~(sizeof (t) - 1)))
@ -278,102 +223,6 @@ extern _X_EXPORT void fbSetBits(FbStip * bits, int stride, FbStip data);
} \
}
#define FbMaskStip(x,w,l,n,r) { \
n = (w); \
r = FbRightStipMask((x)+n); \
l = FbLeftStipMask(x); \
if (l) { \
n -= FB_STIP_UNIT - ((x) & FB_STIP_MASK); \
if (n < 0) { \
n = 0; \
l &= r; \
r = 0; \
} \
} \
n >>= FB_STIP_SHIFT; \
}
/*
* These macros are used to transparently stipple
* in copy mode; the expected usage is with 'n' constant
* so all of the conditional parts collapse into a minimal
* sequence of partial word writes
*
* 'n' is the bytemask of which bytes to store, 'a' is the address
* of the FbBits base unit, 'o' is the offset within that unit
*
* The term "lane" comes from the hardware term "byte-lane" which
*/
#define FbLaneCase1(n,a,o) \
if ((n) == 0x01) { \
WRITE((CARD8 *) ((a)+FbPatternOffset(o,CARD8)), fgxor); \
}
#define FbLaneCase2(n,a,o) \
if ((n) == 0x03) { \
WRITE((CARD16 *) ((a)+FbPatternOffset(o,CARD16)), fgxor); \
} else { \
FbLaneCase1((n)&1,a,o) \
FbLaneCase1((n)>>1,a,(o)+1) \
}
#define FbLaneCase4(n,a,o) \
if ((n) == 0x0f) { \
WRITE((CARD32 *) ((a)+FbPatternOffset(o,CARD32)), fgxor); \
} else { \
FbLaneCase2((n)&3,a,o) \
FbLaneCase2((n)>>2,a,(o)+2) \
}
#define FbLaneCase(n,a) FbLaneCase4(n,(CARD8 *) (a),0)
/* Macros for dealing with dashing */
#define FbDashDeclare \
unsigned char *__dash, *__firstDash, *__lastDash
#define FbDashInit(pGC,pPriv,dashOffset,dashlen,even) { \
(even) = TRUE; \
__firstDash = (pGC)->dash; \
__lastDash = __firstDash + (pGC)->numInDashList; \
(dashOffset) %= (pPriv)->dashLength; \
\
__dash = __firstDash; \
while ((dashOffset) >= ((dashlen) = *__dash)) \
{ \
(dashOffset) -= (dashlen); \
(even) = 1-(even); \
if (++__dash == __lastDash) \
__dash = __firstDash; \
} \
(dashlen) -= (dashOffset); \
}
#define FbDashNext(dashlen) { \
if (++__dash == __lastDash) \
__dash = __firstDash; \
(dashlen) = *__dash; \
}
/* as numInDashList is always even, this case can skip a test */
#define FbDashNextEven(dashlen) { \
(dashlen) = *++__dash; \
}
#define FbDashNextOdd(dashlen) FbDashNext(dashlen)
#define FbDashStep(dashlen,even) { \
if (!--(dashlen)) { \
FbDashNext(dashlen); \
(even) = 1-(even); \
} \
}
extern _X_EXPORT const GCOps fbGCOps;
extern _X_EXPORT const GCFuncs fbGCFuncs;
/* Framebuffer access wrapper */
typedef FbBits(*ReadMemoryProcPtr) (const void *src, int size);
typedef void (*WriteMemoryProcPtr) (void *dst, FbBits value, int size);
@ -423,15 +272,7 @@ typedef struct {
unsigned int dashLength; /* total of all dash elements */
} FbGCPrivRec, *FbGCPrivPtr;
#define fbGetGCPrivateKey(pGC) (&fbGetScreenPrivate((pGC)->pScreen)->gcPrivateKeyRec)
#define fbGetGCPrivate(pGC) ((FbGCPrivPtr)\
dixLookupPrivate(&(pGC)->devPrivates, fbGetGCPrivateKey(pGC)))
#define fbGetCompositeClip(pGC) ((pGC)->pCompositeClip)
#define fbGetExpose(pGC) ((pGC)->fExpose)
#define fbGetScreenPixmap(s) ((PixmapPtr) (s)->devPrivate)
#define fbGetWinPrivateKey(pWin) (&fbGetScreenPrivate(((DrawablePtr) (pWin))->pScreen)->winPrivateKeyRec)
@ -506,12 +347,6 @@ typedef struct {
*/
#define FbEvenTile(w) ((w) <= FB_UNIT && FbPowerOfTwo(w))
/*
* fballpriv.c
*/
extern _X_EXPORT Bool
fbAllocatePrivates(ScreenPtr pScreen);
/*
* fbarc.c
*/
@ -716,9 +551,6 @@ fbBltPlane(FbBits * src,
/*
* fbcmap_mi.c
*/
extern _X_EXPORT int
fbListInstalledColormaps(ScreenPtr pScreen, Colormap * pmaps);
extern _X_EXPORT void
fbInstallColormap(ColormapPtr pmap);
@ -838,10 +670,6 @@ extern _X_EXPORT void
fbPolyFillRect(DrawablePtr pDrawable,
GCPtr pGC, int nrectInit, xRectangle *prectInit);
#define fbPolyFillArc miPolyFillArc
#define fbFillPolygon miFillPolygon
/*
* fbfillsp.c
*/
@ -946,8 +774,6 @@ extern _X_EXPORT void
extern _X_EXPORT void
fbPolySegment(DrawablePtr pDrawable, GCPtr pGC, int nseg, xSegment * pseg);
#define fbPolyRectangle miPolyRectangle
/*
* fbpict.c
*/

37
fb/fb_priv.h Normal file
View File

@ -0,0 +1,37 @@
/* SPDX-License-Identifier: MIT OR X11
*
* Copyright © 2024 Enrico Weigelt, metux IT consult <info@metux.net>
*/
#ifndef XORG_FB_PRIV_H
#define XORG_FB_PRIV_H
#include <X11/Xdefs.h>
#include "include/scrnintstr.h"
#include "fb/fb.h"
#define FbBitsStrideToStipStride(s) (((s) << (FB_SHIFT - FB_STIP_SHIFT)))
#define fbGetGCPrivateKey(pGC) (&fbGetScreenPrivate((pGC)->pScreen)->gcPrivateKeyRec)
#define fbGetGCPrivate(pGC) ((FbGCPrivPtr)dixLookupPrivate(&(pGC)->devPrivates, fbGetGCPrivateKey(pGC)))
#define fbGetScreenPixmap(s) ((PixmapPtr) (s)->devPrivate)
#ifdef FB_DEBUG
#define FB_HEAD_BITS (FbStip) (0xbaadf00d)
#define FB_TAIL_BITS (FbStip) (0xbaddf0ad)
void fbValidateDrawable(DrawablePtr d);
void fbSetBits(FbStip * bits, int stride, FbStip data);
#else
static inline void fbValidateDrawable(DrawablePtr d) {}
#endif /* FB_DEBUG */
Bool fbAllocatePrivates(ScreenPtr pScreen);
int fbListInstalledColormaps(ScreenPtr pScreen, Colormap* pmaps);
#endif /* XORG_FB_PRIV_H */

View File

@ -22,7 +22,7 @@
#include <dix-config.h>
#include "fb.h"
#include "fb/fb_priv.h"
static DevPrivateKeyRec fbScreenPrivateKeyRec;
DevPrivateKey

View File

@ -22,7 +22,8 @@
#include <dix-config.h>
#include "fb.h"
#include "fb/fb_priv.h"
#include "mizerarc.h"
#include <limits.h>

View File

@ -31,6 +31,66 @@
#include <dix-config.h>
#endif
#include "fb/fb_priv.h"
#define __FbMaskBits(x,w,l,n,r) { \
n = (w); \
r = FbRightMask((x)+n); \
l = FbLeftMask(x); \
if (l) { \
n -= FB_UNIT - ((x) & FB_MASK); \
if (n < 0) { \
n = 0; \
l &= r; \
r = 0; \
} \
} \
n >>= FB_SHIFT; \
}
/* Macros for dealing with dashing */
#define FbDashDeclare \
unsigned char *__dash, *__firstDash, *__lastDash
#define FbDashInit(pGC,pPriv,dashOffset,dashlen,even) { \
(even) = TRUE; \
__firstDash = (pGC)->dash; \
__lastDash = __firstDash + (pGC)->numInDashList; \
(dashOffset) %= (pPriv)->dashLength; \
\
__dash = __firstDash; \
while ((dashOffset) >= ((dashlen) = *__dash)) \
{ \
(dashOffset) -= (dashlen); \
(even) = 1-(even); \
if (++__dash == __lastDash) \
__dash = __firstDash; \
} \
(dashlen) -= (dashOffset); \
}
#define FbDashNext(dashlen) { \
if (++__dash == __lastDash) \
__dash = __firstDash; \
(dashlen) = *__dash; \
}
/* as numInDashList is always even, this case can skip a test */
#define FbDashNextEven(dashlen) { \
(dashlen) = *++__dash; \
}
#define FbDashNextOdd(dashlen) FbDashNext(dashlen)
#define FbDashStep(dashlen,even) { \
if (!--(dashlen)) { \
FbDashNext(dashlen); \
(even) = 1-(even); \
} \
}
#ifdef BITSSTORE
#define STORE(b,x) BITSSTORE(b,x)
#else
@ -785,7 +845,7 @@ POLYSEGMENT(DrawablePtr pDrawable, GCPtr pGC, int nseg, xSegment * pseg)
dstLine = dst + (intToY(pt1) + yoff + dstYoff) * dstStride;
dstLine += dstX >> FB_SHIFT;
dstX &= FB_MASK;
FbMaskBits(dstX, width, startmask, nmiddle, endmask);
__FbMaskBits(dstX, width, startmask, nmiddle, endmask);
if (startmask) {
WRITE(dstLine,
FbDoMaskRRop(READ(dstLine), andBits, xorBits,

View File

@ -25,6 +25,33 @@
#include <string.h>
#include "fb.h"
#ifdef FB_ACCESS_WRAPPER
#define MEMCPY_WRAPPED(dst, src, size) do { \
size_t _i; \
CARD8 *_dst = (CARD8*)(dst), *_src = (CARD8*)(src); \
for(_i = 0; _i < size; _i++) { \
WRITE(_dst +_i, READ(_src + _i)); \
} \
} while(0)
#define MEMSET_WRAPPED(dst, val, size) do { \
size_t _i; \
CARD8 *_dst = (CARD8*)(dst); \
for(_i = 0; _i < size; _i++) { \
WRITE(_dst +_i, (val)); \
} \
} while(0)
#else
#define MEMCPY_WRAPPED(dst, src, size) memcpy((dst), (src), (size))
#define MEMSET_WRAPPED(dst, val, size) memset((dst), (val), (size))
#endif /* FB_ACCESS_WRAPPER */
#define FbStipStrideToBitsStride(s) (((s) >> (FB_SHIFT - FB_STIP_SHIFT)))
#define InitializeShifts(sx,dx,ls,rs) { \
if (sx != dx) { \
if (sx > dx) { \

View File

@ -32,9 +32,9 @@
#include <X11/X.h>
#include "dix/colormap_priv.h"
#include "fb/fb_priv.h"
#include "mi/mi_priv.h"
#include "fb.h"
#include "micmap.h"
int

View File

@ -24,7 +24,7 @@
#include <stdlib.h>
#include "fb.h"
#include "fb/fb_priv.h"
void
fbCopyNtoN(DrawablePtr pSrcDrawable,

View File

@ -22,7 +22,7 @@
#include <dix-config.h>
#include "fb.h"
#include "fb/fb_priv.h"
static void
fbStipple(FbBits * dst, FbStride dstStride,

View File

@ -24,9 +24,9 @@
#include <stdlib.h>
#include "fb.h"
#include "fb/fb_priv.h"
const GCFuncs fbGCFuncs = {
static const GCFuncs fbGCFuncs = {
fbValidateGC,
miChangeGC,
miCopyGC,
@ -36,7 +36,7 @@ const GCFuncs fbGCFuncs = {
miCopyClip,
};
const GCOps fbGCOps = {
static const GCOps fbGCOps = {
fbFillSpans,
fbSetSpans,
fbPutImage,
@ -45,11 +45,11 @@ const GCOps fbGCOps = {
fbPolyPoint,
fbPolyLine,
fbPolySegment,
fbPolyRectangle,
miPolyRectangle,
fbPolyArc,
miFillPolygon,
fbPolyFillRect,
fbPolyFillArc,
miPolyFillArc,
miPolyText8,
miPolyText16,
miImageText8,

View File

@ -23,9 +23,10 @@
#include <dix-config.h>
#include "fb.h"
#include <X11/fonts/fontstruct.h>
#include "dixfontstr.h"
#include <X11/fonts/fontstruct.h>
#include "fb/fb_priv.h"
#include "include/dixfontstr.h"
static Bool
fbGlyphIn(RegionPtr pRegion, int x, int y, int width, int height)

View File

@ -24,7 +24,7 @@
#include <string.h>
#include "fb.h"
#include "fb/fb_priv.h"
void
fbPutImage(DrawablePtr pDrawable,

View File

@ -24,7 +24,13 @@
#include <stdlib.h>
#include "fb.h"
#include "fb/fb_priv.h"
#ifdef FB_DEBUG
static void fbInitializeDrawable(DrawablePtr pDrawable);
#else
static inline void fbInitializeDrawable(DrawablePtr pDrawable) {}
#endif
PixmapPtr
fbCreatePixmap(ScreenPtr pScreen, int width, int height, int depth,

View File

@ -22,7 +22,7 @@
#include <dix-config.h>
#include "fb.h"
#include "fb/fb_priv.h"
typedef void (*FbDots) (FbBits * dst,
FbStride dstStride,

View File

@ -22,7 +22,7 @@
#include <dix-config.h>
#include "fb.h"
#include "fb/fb_priv.h"
static void
fbPushPattern(DrawablePtr pDrawable,

View File

@ -22,9 +22,10 @@
#include <dix-config.h>
#include "fb/fb_priv.h"
#include "os/osdep.h"
#include "fb.h"
#undef CreateWindow
Bool
fbCloseScreen(ScreenPtr pScreen)

View File

@ -24,7 +24,9 @@
#include <stdlib.h>
#include "fb.h"
#include "fb/fb_priv.h"
#include "fb/fbbits.h"
#include "miline.h"
#define fbBresShiftMask(mask,dir,bpp) ((bpp == FB_STIP_UNIT) ? 0 : \

View File

@ -22,7 +22,7 @@
#include <dix-config.h>
#include "fb.h"
#include "fb/fb_priv.h"
void
fbSetSpans(DrawablePtr pDrawable,

View File

@ -24,7 +24,7 @@
#include <stdlib.h>
#include "fb.h"
#include "fb/fb_priv.h"
Bool
fbCreateWindow(WindowPtr pWin)

View File

@ -28,6 +28,7 @@
#include <xcb/xcb_keysyms.h>
#include <X11/keysym.h>
#include "fb/fb_priv.h"
#include "mi/mipointer_priv.h"
#include "os/client_priv.h"
#include "os/osdep.h"

View File

@ -36,6 +36,7 @@
#include <assert.h>
#include <X11/Xatom.h>
#include "fb/fb_priv.h"
#include "mi/mi_priv.h"
#include "dix_priv.h"
@ -47,7 +48,6 @@
extern int darwinMainScreenX, darwinMainScreenY;
extern Bool no_configure_window;
#endif
#include "fb.h"
#include "rootlessCommon.h"
#include "rootlessWindow.h"