Commit graph

1817 commits

Author SHA1 Message Date
风青山
85a1662e3b
Call EditorNode::set_edited_scene() manually instead of via the replacing_by signal
Cannot change `scene_root`'s child node in `EditorNode::set_edited_scene()`
if replaced later using `replace_by`.
2024-06-06 22:44:13 +08:00
kobewi
be111004dd Fix default NodePaths saved in scene 2024-06-03 13:10:23 +02:00
kobewi
f08a7e32c8 Fix project settings reloading 2024-06-01 11:38:43 +02:00
Rémi Verschelde
9c87e8c7b4
Merge pull request #91953 from AThousandShips/use_normal_sname
Use `CoreStringNames::normal` in more places
2024-05-31 14:16:05 +02:00
A Thousand Ships
cade5b88d9
Use CoreStringNames::normal in more places 2024-05-30 22:57:54 +02:00
A Thousand Ships
926afccbd8
[Scene] Add SceneStringNames::panel 2024-05-30 22:54:50 +02:00
A Thousand Ships
755a0efbb6
[Scene] Add SceneStringNames::id_pressed 2024-05-30 22:54:04 +02:00
风青山
9fe902b296
Fix errors when re-importing 3D asset files
Some 3D asset files are treated as scenes and may cause some errors when
importing.

When working through different scene tabs, we need to temporarily add
the scene root to the SceneTree to ensure that `editor_selection->add_node()`
can work smoothly. This avoids the error message: `ERROR: Condition
"!p_node->is_inside_tree()" is true.`

This also ensures that no other scenes are accidentally added to the
SceneTree causing the wrong display. When there is an inherited scene
tab open and it is not the current tab, the new root node is accidentally
added as a child node of `scene_root` during replacement.

Instantiate the scene early so caches in SceneState that are cleared
due to loading are rebuilt early. This avoids numerous error messages:
`This operation requires the node cache to have been built.`
2024-05-30 07:46:36 +08:00
Rémi Verschelde
c42751cae2
Merge pull request #91033 from Hilderin/keep_current_bottom_panel_on_play
Add editor setting to keep bottom panel state on play and stop game
2024-05-29 22:13:45 +02:00
Hilderin
76205d4276 Add editor setting to keep bottom panel state on play and stop game 2024-05-29 05:45:17 -04:00
Rémi Verschelde
47fa384b89
Merge pull request #92279 from SaracenOne/scene_reload_crashfix_2
Fix script properties being lost and prevent node reference corruption upon scene reimport
2024-05-29 11:19:48 +02:00
Rémi Verschelde
4d906f46b3
Merge pull request #90660 from adamscott/rename-file-updated-dialog
Improve UX when saving newer files on disk
2024-05-29 11:19:41 +02:00
Saracen
e57312d84e Updated scene hot-reloading:
Preserves exported script variables
Prevents corruption of direct node references.
2024-05-28 09:23:59 -07:00
Rémi Verschelde
c98fef08bf
Merge pull request #89033 from bruvzg/doc_end_err
[DisplayServer] Add error messages and descriptions to callbacks.
2024-05-28 17:48:42 +02:00
Saracen
846bafd47f Changes the scene reimport function to handle some crash edge cases:
* The reimported instance attempt to preserve ownerless nodes.
* A recursive function call to '_nodes_scene_reimported' so these can be recreated if required.
* Clears instance scene_state on new instantiated replacement nodes.
2024-05-28 08:42:16 -07:00
bruvzg
714effdf07
[DisplayServer] Add error messages and descriptions to callbacks. 2024-05-28 17:36:54 +03:00
A Thousand Ships
4ed62665a2
Replace .bind(...).call_deferred() with .call_deferred(...) 2024-05-27 13:29:57 +02:00
Hugo Locurcio
57f52092c3
Add Ctrl + R keyboard shortcut to restart particle emission in the editor
Restarting particle animation frequently is often done in the VFX
tweaking process.

