X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Flibgame%2Fx11.h;h=3db9bae3aac2427a7329a46eaf8535e1a1341ef6;hb=29fc833ae1b5e46a429a9fa82098e8ad94f6f400;hp=c42f25cc54fe4d896277a192c5348b01351e2d2f;hpb=c9433eab5c4317ed4f89164b386a7d33562e29be;p=rocksndiamonds.git diff --git a/src/libgame/x11.h b/src/libgame/x11.h index c42f25cc..3db9bae3 100644 --- a/src/libgame/x11.h +++ b/src/libgame/x11.h @@ -34,6 +34,15 @@ #define TARGET_STRING "X11" #endif +#if defined(PLATFORM_UNIX) +/* This triggers some stuff that is needed because X11 (XSetClipOrigin(), + to be precise) is often very slow when preparing a masked XCopyArea() + for big Pixmaps. + To prevent this, small (tile-sized) mask Pixmaps are created which will + then be set much faster with XSetClipOrigin() and speed things up a lot. */ +#define TARGET_X11_NATIVE_PERFORMANCE_WORKAROUND +#endif + #define FULLSCREEN_STATUS FULLSCREEN_NOT_AVAILABLE @@ -295,6 +304,9 @@ struct XY inline void X11InitVideoDisplay(void); inline void X11InitVideoBuffer(DrawBuffer **, DrawWindow **); + +void X11ZoomBitmap(Bitmap *, Bitmap *); + Bitmap *X11LoadImage(char *); #endif /* X11_H */