Commit graph

6461 commits

Author SHA1 Message Date
Hugo Locurcio
a45db4c208
Fix crash when trying to save with no scenes and scripts open
This could occur when attempting to save project settings when
no scenes or scripts are open (which is common in a brand new project).

(cherry picked from commit 16876bec76)
2021-05-19 15:24:31 +02:00
Hugo Locurcio
a9df687db6
Increase the TileSet editor's snap step to 1024
This also tweaks the autotile bitmaks mode property hint string.
2021-05-18 23:38:22 +02:00
Rémi Verschelde
72647cc55c
i18n: Sync translations with Weblate
(cherry picked from commit bcedd09742)
2021-05-18 12:09:38 +02:00
Rémi Verschelde
0a4eb472cf
Revert "Tweak lightmapper warning message to mention Rosetta emulation on macOS"
This reverts commit 47f869b731.

This is no longer needed after #48455.
2021-05-18 11:58:09 +02:00
Rémi Verschelde
a246dceb51
FileSystem dock: Fix search shortcut
Follow-up to 533d3e7800 which used a shortcut
not defined in 3.x.
2021-05-17 13:32:44 +02:00
fox
533d3e7800
Make shortcut for focusing searchbar in filesystem dock
(cherry picked from commit 22e2e4334e)
2021-05-17 13:11:07 +02:00
kleonc
0a91c8e972
Fix crash after disabling plugin using set_force_draw_over_forwarding_enabled()
(cherry picked from commit 5a8314016a)
2021-05-17 13:09:14 +02:00
Hugo Locurcio
2eea00b036
Add "Support Godot Development" option to the editor's Help menu
(cherry picked from commit 3eae2f9c6d)
2021-05-17 13:06:11 +02:00
Pedro J. Estébanez
817ffc01e1
Make all file access 64-bit (uint64_t)
This changes the types of a big number of variables.

General rules:
- Using `uint64_t` in general. We also considered `int64_t` but eventually
  settled on keeping it unsigned, which is also closer to what one would expect
  with `size_t`/`off_t`.
- We only keep `int64_t` for `seek_end` (takes a negative offset from the end)
  and for the `Variant` bindings, since `Variant::INT` is `int64_t`. This means
  we only need to guard against passing negative values in `core_bind.cpp`.
- Using `uint32_t` integers for concepts not needing such a huge range, like
  pages, blocks, etc.

In addition:
- Improve usage of integer types in some related places; namely, `DirAccess`,
  core binds.

Note:
- On Windows, `_ftelli64` reports invalid values when using 32-bit MinGW with
  version < 8.0. This was an upstream bug fixed in 8.0. It breaks support for
  big files on 32-bit Windows builds made with that toolchain. We might add a
  workaround.

Fixes #44363.
Fixes godotengine/godot-proposals#400.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2021-05-16 17:52:31 +02:00
Rémi Verschelde
50f4c90205
i18n: Sync translations with Weblate
(cherry picked from commit f6c29d1cf5)
2021-05-14 13:23:57 +02:00
Yuri Sizov
fc67ff3d0a
Keep custom editor theme when changing editor settings
(cherry picked from commit 56aedcee17)
2021-05-14 10:34:48 +02:00
Daniel Lungaro
ede0d47ccd
Remove plugin from enabled if there's an error
inform user in warning message

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>

Refactor remove plugin from enabled

(cherry picked from commit 2bae31a4df)
2021-05-14 10:34:05 +02:00
llschuster
2a18909210
text-editor: fix Clicking warning doesn't center around line
(cherry picked from commit 6b55ec2ca9)
2021-05-13 23:22:54 +02:00
Yuri Sizov
01524c0430
Fix EditorPropertyEasing capturing drag events originated outside of it
(cherry picked from commit 31db95b048)
2021-05-13 23:22:06 +02:00
davidh
ae2bc66eae Check for valid DynamicFontData before duplicate 2021-05-13 11:32:57 -05:00
Rémi Verschelde
6e920d0c14
TileSet: Fix signal disconnect error in some situation
Fixes second issue in #45938.

Co-authored-by: kleonc <9283098+kleonc@users.noreply.github.com>
2021-05-10 15:07:27 +02:00
Hugo Locurcio
c318cf6ed2
Save the current script when pressing Ctrl + S if no scene is open
- Tweak the dialog messages to be more informative.
  - The "Saved N modified resources" dialog is not a warning per se,
    so make it more explicit.

(cherry picked from commit 39f9b92f54)
2021-05-09 17:47:38 +02:00
Kyle
b47cd82f76
Add ctrl+shift+a to instance scene in scenetree dock
Adds another key shortcut to instance a scene in the scentree dock. Complements ctrl+a to add a node.

