Commit Graph

7257 Commits

Author SHA1 Message Date
Haoyu Qiu
1136a9b58a Add missing CheckBox & CheckButton editor icons
Co-authored-by: Silc 'Tokage' Renew <tokage.it.lab@gmail.com>
Co-authored-by: Yuri Sizov <yuris@humnom.net>
2022-04-04 12:15:46 +08:00
Ricardo Buring
21580f94ad NavigationObstacle2D: estimate agent radius only when configured to do so 2022-04-03 22:11:44 +02:00
Pawel Lampe
fad77ecc39 Fix debug navmesh errors, fixes #59845 2022-04-03 21:47:20 +02:00
Pedro J. Estébanez
9e2d5120c1 Fix crash when passing null to AudioStreamPlayer::set_stream() 2022-04-03 12:52:17 +02:00
ConteZero
57b616fb21 Fix Right-Click clearing selection 2022-04-03 10:18:12 +02:00
Pawel Lampe
3035b9c44c Fix navmesh baking, fixes #57148
- improved mesh data calculation from standalone static colliders so that no
  VisualServer calls are performed - and thus no VS mutexes need to
  be locked in case of on-thread baking
- improved the same for GridMap's static colliders
2022-04-02 23:20:41 +02:00
Haoyu Qiu
f9da6f6978 Extract theme property names for localization 2022-04-01 11:35:02 +08:00
Rémi Verschelde
5c0dccace9
Merge pull request #59413 from ellenhp/preinstance-audio-streams 2022-03-31 18:49:05 +02:00
Ellen Poe
027546ee8a [3.x] instance audio streams before AudioServer::lock call 2022-03-31 08:48:36 -07:00
Haoyu Qiu
b89befe173 Fix crash when using Camera2D::set_custom_viewport() 2022-03-31 16:42:14 +08:00
FireForge
7f787857ef Fix inspector group name capitalization
(cherry picked from commit 88b09694e7)
2022-03-29 00:20:23 +02:00
Rémi Verschelde
c4897c4b8d Improve range property hints for various collision shapes
Fixes #36419.

Co-authored-by: Andrii Doroshenko (Xrayez) <xrayez@gmail.com>
(cherry picked from commit 0d772c6e6e)
2022-03-28 23:57:43 +02:00
Rémi Verschelde
113102aa51 ResourceImporterWAV: Allow configuring loop mode on import
The new `edit/loop_mode` import options lets user choose to either:
- Detect loop points from the WAV (default, same behavior as before)
- Set the loop mode and loop points manually like in AudioStreamSample

Fixes #46164.

(cherry picked from commit b389ce5ccd)
2022-03-28 23:46:29 +02:00
Fredy Huya-Kouadio
cb0b2aefc3 Android port of the Godot Editor
These set of changes focus primarily on getting the core logic and overall Godot Editor UI and functionality up and running natively on Android devices.
UI tweaks / cleanup / polish, as well configuration for Android specific functionality / restrictions will be addressed in follow-up PRs iteratively based on feedback.

