1
0
Fork 0
Commit Graph

254 Commits

Author SHA1 Message Date
Pāvels Nadtočajevs 0497522933
Change `DisplayServerMacOS` from `GDCLASS` to `GDSOFTCLASS`. Add `GDSOFTCLASS` to other display servers. 2025-04-10 09:18:58 +03:00
Thaddeus Crews 7a6c3b309f
Merge pull request #105130 from bruvzg/uri_fix_plus
Add uri_file_decode to handle + in file names.
2025-04-09 18:11:56 -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 4310cb82b8
AccessKit integration for macOS, Linux, and Windows. 2025-04-08 20:25:47 +03:00
Pāvels Nadtočajevs 9abe2e5294
Add `uri_file_decode` to handle `+` in file names. 2025-04-07 23:49:17 +03:00
Pāvels Nadtočajevs f37fb49739
Add separate `minimize_disabled` and `maximize_disabled` window flags. 2025-04-07 18:58:11 +03:00
Pāvels Nadtočajevs 52009b52d2
Detect KDE/LXQt and swap OK/Cancel buttons to Windows style. 2025-04-03 12:47:11 +03:00
Yufeng Ying 4f4031a675 Replace size() == 0 with is_empty(). 2025-04-02 19:18:43 +08:00
Pāvels Nadtočajevs 4638ade13f
Enable TTS on demand, instead of fully disabling it when project setting is not set. 2025-04-01 15:24:46 +03:00
Kiro 23129a66ed Replace append_utfx with direct String::utfx 2025-03-30 19:56:38 +02:00
Lukas Tenbrink ffa6ef220b Use `append_` instead of `parse_` for `String` methods. 2025-03-27 17:51:02 +01:00
Thaddeus Crews f09ee0171a
Style: Begin integrating simple `.clangd` fixes 2025-03-22 13:24:35 -05:00
Pāvels Nadtočajevs f6891b0305
[DisplayServer] Decouple `show_window(MAIN_WINDOW_ID)` from `DisplayServer` constructor, update project manager size/position after DS init. 2025-03-19 11:23:04 +02: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
Pāvels Nadtočajevs 18f6c33d72
[DisplayServer] Implement `get_accent_color` on Linux. 2025-03-14 09:05:03 +02:00
Pāvels Nadtočajevs fe38504aa0 [X11] Fix native dialog parent selection condition. 2025-03-08 16:28:25 +02:00
Thaddeus Crews 324512e11c
Style: Replace header guards with `#pragma once` 2025-03-07 17:33:47 -06:00
Thaddeus Crews c937b6d180
Merge pull request #102419 from Ivorforce/std-size
Use `std::size` instead of `sizeof(a) / sizeof(a[0])` pattern throughout the codebase.
2025-03-07 15:12:25 -06:00
bruvzg 3e4e6e6c0c Improve native file dialog parent window selection. 2025-03-06 17:15:39 +02:00
Thaddeus Crews 1f2d135444
Merge pull request #103526 from jamie-pate/fix_103522
Fix check for is_maximized in x11 to require both horizontal and vert
2025-03-05 12:07:41 -06:00
Pāvels Nadtočajevs 6ed12bfc5d [Linux/BSD] Offload RenderingDevice creation test to subprocess. 2025-03-04 13:18:26 +02:00
Jamie Pate 4f14f722b8 Fix check for is_maximized in x11 to require both horizontal and vertical
Fixes #103522

Persistent window state doesn't work if your window is 'tiled' in X11
gnome

3.x checks for `horz && vert`
4396e98834/platform/x11/os_x11.cpp (L1708)

4.x also checked `horz && vert` until this change where it was switched
to `horz || vert`
524f061c01 (diff-05f85bc3bf96d384f6b96260c758e63e10bbdd52b04f8ccb34649372e7bc1f48R1382)