This shortcut is available for both GPUParticles and CPUParticles,
in 2D and 3D.
2024-05-22 18:42:04 +02:00
kobewi
e065d7132a Remove duplicate shortcut definitions 2024-05-21 23:28:49 +02:00
Rémi Verschelde
9f4dbc6456
Merge pull request #91930 from godotengine/revert-90608-editor/enable-plugin-after-adding
Revert "Enable `EditorPlugin` added by modules and GDExtensions"
2024-05-15 20:21:32 +02:00
A Thousand Ships
ee79386f7b
[Scene] Add SceneStringNames::pressed 2024-05-14 15:51:28 +02:00
Raul Santos
a8e9dfdcf2
Revert "Enable EditorPlugin added by modules and GDExtensions" 2024-05-14 07:11:34 +02:00
kobewi
413c11357d Use Core/Scene stringnames consistently 2024-05-13 23:41:07 +02:00
Rémi Verschelde
0ebba3023e
Merge pull request #91435 from ajreckof/Fix-selecting-root-when-opening-scene-
Fix selecting root when opening scene.
2024-05-13 12:05:39 +02:00
ajreckof
0ab5d37049 Fix selecting root when opening scene. 2024-05-12 21:46:21 +02:00
Rémi Verschelde
a9a1d0a162
Merge pull request #91619 from AThousandShips/find_improve
Replace `find` with `contains/has` where applicable
2024-05-08 14:35:44 +02:00
Rémi Verschelde
b8255b148f
Merge pull request #91555 from AlexanderFarkas/master
Remove error messages caused by Save on Focus feature
2024-05-08 14:35:37 +02:00
Rémi Verschelde
0fcd30180f
Merge pull request #91039 from timothyqiu/dock-icons
Allow setting editor dock tabs to icon only
2024-05-08 14:35:29 +02:00
AlexanderFarkas
bc19b79776 Remove error messages caused by Save on Focus feature
Fixes #73765.
2024-05-08 13:42:45 +03:00
A Thousand Ships
a0dbdcc3ab
Replace find with contains/has where applicable
* Replaces `find(...) != -1` with `contains` for `String`
* Replaces `find(...) == -1` with `!contains` for `String`
* Replaces `find(...) != -1` with `has` for containers
* Replaces `find(...) == -1` with `!has` for containers
2024-05-08 12:37:42 +02:00
A Thousand Ships
955d5affa8
Reduce and prevent unnecessary random-access to List
Random-access access to `List` when iterating is `O(n^2)` (`O(n)` when
accessing a single element)

* Removed subscript operator, in favor of a more explicit `get`
* Added conversion from `Iterator` to `ConstIterator`
* Remade existing operations into other solutions when applicable
2024-05-04 16:08:55 +02:00
Rémi Verschelde
928441052b
Merge pull request #90608 from raulsntos/editor/enable-plugin-after-adding
Enable `EditorPlugin` added by modules and GDExtensions
2024-05-02 12:46:29 +02:00
Daylily-Zeleen
5c133f5432 Fix crash when switching main screen from a disabled plugin main screen if code editor is floating. 2024-05-01 15:05:56 +08:00
Haoyu Qiu
1e20612940 Allow setting editor dock tabs to icon only 2024-04-30 09:34:14 +08:00
Aaron Franke
1bcbbe96c4
Organize existing code for editor plugins 2024-04-27 11:59:58 -07:00
David Snopek
52324ebbb3 Fix GDExtension documentation disappearing after hot-reload 2024-04-25 07:24:55 -05:00
Rémi Verschelde
c50e80b481
Merge pull request #90653 from ajreckof/Fix-going-forward-backward-in-editor-selection-history-
Fix going forward backward in editor selection history.
2024-04-17 20:26:20 +02:00
Rémi Verschelde
544ecc123a
Merge pull request #90616 from Rindbee/update-undo-redo-allowed-after-switching-scene-tab
Update undo redo allowed after switching scene tab
2024-04-17 10:58:42 +02:00
风青山
b5157e0686
Make the loading scene open in the current scene tab if the current scene is empty 2024-04-16 23:04:25 +08:00
Hugo Locurcio
ed540964ee
Add an editor setting to import resources while unfocused
This can be used to speed up iteration by starting the import process
earlier when saving files in the project folder. This also allows getting
visual feedback on changes without having to click the editor window,
which is useful with multi-monitor setups.

The downside is that this increases idle CPU usage and may steal CPU
time from other applications when importing resources, so this is
disabled by default.
2024-04-15 19:40:04 +02:00
kobewi
445302a4b2 Improve error when scene/resource is saved with newer format 2024-04-15 12:08:35 +02:00
Adam Scott
a0e644eab5
Rename Q&A to Forum in the Help top bar 2024-04-14 15:34:49 -04:00
Adam Scott
38d8abea12
Improve UX when saving newer files on disk 2024-04-14 11:36:07 -04:00
ajreckof
48a6476861 Fix going forward backward in editor selection history. 2024-04-14 17:21:11 +02:00
风青山
29ef52c8ac
Update undo redo allowed after switching scene tab
It has different status in different tabs.
2024-04-13 16:53:51 +08:00
Raul Santos
db763ae16e
Enable EditorPlugin added by modules and GDExtensions 2024-04-13 06:03:59 +02:00
Rémi Verschelde
7c23d32446
Merge pull request #90441 from Calinou/editor-move-build-profile-editor
Move engine build profile editor to Tools submenu
2024-04-10 17:49:39 +02:00
Rémi Verschelde
9c5e968bbc
Merge pull request #90432 from Rindbee/correctly-replace-scene-root-when-must_reload
Correctly replace scene root when `must_reload` in `EditorData::check_and_update_scene()`
2024-04-10 14:22:29 +02:00
Rémi Verschelde
492c19732e
Merge pull request #86386 from timothyqiu/empty-layout-name
Strip edges of editor layout names
2024-04-10 14:21:37 +02:00
ajreckof
248e5bfba2
Revert what needs to be reverted 2024-04-10 09:49:30 +08:00