Commit graph

9703 commits

Author SHA1 Message Date
bruvzg
deffe6a3be
[macOS] Add support for native help menu search callbacks, integrate editor help. 2024-02-13 18:37:37 +02:00
Rémi Verschelde
ace0aeaf4f
Merge pull request #88265 from Calinou/tree-fix-recursive-expand-collapse-shortcuts
Fix recursive Tree expand/collapse shortcuts not working
2024-02-13 17:24:25 +01:00
Rémi Verschelde
48e2f43ccf
Merge pull request #87479 from kitbdev/apply-ime
Fix TextEdit IME issues
2024-02-13 17:23:55 +01:00
Rémi Verschelde
5ae4faf555
Merge pull request #86958 from Mickeon/reduz-adds-stuff,-refuses-to-elaborate,-leaves
Add missing documentation for AudioStream & AudioStreamPlayback
2024-02-13 17:23:34 +01:00
Rémi Verschelde
cc623af6cb
Merge pull request #86872 from Mickeon/documentation-sprite-3d-notes
Add a few notes to Sprite3D's documentation
2024-02-13 17:23:19 +01:00
Rémi Verschelde
7069b3d351
Merge pull request #80211 from bruvzg/status_ind
Implement support for application status indicators (tray icons).
2024-02-13 17:22:55 +01:00
Rémi Verschelde
b9a07ad341
Merge pull request #80183 from Mickeon/doc-peeves-noodlespath
Overhaul NodePath documentation
2024-02-13 17:22:51 +01:00
bruvzg
8da36031e4
Implement support for application status indicators (tray icons). 2024-02-13 15:59:35 +02:00
Rémi Verschelde
3834fb432e
Merge pull request #87145 from AThousandShips/atlas_fix_size
Allow configuring the maximum width for atlas import
2024-02-13 11:24:54 +01:00
Erik Johnson
eab95698cd
Fix shadows for billboarded Sprite3D's 2024-02-13 10:36:38 +01:00
A Thousand Ships
8b3c12d8df
Allow configuring the maximum width for atlas import 2024-02-13 10:30:44 +01:00
Hugo Locurcio
6de0eca6c1
Fix recursive Tree expand/collapse shortcuts not working
This also moves them to use Shift instead of Alt, as was already
done for mouse interactions.

Shortcuts in Tree were also made non-exact matches so they still
work if modifiers are held. This is important for up/down
shortcuts, especially once support for selecting with
Shift + up/down is implemented.
2024-02-13 02:30:48 +01:00
Rémi Verschelde
3be3d5099c
Merge pull request #87340 from DarioSamo/rd_common_context
Finish splitting functionality of the `RenderingDevice` backends into `RenderingDeviceDriver`.
2024-02-12 23:29:32 +01:00
Rémi Verschelde
c66f87daa7
Merge pull request #87175 from Mickeon/doc-peeves-basis-based-on-what
Overhaul Basis' documentation
2024-02-12 23:29:27 +01:00
Dario
73eff10c76 Finish splitting functionality of the Vulkan and D3D12 backends into RenderingDeviceDriver. 2024-02-12 10:02:18 -03:00
Rémi Verschelde
08b4dddf4c
Merge pull request #88106 from Calinou/editor-dev-build-show-update-spinner
Show update spinner by default in `dev_build=yes` editor builds
2024-02-12 13:34:38 +01:00
Rémi Verschelde
24bd30716e
Merge pull request #87959 from Scony/fix-navi-sync-errors
Add means for fixing navmap synchronization errors
2024-02-12 13:34:30 +01:00
Rémi Verschelde
687f840354
Merge pull request #87379 from groud/change_tilemap_editor_to_tilemaplayer_editor
Change TileMapEditor to TileMapLayerEditor
2024-02-12 13:34:04 +01:00
Rémi Verschelde
679fa26a99
Merge pull request #86903 from Mickeon/Post-merge-fixes-to-Node-documentation
Post-merge fixes to Node & OS documentation
2024-02-12 13:33:47 +01:00
Rémi Verschelde
9b189d24fe
Merge pull request #86715 from TokageItLab/revive-capture
Add `AnimationMixer::capture()` and `AnimationPlayer::play_with_capture()` as substitute of update mode capture
2024-02-12 13:33:39 +01:00
Rémi Verschelde
62fcc7e5d3
Merge pull request #78990 from RedMser/class-reference-keywords
Add search keywords to the class reference
2024-02-12 13:33:12 +01:00
Rémi Verschelde
2b36dcf70a
Merge pull request #75688 from mnemoli/pickone
Add setting for picking only top-most overlapping collision object
2024-02-12 13:33:08 +01:00
Gilles Roudière
5a999d67ec Change TileMapEditor to TileMapLayerEditor 2024-02-12 10:11:45 +01:00
Silc Lizard (Tokage) Renew
85d66cb4e8 Add capture() and play_with_capture() as substitute of update capture 2024-02-12 17:02:05 +09:00
Pawel Lampe
9ea8d4fa38 Add means for fixing navmap synchronization errors 2024-02-11 21:06:47 +01:00
Micky
e26f612f38 Post-merge fixes to Node & OS documentation 2024-02-11 16:44:24 +01:00
Hugo Locurcio
7e25292205
Show update spinner by default in dev_build=yes editor builds
This ensures contributors can see when something forces the
editor to redraw constantly.