The corrected logic is:
Check `horz && vert` for 'is_maximized'
Check `horz || vert` for 'can_maximize'
2025-03-03 15:45:21 -08:00
Hilderin 0c384e7217 Replace error to info messages for embedded game 2025-02-26 19:32:25 -05:00
Pāvels Nadtočajevs f710781b16 Prevent pending input event callbacks from erasing the window in the middle of a loop. 2025-02-18 15:26:13 +02:00
Adam Scott 1376828ef6
Fix `fr+oss` layout issues with KP period
Co-authored-by: Riteo Siuga <riteo@posteo.net>
2025-02-08 17:17:11 -05:00
Lukas Tenbrink e34f1f504c Use `std::size` instead of `sizeof(a) / sizeof(a[0])` pattern throughout the codebase. 2025-02-07 14:57:48 +01:00
Hilderin a3d03717c0 Fix Floating Window request close when a dialog is opened 2025-02-05 20:34:32 -05:00
Thaddeus Crews a63a8b430b
Merge pull request #102104 from Hilderin/fix-embedded-game-disappear-when-not-focused
Fix Embedded Game disappear when not focused on KDE 5
2025-02-05 10:27:38 -06:00
Thaddeus Crews a2d6e2e138
Merge pull request #102448 from adamscott/a-miserable-little-pile-of-secrets
Add `XK_KP_{Decimal,Enter}` to `KeyMappingX11::is_sym_numpad()`
2025-02-05 10:27:30 -06:00
Adam Scott e34e127062
Add `XK_KP_{Decimal,Enter}` to `KeyMappingX11::is_sym_numpad()` 2025-02-05 10:54:46 -05:00
Hilderin f7d1558bc0 Fix Embedded Game disappear when not focused on KDE 5
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2025-02-05 12:01:40 +01:00
Rémi Verschelde b4e16b4520 Merge pull request #102314 from Hilderin/fix-floating-window-overlapping
Fix Floating Window overlapping when on screen edge on KDE
2025-02-05 11:34:05 +01:00
Rémi Verschelde ab0c712bf5 Merge pull request #102311 from Hilderin/fix-floating-window-not-visible-after-restore
Fix Floating Window not visible after restore on KDE
2025-02-05 11:34:01 +01:00
Pāvels Nadtočajevs 05ca80632d [Linux] Implement native color picker. 2025-02-03 16:30:44 +02:00
Thaddeus Crews 480843cf2b
Merge pull request #101812 from bruvzg/portal_chk
[FreeDesktop portal] Check for `FileChooser` and `Settings` interface availability instead of assuming it's always available.
2025-02-03 08:16:10 -06:00
Riteo 140a63be25 Linux/BSD: Modify only keypad keys
The `keycode` field of `InputEventKey` is supposed to be "unshifted";
That is, what the key would output if no modifier keys were pressed.
This should match what's written on the key label, but `Key` enumerates
also all keypad keys, which require a modifier. We thus require some
extra checks for them.

Note that this can still allow "stuck keys", but that's an even deeper
problem.
2025-02-02 19:19:15 +01:00
Hilderin bc0efb86a9 Fix Floating Window overlapping when on screen edge 2025-02-01 22:27:57 -05:00
Hilderin 150191353f Fix Floating Window not visible after restore on KDE 2025-02-01 21:08:39 -05:00
Pāvels Nadtočajevs 86f56efbaa [FreeDesktop portal] Check for `FileChooser` and `Settings` interface availability instead of assuming it's always available. 2025-01-31 07:52:40 +02:00
Thaddeus Crews 3c80c14092
Merge pull request #101924 from adamscott/game-editor-non-cached-mouse-mode
Delegate handling `mouse_mode` to the `DisplayServer`
2025-01-28 16:08:56 -06: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
Hilderin 725dd4930e Fix BadWindow error when stopping embedded game on Linux 2025-01-25 20:30:40 -05:00
Hilderin 9eed43d429 Fix NOTIFICATION_WM_CLOSE_REQUEST in Embedded Floating Window 2025-01-21 21:03:15 -05:00
Pāvels Nadtočajevs 2e99d84e87 [DisplayServer] Add missing `FEATURE_WINDOW_DRAG` flag to Windows, X11 and Wayland display servers. 2025-01-14 15:26:32 +02:00
Pāvels Nadtočajevs 8d911b2554 [Window] Expose `start_drag` and `start_resize` methods (for both native and embedded windows). 2025-01-07 23:35:14 +02:00
Pāvels Nadtočajevs 7f0b4e58b0 Implement `DisplayServer.window_start_resize`. 2025-01-07 07:58:02 +02:00
Rémi Verschelde cc32e46360
Merge pull request #101135 from Hilderin/fix-embedding-not-working-intermittently
Fix embedding failing intermittently
2025-01-06 22:49:05 +01:00
Rémi Verschelde e06cac212b
Merge pull request #99893 from kiroxas/avoidUTF8ParsingWhenNotNecessary
Avoid duplicated `utf8()` calls
2025-01-06 22:47:12 +01:00
Hilderin 2f061df7b0 Fix embedding not working intermittently 2025-01-06 08:04:57 -05: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