Commit graph

1702 commits

Author SHA1 Message Date
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
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
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
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