Commit Graph

6681 Commits

Author SHA1 Message Date
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 6bd249a4c2 Merge pull request #104850 from Repiteo/core/warning-macros
Core: Integrate warning suppression macro helpers
2025-04-03 16:50:22 -05:00
Pāvels Nadtočajevs 65129d2aa2 [macOS] Fix native menu submenu items have wrong action and accelerators set. 2025-04-03 18:47:23 +03:00
Thaddeus Crews 207a2b6472 Core: Integrate warning suppression macro helpers 2025-04-03 10:13:46 -05:00
Thaddeus Crews 6392241742 Merge pull request #104959 from bruvzg/kde_swap
Linux: Detect KDE/LXQt and swap OK/Cancel buttons to Windows style.
2025-04-03 09:27:56 -05: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
Aaron Franke 2800948d61 Organize ifdefs for disabling navigation, physics, and XR 2025-04-02 08:24:24 -07:00
Thaddeus Crews 1f56d96cf2 Merge pull request #104893 from Repiteo/scons/external-includes-alt
SCons: Add `CPPEXTPATH` for external includes
2025-04-02 07:48:03 -05:00
Thaddeus Crews f25fc34439 SCons: Add CPPEXTPATH for external includes 2025-04-02 07:29:08 -05: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
Thaddeus Crews abd565eb19 Merge pull request #104844 from Ivorforce/gdsoftclass
Add and require `GDSOFTCLASS` for `Object` subclasses that want to cast but do not use `GDCLASS`.
2025-03-31 19:02:03 -05:00
Lukas Tenbrink fa0a3c9c6e Add and require GDSOFTCLASS for Object subclasses that want to cast but do not use GDCLASS. 2025-03-31 20:49:50 +02:00
Thaddeus Crews 64f80ca0e9 Merge pull request #104810 from kiroxas/utf8_cleanup
Replace `append_utfx` with direct `String::utfx`
2025-03-31 12:03:44 -05:00
Kiro 23129a66ed Replace append_utfx with direct String::utfx 2025-03-30 19:56:38 +02:00
LuoZhihao 138e990262 Replace the deprecated version macro 2025-03-30 18:00:19 +08:00
Thaddeus Crews 780cf03051 Merge pull request #104556 from Ivorforce/string-extend-instead-of-parse
Use `append_` instead of `parse_` for `String` methods.
2025-03-29 10:16:33 -05:00
Thaddeus Crews 7a28334596 SCons: Ensure MinGW as fallback if missing MSVC 2025-03-29 10:14:20 -05:00
Rémi Verschelde be1333dc0a Merge pull request #97002 from bruvzg/mbchar_iconv
Add methods to decode/encode multibyte encodings.
2025-03-28 17:29:47 +01:00
Rémi Verschelde 3b90bb56ad Merge pull request #89782 from KoBeWi/stdArrayList
Use initializer list in Arrays
2025-03-28 17:29:40 +01:00
bruvzg 48bfe13e4f Add methods to decode/encode multibyte encodings. 2025-03-28 17:32:34 +02:00
Rémi Verschelde 0419c92705 Merge pull request #104644 from bruvzg/macos_sync_mb
[macOS] Release keys and regenerate mouse events after native popup menu tracking.
2025-03-28 14:33:34 +01:00
Rémi Verschelde 3f82efa65d Merge pull request #104613 from zaevi/caching_csharp_tfm_validation
[.NET] Add caching for dotnet TFM validation result
2025-03-28 14:33:14 +01:00
Rémi Verschelde e9d827b440 Merge pull request #103173 from m4gr3d/fix_prebuilt_manifest_config
Updates and fixes to the Android prebuilt export logic
2025-03-28 14:31:57 +01:00
Rémi Verschelde fceae7ed89 Merge pull request #103000 from rburing/tell_me_WHICH_keystore
When code signing, specify which keystore is not found
2025-03-28 14:31:52 +01:00
Rémi Verschelde 0a502d31dc Merge pull request #94689 from Cliear/master
[Windows] Fix issue where newly created window incorrectly acquired the popup property.
2025-03-28 14:31:05 +01:00
Cliear 9dfa751425 [Windows] Fixed the issue where newly created window incorrectly acquired the popup property on Windows. 2025-03-28 04:10:03 +08:00
Lukas Tenbrink ffa6ef220b Use append_ instead of parse_ for String methods. 2025-03-27 17:51:02 +01:00
Pāvels Nadtočajevs 5665e55f9a [macOS] Fix running with DisplayServerHeadless. 2025-03-27 15:08:07 +02:00
kobewi 75881f8322 Use initializer list in Arrays 2025-03-26 18:38:15 +01:00
Zae e3373ed0a4 Add caching for dotnet TFM validation result 2025-03-26 22:43:17 +08:00
Pāvels Nadtočajevs d1edf66a13 [macOS] Release keys and regenerate mouse events after native popup menu tracking. 2025-03-26 12:18:55 +02:00
Pāvels Nadtočajevs 698ff2a192 [macOS] Fix cleanup with some command line tools. 2025-03-25 18:41:20 +02:00
Thaddeus Crews c3ecb72c3a Merge pull request #104397 from bruvzg/mac_main_loop
[macOS] Replace custom main loop with `[NSApp run]` and `CFRunLoop` observer.
2025-03-25 11:09:02 -05:00
Thaddeus Crews bf1c2583f4 Merge pull request #101954 from bruvzg/uid_deref
[Export] Convert `uid://` names to `res://` when exporting files.
2025-03-24 10:01:07 -05:00
Thaddeus Crews d35e22ff22 Merge pull request #104415 from zlago/patch-1
Export: Change unportable `echo` in the Linux/macOS debug launcher script
2025-03-24 10:00:57 -05:00
Pāvels Nadtočajevs a317ce75a6 [macOS] Replace custom main loop with [NSApp run] and CFRunLoop observer. 2025-03-24 10:31:16 +02:00
Thaddeus Crews 1cb3cfaa8e Style: Convert namespaces to PascalCase 2025-03-23 19:10:24 -05:00
Thaddeus Crews f09ee0171a Style: Begin integrating simple .clangd fixes 2025-03-22 13:24:35 -05:00
zlago 7e0ede1a16 change unportable echo in the linux/macos debug launcher script
`-n` and `-e` are not guaranteed to be supported by posix `echo`
2025-03-21 17:31:37 +01:00
Rémi Verschelde f7dfd64cc0 Merge pull request #104409 from syntaxerror247/mute-game
Add support for `Mute Game` toggle in the Android Editor
2025-03-21 13:04:15 +01:00
Rémi Verschelde 3e3cf292bd Merge pull request #104377 from Mickeon/translation-slight-duplicates
Tweak a few miscellaneous localization strings
2025-03-21 13:04:08 +01:00
Anish Mishra afe68f672f Add support for "Mute Game" toggle in the Android Editor 2025-03-21 01:33:38 +05:30
Rémi Verschelde 622dbe3713 Web: Fix editor build after #pragma once refactoring 2025-03-20 18:43:16 +01:00
Micky 5d794f83ed Tweak a few miscellaneous localization strings 2025-03-20 13:12:44 +01:00
Pāvels Nadtočajevs f3b6a4009d [Export] Convert uid:// names to res:// when exporting files. 2025-03-19 16:58:52 +02:00
kobewi 10f6c01b9c Remove ABS in favor of Math::abs 2025-03-19 13:52:40 +01:00
Rémi Verschelde 0648f55276 Merge pull request #104328 from Grublady/popup-mouse-enter
Update mouse-entered state when subwindow closes (macOS display server)
2025-03-19 12:27:30 +01:00