Co-authored-by: thebestnom <shoval.arad@gmail.com>
2022-03-28 07:54:10 -07:00
bruvzg
fd2fba7c2c
Add binary MO translation file support. Add brotli decoder and WOFF2 support.
Use smaller .mo files instead of .po, if gettext is available.
Convert editor fonts to .woff2 format.
2022-03-25 19:51:39 +02:00
fabriceci
65b3200a16 Fix wrong collision reported on move_and_collide 2022-03-23 11:39:54 +01:00
Haoyu Qiu
e822145be2 Fix inversed ADD_GROUP parameters in AnimationNodeOneShot
(cherry picked from commit 6a3bf65657)
2022-03-22 08:56:57 +01:00
Jason Knight
09e4672f0d Bind NOTIFICATION_LOCAL_TRANFORM_CHANGED 2022-03-20 11:34:29 -06:00
Rémi Verschelde
6a524b2cc0
Merge pull request #57661 from lawnjelly/bind_mesh_merging 2022-03-17 19:54:31 +01:00
Haoyu Qiu
d537a88299 Add item tooltip access to OptionButton
(cherry picked from commit a635ecf6d4)
2022-03-17 14:45:19 +01:00
taigi100
b33eed23ae Fix children visibility check
(cherry picked from commit 280956ddc3)
2022-03-17 14:45:19 +01:00
Haoyu Qiu
72837b8ecd Fix RichTextLabel underlining does not respect visible character 2022-03-16 17:54:07 +08:00
Haoyu Qiu
c0bd05762e Revert "Fixed underlines and striketrough not respecting visible character"
This reverts commit 8bbcc624fd.
2022-03-16 17:40:14 +08:00
Haoyu Qiu
fd968157a4 Revert "Fixed 0 width issue of rich text label"
This reverts commit a1155b86e4.
2022-03-16 17:40:09 +08:00
Rémi Verschelde
7a4f9dfb15
Merge pull request #59145 from Sauermann/fix-3x-internal-gui-state 2022-03-14 23:18:26 +01:00
Rémi Verschelde
ee818e1631
Merge pull request #54026 from ConteZero/primary_clipboard_linux_3.x 2022-03-14 18:52:20 +01:00
Markus Sauermann
62fa80afd7 Cleanup internal GUI state, if event is accepted in _input. 2022-03-14 18:36:31 +01:00
ConteZero
2ff0735329 Added primary clipboard for Linux 2022-03-14 15:28:36 +01:00
Rémi Verschelde
fdaf0de3f0
Merge pull request #59100 from RandomShaper/mouse_drop_on_disable_3.x 2022-03-14 11:25:12 +01:00
Pedro J. Estébanez
3d7821bf1f Drop mouse focus and over when gui input is globally disabled
Since some porjects may be relying on the former behavior, this is opt-in via a new project setting, disabled by default, but enabled for new projects, since it's the new standard behavior (and the only one in 4.0).
2022-03-14 11:06:26 +01:00
ConteZero
0ffacff998 [3.x] Add option to make selection unique 2022-03-14 09:48:09 +01:00
Rémi Verschelde
08c3e00b95
Merge pull request #55355 from ConteZero/drag_and_drop_3.x 2022-03-14 08:43:22 +01:00
ConteZero
4167e98088 Add drag and drop to TextEdit, LineEdit, RichTextLabel 2022-03-14 08:15:25 +01:00
Hugo Locurcio
caf2c20655 Don't store and show current file/directory/path FileDialog properties
These properties are only useful at run-time, so they don't need
to be displayed in the editor and stored.

(cherry picked from commit 2ad6e11b78)
2022-03-13 15:46:01 +01:00
Rémi Verschelde
fa08c0c858
Merge pull request #59054 from timothyqiu/rtl-shadow-color-3.x 2022-03-13 15:28:55 +01:00
Pedro J. Estébanez
0b650b3e41 Clear owners when pruning even out of the tree 2022-03-12 12:48:15 +01:00
Haoyu Qiu
7d219b6793 Fix RichTextLabel shadow color when text has transparency 2022-03-12 11:02:27 +08:00
miremrie
8a6b066ab7 Allow absolute file paths in file dialogs
(cherry picked from commit a5e30c0228)
2022-03-10 17:18:41 +01:00
Haoyu Qiu
db9d426798 Remove extra separator when TextEdit is read only and unselectable
(cherry picked from commit 933211cb0c)
2022-03-10 16:19:30 +01:00
Wilson E. Alvarez
c37be0f31b
Expose TextEdit get_visible_rows() and get_total_visible_rows() to GDScript 2022-03-08 22:32:22 -05:00
Rémi Verschelde
85b4848ca8
Merge pull request #54188 from Rubonnek/increase_var_arg_max_3x 2022-03-08 13:10:48 +01:00
Haoyu Qiu
b76147ec16 Fix top level CanvasItem visibility
The editor gizmo fix from previously reverted
642591b6a9 is kept here.
2022-03-08 01:29:24 +08:00
Haoyu Qiu
d0901d4d55 Revert backport of "Rework CanvasItem visibility propagation"
This reverts part of commit f49ffe4bb0
2022-03-08 01:17:52 +08:00
Haoyu Qiu
ba0a17a458 Revert "Fix CanvasItem visibility propagation"
This reverts commit 642591b6a9.
2022-03-08 01:06:14 +08:00
Wilson E. Alvarez
424dbf70af
Increase VARIANT_ARG_MAX to 8 2022-03-07 10:03:49 -05:00
Rémi Verschelde
eb3f0f50b9
Merge pull request #58651 from TokageItLab/fix-cubic-interpolate-3.x 2022-03-04 12:26:46 +01:00
Haoyu Qiu
7e07d4781a Fix AnimatedSprite infinite loop
(cherry picked from commit 3a439a9c03)
2022-03-02 11:00:26 +01:00
janglee
a1155b86e4 Fixed 0 width issue of rich text label
Fixes #37746

