Commit Graph

12440 Commits

Author SHA1 Message Date
clayjohn
5262fe21de Delete unused compression formats from .imoprt files when exporting
(cherry picked from commit dec86164e1)
2023-03-27 16:26:13 +02:00
Haoyu Qiu
ef06e5d786 Fix error when opening Inspector's dots menu
When the inspector is empty, opening the "extra resource options" menu
produces a error:

> Condition "current_res.is_null()" is true.

Opening the mneu with no current resource is valid use case, so
`ERR_FAIL_COND` should not be used.

(cherry picked from commit cb0fa0ed7b)
2023-03-16 16:42:53 +01:00
clayjohn
ec5f503289 Disallow creating a project in the Home or Documents folder
Also don't prompt users to delete the project folder for now.

This is a temporary fix to ensure that users do not delete their entire home folders by mistake

(cherry picked from commit 45a26ff292)
2023-03-16 16:42:09 +01:00
Hugo Locurcio
ab12edb6c6 Add "Bbcode" -> "BBCode" editor capitalization
This property name is used in RichTextLabel.

(cherry picked from commit 81858da2e6)
2023-03-16 16:41:16 +01:00
kobewi
5faebb712e Fix MultiNodeEdit not cleared after deleting nodes
(cherry picked from commit fbffd686e2)
2023-03-16 16:40:13 +01:00
Marius Hanl
3bb89a0911 Add conversion for common Theme Overrides
(cherry picked from commit a40f559fe2)
2023-03-16 16:37:38 +01:00
Danil Alexeev
5acc7a77fe Fix InputEventConfigurationDialog modifies original event
(cherry picked from commit 9fbf24fd5c)
2023-03-16 16:37:05 +01:00
Rémi Verschelde
d23922ffeb
i18n: Sync translations with Weblate 2023-03-15 02:29:27 +01:00
the-sink
38c0ad7c6c Redraw 2d viewport when guides are cleared
(cherry picked from commit 0c051f41b1)
2023-03-14 13:59:05 +01:00
Marius Hanl
3176016528 Convert OpenSimplexNoise to FastNoiseLite
- class name and octaves property

(cherry picked from commit 862296273b)
2023-03-14 13:59:05 +01:00
Yuri Sizov
c59c68cdec Make sure Script Debugger is updated with the editor theme
(cherry picked from commit 239eb31c90)
2023-03-14 13:59:05 +01:00
yedpodtrzitko
5824967f2f clear filter input in Project Settings when opening Layers
(cherry picked from commit e13bcf5b84)
2023-03-14 13:59:04 +01:00
Haoyu Qiu
38ad9c52b2 Add missing TTRs in tiles editor and array inspector
(cherry picked from commit bef7f14885)
2023-03-14 13:59:04 +01:00
Hayden Leete
26ab941507 Fix errors when closing floating docks
dock->get_index() on line 4463 was not behaving as expected
due to dock having an internal sibling, so now we just get the
index excluding internal nodes.

line 4742 would throw an error if you made multiple docks
floating then redocked the end docks first, but no longer

(cherry picked from commit 21578e0bb4)
2023-03-14 13:59:04 +01:00
Haoyu Qiu
b4a1bfd6d5 Fix coloring of the renderer options button
(cherry picked from commit ac7a4f6e87)
2023-03-14 13:59:03 +01:00
Ryan Roden-Corrent
47dc4bc307 Don't unset local_coords on starting transform.
This fixes a bug introduced by 806425621c, where dragging the gizmo no longer respected local transforms.

I'm not sure why I called set_local_coords_enabled(false) in _compute_edit. Removing this line seems to fix gizmo-dragging local transforms, without breaking anything else.

I also noticed that confirming a transform leaves the gizmo axis lines on the screen. This is fixed by calling update_transform_gizmo after clearing the edit mode/instant flags, so update_transform_gizmo knows not to render any axes.

