Pāvels Nadtočajevs
42733a2a5c
Implement sparse bundle PCK support.
2025-06-26 00:47:25 +02:00
Rémi Verschelde
97cef7dce8
Merge pull request #107349 from beicause/project-settings-fix-enum-hint
...
ProjectSettings: Fix missing property hint of setting overrides
2025-06-13 15:53:51 +02:00
Lukas Tenbrink
b13a0e1834
Rename String::resize
to resize_uninitialized
, to better communicate to callers that new characters must be initialized.
2025-06-11 18:13:02 +02:00
smix8
877da269d8
Change navigation region and link updates to an async process
...
Changes navigation region and link updates to an async process.
2025-06-10 14:18:47 +02:00
LuoZhihao
6ad4820d34
ProjectSettings: Fix missing property hint of setting overrides
2025-06-10 18:08:23 +08:00
kobewi
b41d6ecf8c
Allow to override editor settings per project
2025-06-02 17:51:26 +02:00
Thaddeus Crews
d237e31a89
Style: Remove redundant DEBUG_METHODS_ENABLED
...
• Replaced with functionally identical and far more ubiquitous `DEBUG_ENABLED`
2025-05-15 13:09:41 -05:00
Thaddeus Crews
16aaa0a213
Merge pull request #103944 from KoBeWi/more_red_info
...
Improve error messages for `add_property_info()`
2025-05-08 07:19:33 -05:00
lawnjelly
f8f350a32a
Add GLOBAL_GET
cached macros.
...
GLOBAL_GET is an expensive operation which should not be used each frame / tick.
This PR adds macros which do a cheaper revision check, and only call the expensive GLOBAL_GET when project settings have changed.
Co-authored-by: Lukas Tenbrink <lukas.tenbrink@gmail.com>
2025-04-30 15:08:50 +01:00
kobewi
5af4bef46f
Inline static variables (part 1)
2025-04-29 18:10:44 +02:00
Thaddeus Crews
f8a8d6cf04
Merge pull request #105700 from dementive/config-file-get-improvement
...
Improve ConfigFile get_sections and get_section_keys by returning Vector<String>
2025-04-27 19:21:31 -05:00
dementive
b8e44a0000
Improve ConfigFile get_sections and get_section_keys by returning Vector<String>
2025-04-24 20:10:31 -04:00
dugramen
3354c32984
Keep ProjectSettings overrides right below the original setting
2025-04-24 15:00:40 -04:00
Thaddeus Crews
4972a524fc
Merge pull request #96139 from Alex2782/reverting_pr_84331
...
Add configuration option to disable `Scroll Deadzone` on Android
2025-04-11 09:51:08 -05:00
A Thousand Ships
889410dcda
Add String::replace_char(s)
methods for performance and convenience
2025-04-10 13:08:45 +02: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
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
Alex
cd68034e01
Add configuration option to disable Scroll Deadzone
on Android
2025-04-07 22:15:31 +02:00
Pāvels Nadtočajevs
f37fb49739
Add separate minimize_disabled
and maximize_disabled
window flags.
2025-04-07 18:58:11 +03:00
Michael Alexsander
556933306a
Allow to compile templates without navigation features
2025-04-01 11:53:35 -03: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
Thaddeus Crews
8b2952a71c
Merge pull request #101504 from AThousandShips/nav_split_new
...
[Navigation] Create a dedicated 2D navigation server
2025-03-30 09:05:43 -05: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
A Thousand Ships
5cc0539961
[Navigation] Create a dedicated 2D navigation server
...
* Add a dedicated 2D server
* Create dedicated tests
* Split performance metrics between 2D and 3D
* Rename the 3D only server module
2025-03-29 12:10:50 +01:00
Michael Alexsander
5ad414d046
Allow to compile templates without physics servers
2025-03-28 11:00:44 -03:00
Rémi Verschelde
e81eb3f1e9
Merge pull request #102354 from YYF233333/style_iterator
...
Use iterator pattern instead of manually traverse `List::Element *`
2025-03-28 14:31:40 +01:00
Rémi Verschelde
4e1e99142d
Merge pull request #102126 from Ivorforce/optimize-get_setting_with_override
...
Optimize `ProjectSettings::get_setting_with_override` / `GLOBAL_GET` by avoiding repeated dict lookups.
2025-03-28 14:31:36 +01:00
Yyf2333
22b5ec17fb
Using iterator pattern instead of List::Element *.
...
Co-authored-by: Adam Scott <ascott.ca@gmail.com>
2025-03-28 13:29:15 +08:00
Lukas Tenbrink
ffa6ef220b
Use append_
instead of parse_
for String
methods.
2025-03-27 17:51:02 +01:00
kobewi
602806101c
Improve error messages for add_property_info()
2025-03-20 22:39:09 +01:00
Thaddeus Crews
c8a94993bf
Merge pull request #103961 from bruvzg/win_pos_sync
...
Sync `display/window/size/initial_position_type` and `Window::WINDOW_INITIAL_POSITION_` enum.
2025-03-18 14:42:33 -05: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
56bc9bc2f4
Merge pull request #102984 from syntaxerror247/volume-buttons
...
Android: enable support for volume button events
2025-03-11 09:34:46 -05:00
Pāvels Nadtočajevs
d990f594a0
Sync display/window/size/initial_position_type
and Window::WINDOW_INITIAL_POSITION_
enum.
2025-03-11 08:33:02 +02:00
A Thousand Ships
331a43a9d8
Add String::remove_char(s)
methods for performance and convenience
2025-03-10 13:19:28 +01:00
A Thousand Ships
466590d0ec
Use get_slicec
instead of get_slice
for single character splitters
2025-03-08 20:36:37 +01:00
A Thousand Ships
5113022dfe
Clean up some uses of String::substr
...
Cases where the end position is either equvalent to the default or past
the end of the string.
2025-03-07 14:50:38 +01:00
Anish Mishra
5ce16dfc69
Android: enable support for volume button events
...
- Enable events KEY_VOLUMEUP and KEY_VOLUMEDOWN on Android.
- Adds a project setting to override volume buttons. It would disable system volume changes when the buttons are used within the project.
2025-02-28 09:47:22 +05:30
Rémi Verschelde
672fe2487f
Input: Change default deadzone back to 0.5 for ui_*
actions and axis pressed
state
...
Fixes #103360 .
Partial revert of changes in #97281 and #99135 .
2025-02-27 17:30:48 +01:00
Thaddeus Crews
24dccd40c1
Merge pull request #99479 from Sauermann/fix-remove-project-conversion
...
Remove temporary project conversion
2025-02-18 07:55:56 -06:00
Lukas Tenbrink
60443b1ae6
Optimize ProjectSettings::get_setting_with_override
/ GLOBAL_GET
by avoiding repeated dict lookups.
2025-01-29 14:11:15 +01:00
Pedro J. Estébanez
318af42020
Include more attributes in the global class names cache
2025-01-29 09:39:50 +01:00
Rie
d17ce4c37e
Fix "res://" being replaced by resource packs in the editor and on Android
2025-01-15 11:20:46 +01:00
axunes
50b90604af
macOS: search for project file in .app resources
2025-01-08 01:59:00 -05:00
Hugo Locurcio
62c17911ea
Add more property hint ranges for project settings
...
- Tweak property hint ranges for some networking settings to ensure
the minimum values don't break the debugger entirely.
- Ensure shader time rollover is set to at least 1, as 0 causes a division by
zero to occur.
All relevant project settings are now covered by a range hint.
2024-12-23 18:22:32 +01:00
Thaddeus Crews
bf9ef5f8a5
Merge pull request #100564 from YYF233333/iwyu
...
Remove unused headers in core
2024-12-19 19:59:55 -06:00
Yufeng Ying
be86ce3103
Apply iwyu suggestion in core.
2024-12-19 00:43:47 +08:00
HP van Braam
240f510fa7
Core ubsan fixes
...
This fixes UBSAN errors reported by running our testsuite, importing the
TPS demo, and running the TPS demo. I have tried, wherever possible, to
fix issues related to reported issues but not directly reported by UBSAN
because thse code paths just happened to not have been exercised in
these cases.
These fixes apply only to errors reported, and caused by, core/
The following things have been changed:
* Make sure there are no implicit sign changing casts in core.
* Explicitly type enums that are part of a public API such that users of
the API cannot pass in wrongly-sized values leading to potential stack
corruption.
* Ensure that memcpy is never called with invalid or null pointers as
this is undefined behavior, and when the engine is built with
optimizations turned on leads to memory corruption and hard to debug
crashes.
* Replace enum values only used as static values with constexpr static
const values instead. This has no runtime overhead. This makes it so
that the size of the enums is explicit.
* Make sure that nan and inf is handled consistently in String.
* Implement a _to_int template to ensure that all of the paths use the
same algorhithm, and correct the negative integer case.
* Changed the way the json serializer precision work, and added tests to
verify the new behavior. The behavior doesn't quite match master in
particulary for negative doubles as the original code tried to cast -inf
to an int. This then led to negative doubles losing all but one of
their decimal points when serializing. Behavior in GDScript remains
unchanged.
2024-12-18 14:31:12 +01:00