Commit graph

10861 commits

Author SHA1 Message Date
Jummit
5e147e92ae Optimize and fix the scene unique name icon
This also makes it display correctly when using a light theme.
2022-09-05 14:53:39 +02:00
Rémi Verschelde
3e6c342995
Merge pull request #65306 from Rindbee/fix-Skeleton3DEditor-causing-crash-in-sanitizer-enabled-builds 2022-09-05 13:42:09 +02:00
Rémi Verschelde
545dc27096
Merge pull request #65356 from V-Sekai/state_machine_undo_redo_fix 2022-09-05 13:34:42 +02:00
SaracenOne
dae05fd249 Fix UndoRedo when creating new AnimationStateMachine transition and node. 2022-09-05 11:56:50 +01:00
Rémi Verschelde
03b92ae9ba
Merge pull request #65140 from Mickeon/editor-spin-slider-newline 2022-09-05 12:26:34 +02:00
SaracenOne
f4c7823a06 Freeze line when releasing mouse to create a new transition. 2022-09-05 10:39:15 +01:00
Rémi Verschelde
b71a7faac0 Merge pull request #65278 from TokageItLab/fix-node-transform-skin
Fix `RestFixer` for the model has `Skin` which non-inverse-global-rest
2022-09-05 08:23:56 +02:00
Aaron Franke
995b9f94e8
Replace Rect2(i) has_no_area with has_area 2022-09-04 23:03:36 -05:00
Rindbee
e73cac8999 Fix Skeleton3DEditor causing crash in sanitizer enabled builds
The life cycle of the `Skeleton3DEditor` singleton is too short, and when it is destroyed,
part of the logic needs to be called when its child nodes exist.
2022-09-04 09:20:06 +08:00
kobewi
80c78387a2 Remove pathed get_node() use from scene tree dock 2022-09-03 23:10:07 +02:00
Silc Renew
563dcbe7b8 Fix rest fixer for the model has skin which non inverse global rest 2022-09-04 00:04:11 +09:00
Rindbee
6c9726e7a7 Fix Skeleton3DEditor crash 2022-09-03 15:59:59 +08:00
Rémi Verschelde
9dfa14d5c2 Merge pull request #65181 from fire-forge/corner-details 2022-09-02 23:19:51 +02:00
Rémi Verschelde
18ee0da032 Merge pull request #65256 from RedMser/unrounds-your-corners 2022-09-02 23:16:12 +02:00
Rémi Verschelde
c9b3d208e1 Merge pull request #65248 from Mickeon/docs-improve-icons-non-breaking-space 2022-09-02 23:14:59 +02:00
Rémi Verschelde
77ca96fd73 Merge pull request #59589 from Calinou/rename-or-lesser-range-property-hint 2022-09-02 23:13:20 +02:00
Yuri Sizov
74fc44a242 Fix property revert logic in the sectioned inspector
Co-authored-by: derammo <817160+derammo@users.noreply.github.com>
2022-09-02 21:15:04 +03:00
Hugo Locurcio
f7292dbeb3
Rename or_lesser range property hint to or_less
"less" should be used for quantity, rather than "lesser".