The existing boolean `true` value will be casted to `1` in the setting,
so it'll switch to Enabled automatically if the setting was previously
enabled.
2024-02-10 00:45:56 +01:00
RedMser
5911a12db1 Update class reference to include some keywords
More should be added in future PRs, wherever there is demand.
2024-02-09 18:13:23 +01:00
RedMser
db798b29b2 Add keywords to the class reference
Allows for finding methods, properties, signals, constants,
theme items and annotations more easily.

- Allow "keywords" attribute in aforementioned locations
  in the class reference XMLs
- Extends doctool, to preserve these attributes
- Update the XSD schema for the class reference
- Update the RST generator to include a meta tag for class keywords
- Update the editor help to support filtering by keywords
2024-02-09 18:13:23 +01:00
Rémi Verschelde
b604a0516e
Merge pull request #82950 from thygrrr/physics-damping-redocumentation
Rewrite docs for physics damping project settings
2024-02-09 18:09:00 +01:00
Rémi Verschelde
74b03edf1e
Merge pull request #82800 from Sauermann/fix-screen-mousemotion
Add screen-related attributes to mouse input events
2024-02-09 18:08:58 +01:00
Tiger Jove
7d9f6da8e3
Rewrite docs for physics damping project settings
Signed-off-by: Tiger Jove <tiger@jupiter.blue>
2024-02-09 18:00:28 +01:00
Rémi Verschelde
158df3e7b9
Merge pull request #79815 from idbrii/patch-2
doc: Clarify when to construct a StringName ahead of time
2024-02-09 12:13:07 +01:00
David Briscoe
9cbc4026ee
doc: Clarify when to construct a StringName ahead of time
Fix docs don't give justification for manual construction.

Clarify how to apply manual StringName construction as an
optimization and that "string intern" means "work at parse time".

There are several godot-demo-projects (including 3d/platformer) that
incorrectly use StringName literals (they use & literals instead of just
passing strings), so clearly this is confusing.

AThousandShips did a disassembly test to prove it automatically converts
constant strings to StringName for annotated functions:

  func do_test(_var: StringName, _var2: String):
  pass

  func test():
  do_test("abc", "def")

Yields:

  Disassembling do_test(_var, _var2)
   0: line 2:     pass
   2: == END ==

  Disassembling test()
   0: line 5:     do_test("abc", "def")
   2: call self.do_test(const(&"abc"), const("def"))
   10: assign stack(3) = false
   12: == END ==

It also happens with built-in functions such as those of Input.
2024-02-09 12:08:12 +01:00
RedMser
bf37a9bac6 Allow configuration warnings to refer to a property
This is used by the inspector so it can show a warning icon on
a specific property.
2024-02-08 23:05:20 +01:00
Rémi Verschelde
fd6f6a05bf
Merge pull request #82376 from MewPurPur/add-missing-docs
Document worker thread pool project settings and `TreeItem.uncollapse_tree()`
2024-02-08 13:45:50 +01:00
Rémi Verschelde
e10a99f262
Merge pull request #88040 from Calinou/doc-projectsettings-initial-position
Document initial position project settings not affecting run from editor
2024-02-08 10:54:03 +01:00
Rémi Verschelde
f8020d1364
Merge pull request #88026 from Calinou/editor-default-enable-add-type-hints
Enable Add Type Hints editor setting by default
2024-02-08 10:53:58 +01:00
Rémi Verschelde
eaef76a06f
Merge pull request #87768 from DevPoodle/rasterization-state
Add descriptions to the remaining properties of RDPipelineRasterizationState
2024-02-08 10:53:45 +01:00
Rémi Verschelde
9484a3776b
Merge pull request #87583 from milkiq/master
Modify display and documentation of attenuation for Light3D
2024-02-08 10:53:40 +01:00
Rémi Verschelde
261952a4c7
Merge pull request #87378 from smix8/navmesh_bordersize
Add NavigationMesh `border_size` property for tile baking
2024-02-08 10:53:30 +01:00
Rémi Verschelde
163c00eb4d
Merge pull request #81655 from nlupugla/editor-interface-can-popup-dialogs
Expose `SceneTreeDialog` and `PropertySelector` via `EditorInterface`
2024-02-08 10:53:13 +01:00
Rémi Verschelde
b98c2f23da
Merge pull request #48364 from Calinou/add-vsync-editor-setting
Add a V-Sync editor setting
2024-02-08 10:52:59 +01:00
Hugo Locurcio
d3df15f823
Document initial position project settings not affecting run from editor 2024-02-07 18:25:25 +01:00
Rémi Verschelde
99f2ec862c
Merge pull request #87985 from allenwp/docs-8906-color-16-bit
Fix docs for Color class regarding bits per component.
2024-02-07 11:03:38 +01:00
Rémi Verschelde
011ed23ed2
Merge pull request #87983 from Calinou/doc-os-execute-android
Document `OS.execute()` limitations on Android
2024-02-07 11:02:52 +01:00
Rémi Verschelde
8daa633d0d
Merge pull request #87961 from smix8/navmesh2d_bordersize
Add NavigationPolygon `border_size` property for tile baking
2024-02-07 11:01:42 +01:00
Rémi Verschelde
251d5b3669
Merge pull request #87715 from Scony/add-is-baking
Expose `is_baking` method in navigation servers and region nodes.
2024-02-07 10:58:27 +01:00
Hugo Locurcio
345f09d125
Enable Add Type Hints editor setting by default
Now that GDScript type hints improve performance since Godot 4.0
and the community is increasingly getting used to typed GDScript,
it makes sense to add type hints by default.