(cherry picked from commit ea5445655c)
2021-05-09 17:47:38 +02:00
Hugo Locurcio
8b06085249
Implement the %command% placeholder in the Main Run Args setting
This can be used to tell Godot to run an executable that will run Godot
rather than running Godot directly. This is useful to make Godot start
on the dedicated GPU when using a NVIDIA Optimus setup on Linux:
`prime-run %command%`

The `editor/run/main_run_args` setting declaration was moved to make it
visible in the ProjectSettings documentation.

(cherry picked from commit ce4aa07276)
2021-05-09 17:47:38 +02:00
Hugo Locurcio
dc42ef2df9
Save the current script when adding a new method via signal connection
This makes it possible for external editors to pick up the changes.
Most modern editors should reload the file automatically,
but some older/lightweight editors may ask the user instead
(or only warn after trying to save in the external editor).

This closes #41283.

(cherry picked from commit 0ade686601)
2021-05-09 17:41:10 +02:00
Hugo Locurcio
f4e653d88f
Improve the editor audio preview inspector appearance and functionality
- Make the timeline indicator thicker and with an indicator triangle,
  similar to the animation editor timeline.
- Add Space bar shortcut to play/pause the audio preview.
- Only seek when clicking or dragging with the left mouse button,
  not other mouse buttons.

(cherry picked from commit a50a81b703)
2021-05-09 17:41:09 +02:00
Hugo Locurcio
9f31877e15
Fix EditorPropertyResource focus outline being drawn behind the preview
(cherry picked from commit 0b47f1be8c)
2021-05-09 17:14:36 +02:00
Hugo Locurcio
30ec3870c9
Tweak the setting hint for the custom editor theme setting
The custom editor theme is only visible after restarting the editor.

(cherry picked from commit 027301fec7)
2021-05-09 17:14:36 +02:00
Kyle
629c3e2a0a
Remove extra separator
Removes an extra separator when Scene Tree Editing is disabled. Discussed in #48518

(cherry picked from commit e168baf433)
2021-05-09 17:14:36 +02:00
Kyle
f711464030
Fixed cut/copy/paste visibility
Fixes #48514 by moving the visibility of these buttons into their own if statement that depends on if scene tree editing is allowed. Previously it was under the script editing setting which is unexpected as it works with nodes and the scene tree.

(cherry picked from commit 10d5d4d3cd)
2021-05-09 17:14:36 +02:00
Rémi Verschelde
c8c8bcee50
Merge pull request #48540 from Calinou/editor-theme-allow-negative-contrast-3.x
Allow negative contrast values in the editor theme settings (3.x)
2021-05-09 16:38:02 +02:00
Pedro J. Estébanez
4da9a501f6 Add animation reset track feature
As a bonus, to have consistency between use Beziers and create insert tracks, use Beziers also gets a default via editor settings that is used when the confirmation dialog is disabled, instead of just falling back to creating non-Bezier tracks.
2021-05-09 09:40:16 +02:00
Hugo Locurcio
e7e2ef0767
Allow negative contrast values in the editor theme settings
When using a negative contrast value, the base color will be lightened
to create the derivative colors instead of being darkened.

This can lead to better-looking themes, especially for light themes.
2021-05-07 18:14:52 +02:00
bruvzg
dab4cf3ed6
Add physical_scancode (keyboard layout independent keycodes) to InputEventKey and InputMap.
Fix non-latin keyboard layout keycodes on Linux/X11 (fallback to physical keycodes).
2021-05-06 23:19:45 +03:00
Hugo Locurcio
42a4bd1ca2
Tweak the built-ins color highlighting in the shader editor
This makes built-ins easier to distinguish from keywords at a
quick glance.
2021-05-06 17:51:36 +02:00
Rémi Verschelde
f34a8c7f0e
Merge pull request #47527 from Calinou/editor-translations-allow-multiple-selection-3.x
Allow selecting multiple files in the editor translation/remap dialogs (3.x)
2021-05-06 08:49:24 +02:00
Hugo Locurcio
35887a2afe
Allow selecting multiple files in the editor translation/remap dialogs
This makes it faster to add several translations.

The undo/redo messages were also tweaked to give better context.
2021-05-06 03:02:15 +02:00
Aaron Franke
e82f56e3a9
Update size when updating ScriptCreateDialog 2021-05-05 18:10:17 -04:00
CaptainProton42
76f3f6949e
Fix 3D scene preview generation.
File system dock previews will now be generated for 3D scenes when no
editor feature profile is set.