Existing scripts that use `or_lesser` in `_get_property_list()`
will need to be updated to account for this change.
2022-09-02 19:08:20 +02:00
RedMser
7664ea8c97 EditorTheme: Remove rounded corners for all popups
Expands #59045 to apply to all kinds of popups,
since they all render as separate windows.
2022-09-02 18:24:33 +02:00
Micky
126216eda0 Improve Docs' inheritance tree icons on newline
Uses a Non-Breaking Space to prevent the icon from detaching from the name on newline, improving the look considerably.
2022-09-02 15:56:28 +02:00
Rémi Verschelde
3a62c294c7 Merge pull request #65170 from KoBeWi/your_argument_is_TypedArray 2022-09-02 13:57:02 +02:00
Rémi Verschelde
fe2cf6e406 Merge pull request #65210 from YuriSizov/control-customizable-cache-p3 2022-09-02 13:51:52 +02:00
Rémi Verschelde
c82bbc38a5 Merge pull request #64952 from Chaosus/vs_rename_uniform_to_param 2022-09-02 13:49:53 +02:00
Yuri Sizov
fc7cef8dec Fix theme propagation in various parts of the editor 2022-09-02 13:18:31 +03:00
Rémi Verschelde
5a136ee490 Merge pull request #64724 from KoBeWi/HVBoxContainer 2022-09-02 08:44:42 +02:00
Jonathan Nicholl
15d057c521 Add is_zero_approx methods to Vector2, 3, and 4 2022-09-02 00:29:50 -04:00
FireForge
77121efdff Increase ItemList v_separation in editor theme
ItemList now uses the same value for v_separation as PopupMenu. This makes it easier to select items.
2022-09-01 21:51:17 -05:00
Rémi Verschelde
4fc86b2ce5 Merge pull request #59602 from Calinou/editor-improve-add-metadata-dialog 2022-09-01 23:47:49 +02:00
Rémi Verschelde
5263fd5343 Merge pull request #64198 from Geometror/add-bitmap-tests 2022-09-01 23:46:38 +02:00
Rémi Verschelde
2e0cffdb6f Merge pull request #63479 from DarkKilauea/nav-link 2022-09-01 23:44:22 +02:00
Rémi Verschelde
181019cea5 Merge pull request #65135 from reduz/export-customization-plugins 2022-09-01 23:43:39 +02:00
kobewi
73929bef73 Rework oriented containers 2022-09-01 22:13:46 +02:00
Hugo Locurcio
8611b712dc
Improve the editor's Add Metadata dialog
- Mention the node name in the dialog title.
- Improve error messages to be more descriptive.
2022-09-01 19:03:40 +02:00
Hendrik Brucker
ea0472fecf Refactor BitMap and add tests
Co-authored-by: Resul Çelik <resul_celik@hotmail.com>
2022-09-01 18:39:17 +02:00
Rémi Verschelde
d214956925
Merge pull request #65088 from Mickeon/editor-scene-tree-tool-icon 2022-09-01 17:02:24 +02:00
Rémi Verschelde
027415312e
Merge pull request #65132 from bruvzg/global_menu_shortcuts_context 2022-09-01 17:02:04 +02:00
FireForge
b42d692648 Decrease StyleBoxFlat corner detail in editor theme
Also makes some minor changes to other areas of the editor theme.
2022-09-01 10:01:10 -05:00
Micky
8949386382 Rename AnimatedTexture oneshot to one_shot
AnimatedTexture.`oneshot` -> `one_shot`

For consistency. Every other exposed `one_shot` is spaced out like this.
2022-09-01 15:38:06 +02:00
kobewi
7adc8376ed Change Array arguments to TypedArray 2022-09-01 13:13:19 +02:00
Micky
a2ba189fef Modify newlines in Editor Spin Slider tooltip
Makes both key suggestions easier to read.
2022-09-01 12:32:23 +02:00
Micky
ad5ff9f78f Mark Script button if it's tool in Scene Tree Editor
Also adds a note on the tooltip if the Script is tool.

The color is the same one used on the Script Editor's script list.
2022-09-01 12:29:18 +02:00
Juan Linietsky
ef17c4668a Add support for scene/resource customization in export plugins
EditorExportPlugin adds a set of callbacks to allow customizing scenes, resources or subresources in all files exported:
* Can take scene files, resource files and subresources in all of them.
* Uses a cache for the converted files if nothing changes, so this work only happens if a file is modified.
* Uses hashing to differentiate export configuration caches.
* Removed the previous conversion code to binary, as this one uses existing stuff.

This API is useful in several scenarios:
* Needed by the "server" export platform to get rid of textures, meshes, audio, etc.
* Needed by text to binary converters.
* Needed by eventual optimizations such as shader precompiling on export, mesh merging and optimization, etc.