Official demos will also be moving to type hints at some point
in the future, further increasing the relevance of enabling type
hints out of the box.
2024-02-06 19:41:26 +01:00
milkiq
cf453ae8d9 Modify display and documentation of attenuation for Light3D 2024-02-06 12:41:30 +08:00
Markus Sauermann
2235a1cbd0 Add screen-related attributes to mouse input events 2024-02-05 23:30:15 +01:00
Hugo Locurcio
6f9586443a
Add a V-Sync editor setting
The editor setting makes it possible to tweak V-Sync status
independently of the project setting.

Use cases:

- Decrease input lag and increase editor responsiveness when editing
  a project that has V-Sync enabled.
- Avoid tearing when editing a project that has V-Sync disabled.
2024-02-05 22:14:20 +01:00
Pawel Lampe
c2cfc0d409 Expose is_baking method in navigation servers and region nodes. 2024-02-05 22:04:22 +01:00
Hugo Locurcio
d94ee14123
Document OS.execute() limitations on Android 2024-02-05 20:17:24 +01:00
Allen Pestaluky
0e977e087c Fix docs for Color class regarding bits per component.
This fixes godot-docs#8906 ( https://github.com/godotengine/godot-docs/issues/8906 )
2024-02-05 12:55:58 -05:00
Rémi Verschelde
01fd96e19d
Merge pull request #87951 from AThousandShips/doc_link_fix
Fix inverted link in docs
2024-02-05 14:54:33 +01:00
Rémi Verschelde
8631f68509
Merge pull request #87928 from 31/dev/31/call-deferred-cs
Add `Callable` `call_deferred()` C# example
2024-02-05 14:52:14 +01:00
Rémi Verschelde
fbd203401b
Merge pull request #87881 from smix8/height_min_max_helpers
Add HeightMapShape3D functions to get min / max height
2024-02-05 14:51:02 +01:00
Rémi Verschelde
acde2a81ff
Merge pull request #84640 from aaronfranke/gravity-get
Expose a method to get gravity for any physics body
2024-02-05 14:48:31 +01:00
Zach Coleman
fc7a63cbf3 Enhance mobile suspend MainLoop Notifications 2024-02-04 21:10:06 -05:00
smix8
085bc9504b Add NavigationPolygon border_size property for tile baking
Adds NavigationPolygon border_size property for tile baking. Also adds baking Rect2 bounds.
2024-02-05 00:38:28 +01:00
A Thousand Ships
17000bf8c3
Fix inverted link in docs
Title and url were swapped
2024-02-04 18:31:09 +01:00
31
0a9715d6b5 Add Callable call_deferred() C# example 2024-02-03 20:49:05 -08:00
smix8
0a485fc30a Add HeightMapShape3D functions to get min / max height
Adds HeightMapShape3D functions to get min / max height.
2024-02-04 01:23:30 +01:00
Rémi Verschelde
c341d9704c
Merge pull request #87913 from OverloadedOrama/docs-feature-native-dialog
Minor fix in DisplayServer docs to include Linux & Windows in `FEATURE_NATIVE_DIALOG`
2024-02-03 23:22:58 +01:00
Rémi Verschelde
22d402e23d
Merge pull request #87863 from EterDelta/reload-notification
Expose `NOTIFICATION_EXTENSION_RELOADED` to `ClassDB`
2024-02-03 23:20:14 +01:00
Rémi Verschelde
673f1614c4
Merge pull request #87630 from dsnopek/openxr-passthrough-from-gdextension
OpenXR: Allow moving vendor passthrough extensions to GDExtension
2024-02-03 23:19:24 +01:00
Emmanouil Papadeas
2ba6066d5d Minor fix in DisplayServer.xml to include Linux & Windows in FEATURE_NATIVE_DIALOG 2024-02-03 21:36:02 +02:00
David Snopek
e74a0f4b09 OpenXR: Allow moving vendor passthrough extensions to GDExtension 2024-02-03 12:40:41 -06:00
EterDelta
fee70558f8 Expose NOTIFICATION_EXTENSION_RELOADED to ClassDB 2024-02-02 14:57:00 -05:00
Rémi Verschelde
10e111477d
Merge pull request #87856 from bruvzg/transpbg
Automatically set viewport background to transparent when window flag is set.
2024-02-02 12:06:29 +01:00
Rémi Verschelde
fb5f34a75a
Merge pull request #87745 from dsnopek/openxr-change-reference-space
OpenXR: Allow changing play area mode during active session
2024-02-02 12:03:09 +01:00
Rémi Verschelde
88df5b871f
Merge pull request #87318 from ckaiser/feature/indeterminate_progressbar
Add indeterminate mode to ProgressBar
2024-02-02 12:02:19 +01:00
Rémi Verschelde
0858c4ecbc
Merge pull request #82889 from ershn/improve_process_mode_api_documentation
Improve Node's documentation on `process_mode` related members/methods
2024-02-02 12:00:35 +01:00
Rémi Verschelde
58ffe0958a
Merge pull request #74195 from TheSecondReal0/flow-top-to-bottom
Add option to reverse FlowContainer fill direction (HFlow bottom-to-top, VFlow right-to-left)
2024-02-02 12:00:07 +01:00
Rémi Verschelde
e0eccaeb60
i18n: Sync translations with Weblate
Still tracking 4.2 translations for now.

