Pāvels Nadtočajevs
3f757c41fc
Update access-kit to 0.17.0
2025-07-29 08:37:01 +03:00
Pāvels Nadtočajevs
6565c8e83f
[AccessKit] Update API to 0.16.0.
2025-06-03 10:49:04 +03:00
Pāvels Nadtočajevs
2d93e004b9
Cleanup and unify DisplayServer
screen methods and documentation.
2025-06-02 08:03:48 +03:00
Thaddeus Crews
0d267e7b1e
Core: Add dedicated BitField
template
2025-04-11 11:53:26 -05:00
Thaddeus Crews
e6a61b1ecc
Merge pull request #76829 from bruvzg/ac_kit_direct
...
Implement screen reader support using AccessKit library.
2025-04-08 12:32:47 -05:00
Pāvels Nadtočajevs
b106dfd4f9
Base accessibility API.
2025-04-08 20:14:28 +03:00
Pāvels Nadtočajevs
f37fb49739
Add separate minimize_disabled
and maximize_disabled
window flags.
2025-04-07 18:58:11 +03:00
Thaddeus Crews
1b9f269700
Merge pull request #105015 from syntaxerror247/improve-touchActionsPanel
...
Android Editor: Add an editor setting to enable/disable `TouchActionsPanel`
2025-04-07 08:43:24 -05:00
Anish Mishra
b462db5adb
Android: Hardware keyboard connection status callback
...
Adds a DisplayServer method to register hardware keyboard connection change callback.
2025-04-05 08:14:29 +05:30
Riteo
84d3adcf2f
Wayland: Implement native sub-windows
...
The backend is now mature enough to not explode with multiple windows
but the `DisplayServer` API still cannot meet some guarantees required
by the various Wayland protocols we use. To meet those guarantees this
patch adds three new elements to the DisplayServer API, with relative
handling logic for `Window` and `Popup` nodes:
- `WINDOW_EVENT_FORCE_CLOSE`, which tells a window to *forcefully*
close itself and ensure a proper cleanup of its references, as Wayland
enforces this behavior;
- `WINDOW_FLAG_POPUP_WM_HINT`, which explicitly declares a window as a
"popup", as Wayland enforces this distinction and heuristics are not
reliable enough;
- `FEATURE_SELF_FITTING_WINDOWS`, which signals that the compositor can
fit windows to the screen automatically and that nodes should not do
that themselves.
Given the size of this feature, this patch also includes various
`WaylandThread` reworks and fixes including:
- Improvements to frame wait logic, with fixes to various stalls and a
configurable (through a `#define`) timeout amount;
- A proper implementation of `window_can_draw`;
- Complete overhaul of pointer and tablet handling. Now everything is
always accumulated and handled only on each respective `frame` event.
This makes their logic simpler and more robust.
- Better handling of pointer leaving and pointer enter/exit event
sending;
- Keyboard focus tracking;
- More solid window references using IDs instead of raw pointers as
windows can be deleted at any time;
- More aggressive messaging to window nodes to enforce rects imposed by
the compositor.
2025-04-04 20:23:25 +02:00
Thaddeus Crews
207a2b6472
Core: Integrate warning suppression macro helpers
2025-04-03 10:13:46 -05:00
Thaddeus Crews
49fcd4ce46
Merge pull request #101546 from bruvzg/portal_color_picker
...
[Linux] Implement native color picker.
2025-03-17 10:52:29 -05:00
bruvzg
3e4e6e6c0c
Improve native file dialog parent window selection.
2025-03-06 17:15:39 +02:00
Pāvels Nadtočajevs
6ed12bfc5d
[Linux/BSD] Offload RenderingDevice creation test to subprocess.
2025-03-04 13:18:26 +02:00
AThousandShips
8ea725a181
[Windows] Fix unreachable code in DisplayServer
2025-02-25 17:37:02 +01:00
Pāvels Nadtočajevs
ab717497ef
[Windows] Offload RenderingDevice
creation test to subprocess.
2025-02-24 19:40:10 +02:00
Hilderin
a3d03717c0
Fix Floating Window request close when a dialog is opened
2025-02-05 20:34:32 -05:00
Pāvels Nadtočajevs
05ca80632d
[Linux] Implement native color picker.
2025-02-03 16:30:44 +02:00
Adam Scott
47f553ae0b
Delegate to the DisplayServer the task of handling mouse_mode
...
- Add `MOUSE_MODE_MAX` and various index checks
2025-01-28 11:22:27 -05:00
David Snopek
696285f23a
Use MethodInfo::get_compatibility_hash()
to generate the hash for MethodBind::get_hash()
and other GDExtension hash clean up
2025-01-11 15:57:42 -06:00
Pāvels Nadtočajevs
b252867145
[macOS/Windows] Add Emoji & Symbols
context menu item to LineEdit/TextEdit to show system character picker.
2025-01-10 09:25:34 +02:00
Aarni Koskela
f134769506
Fix various typos
...
* Add TODO notes for typos that should be fixed for 5.0
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2025-01-08 14:47:42 +02:00
Pāvels Nadtočajevs
7f0b4e58b0
Implement DisplayServer.window_start_resize
.
2025-01-07 07:58:02 +02:00
Rémi Verschelde
f5d21154d2
Merge pull request #100892 from syntaxerror247/patch-1
...
Warn if `virtual_keyboard_get_height()` is unsupported
2025-01-06 22:47:49 +01:00
Pāvels Nadtočajevs
e1f129cb52
Support MIME types in file dialog filters on macOS and Linux.
2025-01-04 22:05:35 +02:00
Anish Mishra
f588235441
Warn if virtual_keyboard_get_height() is unsupported
...
This PR updates the `DisplayServer::virtual_keyboard_get_height()` method to return 0 with a warning instead of throwing an error when the virtual keyboard is not supported.
2024-12-29 13:38:27 +05:30
Hilderin
9d2a4c03be
Embedding game process in editor
2024-12-18 17:52:42 -05:00
bruvzg
9fece033ab
[macOS, Windows] Add support for excluding windows from a screenshot.
2024-12-10 11:00:13 +02:00
Pāvels Nadtočajevs
84650f2018
Implement DisplayServer.beep
.
2024-12-03 12:43:26 +02:00
Pāvels Nadtočajevs
b248d66265
[macOS] Use native window drag for the custom editor title bars.
2024-12-02 17:40:27 +02:00
Anish Mishra
0dfd18c84b
[DisplayServer] Add feature flag for native file dialog access to user/res
and options
2024-10-30 14:13:43 +05:30
Thaddeus Crews
b7a0971ad2
Merge pull request #97934 from adamscott/give-AThousandShips-a-break
...
[Codestyle] Set clang-format `RemoveSemicolon` rule to `true`
2024-10-29 19:25:36 -05:00
Thaddeus Crews
07e759b74a
Merge pull request #97771 from dsnopek/openxr-linux-egl
...
OpenXR: Add support for Wayland on Linux
2024-10-25 13:04:08 -05:00
Adam Scott
0d350e7108
Set clang-format RemoveSemicolon
rule to true
...
- Set clang-format `Standard` rule to `c++20`
2024-10-25 13:49:43 -04:00
Thaddeus Crews
52bbbd4338
Merge pull request #98247 from TCROC/fix-headless-graphics-driver-and-shader-crash
...
Don't create rendering device or parse glsl shader in headless mode
2024-10-24 13:22:53 -05:00
Travis Lange
2e1fc241f9
fix headless import attempting to load graphics driver
2024-10-22 16:17:09 -04:00
Thaddeus Crews
f8c4a683d7
Core: Add DisplayServer
flag for sharp corners
2024-10-18 11:20:21 -05:00
David Snopek
256699ee31
OpenXR: Add support for Wayland on Linux
2024-10-04 11:44:05 -05:00
bruvzg
25f439c573
[DisplayServer] Implement has_hardware_keyboard method for Android and iOS.
2024-10-02 20:09:48 +03:00
Hugo Locurcio
62753701fd
Add caching to DisplayServer::can_create_rendering_device()
...
This greatly speeds up the method when using the Compatibility rendering
method, where this method is not guaranteed to return `true` in that case.
2024-10-01 19:43:46 +02:00
Gaktan
a45dd84724
Fix Vulkan Instance initialized twice in ProjectDialog
2024-09-17 20:35:10 +02:00
Stuart Carnie
a7a245de92
Metal: enable for betsy and lightmapper modules
...
To support this, the rendering_context_driver_metal.h header was updated
to recognise when it is included in non-Objective-C source files.
2024-08-31 08:29:07 +10:00
clayjohn
04d0e7f7a4
Check if RD is supported in the ProjectManager and disable creating RD projects if not supported.
2024-08-02 12:36:45 -07:00
Alvin Wong
97aa278edb
Pass window exclusive and transient properties for subwindow creation
...
On Windows this allows to avoid having to change the owner of the window
after it has been created, which in rare circumstances may cause the
window to bug out.
2024-07-25 00:27:27 +08:00
David Snopek
7a5a8597eb
Always render when XR is enabled, even if no OS windows can draw
2024-07-17 08:19:21 -05:00
kleonc
91e995e704
Fix creating cursor image from AtlasTexture
2024-06-05 01:44:05 +02:00
bruvzg
628c81d2d9
[DisplayServer] Add method to check if window transparency is supported and enabled.
2024-05-23 15:23:18 +03:00
Paulo Poiati
a3769c0edc
Properly set window class in Wayland
2024-05-22 10:42:12 -03:00
bruvzg
e5205e589f
[StatusIndicator] Add method to get indicator icon screen rect.
2024-05-02 14:39:33 +03:00
Rémi Verschelde
85062e37ef
Merge pull request #89588 from bruvzg/status_ind_menu_direct
...
[StatusIndicator] Switch API to use Texture2D instead of Image, improve handling on macOS, add method to set native popup menu directly.
2024-05-01 09:54:44 +02:00