This is a draft, feedback is very welcome.
2022-09-01 11:16:00 +02:00
Yuri Rubinsky
8191b3c110 Rename uniform to parameter across the engine 2022-09-01 11:42:57 +03:00
Rémi Verschelde
0c221f0284
Merge pull request #65124 from zhehangd/fix_basis 2022-09-01 09:36:11 +02:00
Rémi Verschelde
d22f2612f9
Merge pull request #65162 from YuriSizov/editor-gradients-united
Unite `GradientEdit` and `GradientEditor` as editor-only widget
2022-09-01 08:30:16 +02:00
bruvzg
b85a4c5d79
[macOS] Handle accelerator and click events of the global menu items separately. 2022-09-01 08:13:56 +03:00
Zhehang Ding
69fe6336f1 Basis constructor: row vectors -> column vectors 2022-08-31 21:20:25 -07:00
Yuri Sizov
93078ea551 Unite GradientEdit and GradientEditor as editor-only widget 2022-08-31 23:45:04 +03:00
clayjohn
385ee5c70b Implement Physical Light Units as an optional setting.
This allows light sources to be specified in physical light units in addition to the regular energy multiplier. In order to avoid loss of precision at high values, brightness values are premultiplied by an exposure normalization value.

In support of Physical Light Units this PR also renames CameraEffects to CameraAttributes.
2022-08-31 12:14:46 -07:00
Rémi Verschelde
fbf8632556
Merge pull request #64247 from guilhermefelipecgs/fix_end_node
Re-add AnimationNodeStateMachine::end_node for root state machine
2022-08-31 17:40:38 +02:00
Rémi Verschelde
10aec9057c
Merge pull request #63411 from Calinou/improve-null-object-dictionary-print
Improve null and object printing to avoid confusion with arrays
2022-08-31 17:37:08 +02:00
Hugo Locurcio
291d3aaabe
Improve null and object printing to avoid confusion with arrays
- Use different syntax for object printing to avoid confusion with arrays.
- Print null as `<null>` to avoid confusion with a string `"null"`.
- Display `<empty>` in editor resource pickers to avoid confusion
  with array-based properties.
2022-08-31 15:31:49 +02:00
RedMser
96bdcfd447 Fix #65122: disambiguate_filenames freeze 2022-08-31 13:36:47 +02:00
Haoyu Qiu
97f547a63a Fix crash when toggling flag property value 2022-08-31 15:50:23 +08:00
Rémi Verschelde
96b470b28e
Merge pull request #63394 from Calinou/curve-gradient-rename-interpolate
Rename Curve/Curve2D/Curve3D/Gradient `interpolate()` to `sample()`
2022-08-31 08:37:12 +02:00
Rémi Verschelde
36a5160ad7
Merge pull request #62157 from ChronicallySerious/front-port-vcs-plugin
VCS: Port Godot 3.5's VCS features to GDExtension
2022-08-31 07:38:42 +02:00
Hugo Locurcio
ae18928748
Rename Curve/Curve2D/Curve3D/Gradient interpolate() to sample()
"sampling" is a more accurate term than "interpolating" for what's
happening when using that function.
2022-08-30 22:08:38 +02:00
Rémi Verschelde
292b94b97c
Merge pull request #65089 from YuriSizov/editor-launch-bar-with-style
Improve style and add contextual highlight to the editor launch pad
2022-08-30 21:18:41 +02:00
Twarit Waikar
a62b0ec904 VCS: Improve VCS UI/UX by QoL changes
The editor will now use the project path i.e. the place where the root of
the repo is supposed to be according to the user. This project path is
also sent into the plugin and so out-of-directory asset folders can also be
maintained this way.
2022-08-31 00:27:08 +05:30
Twarit Waikar
1bb5e65798 VCS: Replace usage of varray() by using callable_mp::bind() 2022-08-31 00:01:42 +05:30
Twarit Waikar
c698e4f5f9 VCS: Fix empty metadata items being moved across stages 2022-08-31 00:01:42 +05:30
Twarit Waikar
ef9885f81a VCS: Load a GDExtension instead of Script + UI port from 3.5 2022-08-31 00:01:42 +05:30
Twarit Waikar
4656ea8977 VCS: Port Godot 3.5's VCS features to GDExtension 2022-08-31 00:01:42 +05:30
Rémi Verschelde
de5f13e935
Merge pull request #63552 from RedMser/file-dialog-disambiguate
EditorFileDialog: disambiguate recent/favorite items
2022-08-30 20:24:38 +02:00
Rémi Verschelde
6e6287f748
Merge pull request #47744 from KoBeWi/press_F_to_play_exit 2022-08-30 19:29:04 +02:00
Rémi Verschelde
e27b61d291
Merge pull request #65042 from YuriSizov/editor-docks-tabbar-bg 2022-08-30 18:53:54 +02:00
RedMser
a401c4e6ac EditorFileDialog: disambiguate recent/favorite items
Similar to script editor, if two folders have the same name, they will
now get a more descriptive name in the item list.
2022-08-30 17:18:47 +02:00
Yuri Sizov
a462d6e402 Improve style and add contextual highlight to the editor launch pad 2022-08-30 18:10:45 +03:00
Rémi Verschelde
02d510bd07
Merge pull request #63003 from Geometror/msaa-2d 2022-08-30 14:54:20 +02:00
Rémi Verschelde
ae349d8227
Merge pull request #64377 from Mickeon/rename-canvas-redraw
Rename `CanvasItem.update()` to `queue_redraw()`
2022-08-30 14:47:41 +02:00
kobewi
409613ba7b Allow to change the Stop shortcut used at runtime 2022-08-30 14:14:15 +02:00
Rémi Verschelde
0bf3f79157
Merge pull request #63902 from dalexeev/string-cases 2022-08-30 14:06:28 +02:00
Rémi Verschelde
ebe4f8d3a4
Merge pull request #65039 from Mickeon/rename-treeitem-tooltip 2022-08-30 14:05:08 +02:00
Danil Alexeev
d4555ef5fb
Add String.to_{camel,pascal,snake}_case methods 2022-08-30 12:36:24 +03:00
Micky
97f8c9b97c Rename TreeItem's set_tooltip to set_tooltip_text
`set_tooltip` -> `set_tooltip_text`
`get_tooltip` -> `get_tooltip_text`