(cherry picked from commit 991454b8bd)
2024-02-02 11:38:01 +01:00
bruvzg
0d88aadd53
Automatically set viewport background to transparent when window flag is set. 2024-02-02 10:40:26 +02:00
TheSecondReal0
b8a7270567 Add option to reverse FlowContainer fill direction (HFlow bottom-to-top, VFlow right-to-left) 2024-02-01 10:41:31 -07:00
DevPoodle
3b8ef19689 Add descriptions to the remaining properties of RDPipelineRasterizationState 2024-01-31 19:27:41 -08:00
Christian Kaiser
c00bd0008a Add indeterminate mode to ProgressBar 2024-01-31 18:11:18 -03:00
David Snopek
5935bfa860 OpenXR: Allow changing play area mode during active session 2024-01-31 12:58:22 -06:00
Ershn
61872e47af Improve Node's documentation on process_mode related members/methods 2024-01-31 23:25:56 +09:00
Rémi Verschelde
f23fda39d3
Merge pull request #87776 from bruvzg/wl_nfd
[Wayland] Add support for native file dialogs.
2024-01-31 14:00:30 +01:00
bruvzg
edb21e0573
[Wayland] Add support for native file dialogs. 2024-01-31 14:13:19 +02:00
Rémi Verschelde
f8a039e9b5
Merge pull request #84745 from lawnjelly/lightcull
Shadow volume culling and tighter shadow caster culling
2024-01-31 11:13:19 +01:00
Rémi Verschelde
ad8b136a31
Merge pull request #87436 from Mickeon/doc-peeves-Timer-s-out
Tweak Timer documentation
2024-01-31 10:54:30 +01:00
Rémi Verschelde
eb105b9ae9
Merge pull request #87372 from Mickeon/documentation-SkeletonProfileHumanoid-bone-list
Document bone list for SkeletonProfileHumanoid
2024-01-31 10:53:43 +01:00
Micky
22421e134b Tweak Timer documentation 2024-01-31 09:40:05 +01:00
Aaron Franke
aed5ea9460
Expose a method to get gravity for any physics body 2024-01-30 23:57:38 -06:00
Hugo Locurcio
253ad63005
Clarify the FOV setting in the 3D editor camera is vertical FOV 2024-01-31 01:20:21 +01:00
Rémi Verschelde
0cce6eb150
Merge pull request #87443 from YuriSizov/pms-hotter-younger-cousin
Improve layout and UX of the project manager
2024-01-30 19:10:46 +01:00
Yuri Sizov
4d97c33503 Add a network mode setting to bring the editor offline
This PR also adds default font styles for RichTextLabels
in the editor, and improves the introduction dialog
when you don't have any local projects available.

