Go to the documentation of this file.
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);
int X11_SetWindowShape(SDL_WindowShaper *shaper, SDL_Surface *shape, SDL_WindowShapeMode *shapeMode)
A collection of pixels used in software blitting.
#define SDL_SHAPEMODEALPHA(mode)
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
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.
EGLSurface EGLNativeWindowType * window
#define SDL_assert(condition)
struct wl_display * display
struct SDL_VideoData * videodata
@ ShapeModeDefault
The default mode, a binarized alpha cutoff of 1.
SDL_WindowShaper * X11_CreateShaper(SDL_Window *window)
void SDL_CalculateShapeBitmap(SDL_WindowShapeMode mode, SDL_Surface *shape, Uint8 *bitmap, Uint8 ppb)
#define SDL_SetWindowPosition
int X11_ResizeWindowShape(SDL_Window *window)