(cherry picked from commit d3d1223b97)
2023-03-14 13:59:03 +01:00
Ryan Roden-Corrent
89a40d317d Disable local space for blender transforms.
Having local_space enabled when starting a transform changed the
behavior of VIEW space transforms. Now we disable local_space when
starting a blender transform (there was already logic to restore the
setting after the transform ends).

This also hides the gizmo while performing a blender transform,
otherwise the user will see it snap back and forth between the local and
global alignment. I think the transform looks cleaner with the gizmo
hidden anyways.

Fixes #59392.

(cherry picked from commit 806425621c)
2023-03-14 13:59:03 +01:00
Rémi Verschelde
7e74568709 FBX: Disable importer when canceling FBX2glTF setup
Pretty hacky solution but it's better than an infinite loop.

All this import setup needs to be redone, it's very difficult to properly
bail out from an invalid import without triggering reimport loops.

Also fix underline not visible at default editor scale in LinkButton.

Fixes #73319.

(cherry picked from commit d81e6ee024)
2023-03-14 13:59:02 +01:00
Yuri Sizov
84e9a79ace Add missing handler for removing font sizes in Themes
(cherry picked from commit 5a3dbea3ed)
2023-03-13 22:22:05 +01:00
Ninni Pipping
75e078d885 Fix type icons in PropertySelector
And adding a check to prevent future issues.

(cherry picked from commit ca86d53e7f)
2023-03-13 22:11:46 +01:00
Thomas Lobig
a755ac856a remove incorrect rename of get_used_cells_by_id
renaming get_used_cells_by_id to get_used_cells is not only unecessary, it introduces hard to debug issues

(cherry picked from commit d6a2197b3d)
2023-03-13 22:10:04 +01:00
clayjohn
13b37a50ae Add parentheses around arguments when converting xform
(cherry picked from commit 3ee5fbdb73)
2023-03-13 21:33:35 +01:00
Ryan Roden-Corrent
81f4996683 Add some missing renames to 3to4 tool.
MultiplayerPeerExtension isn't an exact replacement for
NetworkedMultiplayerCustom, but at least it gets you moving in the right direction.

Engine.editor_hint couldn't be fixed by the renames map, because you have to add a `()` at the end.

(cherry picked from commit 6b17c2b6e7)
2023-03-13 21:32:51 +01:00
Ryan Roden-Corrent
06e2c6ace2 Move tool declarations to top in 3to4.
In godot3, `tool` can follow keywords like `extends` and `class_name`
In godot4, `@tool` must be the first line in the file.

(cherry picked from commit 9a474fb99f)
2023-03-13 21:31:53 +01:00
Marius Hanl
9fff0fcbb5 Project Converter: Do not convert lines that start with a comment
Lines that start with # or // are ignored

(cherry picked from commit 8cf7ac3a45)
2023-03-13 21:31:23 +01:00
Ninni Pipping
f6709a1fda Add keycode project conversion
(cherry picked from commit fec630f360)
2023-03-13 21:28:58 +01:00
Marcus Elg
6041ad5c70 Fix Camera2D position smoothing properties not being grouped
(cherry picked from commit a835dfd96d)
2023-03-13 21:25:14 +01:00
Ryan Roden-Corrent
6cd227a35c Correct superclass constructors in 3to4.
Fixes #70542.

The 3to4 conversion tool was not handling superclass constructors.
We should translate the godot3 syntax:

```gdscript
func _init(a,b,c).(a,b,c):
    pass

func _init(a,b,c):
    super(a,b,c)
```

Originally, the _init conversion was intended to remove `void` return types from _init functions, as this was disallowed due to #50589.
As that was resolved by #53366, I removed that part of the conversion logic. If a void return type is present on a constructor, the converter now leaves it.

Here's a sample diff from my own project:

