1
0
Fork 0
Commit Graph

361 Commits

Author SHA1 Message Date
kobewi b41d6ecf8c Allow to override editor settings per project 2025-06-02 17:51:26 +02:00
Pāvels Nadtočajevs 8cb2817976
[PCK] Move directory to the end of file, write exported/saved PCK in place. 2025-06-02 12:54:09 +03:00
Dario 5a30a7e7cd Add shader baker to project exporter.
Metal Support contributed by Migeran (https://migeran.com) and Stuart Carnie.

Co-authored-by: Stuart Carnie <stuart.carnie@gmail.com>
Co-authored-by: Gergely Kis <gergely.kis@migeran.com>
2025-05-27 12:45:27 -03:00
Thaddeus Crews 99f5a3d665
Merge pull request #106870 from timothyqiu/add-metadata-dialog-includes
Cleanup header includes for AddMetadataDialog
2025-05-27 09:39:37 -05:00
Haoyu Qiu f0fc5ffd3e Cleanup header includes for AddMetadataDialog 2025-05-27 21:45:00 +08:00
Lukas Tenbrink 4cb8a0c77e Add `resize_initialized` and `resize_uninitialized` to `Vector`. These functions serve as replacements for `resize`, to make sure the caller understands whether elements need to be initialized 'by hand' after the call. 2025-05-26 18:35:41 +02:00
Travis Lange a350e01dc7 Fix ios and android plugin always invalid due to null ConfigFile 2025-05-23 11:41:13 -04:00
kobewi 42249bb659 Add @export_file_path to export raw paths (no UID) 2025-05-22 13:25:17 +02:00
Ricardo Sanchez-Saez 47971c0a27
Introduce 'visionos' platform derived from 'apple_embedded' 2025-05-19 15:47:01 -07:00
Ricardo Sanchez-Saez 457299449d
Introduce 'drivers/apple_embedded' abstract platform for code reuse 2025-05-19 15:37:13 -07:00
Haoyu Qiu 88d922c55e Cleanup header includes in Tree 2025-05-15 14:28:00 +08:00
kobewi e7e48cd58c Allow undoredo actions to not make history unsaved 2025-05-13 02:40:31 +02:00
kobewi d32d2e9b51 Remove NOTIFICATION_ENTER_TREE when NOTIFICATION_THEME_CHANGED is used 2025-05-06 15:28:03 +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
kobewi e565ee86ce FileDialog code cleanup 2025-04-23 19:28:14 +02:00
Thaddeus Crews eb6e8e59b1
Merge pull request #91594 from RedMser/remove-old-path-remaps
Remove old path remaps system
2025-04-23 12:01:25 -05:00
RedMser a96e8ac62c Remove old path remaps system
Unused in public repositories, deprecated for over 6 years, and the
replacement system is well-tested by now.
2025-04-23 15:48:33 +02:00
Pāvels Nadtočajevs 5b49fd4207
Selectively apply `FOCUS_ACCESSIBILITY` to the `Label`s instead of setting it by default. 2025-04-23 12:47:31 +03:00
Thaddeus Crews 94282d88f9
Core: Use `Math` namespace for constants 2025-04-10 16:29:30 -05:00
A Thousand Ships 889410dcda
Add `String::replace_char(s)` methods for performance and convenience 2025-04-10 13:08:45 +02: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
Yufeng Ying f7e4987d0e Dictionary::get_key_list use LocalVector instead of List. 2025-04-09 02:46:24 +08: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
Pāvels Nadtočajevs 302fa831cc
Initial editor accessibility. 2025-04-08 20:25:48 +03:00
Yufeng Ying 8ae16699c5 Do not use Dictionary::keys() for Dictionary iteration. 2025-04-05 18:42:13 +08:00
Yufeng Ying 4029051bb1 Change ClassDB::get_inheriters_from_class. 2025-04-04 23:47:19 +08:00
Yufeng Ying 4f4031a675 Replace size() == 0 with is_empty(). 2025-04-02 19:18:43 +08: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
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
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 ecda77959c
Merge pull request #99590 from Calinou/version-double-build-name
Add `double` to the version full build string when using a double-precision build
2025-03-28 14:31:23 +01:00
Lukas Tenbrink ffa6ef220b Use `append_` instead of `parse_` for `String` methods. 2025-03-27 17:51:02 +01: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
Hugo Locurcio 2044bd898a Add `double` to the version full build string when using a double-precision build
This means that `double` is now visible in the command line startup version,
project manager, editor About dialog and at the bottom of the editor.
This is because double-precision mode has a significant impact on how the
editor and projects run.

Similar to `mono` for C# builds, this affects which export templates the editor
looks for, since it needs a different set of export templates.

The export templates manager now indicates that no official double-precision export
template downloads are currently available (although the `dev` status message
takes priority over it).
2025-03-22 19:02:15 +01:00
Thaddeus Crews 581d675eeb
Core: Convert `Math` class to namespace 2025-03-21 10:29:18 -05:00
Pāvels Nadtočajevs f3b6a4009d
[Export] Convert `uid://` names to `res://` when exporting files. 2025-03-19 16:58:52 +02:00
kobewi 6f25babd6b Remove empty constructors and destructors from editor/ 2025-03-17 21:20:02 +01:00
Fredia Huya-Kouadio 845c925b67 Add support for export plugins to modify the Android prebuilt manifest 2025-03-14 16:05:09 -07:00
Lukas Tenbrink f4de2cd22a Use `resize_zeroed` instead of `resize` then `fill(0)` in several places. 2025-03-14 12:09:39 +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 3ade6e2fc6
Merge pull request #101295 from kiroxas/RemoveAllocationsAndMemcpyInCodesign
Remove unnecessary allocations and memcpy  in Codesign.cpp
2025-03-12 10:31:52 -05:00
Kiro 5a71e6a36a Remove allocations and memcpy that were not necessary 2025-03-12 08:34:24 +01:00
Thaddeus Crews a557252324
Merge pull request #103235 from etherealxx/export-template-online-button
Add "Go Online" button on Export Template Manager
2025-03-11 09:34:41 -05:00
A Thousand Ships 466590d0ec
Use `get_slicec` instead of `get_slice` for single character splitters 2025-03-08 20:36:37 +01:00
Thaddeus Crews 324512e11c
Style: Replace header guards with `#pragma once` 2025-03-07 17:33:47 -06:00
Thaddeus Crews d9125ebebe
Merge pull request #101293 from Ivorforce/string-to-pointer-conversion
Remove implicit conversions from `String`, `Char16String` and `CharString` to data pointers.
2025-03-07 15:12:12 -06:00
TrueJole 555caeaecc
Use text_overrun for project export errors 2025-03-04 21:40:10 +01:00
Etherealxx 9cbfeff940 Add "Go Online" button on Export Template Manager
Godot 4.4 introduces network mode, which by default sets to offline.
Some features are disabled on offline mode, including downloading export
templates. Newcomers to the engine that has no knowledge about the network
mode might be confused on why the Export Template Manager tells them that
they're offline, despite them having internet connection.

This commit introduces a message that tells the user that online mode is
required, and a link button that user can click to enable online mode from
the Export Template Manager popup UI. Some code changes also made to make
sure that the button and message only shows on official build only.
2025-03-04 09:04:09 +07:00
Jānis Kiršteins 0e266b0099
[iOS] Sync the boot splash and the launch screen image scale modes 2025-02-12 17:41:18 +01:00
Pāvels Nadtočajevs b3f7c8f5d3 [Export] Respect icon/splash screen import settings. 2025-01-31 07:45:16 +02:00
Mikael Hermansson fddf30d028 Fix patch PCKs incorrectly marking imported resources for removal 2025-01-27 21:00:06 +01:00
Thaddeus Crews 1022c6b907
Merge pull request #100920 from Summersay415/uid-moment
Ensure icon and splash paths on export
2025-01-22 16:32:28 -06:00
Lukas Tenbrink 512abc38b2 Remove implicit conversions from String, Char16String and CharString to data pointers. Make conversions to StrRange implicit to aid transition. 2025-01-17 17:31:58 +01:00
Adam Scott 33e16435f5
Replace some problematic uses of `String::num` to `String::num_int64` 2025-01-15 12:51:51 -05:00
Malcolm Anderson 6b33037021 Add menu bar item for "Pack Project as ZIP..."
Apply suggestions from code review

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Fix includes

Update editor/editor_node.cpp

Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2025-01-09 20:37:02 -08:00
Rémi Verschelde 3ac4da1620 Merge pull request #101233 from Ivorforce/utf8-multicall
Optimize calls of `utf8` in a few spots to avoid calling it more than once.
2025-01-09 13:50:55 +01: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
Rémi Verschelde 0fee2724f0 Merge pull request #100751 from YYF233333/force_regex_with_editor
Force build editor with regex module, remove checking code
2025-01-07 23:17:35 +01:00
Lukas Tenbrink 0fddf6a824 Optimize calls of `utf8` in a few spots to avoid calling it more than once. 2025-01-07 17:24:21 +01:00
Yufeng Ying 34d8255947 Force build editor with regex module, remove checking code.
Fix include.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2025-01-07 19:43:23 +08:00
Pāvels Nadtočajevs 3d60ce9389 [Export] Allow using ICU data from export templates instead of editor embedded data. 2025-01-07 08:15:09 +02:00
Summersay415 0edd24da6a Ensure icon and splash paths on export 2024-12-30 12:23:43 +07:00
A Thousand Ships a1846b27ea
Improve use of `Ref.is_null/valid`
Use `is_null` over `!is_valid` and vice versa.
2024-12-23 16:35:02 -05:00
Yufeng Ying f241c1fda0 Remove unused header in editor.
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2024-12-24 00:40:38 +08:00
ArchercatNEO 00a791f04e Use temp dirs instead of cache dirs for export
Fixes #95897
During CI scenarios $HOME may be set to an invalid value (such as
`/var/empty`).
Using temp dirs fits better with godot's usage of these paths and is
independent from the user's $HOME.
2024-12-08 12:07:17 +00:00
Thaddeus Crews c153f963ce
Merge pull request #99947 from Meorge/ignore-macosx-in-zip
Ignore `__MACOSX` directory for export template and project ZIPs
2024-12-05 14:12:22 -06:00
Malcolm Anderson 2336415623 Ignore `__MACOSX` directory in export template collection ZIP file and project import ZIP file
Update editor/export/export_template_manager.cpp

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2024-12-04 13:31:26 -08:00
Pāvels Nadtočajevs c5ca56f40b [Export] Write text server data from memory, instead of using temporary file. 2024-12-02 18:22:55 +02:00
Rémi Verschelde e6125ef51b
Merge pull request #98763 from AThousandShips/more_sname_uses
Use `SceneStringName` in more places
2024-12-02 15:50:44 +01:00
Rémi Verschelde 872681c5ee
Merge pull request #98739 from bruvzg/exp_dup
[Editor] Copy encryption and script settings on export preset duplication.
2024-12-02 15:50:36 +01:00
A Thousand Ships af56d6e8e8
Use `SceneStringName` in more places 2024-12-02 14:39:16 +01:00
Thaddeus Crews 9e259ef061
Merge pull request #97884 from passivestar/list-variations
Add theme type variations for secondary Trees and ItemLists
2024-11-27 10:47:14 -06:00
mendrak c57eaf7757 Fix issue #97207 by filtering extension_list.cfg
The implemented solution to the problem of the error message
appearing when an excluded GDExtension in an export of a project, is
to filter the lines in the extension_list.cfg file to only include
those that are in the paths actually included for export.  If there
are no entries remaining, don't write the file at all.
2024-11-21 19:27:21 +02:00
passivestar 0ff5d5fd04 Add theme type variations for secondary Trees and ItemLists 2024-11-19 18:33:30 +04:00
Giganzo 8a8fd299f8 Add persistent states for export with debug, as patch on editor restarts 2024-11-17 21:15:48 +01:00
Chaosus f3344b71b1 Fix incorrect order: `TTR(vformat` instead of `vformat(TTR` 2024-11-14 11:37:17 +03:00
bruvzg 45593d45b3 Allow setting custom initialization vector for FileAccessEncrypted. Add export setting to set static seed for PCK encryption initialization vectors. 2024-11-13 08:16:12 +02:00
Thaddeus Crews d76fbb7a40
Merge pull request #97356 from reduz/pck-file-removal
Add ability for PCK patches to remove files
2024-11-11 14:18:27 -06:00
Juan 2ac562cdf8 Add ability for PCK patches to remove files
Co-authored-by: Mikael Hermansson <mikael@hermansson.io>
2024-11-11 16:34:37 +01:00
Thaddeus Crews 925b690c98
Core: Integrate `Ref::instantiate` where possible 2024-11-10 12:41:26 -06:00
bruvzg 2506742013
[Editor] Copy encryption and script settings on export preset duplication. 2024-11-01 23:44:14 +02:00
Thaddeus Crews 696ca9db3c
Merge pull request #98039 from aaronfranke/button-icon
Rename internal Button `*_icon` functions to `*_button_icon` to match exposed methods
2024-10-29 19:25:59 -05:00
Aaron Franke 562c666e3d
Rename internal Button icon to button_icon to match exposed methods 2024-10-29 16:23:03 -07: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
Haoyu Qiu 9ed655d0eb Don't flip playback control buttons in RTL layout 2024-10-16 16:28:11 +08:00
Anish Mishra 2323042e7b Refresh Filesystem Dock after android build template is created 2024-10-08 06:30:44 +05:30
bruvzg 3ab1b75117
[GDExtension] Improve error messages during export. 2024-10-03 14:54:40 +03:00
Rémi Verschelde 70ac89e776
Merge pull request #96980 from m4gr3d/enable_legacy_build_customization_by_plugin
Expose `get_export_option_visibility` to editor plugins
2024-10-01 17:30:49 +02:00
Fredia Huya-Kouadio 7a909896f7 Expose `get_export_option_visibility` to editor plugins 2024-09-29 15:05:05 -07:00
Rémi Verschelde 8a9a26ef19
Merge pull request #93311 from dsnopek/gdextension-required-virtuals
GDExtension: Mark virtual function as `is_required` in `extension_api.json`
2024-09-27 13:53:16 +02:00
Rémi Verschelde 2912cb9975
Merge pull request #97118 from mihe/patch-exports
Add ability to export patch packs
2024-09-26 12:45:42 +02:00
Mikael Hermansson d3be030ea6 Add ability to export patch packs
Co-authored-by: Poq Xert <poqxert@poqxert.ru>
2024-09-25 17:07:28 +02:00
Thaddeus Crews 9f9ee0c813
SCons: Add unobtrusive type hints in SCons files 2024-09-25 09:34:35 -05:00
Thaddeus Crews b37fc1014a
Style: Apply new `clang-format` changes 2024-09-20 08:09:48 -05:00
Haoyu Qiu 14321b8ed5 Set auto translate mode for drag previews
- Controls
  - `LineEdit`, `TextEdit`: Always disabled since it's dragging user input.
  - `TabBar`: Use the same auto translate mode as the node.
  - `RichTextLabel`: Always disable since auto translation is done
    differently from other controls (selection text you get
    programmatically is always after auto translation).
- Editor
  - Disable drag preview auto translation if the text is user input,
    filename, or class name.
  - Also disabled unexpected auto translation for audio bus effect names.
2024-09-19 19:21:29 +08:00
Raul Santos 0aa46e19c5
C#: Fallback to CoreCLR/MonoVM hosting APIs when hostfxr/NativeAOT fails
Some platforms don't support hostfxr but we can use the coreclr/monosgen library directly to initialize the runtime.

Android exports now use the `android` runtime identifier instead of `linux-bionic`, this removes the restrictions we previously had:
- Adds support for all Android architectures (arm32, arm64, x32, and x64), previously only the 64-bit architectures were supported.
- Loads `System.Security.Cryptography.Native.Android` (the .NET library that binds to the Android OS crypto functions).
2024-09-16 17:07:03 +02:00
A Thousand Ships dd6443193c
[Editor] Expose more editor settings to documentation
Co-authored-by: Tomasz Chabora <kobewi4e@gmail.com>
2024-09-12 15:34:49 +02:00