Commit Graph

10770 Commits

Author SHA1 Message Date
Micky e31bb5ffeb Rename `CanvasItem.update()` to `queue_redraw()`
Affects a lot of classes. Very thoroughly checked signal connections and deferred calls to this method, add_do_method/add_undo_method calls, and so on.

Also renames the internal `_update_callback()` to `_redraw_callback()` for consistency.

Just a few comments have also been changed to say "redraw".

In CPUParticles2D, there was a private variable with the same name. It has been renamed to `do_redraw`.
2022-08-29 14:59:47 +02:00
kobewi ef19e7bae0 Fix Import dock being too wide 2022-08-29 14:28:01 +02:00
Rémi Verschelde e60086f98b
Merge pull request #64119 from YuriSizov/theme-init-database 2022-08-29 14:02:21 +02:00
Rémi Verschelde 322c812231
Merge pull request #65023 from Faless/js/4.x_is_web 2022-08-29 13:00:32 +02:00
Rémi Verschelde 583c0c4897
Merge pull request #64980 from TokageItLab/fix-animedit-draw-and-find-key 2022-08-29 12:29:24 +02:00
Fabio Alessandrelli d20b32186f [Web] Rename JavaScript platform to Web.
Also rename export name from "HTML5" to "Web".
2022-08-29 11:52:00 +02:00
Rémi Verschelde fd6453c45e Revert "Remove NOTIFICATION_ENTER_TREE when paired with NOTIFICATION_THEME_CHANGED"
This reverts commit 4b817a565c.

Fixes #64988.
Fixes #64997.