```diff
@@ -103,10 +105,11 @@ class Real:
 class Text:
        extends Setting

-       var choices: PoolStringArray
-       var value: String setget set_value, get_value
+       var choices: PackedStringArray
+       var value: String : get = get_value, set = set_value

-       func _init(section: String, key: String, default: String, choice_list: Array).(section, key, default) -> void:
+       func _init(section: String, key: String, default: String, choice_list: Array) -> void:
+               super(section, key, default)
                choices = choice_list

        func normalize(val):
@@ -129,9 +132,10 @@ class Text:
 class Boolean:
        extends Setting

-       var value: bool setget set_value, get_value
+       var value: bool : get = get_value, set = set_value

-       func _init(section: String, key: String, default: bool).(section, key, default) -> void:
+       func _init(section: String, key: String, default: bool) -> void:
+               super(section, key, default)
                pass
```

(cherry picked from commit 53a00abb11)
2023-03-13 21:19:53 +01:00
Ryan Roden-Corrent
1421838ba7 Don't strip whitespace when converting 3to4.
Fixes #74204.

The style guide says

> Always use one space around operators and after commas

The 3to4 conversion tool currently strips space in certain scenarios.
I've updated it to add space whenever it is generating new code.
In any case where it substitutes existing code, it leaves it as-is.

For example, connect(a,b,c) becomes `connect(a, callable(b, c))`, because the converter is adding new commads/parens.

However, `xform(Vector3(a,b,c))` becomes `Transform * Vector3(a,b,c)` because it uses the user's original Vector3 string whole. If the user originally had `xform(Vector3(a, b, c))`, then it becomes `Transform * Vector3(a, b, c)`.

Ideally we'd always preserve original formatting, but this seems quite difficult, so I tried to preserve it where we can, but air on the side of following the style guide whenever we're transforming code.

(cherry picked from commit d3684e662f)
2023-03-13 21:18:53 +01:00
Ninni Pipping
857cd853de Fix TileSetEditor paiting texture_origin Vector2i
(cherry picked from commit fb317546fe)
2023-03-13 14:52:22 +01:00
Haoyu Qiu
093d237138 Fix dock name lost translation after layout change
* After you click in the dock select panel
* After you load an editor layout

(cherry picked from commit 43bf0ca8d2)
2023-03-13 14:49:17 +01:00
bruvzg
764fe8ac51 Automatically reparent editor message dialogs to avoid error spam.
(cherry picked from commit 921f3b7589)
2023-03-13 14:48:33 +01:00
SaracenOne
d929784491 Stop toaster notification circle flickering when notifications are all hidden.
(cherry picked from commit ab61624c78)
2023-03-13 14:47:14 +01:00
Niels Drost
94db7f866b TileSet editor was out of sync with TileMap and incorrectly overwrote old selected TileSet after an edit call with a null pointer.
(cherry picked from commit 66374c8dce)
2023-03-13 14:45:26 +01:00
Danil Alexeev
f4ea9df0f4 Fix GDScript code style regarding colon
(cherry picked from commit ea5fd3d732)
2023-03-13 14:42:27 +01:00
Ninni Pipping
8dca093d97 Document editor/naming/scene_name_casing setting
Moved definitions of editor related project settings to `editor/register_editor_types.cpp` to make documentation work.

(cherry picked from commit 3de5332fcb)
2023-03-13 14:25:46 +01:00
Yuri Sizov
234c601a61 Improve logic related to editing audio buses (and prevent crashes)
(cherry picked from commit 68c18c0e2b)
2023-03-13 14:19:41 +01:00
Yuri Sizov
048c252602 Prevent cache corruption when saving resources in the editor
(cherry picked from commit 496bd94c21)
2023-03-13 14:16:13 +01:00
Hayden Leete
7490f89238 Fix crash when revealing file in floating FileSystem Dock
When selecting "Show in FileSystem" from the context menu of a resource
in the inspector, the engine would crash if the FileSystem dock was
floating because it was trying to focus the FileSystem tab, but floating
docks don't use Tab Containers. This commit makes the FileSystem dock's
window grab focus instead if it's floating.