(cherry picked from commit 5e64c146bc)
2022-03-02 11:00:26 +01:00
janglee
8bbcc624fd Fixed underlines and striketrough not respecting visible character
(cherry picked from commit 9c2c2ab2b0)
2022-03-02 11:00:26 +01:00
Rémi Verschelde
195b7374b2
Merge pull request #58650 from lawnjelly/portals_fix_prefix_duplication
Portals - fix duplication of instanced scenes during conversion
2022-03-01 19:56:20 +01:00
Silc 'Tokage' Renew
7b9a912ff6 fix cubic interpolate when looping 3.x
Co-authored-by: robfram <robfram@gmail.com>
2022-03-01 19:15:25 +09:00
Rémi Verschelde
29d78f20de
Merge pull request #58642 from rburing/joints_fix_signals_3.x 2022-03-01 11:01:35 +01:00
lawnjelly
4ec4b5a60d Portals - fix duplication of instanced scenes during conversion
During room conversion, if a prefixed Spatial is converted to a Room / RoomGroup etc, when using instanced scenes the owner was incorrectly set, resulting in the instanced scene objects being duplicated.

This PR corrects this.
2022-03-01 09:44:40 +00:00
Ricardo Buring
322e3a9567 Joint2D and Joint: make set_exclude_nodes_from_collision respect signals 2022-02-28 22:51:40 +01:00
Ricardo Buring
f197e5eebb Joint2D and Joint: update joint on NOTIFICATION_POST_ENTER_TREE
This allows reparenting, etc.
2022-02-28 22:48:48 +01:00
Rémi Verschelde
706d282cd5
Merge pull request #58381 from lawnjelly/fti_fix_double_ticks
Fix get_global_transform_interpolated() with multiple ticks per frame
2022-02-28 21:13:48 +01:00
lawnjelly
688dc534e5 Fix get_global_transform_interpolated() with multiple ticks per frame
The previous and current transforms in the interpolation data were not being correctly updated in cases where two or more physics ticks occurred on a frame. This PR introduces a simple mechanism to ensure updates on interpolated spatials.
2022-02-25 11:22:00 +00:00
jfons
0959ff2fe4 Add sanity checks to lightmap unwrap texel size
(cherry picked from commit d0fd5fd3c7)
2022-02-24 13:31:17 +01:00
lawnjelly
cb108fb4f8 Portals - improve STATIC bounds on conversion
Introduces fallback path for geometry types that are not recognised.
Allows STATIC mode for CPUParticles (using expansion margin)
Allows STATIC mode for Particles (using "visibility_aabb")
2022-02-22 10:00:17 +00:00
Rémi Verschelde
4e44a15176
Merge pull request #58386 from KoBeWi/fix3bility 2022-02-21 12:33:28 +01:00
Rémi Verschelde
c221539207
Merge pull request #58387 from lawnjelly/fti_jitter_fix 2022-02-21 12:18:26 +01:00
lawnjelly
b90f1a3ec0 Disable jitter fix when physics interpolation is enabled. 2022-02-21 10:32:42 +00:00
Markus Sauermann
156d9d1643 simplify calculation of max in grayscale
(cherry picked from commit 79a75cd683)
2022-02-21 11:12:54 +01:00
kobewi
642591b6a9 Fix CanvasItem visibility propagation 2022-02-21 11:11:03 +01:00
Haoyu Qiu
85be83ebbb Fix typo in CanvasItem visibility propagation backport 2022-02-18 19:12:29 +08:00
Yuri Sizov
df13466139 Add type variations to Theme 2022-02-17 15:24:10 +03:00
Hugo Locurcio
ac0d37dcef
Add a property hint for the Line2D Round Precision property
This prevents choosing extremely high values which cause performance
issues for no visual benefit.

