Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions automated_updates_data.json
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,10 @@
{
"date": "2026-04-22",
"summary": "Improved resources-loading docs (named Preload scene action, documented SceneLoadingProgress expression and AreSceneAssetsLoaded condition, clarified custom loading screen approach) and added extension lifecycle functions table to events/functions docs"
},
{
"date": "2026-05-16",
"summary": "Improved keyboard docs (added Key just pressed, Any key released, on-screen keyboard caveat), window docs (centering, icon, resize mode, adaptive resolution, screen/window expressions, fullscreen aspect ratio), and screenshot docs (platform support, .png auto-extension)"
}
]
}
14 changes: 13 additions & 1 deletion docs/gdevelop5/all-features/keyboard/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,25 @@ title: Keyboard

GDevelop gives access to all inputs made on the keyboard. This includes conditions to check if a key was pressed or released.

!!! warning

Keyboard conditions do not work with the on-screen keyboard on touch devices. For mobile/touchscreen games, use the mouse/touch conditions instead.

## Any key pressed

For this condition, the corresponding action/s will be performed if any key on the keyboard is pressed.

## Any key released

For this condition, the corresponding action/s will be performed if any key on the keyboard is released.

## Key pressed

Whenever the key selected while setting this condition is pressed, the corresponding actions are performed.
Whenever the key selected while setting this condition is pressed, the corresponding actions are performed. This stays true as long as the key is held down — use "Key just pressed" if you want the condition to be true only for the single frame when the key is first pressed.

## Key just pressed

Whenever the key selected while setting this condition was just pressed (during the current frame), the corresponding actions are performed. This is useful for actions that should only happen once per key press, like opening a menu or firing a single shot, even if the player keeps the key held.

## Key released

Expand Down
6 changes: 6 additions & 0 deletions docs/gdevelop5/all-features/screenshot/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,10 @@ Note: As of GDevelop 5.0.0-beta92 the screenshot action is no longer an extensio

Use this action to save a screenshot of everything which is currently drawn on the game window into a *png* file.

!!! warning

Taking a screenshot is only supported when the game is running on Windows, macOS or Linux (as a desktop application). The action has no effect in browsers (web games) or on Android/iOS.

##### Parameters:

**Save path**: The file path where the screenshot should be saved.
Expand All @@ -21,6 +25,8 @@ The save path needs to be an absolute path on the file system (Like "C:\MyFolder

Relative paths are not supported.

If the path does not end with `.png`, the extension is automatically appended to the filename.

!!! note

In order to create a game that runs on all supported platforms you should use the special folders from the file system extension in combination with the path separator. These determine the path to common folders like *Pictures*, *Documents* or *Desktop* automatically. You can read more about it in [this article](/gdevelop5/all-features/filesystem).
Expand Down
31 changes: 31 additions & 0 deletions docs/gdevelop5/all-features/window/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,10 @@ The window of the game is the area in which the game is displayed. It DOES NOT r
## Fullscreen
The "De/activate fullscreen" action allows you to toggle the game between fullscreen on/off. When the window is in fullscreen, it will take up as much area as possible. You can control the action using the "YES" and "NO" actions.

For HTML5 games, this action has a second parameter to **keep the aspect ratio** of the game (enabled by default). When enabled, the game will keep its original proportions inside the fullscreen window — black bars may appear on the sides or top/bottom to fill the empty space. Disable it to stretch the game over the entire screen.

The condition "Fullscreen activated?" returns whether the game is currently displayed in fullscreen.

## Window margins
The margin of the window is the distance between the side of the window and the game window displayed. Shown below is the preview of a game with 100 px margins on all 4 sides.

Expand Down Expand Up @@ -39,6 +43,33 @@ By default, the game name is used for the executable name (on Windows, macOS and

With the action to change the title, the title bar on Windows, macOS and Linux will be changed. Nothing will be visible on Android and iOS. For HTML5 games, the web page title will be changed.

The expression `WindowTitle()` returns the current title of the window, which is useful to display or restore it later.

## Window icon

The "Window's icon" action lets you change the icon of the game window at runtime, using an image resource from your project. This only applies to desktop platforms (Windows, macOS, Linux) — on HTML5 games, the icon is set from the project's icons configuration and on mobile the launcher icon is used.

## Resize mode and adaptive resolution

Two actions control how the game adjusts when the player resizes the window (or rotates a phone):

- **Game resolution resize mode**: choose between `adaptWidth` (the game width is updated to fit the window), `adaptHeight` (the height is updated instead), or leave the option empty to keep the resolution fixed.
- **Automatically adapt the game resolution**: enables or disables continuous adaptation while the game is running. When disabled, the resolution is only set when the scene starts, and the game is stretched or letterboxed if the window changes afterwards.

These actions are useful for games that need to support arbitrary screen sizes (responsive UIs, mobile orientation changes) without committing to a single fixed resolution.

## Centering the game window

The "Center the game window on the screen" action repositions the system window in the middle of the user's screen. It only works on Windows, macOS and Linux (it has no effect in browsers or on iOS/Android).

## Screen and window expressions

Several expressions are available to read sizes:

- `SceneWindowWidth()` / `SceneWindowHeight()`: the size of the scene canvas in game pixels (the current game resolution).
- `ScreenWidth()` / `ScreenHeight()`: the inner size of the system window (or the browser page area for HTML5 games), in screen pixels.
- `ColorDepth()`: the color depth in bits per pixel.

## Reference

All actions, conditions and expressions are listed in [the window reference page](/gdevelop5/all-features/window/reference/).