This caused several regressions (#64988, #64997,
https://github.com/godotengine/godot/issues/64997#issuecomment-1229970605)
which point at a flaw in the current logic:

- `Control::NOTIFICATION_ENTER_TREE` triggers a *deferred* notification with
  `NOTIFCATION_THEME_CHANGED` as introduced in #62845.
- Some classes use their `THEME_CHANGED` to cache theme items in
  member variables (e.g. `style_normal`, etc.), and use those member
  variables in `ENTER_TREE`, `READY`, `DRAW`, etc. Since the `THEME_CHANGE`
  notification is now deferred, they end up accessing invalid state and this
  can lead to not applying theme properly (e.g. for EditorHelp) or crashing
  (e.g. for EditorLog or CodeEdit).

So we need to go back to the drawing board and see if `THEME_CHANGED` can be
called earlier so that the previous logic still works?

Or can we refactor all engine code to make sure that:
- `ENTER_TREE` and similar do not depend on theme properties cached in member
  variables.
- Or `THEME_CHANGE` does trigger a general UI update to make sure that any
  bad theme handling in `ENTER_TREE` and co. gets fixed when `THEME_CHANGE`
  does arrive for the first time. But that means having a temporary invalid
  (and possibly still crashing) state, and doing some computations twice
  which might be heavy (e.g. `EditorHelp::_update_doc()`).
2022-08-29 11:11:29 +02:00
Rémi Verschelde 1782557339
Merge pull request #64386 from timothyqiu/anim-disable
Fix crash when loading Animation Library after reloading a scene
2022-08-29 07:50:00 +02:00
Silc Renew 77cf519cf0 Fixed AnimationTrackEditor redraw/deselect timing and find key compearation 2022-08-29 10:44:00 +09:00
Rémi Verschelde 9efa5a8fc9
Merge pull request #64555 from nongvantinh/inspector_resource_preview_incorrect_size
Fixed inspector resource preview shows up with incorrect size
2022-08-28 22:57:33 +02:00
Yuri Rubinsky cb62d31938
Merge pull request #64981 from Chaosus/vs_fix 2022-08-28 22:37:54 +03:00
Rémi Verschelde 006915b482
Merge pull request #64961 from faisal-alam09/Bugfix-#64836-Placeholder-scene-tab-not-removed-when-new-scene-created
Added a placeholder tab check before creating a new scene.
2022-08-28 18:06:44 +02:00
Rémi Verschelde f7f8af232c
Merge pull request #64885 from Mickeon/rename-tooltip-hint
Rename `hint_tooltip` to `tooltip_text` & setter getter
2022-08-28 17:43:01 +02:00
Rémi Verschelde dd9602e74c
Merge pull request #64847 from Mickeon/editor-docs-hierarchy-icons
Add type icons to editor docs' hierarchy
2022-08-28 17:09:34 +02:00
Yuri Rubinsky 5ccc6e2ec8 Fix category of new added visual shader functions 2022-08-28 12:40:54 +03:00
Yuri Rubinsky 1f9b992d85
Merge pull request #64248 from paddy-exe/built-in-shader-functions 2022-08-28 09:04:52 +03:00
Patrick Exner 55bbcc54e7 Implement custom non-trivial shader functions 2022-08-27 22:59:12 +02:00
Rémi Verschelde d3db8bbebd
Merge pull request #62846 from AaronRecord/remove_redundant_theme_updates_in_enter_tree
Remove `NOTIFICATION_ENTER_TREE` when paired with `NOTIFICATION_THEME_CHANGED`
2022-08-27 21:56:14 +02:00
faisal-alam09 ed54a7be3d Added a placeholder tab check before creating a new scene. 2022-08-28 01:11:48 +05:30
Aaron Record 4b817a565c Remove NOTIFICATION_ENTER_TREE when paired with NOTIFICATION_THEME_CHANGED 2022-08-27 11:52:29 -06:00
bruvzg da808d4fd3
Fix editor shortcuts overrides overwriting user configured shortcuts. 2022-08-27 20:25:13 +03:00
Rémi Verschelde 6ba932e43d
Merge pull request #64951 from TokageItLab/value-track-optimizer
Fix optimizer miscalculation and add optimization for `Animation::ValueTrack`
2022-08-27 18:47:20 +02:00
Silc Renew 787ab45394 Add optimization for Animation::ValueTrack 2022-08-27 22:59:33 +09:00
Rémi Verschelde f9998455ce
Merge pull request #63249 from V-Sekai/animation_tree_editor_read_only
Add read-only mode to AnimationTreeEditor plugins
2022-08-27 08:14:30 +02:00
Micky ef5b9a06a9 Rename `hint_tooltip` to `tooltip_text` & setget
`hint_tooltip` -> `tooltip_text`
`set_tooltip` -> `set_tooltip_text`
`_get_tooltip` -> `get_tooltip_text`

Updates documentation, too.
2022-08-27 01:35:01 +02:00
Silc Renew 931fb4dc11 Add linear/cubic angle interpolation to Animation interpolation type 2022-08-27 07:58:22 +09:00
Rémi Verschelde bd219de7fe
Merge pull request #64928 from YuriSizov/editor-tooltip-or-not-tooltip
Remove Inspector tooltip hack that never actually worked
2022-08-26 23:04:50 +02:00
Rémi Verschelde f9f2446972
Merge pull request #64367 from Mickeon/rename-var-to-str
Rename `str2var` to `str_to_var` and similar
2022-08-26 23:04:06 +02:00
Rémi Verschelde 4f60fd0480
Merge pull request #64777 from bruvzg/extend_to_title
[macOS] Extend editor contents to the window title bar for better space usage.
2022-08-26 23:03:31 +02:00
Rémi Verschelde 390333e822
Merge pull request #64207 from bruvzg/rcs
[macOS export] Simplify code signing options, add support for rcodesign tool for signing and notarization.
2022-08-26 19:16:27 +02:00
Yuri Sizov 6320a0fc18 Add ThemeDB, expose previously static Theme methods 2022-08-26 19:23:05 +03:00
Yuri Sizov 207bdc2b9f Remove Inspector tooltip hack that never actually worked 2022-08-26 17:22:13 +03:00
Micky 59e11934d8 Rename `str2var` to `str_to_var` and similar
Affects the Math class, a good chunk of the audio code, and a lot of other miscellaneous classes, too.

- `var2str` -> `var_to_str`
- `str2var` -> `str_to_var`
- `bytes2var` -> `bytes_to_var`
- `bytes2var_with_objects` -> `bytes_to_var_with_objects`
- `var2bytes` -> `var_to_bytes`
- `var2bytes_with_objects` -> `var_to_bytes_with_objects`
- `linear2db` -> `linear_to_db`
- `db2linear` -> `db_to_linear`
- `deg2rad` -> `deg_to_rad`
- `rad2deg` -> `rad_to_deg`

- `dict2inst` -> `dict_to_inst`
- `inst2dict` -> `inst_to_dict`
2022-08-26 14:58:22 +02:00
bruvzg bc4ba6cb78
[macOS] Extend editor contents to the window titlebar for better space usage. 2022-08-26 15:12:43 +03:00
bruvzg d91cb1d5d5
[macOS export] Simplify code signing options, add support for rcodesign tool for signing and notarization. 2022-08-26 14:23:31 +03:00
fabriceci f8cc88fab3 Restore RigidBody2/3D, SoftBody names in physics 2022-08-26 12:26:25 +02:00
Rémi Verschelde ac7b5111f5
Merge pull request #64768 from bruvzg/popups_hide_if_visible 2022-08-26 11:59:50 +02:00
Rémi Verschelde 7013c68619
Merge pull request #64422 from bruvzg/make_fonts_unbearably_ugly_2.0 2022-08-26 11:59:07 +02:00
Rémi Verschelde 7bb92bc040
Merge pull request #62845 from AaronRecord/dont_update_theme_outside_of_tree
Refactor and remove excessive calls of `NOTIFICATION_THEME_CHANGED`
2022-08-26 10:37:44 +02:00
Rémi Verschelde 9f48db16c2
Merge pull request #58665 from KoBeWi/run_current_forever
Improve scene playing and reloading
2022-08-26 10:36:05 +02:00
Rémi Verschelde dadebb95aa
Merge pull request #64601 from MinusKube/alternative-tile-popup-bug
Fix alternative tile popup menu not being openable
2022-08-26 10:35:43 +02:00
Rémi Verschelde d93d646723
Merge pull request #64570 from KoBeWi/node🧳ing
Unify node casing adjustment
2022-08-26 09:49:58 +02:00
Rémi Verschelde 5bf2b3926c
Merge pull request #64879 from TokageItLab/cubic-to-cubicintime
Replace `Cubic` to `CubicInTime` in the animation track interpolation type
2022-08-26 09:45:24 +02:00
Rémi Verschelde cd661d400e
Merge pull request #64566 from Mickeon/rename-particle-material
Rename ParticlesMaterial to ParticleProcessMaterial
2022-08-26 07:48:23 +02:00
kobewi d764278f37 Add drag and drop support to shader list 2022-08-26 03:19:01 +02:00
Micky 723bf85145 Rename ParticlesMaterial to ParticleProcessMaterial
Also affects their file names, related classes and documentation.
2022-08-26 02:53:08 +02:00
Rémi Verschelde 9876382df8
Merge pull request #64572 from KoBeWi/forsake_the_names
Clear built-in name field when creating new script
2022-08-26 00:06:05 +02:00
Rémi Verschelde f3c906757c
Merge pull request #64573 from KoBeWi/signal_name_plagiarism
Add "Copy Name" option to signal menu
2022-08-26 00:00:44 +02:00
Silc Renew d96cc7450a Make Cubic to CubicInTime and reduce items in the track intrp type 2022-08-26 06:49:09 +09:00
Rémi Verschelde 51fcc2927b
Merge pull request #64597 from MinusKube/tileset-disappear-bug 2022-08-25 22:58:34 +02:00
Aaron Record 74eb2a70bd Refactor and remove excessive calls of `NOTIFICATION_THEME_CHANGED` 2022-08-25 14:50:49 -06:00
kobewi 8328fb56f4 Improve scene playing and reloading 2022-08-25 21:54:25 +02:00
Rémi Verschelde 88145e81e2
Merge pull request #64804 from Mickeon/rename-path-progress 2022-08-25 18:35:48 +02:00
Rémi Verschelde ceaff612c8
Merge pull request #64824 from Mickeon/rename-polygon-invert 2022-08-25 18:33:58 +02:00
Rémi Verschelde 33bf609d79
Merge pull request #64820 from Chaosus/shader_fix_varyings 2022-08-25 18:02:38 +02:00
SaracenOne 75f1357ced Add read-only mode to AnimationTreeEditor plugins 2022-08-25 16:29:36 +01:00
Rémi Verschelde 0cf0e96038
Merge pull request #64776 from YuriSizov/import-images-moar-flags 2022-08-25 16:51:26 +02:00
MinusKube 2abccb018e Fix alternative tile popup menu not being openable 2022-08-25 16:20:56 +02:00
MinusKube d71b02cd19 Fix tileset image and background sometimes disappearing 2022-08-25 16:18:39 +02:00
Yuri Rubinsky d4a10e7e04 Allow using integer varyings with `flat` interpolation modifier 2022-08-25 13:21:02 +03:00
Micky 2b063eebee Add type icons to editor docs' hierarchy
The "Inherits" and "Inherited by" section of the docs now display the icon of each Object on the side.

Also scales the main class' icon to match title font
2022-08-25 11:45:05 +02:00
Yuri Rubinsky 1ab7ad323f Fix input map settings theming 2022-08-25 09:26:20 +03:00
Rémi Verschelde 0a828dbd92
Merge pull request #64270 from timothyqiu/close-keying
Fix overlapping keying and remove button in Inspector
2022-08-25 07:53:55 +02:00
Rémi Verschelde 1204ad32d1
Merge pull request #64829 from fabriceci/improve-monitor-contact-api
Improves the API for monitoring contacts in RigidDynamicBody
2022-08-25 07:31:06 +02:00
fabriceci 59bf35f3df Improves the API for monitoring contacts in RigidDynamicBody 2022-08-24 21:23:11 +02:00
Rémi Verschelde 2961651444
Merge pull request #64691 from TokageItLab/Quaternion-editor 2022-08-24 18:36:54 +02:00
Rémi Verschelde c8c0f21880
Merge pull request #64780 from YuriSizov/editor-color-conversion-map 2022-08-24 16:49:51 +02:00
Silc Renew 673c649adb Implement Quaternion Editor 2022-08-24 22:04:49 +09:00
Yuri Sizov c78cbb523f Extract editor color map and simplify SVG color conversion 2022-08-24 15:59:14 +03:00
Micky 06a8113576 Rename Polygon2D.`invert_enable` to end with "d"
Polygon2D.`invert_enable` -> `invert_enabled`

Also affects the setters and getters, which are now named in full instead of cutting "enabled" off.
Updates old leftover documentation slightly, as well.
2022-08-24 13:09:44 +02:00
Rémi Verschelde b1f392c25e Remove VisualScript module for 4.0
As announced in https://godotengine.org/article/godot-4-will-discontinue-visual-scripting,
Godot maintainers have agreed to discontinue the current implementation of
our VisualScript language.

The way it had been designed was not user-friendly enough and we did not
succeed in improving its usability to actually make it a good low-code
solution for users who need one.

So we prefer to remove it for Godot 4.0 and leave the door open for new,
innovative ideas around visual scripting, to be developed as plugins or
extensions now that Godot provides sufficient functionality for this
(notably via GDExtension and the godot-cpp C++ bindings).

The current module has been moved to a dedicated repository (with full Git
history extracted with `git filter-branch`):

https://github.com/godotengine/godot-visual-script

It can still be compiled as a C++ module (for now, but will likely require
work to be kept in sync with the engine repository), but our hope is that
contributors will port it to GDExtension (which is quite compatibile with
the existing C++ module code when using the godot-cpp C++ bindings).
2022-08-24 12:08:17 +02:00
Rémi Verschelde 792f7cc28c
Merge pull request #63282 from V-Sekai/disable_foreign_resource_edits
Disable editing properties in foreign resources
2022-08-24 08:54:05 +02:00
Rémi Verschelde 7055200bb0
Merge pull request #64730 from AlexHCC/fix-ruler-drawing-order
Fix ruler lines rendering on top of text
2022-08-24 08:53:16 +02:00
Rémi Verschelde b556d8c9a0
Merge pull request #64370 from Mickeon/rename-marker-node
Rename Position* nodes to Marker*
2022-08-24 08:52:13 +02:00
Rémi Verschelde 91e5f48ea7
Merge pull request #64009 from KoBeWi/arrayy_lmao
Replace Array return types with TypedArray (part 2)
2022-08-24 08:18:56 +02:00
Micky bb936b2e27 Rename PathFollow's `offset`s to `progress` & `progress_ratio`
Applies for both PathFollow2D and PathFollow3D
2022-08-24 01:56:03 +02:00
SaracenOne dd814a0dca Disable editing properties in foreign resources
from imported scenes or objects returning
true from a function named '_is_read_only' and
disable resaving imported resources.
2022-08-23 23:16:13 +01:00
kobewi 1abdffe7a0 Replace Array return types with TypedArray 2 2022-08-23 23:21:32 +02:00
AlexHCC db227f85e8 Fix ruler lines rendering on top of text 2022-08-24 00:00:56 +03:00
Rémi Verschelde 34aa6b06a7
Merge pull request #64721 from bruvzg/fix_prop_revet_ext 2022-08-23 21:37:52 +02:00
Rémi Verschelde fc0b6abe52
Merge pull request #64617 from Mickeon/editor-restore-mesh-drop 2022-08-23 20:49:30 +02:00
Micky 8bb305356e Rename Position* nodes to Marker*
- Position2D -> Marker2D
- Position3D -> Marker3D

Also changes their respective file names.
2022-08-23 19:49:50 +02:00
Rémi Verschelde 6277448f42
Merge pull request #64647 from TokageItLab/auto-tangent 2022-08-23 18:17:15 +02:00
Rémi Verschelde 1190fbdf2b
Merge pull request #64733 from Mickeon/try-editor-warning-spacing 2022-08-23 18:16:26 +02:00
Rémi Verschelde 5c5bc21195
Merge pull request #63854 from TokageItLab/auto-bone-mapping 2022-08-23 18:16:15 +02:00
Yuri Sizov ba0421f3d9
Merge pull request #64637 from Calinou/default-project-icon-use-svg
Create a SVG default project icon in new projects
2022-08-23 17:52:32 +03:00
Yuri Sizov 70ceba2910
Merge pull request #54278 from Calinou/editor-tweak-editor-curve-preset-icon-colors
Tweak curve preset icon colors for easier visual grepping
2022-08-23 15:42:38 +03:00
Yuri Sizov fe0c216bc7
Merge pull request #64587 from Calinou/editor-environment-defaults-decrease-shadow-max-distance
Decrease editor shadow maximum distance to match DirectionalLight3D default
2022-08-23 15:36:35 +03:00
Yuri Sizov 249517f132
Merge pull request #61493 from Calinou/editor-align-transform-rotate-decal
Rotate Decal nodes when using Align Transform/Rotation With View
2022-08-23 15:34:04 +03:00
bruvzg 56101080cc
[GDExtension] Fix `_property_can_revert` and `_property_get_revert` methods using incorrect string type. 2022-08-23 14:58:28 +03:00
Yuri Sizov 672e9d6868 Make `ImageLoader` take bit field flags 2022-08-23 14:39:01 +03:00
Silc Renew 9327296e73 Add bezier preset and refactor bezier editor
Co-authored-by: Razoric480 <razoric480@gmail.com>
2022-08-23 19:14:03 +09:00
Micky d5f44bffe6 Add spacing after newline on editor warning tooltip 2022-08-23 10:56:38 +02:00
Silc Renew c7e4eeb8a4 Add simple auto mapping to BoneMapper
Co-authored-by: K. S. Ernest (iFire) Lee <ernest.lee@chibifire.com>
2022-08-23 16:43:33 +09:00
bruvzg cd095ab64a
Hide MenuButton / OptionButton popup on click if it's already visible. 2022-08-23 10:38:51 +03:00
Rémi Verschelde b9919fd87d
Merge pull request #64678 from TokageItLab/implement-ease-baker
Fix Quaternion Tween and add Easing baker to AnimationTrackEditor
2022-08-23 09:19:21 +02:00
Rémi Verschelde 09d73352fc
Merge pull request #64015 from TokageItLab/add-motion-scale-adjustment
Add motion scale base height adjustment to RestFixer
2022-08-23 08:53:29 +02:00
Rémi Verschelde 62c3e72b6f
Merge pull request #63959 from KoBeWi/typo_arrray
Replace Array return types with TypedArray (part 1)
2022-08-23 08:52:13 +02:00
bruvzg bcc3643989
Add font LCD sub-pixel anti-aliasing support. 2022-08-23 08:47:21 +03:00
Rémi Verschelde 745e80fa8d
Merge pull request #58377 from MrBBBaiXue/type-filter
Add a way to filter nodes by type in scene tree dock.
2022-08-22 23:34:03 +02:00