Hugo Locurcio
6ae54fd787
Move EditorNode setting registration so they are in class reference
...
Co-authored-by: Micky <micheledevita2@gmail.com>
2024-02-17 11:33:22 +01:00
Rémi Verschelde
66b33c15e4
Merge pull request #88297 from dsnopek/android-configure-gradle-path
...
Android: Allow using alternative Gradle build directory
2024-02-17 00:23:32 +01:00
David Snopek
a37ad265dc
Android: Allow using alternative Gradle build directory
2024-02-16 15:20:47 -06:00
Matt Enad
5b5de0e167
Add hover highlight to main editor buttons
...
Updates styling of the editor run bar, plugin, bottom panel, icon buttons, and main menu buttons for accessibility.
2024-02-16 14:49:44 -05:00
Michael Alexsander
7b42c24550
Make auto translation inheritable
2024-02-15 16:51:19 -03:00
Rémi Verschelde
3ed81a8f70
Merge pull request #88334 from passivestar/ctrl-tab-mac
...
[macOS] Fix `Ctrl+Tab` and `Ctrl+Shift+Tab` not working
2024-02-15 15:45:15 +01:00
Rémi Verschelde
828cf954f6
Merge pull request #88291 from dsnopek/export-plugin-option-overrides
...
Allow export plugins to override export option values
2024-02-15 15:45:07 +01:00
passivestar
757a691b5e
Fix `Ctrl+Tab` and `Ctrl+Shift+Tab` on macOS
2024-02-15 02:49:31 +04:00
Joseph DiGiovanni
7eacb6ddbf
Add follow system theme settings
2024-02-14 15:31:21 -05:00
David Snopek
ac88acde6f
Allow export plugins to override export option values
2024-02-14 10:51:16 -06:00
Rémi Verschelde
351a869af6
Merge pull request #88288 from KoBeWi/uninspectorable
...
Rework how script is edited when clicking icon
2024-02-13 23:43:43 +01:00
Rémi Verschelde
dc99c8d4a4
Merge pull request #87008 from KoBeWi/cache_mode_replace_fixes²
...
Fix² behavior of ResourceFormatLoader `CACHE_MODE_REPLACE`
2024-02-13 23:43:18 +01:00
Rémi Verschelde
c2a53dff71
Merge pull request #87773 from bruvzg/undo_global_fix
...
Fix script editor `undo` shortcut with global menu enabled.
2024-02-13 17:24:03 +01:00
kobewi
8ec86e29c8
Rework how script is edited when clicking icon
2024-02-13 16:54:33 +01:00
Hugo Locurcio
7e25292205
Show update spinner by default in `dev_build=yes` editor builds
...
This ensures contributors can see when something forces the
editor to redraw constantly.
The existing boolean `true` value will be casted to `1` in the setting,
so it'll switch to Enabled automatically if the setting was previously
enabled.
2024-02-10 00:45:56 +01:00
Rémi Verschelde
b98c2f23da
Merge pull request #48364 from Calinou/add-vsync-editor-setting
...
Add a V-Sync editor setting
2024-02-08 10:52:59 +01:00
Hugo Locurcio
6f9586443a
Add a V-Sync editor setting
...
The editor setting makes it possible to tweak V-Sync status
independently of the project setting.
Use cases:
- Decrease input lag and increase editor responsiveness when editing
a project that has V-Sync enabled.
- Avoid tearing when editing a project that has V-Sync disabled.
2024-02-05 22:14:20 +01:00
smix8
4d0c21c131
Make MeshLibrary export do recursive depth-search for MeshInstance3D nodes
...
Makes MeshLibrary export do recursive depth-search for MeshInstance3D nodes.
2024-02-04 04:00:38 +01:00
bruvzg
32939f82f1
Fix script editor `undo` shortcut with global menu enabled.
2024-01-31 07:48:58 +02:00
Hugo Locurcio
d3963a979b
Tweak Help menu icons for better visibility of commonly used items
...
External links no longer have an icon, so that commonly used items
such as Copy System Info are more immediately visible.
2024-01-31 01:22:09 +01:00
kobewi
4ad74a5663
Some editor code cleanup
2024-01-30 21:33:31 +01:00
Yuri Sizov
068c0d2699
Implement a quick settings dialog for the project manager
...
Currently it allows to adjust language, theme preset,
UI scaling, and network mode.
Project manager has been updated to support
dynamic theme updates.
2024-01-30 17:52:19 +01:00
Yuri Sizov
7496f99060
Create a MainScreenButton theme variation
...
This turns custom font theme properties into a proper
variation, which makes applying it simpler.
2024-01-30 17:35:46 +01:00
Juan Linietsky
000367893a
Ability to move FileSystem dock to bottom
...
* Allows moving the filesystem dock to the bottom
* Added ability to drag resources across bottom docks
2024-01-29 15:15:38 +01:00
Rémi Verschelde
fa48a51183
Merge pull request #87688 from AThousandShips/what_is_this
...
Remove unnecessary `this->` expressions
2024-01-29 13:18:09 +01:00
Rémi Verschelde
0796d08b8f
Merge pull request #84515 from Calinou/editor-multi-window-unavailable-disable-buttons
...
Disable multi-window buttons instead of hiding them when support is unavailable
2024-01-29 13:16:01 +01:00
Rémi Verschelde
e2c5d2fada
Merge pull request #82113 from nongvantinh/fix-50163
...
Allow Editor to reload external changes of scripts
2024-01-29 13:15:53 +01:00
A Thousand Ships
15369fdb1d
Remove unnecessary `this->` expressions
2024-01-29 09:59:18 +01:00
Hugo Locurcio
04a930d9a6
Disable multi-window buttons instead of hiding them when support is unavailable
...
This is more explicit as for why this functionality isn't available
depending on editor settings and current platform.
This also exposes a `EditorInterface.is_multi_window_enabled()` method
so that editor plugins can easily query whether the editor is able and
expected to create multiple windows.
2024-01-27 19:38:39 +01:00
Nông Văn Tình
c051c44df9
Allow Editor to reload external changes of scripts
2024-01-26 21:05:36 +07:00
A Thousand Ships
97b469c46d
[Editor] Add `EditorPlugin::scene_saved` signal
...
Matches the `EditorNode` one for parity with the exposed
`resource_saved` signal
2024-01-22 17:51:12 +01:00
Yuri Sizov
de95a3effe
Merge pull request #85117 from BastiaanOlij/openxr_runtime_select
...
OpenXR: Add runtime selection dropdown
2024-01-18 19:26:52 +01:00
Bastiaan Olij
afd1dcf1b1
OpenXR: Add runtime selection dropdown
2024-01-18 15:59:22 +01:00
Yuri Sizov
45eedba1fa
Improve editor theme generation after the refactor
2024-01-17 15:16:53 +01:00
Yuri Sizov
635b8a1474
Split theme generation logic into several subroutines
...
This change introduces a new theme configuration struct to be
passed to the aforementioned routines to better control reuse
of styles and definitions in the generator.
Everything not passed and not explicitly shared is scoped so it
is not automatically accessible throughout the routine. This
should ensure that the decision to share styles is a conscious one.
In the future we will try to reduce the number of unique definitions
and share most of it. This PR is a stepping stone on this path.
This also puts the effort into separating redefinitions of
default theme items vs custom types introduced only by the editor.
In a few cases where editor-specific definitions need to reference
default definitions we simply fetch them from the theme. It's not
ideal and hides the dependency a bit, but hopefully these cases
will be abstracted properly in due time.
2024-01-16 11:57:45 +01:00
Yuri Sizov
95b27fe8c7
Reorganize code related to editor theming
...
This change introduces a new EditorThemeManager class
to abstract theme generatio and its subroutines.
Logic related to EditorTheme, EditorColorMap, and editor
icons has been extracted into their respective files with
includes cleaned up.
All related files have been moved to a separate folder to
better scope them in the project. This includes relevant
generated files as well.
2024-01-16 11:57:45 +01:00
Rémi Verschelde
039379d272
Merge pull request #84193 from kitbdev/dock-manager-extract
...
Extract `EditorDockManager` from `EditorNode`
2024-01-16 10:35:11 +01:00
kit
2323f040e9
Extract editor dock manager
2024-01-15 15:15:42 -05:00
Rémi Verschelde
03767fbf3b
Merge pull request #86446 from reduz/transient-to-focused
...
Implement a `transient_to_focused` Window mode
2024-01-15 13:25:00 +01:00
Juan Linietsky
15144c24bd
Implement a transient_to_focused mode
...
This intends to be the correct way to handle non-child windows becoming covered by the current window when becoming focused.
Enabling this property on select windows, they will become transient to the currently focused one when becoming visible.
This deprecates the "unparent_when_invisible" function introduced by #76025 .
2024-01-14 18:51:44 +01:00
kobewi
0e8f90f4c8
Update deferred calls to use Callables
2024-01-09 16:11:47 +01:00
kobewi
2e09985c0d
Fix² behavior of ResourceFormatLoader CACHE_MODE_REPLACE
2024-01-09 16:01:37 +01:00
Rémi Verschelde
9ca3d3ec83
Revert "Fix behavior of ResourceFormatLoader `CACHE_MODE_REPLACE`"
2024-01-09 10:49:14 +01:00
Rémi Verschelde
15186b6606
Merge pull request #72461 from Calinou/editor-renderer-select-mobile
...
Make the rendering method dropdown also affect mobile if compatible
2024-01-08 11:48:59 +01:00
Aaron Franke
9753a35c76
Move 3D scene import classes to their own folder
2024-01-04 11:02:49 -06:00
Rémi Verschelde
6c390b620d
Merge pull request #84445 from Rubonnek/add-const-references-clang-tidy
...
Add const references detected by clang-tidy
2024-01-04 14:25:33 +01:00
Hugo Locurcio
57f3bdb1e5
Make the rendering method dropdown also affect mobile if compatible
...
This prevents visual discrepancies between desktop and mobile platforms
after switching rendering methods using this dropdown.
The restart dialog now displays which rendering methods will be used,
and the dropdown tooltip also lists caveats related to specific platforms.
2024-01-03 18:38:37 +01:00
kobewi
e534dbf53a
Improve saving of built-in resources
2024-01-02 12:53:18 +01:00
Vedat Gunel
f35f1a1849
Store horizontal and vertical split offsets separately in FileSystem dock
2023-12-25 18:11:18 +03:00
Yuri Sizov
aae58cd688
Merge pull request #85887 from YuriSizov/editor-enforce-min-window
...
Correctly enforce minimum window size in editor
2023-12-20 15:07:48 +01:00
Yuri Sizov
416e594eb3
Correctly enforce minimum window size in editor
...
Also set the maximum size for the language
picked in the project manager.
2023-12-20 13:19:21 +01:00
kobewi
ce9fec9b4d
Improve editing of min/max particle properties
2023-12-20 06:31:08 +01:00
Yuri Sizov
02d4579fa2
Merge pull request #85000 from bruvzg/ed_ui_direction
...
[Editor] Add option to override editor UI layout direction.
2023-12-19 13:01:35 +01:00
Yuri Sizov
c3ee2b9c52
Merge pull request #86008 from Delsin-Yu/4.2
...
Correctly free relevant scripts when closing scene tabs
2023-12-18 18:18:05 +01:00
Yuri Sizov
644e236e5c
Merge pull request #83987 from bruvzg/macos_window_and_help
...
[macOS] Add default Window and Help menus, allow special menu customization.
2023-12-18 18:17:41 +01:00
DE-YU
b37b40ff76
Correctly free relevant scripts when closing scene tabs
2023-12-18 21:41:07 +08:00
Wilson E. Alvarez
a3cb1b096f
Add const references detected by clang-tidy
2023-12-16 13:36:44 -05:00
Yuri Sizov
a5529f759c
Merge pull request #86129 from TheSofox/color-picker-memory
...
Remember last `color_mode` and `picker_shape` in `ColorPicker`s in the editor
2023-12-14 21:22:39 +01:00
Sofox
7979412c75
Remember last 'color_mode' and 'picker_shape' in 'ColorPicker's in the editor
2023-12-14 18:57:57 +00:00
Yuri Sizov
4269a57b0c
Merge pull request #85387 from jsjtxietian/fix-forward-plus-crash
...
Use render method from OS instead of project settings in compositor RD
2023-12-14 17:38:43 +01:00
jsjtxietian
453c2246b6
Use render method from OS in compositor RD; Update related UI
2023-12-14 11:38:46 +08:00
bruvzg
0d44b50520
[macOS] Add default Window and Help menus, allow special menu customization.
2023-12-13 23:20:05 +02:00
Aaron Franke
52f1b86ebc
Fix referring to ResourceImporterScene static importers via instances
2023-12-11 20:01:39 -06:00
Rémi Verschelde
8f2b5cc109
Merge pull request #82899 from aaronfranke/import-settings-dialogs
...
Rename ImportSettings dialogs to have "Dialog" in the name
2023-12-12 00:15:59 +01:00
Yuri Sizov
07677f0f51
Merge pull request #85885 from YuriSizov/bench-pressing
...
Improve engine startup/shutdown benchmarks
2023-12-08 17:12:26 +01:00
Yuri Sizov
9dce1a45a0
Merge pull request #85819 from Malcolmnixon/export-android-build-template
...
Add option to install android build template for export
2023-12-08 16:58:54 +01:00
Yuri Sizov
2e94be2ea4
Merge pull request #84167 from SaracenOne/cache_mode_replace_fixes
...
Fix behavior of ResourceFormatLoader `CACHE_MODE_REPLACE`
2023-12-08 15:23:13 +01:00
Yuri Sizov
6c86974022
Merge pull request #84122 from kitbdev/fix-dock-visibility
...
Fix dock visibility issues
2023-12-08 15:23:09 +01:00
Malcolm Nixon
988c1bf298
Add option to install android build template for export
...
This PR adds a new "--install-android-build-template" command-line option which causes the android build template to be installed before exporting the project.
2023-12-08 09:00:25 -05:00
Yuri Sizov
fc3f40f37d
Improve engine startup/shutdown benchmarks
...
- Add contexts to give a better sense of benchmarked areas.
- Add missing benchmarks and adjust some begin/end points.
- Clean up names.
- Improve Android's internal benchmarks in a similar manner.
Co-authored-by: Fredia Huya-Kouadio <fhuya@meta.com>
2023-12-08 12:53:04 +01:00
Rémi Verschelde
3e7cc5ec32
Merge pull request #85271 from YuriSizov/core-check-please!
...
Correctly check scripts that must inherit `EditorPlugin`
2023-12-04 23:12:24 +01:00
Bartłomiej T. Listwon
44d14cf6af
Defer creating new editor process in "Quit to Project List" just like in "Reload Current Project"
2023-12-02 13:25:24 +01:00
kobewi
0b172742cf
Save external data even without scene
2023-11-29 16:19:17 +01:00
bruvzg
27ca31f359
[Editor] Save and restore previous window mode when toggling full-screen.
2023-11-27 12:44:30 +02:00
Aaron Franke
a8dc34b8f0
Rename ImportSettings dialogs to have "Dialog" in the name
2023-11-26 22:59:01 -06:00
Yuri Sizov
bc1949d797
Correctly check scripts that must inherit `EditorPlugin`
...
Also updates some error messages related to this kind of check
across the codebase.
2023-11-23 16:24:43 +01:00
Yuri Sizov
10b70e2498
Rework the surface upgrade tool to inform users without blocking
...
This removes the immediate confirmation dialog and insteads prints the
message to the editor log (and it also appears as a toast). The immediate dialog
is a devil's plaything, and it cannot be used in this scenario (if it can be used
anywhere at all). The condition that triggers the SUT can happen during any
attempt by the rendering server to read a mesh. This means it will conflict
with a number of editor processes, like loading, importing, preview
generation, export, CLI mode, etc.
So while this is less on the nose as far as informing users goes, it's also
our best option to use the log and the toaster.
2023-11-22 19:03:14 +01:00
David C. Drake
45e2908d30
Adjust pick_main_scene punctuation
2023-11-20 14:46:29 -07:00
kobewi
d84ba48d8f
Avoid saving scene while already saving the scene
2023-11-20 21:57:21 +01:00
Yuri Sizov
fdaee9ee89
Prevent the surface upgrade tool from running during export
...
Also add an explicit way to trigger the tool manually
at user's will.
2023-11-20 15:36:45 +01:00
bruvzg
932174fedf
[Editor] Add option to override editor UI layout direction.
2023-11-17 14:56:45 +02:00
Rémi Verschelde
b049ac43ba
Merge pull request #84927 from bruvzg/macos_ext_frame_upd
...
[macOS] Process events before changing title style to update window frame.
2023-11-16 14:52:28 +01:00
Saracen
f392a9c4f8
Fix CACHE_MODE_REPLACE
2023-11-15 18:55:20 +00:00
Rémi Verschelde
6d47eff457
Merge pull request #83104 from jsjtxietian/fix-crash-when-reimport-animation-while-playing
...
Fix editor crash when re-importing GLTF while animation is playing
2023-11-15 13:15:54 +01:00
bruvzg
c64c1053e9
[macOS] Process events before changing title style to update window frame.
2023-11-15 09:33:23 +02:00
jsjtxietian
3c10493d0b
Fix Editor crash when re-importing GLTF while animation is playing
2023-11-15 11:13:42 +08:00
kobewi
da55c06322
Save scene when saving built-in resource
2023-11-13 16:34:17 +01:00
Fredia Huya-Kouadio
136b7f9c52
Preserve the output from the gradle build command
...
Updates `EditorNode#execute_and_show_output(...)` to return the output of the executed command.
2023-11-12 12:07:04 +01:00
clayjohn
95fbb2ecb2
Scan the filesystem in the first frame when using headless mode
2023-11-07 10:46:56 +01:00
Rémi Verschelde
98baac7172
Merge pull request #84200 from clayjohn/surface-upgrade-tool-rework
...
Overhaul the SurfaceUpgradeTool
2023-11-01 22:32:09 +01:00
clayjohn
be386e1876
Overhaul the SurfaceUpgradeTool
...
This defers the update to a fresh restart of the editor (to ensure we aren't mid way through loading scenes anymore.
It also ensures that the popup can't be used by multiple threads at once
Co-authored-by: Yuri Sizov <yuris@humnom.net>
2023-11-01 15:32:54 +01:00
Yuri Sizov
8c39a2d169
Disconnect `EditorNode` from file dialogs on destruction
2023-11-01 13:01:28 +01:00
kobewi
a92ed50777
Make remote inspector groups not foldable
2023-10-31 17:29:53 +01:00
Rémi Verschelde
8f0b742a9a
Merge pull request #83576 from raulsntos/fix-80883
...
Enable new addon after hiding ProjectSettings
2023-10-30 17:47:23 +01:00
Rémi Verschelde
a7c81f4275
Merge pull request #73981 from stmSi/fix-filter-files-shortcut-input-not-handling
...
Fix Filter Files shortcut input is not properly handled
2023-10-30 16:25:24 +01:00
kit
a2674463fa
fix dock visibility issues
2023-10-30 10:52:07 -04:00
Rémi Verschelde
e2c79bcb95
Merge pull request #82471 from SaracenOne/recache_bone_attachment
...
Reimport bone attachment fixes
2023-10-30 10:18:00 +01:00
Rémi Verschelde
fe64786a91
Merge pull request #83498 from SaracenOne/mesh_unwrap_rules
...
Mesh instance UV2 unwrapping improvements
2023-10-28 12:30:22 +02:00
Saracen
e865bad06a
Mesh instance UV2 unwrapping improvements:
...
Enforce foreign resource modification rules.
Add more helpful error handling for ArrayMesh unwrapping.
2023-10-28 03:04:15 +01:00
Saracen
4b671eec0e
Reimport bone attachment fixes:
...
Assign bone_idx to GLTF importer to fix serialization.
Notifies Skeletons and BoneAttachments when reimporting.
Removes usage of NOTIFICATION_NODE_RECACHE_REQUESTED
2023-10-27 20:34:01 +01:00
Rémi Verschelde
ba79e53dd0
Merge pull request #84048 from SaracenOne/extra_readonly_info
...
Add read-only info to resource embedded in other scenes.
2023-10-27 13:33:53 +02:00
Saracen
ada1f66fc1
Add read-only info to resource embedded in other scenes.
2023-10-27 12:01:22 +01:00
Jordyfel
50b7387a3f
Use Hashset for dependency list when moving
2023-10-25 21:05:53 +03:00
Rémi Verschelde
f021d33940
Merge pull request #81167 from bitsawer/fix_sdfgi_editor_change
...
Reset SDFGI when changing editor scene tabs
2023-10-25 10:27:03 +02:00
Rémi Verschelde
bc5d5978ea
Merge pull request #83695 from YuriSizov/core-lock-and-key
...
Improve threading in ClassDB and EditorHelp
2023-10-24 10:54:19 +02:00
Rémi Verschelde
50d17f6b8c
Merge pull request #83613 from clayjohn/surface_upgrade_tool
...
Add an editor tool to automatically upgrade and re-save meshes
2023-10-24 00:10:37 +02:00
clayjohn
318ef8461f
Implementation of tool to automatically upgrade and re-save meshes
2023-10-23 22:39:48 +02:00
kit
701c8d8323
Fix tab dragging issues
2023-10-22 13:58:31 -04:00
Yuri Sizov
9b03fb36f9
Improve threading in ClassDB and EditorHelp
2023-10-20 22:14:04 +02:00
Yuri Sizov
cd31407cb3
Clean up some Editor, OpenXR, VideoStream code
...
- EditorNode has excessive and pointless checks for Input singleton.
- EditorNode initialization order is a bit awkward.
- OpenXR binds a method that doesn't need that (for call deferred).
- VideoStream has a formatting error.
2023-10-20 17:54:39 +02:00
Rémi Verschelde
15955e5d9e
Merge pull request #83512 from zaevi/fix_remove_from_floating_dock
...
Editor: Fix `remove_control_from_dock` fails when dock is floating.
2023-10-20 15:08:40 +02:00
Raul Santos
7b34fa8dd2
Enable new addon after hiding ProjectSettings
...
- Enabling newly created addons can show a warning dialog, doing so before hiding the `ProjectSettingsEditor` dialog causes rendering glitches.
- Remove unused `PuginConfigDialog` in `EditorNode`. The one actually being used is an instance in `EditorPluginSettings`.
2023-10-18 20:20:46 +02:00
Yuri Sizov
582ed157b5
Fix StringName leaks in GDExtension, core, and editor themes
2023-10-18 17:36:20 +02:00
Rémi Verschelde
e06d09228b
Merge pull request #83251 from Rindbee/fix-current_edited_scene-wrong-move
...
Fix saving wrong edited scene state when switching scene tabs
2023-10-18 00:01:24 +02:00
Zae
acf0d395c8
Editor: Fix `remove_control_from_dock` fails when dock is floating.
2023-10-18 01:14:26 +08:00
风青山
225a5e225f
Fix saving wrong edited scene state when switching scene tabs
...
When creating a new scene, the scene tab will actually switch to the newly created one.
Also worth noting that switching scene tabs saves state (by `save_edited_scene_state`).
When trying New Scene again, the previously empty scene tab will be removed.
So the correct logic is: switch the tab save state first, and then remove the previous
empty scene tab. To prevent `current_edited_scene` from being incorrect when saving state.
2023-10-17 22:52:44 +08:00
Rémi Verschelde
230bdda872
Merge pull request #82742 from kitbdev/empty-dock-layout
...
Fix loading floating dock layout
2023-10-13 11:43:35 +02:00
kobewi
41fa6c32b4
Disable update spinner when debug redraw is active
2023-10-11 13:21:29 +02:00
Saracen
c0e872c05b
Fix dependency menu not showing up if scene failed to load.
2023-10-09 03:15:46 +01:00
kobewi
a6de7a8a3f
Allow contextual plugins to persist temporarily
2023-10-06 15:58:50 +02:00
bruvzg
af00c4a54a
[X11] Add support for using EGL/GLES instead of GLX.
2023-10-04 14:15:36 +03:00
kit
349da99476
fix load floating dock layout
2023-10-03 15:36:53 -04:00
Silc Lizard (Tokage) Renew
1b95827d3e
Implement AnimationManager the base class of AnimationPlayer/Tree
2023-09-29 08:23:57 +09:00
Rémi Verschelde
da91cf9367
Merge pull request #82347 from SaracenOne/dir_access_checks
...
Add error checks for DirAccess creation
2023-09-26 16:36:47 +02:00
David Snopek
2733a6f762
Implement reloading of GDExtensions
2023-09-25 22:10:17 -05:00
Saracen
3f4513d4de
Add error checks for DirAccess creation.
2023-09-26 03:07:43 +01:00
Kevin Cardona
c1146632b2
Add Ctrl/CMD+P as a shortcut to quick open files in addition to Shift+Alt+O
2023-09-16 15:32:37 -06:00
A Thousand Ships
75ee58fd04
[Editor] Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable
2023-09-15 20:15:39 +02:00
Yuri Sizov
8ecc0c4f47
Fix accessing editor theme items throughout the UI
...
This also exposes `EditorInterface::get_editor_theme`.
2023-09-15 14:51:01 +02:00
Danil Alexeev
f8a0c487a8
Editor: Rearrange "Main Menu > Help" items
2023-09-07 16:17:28 +03:00
Yuri Sizov
fc01e2e7f6
Add a theme preview switcher to the 2D viewport
...
This commit adds a new View submenu that allows switching
between the project theme (default), the editor theme, and
the default theme. The last selected option is stored per
project and is restored when reloading the project.
2023-09-06 19:40:43 +02:00
Yuri Sizov
512182f147
Add theme contexts to various parts of the editor
...
This change defines additional theme contexts for editor
branches to prevent theme leaking between the default
theme, the project theme, and the editor theme.
- Both editor window and EditorNode define an editor-specific
context with the editor theme and the default theme.
- The 2D viewport defines a project-specific context with
the project theme and the default theme.
- Theme editor preview tabs define the default-only context
with the default theme.
Additionally, the default theme context now only includes
the project theme for running projects (both export and debug).
This prevents the project theme from leaking into the editor.
This commit also does a little clean up on the theming aspects
of the EditorNode.
2023-09-06 19:40:43 +02:00
Yuri Sizov
21c5f86d5d
Check the native base of scripts when resolving icons
2023-09-06 15:20:07 +02:00
kobewi
6de34fde27
Add EditorStringNames singleton
2023-09-03 19:58:18 +02:00
Rémi Verschelde
60422759fa
Merge pull request #80849 from KoBeWi/edit_NOTHING
...
Unedit nodes early when closing scene tab
2023-09-02 14:29:00 +02:00
Rémi Verschelde
5588980e47
Merge pull request #80184 from MewPurPur/gray=abstract
...
Use the gray color for all abstract classes
2023-09-01 16:00:58 +02:00
MewPurPur
398ca4e71a
Use the gray color for all abstract classes
2023-08-31 12:59:18 +03:00
Hugo Locurcio
3ba031602b
Display time of last save in the unsaved changes confirmation editor dialog
...
When multitasking, this makes it clearer whether closing a window with unsaved
changes is potentially dangerous or not.
2023-08-31 00:47:11 +02:00
bitsawer
836705d7a9
Reset SDFGI when changing editor scene tabs
2023-08-30 19:50:05 +03:00
Rémi Verschelde
91c5273ec5
Merge pull request #75656 from YuriSizov/core-iconic-builtins
...
Add a script method to get its class icon
2023-08-29 12:41:03 +02:00
kobewi
cbd01043f0
Fix Quick Open not opening binary resources
2023-08-28 12:57:14 +02:00
Rémi Verschelde
0655a7d7d3
Merge pull request #80517 from YuriSizov/tsa-randomly-picked-you-for-mandatory-inspection-i-think-not
...
Avoid unnecessary inspector updates when loading or switching scenes
2023-08-28 12:05:06 +02:00
Rémi Verschelde
2967084fe3
Merge pull request #80490 from YuriSizov/editor-scene-tabs-unchained
...
Extract editor scene tabs into their own component
2023-08-28 12:04:41 +02:00
Yuri Sizov
e21ded8f8f
Merge pull request #80450 from KoBeWi/settings_freeze,_no_more_changes
...
Deprecate `project_settings_changed` signal
2023-08-25 14:58:32 +02:00
Yuri Sizov
2c77f07aaa
Add a script method to get its class icon
...
Co-authored-by: Danil Alexeev <danil@alexeev.xyz>
2023-08-24 13:05:41 +02:00
Yuri Sizov
6ab34005ad
Extract editor scene tabs into their own component
2023-08-24 12:24:29 +02:00
kobewi
dd7152a311
Unedit nodes early when closing scene tab
2023-08-21 14:12:26 +02:00
Rémi Verschelde
c7356c795b
Merge pull request #80647 from jsjtxietian/CollisionShape3D-Shape-Size-handles-missing-when-Script-editor-floating
...
Fix 2D/3D viewport context switching issues when script editor is floating
2023-08-17 11:27:04 +02:00
Rémi Verschelde
678c89aa1a
Merge pull request #79382 from MewPurPur/better-prepare-scene-context-menu
...
Disable irrelevant scene tab context menu items
2023-08-17 11:20:57 +02:00
Tomasz Chabora
3dd881b4e4
Add option to allow echo events in menu shortcuts
2023-08-16 16:59:17 +02:00
jsjtxietian
fec0396cac
fix CollisionShape3D Shape Size handle will missing
...
when Script editor floating
2023-08-15 12:41:20 +08:00
Yuri Sizov
2445414aa0
Avoid unnecessary inspector updates when loading or switching scenes
...
This should result in some noticeable performance improvements,
aside from fixing bugs due to conflicts in logic.
This also simplifies some related code identified while debugging.
2023-08-12 13:32:59 +02:00
kobewi
fca3ab5564
Deprecate project_settings_changed signal
2023-08-10 15:07:25 +02:00
Rémi Verschelde
1b132b7c23
Merge pull request #80377 from YuriSizov/importers-are-made-to-be-alone
...
Register and cleanup resource importer singletons in a predictable way
2023-08-09 17:46:33 +02:00
Rémi Verschelde
8375f73680
Merge pull request #80355 from jcovin293/issue/80347/fix-missing-ellipsis
...
Fix menu items that trigger secondary interface missing ellipsis
2023-08-09 17:46:26 +02:00
RandomWalrus13
585633ea85
Fix menu items that trigger secondary interface missing ellipsis
...
fix #80347
2023-08-09 08:30:35 -05:00
Rémi Verschelde
f6b9d445b5
Merge pull request #80285 from YeldhamDev/just_a_little_bit
...
Further separate icon from text of buttons in both editor and default themes
2023-08-09 15:20:25 +02:00
Rémi Verschelde
1163dac9e3
Merge pull request #80215 from clayjohn/HDR-2D
...
Add option to enable HDR rendering in 2D
2023-08-08 16:57:33 +02:00
Michael Alexsander
98bdb56815
Further separate icon from text of buttons in both editor and default themes
2023-08-07 13:22:39 -03:00
Yuri Sizov
237515d0ed
Register and cleanup resource importer singletons in a predictable way
2023-08-07 17:49:33 +02:00
Rémi Verschelde
5413b185f1
Merge pull request #79971 from Calinou/editor-filesystem-dock-expand-favorites
...
Uncollapse favorites by default in the editor FileSystem dock
2023-08-07 14:49:58 +02:00
clayjohn
57eb762bae
Add option to enable HDR rendering in 2D
...
This is needed to allow 2D to fully make use of 3D effects (e.g. glow), and can be used to substantially improve quality of 2D rendering at the cost of performance
Additionally, the 2D rendering pipeline is done in linear space (we skip linear_to_srgb conversion in 3D tonemapping) so the entire Viewport can be kept linear.
This is necessary for proper HDR screen support in the future.
2023-08-07 11:24:03 +02:00
MewPurPur
4b0ee492ae
Disable irrelevant scene tab context menu items
2023-08-04 19:04:18 +03:00
Pedro J. Estébanez
b3a5e10f4a
Avoid crash on exiting due to late prints
2023-08-02 13:38:58 +02:00
Rémi Verschelde
f8ead6d5b6
Merge pull request #80089 from AThousandShips/editor_settings_fix
...
Fix API hash related crash in `EditorSettings`
2023-08-02 12:20:47 +02:00
Yuri Sizov
77785c340d
Merge pull request #79852 from YeldhamDev/that_was_getting_annoying
...
Fix usability issues with scene tabs
2023-08-01 17:25:33 +02:00
Yuri Sizov
fbe7602bd3
Merge pull request #79945 from hvarga/fix-current-scene-update
...
Fix out of bounds access when updating current scene
2023-07-31 21:01:43 +02:00
Yuri Sizov
f15898161a
Merge pull request #79917 from hvarga/fix-scene-tab-close
...
Fix crash when using "Close All Tabs"
2023-07-31 21:01:40 +02:00
Ninni Pipping
e2a91309d0
Fix API hash related crash in `EditorSettings`
2023-07-31 16:35:41 +02:00
Michael Alexsander
3e539fff78
Fix some issues with scene tabs
...
- Stop scene creation on double-click when hovering the offset buttons.
- Fix the "Add Scene" button's position on RTL mode.
2023-07-30 01:13:36 -03:00
Hugo Locurcio
075bd4b281
Uncollapse favorites by default in the editor FileSystem dock
2023-07-28 01:09:14 +02:00
Yuri Sizov
6535b7475d
Merge pull request #79908 from YeldhamDev/output_icon_space
...
Fix spacing between icon and "Output" button
2023-07-27 15:22:44 +02:00
Hrvoje Varga
ba2850759d
Fix current-scene update
2023-07-27 07:45:53 +02:00
Hrvoje Varga
51923fc528
Fix scene tab close
2023-07-27 07:38:40 +02:00
Michael Alexsander
2883a40aa1
Fix spacing between icon and "Output" button
2023-07-26 15:22:44 -03:00
Yuri Sizov
921776f0a5
Merge pull request #79203 from KoBeWi/visible_confusion
...
Don't grab theme icons for scripts
2023-07-26 18:39:52 +02:00
Yuri Sizov
bc0e646076
Merge pull request #78827 from Rindbee/fix-history-mismatch
...
Fix history mismatch
2023-07-26 18:39:32 +02:00
Yuri Sizov
92960b7a22
Merge pull request #78615 from RandomShaper/fix_doc_cache
...
Re-enable docs cache with fixes
2023-07-26 18:39:22 +02:00
Yuri Sizov
fc1b392e08
Merge pull request #79793 from trollodel/hide_make_floating_swm
...
Make the single window mode check more strict
2023-07-25 21:51:31 +02:00
Yuri Sizov
623787061a
Merge pull request #79492 from dsnopek/gdextension-remove-editor-plugins-at-shutdown
...
Prevent GDExtensions from trying to remove editor plugins at shutdown
2023-07-25 21:25:58 +02:00
trollodel
0f6327b59b
Make the single window mode check more strict
...
Check the "interface/editor/single_window_mode" editor settings.
2023-07-22 17:24:47 +02:00
Yuri Sizov
547f88aa8c
Merge pull request #79396 from Sauermann/fix-systeminfo-displayserver
...
Include display server type in "Copy System Info"
2023-07-21 17:54:30 +02:00
kobewi
51f92d1100
Don't grab theme icons for scripts
2023-07-21 02:13:07 +02:00
Fredia Huya-Kouadio
d17811c814
Re-architect how Android plugins are packaged and handled at export time
...
The previous packaging format for Godot Android plugins consisted of the plugin's `gdap` config file accompanied by binaries defined in the `gdap` file.
This format is now deprecated (starting with Godot 4.2), and instead Godot Android plugins are now packaged as `EditorExportPlugin` plugins.
The `EditorExportPlugin` class has been updated with the following methods to provide the necessary set of functionality:
- `_supports_platform`: returns true if the plugin supports the given platform
- `_get_android_dependencies`: retrieve the set of android dependencies (e.g: `org.godot.example:my-plugin:0.0.0`) provided by the plugin
- `_get_android_dependencies_maven_repos`: retrieve the urls of the maven repos for the provided android dependencies
- `_get_android_libraries`: retrieve the local paths of the android libraries (AAR files) provided by the plugin
- `_get_android_manifest_activity_element_contents`: update the contents of the `<activity>` element in the generated Android manifest
- `_get_android_manifest_application_element_contents`: update the contents of the `<application>` element in the generated Android manifest
- `_get_android_manifest_element_contents`: update the contents of the `<manifest>` element in the generated Android manifest
2023-07-18 19:14:53 +02:00
kobewi
b883f32188
Check for unsaved changes when closing a scene
2023-07-18 14:27:56 +02:00
kobewi
6dc5dc3479
Add `_get_unsaved_status()` method to EditorPlugin
2023-07-18 14:18:36 +02:00
Yuri Sizov
79a9e79561
Merge pull request #79416 from sepTN/fix-copy-system-info
...
Fix rendering driver in Copy System Info for the Compatibility rendering method
2023-07-18 13:28:30 +02:00
Septian
c4b878ccb3
Fix Copy System Info to copy the correct rendering driver for the Compatibility rendering method
2023-07-18 06:16:15 +07:00
kobewi
de4a3fa151
Unify and streamline connecting to Resource changes
2023-07-17 19:35:57 +02:00
Markus Sauermann
1712b78e18
Include Display Server Type in Copy System Info
...
Add info about X11 or Wayland to System Information on LinuxBSD.
2023-07-16 10:32:54 +02:00
David Snopek
62af007aa0
Prevent GDExtensions from trying to remove editor plugins at shutdown
2023-07-14 17:48:14 -05:00
Hendrik Brucker
7e21eb7e00
Extract and reorganize texture resource classes
2023-07-14 20:04:21 +02:00
WiseNoodle
d1c70cf7d4
Add missing word to text of the alert dialog
2023-07-12 11:53:31 -04:00
Rindbee
28db5e7649
Fix history mismatch
...
Set the properties of the resource's proxy instead of setting the resource's
properties directly. (For action "Set ...")
Update the path of the edited scene when saving the scene. (For action "Add
atlas source")
2023-07-11 05:45:37 +08:00
kobewi
59ae7e2445
Collapse bottom panel if there is no active tab
2023-07-05 23:07:12 +02:00
Pedro J. Estébanez
cac4d44cde
Re-enable docs cache with fixes
2023-07-05 10:44:58 +02:00
kobewi
0458ac4b81
Improve script icon cache
2023-06-26 14:03:21 +02:00
Yuri Sizov
f623509086
Handle contextual editors gracefully when restoring layout
2023-06-23 15:46:06 +02:00
Yuri Sizov
8cfbc6bda2
Revert "Remember only permanent bottom tabs"
...
This reverts commit 5dde57e958
.
2023-06-23 15:23:36 +02:00
kobewi
5dde57e958
Remember only permanent bottom tabs
2023-06-23 10:53:39 +02:00
Michael Alexsander
41a75cfa4f
Allow exporting release Android builds without a debug keystore
2023-06-19 01:00:13 -03:00
Rémi Verschelde
ad85ecef8d
Merge pull request #77750 from RandomShaper/tidy_shader_data_items
...
Let editor workaround a case of inconsistency in compound scenes
2023-06-13 13:52:51 +02:00
Pedro J. Estébanez
96c469a138
Let editor workaround a case of inconsistency in compound scenes
2023-06-13 11:05:57 +02:00
Alex Drozd
454befc880
Prevent non-existent scene from being saved to persistent editor config
2023-06-12 22:49:49 +02:00
Rémi Verschelde
c3e5e4ed4b
Merge pull request #68599 from Rindbee/update-edited_scene_root-in-time
...
Update the edit scene root in time after it is replaced
2023-06-12 17:08:50 +02:00
Rindbee
eb74079dfb
Update the edit scene root in time after it is replaced
...
When changing the type of the edited scene root node, it may be necessary
to update edited scene root in time for the child nodes to work properly.
2023-06-12 21:49:30 +08:00
kobewi
0a4d0506d1
Fix problems reloading MeshLibrary
2023-06-11 19:42:24 +02:00
Rémi Verschelde
a08aa9627c
Merge pull request #75226 from AThousandShips/file_dialog_default
...
Do not use editor setting for FileDialog hidden files
2023-06-09 15:30:48 +02:00
MJacred
2c5e2196bd
Replace get_rendering_device() call to prevent crashes on OpenGL.
...
And make OpenGL video adapter info align with Vulkan.
2023-06-06 23:29:36 +02:00
lawnjelly
b69c8b4791
Single Compilation Unit build.
...
Adds support for simple SCU build (DEV_ENABLED only).
This speeds up compilation by compiling multiple cpp files within a single translation unit.
2023-06-06 15:36:51 +01:00
kobewi
53a15d85be
Get rid of mouse wheel switch in scene tabs
2023-05-31 22:21:40 +02:00
David Giardi
a8fc343f80
Make main editor window border margin controllable by theme
2023-05-30 19:19:39 +02:00
Rémi Verschelde
60871fd4b7
Merge pull request #77574 from MJacred/editor/system_info_single_line
...
Make system information for issue reports single-line
2023-05-30 09:33:13 +02:00
MJacred
ca1ee316b5
Make system information for issue reports single-line
...
Additionally:
* for custom builds, add commit hash
* added a tooltip to help mitigate potential/understandable confusion whether the single-line output might be a bug
* prettify driver name
2023-05-29 22:20:40 +02:00
Yuri Sizov
fd5faae29c
Merge pull request #75983 from timothyqiu/dialog-rebase
...
Fix theme of editor VCS dialogs
2023-05-29 17:42:16 +02:00
Yuri Sizov
4c5c7cbb58
Fix auto-reparenting logic in the `ProgressDialog`
...
* Make sure `Popup` signals are disconnected when unparented.
* Remove a fail condition from `Window::is_embedded` when
not in tree.
2023-05-29 17:02:16 +02:00
Haoyu Qiu
b30a332009
Fix theme of editor VCS dialogs
...
These dialogs were added to the plugin itself so theme can't be
propagated.
Also moved initialization of the VCS menu after the creation of
EditorInterface.
2023-05-29 21:25:31 +08:00
Yuri Sizov
c670c4334a
Merge pull request #65902 from MJacred/editor/copysysteminfo
...
Add an editor option to copy system info to clipboard
2023-05-27 20:11:54 +02:00
MJacred
9e5bf3d589
Copy system info to clipboard + Update bug_report.yml
...
plus minor static-related fixes
* linuxbsd: get_systemd_os_release_info_value() -> static breaks usage if used multiple times
* windows/linuxbsd: get_video_adapter_driver_info() writes info into static
* linuxbsd: get_distribution_name() + get_version() -> write bsd fallback into static variable
* windows/uwp/android: remove unnecessary use of static
2023-05-27 18:21:23 +02:00
kobewi
8eb076a630
Uncollapse res:// by default
2023-05-26 13:25:09 +02:00
Rémi Verschelde
699b66b62d
Merge pull request #77010 from dsnopek/gdextension-editor-plugins
...
Allow GDExtensions to add editor plugins
2023-05-26 11:00:32 +02:00
David Snopek
3007163210
Allow GDExtensions to add editor plugins
2023-05-25 09:14:29 -05:00
Fredia Huya-Kouadio
831b4a5366
Improve startup benchmarking
...
Move the benchmarking measuring methods from `Engine` to `OS` to allow for platform specific overrides (e.g: can be used to hook into platform specific benchmarking and tracing capabilities).
2023-05-23 13:22:35 -07:00
Pedro J. Estébanez
2648232fe8
Make certain editor callbacks thread-safe
2023-05-20 11:17:41 +02:00
Yuri Sizov
17f492fb82
Expose dialog parent-and-popup logic to the API
2023-05-15 19:49:28 +02:00
Pedro J. Estébanez
45d0b38076
Enhance thread safety of loaders and importers
2023-05-12 17:44:48 +02:00
Pedro J. Estébanez
7537a0521f
Simplify ResourceLoader error callbacks
2023-05-12 17:44:48 +02:00
Aaron Franke
b4129680fb
Sort the list of addons before saving them
2023-05-11 13:39:26 -05:00
Hendrik Brucker
dc46163b12
Improve editor state persistence
2023-05-11 04:17:03 +02:00
Rémi Verschelde
5271186f2f
Merge pull request #75901 from reduz/refactor-node-processing
...
Refactor Node Processing to allow Scene Multithreading
2023-05-10 12:46:44 +02:00
trollodel
b4d6b47c17
Add multi window code and shader editors
2023-05-10 09:14:21 +02:00
Juan Linietsky
98c655ec8d
Refactor Node Processing
...
* Node processing works on the concept of process groups.
* A node group can be inherited, run on main thread, or a sub-thread.
* Groups can be ordered.
* Process priority is now present for physics.
This is the first steps towards implementing https://github.com/godotengine/godot-proposals/issues/6424 .
No threading or thread guards exist yet in most of the scene code other than Node. That will have to be added later.
2023-05-09 19:17:51 +02:00
Fredia Huya-Kouadio
bd1bc68ba0
Merge pull request #75718 from m4gr3d/add_scale_editor_icons_main
...
Adds a `scale_gizmo_handles` entry to the `Touchscreen` editor settings
2023-05-07 17:05:12 -07:00
Fredia Huya-Kouadio
30824e9818
Adds a `scale_gizmo_handles` entry to the `Touchscreen` editor settings
...
When enabled, this scales the editor icons to improve usability on touchscreen devices.
In addition this commit fixes touch detection for the collision_shape_2d_editor_plugin so it scales with the icons size.
2023-05-07 15:55:28 -07:00
Max Hilbrunner
f6bf51ca49
Merge pull request #75864 from KoBeWi/assassin_of_shaders
2023-05-05 14:37:54 +02:00
Rémi Verschelde
8f7b09916d
Merge pull request #76026 from YuriSizov/editor-running-up-that-gui
...
Extract editor run toolbar into its own component
2023-04-26 12:15:29 +02:00
Rémi Verschelde
e54ebaf0eb
Merge pull request #76421 from timothyqiu/editor-dialog
...
Fix inconsistent file dialog settings usage
2023-04-25 10:01:06 +02:00
Daylily-Zeleen
b12ced0a26
Implement and expose OS::shell_show_in_file_manager()
2023-04-25 11:29:32 +08:00
Haoyu Qiu
2ccc9e1456
Fix inconsistent file dialog settings usage
...
* Project Manager ignores display mode settings.
* EditorFileDialog's default display mode and show hidden files settings
are not updated when corresponding editor settings change.
2023-04-25 09:11:57 +08:00
Yuri Sizov
8a74d8438f
Extract editor run toolbar into its own component
...
- Simplify and update its logic.
- Simplify EditorScript.
- Improve EditorNode and other relevant includes.
- Fix scene-based path in the movie writer when
reloading a scene.
2023-04-19 17:12:28 +02:00
Yuri Sizov
49d7041d34
Decouple EditorInterface from EditorPlugin
...
- Simplify some includes in the process.
- Also exposes EditorInterface.movie_maker_enabled as a property.
2023-04-17 21:59:09 +02:00
Rémi Verschelde
c5d9470c7c
Merge pull request #75765 from YuriSizov/editor-node-optimize-includes
...
Improve includes of `EditorNode` (and everything else)
2023-04-11 19:40:24 +02:00
kobewi
71011e0855
Adjust size of some dialogs
2023-04-10 17:04:53 +02:00
kobewi
aaf02ec04a
Close built-in shaders when closing scene
2023-04-09 22:10:43 +02:00
Yuri Sizov
4154039832
Improve includes of EditorNode (and everything else)
...
Also start organizing editor-specific GUI components
into a dedicated folder, `editor/gui`.
Also move `editor_file_server` next to the rest of debugger classes.
2023-04-07 18:59:49 +02:00
kobewi
ddc8567022
Scene tab closing refactor
2023-04-03 22:19:07 +02:00
Yuri Sizov
ee2cc347c6
Add support for icons in GDExtension classes
...
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2023-03-31 21:39:02 +02:00
Yuri Sizov
1522762dc9
Make icons of scripted and custom classes fit the editor UI
...
Also:
- Add an option to limit the icon size in PopupMenu.
This is similar to how this works in Tree and TreeItem.
- Add the same option to TabBar.
- Add a theme constant for Tree, PopupMenu, Button, and
TabBar to apply this limit on the control level.
Co-authored-by: Daylily-Zeleen <daylily-zeleen@foxmail.com>
2023-03-31 21:39:02 +02:00
Yuri Sizov
9fae65404a
Streamline class icon resolution in the editor
2023-03-31 21:17:59 +02:00
Haoyu Qiu
26553be424
Turn off auto translate for some editor controls
...
* Scene tab
* Animation name list in Animation panel
* Feature profile name list in Editor Feature Profile dialog
* Layout names in editor layout menu
* Subresource list in Inspector dock
* Resource type shown in EditorResourcePicker
* Enum dropdowns in inspectors: We'll eventually allow auto translating
these after implementing a way to opt-out auto translation on a
property-by-property basis and a way to extract enumerators.
2023-03-28 23:18:32 +08:00