(cherry picked from commit 16304aaa3b)
2021-05-05 15:28:12 +02:00
Rémi Verschelde
140350d767
Style: Enforce braces around if blocks and loops
Using clang-tidy's `readability-braces-around-statements`.
https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
2021-05-05 15:02:01 +02:00
Rémi Verschelde
0bf06c25a3
Merge pull request #48450 from Calinou/version-click-to-copy-3.x
Make it possible to copy the Godot version identifier by clicking it (3.x)
2021-05-04 17:55:43 +02:00
Rémi Verschelde
b4af1eba0a
Style: Enforce use of bool literals instead of integers
Using clang-tidy's `modernize-use-bool-literals`.
https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-bool-literals.html
2021-05-04 16:39:13 +02:00
Hugo Locurcio
1ceb603de8
Make it possible to copy the Godot version identifier by clicking it
This closes #24317.
2021-05-04 16:38:17 +02:00
Rémi Verschelde
a828398655
Style: Replaces uses of 0/NULL by nullptr (C++11)
Using clang-tidy's `modernize-use-nullptr`.
https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-nullptr.html
2021-05-04 16:30:23 +02:00
Rémi Verschelde
b5e1e05ef2
Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks 2021-05-04 14:45:16 +02:00
Rémi Verschelde
64a63e0861
Style: clang-format: Disable AllowShortCaseLabelsOnASingleLine 2021-05-04 14:45:15 +02:00
Rémi Verschelde
3d15f04668
Style: clang-format: Disable AllowShortIfStatementsOnASingleLine 2021-05-04 14:45:15 +02:00
Rémi Verschelde
6e600cb3f0
Style: Set clang-format Standard to c++14 2021-05-04 14:45:15 +02:00
Michael Alexsander
ae99339e9f
Add comment highlighting to script thumbnails
(cherry picked from commit 46e0161737)
2021-05-03 21:39:44 +02:00
Mateo Kuruk Miccino
71a9932f38
FileSystem: Force update when we delete a folder from the editor and searching changes only if we change the directory successfully in the scan_fs_changes
(cherry picked from commit dc76938679)
2021-05-03 21:39:44 +02:00
kleonc
93cb416423
TileMapEditor Modulate autotile previews
(cherry picked from commit 3f1b95cfb1)
2021-05-03 21:39:44 +02:00
kleonc
bf63878141
TileMapEditor::_bucket_fill Check autotile coordinates only if autotile is selected
(cherry picked from commit a1b903066e)
2021-05-03 21:39:44 +02:00
Hugo Locurcio
81ca8e4e7e
Add the About dialog to the project manager
The About button is located in the bottom-right corner of the
project manager.

This allows removing the copyright notice from the window title
(which looked a bit ugly in comparison to other applications).
2021-05-02 00:01:23 +02:00
Rémi Verschelde
48cc756f88
Merge pull request #37067 from zaksnet/multiple-editor-instances
Automatic remote debugger port assignment.
2021-05-01 12:57:35 +02:00
Zak
c3cfb87548 Allow multiple editor instances to use different ports
Previously if more than one Godot editor was running then the debugger of one editor would not work because both editors were trying to connect on the same port.
This commit attempts to fix this by allowing the debugger to change the port at runtime in such cases.
2021-05-01 11:32:10 +02:00
bruvzg
301bedd5d4
Duplicate DynamicFontData resources in the editor preview generation thread to avoid race condition. 2021-04-29 23:27:52 +03:00
Rémi Verschelde
0c14d10522
Merge pull request #48296 from akien-mga/3.x-cherrypicks 2021-04-29 13:48:49 +02:00
Rémi Verschelde
880b830ca8
Merge pull request #46292 from hilfazer/nested_scene_instances_duplication 2021-04-29 13:31:27 +02:00
Rémi Verschelde
70ae90e0e8
Core: Drop custom copymem/zeromem defines
We've been using standard C library functions `memcpy`/`memset` for these since
2016 with 67f65f6639.

There was still the possibility for third-party platform ports to override the
definitions with a custom header, but this doesn't seem useful anymore.

Backport of #48239.
2021-04-29 12:34:11 +02:00
Aaron Franke
d304187357
Warn when creating a script with the same name as the parent class
(cherry picked from commit 5a9037f828)
2021-04-29 12:23:33 +02:00
Michael Alexsander
917630107c
Select non-perfect matches if necessary in the Search Help dialog
(cherry picked from commit 77597ea47c)
2021-04-29 11:41:51 +02:00
Michael Alexsander
b406e904ec
Fix EditorInspector not updating its theme on rare occasions
(cherry picked from commit efa3927b49)
2021-04-29 11:40:13 +02:00
lupoDharkael
a5842a8362
Save resource: implement extension priority
give .res less priority and .tres more priority as preferred
extensions.