(cherry picked from commit c4d1513e15)
2023-03-13 14:15:18 +01:00
Yuri Sizov
755a86f502 Generate empty textures for theme icons if the SVG module is disabled
(cherry picked from commit 64215ad119)
2023-03-13 14:12:44 +01:00
Yuri Sizov
671f8eb790 Ensure that editor color map is initialized in the project manager 2023-03-11 02:04:54 +01:00
Haoyu Qiu
17a130cbd1
Fix "Convert Full Project" button not translated
Also fixes a typo in the CHANGELOG.

(cherry picked from commit e03bfd6f7f)
2023-03-06 10:10:02 +01:00
Rémi Verschelde
2f34a35722
i18n: Sync translations with Weblate 2023-03-01 00:11:39 +01:00
Gilles Roudière
1a2caf28e3 Fix a crash in the GLB importer 2023-02-27 17:24:03 +01:00
Rémi Verschelde
7cf1ec1cd4
Add 3-to-4 renames for project settings in project.godot
In the ConfigFile format, the first subpath is the category and is not part
of the line that the regex would match.

Fixes #66125.
2023-02-27 13:34:35 +01:00
Rémi Verschelde
6eb25f238f
Cleanup 3-to-4 renames, prevent common words replacements
Fixes #73505.
Fixes #73996.
2023-02-27 13:14:22 +01:00
Rémi Verschelde
0cd1483132
Merge pull request #73959 from clayjohn/GL-mobile-warnings
Add warnings for unsupported features in mobile and gl_compatibility backends
2023-02-26 21:39:06 +01:00
clayjohn
c69b14e96e Add warnings for unsupported features in mobile and gl_compatibility backends 2023-02-26 12:28:02 -08:00
Rémi Verschelde
c6443e9a4e
Merge pull request #73954 from KoBeWi/BugEx
Fix wrong OS regex in project converter
2023-02-26 14:28:17 +01:00
Thomas Lobig
dbb5e377fb
Converter: Rename 3.x Vector2 clamped to limit_length 2023-02-26 13:41:26 +01:00
kobewi
0ba6e36e40 Fix wrong OS regex in project converter 2023-02-26 13:02:57 +01:00
Rémi Verschelde
75c0027e5a
Merge pull request #73887 from nklbdev/master
fix typo `set_polygon` in GenericTilePolygonEditor
2023-02-25 01:01:26 +01:00
nklbdev
834a6c5983
fix typo set_polygon in GenericTilePolygonEditor 2023-02-25 00:57:34 +05:00
bruvzg
cebfc02d6f
Revert "Reordering emitted signals in PopupMenu" and fix editor selection issue in the safer way. 2023-02-24 21:17:05 +02:00
Rémi Verschelde
eec165e1f5
i18n: Sync translations with Weblate 2023-02-24 14:43:04 +01:00
Rémi Verschelde
cd699fedd8
Merge pull request #73855 from CheesecakeCG/scene-import-animationlibrary-tab-fix
Fix settings not appearing for Animation Libraries in the Scene Import window
2023-02-24 14:00:18 +01:00
hare_ware
f3095b7c9d Fix settings not appearing for Animation Libraries in the Scene Import window 2023-02-23 21:38:50 -05:00
Gordon MacPherson
e395eaf447 Fix editor resource preview deadlocking with --headless mode 2023-02-23 20:57:19 +00:00
Rémi Verschelde
e10a15fc19
Export: Default to exporting S3TC + BPTC for PC platforms
This is now required after #72031 when using HDRs.

Could have further cleanup as I think these import options may not be needed
at all anymore, and etc/etc2 support doesn't seem to make much sense.
Likewise, the hardcoded "s3tc" in `get_platform_features` could maybe be
removed. But this is material for after 4.1.

