Commit graph

1822 commits

Author SHA1 Message Date
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
Hugo Locurcio
8e924bcb22
Move engine build profile editor to Tools submenu
- Rename it to Engine Compilation Configuration Editor. This makes
  it clearer that it requires compiling the engine to work ("build"
  can be understood as exporting a project or building C# solutions
  by some).
- Add it to the editor command palette and allow defining a keyboard
  shortcut for it, for consistency with other tools.
2024-04-09 19:08:31 +02:00
ajreckof
609559c074 Fix strange visual bug with camera and external change. 2024-04-07 03:49:43 +02:00
kobewi
b9c78ba174 Prevent dropping Resource to the same resource picker 2024-04-05 22:26:29 +02:00
Rémi Verschelde
70f6650404
Merge pull request #90078 from SirLich/project-tools-palette
Include 'Orphan Resource Explorer' and 'Upgrade Mesh Surfaces' in Command Palette.
2024-04-04 14:37:07 +02:00
Rémi Verschelde
89109e8b01
Merge pull request #89974 from jsjtxietian/tab-close
Reset `tab_closing_menu_option` when cancelling closing editor
2024-04-04 14:35:41 +02:00
Rémi Verschelde
27dec32699
Merge pull request #89735 from bruvzg/ed_native_fd2
[Native File Dialog] Add support for using native dialogs in the editor.
2024-04-04 14:31:39 +02:00
Rémi Verschelde
1dacd6a527
Merge pull request #89179 from groud/expose_tile_map_layer
Expose TileMapLayer
2024-04-04 14:31:16 +02:00
Rémi Verschelde
b5369ee3b3
Merge pull request #89017 from kitbdev/add-close-docks
Allow docks to be closed and opened
2024-04-04 14:31:11 +02:00
ajreckof
ae472865d0 fix node duplication in update after external changes. 2024-04-03 12:19:38 +02:00
Gilles Roudière
3cd4b2859c Expose TileMapLayer 2024-04-03 11:02:34 +02:00
SirLich
c90b2b4299 Include project->tools in command palette 2024-03-31 20:03:51 +02:00
Haoyu Qiu
23d50b1117 Strip edges of editor layout names 2024-03-31 17:43:03 +08:00
kit
860bff926e Allow docks to be closed 2024-03-29 22:03:59 -04:00
jsjtxietian
41dce99831 Reset tab_closing_menu_option when cancel closing editor 2024-03-28 19:22:52 +08:00
bruvzg
61f7145f43
[Native File Dialog] Add support for using native dialogs in the editor. 2024-03-28 11:53:03 +02:00
Rémi Verschelde
c76d2f03b7
Merge pull request #89447 from ajreckof/fix-error-crash-on-change-type-root-after-external-changes
Fix error where update wouldn't reconnect the signal it should have reconnected and led to errors and crash.
2024-03-24 01:15:38 +01:00
Rémi Verschelde
ae8d43b0bb
Merge pull request #88003 from kitbdev/dock-manager-fixes
Refactor and fix issues in Editor Dock Manager
2024-03-24 01:13:26 +01:00
ajreckof
69e5e582c8 fix error where update wouldn't reconnect the signal it should have reconnected and led to errors and crash 2024-03-22 01:00:33 +01:00
kit
0c9c84f7a6 Refactor and fix issues in Editor Dock Manager
Extract Dock Context Menu.
2024-03-16 13:51:31 -04:00
bruvzg
ebb19c4198 [NativeMenu] Fix changes lost due to incorrect rebase (menu goes under task bar, dark mode, item text get, docs) and check to ensure help menu is not using native menu on Windows. 2024-03-15 22:46:47 +02:00
Matt Enad
d4ac3fabac Fix main button margins in custom themes
Defined more theme variations and styleboxes for those variations to work around an issue where external editor themes would apply incorrect margins to certain buttons. This should eliminate clipping/alignment issues while a custom theme is in use.

Also simplified the step where margins are copied over thanks to @Rindbee 's suggestion
2024-03-13 15:38:09 -04:00
Rémi Verschelde
0475011c66
Merge pull request #82084 from ogapo/pr/pck-cache-merge
Merge `uid_cache.bin` and `global_script_class_cache.cfg` after mounting PCKs
2024-03-11 14:01:16 +01:00
Danil Alexeev
87718d2a6e
Editor Help: Add syntax highlighting for code blocks 2024-03-09 00:02:31 +03:00
Rémi Verschelde
51bfda9446
Fix reporting exit code when command line export fails
Fixes #83042.
2024-03-07 01:01:04 +01:00
David Nikdel
5e6adb4a2d Merge uid_cache.bin and global_script_class_cache.cfg after mounting PCKs
fixes godotengine#82061
fixes godotengine#61556