For consistency:
`get_button_tooltip` -> `get_button_tooltip_text`
And the `tooltip` parameter in `add_button` was renamed to `tooltip_text`
2022-08-30 11:16:23 +02:00
Rémi Verschelde
432b25d364
Merge pull request #65066 from aaronfranke/str-path-join 2022-08-30 10:01:11 +02:00
Rémi Verschelde
183438e13b
Merge pull request #65060 from Atlinx/feat/65059_fix-doc-error 2022-08-30 09:26:11 +02:00
Rémi Verschelde
992104bc12
Merge pull request #64396 from qarmin/add_line_length_options 2022-08-30 09:20:32 +02:00
Rémi Verschelde
21b218c9ea
Merge pull request #65053 from YuriSizov/editor-bones-but-no-meat
Properly handle theme changes in the Skeleton3DEditor
2022-08-30 08:45:07 +02:00
Rémi Verschelde
ff7d439551
Merge pull request #64494 from kleonc/scene-dock-change-many-node-unique-names
`SceneTreeDock` Allow/fix toggling unique name in owner for all selected nodes
2022-08-30 08:42:33 +02:00
Rémi Verschelde
4d7628be85
Merge pull request #45764 from gongpha/update-animation-tree-editor-when-selected
Update all AnimationTree's editors when editing
2022-08-30 08:37:11 +02:00
Rémi Verschelde
f925572976
Merge pull request #65044 from YuriSizov/editor-fix-theme-n-stuff
Fix some editor theme regressions
2022-08-30 07:30:55 +02:00
Aaron Franke
10a56981dc
Rename String plus_file to path_join 2022-08-29 19:38:13 -05:00
Atlinx
0e3097c023 Add missing parameters for signal in docs 2022-08-29 20:13:01 -04:00
Yuri Sizov
8b196be855 Add background to TabContainer's tabbar and editor docks 2022-08-29 23:43:32 +03:00
Rafał Mikrut
3b1259a98a Speedup conversion and add option to set maximum line length to prevent freezes 2022-08-29 21:26:36 +02:00
Yuri Sizov
1839ec96a7 Properly handle theme changes in the Skeleton3DEditor 2022-08-29 21:39:56 +03:00
Kongfa Waroros
0f17fe642c Update all AnimationTree's editors when editing 2022-08-30 01:04:34 +07:00
kleonc
5d7ff1bf44 SceneTreeDock Toggling unique name in owner for all selected nodes 2022-08-29 19:18:52 +02:00
Yuri Sizov
88ab58821d Fix some editor theme regressions 2022-08-29 18:01:41 +03:00
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