(cherry picked from commit f2e906496b)
2021-04-29 11:27:56 +02:00
Rafał Mikrut
06976c3e84 [3.x] Fix crashes when using _input functions 2021-04-27 16:51:29 +02:00
ray90514
bf645099a1
Fix multi-selection doesn't correctly show in the inspector
(cherry picked from commit 16decbc0ee)
2021-04-26 13:15:29 +02:00
Hugo Locurcio
e2934a04e2
Allow Center Selection to work without any selection in 2D/3D editors
When there is no selection, the camera will center around the
world origin.

This helps people get back to the world center if they haven't added
any nodes yet.

(cherry picked from commit fc055e1993)
2021-04-26 13:15:28 +02:00
kobewi
b824895065
Allow to drop files on filtered scene tree
(cherry picked from commit 4e64c9fd4d)
2021-04-26 13:15:28 +02:00
Hugo Locurcio
4881d96ef0
Display scene file extensions in the editor only if there's ambiguity
This also simplifies the Editor Settings as the extension is now
automatically shown to avoid ambiguity.

(cherry picked from commit 218d124755)
2021-04-26 13:15:28 +02:00
kobewi
645842e0e8
Save project after opening
(cherry picked from commit 76240515d8)
2021-04-26 13:15:28 +02:00
Kyle
cc419fcf8f
Fixes ctrl-click function line centering
When ctrl-clicking in the code editor, the view will now be centered on the function result.

Also replaces a circumstance where goto_line_centered should be used.

(cherry picked from commit 2b775bd698)
2021-04-26 13:07:59 +02:00
Shatur95
41e7cefaa4
Move duplicated code into a function
(cherry picked from commit a1cfc1032c)
2021-04-26 13:07:59 +02:00
Hugo Locurcio
58393b544b
Tweak error messages for the Save Branch as Scene editor option
See https://github.com/godotengine/godot-proposals/issues/2433.