(cherry picked from commit 6b52aa67b8)
2022-02-17 09:59:28 +01:00
Wagner Scholl Lemos
2ed43f940b
Added show and hide methods and updated doc API.
(cherry picked from commit 160ee4ef8e)
2022-02-17 09:52:47 +01:00
Rémi Verschelde
2dd545b512
Merge pull request #58141 from lawnjelly/occluder_shared_resources 2022-02-16 13:29:55 +01:00
lawnjelly
3c2df49832 Fix Occluder to properly share resources
In order to properly support the resource sharing paradigm, Occluders are split into Instances and Resources in the VisualServer. Instances are owned by a Scenario, and Resources are global. OccluderShape resources can now correctly be shared by multiple OccluderInstances.
2022-02-16 09:55:11 +00:00
lawnjelly
522bce1159 Fixed Timestep Interpolation (3D)
Adds fixed timestep interpolation to the visual server.
Switchable on and off with project setting.

This version does not add new API for set_transform etc, when nodes have the interpolated flag set they will always use interpolation.
2022-02-16 09:41:23 +00:00
Rémi Verschelde
9343c66815
Merge pull request #58102 from JFonS/big_lightmap 2022-02-15 17:47:20 +01:00
JFonS
690f9716fa Add support for saving multiple Images in BakedLightmap
Instead of fitting all atlas slices into a single image, which meant there
was a hard limit on the size, BakedLightmap will now save as many images
as needed to fit all the slices generated by the lightmapper.
2022-02-15 16:13:00 +01:00
Hugo Locurcio
08128351a5
Clamp environment light sky contribution to the [0.0; 1.0] range
The value is already clamped in the editor, but it wasn't being
clamped when the value was set via code. Values outside the [0.0; 1.0]
range can result in broken rendering.
2022-02-14 17:15:06 +01:00
Hugo Locurcio
53b96095eb
Improve completion scroll bar visibility in the script editor (3.x)
This makes the scroll bar bar thicker and more opaque (roughly
matching the editor theme's scroll bar by default).
2022-02-14 14:54:35 +01:00
Rémi Verschelde
7a16bb2ee4
Fix typos with codespell
Using codespell 2.2-dev from current git.

Added `misc/scripts/codespell.sh` to make it easier to run it once in a
while and update the skip and ignore lists.

(cherry picked from commit 1bdb82c64e)
2022-02-11 09:50:59 +01:00
reduz
e4e3f7d157
Add a signal to notify when children nodes enter or exit tree
-Allows more fine grained notifications (hence better performance) than using the global scene tree signals (node added and removed).
-Required for #55950

(cherry picked from commit fbd9599b04)
2022-02-11 09:50:58 +01:00
Haoyu Qiu
8231303dec Backport FlowContainer 2022-02-11 14:48:40 +08:00
Haoyu Qiu
f49ffe4bb0 Backport CanvasLayer visibility 2022-02-11 01:00:35 +08:00
Rémi Verschelde
0c7c640112
Merge pull request #57643 from YeldhamDev/smarter_pm_focus_port 2022-02-10 16:52:08 +01:00
Nathan Franke
c27b05febb
use exact match when checking focus next / previous 2022-02-09 10:18:58 -06:00
lawnjelly
f0af29346b ProjectSettings add dirty flag and project_settings_changed signal
Most frames there will be no change in project settings, and it makes no sense to read settings every frame in case of changes, as a large number of string compares are involved.

This PR adds a signal to ProjectSettings that can be subscribed to in order to keep local settings up to date with ProjectSettings.

In addition a function `ProjectSettings::has_changes()` is provided for objects outside the signal system (e.g. Rasterizers).
2022-02-09 11:20:25 +00:00
Haoyu Qiu
a3f6033513 Improve TreeItem button API 2022-02-08 23:56:19 +08:00
Haoyu Qiu
74a4795fb1 Fix RayCast{,2D}.clear_exceptions clears parent 2022-02-08 16:22:10 +08:00
Raul Santos
1d3de163dc Add alignment options to icons on buttons.
They can now be centered and right-aligned.

Co-authored-by: jitspoe <jitspoe@yahoo.com>
2022-02-07 21:29:37 +01:00
lawnjelly
cf1b3fdd55 Bind mesh merging functionality in MeshInstance
The portal system introduced basic mesh merging functionality, this has wide ranging uses outside of the portal system.
For this reason, this PR binds the mesh merging functionality.
It also slightly modifies the calling from RoomManager to use a Vector of Node *, in order to allow binding of the function.
2022-02-05 13:18:17 +00:00
Rémi Verschelde
689f59dca0
Merge pull request #53463 from lawnjelly/vital_redraws
Add editor vital redraws only option
2022-02-04 21:42:49 +01:00
Michael Alexsander
f63bea9ef2 Make popup menus focus items automatically when not using the mouse 2022-02-04 17:20:26 -03:00
lawnjelly
10eb9564ca Portals - Improve mesh merging
Some improvements to robustness to account for more properties.
Addition of an "allow merging" flag in the cull instance.
2022-02-04 08:40:46 +00:00
Rémi Verschelde
80306cc88a
EditorProperty: Fix range hint parsing with optional step
This could lead to have a step of 0 when parsing e.g. "1,10,is_greater".
2022-02-03 12:33:37 +01:00
Pawel Lampe
6c6e50bf0c Fix navigation merge errors, fixes #56786
- improved `detail/sample_max_error` default value
- improved floating point precision handling in cell key calculations
- improved `merge error` error message
- exposed `cell_height` of `nav_map` to the `Navigation`
- fixed cell key `y` calculation
2022-02-02 23:52:29 +01:00
Rémi Verschelde
78f230885b
Merge pull request #57475 from snailrhymer/look-at-update 2022-02-02 23:07:20 +01:00
Rémi Verschelde
821a1a1882
Merge pull request #57546 from lawnjelly/portals_fix_dynamic_particles 2022-02-02 14:57:21 +01:00
lawnjelly
d86061d7ae Portals - fix DYNAMIC particle systems
A regression had occurred whereby particle systems in DYNAMIC mode weren't added to the room correctly.
This PR recognise the case and bypasses the function to retrieve geometry, as retrieving the geometry is not necessary for DYNAMIC objects as they should not affect the room bound. Their AABB will be retrieved during gameplay rather than once off at level conversion.
2022-02-02 12:54:35 +00:00
kobewi
621cf7d8d5 Update the minimum size of ViewportContainer 2022-02-02 13:21:03 +01:00
lawnjelly
a0c6d16c90 Add editor vital redraws only option
When editor continuous redraws is switched off, the editor only redraws when a redraw_request was issued by an element in the scene. This works well in most situations, but when scenes have dynamic content they will continuously issue redraw_requests.

This can be fine on high power desktops but can be an annoyance on lower power machines.

This PR splits redraw requests into high and low priority requests, defaulting to high priority. Requests due to e.g. shaders using TIME are assigned low priority.

An extra editor setting is used to record the user preference and an extra option is added to the editor spinner menu, to allow the user to select between 3 modes:

* Continuous
* Update all changes
* Update vital changes
2022-02-02 11:26:45 +00:00
Rémi Verschelde
b6dbff7621
Merge pull request #57361 from lawnjelly/occ_poly_only 2022-02-01 14:04:24 +01:00
lawnjelly
8ea20f5fdd Add OccluderShapePolygon
Add OccluderShapePolygon, glue to Occluder and gizmos etc.
2022-02-01 11:31:06 +00:00
kleonc
32d83053c4
TextureButton Fix logic for drawing only the focus texture
(cherry picked from commit 078b8c25ce)
2022-01-31 22:54:25 +01:00
Rémi Verschelde
b5eef640e1
Merge pull request #57390 from Pineapple/scene-tree-get-window-size 2022-01-31 18:23:36 +01:00