sdlSetWindowFullscreen function

bool sdlSetWindowFullscreen(
  1. Pointer<SdlWindow> window,
  2. bool fullscreen
)

Request that the window's fullscreen state be changed.

By default a window in fullscreen state uses borderless fullscreen desktop mode, but a specific exclusive display mode can be set using SDL_SetWindowFullscreenMode().

On some windowing systems this request is asynchronous and the new fullscreen state may not have have been applied immediately upon the return of this function. If an immediate change is required, call SDL_SyncWindow() to block until the changes have taken effect.

When the window state changes, an SDL_EVENT_WINDOW_ENTER_FULLSCREEN or SDL_EVENT_WINDOW_LEAVE_FULLSCREEN event will be emitted. Note that, as this is just a request, it can be denied by the windowing system.

\param window the window to change. \param fullscreen true for fullscreen mode, false for windowed mode. \returns true on success or false on failure; call SDL_GetError() for more information.

\threadsafety This function should only be called on the main thread.

\since This function is available since SDL 3.1.3.

\sa SDL_GetWindowFullscreenMode \sa SDL_SetWindowFullscreenMode \sa SDL_SyncWindow \sa SDL_WINDOW_FULLSCREEN

extern SDL_DECLSPEC bool SDLCALL SDL_SetWindowFullscreen(SDL_Window *window, bool fullscreen)

Implementation

bool sdlSetWindowFullscreen(Pointer<SdlWindow> window, bool fullscreen) {
  final sdlSetWindowFullscreenLookupFunction = libSdl3.lookupFunction<
      Uint8 Function(Pointer<SdlWindow> window, Uint8 fullscreen),
      int Function(Pointer<SdlWindow> window,
          int fullscreen)>('SDL_SetWindowFullscreen');
  return sdlSetWindowFullscreenLookupFunction(window, fullscreen ? 1 : 0) == 1;
}