Fixes #73789.
2023-02-23 18:42:28 +01:00
Rémi Verschelde
13382a88df
Merge pull request #73814 from lyuma/importer_mesh_convex
import: Fix uv2 by avoiding premature ImporterMesh::get_mesh()
2023-02-23 13:55:43 +01:00
Rémi Verschelde
a5e944661d
Merge pull request #73775 from SaracenOne/fix_node_ownership_on_scene_update_addition
Fix ownership bug on ancestor nodes when scene is reimported
2023-02-23 13:53:47 +01:00
Rémi Verschelde
873c50732d
Merge pull request #73687 from Calinou/editor-convex-import-fix-max-convex-hulls-crash
Add a property hint to fix crash when setting max convex hulls below 0
2023-02-23 13:53:24 +01:00
Hugo Locurcio
7899726b98
Add a property hint to fix crash when setting max convex hulls below 0
Generating less than 1 convex hull is not valid anyway.
2023-02-23 13:51:12 +01:00
Lyuma
51a4fe1d53 import: Fix uv2 by avoiding premature ImporterMesh::get_mesh()
Implements create_convex_shape in ImpoterMesh.
Note: ImporterMeshInstance3D::get_mesh() is safe.
The only dangerous function with side effects is ImpoterMesh::get_mesh()
2023-02-23 11:55:28 +01:00
Lyuma
cb35471cb0 import: Pass the correct defaults to generated collision shapes.
Solves incorrect defaults, as well as applied scale failing to apply.
The default values are removed, and they differ from collision shape defaults
These values must match the defaults defined in resource_importer_scene.cpp
2023-02-23 03:03:04 +01:00
Rémi Verschelde
02583ddde8
Merge pull request #72460 from Calinou/project-manager-disable-incompatible-rendering-methods
Disable incompatible rendering methods in the project manager
2023-02-22 22:47:07 +01:00
Hugo Locurcio
8ebc5b2875
Disable incompatible rendering methods in the project manager
The project manager can now only create projects that use a rendering
method compatible with the current platform. Rendering methods that
are disabled at build-time are also grayed out (only for OpenGL).

While it is possible in theory to create a project using Forward+
on web (thanks to the automatic fallback),
it will look different once edited on a desktop platform.
2023-02-22 19:57:17 +01:00
George Marques
554b55ae74
Load script for addons without cache
Since they are postponed sometimes due to transient script errors, it
needs to try again without the cache to compile the script again
instead of using the failed one.
2023-02-22 15:52:36 -03:00
SaracenOne
7bbd7833de Fix ownership bug on ancestor nodes when scene is reimported. 2023-02-22 18:21:14 +00:00
bruvzg
4593ad23fd
Add some missing EditorFileDialog methods and properties. 2023-02-22 11:55:08 +02:00
Rémi Verschelde
ba5a70ccc9
Merge pull request #73708 from davicr/output_font_setting_fix
Add Output font size in Theme regeneration conditions
2023-02-22 10:14:52 +01:00
Rémi Verschelde
0a15f51617
Merge pull request #73741 from dalexeev/fix-sprite-frames-convert
Fix `SpriteFrames` data loss on 3-to-4 conversion
2023-02-22 10:13:57 +01:00
Rémi Verschelde
c86f18698e
Merge pull request #73726 from KoBeWi/parenting_problems
Fix Polygon3DEditor parenting errors
2023-02-22 10:13:13 +01:00
Rémi Verschelde
e0cba314b9
Merge pull request #73725 from RevoluPowered/implement-automatic-rename-for-import-file-root-node3d
Implement automatic rename for Spatial to Node3D in .import files using 3 to 4 conversion utility
2023-02-22 10:13:08 +01:00
Rémi Verschelde
91aed4b9b5
Merge pull request #73694 from m4gr3d/update_touchscreen_editor_settings_main
Enable granular control of touchscreen related settings
2023-02-22 10:12:42 +01:00
Danil Alexeev
d49ac0466f
Fix SpriteFrames data loss on 3-to-4 conversion 2023-02-22 11:17:10 +03:00
Fredia Huya-Kouadio
445053a62d Enable granular control of touchscreen related settings 2023-02-22 00:16:39 -08:00
kobewi
f3040be3ba Fix Polygon3DEditor parenting errors 2023-02-22 03:17:29 +01:00
Gordon MacPherson
8a86d8411e Implement automatic rename for project
- Import must rename nodes/root_type="Spatial" to "Node3D":
- Resolves ownership issues with calling:
	scene->replace_by(base_node);
  when the original root type was Spatial.