The offline mode is implemented in the asset library
plugin, alongside some code improvements.
2024-01-30 17:52:08 +01:00
Rémi Verschelde
ba6ecf3e06
Merge pull request #87676 from Mickeon/oooh-Reduz-of-the-past-You're-so-quirky
Mention and deprecate InputEventJoypadButton's pressure
2024-01-30 17:48:02 +01:00
Rémi Verschelde
f390b86acd
Merge pull request #87194 from kitbdev/tab-deselect
Allow no tabs to be selected in TabBar and TabContainer
2024-01-30 17:47:54 +01:00
Riteo
7e0f7d3abd Add Wayland support
Not everything is yet implemented, either for Godot or personal
limitations (I don't have all hardware in the world). A brief list of
the most important issues follows:

- Single-window only: the `DisplayServer` API doesn't expose enough
information for properly creating XDG shell windows.

- Very dumb rendering loop: this is very complicated, just know that
the low consumption mode is forced to 2000 Hz and some clever hacks are
in place to overcome a specific Wayland limitation. This will be
improved to the extent possible both downstream and upstream.

- Features to implement yet: IME, touch input, native file dialog,
drawing tablet (commented out due to a refactor), screen recording.

- Mouse passthrough can't be implement through a poly API, we need a
rect-based one.

- The cursor doesn't yet support fractional scaling.

- Auto scale is rounded up when using fractional scaling as we don't
have a per-window scale query API (basically we need
`DisplayServer::window_get_scale`).

- Building with `x11=no wayland=yes opengl=yes openxr=yes` fails.

This also adds a new project property and editor setting for selecting the
default DisplayServer to start, to allow this backend to start first in
exported projects (X11 is still the default for now). The editor setting
always overrides the project setting.

Special thanks to Drew Devault, toger5, Sebastian Krzyszkowiak, Leandro
Benedet Garcia, Subhransu, Yury Zhuravlev and Mara Huldra.
2024-01-30 16:44:47 +01:00
lawnjelly
4577dfdb67 Shadow volume culling and tighter shadow caster culling
Existing shadow caster culling takes no account of the camera.
This PR adds the highly encapsulated class RenderingLightCuller which can cut down the casters in the shadow volume to only those which can cast shadows on the camera frustum.
2024-01-30 08:38:31 +00:00
Micky
25c0c95960 Mention and deprecate InputEventJoypadButton's pressure 2024-01-29 23:38:36 +01:00
kit
a6af442b05 Apply TextEdit IME on most actions 2024-01-29 15:07:19 -05:00
kit
6e965f6c83 Allow tab deselection 2024-01-29 14:30:34 -05:00
kobewi
0de8a736da Allow Node.create_tween() outside SceneTree 2024-01-29 20:18:43 +01:00
Rémi Verschelde
e59e58a68a
Merge pull request #87686 from radzo73/get_button_color
[TreeItem] Add `get_button_color()`
2024-01-29 13:18:05 +01:00
Rémi Verschelde
5c61803971
Merge pull request #87668 from bruvzg/add_baseline_offset
[TextServer / Font] Add support for customizable baseline offset.
2024-01-29 13:17:52 +01:00
Rémi Verschelde
a248e8c78d
Merge pull request #87502 from mihe/soft-body-bindings
Bind physics server methods related to `SoftBody3D`
2024-01-29 13:17:09 +01:00
Rémi Verschelde
68957d2944
Merge pull request #87445 from KoBeWi/expand_the_Control_empire
Clarify sizing of main screen plugins
2024-01-29 13:17:05 +01:00
Rémi Verschelde
ec08b323bf
Merge pull request #86927 from Mickeon/filling-docs
Fill the documentation of a few overlooked classes
2024-01-29 13:16:42 +01:00
Rémi Verschelde
c2968e497d
Merge pull request #86693 from Mickeon/doc-peeves-midiiiiii
Improve all documentation about MIDI support
2024-01-29 13:16:37 +01:00
Rémi Verschelde
6d1e51c23e
Merge pull request #86273 from DevPoodle/sampler-state-descriptions
Add descriptions to remaining properties of RDSamplerState
2024-01-29 13:16:28 +01:00
Rémi Verschelde
2a862a6f6c
Merge pull request #85503 from 20kdc/bone2d-fix-apply_rest-master
Fix the documentation of `Bone2D::apply_rest`
2024-01-29 13:16:19 +01:00
Rémi Verschelde
964de297e4
Merge pull request #85450 from KoBeWi/advanced_properties_for_every_Object
Improve documentation for dynamic properties
2024-01-29 13:16:12 +01:00
Rémi Verschelde
8febe50797
Merge pull request #85448 from mxaddict/master
Update `blender_path` behavior to require exact path to executable instead of trying to guess it
2024-01-29 13:16:05 +01:00
Rémi Verschelde
0796d08b8f
Merge pull request #84515 from Calinou/editor-multi-window-unavailable-disable-buttons
Disable multi-window buttons instead of hiding them when support is unavailable
2024-01-29 13:16:01 +01:00
Rémi Verschelde
f220d46cdc
Merge pull request #80231 from romlok/input-key-location
Support detecting and mapping ctrl/alt/shift/meta by their left/right physical location
2024-01-29 13:15:42 +01:00
radzo73
de5b0d7103 Add get_button_color(column, id)
Docs should point to Color constuctor instead of just the class, but I unfortunately cannot.
2024-01-28 19:09:20 -05:00
kobewi
c228e31a96 Clarify sizing of main screen plugins 2024-01-28 19:49:33 +01:00
20kdc
f16f8bf39b Fix the documentation of Bone2D::apply_rest (squashed)
Co-authored-by: Micky <66727710+Mickeon@users.noreply.github.com>
2024-01-28 13:37:11 +00:00
bruvzg
85df221610
[TextServer / Font] Add support for customizable baseline offset. 2024-01-28 13:26:49 +02:00
Hugo Locurcio
04a930d9a6
Disable multi-window buttons instead of hiding them when support is unavailable
This is more explicit as for why this functionality isn't available
depending on editor settings and current platform.

This also exposes a `EditorInterface.is_multi_window_enabled()` method
so that editor plugins can easily query whether the editor is able and
expected to create multiple windows.
2024-01-27 19:38:39 +01:00
Micky
8723d116c4 Overhaul documentation about MIDI support 2024-01-26 22:28:47 +01:00
mxaddict
ad106a283b Update blender_path behavior to require exact path to executable instead of trying to guess it 2024-01-27 00:41:53 +08:00
Mikael Hermansson
06f2f1ecbc Bind physics server methods related to SoftBody3D 2024-01-26 17:15:52 +01:00
Mel Collins
8406e60522 Add InputEventKey.location to tell left from right
This adds a new enum `KeyLocation` and associated property
`InputEventKey.location`, which indicates the left/right location of key
events which may come from one of two physical keys, eg. Shift, Ctrl.

It also adds simulation of missing Shift KEYUP events for Windows.
When multiple Shifts are held down at the same time, Windows natively
only sends a KEYUP for the last one to be released.
2024-01-26 14:42:28 +01:00
Rémi Verschelde
73419e645b
Merge pull request #87523 from skyace65/Minor-Doc-fixes
Fix several minor class reference issues
2024-01-26 11:47:01 +01:00
Rémi Verschelde
62c87dc83e
Merge pull request #87444 from Mickeon/documentation-XROrigin3D-tweaks
Tweak XROrigin3D documentation
2024-01-26 11:45:01 +01:00
Rémi Verschelde
1ce40ebb44
Merge pull request #87386 from clayjohn/GLES3-lightmap-bake
Add GLES3 infrastructure for lightmap baking in the compatibility backend
2024-01-26 11:44:37 +01:00
Yuri Sizov
474011ac06 Merge pull request #87543 from akien-mga/version-remove-year
Remove now unused `year` member from `version.py`
2024-01-25 16:27:21 +01:00
Yuri Sizov
68d5043e88 Merge pull request #87541 from clayjohn/TextureRD-property
Avoid saving the texture_rd_rid property of TextureRD resources
2024-01-25 16:27:17 +01:00
Yuri Sizov
672b034076 Merge pull request #87303 from bruvzg/fd_options_no_editor
[Native File Dialog] Add support for adding custom options to the dialogs (w/o editor changes).
2024-01-25 16:26:58 +01:00
Rémi Verschelde
e0dc23367c
Remove now unused year member from version.py
We changed copyright to use "present" for the current year, so we no
longer need to hardcode this and (like now) forget to bump it yearly.
2024-01-25 15:08:34 +01:00
clayjohn
efb1cbaad4 Add GLES3 infrastructure for lightmap baking in the compatibility backend 2024-01-24 17:13:30 -08:00
clayjohn
c6316bff65 Avoid saving the texture_rd_rid property of TextureRD resources
RIDs do not persist between runs, so they should not be saved
2024-01-24 10:34:51 -08:00
Micky
552403d581 Tweak XROrigin3D documentation 2024-01-24 16:53:09 +01:00
Yuri Sizov
a32a2eaedc Merge pull request #87417 from AThousandShips/tree_clear
Use callable for `TreeItem` custom draw
2024-01-24 14:08:36 +01:00
Yuri Sizov
d454fccdb3 Merge pull request #87395 from mrcdk/popupmenu_get_state
Expose `PopupMenu` `get_item_multistate()` and `set/get_item_multistate_max()`
2024-01-24 14:08:32 +01:00
Yuri Sizov
412f5b3422 Merge pull request #87353 from OverloadedOrama/max-undo-steps
Implement maximum undo steps in UndoRedo
2024-01-24 14:08:25 +01:00
Yuri Sizov
ea6e20253b Merge pull request #87235 from dsnopek/openxr-local-floor
Add support for OpenXR local floor extension
2024-01-24 14:08:17 +01:00
Yuri Sizov
f062d7294e Merge pull request #87156 from DevPoodle/depth-stencil-descriptions
Add descriptions to the remaining properties of RDPipelineDepthStencilState
2024-01-24 14:08:12 +01:00
Yuri Sizov
7f2d493b0e Merge pull request #87047 from Mickeon/documentation-missing-signals
Add missing descriptions to remaining signals
2024-01-24 14:08:08 +01:00
Yuri Sizov
e8f33a74ff Merge pull request #81689 from AThousandShips/compress_doc
Clarify `PackedByteArray.decompress*` limitations with external data
2024-01-24 14:07:41 +01:00
Yuri Sizov
79d818478f Merge pull request #79813 from AThousandShips/callable_doc
Clarify that `Callable` will not be encoded with `var_to_bytes`
2024-01-24 14:07:36 +01:00
bruvzg
a8f521bcad
[Native File Dialog] Add support for adding custom options to the dialogs.
Add support for adding custom options (checkboxes and optionboxes) to the dialogs (both native and built-in).
2024-01-24 15:00:31 +02:00
skyace65
ed20e32f06 Fix several minor class reference issues 2024-01-23 21:30:43 -05:00
David Snopek
a8690cbeed Add support for OpenXR local floor extension 2024-01-23 09:19:09 -06:00
Micky
8f4598bad4 Add missing documentation for AudioStream & AudioStreamPlayback 2024-01-23 15:37:21 +01:00
Micky
8f10d7dd19 Add missing descriptions to remaining signals. 2024-01-23 15:04:06 +01:00
A Thousand Ships
257d03681c
Use callable for TreeItem custom draw
Deprecating old functionality
2024-01-23 12:07:43 +01:00
Micky
58ddd84108 Overhaul Basis' documentation
Co-Authored-By: Aaron Franke <arnfranke@yahoo.com>
2024-01-23 10:04:39 +01:00
Yuri Sizov
e89c9b50ad Merge pull request #87373 from Calinou/add-log-file-cli-argument
Add `--log-file` command line argument to write output log to a file
2024-01-22 20:39:21 +01:00
Yuri Sizov
3755b7286c Merge pull request #87332 from AThousandShips/scene_saved
[Editor] Add `EditorPlugin::scene_saved` signal
2024-01-22 20:39:07 +01:00
Yuri Sizov
e95456b7f3 Merge pull request #86073 from m4rr5/add_reflection_mask
Add a reflection mask to the reflection probes
2024-01-22 20:38:37 +01:00
Emmanouil Papadeas
c73bfd5d81 Implement maximum undo steps in UndoRedo 2024-01-22 21:38:10 +02:00
mrcdk
c9bdccf7f2 Expose PopupMenu get_item_multistate(), get_item_multistate_max() and set_item_multistate_max() 2024-01-22 20:07:19 +01:00
A Thousand Ships
97b469c46d
[Editor] Add EditorPlugin::scene_saved signal
Matches the `EditorNode` one for parity with the exposed
`resource_saved` signal
2024-01-22 17:51:12 +01:00
CardboardCarl
6dfec4f70d Clarified behavior of RayCast objects when get_collision_point() is used inside a collision shape 2024-01-21 01:16:42 -05:00
Micky
d2ab1b60c4 Document bone list for SkeletonProfileHumanoid
Co-Authored-By: K. S. Ernest (iFire) Lee <fire@users.noreply.github.com>
2024-01-20 16:34:15 +01:00
Marcel Offermans
25f573ca63 Add a reflection mask to the reflection probes.
Co-authored-by: Bastiaan Olij <mux213@gmail.com>
2024-01-20 08:07:31 +01:00
Hugo Locurcio
6e5e7b8cb7
Add --log-file command line argument to write output log to a file
This works even if file logging is disabled in the project settings,
or for the editor/project manager.

`--log-file`'s value can be an absolute path or relative to the project
directory (similar to existing arguments like `--write-movie`).
2024-01-19 20:30:04 +01:00
nlupugla
558c2763e7 EditorInterface can popup SceneTreeDialog and PropertySelector. 2024-01-19 14:16:29 -05:00
smix8
d6c31017a6 Add NavigationMesh border_size property for tile baking
Adds NavigationMesh border_size property for tile baking.
2024-01-19 17:31:36 +01:00
Hendrik Brucker
9d7c2978f4 Rework GraphEdit connections (drawing, API, optimizations)
- GraphEdit now uses Line2D nodes to draw connection lines and uses a dedicated canvas item shader for them
2024-01-18 16:53:15 +01:00
kobewi
7d0d405e22 Improve documentation for dynamic properties 2024-01-18 02:01:06 +01:00
Yuri Sizov
bb90ebd573 Merge pull request #87259 from Mickeon/documentation-missing-constant-description
Add "missing description" tag to constant & enum documentation
2024-01-17 18:53:19 +01:00
Yuri Sizov
649bcbdac9 Merge pull request #87114 from Mickeon/doc-peeves-AABB
Overhaul AABB's documentation
2024-01-17 18:53:08 +01:00
Yuri Sizov
1169b872c4 Merge pull request #86246 from ecmjohnson/doc-threaded_cull_minimum_instances
Add description for rendering/limits/spatial_indexer/threaded_cull_minimum_instances
2024-01-17 18:52:40 +01:00
DevPoodle
5579edb137 Add descriptions to remaining properties of RDSamplerState 2024-01-16 16:10:46 -08:00
Micky
8467245526 Overhaul AABB's documentation 2024-01-16 19:20:17 +01:00
MewPurPur
786e5bc731 Add missing docs for worker thread pool ProjectSettings and TreeItem.uncollapse_tree() 2024-01-16 20:03:29 +02:00
Micky
0b02b9571c Add "missing description" tag to constant documentation
Revives #85836

Co-Authored-By: krysperz2 <106302189+krysperz2@users.noreply.github.com>
2024-01-16 18:33:33 +01:00
Rémi Verschelde
079d58be9c
Merge pull request #86971 from YuriSizov/makerst-parity-check
Add code sample language parity check to `make_rst.py`
2024-01-16 15:07:40 +01:00
Yuri Sizov
dc3b07e551 Introduce editor theme spacing presets
This change adds a new editor setting related to theming
which controls base and additional spacing used in the
generated editor theme. These values can also be changed
manually by the user to customize their experience.

Limited effort was applied to make sure both Compact and
Spacious presets work and look fine, but further tuning
and adjustments are totally expected. Some controls will
require layout changes or additional fixes to their constants.
2024-01-16 11:57:45 +01:00
Rémi Verschelde
3ba18b3fc1
Merge pull request #87223 from Mickeon/documentation-uncommon-words
Replace some "uncommon" words in class reference
2024-01-16 10:39:13 +01:00
Rémi Verschelde
5af0cb4aef
Merge pull request #87218 from Calinou/makerst-code-warning-hint-skip-lint
makerst: Suggest using `[code skip-lint]` to skip warnings if intended
2024-01-16 10:38:49 +01:00
Rémi Verschelde
a69e23b23b
Merge pull request #87216 from Calinou/editor-print-rich-handle-meta
Handle clickable `[url]` tags in `print_rich()` editor output log
2024-01-16 10:38:26 +01:00
Rémi Verschelde
c16facaa67
Merge pull request #87180 from 31/dev/31/animation-length-ex
Include `animation.length` in Animation example
2024-01-16 10:36:49 +01:00
Rémi Verschelde
3df0c5be6a
Merge pull request #86473 from reduz/audio-playback-parameters
Implement audio stream playback parameters.
2024-01-16 10:35:36 +01:00
Juan Linietsky
a40fe16866 Implement audio stream playback parameters.
Implements a way for audio stream playback to be configured via parameters
directly in the edited AudioStreamPlayer[2D/3D].

Currently, configuring the playback stream is not possible (or is sometimes hacky
as the user has to obtain the currently played stream, which is not always immediately available).

This PR only implements this new feature to control looping in stream playback instances (a commonly requested feature, which was lost in the transition from Godot 2 to Godot 3).
But the idea is that it can do a lot more:

* If effects are bundled to the stream, control per playback instance parameters such as cutoff or resoance, or any other exposed effect parameter per playback instance.
* For the upcoming interactive music PR (#64488), this exposes an easy way to change the active clip, which was not possible before.
* For the upcoming parametrizable audio support (https://github.com/godotengine/godot-proposals/issues/3394) this allows editing and animating audio graph parameters.

In any case, this PR is required to complete #64488.

Update modules/vorbis/audio_stream_ogg_vorbis.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update modules/minimp3/audio_stream_mp3.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update modules/minimp3/audio_stream_mp3.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update modules/vorbis/audio_stream_ogg_vorbis.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update doc/classes/AudioStream.xml

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2024-01-16 10:31:52 +01:00
Erik Johnson
498f46063d Add descpription for rendering/limits/spatial_indexer/threaded_cull_minimum_instances 2024-01-15 19:41:26 -05:00
DevPoodle
0bb744e555 Add descriptions to the remaining properties of RDPipelineDepthStencilState 2024-01-15 12:33:24 -08:00
Micky
61bdbdd9ee Replace some "uncommon" words in class reference 2024-01-15 18:51:52 +01:00
Micky
78574dd6a9 Overhaul NodePath documentation 2024-01-15 18:00:45 +01:00
Hugo Locurcio
cd3078e45b
makerst: Suggest using [code skip-lint] to skip warnings if intended 2024-01-15 15:09:21 +01:00
Hugo Locurcio
4a11d48420
Handle clickable [url] tags in print_rich() editor output log
Since this uses `OS.shell_open()`, this allows the use of any standard URL
including `file://` paths, `mailto:`, custom protocols set up by the user, etc.
2024-01-15 14:54:13 +01:00
Yuri Sizov
bba3c70722 Add code sample language parity check to make_rst.py 2024-01-15 14:38:04 +01:00
Rémi Verschelde
378b3ca3ba
Merge pull request #87011 from Mickeon/missing-description-primitive-mesh
Add missing descriptions to PrimitiveMesh and SoftBody3D
2024-01-15 13:26:38 +01:00
Rémi Verschelde
03767fbf3b
Merge pull request #86446 from reduz/transient-to-focused
Implement a `transient_to_focused` Window mode
2024-01-15 13:25:00 +01:00
31
698c67d540 Include animation.length in Animation example
The length of an Animation isn't automatically set by adding keys, and
it must be set manually. The existing example only has keys up to 0.5s,
so the default value of 1.0s may be acceptable. However, this results in
unexpected behavior for anyone who makes an animation longer than 1.0s.
Include animation.length in the example because it's important.

Also, increase the key position to 2.0s so it won't be confusing that
the assignment is somewhat redundant.
2024-01-14 10:29:02 -08:00
Juan Linietsky
15144c24bd Implement a transient_to_focused mode
This intends to be the correct way to handle non-child windows becoming covered by the current window when becoming focused.
Enabling this property on select windows, they will become transient to the currently focused one when becoming visible.

This deprecates the "unparent_when_invisible" function introduced by #76025.
2024-01-14 18:51:44 +01:00
Jakub Marcowski
06534f8ad5 Add deprecation notice to a duplicate method of class Window 2024-01-12 18:18:28 +01:00
Rémi Verschelde
bf4fb987e6
Merge pull request #87035 from Mickeon/deprecate-RenderingServer-has-feature
Deprecate RenderingServer's `has_feature` and Features enum
2024-01-11 17:41:50 +01:00
Rémi Verschelde
ea83a12ba2
Merge pull request #86968 from Mickeon/reduz-mystery-meat
Add class reference documentation for GDExtension & GDExtensionManager
2024-01-11 17:41:01 +01:00
Rémi Verschelde
cab27498bd
Merge pull request #86957 from RandomShaper/mt_mends
A couple of enhancements to user-visible threading semantics
2024-01-11 17:40:37 +01:00
Rémi Verschelde
880c12004b
Merge pull request #86881 from AThousandShips/gizmo_fix
[Editor] Add missing virtual bind to `EditorNode3DGizmo(Plugin)`
2024-01-11 17:39:48 +01:00
Rémi Verschelde
339a793fa2
Merge pull request #86639 from Mickeon/please-this-took-me-15-minutes-can-we-merge-it-before-2025
Fixing few reports to String's documentation
2024-01-11 17:38:35 +01:00
Rémi Verschelde
dc79e956b6
Merge pull request #86587 from RandomShaper/wtp_enhance
Enhance & fix `WorkerThreadPool`
2024-01-11 17:38:09 +01:00
Rémi Verschelde
50f68ed704
Merge pull request #84886 from Calinou/doc-window-resizable
Document changing the window's resizable status at runtime
2024-01-11 17:35:14 +01:00
Rémi Verschelde
f3fc35eb17
Merge pull request #81506 from twobitadder/reparent_keep_owner
Fix `reparent()` losing owner
2024-01-11 17:34:19 +01:00
mnemoli
a407219693 Add Viewport setting for picking only first-encountered CanvasItem physics object 2024-01-11 14:18:37 +00:00
Micky
c4d7d7c02e Add documentation for GDExtension & GDExtensionManager 2024-01-10 22:02:23 +01:00
Micky
63a08f2493 Deprecate RenderingServer's has_feature and Features enum 2024-01-10 12:26:04 +01:00
Micky
46b0f3e9d6 Fixing some reports to String's documentation
Closes https://github.com/godotengine/godot-docs/issues/8043
Closes https://github.com/godotengine/godot-docs/issues/8044
Mitigates https://github.com/godotengine/godot-docs/issues/8190
Closes https://github.com/godotengine/godot/issues/86734
2024-01-10 12:21:08 +01:00
Rémi Verschelde
3524346689
Merge pull request #87024 from jsjtxietian/CollisionPolygon2D-polygon
Mention `CollisionPolygon2D.polygon` is local to the given CollisionPolygon2D
2024-01-10 12:03:50 +01:00