(cherry picked from commit 4c8f458c90)
2021-04-26 13:07:59 +02:00
Ev1lbl0w
c2b85ed865
Allow Godot to import .ZIP files with non-regular structure
(cherry picked from commit 9b1db715fd)
2021-04-26 13:07:58 +02:00
Nathan Franke
1001bea7ac
Collapse Resource Preview Properly
(cherry picked from commit 98c46cbf26)
2021-04-26 13:07:58 +02:00
Lightning_A
a853cf25f6
Remove current export template version from "Installed Versions"
**Not tested** (I don't have an easy way to test currently). Resolves https://github.com/godotengine/godot-proposals/issues/2394 .

(cherry picked from commit c562c6943f)
2021-04-26 12:52:15 +02:00
Hugo Locurcio
7cb77a859a
Add a menu action to open C++ source on GitHub in the editor debugger
This helps user find back the source code where the error/warning
was emitted from.

(cherry picked from commit 5bc746e60a)
2021-04-26 12:52:15 +02:00
Sushi
79f48642a8
Fix: Selection Only in Find/Replace now preserves selection
(cherry picked from commit a4d5664858)
2021-04-26 12:52:15 +02:00
Hugo Locurcio
a989e08839
Improve error messages for missing export presets when using --export
- Display a specific error message if the project doesn't have an
  `export_presets.cfg` file.
- Display a list of detected export presets if an invalid export
  preset name is supplied.

(cherry picked from commit 09f38ea215)
2021-04-26 12:20:28 +02:00
Hugo Locurcio
94e0d02079
Strip leading/trailing whitespace for project name in the project manager
This affects creating projects and renaming them.

(cherry picked from commit 86455d0c58)
2021-04-26 12:20:28 +02:00
Rémi Verschelde
32c1bada99
Merge pull request #47827 from Chaosus/vs_fix_default_input_overriding_3.2
[3.x] Prevents default values of VSNodeCustom from overriding by a script
2021-04-23 22:06:08 +02:00
Bhuvan Vemula
1c1ec81455
instance-scene: make parent as edited_scene if no parent selected.
(cherry picked from commit 9eb3546f38)
2021-04-23 21:52:21 +02:00
Hugo Locurcio
47f869b731
Tweak lightmapper warning message to mention Rosetta emulation on macOS 2021-04-22 15:57:52 +02:00
Rémi Verschelde
305c364c13
i18n: Sync translations with Weblate 2021-04-21 09:40:43 +02:00
Rémi Verschelde
d91b780cf8
Merge pull request #48058 from lyuma/legacy_names_gltf_3.3
Add an import setting use_legacy_names for 3.3 compatibility.
2021-04-21 08:57:12 +02:00
Lyuma
d92a172879 Add an import setting use_legacy_names.
During the development of 3.3, internationalization features were added to allow arbitrary bone and node names.
However, doing so will break all references and existing animation clips for projects upgraded from 3.2
This adds an import setting, enabled by default, but disabled for newly generated .import files which restores the old behavior.
2021-04-20 22:48:52 -07:00
kleonc
7a776d68b6
ProjectSettingsEditor: Make "Type" OptionButton item ids match corresponding Variant::Type enum values.
(cherry picked from commit f8f12d0564)
2021-04-20 20:12:52 +02:00
Rémi Verschelde
2335da5af2
Merge pull request #47742 from mortarroad/3.x-fix-gltf-bone-names-space
[3.3] fix gltf importer regression from b032067e42, causing different BoneAttachment names
2021-04-20 20:12:41 +02:00
Hugo Locurcio
8e54573dfc
Add a tooltip to document performance issues of the Remote scene tree
(cherry picked from commit 6d2f5ee244)
2021-04-14 13:29:59 +02:00
Yuri Roubinsky
ac91e2ca0d [3.2] Prevents default values of VSNodeCustom from overriding by a script 2021-04-12 14:52:19 +03:00
kobewi
f72c91e0b1
Expose edit_node() for editor plugins
(cherry picked from commit 72014a7a2e)
2021-04-12 09:24:37 +02:00
Aaron Franke
9b928cbd9e
Show a message when trying to zoom farther than the limit
(cherry picked from commit b8f66d58b6)
2021-04-12 00:23:43 +02:00
Haoyu Qiu
14cea66f23
Fixes Node3D rotation in select mode on macOS
(cherry picked from commit 879a290ed9)
2021-04-12 00:23:43 +02:00
Rémi Verschelde
f3476b66c4
Merge pull request #47213 from timothyqiu/project-icon-size-3.x
[3.x] Fix project icon size in Project Manager
2021-04-12 00:08:40 +02:00
Haoyu Qiu
bfa5adb84f Fix 3D selection box size for Spatial 2021-04-11 19:01:37 +08:00
Morris Tabor
d9e9aec9b9 fix gltf importer regression from b032067e42, causing different BoneAttachment names 2021-04-09 10:25:45 +02:00
Yuri Sizov
ea5b3dda93
Expose editor scale to the plugin API
(cherry picked from commit ea31af68ba)
2021-04-06 10:18:20 +02:00
Hugo Locurcio
566213e08d
Add a subtle background to editor scrollbars
This makes it possible to see whether a scrollbar grabber is at the top
or at the bottom of a scrollbar. Also, if a scrollable area is very
large, this makes it easier to notice that the area can be scrolled
(since the grabber is proportionally very small).

The scrollbar grabbers were also made thicker and slightly more opaque
for better visibility, especially in peripheral vision.

(cherry picked from commit b60b6ddba4)
2021-04-06 10:04:51 +02:00
Rémi Verschelde
5cfdb86660
i18n: Sync translations with Weblate 2021-04-05 16:30:04 +02:00
megalobyte
724a18cf72
Use double when setting the default step size
Casting it as a float was causing issues with the progress bar

(cherry picked from commit d0f3817876)
2021-04-05 12:01:18 +02:00
AndreaCatania
bd5663e2cf
Fixes editor crash on closing
Fixes editor crash when the gizmo is destroyed and the `SceneTree` is already freed.

(cherry picked from commit 79f55fcded)
2021-03-31 12:47:54 +02:00
Rémi Verschelde
cca2637b9b
i18n: Sync translations with Weblate 2021-03-30 00:03:07 +02:00
Rémi Verschelde
015973df04
doc: Make all tutorial links point to 3.3 branch of docs 2021-03-26 10:43:43 +01:00
Haoyu Qiu
be18262888
Check section existance before getting keys
(cherry picked from commit 40d6a25ef5)
2021-03-26 09:22:22 +01:00
nathanwfranke
1cfa2ad166
Fix transparent editor theme being brighter
(cherry picked from commit 0222f78482)
2021-03-24 10:31:14 +01:00
Rémi Verschelde
60c36af6dc
Remove now unnecessary ResourceImporterCSV importer
Its only purpose was to prevent importing CSV files as translations, but it
would still import them as *nothing*, leading to workflow issues.

This is now properly fixed with #47268 which allows disabling the import for
specific files.

(cherry picked from commit 7ed2220928)
2021-03-24 10:29:16 +01:00