Thaddeus Crews
01fc9aee6c
Core: Modernize C headers with C++ equivalents
2025-05-02 08:23:01 -05:00
tthhr
e7a3729175
fix:Compile error in wayland display server when compiling linuxbsd platform after disabling dbus
2025-04-30 14:22:52 +08:00
Adam Scott
1fbc0c5631
[Buildsystem] Add EnumVariable(ignorecase=2)
2025-04-29 13:35:40 -04:00
Thaddeus Crews
3947cbe3b2
Merge pull request #104386 from Repiteo/core/cpp-math
...
Core: Replace C math headers with C++ equivalents
2025-04-27 19:21:22 -05:00
Thaddeus Crews
2bf7184ed9
Merge pull request #103865 from Repiteo/scons/__has_include
...
SCons: Remove `check_c_headers`
2025-04-25 11:36:06 -05:00
Thaddeus Crews
041c69db2f
Merge pull request #101454 from Riteo/fifo_ftw
...
Wayland: Handle `fifo_v1` and clean up suspension logic
2025-04-25 11:36:04 -05:00
Thaddeus Crews
007717faf9
SCons: Remove check_c_headers
...
• Can instead check for headers directly with `__has_include`, a C++17 feature
2025-04-25 11:30:39 -05:00
Pāvels Nadtočajevs
e61edcadb8
Print script backtrace in the crash handler.
2025-04-25 09:15:20 +03:00
Riteo Siuga
48882f3ca4
Wayland: Handle fifo_v1 and clean up suspension logic
...
Before, the WSI was unfortunately quite broken and we had work around it
by manually pacing frames. Needless to say it was not an ideal solution.
Now, the WSI can make use of the new fifo_v1 protocol to work properly.
If it's available, we'll trust the WSI by disabling manual frame pacing.
While we're at it, let's clean up the suspension code a bit by removing
some duplicated stuff and handling the suspension state through a switch
case.
2025-04-20 18:05:35 +02:00
Thaddeus Crews
ad40939b6f
Core: Replace C math headers with C++ equivalents
...
- Minor restructuring to ensure `math_funcs.h` is the central point for math functions
2025-04-16 15:49:02 -05:00
Thaddeus Crews
0d267e7b1e
Core: Add dedicated BitField
template
2025-04-11 11:53:26 -05:00
Thaddeus Crews
cad0cd94ef
Merge pull request #105225 from bruvzg/ds_gdsoft
...
Change `DisplayServerMacOS` from `GDCLASS` to `GDSOFTCLASS`. Add `GDSOFTCLASS` to other display servers.
2025-04-10 16:53:42 -05:00
Thaddeus Crews
cade15a163
Merge pull request #92475 from AThousandShips/string_replace_char
...
Add `String::replace_char(s)` methods for performance and convenience
2025-04-10 10:18:16 -05:00
Thaddeus Crews
722ddf6e6f
Merge pull request #103802 from Rindbee/set-unsupported-to-true-on-error-in-FreeDesktopScreenSaver
...
Set `unsupported` to true on error in `FreeDesktopScreenSaver`
2025-04-10 10:18:14 -05:00
A Thousand Ships
889410dcda
Add String::replace_char(s)
methods for performance and convenience
2025-04-10 13:08:45 +02:00
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
a8598cd8e2
Merge pull request #71542 from bruvzg/export_project_settings
...
[Export] Use project settings overrides with the target preset features instead of current platform features.
2025-04-09 08:51:47 -05:00
Thaddeus Crews
4362b11557
Merge pull request #103405 from van800/shakhov/macosx
...
Fix `.sln` project generation logic for Rider to support all OS and all C++ toolchains
2025-04-09 08:51:45 -05:00
bruvzg
c6739f64df
[Export] Use project settings overrides with the target preset features instead of current platform features.
2025-04-08 21:22:37 +03:00
Thaddeus Crews
295c0f5bd2
Merge pull request #105129 from Riteo/soft-serve
...
Wayland: Fix error spam for closed windows
2025-04-08 12:32:48 -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
Ivan Shakhov
6ff86e49cf
Fix .sln project generation logic for Rider to support all OS and all C++ toolchains
...
Co-authored-by: Andreia Gaita <shana@spoiledcat.net>
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2025-04-08 15:40:05 +02:00
Pāvels Nadtočajevs
9abe2e5294
Add uri_file_decode
to handle +
in file names.
2025-04-07 23:49:17 +03:00
Riteo
36d96f7f37
Wayland: Fix error spam for closed windows
...
I ported the new softclass macro too blindly. Apparently the various
window messages did not cast properly, skipping some important "deleted
window" checks.
2025-04-07 20:22:08 +02:00
Pāvels Nadtočajevs
f37fb49739
Add separate minimize_disabled
and maximize_disabled
window flags.
2025-04-07 18:58:11 +03:00
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
Pāvels Nadtočajevs
52009b52d2
Detect KDE/LXQt and swap OK/Cancel buttons to Windows style.
2025-04-03 12:47:11 +03: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
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
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
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
Micky
5d794f83ed
Tweak a few miscellaneous localization strings
2025-03-20 13:12:44 +01: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
Rémi Verschelde
28451c001a
Merge pull request #103815 from bruvzg/x11_fd_cond
...
[X11] Fix native dialog parent selection condition.
2025-03-14 00:08:45 +01:00
Aaron Franke
97ee05e9b7
Rename version defines to GODOT_VERSION_* to match GDExtension godot-cpp
2025-03-12 11:11:38 -07:00
Thaddeus Crews
991d01fb52
Merge pull request #103891 from shahriarlabib000/update_readme
...
Update logo/run icon path in platform READMEs
2025-03-10 21:05:55 -05:00
A Thousand Ships
331a43a9d8
Add String::remove_char(s)
methods for performance and convenience
2025-03-10 13:19:28 +01:00
shahriarlabib000
25a8b808d3
update logo/run icon path in README
2025-03-10 12:03:41 +06:00
风青山
7fd154c4b4
Set unsupported
to true on error in FreeDesktopScreenSaver
...
This avoids possible memory leaks when the editor exits.
2025-03-09 11:10:27 +08:00