Commit graph

6225 commits

Author SHA1 Message Date
hilfazer
6dbc08668b Move Editable Children information from scene's root to instanced nodes 2020-10-26 11:55:47 +01:00
Marcus Brummer
69b99ba9cb Improve rotation gizmo
Hide the back sides of the rotation gizmo circles and add a white
outline for better visualization of the rotation "sphere".

This is a 3.2 backport of @JFons work on the master branch; all credit
goes to him.
2020-10-22 22:05:50 +02:00
Hugo Locurcio
2dbc329704
Add a debanding property to Viewport for GLES3
It can be enabled in the Project Settings
(`rendering/quality/filters/use_debanding`). It's disabled
by default as it has a small performance impact and can make
PNG screenshots much larger (due to how dithering works).

As a result, it should be enabled only when banding is noticeable enough.

Since debanding requires a HDR viewport to work, it's only supported
in the GLES3 backend.
2020-10-20 19:07:15 +02:00
Hugo Locurcio
af45c97652
Add fast approximate antialiasing (FXAA) to Viewport
This backports FXAA from the `master` branch.

Co-authored-by: Clay John <claynjohn@gmail.com>
2020-10-20 14:54:52 +02:00
Gabriel Van Eyck
5b9c16a324
Keep 'Editor Description' metadata when changing a Node's type
Also copy edit group/lock when replacing a Node3D

(cherry picked from commit a22275c8a2)
2020-10-19 16:10:01 +02:00
Fabio Alessandrelli
7a0710f91a
EditorNode now copies all drag and dropped files.
The editor used to only copy drag-dropped files in the File System pane
if the given file was a valid resource, or had a specific file format
(ttf, otf).
With this PR, all drag and dropped files are copied instead, no matter
their extension.

(cherry picked from commit 410b324740)
2020-10-19 16:10:00 +02:00
volzhs
623f7e0db4
Show android device name when connected only one device
(cherry picked from commit 778e982cff)
2020-10-19 16:09:59 +02:00
Marcel Admiraal
3e50d3b4c0
Ensure grid index is valid before trying to change value.
(cherry picked from commit f98acd5cfb)
2020-10-19 16:09:59 +02:00
Haoyu Qiu
0c1f88c769
Adds pan gesture to StateMachine editor
(cherry picked from commit e9bec0d76b)
2020-10-19 16:09:59 +02:00
Tomasz Chabora
ed34eed62d
Update the setting when clicking Show hidden files
(cherry picked from commit 725c2bdf48)
2020-10-19 16:09:58 +02:00
David Sichma
f601e15b92
aabb change updates bounding box
spatial editor will now update the bounding box if aabb or transform
changes

(cherry picked from commit 7701889048)
2020-10-19 16:09:57 +02:00
Michael Auderer
9f4dc87739
Reset TileMapEditor painting on application refocus
Treats application unfocus as a mouse release for
TOOL_PAINTING, by finishing the undo state and
resetting the tool. Also sets a flag to prevent extra
lines from being drawn when the application is refocused.

fixes #42398, fixes #24970

(cherry picked from commit 70a4cd1afe)
2020-10-19 16:09:55 +02:00
Marcus Brummer
b426e58acd
Fixed renaming/moving of nodes with exported NodePaths
(cherry picked from commit fdec257e58)
2020-10-19 15:15:27 +02:00
lawnjelly
c2290dbedd Unified GLES2 / GLES3 Batching
Batching is mostly separated into a common template which can be used with multiple backends (GLES2 and GLES3 here). Only necessary specifics are in the backend files.

Batching is extended to cover more primitives.
2020-10-16 10:34:47 +01:00
Fabio Alessandrelli
0452c2fced Improve Project Manager video driver selection.
Now suggests the current video driver instead of defaulting to GLES3.
2020-10-14 12:32:35 +02:00
Hugo Locurcio
aaffd61903
Fix rectangle paint tooltip for the tilemap editor on macOS
This also fixes the Move Points tooltip for the 2D polygon editor.

This closes #42702.
2020-10-11 15:54:15 +02:00
Yuri Roubinsky
a65252018c [3.2] Fix undo for moving multiple visual shader nodes 2020-10-06 08:54:58 +03:00
Aaron Franke
b2897f1f7b
Check for global script class information before clearing it
(cherry picked from commit 1ca501d7d4)
2020-10-05 22:09:49 +02:00
K. S. Ernest (iFire) Lee
1f87bca8fb
Better non alphanumeric bone names.
1. _gen_unique_bone_name(Ref<GLTFState> state, const GLTFSkeletonIndex skel_i, const String &p_name) won't return an empty string.

2. String GLTFDocument::_sanitize_bone_name(const String &name) will keep Japanese characters. Like: "全ての親".

3. The sanitize function allows  the bone name to be not just alphanumeric. The only required conditions are the ones in add_bone.

> ERR_FAIL_COND(p_name == "" || p_name.find(":") != -1 || p_name.find("/") != -1);

(cherry picked from commit 7b76f8783f)
2020-10-05 20:46:01 +02:00
Rémi Verschelde
9529ce41eb
glTF: Fix parsing image data with mimeType undefined
The glTF 2.0 spec only makes `mimeType` mandatory for `bufferView` image data,
so the previous logic to handle URIs with base64-encoded images could fail if
`mimeType` is undefined.

The logic was documented and refactored to better handle the spec, notably:

- `uri` and `bufferView` are now mutually exclusive, and only the latter fails
  if `mimeType` is undefined.
- `uri` with a file path will now respect the `mimeType` if defined, and thus
  attempt loading the file with the specified format (even if its extension is
  not the one expected for this format). So we can support bad extensions (PNG
  data with `.jpg` extension) or custom ones (PNG data in `.img` file for
  example).
- `uri` with base64 encoded data will infer MIME type from `data:image/png` or
  `data:image/jpeg` if it was not documented in `mimeType` initially.
- `uri` with base64 encoded data, no `mimeType` and `application/octet-stream`
  or `application/gltf-buffer` will fall back to trying both PNG and JPEG
  loaders.

Fully fixes #33796 (and fixes up #42501).