Also, distinguish between main pack and DLC packs.
It's desirable to downloaded content to be as small as possible. This change avoids bloating non-main pack files with new versions of resources that are all read on startup and never used again. They have no effect if loaded after startup.
- project.godot/project.binary file
- extension_list.cfg
- app icon and boot_splash
- .ico and .icns files (these can still be opted in for DLC by listing them explicitly in the include filter)
2024-03-06 12:14:21 -05:00
Rémi Verschelde
13954fc33e
Merge pull request #87452 from bruvzg/native_menu
Move `global_menu_*` methods to a separate `NativeMenu` class.
2024-03-06 13:16:52 +01:00
Hugo Locurcio
8221e7546b
Add editor shortcuts to toggle bottom panel visibility
Default shortcuts use the first or second letter of each word.

This also adds a new shortcut to toggle the last opened bottom panel.
On editor startup, this defaults to the first panel in the list
(which is the Output panel).
2024-03-05 15:53:15 +01:00
RedMser
2bd714e34e
Allow configuring the script filename casing rule
Defaults to "Auto", which detects the casing based on the
preference of the currently selected language (C# for example
prefers PascalCase whereas GDScript prefers snake_case).
2024-03-05 09:43:29 +01:00
bruvzg
c65a667924
Move global_menu_* methods to a separate NativeMenu class. 2024-03-04 23:41:41 +02:00
Rémi Verschelde
82fbbc94fc
Merge pull request #88913 from Cass-dev-web/macos-shortcut-savior
Modify shortcut for closing scene on macOS only
2024-03-04 20:43:38 +01:00
Christen Lofland
e6d0bf32e9
Do not attempt to set cursor shape when that feature is not available.
Co-authored-by: Riteo <riteo@posteo.net>
2024-03-02 17:44:55 -06:00
Rémi Verschelde
16bdd83ea4
Merge pull request #86705 from KoBeWi/resourception
Improve saving of built-in resources
2024-02-29 13:53:44 +01:00
Cass
ea3c303b7e Modify shortcut override for closing scene on macOS 2024-02-27 14:31:17 +00:00
Rémi Verschelde
4582ee1a0f
Merge pull request #87760 from kitbdev/extract-bottom-dock
Extract BottomPanel from EditorNode
2024-02-23 22:18:50 +01:00
Rémi Verschelde
42a15bcc49
Merge pull request #85477 from KoBeWi/submenus_that_shall_not_be_named
Add methods to add submenus without using names
2024-02-23 11:29:28 +01:00
Rémi Verschelde
15bb860fa1
Merge pull request #88609 from Cass-dev-web/master
Improve user experience for VCS metadata generator menu button to mitigate accidentally overriding
2024-02-22 23:34:35 +01:00
Rémi Verschelde
43771659cb
Merge pull request #86610 from Joseph-DiGiovanni/system-theme-options
Add option for editor to follow system theme and accent colors
2024-02-22 16:39:40 +01:00
cass-dev-web
87ba714a3a Added clarity on VCS metadata creator button 2024-02-22 15:38:39 +00:00
kobewi
aeec3c1309 Add methods to add submenus without using names 2024-02-22 15:13:53 +01:00
kit
eb6ca91ba6 Extract BottomPanel from EditorNode 2024-02-20 15:09:07 -05:00
Rémi Verschelde
9e9dcdbba4
Merge pull request #86378 from RobProductions/update-hover-styling
Add hover highlight to main editor buttons
2024-02-20 19:34:40 +01:00
kobewi
a031911c82 Use check_changed_settings_in_group() everywhere 2024-02-19 21:34:45 +01:00
Silc Lizard (Tokage) Renew
772a753960 Fix some animation state corruptions on activate and reset on save 2024-02-19 13:04:22 +09:00
A Thousand Ships
dde5368dee
[Editor] Add missing ellipses to menu options that open dialogs 2024-02-17 17:09:17 +01:00
Rémi Verschelde
4731958174
Merge pull request #88380 from Calinou/editor-move-settings-to-central-location
Move EditorNode setting registration so they are in class reference
2024-02-17 15:54:59 +01:00
Rémi Verschelde
2c5fa95aea
Merge pull request #87530 from YeldhamDev/atr_inheritance
Rework the auto translation system
2024-02-17 15:54:31 +01:00
Rémi Verschelde
dcd11cce6b
Merge pull request #85978 from Calinou/editor-tweak-help-menu-icons
Tweak Help menu icons for better visibility of commonly used items
2024-02-17 15:53:11 +01:00
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