---
name: "SDL_WindowFlags"
section: "3type"
platform: "linux"
package: "libsdl3-doc"
version: "3.2.10+ds-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/SDL_WindowFlags"
---

# SDL\_WindowFlags(3type)

The flags on a window.

## NAME

SDL\_WindowFlags - The flags on a window.

## HEADER FILE

Defined in SDL3/SDL\_video.h

## SYNOPSIS

```
#include "SDL3/SDL.h"
```

**typedef Uint64 SDL\_WindowFlags;** **#define SDL\_WINDOW\_FULLSCREEN           SDL\_UINT64\_C(0x0000000000000001)    /\*\*\< window is in fullscreen mode \*/** **#define SDL\_WINDOW\_OPENGL               SDL\_UINT64\_C(0x0000000000000002)    /\*\*\< window usable with OpenGL context \*/** **#define SDL\_WINDOW\_OCCLUDED             SDL\_UINT64\_C(0x0000000000000004)    /\*\*\< window is occluded \*/** **#define SDL\_WINDOW\_HIDDEN               SDL\_UINT64\_C(0x0000000000000008)    /\*\*\< window is neither mapped onto the desktop nor shown in the taskbar/dock/window list; SDL\_ShowWindow() is required for it to become visible \*/** **#define SDL\_WINDOW\_BORDERLESS           SDL\_UINT64\_C(0x0000000000000010)    /\*\*\< no window decoration \*/** **#define SDL\_WINDOW\_RESIZABLE            SDL\_UINT64\_C(0x0000000000000020)    /\*\*\< window can be resized \*/** **#define SDL\_WINDOW\_MINIMIZED            SDL\_UINT64\_C(0x0000000000000040)    /\*\*\< window is minimized \*/** **#define SDL\_WINDOW\_MAXIMIZED            SDL\_UINT64\_C(0x0000000000000080)    /\*\*\< window is maximized \*/** **#define SDL\_WINDOW\_MOUSE\_GRABBED        SDL\_UINT64\_C(0x0000000000000100)    /\*\*\< window has grabbed mouse input \*/** **#define SDL\_WINDOW\_INPUT\_FOCUS          SDL\_UINT64\_C(0x0000000000000200)    /\*\*\< window has input focus \*/** **#define SDL\_WINDOW\_MOUSE\_FOCUS          SDL\_UINT64\_C(0x0000000000000400)    /\*\*\< window has mouse focus \*/** **#define SDL\_WINDOW\_EXTERNAL             SDL\_UINT64\_C(0x0000000000000800)    /\*\*\< window not created by SDL \*/** **#define SDL\_WINDOW\_MODAL                SDL\_UINT64\_C(0x0000000000001000)    /\*\*\< window is modal \*/** **#define SDL\_WINDOW\_HIGH\_PIXEL\_DENSITY   SDL\_UINT64\_C(0x0000000000002000)    /\*\*\< window uses high pixel density back buffer if possible \*/** **#define SDL\_WINDOW\_MOUSE\_CAPTURE        SDL\_UINT64\_C(0x0000000000004000)    /\*\*\< window has mouse captured (unrelated to MOUSE\_GRABBED) \*/** **#define SDL\_WINDOW\_MOUSE\_RELATIVE\_MODE  SDL\_UINT64\_C(0x0000000000008000)    /\*\*\< window has relative mode enabled \*/** **#define SDL\_WINDOW\_ALWAYS\_ON\_TOP        SDL\_UINT64\_C(0x0000000000010000)    /\*\*\< window should always be above others \*/** **#define SDL\_WINDOW\_UTILITY              SDL\_UINT64\_C(0x0000000000020000)    /\*\*\< window should be treated as a utility window, not showing in the task bar and window list \*/** **#define SDL\_WINDOW\_TOOLTIP              SDL\_UINT64\_C(0x0000000000040000)    /\*\*\< window should be treated as a tooltip and does not get mouse or keyboard focus, requires a parent window \*/** **#define SDL\_WINDOW\_POPUP\_MENU           SDL\_UINT64\_C(0x0000000000080000)    /\*\*\< window should be treated as a popup menu, requires a parent window \*/** **#define SDL\_WINDOW\_KEYBOARD\_GRABBED     SDL\_UINT64\_C(0x0000000000100000)    /\*\*\< window has grabbed keyboard input \*/** **#define SDL\_WINDOW\_VULKAN               SDL\_UINT64\_C(0x0000000010000000)    /\*\*\< window usable for Vulkan surface \*/** **#define SDL\_WINDOW\_METAL                SDL\_UINT64\_C(0x0000000020000000)    /\*\*\< window usable for Metal view \*/** **#define SDL\_WINDOW\_TRANSPARENT          SDL\_UINT64\_C(0x0000000040000000)    /\*\*\< window with transparent buffer \*/** **#define SDL\_WINDOW\_NOT\_FOCUSABLE        SDL\_UINT64\_C(0x0000000080000000)    /\*\*\< window should not be focusable \*/**

## DESCRIPTION

These cover a lot of true/false, or on/off, window state. Some of it is immutable after being set through  **SDL\_CreateWindow** (), some of it can be changed on existing windows by the app, and some of it might be altered by the user or system outside of the app's control.

## AVAILABILITY

This datatype is available since SDL 3.2.0.

## SEE ALSO

**•**(3), [**SDL\_GetWindowFlags**(3)](/SDL_GetWindowFlags/3.md)