2023-02-22 02:10:55 +00:00
Davi
21fcf657ce Add Output font size in Theme regeneration conditions 2023-02-21 17:45:20 -03:00
kobewi
5906d6de8e Fix line folding with multiple carets 2023-02-21 21:28:26 +01:00
Rémi Verschelde
6acc7f03ed
Merge pull request #73595 from KoBeWi/missingno
Fix missing directories when exporting from cmd
2023-02-21 11:14:34 +01:00
bruvzg
64ba999eb1
Fix shortcut reset. 2023-02-21 08:08:53 +02:00
Rémi Verschelde
62d4d8bfc6
Merge pull request #73634 from KoBeWi/merged_into_error
Fix tile atlas merging crash
2023-02-20 22:46:31 +01:00
bruvzg
b3c64675cc
[macOS] Replace all Alt/Option+Letter/Number default shortcuts to avoid conflicts with special character input. 2023-02-20 22:02:47 +02:00
kobewi
56251cf08c Fix tile atlas merging crash 2023-02-20 18:22:44 +01:00
kobewi
ff42cb0d1e Fix missing directories when exporting from cmd 2023-02-20 17:39:38 +01:00
Rémi Verschelde
410360ef04
Merge pull request #73592 from pattlebass/conversion-popup-cutoff
Increase minsize for some Project Conversion dialogs
2023-02-20 15:41:48 +01:00
Rémi Verschelde
3e0a989bd1
Merge pull request #73237 from KoBeWi/did_you_know_that_the_maximum_branch_name_length_is_250_bytes_this_means_that_this_branch's_diff_could_probably_fit_into_its_name,_because_it's_so_ridiculously_small._Why_are_you_reading_this_btw
Fix corrupt undo after making sub-resources unique
2023-02-20 15:41:00 +01:00
pattlebass
a16dfaa39c
Increase minsize for some Project Conversion dialogs
This is more of a workaround than a fix.
The underlying issue is that `ConfirmationDialog` doesn't always update its size
if you change its text. (or it updates it AFTER it had already popped up).
`wrap_controls` doesn't help here.
2023-02-20 15:20:55 +01:00
Rémi Verschelde
6f64349bfe
i18n: Sync translations with Weblate 2023-02-20 12:09:15 +01:00
Rémi Verschelde
4cd2aec2f0
Merge pull request #73604 from KoBeWi/make_read_only_only_if_not_already_read_only_and_make_not_read_only_only_when_is_read_only
Apply inspector read_only only when changed
2023-02-20 11:29:05 +01:00
kobewi
860da7bc77 Apply inspector read_only only when changed 2023-02-20 09:55:06 +01:00
kobewi
21b021a705 Remove path hard-coding in editor_build_profile 2023-02-19 20:58:36 +01:00
Rémi Verschelde
f2a2e47009
Merge pull request #71398 from honix/property-revert-release-focus
Fix property revert doesn't revert selected fields
2023-02-19 01:02:20 +01:00
Rémi Verschelde
9ccfe68d50
Merge pull request #73526 from YuriSizov/branded-project-llc
Add a custom icon for the `project.godot` file in the `EditorFileDialog`
2023-02-19 01:01:08 +01:00
Yuri Sizov
e9c7b8d224
Merge pull request #71850 from WesleyElliott/fix-custom-node-export 2023-02-18 12:40:09 +03:00
Yuri Sizov
ed8554bff6
Merge pull request #73513 from YuriSizov/bone2d-remove-deprecated-methods
Remove deprecated methods from Bone2D
2023-02-18 04:32:49 +03:00
Yuri Sizov
236cec0633 Add a custom icon for the project.godot file in the EditorFileDialog 2023-02-17 22:42:23 +01:00
Yuri Sizov
0c27edf3d9
Merge pull request #73512 from groud/fix_tilemap_dragging_selection
Fix TileMap dragging selection
2023-02-17 23:41:56 +03:00