21#include "../../SDL_internal.h"
23#if SDL_VIDEO_DRIVER_X11
29#include "../SDL_shape_internals.h"
37#if SDL_VIDEO_DRIVER_X11_XSHAPE
38 if (SDL_X11_HAVE_XSHAPE) {
42 result->mode.parameters.binarizationCutoff = 1;
60 unsigned int bitmapsize =
window->w / 8;
66 if(
data->bitmapsize != bitmapsize ||
data->bitmap ==
NULL) {
67 data->bitmapsize = bitmapsize;
72 return SDL_SetError(
"Could not allocate memory for shaped-window bitmap.");
93#if SDL_VIDEO_DRIVER_X11_XSHAPE
106 X11_XShapeCombineMask(windowdata->
videodata->
display,windowdata->
xwindow, ShapeBounding, 0, 0,shapemask, ShapeSet);
#define SDL_assert(condition)
#define SDL_SetWindowPosition
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
void SDL_CalculateShapeBitmap(SDL_WindowShapeMode mode, SDL_Surface *shape, Uint8 *bitmap, Uint8 ppb)
@ ShapeModeDefault
The default mode, a binarized alpha cutoff of 1.
#define SDL_SHAPEMODEALPHA(mode)
int X11_ResizeWindowShape(SDL_Window *window)
int X11_SetWindowShape(SDL_WindowShaper *shaper, SDL_Surface *shape, SDL_WindowShapeMode *shapeMode)
SDL_WindowShaper * X11_CreateShaper(SDL_Window *window)
EGLSurface EGLNativeWindowType * window
A collection of pixels used in software blitting.
struct wl_display * display
struct SDL_VideoData * videodata
The type used to identify a window.
A struct that tags the SDL_WindowShapeParams union with an enum describing the type of its contents.
WindowShapeMode mode
The mode of these window-shape parameters.