(cherry picked from commit 2e99d0b26f)
2020-10-05 14:41:53 +02:00
Rémi Verschelde
177d16c01c
glTF: Fix parsing buffer data with application/gltf-buffer and image/* MIME types
See https://github.com/KhronosGroup/glTF/issues/944 for context on the
application/gltf-buffer MIME type.

The glTF 2.0 spec supports `image/jpeg` and `image/png` which can also be
base64-encoded in buffer URIs.

Fixes #33796.

(cherry picked from commit 34a50310ad)
2020-10-05 14:38:48 +02:00
Aaron Franke
fcaf17824f
Don't write global script class information if there is none
(cherry picked from commit 3163611f0c)
2020-10-04 20:53:50 +02:00
Ryan Roden-Corrent
d05a07235c
Fix bound return type on get_priority.
Also adds a description explaining gizmo priority.

Inferred from:
e4363d001a/editor/plugins/spatial_editor_plugin.cpp (L5867-L5880)
e4363d001a/editor/plugins/spatial_editor_plugin.cpp (L6462-L6470)

(cherry picked from commit c6919a13da)
2020-10-04 20:51:19 +02:00
Yuri Roubinsky
44817dbe6b [3.2] Fix port previews for uniforms in visual shaders 2020-10-02 11:10:08 +03:00
Haoyu Qiu
718f8e8344 Changes mention of Node3D back to Spatial 2020-10-01 23:55:10 +08:00
Gilles Roudière
14fa64d289
Fix scale cursor rotation and handle diagonal ones
(cherry picked from commit 6dd19af439)
2020-10-01 16:00:47 +02:00
Haoyu Qiu
c8a9f700c3
Fixes FileSystem tree preview icon size on HiDPI
(cherry picked from commit b28fc2df07)
2020-10-01 16:00:46 +02:00
Hugo Locurcio
1eb4017e28
Make the pressed autokey icon red to emphasize its "recording" status
(cherry picked from commit 95773bb3c1)
2020-10-01 16:00:46 +02:00
Rémi Verschelde
3961f50176
Merge pull request #40461 from nekomatata/script-editor-init-optimization-3.2
[3.2] Optimized ScriptEditor initialization when many scripts are loaded
2020-10-01 13:58:01 +02:00
Rémi Verschelde
0c3e0ab194
Merge pull request #40994 from qarmin/sanitization32
[3.2] Added Linux sanitizer with xvfb to github workspace
2020-10-01 13:56:09 +02:00
Rémi Verschelde
ef223f3aa7
Merge pull request #41185 from Chaosus/vs_uniform_ref_3.2
[3.2] Added UniformRef visual shader node
2020-10-01 13:50:08 +02:00
Hugo Locurcio
f7ed1f4d1f
Automatically start searching in the asset library when entering text
Entering text will now start searching automatically after 0.25 seconds
have passed (debounce delay).

This removes the need for a separate Search button.

(cherry picked from commit 6055db2a72)
2020-09-29 13:57:58 +02:00
Nehluxhes
5abc42c27e
Remove duplicate node update call
(cherry picked from commit c85d04a771)
2020-09-29 13:57:57 +02:00
andriyDev
98eb6e4af6
Added inspector_only option to inspect_object in EditorInterface.
Updated docs to reflect change to inspect_object.

(cherry picked from commit 45a1c6f278)
2020-09-29 13:57:57 +02:00
K. S. Ernest (iFire) Lee
460ab353b4
Use the vertex colors by default in gltf.
(cherry picked from commit 43424e1321)
2020-09-29 13:57:57 +02:00
Hugo Locurcio
ebff4c3e83
Allow using a comma as decimal separator in EditorSpinSlider
This closes https://github.com/godotengine/godot-proposals/issues/1576.

(cherry picked from commit 3800e7d2ba)
2020-09-29 13:57:57 +02:00
Hugo Locurcio
fbafd5c9e2
Improve the inspector easing editor
- Make it possible to drag a negative easing or an easing of 0 back to
  a positive value.
- Clamp the value between -1000000 and 1000000 to avoid issues
  related to infinity.
- Display more decimals for numbers closer to 0, less for large numbers.
- Display trailing zeroes in decimals to avoid flickering when dragging.

This closes #18712 and closes #22079.

(cherry picked from commit 028de11db8)
2020-09-29 13:57:57 +02:00
Aaron Franke
50b1de7e39
Change the "remove missing" button to disabled rather than hidden
Also set a minimum size

(cherry picked from commit 0b6326c79a)
2020-09-29 13:57:57 +02:00
Gilles Roudière
0b2913086f
Draw selected item on top of everything else
(cherry picked from commit 16532f51ef)
2020-09-29 13:57:56 +02:00
Gilles Roudière
e496e8d318
Fix error when dragging anchors with parent's size == 0
(cherry picked from commit 8e6da0b808)
2020-09-29 13:57:56 +02:00
Hugo Locurcio
306ce02823
Replace AutoKey icon with a more universally understood "record" button
See discussion in
https://github.com/godotengine/godot-proposals/issues/169.

(cherry picked from commit da906cade3)
2020-09-29 08:54:45 +02:00
Rémi Verschelde
4de606d78f
i18n: Rename pt_PT to pt
We originally used `pt_PT` (i.e. Portuguese (Portugal)) to distinguish with
the Brazilian Portuguese variant `pt_BR`, as both are significantly different
and need separate translation files.

But Portugal's Portuguese (or "European Portuguese") is close to the variant
spoken and written in other Portuguese-speaking countries such as Angola and
Mozambique, so it makes sense for users of these countries to also have access
to the European Portuguese translation (at least until translators decide that
adding e.g. `pt_AO` and `pt_MZ` variants would make sense, taking into account
the translation effort that this duplication implies).

Godot's locale matching checks first for the full locale (e.g. `pt_AO`), and
if no translation is found, it checks for the non-regional language code
(`pt`), so this change enables translations for Portuguese speakers outside
Portugal and Brazil.

(cherry picked from commit 1e2f55e273)
2020-09-29 08:54:45 +02:00
Leleat
15c56de212
striped edges on node rename in SceneTreeDock
(cherry picked from commit 32e52217ff)
2020-09-29 08:54:45 +02:00
Danil Alexeev
44bdd8f16c
Improvement for the Copy button in the Output Log
Now if no text is selected, pressing the Copy button copies the entire text.

(cherry picked from commit fb6eb21afc)
2020-09-29 08:54:45 +02:00
Rémi Verschelde
8ca9680b13
Merge pull request #38076 from DrMoriarty/fix_pvrtc
iOS: Fix multiple issues with PVRTC import, disable ETC1
2020-09-28 10:17:22 +02:00
kurinoku
94d9b7f7e2 Fixed tile_set_editor_plugin.cpp selection issue.
Fixed issue where using arrows to change the selected tile would not reach all subtiles in an autotile, only going up to the second to last row and column.
2020-09-24 13:19:48 -03:00
Rémi Verschelde
510d87e468
i18n: Sync translations with Weblate 2020-09-24 14:51:36 +02:00
booer
b48015a3d1
Fix changing icons' colors when switch dark and light theme
(cherry picked from commit 3d69385655)
2020-09-24 14:43:10 +02:00
Spencer Burris
65ab1a3b0f
Make blank project name create an error, not a warning
(cherry picked from commit 0e3d938968)
2020-09-24 14:43:10 +02:00
Michael Alexsander
d949b042a7
Add placeholders to the searchbars in the Project/Editor settings
(cherry picked from commit 626d9d5ae4)
2020-09-24 14:43:10 +02:00
Hugo Locurcio
9e28bee01f
Improve search and display in the editor property/method selector
- Use postfix notation for types in the method selector
  (for consistency with the editor help).
- Perform a case-insensitive match and replace spaces with underscores
  in the search string.
- Fix extraneous space after the `void` return type.

(cherry picked from commit 4390a9d628)
2020-09-24 14:43:09 +02:00
Michael Alexsander
5f430b4fb1
Minor visual improvements to the "Batch Rename" dialog
(cherry picked from commit 25d18e3491)
2020-09-24 14:43:09 +02:00
Eric M
8bdfba790b
Added search box to signals dock.
Also made localised code changes for better documentation and readability.

(cherry picked from commit 8c4c2bceab)
2020-09-24 14:43:09 +02:00
Hugo Locurcio
b79bcb1f33
Make the SpriteFrames animation speed SpinBox take less vertical space
This makes it possible to display one more animation with the same
vertical space.

(cherry picked from commit 2427a9cafc)
2020-09-24 14:43:09 +02:00
Hugo Locurcio
e4e4140c6f
Improve editor tooltips related to debugging
Some option names have also been made longer as we can afford using
more space to display them.

(cherry picked from commit a46802f07c)
2020-09-24 14:43:09 +02:00
Dashcell
42eb92d19a
Fixes the resize of tile shapes when a vertex is outside of the tilesheet. Fix #34970
(cherry picked from commit 5355169d3c)
2020-09-24 14:43:07 +02:00
Melvin Louwerse
22efebc599
Show correct name of signal when editing an existing one
Use popup_dialog() instead of popup_centered() to show edit dialog/

With popup_centered it is not possible to change the displayed
signal name. When this is not set the previous shown name is show
for the current dialog.

This is no problem when creating a new conenction as popop_dialog
is used there and this would update the title.

Fixes #42074

(cherry picked from commit eeb6c2e22c)
2020-09-24 14:43:07 +02:00
booer
4d27433c1d
Fix filtering of search results in SectionedInspector
(cherry picked from commit 7f226d0a85)
2020-09-24 14:43:06 +02:00
Lunatoid
849dc87577
Fixes DefaultProjectIcon scaling with editor scale
Should fix #27009 where the DefaultProjectIcon was scaling
with the EDSCALE. Now it checks if the icon name is equal
to "DefaultProjectIcon" and sets the scale to 1.0 instead of
EDSCALE.

(cherry picked from commit 740100d671)
2020-09-24 14:43:06 +02:00
SekoiaTree
0d8b2d34e1
Fixed node scaling arrows being wrong
Patch for #21755. Node scaling arrows pointed the wrong way when nodes were rotated. Ammend: made math cleaner.

Simplified expression

Changes suggested by Aaron Franke

Co-authored-by: Aaron Franke <arnfranke@yahoo.com>
(cherry picked from commit 603febdbfe)
2020-09-24 14:43:05 +02:00
Aaron Franke
76a8458753
Make the Import dock depend on the FileSystem dock
(cherry picked from commit de6f8f9d21)
2020-09-24 14:43:05 +02:00
Zak
d94323e37b
Adds automatic update for region_rect
When changing the texture region for a StyleBox, the regions was not updating automatically in the Texture editor.

(cherry picked from commit 7d7727bade)
2020-09-24 12:05:34 +02:00
Vasiliy Makarov
f388ea00bf iOS: Fix multiple issues with PVRTC import, disable ETC1
Fixes: #28683, #28621, #28596 and maybe others

For iOS we enable pvrtc feature by default for both GLES2/GLES3
Etc1 for iOS doesn't have any sense, so it disabled.
Fixed checks in export editor.
Fixed pvrtc ability detection in GLES2 driver.
Fixed pvrtc encoding procedure.
2020-09-23 11:13:50 +02:00
Rémi Verschelde
c8859f0463
Fix typos with codespell
Using codespell 1.17.1.

Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
curvelinear
dof
doubleclick
fave
findn
leapyear
lod
merchantibility
nd
numer
ois
ony
que
seeked
synching
te
uint
unselect
webp
EOF

$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2020-09-18 14:09:51 +02:00
hoontee
b626f16212
Fix "Create Trimesh Collision Sibling" transform
(cherry picked from commit 3cbd626328)
2020-09-14 11:00:47 +02:00
Adrien
e90467ef66 Fix #42043, mismatched compress options in ResourceImporterLayeredTexture 2020-09-14 15:36:46 +08:00
Haz
935edf9323
Fix tilemap tiles on horizontal/vertical flips
(cherry picked from commit 3f5413693c)
2020-09-10 12:03:45 +02:00
Rémi Verschelde
c5f6d2097b
i18n: Sync translations with Weblate
Add translators comment for the two 'Project Manager' strings,
and fix some of the translations.
2020-09-08 14:05:53 +02:00
Rémi Verschelde
8ae2a84fb6
Fix build with GDScript support disabled
Fixes #41710.
2020-09-08 09:14:25 +02:00
SkyJJ
1ba5917da9 Backport translator comment PR to 3.2 2020-09-07 21:03:25 +02:00
Rémi Verschelde
41b9e1d7ea i18n: Sync translations with Weblate 2020-09-04 08:53:53 +02:00
Rafał Mikrut
9caa35532a Fixes leak with creating editor settings
(cherry picked from commit 599ccbb7d4)
2020-09-04 08:49:58 +02:00
Lunatoid
636fe1bab9
Gives the theme editor a horizontal scrollbar
Fixes #34509 where the theme editor would push away the inspector
if something like "hseperation" is really high.
Now `set_enable_h_scroll` is true which fixes this.

(cherry picked from commit d602be077d)
2020-08-31 15:29:41 +02:00
Hugo Locurcio
336bc03d66
Add an editor setting to invert 3D pan/orbit on the X axis
This also makes the invert Y axis option apply to 3D panning.

This closes #28082.

(cherry picked from commit 2c9d4ef961)
2020-08-21 02:28:17 +02:00
Rémi Verschelde
9bf5a0b791
Merge pull request #41081 from naithar/feature/ios-framework-import-3.2
[iOS] [3.2] Export: Add a method to embed a framework
2020-08-19 14:11:27 +02:00
Sergey Minakov
910c554a1a iOS Export: Add a method to embed a framework
By default 'add_ios_framework' would not embed a framework to save previous behavior.
New 'add_ios_embedded_framework' would embed framework on export.
2020-08-19 14:54:59 +03:00
Michael Alexsander
8adfeda6f8 Make the editor's 'CheckButton' icon be smaller
(cherry picked from commit 0c182ce8e8)
2020-08-17 11:05:27 +02:00
Rafał Mikrut
abd7c1833e Added Linux sanitizer with xvfb to github workspace 2020-08-14 12:15:58 +02:00
Rémi Verschelde
e283d4b5c8 Update AUTHORS and DONORS list
New contributors added to AUTHORS:
@hinlopen, @naithar, @rrcore, @SkyLucilfer, @TwistedTwigleg

Thanks to all contributors and donors for making Godot possible!

---

Also changes to relevant code that parses the DONORS.md to match
the new tiers.

(cherry picked from commit d2d4c1c957)
2020-08-14 00:32:05 +02:00
Maganty Rushyendra
69dc9c9417 Fix tile placement preview for rotated, skewed or scaled TileMaps
Ensures that the editor preview when placing a tile on a TileMap takes
into account the transformation of the TileMap. Previously, only the
origin of the Tile was transformed, but not its orientation or
scaling.

(cherry picked from commit cf04aabef1)
2020-08-14 00:32:05 +02:00
Antoine Félix
3211a51be8 Modify the scene only when color changed
Editor now changes a color in the inspector only when it is different
from the current one.

Solves fake unsaved changes in editor after using the ColorPicker.

Resolves: #40879
(cherry picked from commit f3626364fc)
2020-08-14 00:32:05 +02:00
Tomasz Chabora
cea16907bb Properly disambiguate unsaved scripts
(cherry picked from commit 3082def404)
2020-08-14 00:32:05 +02:00
Rémi Verschelde
900949b316 i18n: Sync translations with Weblate 2020-08-11 16:07:11 +02:00
Yuri Roubinsky
d0c705781c [3.2] Added UniformRef visual shader node 2020-08-11 15:04:06 +03:00
totlmstr
f550af9da7 Add missing #ifdef SVG_ENABLED 2020-08-08 14:03:14 -07:00
Rémi Verschelde
ed20772c09 i18n: Sync translations with Weblate 2020-07-28 12:07:45 +02:00
Yuri Sizov
44ff9cdea5 Fix errors saving a 2D scene preview when the 2D editor was never opened
(cherry picked from commit e2b85b74a2)
2020-07-28 00:56:20 +02:00
Rémi Verschelde
518f109927 Script editor: Don't open dominant script in external editor
Fixes #13429.

(cherry picked from commits b5f110c77e,
6b3f013a82, and
e016859c3b)
2020-07-28 00:47:24 +02:00
Andrii Doroshenko (Xrayez)
6abaf4d0eb Skip internal scripts for breakpoints without printing an error
This removes:
```
ERROR: get_breakpoints: Condition ' base.begins_with("local://")
```
while running a project with blank scripts caused by deleting
or moving, or built-in scripts which are not yet saved within a scene
on running a project.

(cherry picked from commit 1c70a33d9c)
2020-07-28 00:40:20 +02:00
Rémi Verschelde
eda03831d6 Style: Add missing newlines to SVGs 2020-07-24 10:39:18 +02:00
Tomasz Chabora
2bcb9d2a04 Fix run project when current scene was never saved
(cherry picked from commit 9c84e34fd4)
2020-07-24 10:31:57 +02:00
Andy Maloney
cc8c6180c3 [macOS] Fix Maya navigation with ALT + mouse scroll
Methods were being called with InputEventMouseMotion instead of InputEventPanGesture, and they were null.

Fixes godotengine/godot#16181 on the master branch

(cherry picked from commit 394a7826be)
2020-07-24 10:31:57 +02:00
Rémi Verschelde
925371d08f TileSet Editor: Check polygon size before indexing
Fixes #39722.

(cherry picked from commit 6f428f2494)
2020-07-24 10:31:57 +02:00
Tomasz Chabora
5984febde2 Prevent multiple Controls moving inside container
(cherry picked from commit e44c9101da)
2020-07-24 10:31:57 +02:00
Paulb23
ca4fe82a7f Fix crash when closing a TextFile
(cherry picked from commit 54bca425b2)
2020-07-24 10:31:57 +02:00
Stijn Hinlopen
b7b8f8645f Open scene selected from Quick Open dialog.
(cherry picked from commit 1ce3a77a42)
2020-07-24 10:31:56 +02:00
rileylyman
582b4318f8 implement generic filename disambiguation
A static function is added to EditorNode which allows for filename
disambiguation given a list of filenames and the corresponding list of
absolute paths for those files. This function is then used to
disambiguate scene and script tabs in the editor.

(cherry picked from commit 4285211f40)
2020-07-24 10:31:56 +02:00
K. S. Ernest (iFire) Lee
f189d0e1f3 Allow gltf2 morph targets with no default values. Changes for bug 38751
(cherry picked from commit 71ae0ff46d)
2020-07-24 09:37:43 +02:00
Hugo Locurcio
3bdb39bec4 Add a margin to EditorSpinSlider to visually line up the edited number
This means clicking on an EditorSpinSlider to edit its value will
no longer cause the number to be visually offset while it's
being edited.

(cherry picked from commit cc615fee5f)
2020-07-24 09:34:58 +02:00
PouleyKetchoupp
e3765e97de Optimized ScriptEditor initialization when many scripts are loaded
This change avoids the editor to freeze for several seconds when a
project with lots of scripts is loaded in the editor.

It focuses on a few heavy operations previously executed on all
previously loaded scripts:
- Initialize script resource (script validation/parsing) only
on focus
- ScriptTextEditor: code editor and edit menu are added to the
scene only on focus
- Add to recent scripts only when opening new scripts
(load/save scene metadata)
2020-07-17 09:42:11 +02:00
Rémi Verschelde
a06ee5e763 PO loader: Fix unclosed files and error messages
Fixes #40324.

(cherry picked from commit 47cc202972)

Also removes empty `p_path` as done in 4857648a16.
2020-07-15 12:48:18 +02:00
Jitesh
f6479786c0 change minimum horizontal size from 200 to 240
(cherry picked from commit a8905b2a4e)
2020-07-15 12:11:31 +02:00
Michael Alexsander
e7e022b3ee Prefer the highlight version of the "GuiTabIcon" icon for buttons, and make their width/height equal
(cherry picked from commit 26381265b8)
2020-07-15 12:11:31 +02:00
Zae
ac3ff49ae5 fix item_edited behavior on Asset Installer.
(cherry picked from commit b0fbde6abd)
2020-07-13 15:11:33 +02:00
coldragon
a0f0aa1741 Fix crash on editor without a feature profile
(cherry picked from commit f2a01b0c6b)
2020-07-10 11:01:31 +02:00
Chistpohe LY
130ad08d47 auto re-import atlas, fixes #40047
(cherry picked from commit f34f00bccc)
2020-07-10 11:00:10 +02:00
Daniel Ting
c55e68d311 Do not try to save internal scripts
Fixes #40175

(cherry picked from commit d6c979d91b)
2020-07-10 10:37:33 +02:00
PouleyKetchoupp
fe0adc4f77 Keep debug & verbose options after loading project from project manager
(cherry picked from commit b2d27214aa)
2020-07-10 08:51:21 +02:00
Yuri Sizov
3f57cb12b4 Improve null check in FindReplaceBar
(cherry picked from commit e94b8a6acc)
2020-07-08 09:01:57 +02:00
Yuri Sizov
bd90f236d3 Improve scene preview generation for empty scenes and disabled features
(cherry picked from commit 6c8a9b7690)
2020-07-08 09:01:57 +02:00
bruvzg
e9ab41b71d
[macOS, 3.2] Implement seamless display scaling. 2020-07-07 22:54:33 +03:00
Yuri Sizov
2b4773f0cf Expose methods to play scene from plugin code
(cherry picked from commit 49f6dc5004)
2020-07-06 19:00:56 +02:00
Andrii Doroshenko (Xrayez)
41f99c8f53 Provide warning when using polygon shapes in CollisionShape2D node
`ConvexPolygonShape2D` and `ConcavePolygonShape2D` are only meant to be
used directly in code and not in the editor for physics-based use cases
specifically.

Developers are advised to use `CollisionPolygon2D` instead, which does
generate those shapes under the hood, handling polygon convexivity,
proper orientation etc.

(cherry picked from commit dc446203be)
2020-07-06 14:16:28 +02:00
Maganty Rushyendra
68526da5f2 Fix undo/redo for bone painting in Polygon2D UV Editor
Fix to ensure that undo/redo works when painting bones in the Polygon2D
UV editor. Previously, bone painting would continue silently in the
background, because a mouse click signalling the end of an edit would
not be appropriately dealt with.

(cherry picked from commit 6e60aa3876)
2020-07-06 14:13:58 +02:00
Riley Lyman
157e810b2e Make Resource properties accept SE plugin scripts
(cherry picked from commit ab0fe13efb)
2020-07-03 15:34:30 +02:00
Michael Alexsander
0924a3ac55 Fix timeline cursor not updating on zoom change in the Bezier editor
(cherry picked from commit eee9d053a3)
2020-07-03 15:34:30 +02:00
Michael Alexsander
a9ef40b388 Remove oversized margins in the AnimationTree editor
(cherry picked from commit 4f00ac7003)
2020-07-03 15:34:30 +02:00
Michael Alexsander
f2fe197398 Make timeline cursor in the Bezier editor just as thick as the Animation editor
(cherry picked from commit 20c1196bb0)
2020-07-03 15:34:30 +02:00
Daniel Ting
35523a46c0 Make "Close and save changes?" actually save
This fixes issue #39844, where the confirmation dialog when a user
attempts to close an unsaved script did not actually save it even after
clicking "Save."

(cherry picked from commit d2a5b92e9b)
2020-07-03 13:17:57 +02:00
follower
9388237e2d Revert "Adds fuzzy search for help search dialog"
This reverts commit 481dbceed0.

Current fuzzy search implementation results in too many
non-useful results.

Could be re-added after result sort/filter/score functionality
is added. See #30072 for example existing implementation.

Fixes: #39128

Reverts: #32043

Fixed format style conflicts:
	editor/editor_help_search.cpp

(cherry picked from commit 55d706c352)
2020-07-03 13:17:57 +02:00
Stijn Hinlopen
cdb9b51ed1 Add Control to preferred types
(cherry picked from commit ec86d32684)

Fix crash by calculating wrong size of array.

(cherry picked from commit 81b6000812)
2020-07-03 13:17:57 +02:00
lordkettune
c68ef4d754 Fix issues with custom tracks on reimport
(cherry picked from commit 4313a7bdc8)
2020-07-03 13:17:57 +02:00
Stijn Hinlopen
4c54f39dbe Deleting multiple nodes displays correct message.
(cherry picked from commit 8b046ed477)
2020-07-03 13:17:57 +02:00
Haoyu Qiu
38509f1a89 Prevent dragging from SceneTree buttons
(cherry picked from commit 45d0799b5b)
2020-07-03 13:17:57 +02:00
PouleyKetchoupp
83e376e731 Format remote printerr properly in script debugger output
Fixes #33324
2020-07-02 17:43:37 +02:00
Maganty Rushyendra
6bd7fd0a00 Fix accidental duplication of Polygon2D start point
Ensures that closure of Polygon2D in the editor takes into account
Grid Snap if enabled. Does this by comparing the polygon start with
grid snap applied to mouse click location. Note: transformation is
applied in order to deal with different editor zoom levels.

(cherry picked from commit b8d55b244a)
2020-06-29 10:59:04 +02:00
Tomasz Chabora
7bd101b5c5 Generate inspector preview for Image resources
(cherry picked from commit eb6a367cb7)
2020-06-29 10:57:00 +02:00
Stijn Hinlopen
c029a03bc3 Remove directory search results
(cherry picked from commit c33707e9b4)
2020-06-29 10:56:32 +02:00
Rémi Verschelde
636b1e4518 CanvasItemEditor: Fix losing position for drag'n'dropped scenes
Fixes #26549.
Supersedes #36309.

(cherry picked from commit a403131a25)
2020-06-29 10:48:07 +02:00
Hugo Locurcio
8cc3d4bda6 Keep the bottom panel visible when enabling the distraction-free mode
- Document the `EditorInterface.distraction_free_mode` property.

This closes https://github.com/godotengine/godot-proposals/issues/951.

(cherry picked from commit e6352d1daa)
2020-06-29 10:46:05 +02:00
Andrii Doroshenko (Xrayez)
63523e56e1 Don't use arbitrary theme editor icons for scripts with the same name
The existing theme editor icon could be unintentionally set for any
global class with matching name (`Group` icon, `Group` class_name etc),
which would only show up in the "Create Dialog" context, but not the
scene tree dock.

This change prevents this behavior, and ensures that the icon can be
actually overidden by explicit icon path in `class_name`, if there's any
custom icon to begin with.

The correct built-in type's icon is fetched for child classes if there
are no custom icons detected throughout base classes as well, so it
isn't left empty for those cases.

(cherry picked from commit c177308f80)
2020-06-26 08:10:24 +02:00
Rémi Verschelde
76fa1724b3
Merge pull request #39395 from asmaloney/fix-macos-scrollwheel-zoom
[3.2][macOS] Control key + scroll wheel should zoom not pan
2020-06-25 11:22:24 +02:00
Rémi Verschelde
a84f081160 i18n: Sync translations with Weblate 2020-06-25 10:42:19 +02:00
Andrii Doroshenko (Xrayez)
6dee6477dd Optimize class icon loading
`get_global_class_name` for `GDScriptLanguage` is slow because
it forces to parse an entire script each time. This patch ensures
that the icon is actually fetched from the EditorData where they
are loaded beforehand.

This change also makes the behavior consistent with the existing
`get_object_icon` method in EditorNode.

(cherry picked from commit 4a86e2bb76)
2020-06-24 22:52:05 +02:00
Bill
d4a1bc475a Fix overlapping hotkey designations for save all scenes and save all scripts
(cherry picked from commit acdcda9033)
2020-06-24 22:52:05 +02:00
Yuri Roubinsky
5be4e10f4e Fix error label clicking in status bar for shader editor
(cherry picked from commit 25cb5a42e0)
2020-06-24 22:52:05 +02:00
Maganty Rushyendra
0f30fa8fbd Enable finer grained control when creating polygon with UV Editor
Modifies polygon auto-completion based on UV editor scale, in order
to enable finer grained control for the user. Enables selection of
points closer than the current threshold of 8 pixels.

(cherry picked from commit 69d0d89214)
2020-06-24 22:52:05 +02:00
Hugo Locurcio
0867fc2c4c Draw horizontal lines and labels in the editor performance monitors
This partially addresses
https://github.com/godotengine/godot-proposals/issues/1014.

(cherry picked from commit a593786d09)
2020-06-24 22:52:05 +02:00
Aaron Franke
44c3908c7b Avoid errors when the editor camera is inside the focused object
Prevent the gizmo distance from being zero by MAX-ing it with CMP_EPSILON

(cherry picked from commit ed2bbdbbef)
2020-06-22 12:04:52 +02:00
Rémi Verschelde
000db65d40 i18n: Sync translations with Weblate 2020-06-22 08:43:14 +02:00
Vorblen
4c638f98ab Fix "Fully Axis-Locked" Freelook Navigation Scheme
Co-authored-by: Aaron Franke <arnfranke@yahoo.com>
(cherry picked from commit 29e901c342)
2020-06-21 21:48:12 +02:00
Maganty Rushyendra
7e3d7417e3 Fix overwrite of manual changes in export_presets.cfg when export dialog is opened
Ensures that behavior when export_presets.cfg file is edited manually
while editor is running remains identical to before commit 44094b0.

(cherry picked from commit 4a7c19e719)
2020-06-21 21:41:39 +02:00
Hugo Locurcio
371f1e951e Replace the AssetLib tab icon with a less confusing design
This closes https://github.com/godotengine/godot-proposals/issues/818.

(cherry picked from commit ebabedc615)
2020-06-21 21:40:39 +02:00
Hugo Locurcio
c5d70fc6a6 Scroll horizontally when holding Shift with Scroll to Pan enabled
This closes https://github.com/godotengine/godot-proposals/issues/1077.

(cherry picked from commit 84e1c5e4c3)
2020-06-21 21:40:10 +02:00
Sl3dge78
6e835a4820 Autofilled path gets set properly on animation subresources
(cherry picked from commit d731f43794)
2020-06-21 21:39:23 +02:00
Dominik 'dreamsComeTrue' Jasiński
af43748dd5 Prevent having spaces in signal's method in Connect Dialog
Fixes: #39647
(cherry picked from commit 79f46da1a3)
2020-06-21 21:38:17 +02:00
Sl3dge78
d99f6c4d5c Fix #20467. The "Anim imported" warning gets displayed properly when working on imported anims.
(cherry picked from commit 95cd74fc4b)
2020-06-21 21:36:12 +02:00
Tomasz Chabora
8f3eec930b Add unique icon to Polygon2D
(cherry picked from commit 225622e5e3)
2020-06-21 21:33:23 +02:00
Maganty Rushyendra
ae59e22cdd Fix editor texture preview for certain specific dimensions
Ensures no error is issued when attempting to preview a resource that
may be scaled down to <1 pixel when resizing to fit the thumbnail.

(cherry picked from commit c7a8dc7bb9)
2020-06-18 12:00:05 +02:00
Bojidar Marinov
1c801dd044 Fix a random crash in the TileSet editor
Occurred when selecting polygon collision mode, then drawing a single point, then selecting rectangle mode, and finally trying to select a rectangle.

(cherry picked from commit 7850d0316f)
2020-06-18 11:29:28 +02:00
Hugo Locurcio
d4dd80afe7 Restore previous mouse position when leaving the editor freelook mode
- Remove the crosshair as it no longer serves a purpose (the cursor will
  now appear where the user "expects" it to).

This closes https://github.com/godotengine/godot-proposals/issues/1076.

(cherry picked from commit 4a542e0007)
2020-06-18 11:29:28 +02:00
Rémi Verschelde
bf913d6917 DocData: Skip language-specific ClassDoc without methods/constants
Removes the useless `@C#`, `@NativeScript` and `@VisualScript` entries.

(cherry picked from commit ba0db95909)
2020-06-18 11:29:28 +02:00
Stijn Hinlopen
dc7f555783 Search result highlights follow font size
(cherry picked from commit a86521d0bd)
2020-06-18 11:29:28 +02:00
Maganty Rushyendra
3b52ea4b43 Fix code editor Replace tool to work with 'Selection Only' option
Ensures that when the `Selection Only` option is selected, the Replace
tool replaces occurrences of the search phrase only within the selected
region, and in order of occurrence.

(cherry picked from commit 2be3a33cc3)
2020-06-18 11:29:28 +02:00
Hugo Locurcio
5200ff03d2 Display freelook speed and zoom in units in the 3D editor viewport
Now that the 3D editor grid is infinite and adjusts its step automatically,
this helps people get a better sense of scale when moving around in the
3D viewport.

This also fixes the indicator bar drawing on hiDPI displays.

(cherry picked from commit eaae50fe4a)
2020-06-18 11:29:28 +02:00
Tomasz Chabora
d46ab53b41 Allow duplicating files when holding Control
(cherry picked from commit b426d11d86)
2020-06-18 11:29:27 +02:00
Tomasz Chabora
202ca3ce7f Link exposed set/getters in property descriptions
(cherry picked from commit ea07acb877)
2020-06-18 10:51:45 +02:00
Andy Maloney
f4640af9c1 [3.2][macOS] Control key + scroll wheel should zoom not pan
Fixes godotengine/godot#32520
2020-06-15 10:23:11 -04:00
Rémi Verschelde
35a5ebb44d i18n: Sync translations with Weblate
Remove 'de_CH' translation (4% complete) to default to the 100%
complete 'de' one.

Fixes #32625.
2020-06-15 14:34:35 +02:00
Maganty Rushyendra
ffb423bc76 Fix match count for whole word search in editor
Check if a match borders a new line char when incrementing match counts.

(cherry picked from commit 91bdc77d47)
2020-06-15 14:34:35 +02:00
Tomasz Chabora
157c89aa2d Delete bus effect with Delete key
(cherry picked from commit 05656f2b29)
2020-06-15 14:34:35 +02:00
Maganty Rushyendra
be0eba0f75 Fix whole word search slowdown in editor
Reduce repeated iteration through the full text
when counting the number of occurrences of whole
words while searching a file in the editor.

(cherry picked from commit 2433287871)
2020-06-15 14:34:35 +02:00
Tomasz Chabora
355868a5db Fix custom types in node list search
(cherry picked from commit 22f0de8a83)
2020-06-15 14:34:34 +02:00
Rémi Verschelde
ba47cdf815
Merge pull request #39501 from hilfazer/favourite-project-button
Fixed 'Favourite' button in Project Manager
2020-06-15 09:28:43 +02:00
hilfazer
14fcd20e86 Fixed "Favourite Project" button in Project Manager 2020-06-13 11:38:29 +02:00
Rémi Verschelde
6c9b7c27d5
Merge pull request #39428 from fire/gltf-lights
[3.2] Add GLTF light import
2020-06-11 22:40:47 +02:00
Rémi Verschelde
d68e631566 i18n: Sync translations with Weblate 2020-06-11 10:00:07 +02:00
Maganty Rushyendra
0efa59bfdc Account for file deletion and renaming in Export Presets
Ensure that presets are updated with the latest files when
starting up or opening the Project Export dialog. Fixes the
error where Godot would attempt to export deleted files that
were previously selected.

(cherry picked from commit 44094b082d)
2020-06-11 10:00:06 +02:00
SaviHex
fda49b74a1 Added a "title" attribute for the link tag in the docs xml
(cherry picked from commit 18c08f65d6)
2020-06-11 09:44:14 +02:00
Aaron Franke
e3cf64a7d8
[3.2] Add GLTF light import
Co-authored-by: K.S. Ernest (iFire) Lee <ernest.lee@chibifire.com>
2020-06-10 23:51:34 -04:00
Rémi Verschelde
7bf9787921 SCons: Format buildsystem files with psf/black
Configured for a max line length of 120 characters.

psf/black is very opinionated and purposely doesn't leave much room for
configuration. The output is mostly OK so that should be fine for us,
but some things worth noting:

- Manually wrapped strings will be reflowed, so by using a line length
  of 120 for the sake of preserving readability for our long command
  calls, it also means that some manually wrapped strings are back on
  the same line and should be manually merged again.

- Code generators using string concatenation extensively look awful,
  since black puts each operand on a single line. We need to refactor
  these generators to use more pythonic string formatting, for which
  many options are available (`%`, `format` or f-strings).

- CI checks and a pre-commit hook will be added to ensure that future
  buildsystem changes are well-formatted.

(cherry picked from commit cd4e46ee65)
2020-06-10 15:30:52 +02:00
Michael Alexsander
5495bbdd47 Fix scene tree showing up when the root selection is present
(cherry picked from commit f30e4dbf54)
2020-06-10 15:30:52 +02:00
Phischermen
12786bcbdb Fix crash when creating new text file with no name
(cherry picked from commit cdb29447b4)
2020-06-10 15:30:52 +02:00
Hugo Locurcio
317c9b5fe9 Tweak the invalid preset error message to mention export_presets.cfg
(cherry picked from commit a7b2f3d41a)
2020-06-10 15:30:52 +02:00
Rémi Verschelde
f3fcdfbdd0 PackedScene: Prevent crash when root node has parent attribute
The crash happens further down when setting an invalid owner in
`Node::_set_owner_nocheck` but I couldn't figure out how to fix it.

But here the proper fix is to catch the invalid scene file early on
and fail loading it.

Part of #17372.

(cherry picked from commit c080ec5da2)
2020-06-10 15:30:52 +02:00
Aaron Franke
0b6a410890 Change the default editor camera rotation to position it in +X +Y +Z
(cherry picked from commit 6c2df6792b)
2020-06-10 15:30:52 +02:00
Hugo Locurcio
eb6c7ec09c Add an editor tooltip to document gizmo visibility options
See discussion in
https://github.com/godotengine/godot-proposals/issues/716.

(cherry picked from commit 138a4eecb3)
2020-06-10 15:30:52 +02:00
PouleyKetchoupp
c63c902c74 Fix dialog spam when inspecting MeshInstance from model file
Avoid load_scene for built-in resources to make sure we don't
open a scene tab and prompt for model file editing.

Load scene as regular resource instead and store the reference to keep
the dependency until the remote inspector cache is cleared.

(cherry picked from commit 01802074a0)
2020-06-10 15:30:51 +02:00
Hugo Locurcio
6e8b5aff66 Add visual feedback when hovering layer checkboxes in the Inspector
This also changes how checkboxes are selected, which makes it possible
to click in the small area between two checkboxes and
still toggle a value successfully (which is arguably less frustrating).

(cherry picked from commit bbc435624f)
2020-06-10 15:30:51 +02:00
Rémi Verschelde
e891fae52b
Merge pull request #39134 from abustin/fbx_mesh_compression_fix
Respect 'mesh compression' editor import option in Assimp and glTF importers
2020-06-08 13:16:39 +02:00
Marcus Brummer
f8463df11a Re-apply basis of newly added node (via drag-n-drop) in editor viewport 2020-06-07 19:34:17 +02:00
Tomasz Chabora
24872bffce Make sure built-in script warning fits in dialog 2020-06-05 14:40:08 +02:00
Marcus Brummer
6ef0de3f23 Enable text selection in execute output of EditorNode
(cherry picked from commit 85175c67b8)
2020-06-05 12:46:16 +02:00
johan
48a4f7e3a7 2D Editor: modified zoom increment to the twelveth root of two
- properly visit power of 2 factors (50%, 100%, 200%...)
- index based zoom values to prevent floating point issues
- Fix 2d editor not able to reach min and max zoom values

(cherry picked from commit fea6ca20c9)
2020-06-05 12:44:45 +02:00
Michael Alexsander
2ba67d94e8 Add fallback icons and make custom ones appear in the recent/favorites list in the "Create New" dialog
(cherry picked from commit 84d7492b2d)
2020-06-04 12:16:40 +02:00
Hugo Locurcio
b0fe8cab14 Tweak the import compression property hint for clarity
(cherry picked from commit 1439447071)
2020-06-04 12:16:39 +02:00
Pedro J. Estébanez
b2a64b144f Fix excessive bottom cropping in atlas generation
(cherry picked from commit fb7ae73045)
2020-06-04 12:16:39 +02:00
Aaron Franke
7021991cd9 Change OK text in snap dialog to OK
(cherry picked from commit 8f85858224)
2020-06-04 12:16:39 +02:00
Eric M
f911ebc328 Improved warning shown when autoload cannot be added.
(cherry picked from commit 58caa2c453)
2020-06-04 12:16:39 +02:00
Hugo Locurcio
9e01a0cd28 Add a getter and property for the editor distraction-free mode
(cherry picked from commit cc1859efed)
2020-06-04 12:16:39 +02:00
Andrii Doroshenko (Xrayez)
3649c61e46 Prevent crash attaching a script with no languages registered
(cherry picked from commit 52f3cfca6f)
2020-06-04 12:09:40 +02:00
Hugo Locurcio
6ea9ca14f0 Allow mouse zooming without hovering the texture in the TileSet editor
This partially addresses
https://github.com/godotengine/godot-proposals/issues/968.

(cherry picked from commit d10a5b2928)
2020-06-04 12:09:40 +02:00
Hugo Locurcio
6bbfed6400 Implement zooming using Ctrl + Mouse wheel in the TileMap editor
This was previously implemented in the GridMap editor. This makes
the same feature available in the TileMap editor.

(cherry picked from commit def2059d67)
2020-06-04 12:09:40 +02:00
Dominik 'dreamsComeTrue' Jasiński
fdf64b1898 Preserving "Sync Scene Changes' and "Sync Script Changes" with Project Settings
Fixes: #38739
(cherry picked from commit 72501ae104)
2020-06-04 12:09:40 +02:00
Dominik 'dreamsComeTrue' Jasiński
982ab51f2f Grabbing focus on ProjectList after clicking an item.
Fixes: #39012
(cherry picked from commit 1ec8f59397)
2020-06-04 12:09:40 +02:00
Rémi Verschelde
fa0cf25e19 Add shortcut for Pan Mode (G)
And change TileMap Bucket Fill shortcut to (B).

Fixes #8582.

(cherry picked from commit 28b33718b0)
2020-06-04 12:09:39 +02:00
Hugo Locurcio
e226947e21 Improve the text appearance in the script editor warnings panel
- Make the Ignore button's position identical across all warnings
  by moving it to the left.
- Change the Ignore button's text and color to make it more obvious
  that it can be clicked.
- Use the editor font instead of the default project font to match
  the rest of the editor.

(cherry picked from commit 0c0ee427d2)
2020-06-04 12:09:38 +02:00
Alex Bustin
8a024ca294 Respect 'mesh compression' editor import option in Assimp (ie. FBX) and glTF importers 2020-05-28 15:28:47 -07:00
Rémi Verschelde
7c332d9386
Merge pull request #39040 from Xrayez/modules-search-path-3.2
[3.2] Add `custom_modules` build option to compile external user modules
2020-05-25 17:02:27 +02:00
Tomasz Chabora
800dceee52 Reverse mouse wheel in animation track editor
(cherry picked from commit f4c6bb568e)
2020-05-25 16:38:02 +02:00