Danil Alexeev
ba985ecf3f
Fix draw_multiline_colors()
for width < 0
2023-03-14 09:43:56 +03:00
Yuri Sizov
81e2b020ba
Prevent infinite loops when printing orphan nodes
2023-03-09 16:47:38 +01:00
Rémi Verschelde
0ef3d1bf56
Merge pull request #73188 from Sauermann/fix-inconsistent-viewport-size
...
Fix some ways to create inconsistent Viewport size states
2023-03-07 12:04:00 +01:00
Rémi Verschelde
0b98b470cc
Merge pull request #73716 from bruvzg/improve_locale_selection
...
Improve layout direction/locale automatic selection.
2023-03-06 10:57:56 +01:00
Rémi Verschelde
0885e4b931
Merge pull request #73365 from bruvzg/no_transient_children
...
Automatically reparent editor message dialogs to avoid error spam.
2023-03-02 11:41:17 +01:00
Fabio Alessandrelli
f9bcaccc11
[MP] Fix orphan StringName on close.
...
Use a static StringName for the registered default interface name.
2023-02-27 09:45:16 +01:00
bruvzg
82d7923c65
Improve layout direction/locale automatic selection.
2023-02-22 08:37:14 +02:00
bruvzg
921f3b7589
Automatically reparent editor message dialogs to avoid error spam.
2023-02-21 12:32:11 +02:00
kobewi
55b50703d7
Prevent off-screen controls in editor
2023-02-20 20:25:39 +01:00
bruvzg
7246b229e1
Set RTL minimal dash size to 2.0, add invalid dash size error to the draw_dashed_line
.
2023-02-17 08:53:08 +02:00
Rémi Verschelde
b90d70d592
Merge pull request #72764 from Sauermann/fix-color-picking
...
Fix Color Picking
2023-02-17 00:33:20 +01:00
bruvzg
4dfa161120
Add dash and step size checks to draw_dashed_line.
2023-02-16 17:49:18 +02:00
clayjohn
081b31d200
Clear Window before blitting Viewport in gl_compatibility renderer
2023-02-14 10:30:02 -08:00
Rémi Verschelde
830eff64a7
Merge pull request #68027 from ktxyz/window-on-top
...
Update sub_windows order with respect to FLAG_ALWAYS_ON_TOP
2023-02-14 13:40:24 +01:00
Thomas ten Cate
8a17f94ab2
Some fixes for initial window position and size
...
- X11: set main window position and size hints correctly
- All platforms: update minimum and maximum size of main window at
startup
Fixes #70984
2023-02-14 12:15:14 +01:00
bruvzg
a000c64eea
Cleanup Window callbacks before destroying in to avoid callback calls with invalid object.
2023-02-13 20:39:17 +02:00
Markus Sauermann
34a7fc7447
Fix some ways to create inconsistent Viewport sizes
...
In the editor, it was possible to set the size of a `SubViewport` even
in cases where a parent `SubViewportContainer` had stretch enabled.
This PR disables editing a `SubViewport.size` while the parent disallows
it and it makes necessary adjustments during `NOTIFICATION_ENTER_TREE`.
2023-02-13 08:19:00 +01:00
Rémi Verschelde
ab2952580c
Merge pull request #73040 from Rindbee/popup_centered_consider_current_size
...
Calling popup_center* with the default size will use the current size
2023-02-11 14:37:54 +01:00
Rindbee
593598c592
Calling popup_center* with the default size will use the current size
2023-02-11 18:53:53 +08:00
Rémi Verschelde
97afa41da3
Merge pull request #73000 from Sauermann/fix-editor-viewport-size-zero-crash
...
Fix crash in editor when setting `SubViewport.size` to zero
2023-02-10 15:06:57 +01:00
Markus Sauermann
5bb66d3cfb
Fix scene reload crash caused by mouse cursor update
...
After a scene reload a mouse cursor updates is performed via a
InputEventMouseMotion, that is exposed to the user.
The state of Input is however not adjusted to this InputEventMouseMotion
which can lead to inconsistencies.
This PR makes sure, that it is not exposed to the user.
It utilizes the method of Viewport::_process_picking for marking
events that are not sent to the user, so that this function doesn't
need to be changed.
2023-02-10 01:16:23 +01:00
Markus Sauermann
d249370cd7
Fix crash in editor when setting SubViewport.size
to zero
...
`Viewport::_set_size` now verifies, that the minimum size is at least 2x2.
Also fix `RendererViewport::viewport_set_size` fail condition.
2023-02-10 00:25:45 +01:00
Markus Sauermann
88f4e5cc94
Fix that popup_centered
didn't take the window's size into consideration
2023-02-09 22:05:39 +01:00
Markus Sauermann
888add8418
Fix Color Picking
...
With the 4.x-introduction of Windows the previous method for
color picking was no longer working.
This PR uses the following approach to reintroduce color-picking.
When the Color-Picking-Button is pressed, a quasi-screenshot of the
Window-content is created and displayed in a new Popup-Window.
This new Window allows selecting colors by Mouse-Click.
A Preview of the targeted Color is also displayed.
2023-02-09 01:00:54 +01:00
Danil Alexeev
b8eda519d0
Optimize draw_dashed_line()
and draw_rect()
2023-02-08 10:44:12 +03:00
Rémi Verschelde
929333fe26
Merge pull request #62179 from Rindbee/fix-popup_center-off-center
...
Use min_size/max_size to limit window size and position while popup center
2023-02-07 16:30:41 +01:00
Rémi Verschelde
743e26d4f9
Merge pull request #72829 from Sauermann/fix-code-simplifications
...
Some code simplifications
2023-02-07 16:30:22 +01:00
Markus Sauermann
826e54fa73
Some code simplifications
...
1. `number_width` isn't used later
2. `return_type` is used only once
3. AudioServer::get_singleton()->get_channel_count() always returns a channel_count of 1 or larger
4. negative `aa->backward` conditional
5. `current_canvas` == `find_world_2d()->get_canvas()`
6. identical if `render_shadows`
2023-02-07 14:30:16 +01:00
Rindbee
c73844f117
Use min_size/max_size to limit the window size and the position while popup center
2023-02-07 21:28:26 +08:00
Markus Sauermann
5312d83f3b
Fix Viewport::get_mouse_position for SubViewports
...
SubViewports don't have a cached mouse position available.
This PR calculates the mouse position from the screen position of
the mouse cursor.
2023-02-07 13:54:47 +01:00
Rémi Verschelde
cd0f1e9b10
Merge pull request #72740 from Sauermann/fix-event-device-id
...
Fix mouse/drag/touch InputEvents having no device id
2023-02-06 23:51:26 +01:00
Markus Sauermann
8748f4dcaa
Fix mouse/drag/touch InputEvents having no device id
...
Some internally created emulated/instantiated events didn't have a
device id. This PR sets for these cases a device id.
Also rename `DEVICE_ID_TOUCH_MOUSE` to the more generic
`DEVICE_ID_EMULATION`.
2023-02-06 22:49:42 +01:00
Markus Sauermann
262d84fa90
Fix MOUSE_FILTER_STOP not affecting emulated mouse events
...
Touch and Drag events are now stopped by MOUSE_FILTER_STOP
2023-02-06 22:31:03 +01:00
Rémi Verschelde
82ff7b4bce
Merge pull request #68492 from Sauermann/fix-picking-sort
...
Fix propagation order for 2D physics picking events
2023-02-06 15:38:38 +01:00
Markus Sauermann
6e855e3820
Fix propagation order for 2D physics picking events
...
This patch adds a viewport-configuration-option for sorting
physics-picking events by the Z-Index and the scene tree position
of the collision objects.
2023-02-04 22:44:36 +01:00
kobewi
7331750618
Fix Camera2D crash due to ParallaxBackground node
2023-02-03 15:36:08 +01:00
Markus Sauermann
e3e9da78e8
Remove Viewport::_get_input_pre_xform
...
This function is only relevant for `Window`. So this PR moves
the functionality to the `Window`-class.
2023-02-02 22:03:52 +01:00
Rémi Verschelde
a16b0fec40
Merge pull request #72618 from Sauermann/fix-simplify-set-size
...
Simplify Viewport::_set_size
2023-02-02 21:05:51 +01:00
Markus Sauermann
6743ac34d3
Simplify Viewport::_set_size
...
`Viewport.to_screen_rect` is used only in a single location to compare it
to `Rect2i()`.
When called from `SubViewport`, `to_screen_rect` is always equal to `Rect2i()`.
When called from `Window`, `to_screen_rect` is always different from `Rect2i()`.
So the comparison `to_screen_rect != Rect2i()` can be replaced by
`Object::cast_to<Window>(this)`.
This allows the removal of `Viewport.to_screen_rect` and the simplification of
`Viewport::_set_size`.
2023-02-02 19:09:14 +01:00
Markus Sauermann
3bc426c9d8
Fix toplevel nomenclature
...
toplevel was 3.x
top_level is 4.x
2023-02-02 17:37:41 +01:00
kobewi
724d6581d6
Fix Camera2D crashes
2023-02-01 23:49:02 +01:00
Rémi Verschelde
e52213e2fa
More codespell fixes, do more changes from previous ignore list
2023-02-01 12:11:36 +01:00
Rémi Verschelde
2852d5e613
Merge pull request #67331 from Sauermann/fix-subviewport-no-stretch-update
...
Fix stretch transform when resizing SubViewports
2023-02-01 11:10:01 +01:00
Rémi Verschelde
f7397a5ac6
Merge pull request #58610 from Sauermann/fix-physics-mouse
...
Fix execution of physics picking events at unexpected times
2023-02-01 09:41:43 +01:00
Rémi Verschelde
394bb0ee2b
Fix various typos with codespell
...
Finally do the childs -> children rename too.
2023-02-01 08:45:41 +01:00
Markus Sauermann
8182f29d40
Fix stretch transform when resizing SubViewports
...
Move calculation of stretch transform from outside to inside
of `Viewport::_set_size` function.
2023-02-01 08:34:40 +01:00
Rémi Verschelde
d9ade633b3
Merge pull request #71936 from akien-mga/remove-some-unused-signals
...
Remove some unused signals
2023-02-01 07:53:52 +01:00
Rémi Verschelde
e8240031e7
Merge pull request #71479 from raulsntos/virtual-return-type
...
Use enum instead of int in virtual methods return type
2023-02-01 07:45:28 +01:00
Rémi Verschelde
51414fc987
Merge pull request #66906 from Sauermann/fix-prohibit-inconsistent-size-state
...
Prohibit inconsistent size state for SubViewport
2023-02-01 07:26:00 +01:00
Markus Sauermann
decbda68d7
Prohibit inconsistent size state for SubViewport
...
Prohibit size changes of SubViewports with parent SubViewportContainers that have stretch mode enabled.
2023-01-31 22:53:43 +01:00
Raul Santos
9e9eac4676
Use enum instead of int in virtual methods return type
2023-01-31 19:06:49 +01:00
Rémi Verschelde
14a4408e02
Merge pull request #65698 from KoBeWi/cameraman
...
Rework how current Camera2D is determined
2023-01-31 18:56:20 +01:00
Rémi Verschelde
b342dcdf04
Remove some unused signals
...
Part of #37604 .
2023-01-31 18:54:04 +01:00
Rémi Verschelde
2b710bc336
Fix MSVC shadow local warning
2023-01-31 18:06:21 +01:00
Rémi Verschelde
1c42e141d0
Merge pull request #59310 from Sauermann/proposal-event-transform
...
Calculate window input event transform only on window change
2023-01-31 15:57:07 +01:00
Rémi Verschelde
4cfdd25384
Merge pull request #67507 from Sauermann/fix-toplevel-root-control-node
...
Fix event propagation to child after set_as_toplevel
2023-01-31 15:55:46 +01:00
Rémi Verschelde
bde3310f02
Merge pull request #71995 from Faless/net/4.x_tls_verify
...
[NET] Refactor TLS configuration.
2023-01-30 13:28:31 +01:00
Rémi Verschelde
2e0d9efb72
Merge pull request #72115 from AThousandShips/clip_children_fix
...
Hide `clip_children` for some non-drawn CanvasItems
2023-01-30 10:02:54 +01:00
Ninni Pipping
bbf203bc32
Hide clip_children for non-drawn CanvasItems
2023-01-30 08:22:06 +01:00
Hugo Locurcio
9f026d5274
Fix Editor Description tooltip not changing until scene is reopened
...
You still need to select another node to see the tooltip updated first,
but you no longer need to save and reopen the scene to view the updated
tooltip.
2023-01-30 00:18:13 +01:00
Fabio Alessandrelli
adba870534
[NET] Refactor TLS configuration.
...
Use a TLSOptions configuration object which is created via static
functions.
- "TLSOptions.client": uses the standard CA and common name verification.
- "TLSOptions.client_unsafe": uses optional CA verification (i.e. if specified)
- "TLSOptions.server": is the standard server configuration (chain + key)
This will allow us to expand the TLS configuration options to include
e.g. mutual authentication without bloating the classes that uses
StreamPeerTLS and PacketPeerDTLS as underlying peers.
2023-01-28 11:08:02 +01:00
Rémi Verschelde
aae96945fa
Merge pull request #71470 from YeldhamDev/window_fixes
...
Fix some small bugs in the `Window` node
2023-01-27 19:26:31 +01:00
Markus Sauermann
b15a3ea3a4
Added assertion check
2023-01-26 16:10:32 +01:00
Rémi Verschelde
058c61b5b3
Merge pull request #68007 from Sauermann/fix-3d-capture
...
Fix event-content and mouse-signals with 3D-capture-on-drag
2023-01-26 16:00:26 +01:00
Rémi Verschelde
13e20fed99
Merge pull request #68627 from Sauermann/fix-tooltip-position
...
Fix position of Tooltips
2023-01-26 16:00:14 +01:00
Markus Sauermann
83fa14a5a9
Include the Window-transform into Viewport::get_final_transform
2023-01-26 15:30:44 +01:00
Markus Sauermann
c4ed247f5f
Fix position of Tooltips
...
CanvasItem::get_screen_transform returns a transform from the CanvasItem
to the coordinate system, where a Popup - created as a child of the
CanvasItem - should be opened.
get_screen_transform makes some simplifications, that work well, when used
in the editor, but not in general cases.
Since Popups like Tooltips are now used more commonly in projects,
it becomes necessary to correct these simplifications.
This solution introduces Viewport::get_popup_base_transform, which makes
the necessary calculations.
2023-01-26 15:15:14 +01:00
Aaron Franke
2bc0bcbd26
PropertyUsage: Rename "DO_NOT_SHARE_ON_DUPLICATE" to "ALWAYS_DUPLICATE"
2023-01-24 16:05:07 -06:00
Yuri Sizov
fab9926a95
Merge pull request #65137 from dalexeev/editor-naming
...
Rearrange `editor/naming/*` project settings
2023-01-24 22:26:03 +03:00
Rémi Verschelde
11e2278844
Merge pull request #57606 from SaracenOne/update_on_reimport
...
Update instances of scenes which have been reimported.
2023-01-23 15:35:44 +01:00
Rémi Verschelde
5b1df48c6c
Convert en_GB spelling to en_US with codespell
2023-01-23 11:02:20 +01:00
Rémi Verschelde
cd031fd31a
Merge pull request #71663 from bruvzg/init_pos_x
...
Reorganize main and sub-window initial position properties.
2023-01-22 11:25:58 +01:00
Rémi Verschelde
229c82690d
Merge pull request #70294 from KoBeWi/treedulate
...
Add a method to get global modulate
2023-01-21 20:51:42 +01:00
Rémi Verschelde
7b622ce6e8
Merge pull request #71021 from reduz/prevent-physics-callback-removal
...
Error when removing a physics node during a physics callback
2023-01-21 11:28:02 +01:00
Rémi Verschelde
a83093fa80
Merge pull request #71692 from HalcyonGarside/viewport-debug-draw-fix
...
Fix incorrect Viewport Debug Draw effects
2023-01-20 08:49:21 +01:00
Rémi Verschelde
9fc40123ab
Merge pull request #71679 from kleonc/draw_polyline_line_strip
...
`CanvasItem::draw_polyline` Support thin polylines drawn using line strip
2023-01-20 08:48:56 +01:00
Rémi Verschelde
360b61084a
Merge pull request #41239 from dalexeev/fix_draw_rect
...
Fix `CanvasItem.draw_rect` function with `filled = false`
2023-01-19 22:49:23 +01:00
HalcyonGarside
ef35c4002c
Add 'Lighting' to list of Debug Draw viewport options
2023-01-19 15:23:59 -05:00
kleonc
728c51e362
CanvasItem::draw_polyline Support thin polylines drawn using line strip
2023-01-19 21:08:25 +01:00
bruvzg
aade5abd4f
Reorganize main and sub-window initial position properties.
2023-01-19 13:44:06 +02:00
Michael Alexsander
52b077ca28
Fix some small bugs in the Window
node
2023-01-18 21:20:49 -03:00
Rémi Verschelde
2050f59e3a
Merge pull request #71623 from kleonc/draw_arc_clamp_to_single_circle
...
`CanvasItem::draw_arc` Clamp angle difference so arc won't overlap itself
2023-01-18 22:28:24 +01:00
kleonc
43fc483e6c
CanvasItem::draw_arc Clamp angle difference so arc won't overlap itself
2023-01-18 15:16:22 +01:00
Mai Lavelle
a058cedb53
Fix crash on touch release
2023-01-17 19:12:55 -05:00
Danil Alexeev
c046bb8389
Fix CanvasItem.draw_rect
function with filled = false
2023-01-17 09:15:47 +03:00
SaracenOne
4628736894
Update instances of scenes which have been reimported.
2023-01-16 13:46:33 -08:00
Rémi Verschelde
ae3ca04aba
Merge pull request #69598 from Sauermann/fix-focus-inverse
...
Calculate the mouse focus inverse transform only when needed
2023-01-16 22:11:23 +01:00
Rémi Verschelde
47689c7d51
Merge pull request #71502 from bruvzg/tooltip_clickthrough
...
Add `WINDOW_FLAG_MOUSE_PASSTHROUGH` flag and enabled it for tooltips.
2023-01-16 12:48:45 +01:00
Danil Alexeev
a8cbb6245b
Fix scaling issue in draw_line
and similar methods
2023-01-16 12:49:58 +03:00
bruvzg
34b34b104c
Add WINDOW_FLAG_MOUSE_PASSTHROUGH
flag and enabled it for tooltips. Expose window_set_mouse_passthrough
to Window
.
2023-01-16 11:42:49 +02:00
Rémi Verschelde
55bf948fe7
Fix change_scene memory leak due to duplicate instantiation
...
Regression from #71105 .
Fixes #71363 .
2023-01-15 14:05:15 +01:00
bruvzg
9b2843f14f
Improve dashed line alignment and make it optional.
2023-01-13 10:30:12 +02:00
Rémi Verschelde
f79c58aac5
Merge pull request #71209 from bruvzg/ed_progress_reparent
...
Automatically reparent editor progress dialog to avoid error spam.
2023-01-13 00:29:48 +01:00
Danil Alexeev
8f706be6fa
Rearrange editor/naming/*
project settings
2023-01-12 11:41:13 +03:00
Rémi Verschelde
baae87e307
Merge pull request #71105 from reduz/unload-current-scene
...
Add SceneTree.unload_current_scene()
2023-01-11 09:46:33 +01:00
bruvzg
19293d1813
Automatically reparent editor progress dialog to avoid error spam.
2023-01-11 10:13:21 +02:00
Juan Linietsky
e5f2c442c7
Add SceneTree.unload_current_scene()
...
Provides an obvious way to unload the currently loaded scene (which is nowhere to be found in the docs).
The SceneTree.change_scene_to() method must now always provide a valid PackedScene.
Fixes #63565 .
2023-01-10 14:02:06 +01:00
bruvzg
ca8b762797
Add Node::get_window() method.
2023-01-10 11:10:46 +02:00
Rémi Verschelde
dce8cdbca8
Merge pull request #70863 from bruvzg/win_init_min
...
Set main window min. size via Window object instead of DisplayServer to preserve it during window updates.
2023-01-09 23:08:52 +01:00
Markus Sauermann
0d6d5e6421
Calculate the mouse focus inverse transform only when needed
...
Revival of #49158
Co-authored-by: Marcel Admiraal <madmiraal@users.noreply.github.com>
2023-01-09 21:35:38 +01:00
Yuri Sizov
0ca5a72e90
Clarify some parent item checks in CanvasItem
2023-01-09 19:59:55 +03:00
Juan Linietsky
2b815df3c1
Use BitField<> in core type masks
...
* All core types masks are now correctly marked as bitfields.
* The enum hacks in MouseButtonMask and many other types are gone. This ensures that binders to other languages non C++ can actually implement type safe bitmasks.
* Most bitmask operations replaced by functions in BitField<>
* Key is still a problem because its enum and mask at the same time. While it kind of works in C++, this most likely can't be implemented safely in other languages and will have to be changed at some point. Mostly left as-is.
* Documentation and API dump updated to reflect bitfields in core types.
2023-01-08 22:17:40 +01:00
Rémi Verschelde
d642274f75
Merge pull request #70939 from bruvzg/win_screen_2
...
Add support for the custom initial screen for the main window, fix primary screen detection.
2023-01-07 13:21:36 +01:00
Rémi Verschelde
3579d7a9f7
Merge pull request #36301 from KoBeWi/daddy_node
...
Add reparent methods to Node
2023-01-07 13:20:56 +01:00
Juan Linietsky
398e73c689
Error when removing a phycics node during a physics callback
...
* This behavior is not allowed, the error text suggests using call_deferred().
* Added a check in Node::remove_child to prevent future crashes of this type.
* Fixed a performance regression introduced by #36244 .
Fixes #63718 , probably other crashes too.
2023-01-07 12:57:24 +01:00
bruvzg
2718a7b7d3
Add support for the custom initial screen for the main window, fix primary screen detection.
2023-01-07 11:14:35 +02:00
Rémi Verschelde
163f6f5fe8
Merge pull request #68429 from KoBeWi/PropertySettings
...
Add PropertyInfo overload for GLOBAL_DEF
2023-01-06 22:59:29 +01:00
Rémi Verschelde
d95794ec8a
One Copyright Update to rule them all
...
As many open source projects have started doing it, we're removing the
current year from the copyright notice, so that we don't need to bump
it every year.
It seems like only the first year of publication is technically
relevant for copyright notices, and even that seems to be something
that many companies stopped listing altogether (in a version controlled
codebase, the commits are a much better source of date of publication
than a hardcoded copyright statement).
We also now list Godot Engine contributors first as we're collectively
the current maintainers of the project, and we clarify that the
"exclusive" copyright of the co-founders covers the timespan before
opensourcing (their further contributions are included as part of Godot
Engine contributors).
Also fixed "cf." Frenchism - it's meant as "refer to / see".
2023-01-05 13:25:55 +01:00
Rémi Verschelde
8791e333da
Merge pull request #70624 from bruvzg/cur_sc
...
Improve `window_set_current_screen` and fix secondary window initial mode and positions.
2023-01-03 15:56:05 +01:00
bruvzg
06551dfa3a
Set main window min. size via Window object instead of DisplayServer to preserve it during window updates.
2023-01-03 09:25:45 +02:00
Adam Scott
ea33001b95
Add safety-checks before some servers free()
2022-12-29 16:23:38 -05:00
bruvzg
f7955633de
Improve window_set_current_screen
and fix secondary window initial mode and positions.
2022-12-29 09:43:39 +02:00
Aaron Franke
3161647dab
Fix CanvasItem Z-index referring to Node2D
2022-12-19 20:59:14 -06:00
Rémi Verschelde
adc1096b19
Merge pull request #70219 from bruvzg/msdf_outline_scaling
...
Scale MSDF font outline with the font size and MSDF source size to match dynamic font behavior.
2022-12-19 16:26:56 +01:00
Rémi Verschelde
f29f3db419
Merge pull request #59682 from Sauermann/fix-following-viewport-transform
...
Include the follow-viewport-transform into CanvasLayer transform calculations
2022-12-19 16:26:19 +01:00
kobewi
32b0770a73
Add a method to get global modulate
2022-12-19 11:51:37 +01:00
Markus Sauermann
2da2220da7
Include the following-viewport-transform into CanvasLayer transforms
...
The following-viewport-transform was missing from several calculations
2022-12-18 22:44:34 +01:00
bruvzg
20d9457f9d
Scale MSDF font outline with the font size and MSDF source size to match dynamic font behavior.
2022-12-17 22:47:54 +02:00
Rémi Verschelde
a1f481a7d6
Merge pull request #70202 from Calinou/viewport-transparent-background-rename-project-setting
...
Move transparent background project setting to a subsection
2022-12-17 20:56:19 +01:00
Hugo Locurcio
a3eac5fc7c
Move transparent background project setting to a subsection
...
This prevents the project setting from being located directly within
a root category, which is confusing from an UX perspective in the
project settings editor.
2022-12-17 18:45:21 +01:00
Rémi Verschelde
8be126272f
Merge pull request #70075 from Sauermann/fix-missing-shortcut-handled-check
...
Fix missing check if shortcut event is handled for Control-nodes
2022-12-16 13:47:39 +01:00
Haoyu Qiu
e173710963
Fix possible Tween leak on exit
2022-12-15 19:09:09 +08:00
Markus Sauermann
57ff04278b
Fix missing check if shortcut event is handled for Control-nodes
...
Control-nodes without a shortcut-context were missing a check if
the event was handled, so that a single shortcut-event was passed to
multiple Control-nodes.
2022-12-14 22:22:24 +01:00
Rémi Verschelde
f1edd03d4c
Merge pull request #69718 from groud/finally_rename_gdnative_to_gdextension
...
Rename all gdnative occurences to gdextension
2022-12-12 11:43:59 +01:00
Gilles Roudière
be1c9d677d
Rename all gdnative occurences to gdextension
...
Non-exhaustive list of case-sensitive renames:
GDExtension -> GDNative
GDNATIVE -> GDEXTENSION
gdextension -> gdnative
ExtensionExtension ->Extension (for where there was GDNativeExtension)
EXTENSION_EXTENSION ->EXTENSION (for where there was GDNATIVE_EXTENSION)
gdnlib -> gdextension
gdn_interface -> gde_interface
gdni -> gde_interface
2022-12-12 11:04:57 +01:00
kobewi
7c6b659bd7
Add PropertyInfo overload for GLOBAL_DEF
2022-12-11 21:36:48 +01:00
Yuri Sizov
29cc86fa6c
Copy local theme overrides from Control to Window
2022-12-07 20:50:51 +03:00
bruvzg
edf13eb5a6
Rename window_get_real_size
to window_get_size_with_decorations
, add window_get_position_with_decorations
.
2022-12-07 11:07:30 +02:00
kobewi
7e2a8afb57
Rework how current Camera2D is determined
2022-12-02 00:05:02 +01:00
Fredia Huya-Kouadio
3ff7dd2aa4
Fix routing of InputEventScreenDrag events to Control nodes
2022-11-30 14:06:41 -08:00
Hendrik Brucker
e84f45fc93
Move z_index, z_as_relative and y_sort_enabled from Node2D to CanvasItem
2022-11-29 17:11:22 +01:00
Rémi Verschelde
ef090ee6ea
Merge pull request #68874 from TokageItLab/fix-unique-path-keying
...
Added option to `get_path_to()` to get the shortest path considering unique name
2022-11-28 14:49:34 +01:00
Rémi Verschelde
f4faa507d4
Merge pull request #68836 from Calinou/projectsettings-vrs-texture-allow-more-formats
...
Allow all lossless image formats to be used for VRS texture project setting
2022-11-28 08:38:08 +01:00
Rémi Verschelde
438b2e2d02
Merge pull request #59801 from Sauermann/fix-node2d-viewport-root-order
...
Fix Viewport root order after Node2D raise
2022-11-28 08:21:10 +01:00
Rémi Verschelde
88e6e1e51c
Revert "SceneTree
Fix storing removed nodes to be skipped by the group calls"
2022-11-27 13:42:24 +01:00
Rémi Verschelde
986a4279fa
Merge pull request #68447 from Grimmr/clean-tooltips-on-WM-focus-off
...
Viewport cancels existing tooltip when window looses focus
2022-11-25 14:04:40 +01:00
grimmr
aa9b5b917f
Viewport cancels existing tooltip when window looses focus
...
fixes #68197
when NOTIFICATION_WM_WINDOW_FOCUS_OUT is recieved by a viewport it will now call
_gui_cancel_tooltip() to avoid it hanging around after the mouse events stop
coming in
2022-11-25 09:44:04 +00:00
Rémi Verschelde
d7e3fce995
Merge pull request #68566 from Mickeon/node-print-orphans-static
...
Make `Node.print_orphan_nodes()` static
2022-11-24 18:55:30 +01:00
Rémi Verschelde
885fc1f3e7
Merge pull request #68568 from Mickeon/node-parent-busy-error
...
Update "Parent node is busy" errors to use `Callable.call_deferred()`
2022-11-23 23:11:06 +01:00
Micky
c6a355b9e8
Update "Parent node is busy" errors to use Callable.call_deferred()
...
Also fixes outdated method names in the messages.
2022-11-23 17:39:34 +01:00
Markus Sauermann
f8df18ef47
Fix CanvasTransform on RenderingServer when Viewport enters Tree
...
Previously the Viewport didn't initialize its canvas transform in the
RenderingServer.
2022-11-22 23:04:23 +01:00
Fabio Alessandrelli
145f07c037
[Net] Fix HTTPRequest gzip with high compression ratio.
...
Decompress each body chunk over multiple iterations, this causes more
reallocations, but it ensures decompression will not fail no matter the
compression ratio.
2022-11-20 22:41:14 +01:00
Silc Renew
b9d1550590
Add option to get_path_to() to get the shortest path with unique name
2022-11-19 15:06:25 +09:00
Hugo Locurcio
4b13093251
Allow all lossless image formats to be used for VRS texture project setting
...
WebP can also be lossy, but the class reference now warns about the
requirement to use a lossless format for the VRS texture to work correctly.
2022-11-18 22:21:28 +01:00
Uxeron
721e51ac28
Fixed _get_drag_data getting incorrect position on scaled controls
2022-11-18 19:10:57 +02:00
Rémi Verschelde
6d2a7cb46d
Merge pull request #68709 from MewPurPur/instance-begone-part3
...
Remove more instances of 'instance' being used as a verb
2022-11-16 14:41:42 +01:00
VolTer
3b4f5f8a04
Remove more instances of 'instance' being used as a verb
2022-11-16 14:01:53 +01:00
Haoyu Qiu
3b08d0e852
Fix crash of queue_free() when main loop is not SceneTree
2022-11-15 08:25:25 +08:00
Rémi Verschelde
03f30855d1
Merge pull request #67831 from kleonc/scene-tree-fix-storing-removed-nodes
...
`SceneTree` Fix storing removed nodes to be skipped by the group calls
2022-11-14 23:27:41 +01:00
Rémi Verschelde
0dbb632116
Merge pull request #68564 from Mickeon/node-no-remove-group-error
...
Strip ERR_FAIL from `Node.remove_from_group()`
2022-11-14 23:24:14 +01:00
Markus Sauermann
3b14f0334c
Remove redundant Variant-types initializations
2022-11-14 19:35:19 +01:00
Rémi Verschelde
d639bb87a7
Merge pull request #68272 from Sauermann/fix-windowfocus-on-resize
...
Fix Windowfocus on resizing
2022-11-14 16:38:00 +01:00
Markus Sauermann
5cf6ebce63
Drop physics mouseover as soon as the mouse moves over a Control
2022-11-14 12:07:26 +01:00
Micky
a1c10dbbd8
Strip ERR_FAIL from Node.remove_from_group()
...
Also simplifies group check removing unnecessary `!data.grouped.has`
2022-11-13 00:01:18 +01:00
Micky
9b42268467
Make Node.print_orphan_nodes()
static
2022-11-12 17:55:42 +01:00
Rémi Verschelde
5c7af7f391
Merge pull request #68418 from Sauermann/fix-escape-dnd
...
Allow canceling Drag and Drop with the Escape-Key
2022-11-11 16:49:09 +01:00
Markus Sauermann
226044b944
Allow canceling Drag and Drop with the Escape-Key
...
This patch implements the functionality to cancel Drag and Drop
by using the escape key or more general, the ui_cancel action.
Since this would be the third location, where the finalization of
Drag and Drop would have to be implemented, that functionality was
put into the private function _perform_drop.
Simplified gui.drag_data.get_type() != Variant::NIL to gui.dragging
because they are equivalent.
2022-11-08 19:10:16 +01:00
ktxyz
7601808455
Update sub_windows order with respect to FLAG_ALWAYS_ON_TOP
2022-11-08 13:20:45 +01:00
Markus Sauermann
7445ab95fc
Fix SubViewport with default size being pink
...
A SubViewport with default-size doesn't display its content, but shows
pink color, until it is resized.
This patch makes sure, that the size gets set during initialization.
2022-11-07 09:23:32 +01:00
Markus Sauermann
65647e9c7d
Fix Windowfocus on resizing
...
When resizing a non-focused window, the previously focused
Window got resized.
This patch grabs focus for the actually resized window, before
starting with the resizing.
2022-11-04 22:24:00 +01:00
Rémi Verschelde
d4bf7f4458
Fixup Clang -Wtype-limits warnings introduced by #52350
2022-11-02 22:36:01 +01:00
Markus Sauermann
022d24a9ae
Fix Viewport root order after Node2D raise
2022-11-02 21:45:00 +01:00
Rémi Verschelde
30e4e7c083
Merge pull request #67917 from Faless/mp/4.x_auth
...
[MP] Add peer authentication support to the default MultiplayerAPI.
2022-11-02 18:53:38 +01:00
Rémi Verschelde
604abb434f
Merge pull request #52350 from BimDav/viewport_canvas_cull
...
Added Viewport canvas cull mask feature
2022-11-02 17:14:24 +01:00
Fabio Alessandrelli
33dda2e68a
[MP] Remove connection state signals from MultiplayerPeer.
...
Now handled directly by the MultiplayerAPI implementation.
2022-11-02 15:17:23 +01:00
Rémi Verschelde
ad0349c0e3
Merge pull request #59479 from Sauermann/fix-rootorder-on-layerchange
...
Update root order on layer change
2022-11-02 14:20:24 +01:00
Fabio Alessandrelli
0a0e99cadc
Merge pull request #67982 from Faless/mp/4.x_disconnect_close
...
[MP] Add MultiplayerPeer disconnect_peer, close.
2022-11-01 20:35:04 +01:00
BimDav
fcb9be66a2
Viewport canvas cull mask feature
...
Co-authored-by: Valentin Zagura <puthre@gmail.com>
2022-10-31 14:09:49 +01:00
Rémi Verschelde
5947f22be9
Merge pull request #67578 from KoBeWi/GEDITOR
...
Unify usage of GLOBAL/EDITOR_GET
2022-10-31 13:15:58 +01:00
Rémi Verschelde
71a6aba3d7
Merge pull request #67710 from KoBeWi/a_bit_local_global_transform
...
Remove error condition from get_global_transform()
2022-10-31 11:59:08 +01:00
Rémi Verschelde
be126d42d4
Merge pull request #67588 from KoBeWi/if(!GDVIRTUAL_CALL)don't
...
Simplify GDVIRTUAL_CALL calls
2022-10-31 11:55:56 +01:00
Rémi Verschelde
dcd86f9848
Merge pull request #67046 from Cykyrios/fix-invalid-tooltip-position
...
Fix invalid tooltip position
2022-10-31 11:05:19 +01:00
Rémi Verschelde
420eb1aa34
Merge pull request #67445 from Zylann/rename_queue_delete
...
Rename queue_delete => queue_free
2022-10-31 10:51:18 +01:00
Rémi Verschelde
32548f9608
Merge pull request #67467 from timothyqiu/who-ami-i
...
Fix get_path() error when calling get_node()
2022-10-31 10:33:51 +01:00
Markus Sauermann
35956d9128
Fix event-content and mouse-signals with 3D-capture-on-drag
...
Fix for 3D-physics processing:
- with enabled input_capture_on_drag now report correct position and
normals in _input_event
- mouse_enter and mouse_exit signals are emitted when the mouse cursor
leaves the visible area of the 3D-object, independently of pressed mouse
button or input_capture_on_drag
- make sure that collision input events are sent in the right order with
respect to mouse_enter and mouse_exit signals
2022-10-29 12:59:46 +02:00
Fabio Alessandrelli
39f3d9d59e
[MP] Add MultiplayerPeer disconnect_peer, close.
...
Update ENet, WebRTC, and WebSocket to support peer disconnection and
unify the close function.
2022-10-28 21:18:01 +02:00
Micky
0e0a233859
Fix spacing of few PROPERTY_HINT_ENUM hint_strings
2022-10-28 14:51:26 +02:00
Clay John
8fd92ed867
Merge pull request #64710 from MinusKube/window-size-crash
...
Prevent windows from having a size greater than device limit
2022-10-27 10:02:44 -07:00
Clay John
e1caa8797b
Merge pull request #67043 from clayjohn/clip_children
...
Improve behaviour of clip_children by clipping to parent alpha value but still retaining parent color
2022-10-27 09:59:27 -07:00
Clay John
2f2c138b44
Merge pull request #67926 from Rindbee/fix_call_shortcut_input
...
Fix calling `_call_shortcut_input` on a node that has been removed
2022-10-27 09:56:55 -07:00
Clay John
d1cc93af89
Merge pull request #67832 from Sauermann/fix-remove-unnecessary-casts
...
Remove unnecessary casts
2022-10-27 09:47:34 -07:00
Fabio Alessandrelli
7536d15fe3
[MP] Let MultiplayerAPI handle packet relaying and peer signaling.
...
MultiplayerPeer changes:
- Adds is_server_relay_supported virtual method
Informs the upper MultiplayerAPI layer if it can signal peers connected
to the server to other clients, and perform packet relaying among them.
- Adds get_packet_channel and get_packet_mode virtual methods
Allows the MultiplayerAPI to retrieve the channel and transfer modes to
use when relaying the last received packet.
SceneMultiplayerPeer changes:
- Implement peer signaling and packet relaying when the MultiplayerPeer
advertise they are supported.
ENet, WebRTC, WebSocket changes:
- Removed custom code for relaying from WebSocket and ENet, and let it
be handled by the upper layer.
- Update WebRTC to split create_client, create_server, and create_mesh,
with the latter behaving like the old initialize with
"server_compatibility = false", and the first two supporting the upper
layer relaying protocol.
2022-10-27 18:08:58 +02:00
Rindbee
c77349ecb7
Fix calling _call_shortcut_input
on a node that has been removed
...
Nodes may have been deleted by shortcuts. For example, when switching
scenes with `Ctrl` + `Tab` / `Ctrl` + `Shift` + `Tab`, some controls
will be deleted and recreated.
2022-10-27 14:05:51 +08:00
Marc Gilleron
7543a5e014
Rename queue_delete => queue_free
...
# Conflicts:
# editor/plugins/tiles/tiles_editor_plugin.cpp
2022-10-24 22:07:02 +01:00
kleonc
471f2da9b6
SceneTree
Fix storing removed nodes to be skipped by the group calls
2022-10-24 21:38:19 +02:00
Markus Sauermann
5ee449efec
Remove unnecessary casts
...
button_add_item and button_add are both Button
p_parent is a Node3D
CanvasItem can never be cast to Viewport
2022-10-24 15:59:18 +02:00
kobewi
2ff676a696
Remove error condition from get_global_transform()
2022-10-21 14:52:43 +02:00
kobewi
4efa851d7f
Add methods to get target filter and repeat
2022-10-19 14:41:42 +02:00
kobewi
d06a8320e5
Simplify GDVIRTUAL_CALL calls
2022-10-19 00:05:48 +02:00
kobewi
e48c5daddf
Unify usage of GLOBAL/EDITOR_GET
2022-10-18 19:01:48 +02:00
Markus Sauermann
13b87c13c7
Fix set_as_toplevel event propagation to child
...
In certain conditions events did not get propagated to Control childs of
Node2D nodes when setting a parent of the Node2D to toplevel.
This patch makes sure that such Control nodes become root control in the
viewport.
2022-10-16 21:42:16 +02:00
Haoyu Qiu
64c20a51c1
Fix get_path() error when calling get_node()
2022-10-16 10:48:59 +08:00
Markus Sauermann
39e49a8bdd
Expose Viewport::get_screen_transform to GDScript
2022-10-15 23:37:59 +02:00
Miguel Gonzalez Sanchez
a97a00bf02
Rename pos -> index on Node
2022-10-14 19:56:34 +01:00
clayjohn
b6f44859d7
Implement multiple clip_children modes for CanvasItems
2022-10-14 08:02:28 -07:00
Markus Sauermann
b1d6b34662
Always update Viewport's last_mosue_position
...
When the mouse cursor is over a embedded Window, the Viewport's
last_mouse_position did not get updated.
This patch makes sure that the update happens on every InputEventMouse.
Document canvas layer of embedded Windows.
2022-10-14 12:51:45 +02:00
Rémi Verschelde
f32f5b70d8
Merge pull request #67348 from Mickeon/salvage-a-dear-comment
...
Comment not to remove `data` structs in some Nodes
2022-10-13 18:40:58 +02:00
Micky
de9e08da76
Comment not to remove data
structs in some Nodes
2022-10-13 15:52:35 +02:00
Eric M
a3ed9e6f2c
Move Shortcut Context to Control and ensure that shortcut_input
adheres to contexts. Also ensure that controls with no context are only triggered AFTER nodes which do have a context.
2022-10-13 21:07:19 +10:00
Rémi Verschelde
15b68f7601
Merge pull request #67232 from bruvzg/popup_edit
...
Improve Popup / Window behavior in the edited scene tree.
2022-10-12 14:45:14 +02:00
Nikola Bunjevac
d7e9b8af9a
Set window size after setting new limits
...
Otherwise this can fail as the size may not fit
into current limits. This is problematic at least
on X11.
2022-10-11 17:16:20 +02:00
Rémi Verschelde
e413d1c9c3
Merge pull request #67104 from Calinou/add-viewport-transparent-project-setting
...
Add a project setting to make the root viewport transparent
2022-10-11 09:28:43 +02:00
bruvzg
2e1fcbe14b
Prevent Popup
s it the edited scene tree from closing on focus loss. Hide irrelevant Popup
flags from the editor inspector.
2022-10-11 08:55:00 +03:00
kobewi
b754df2b99
Fix node name casing issues
...
Co-authored-by: ryburnj <jordanryburn@gmail.com>
2022-10-10 22:31:26 +02:00
Hugo Locurcio
bab8497fa2
Add a project setting to make the root viewport transparent
...
This allows recording videos with a transparent background without
having to create a script.
2022-10-09 00:16:07 +02:00
Cykyrios
f0d7934055
Fix invalid tooltip position
2022-10-07 22:43:49 +02:00
bruvzg
0103af1ddd
Fix MSVC warnings, rename shadowed variables, fix uninitialized values, change warnings=all to use /W4.
2022-10-07 11:32:33 +03:00
Markus Sauermann
90b01d79af
Fix execution of physics picking events
...
Fix that physics picking can happen after the mouse has left the viewport
2022-10-06 13:58:54 +02:00
Rémi Verschelde
2b9a145158
Merge pull request #66869 from Sauermann/fix-transform-det-0-spam
...
Fix Transform2D det == 0 spam for SubViewports
2022-10-04 12:05:37 +02:00
Markus Sauermann
650cc16b05
Fix Transform2D det == 0 spam for SubViewports
2022-10-04 11:48:39 +02:00
Rémi Verschelde
1c6e8f7e62
Merge pull request #66712 from Cykyrios/fix-invalid-popup-position
...
Fix invalid popup position for embedded popups
2022-10-04 11:19:50 +02:00
Rémi Verschelde
38dd753715
Merge pull request #66859 from Rindbee/reset-gui_parent
...
Make sure to reset the tooltip of its gui_parent when the viewport is removed
2022-10-04 10:32:51 +02:00
Rindbee
9a05ea231a
Make sure to reset the tooltip of its gui_parent when the viewport is removed
2022-10-04 11:58:02 +08:00
Cykyrios
2237df6273
Fix invalid popup position for embedded popups
2022-10-03 21:23:32 +02:00
Rémi Verschelde
f501e4f665
Unix: Remove now unnecessary I/O defines, cleanup
...
- `LIBC_FILEIO_ENABLED` wasn't defined anywhere, even in _other platforms_.
- `NO_NETWORK` is also never defined. It probably isn't enough anyway to
disable network APIs in the current codebase.
- `UNIX_SOCKET_UNAVAILABLE` is never defined in this code but used by some
other platforms, clarify that.
- `NO_STATVFS` can be removed as Android supports it since API level 19,
which is our current min SDK level. It's also only used for
`DirAccessUnix::get_space_left()` which is anyway overridden by
`DirAccessJAndroid::get_space_left()` so it shouldn't make a difference.
* Fixed documentation for `DirAccess.get_space_left()`.
- `NO_FCNTL` is likely also a remnant of early Android days, in current NDK
r23 it seems to be available. Also cleaned up unused `fcntl.h` includes.
- `NO_ALLOCA` is never defined, and we use alloca in many places now.
2022-10-03 12:33:41 +02:00
EricEzaM
2a7e61457a
Allow shortcut input to be JoypadButton.
2022-10-02 17:11:18 +10:00
Markus Sauermann
2bf2217b1a
Calculate window input event transform only on window change
2022-10-01 09:54:38 +02:00
Rémi Verschelde
e3464c8fc8
Merge pull request #58995 from Sauermann/fix-mouse-cursor-change-2
...
Update mouse cursor shape after changes
2022-09-28 20:50:05 +02:00
Rémi Verschelde
7562932eb2
Merge pull request #66160 from dpalais/double_time
...
Use double instead of real_t type for time-related parameters and variables
2022-09-27 10:04:10 +02:00
Dave Palais
0c46068af0
Change time parameters and variables to double type
...
Addresses #65313
2022-09-26 13:52:54 -05:00
kobewi
a4c3551dc6
Force window position if spawned outside screen
2022-09-26 13:44:25 +02:00
bruvzg
0dab11afa4
[macOS extend-to-title] Add scene/project name to the editor title, fix incorrect window button position/order when system primary language is RTL.
2022-09-22 23:09:56 +03:00
Rémi Verschelde
ae2d9be0fe
Merge pull request #63740 from Faless/net/4.x_http_request_decompress
...
[HTTP] Implement streaming decompression.
2022-09-20 22:29:16 +02:00
Fabio Alessandrelli
172a9e0b24
[HTTPRequest] Cleanup, refactor deferred call.
2022-09-20 18:39:10 +02:00
Fabio Alessandrelli
98047e791a
[HTTPRequest] Body streaming decompresison.
...
Using a StreamPeerGZIP (which acts as a ringbuffer).
2022-09-20 18:39:10 +02:00
Marc Gilleron
aed3822a93
Change return type of get_configuration_warnings
to PackedStringArray
2022-09-19 16:43:15 +01:00
Markus Sauermann
52da6f1a44
Update mouse cursor shape after changes
...
This fixes some cases where the mouse cursor shape did not change automatically, but instead required a MouseMove to update.
2022-09-18 17:15:38 +02:00
Rémi Verschelde
d79040e7eb
Merge pull request #65496 from MinusKube/popup-capture-mouse-bug
...
Fix MOUSE_MODE_CAPTURED not working correctly with popups
2022-09-16 09:23:40 +02:00
Rémi Verschelde
d347d2f585
Merge pull request #65550 from MinusKube/small-popup-bug
...
Use embedding viewport instead of parent viewport to determine popup rect
2022-09-16 09:22:57 +02:00
David Snopek
e82cd46a74
Fix XR rendering in 'opengl3' driver and expose true size via the Viewport node
2022-09-14 20:55:56 -05:00
SaracenOne
cc4bda8500
Add ability to flag classes as experimental or deprecated.
2022-09-11 00:11:33 +01:00
Rémi Verschelde
8899f1eec2
Merge pull request #65595 from KoBeWi/minus_children
...
Allow negative indices in `move_child()`
2022-09-10 09:59:15 +02:00
kobewi
31e62ca827
Allow negative indices in move_child()
2022-09-10 03:54:04 +02:00
VolTer
e19f7b2407
Remove Remove and Skip
2022-09-09 23:44:31 +02:00
MinusKube
00e153f85a
Use embedding viewport instead of parent viewport to determine popup rect
2022-09-09 01:22:46 +02:00
Rémi Verschelde
7936b3cc4c
Merge pull request #60108 from KoBeWi/arise_to_top
...
Rename raise() to move_to_front()
2022-09-08 09:23:31 +02:00
Rémi Verschelde
de739530c2
Merge pull request #63596 from Jayman2000/issue-27640
...
Rename `change_scene()` and `change_scene_to()`
2022-09-08 09:22:03 +02:00
Rémi Verschelde
a51dc70dfb
Merge pull request #65460 from Faless/net/4.x_ssl_to_tls_more
...
[Net] Rename "ssl" references to "tls" in methods and members.
2022-09-08 09:20:19 +02:00
Fabio Alessandrelli
a95d792420
[Net] Rename "ssl" references to "tls" in methods and members.
2022-09-08 03:24:23 +02:00
Jason Yundt
69963ffaa3
Rename change_scene() and change_scene_to()
...
Before this change, the SceneTree had methods named “change_scene” and
“change_scene_to”. One of them accepted a String as a parameter and the
other accepted a PackedScene, but you couldn’t tell which one was which
just by looking at their names.
This change renames those two methods to “change_scene_to_file” and
“change_scene_to_packed”. These new names came from this suggestion [1].
These new names make the difference between the two methods more clear
and hint at the fact that there’s more than one change_scene method.
[1]: <https://github.com/godotengine/godot/issues/27640#issuecomment-1081870955 >
Fixes #27640 .
2022-09-07 17:06:33 -04:00
MinusKube
06b86fad0d
Fix MOUSE_MODE_CAPTURED not working correctly with popups
2022-09-07 19:31:57 +02:00
smix8
d7f75fab60
Remove / Replace old Navigation Debug Visualization
...
- removes / replaces leftovers from old navigation debug code
- cleanes SceneTree and ProjectSettings from old navigation debug
2022-09-07 18:30:35 +02:00
Micky
f577bae76f
Rename legible_unique_name
param to force_readable_name
...
With the introduction of Scene Unique Nodes, `is_unique_in_owner`, "Unique Name in Scene" and other descriptions related to the feature, the second parameter of add_child() and add_simbling() could be misunderstood to be related, at first glance.
2022-09-07 11:58:30 +02:00
kobewi
b218727599
Rename raise() to move_to_front()
2022-09-06 22:13:06 +02:00
MinusKube
f5a808192b
Prevent windows from having a size greater than device limit
2022-09-04 22:48:54 +02:00
Rémi Verschelde
a653801b17
Merge pull request #65285 from YuriSizov/window-theme-change-is-imminent
...
Un-defer the initial theme changed notification in `Window`
2022-09-03 18:23:45 +02:00
Yuri Sizov
41eabca0fb
Un-defer the initial theme changed notification in Window
2022-09-03 14:55:13 +03:00
Xwdit
f350356183
Some improvements to the SceneTreeTimer
2022-09-03 11:44:11 +02:00
Rémi Verschelde
597bc949a4
Merge pull request #65250 from YuriSizov/theme-owner-rises
2022-09-02 23:20:49 +02:00
Yuri Sizov
8b128081e8
Un-defer the initial theme changed notification
...
Co-authored-by: Rindbee <idleman@yeah.net>
2022-09-02 23:44:23 +03:00
Yuri Sizov
ddc55ef746
Add ThemeOwner type for managing theme propagation and lookup
2022-09-02 23:44:23 +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
Rémi Verschelde
6ccbc27093
Merge pull request #64735 from KoBeWi/viewportshifter
2022-09-02 15:42:42 +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
Rindbee
621b9a1bfe
Fix getting an error message when repeatedly entering and exiting the tree
2022-09-02 10:48:20 +08:00
Fabio Alessandrelli
fbbd3950c8
Simplify network GDExtension bindings using EXBIND macros.
...
Simplify StreamPeer, PacketPeer, MultiplayerPeer extension.
Simplify and update WebRTC*Extension with newly supported types.
2022-09-01 19:10:22 +02:00
Yuri Sizov
15fd025f90
Add dumb and manual theme caching systems to Window
2022-09-01 16:05:02 +03:00
Yuri Rubinsky
8191b3c110
Rename uniform
to parameter
across the engine
2022-09-01 11:42:57 +03:00
Rémi Verschelde
e74809094f
Merge pull request #65108 from MinusKube/subwindow-focused-bug
...
Prevent subwindow_focused from pointing to a window that is not a subwindow
2022-09-01 08:45:37 +02: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
MinusKube
64cf943e07
Prevent subwindow_focused from pointing to a window that is not a subwindow
2022-08-30 21:57:03 +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
kobewi
cd01f695d5
Change _redraw_callback to callable_mp
2022-08-30 15:21:48 +02: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
889c522a19
Merge pull request #64410 from MewPurPur/rename-notification-instanced
2022-08-30 12:01:58 +02:00
Danil Alexeev
d4555ef5fb
Add String.to_{camel,pascal,snake}_case
methods
2022-08-30 12:36:24 +03:00
Aaron Franke
10a56981dc
Rename String plus_file
to path_join
2022-08-29 19:38:13 -05: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
Rémi Verschelde
e60086f98b
Merge pull request #64119 from YuriSizov/theme-init-database
2022-08-29 14:02:21 +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
Aaron Record
4b817a565c
Remove NOTIFICATION_ENTER_TREE when paired with NOTIFICATION_THEME_CHANGED
2022-08-27 11:52:29 -06: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
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
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
bruvzg
bc4ba6cb78
[macOS] Extend editor contents to the window titlebar for better space usage.
2022-08-26 15:12:43 +03:00
Rémi Verschelde
ff612b6916
Merge pull request #64574 from Begah/fix_transient_window_wrap_mouse
2022-08-26 13:54:23 +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
d93d646723
Merge pull request #64570 from KoBeWi/node 🧳 ing
...
Unify node casing adjustment
2022-08-26 09:49:58 +02:00
Aaron Record
74eb2a70bd
Refactor and remove excessive calls of NOTIFICATION_THEME_CHANGED
2022-08-25 14:50:49 -06:00
Rémi Verschelde
060d0ce882
Merge pull request #53299 from Calinou/viewport-tweak-configuration-warning
2022-08-25 21:44:31 +02:00
Rémi Verschelde
5eed1b299b
Merge pull request #64355 from Mickeon/rename-follow-viewport
2022-08-25 18:34:19 +02:00
MathieuRoux
5ac5c8bc06
Fix warp_mouse for transient windows, smoother mouse positioning when releasing mouse for spinbox
2022-08-25 11:30:49 +02:00
Rémi Verschelde
bb6d771397
Merge pull request #64843 from Faless/mp/4.x_encode_fix
...
[MP] Fix variant serialization after variant size change.
2022-08-25 00:02:07 +02:00
Fabio Alessandrelli
75de626781
[MP] Fix variant serialization after variant size change.
...
The bit mask used for the type when compressing variants in the
Multiplayer API became too small to represent all variant types.
This commit expand the mask, which means we no longer have an extra bit
in the "meta" byte we use to store encoding information.
The extra bit was only used in case of booleans to store the value and
since booleans do not require extra encoding information we use those 2
bits to store the value instead.
2022-08-24 19:46:55 +02:00
Rémi Verschelde
629949d0a5
Merge pull request #64759 from skyace65/Anisotropic
...
Spell out "anisotropic" fully in filter options
2022-08-24 09:53:28 +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
skyace65
64061678c6
Spell out "anisotropic" fully in filter options
2022-08-23 19:19:56 -04:00
kobewi
1abdffe7a0
Replace Array return types with TypedArray 2
2022-08-23 23:21:32 +02:00
Pedro J. Estébanez
910efbff03
Avoid warnings about cursor shape change not supported
2022-08-23 11:14:07 +02:00
bruvzg
bcc3643989
Add font LCD sub-pixel anti-aliasing support.
2022-08-23 08:47:21 +03:00
Yuri Sizov
1a24c9e14b
Make _validate_property
a multilevel method
2022-08-22 18:35:11 +03:00
kobewi
3a4a4aeade
Fix Viewport size change not updating textures
2022-08-22 16:34:47 +02:00
kobewi
fdab23163f
Unify node casing adjustment
2022-08-18 14:08:40 +02:00
Tomasz Chabora
2bdd7e9ea0
Add methods for node reparenting
2022-08-16 19:44:41 +02:00
VolTer
2599710793
Rename NOTIFICATION_INSTANCED to NOTIFICATION_SCENE_INSTANTIATED
2022-08-16 12:41:10 +02:00
Micky
fe86c5cba5
Rename CanvasItem.follow_viewport_enable
to end with "d"
...
For consistency with the rest of the exposed booleans in Godot
2022-08-13 13:00:45 +02:00
Hendrik Brucker
e96b1a2c0c
Implement MSAA for 2D [Vulkan only]
2022-08-13 01:09:48 +02:00
Yuri Sizov
1362bc22bd
Add tests for empty/unnamed arguments to ClassDB, Variant, GDScript
2022-08-08 16:36:01 +03:00
Michael Alexsander
2b86c458bf
Fix some bugs with Window
s
2022-08-05 02:25:15 -03:00
Nathan Franke
c3c5985189
move rpc and rpc_id implementations back to header
...
StackOverflow on why this is needed: https://stackoverflow.com/questions/495021/why-can-templates-only-be-implemented-in-the-header-file
Minor mistake in commit ca7d572908
2022-08-02 18:35:29 -05:00
Juan Linietsky
d4433ae6d3
Remove Signal connect binds
...
Remove the optional argument p_binds from `Object::connect` since it was deprecated by Callable.bind().
Changed all uses of it to Callable.bind()
2022-07-29 16:26:13 +02:00
Rémi Verschelde
14d021287b
Merge pull request #63049 from Faless/mp/4.x_as_module
2022-07-28 20:46:31 +02:00
Rémi Verschelde
8e0f328a80
Merge pull request #59840 from Calinou/renderingserver-global-uniform-rename
2022-07-28 20:34:17 +02:00
Hugo Locurcio
4b42379c8f
Rename RenderingServer global shader uniform methods to be more explicit
...
The `global_shader_uniform` name is longer, but it makes it much
easier to find the methods when searching in the class reference.
2022-07-28 18:46:59 +02:00
Hugo Locurcio
e24029edc3
Allow changing mipmap LOD bias when FSR 1.0 scaling is not used
...
Mipmap LOD bias can be useful to improve the appearance of distant
textures without increasing anisotropic filtering (or in situations
where anisotropic filtering is not effective).
`fsr_mipmap_bias` was renamed to `texture_mipmap_bias` accordingly.
The property hint now allows for greater precision as well.
2022-07-28 17:51:13 +02:00
Rémi Verschelde
199ea349f5
Merge pull request #57698 from bluenote10/feature/rename_translated_to_translated_local
2022-07-28 10:03:07 +02:00
Rindbee
fc17d3563d
Remove first_draw
and reset visibility when entering tree
2022-07-28 12:35:47 +08:00
Rémi Verschelde
950750fb98
Merge pull request #63355 from YeldhamDev/directional_tooltip
2022-07-27 12:37:03 +02:00
Fabio Alessandrelli
ca7d572908
[Net] Modularize multiplayer, expose MultiplayerAPI to extensions.
...
- RPC configurations are now dictionaries.
- Script.get_rpc_methods renamed to Script.get_rpc_config.
- Node.rpc[_id] and Callable.rpc now return an Error.
- Refactor MultiplayerAPI to allow extension.
- New MultiplayerAPI.rpc method with Array argument (for scripts).
- Move the default MultiplayerAPI implementation to a module.
2022-07-26 09:31:12 +02:00
Rémi Verschelde
90019676b0
Code quality: Fix header guards consistency
...
Adds `header_guards.sh` bash script, used in CI to validate future
changes. Can be run locally to fix invalid header guards.
2022-07-25 11:17:40 +02:00
Michael Alexsander
46346cfaa5
Make tooltips be shown at different directions if there's not enough space
2022-07-23 14:51:06 -03:00
reduz
455c06ecd4
Implement Vector4, Vector4i, Projection
...
Implement built-in classes Vector4, Vector4i and Projection.
* Two versions of Vector4 (float and integer).
* A Projection class, which is a 4x4 matrix specialized in projection types.
These types have been requested for a long time, but given they were very corner case they were not added before.
Because in Godot 4, reimplementing parts of the rendering engine is now possible, access to these types (heavily used by the rendering code) becomes a necessity.
**Q**: Why Projection and not Matrix4?
**A**: Godot does not use Matrix2, Matrix3, Matrix4x3, etc. naming convention because, within the engine, these types always have a *purpose*. As such, Godot names them: Transform2D, Transform3D or Basis. In this case, this 4x4 matrix is _always_ used as a _Projection_, hence the naming.
2022-07-23 14:00:01 +02:00
kleonc
57ff4032d0
Fix CanvasItem
not exiting its canvas group on canvas exit
2022-07-20 21:35:31 +02:00
FireForge
97dfbea6ad
Rename Control PRESET_WIDE to PRESET_FULL_RECT
2022-07-18 20:08:11 -05:00
Rémi Verschelde
168ee3e6c4
Merge pull request #63083 from madmiraal/fix-56336
2022-07-18 09:31:35 +02:00
Marcel Admiraal
96c75f1d10
Set initial SceneTree processes times to 0.0
2022-07-17 08:51:25 +01:00
Bastiaan Olij
d139131aab
Adding Variable Rate Shading support to Godot
...
Improve GI renderer and add VRS support
Implement render device has_feature and move subgroup settings to limit_get
2022-07-17 15:42:24 +10:00
Fabian Keller
2bf9e6090c
rename translate(d) to translate(d)_local in Transform 2D/3D
2022-07-16 11:47:54 +02:00
bruvzg
cbe3a2dcb7
Use BitField hint for the TextServer enums. Add missing parts for BitField support to the GDextension API.
2022-07-15 08:49:50 +03:00
Hugo Locurcio
21ea1c3835
Rename soft shadow quality project settings for easier searching
...
`rendering/quality/shadows` is now `rendering/quality/positional_shadow`
to explicitly denote that the settings only affect positional light shadows,
not directional light shadows.
Shadow atlas settings now contain the word "atlas" for easier searching.
Soft shadow quality settings were renamed to contain the word "filter".
This makes the settings appear when searching for "filter" in the
project settings dialog, like in Godot 3.x.
2022-07-13 19:56:02 +02:00
bruvzg
344ba0ffaf
Refactor Font configuration and import UI, and Font resources.
2022-07-06 14:12:36 +03:00
Hugo Locurcio
462432f89f
Add an underscore to internal group names as per engine policy
...
This also adds `SNAME()` macros where relevant to improve performance.
2022-07-01 20:16:25 +02:00
Rémi Verschelde
a7e589df38
Merge pull request #62084 from smix8/path_debug_options_4.x
...
Add Path2D/3D debug options
2022-06-29 20:36:43 +02:00
Rémi Verschelde
82a56e5c42
Merge pull request #61587 from YuriSizov/control-fix-theme-owner-toplevel
...
Fix theme propagation for children of top level controls and windows
2022-06-27 12:03:36 +02:00
Rémi Verschelde
11f5d2141a
Merge pull request #61577 from YuriSizov/core-fix-events-for-moved-nodes
2022-06-27 12:02:19 +02:00
reduz
d69e3791bf
Fix editor-only visibility for lights
...
* Update visibility again for editor-only lights if owner changes.
Fixes #26399 , supersedes #52327
2022-06-23 08:19:18 +02:00
Rémi Verschelde
91e9e3c681
Merge pull request #62247 from Rindbee/fix-editor-hang-when-window-as-root
2022-06-20 17:43:54 +02:00
smix8
e12e239ab4
Add Path2D/3D debug options
...
Add Path2D/3D debug options.
2022-06-20 17:32:05 +02:00
Rindbee
5ac259fad8
Quickfix editor hangs when rooting a window with exclusive and transient flags enabled
2022-06-20 21:45:08 +08:00
Rémi Verschelde
3e6de687b8
Node: Rename child_exited_tree
to child_exiting_tree
...
The name was confusing as this signal is emitted around the same time as
`tree_exiting` and `NOTIFICATION_EXIT_TREE`, i.e. while the child node is
still in tree.
Fixes #59210 .
2022-06-20 11:55:19 +02:00
markdibarry
459228cdb3
Add explicit deferred flags
2022-06-19 10:04:53 -04:00
Rindbee
53bd72fa70
Fix previous min size affects _get_contents_minimum_size in AcceptDialog
2022-06-17 16:21:23 +08:00
FireForge
92817aa72f
Add Vector2/3 linking to more properties
...
- Camera2D.zoom
- CanvasLayer.scale
- ParallaxBackground.scroll_base_scale
- ParallaxLayer.motion_scale
- Polygon2D.texture_scale
- BaseMaterial3D.uv1_scale
- BaseMaterial3D.uv2_scale
2022-06-14 09:33:44 -05:00
Rémi Verschelde
41986532c1
Merge pull request #61974 from Calinou/project-settings-mark-as-basic
2022-06-13 17:16:03 +02:00
bruvzg
f7269fe878
Single-window mode popups and edited scene windows fixes.
...
Fix single-window mode popup not closing when OptionBox is clicked.
Fix single-window mode submenus closing when parent menu item, that was used to open it is clicked (using same safe-area logic as platform specific code).
Disallow windows that are part of an edited scene from being set as exclusive or popup to prevent it from locking up the editor.
2022-06-13 09:56:08 +03:00
Hugo Locurcio
c178cfef8e
Mark some common project settings as basic
2022-06-12 19:50:14 +02:00
FireForge
4678736a39
Add suffixes to all nodes and resources
2022-06-11 09:41:05 -05:00
kobewi
9036fcbe5e
Remove TooltipPanel and TooltipLabel
2022-06-09 22:23:11 +02:00
jfons
ba832d83b2
Initial TAA implementation
...
Initial TAA support based on the implementation in Spartan Engine.
Motion vectors are correctly generated for camera and mesh movement, but there is no support for other things like particles or skeleton deformations.
2022-06-07 13:14:44 +02:00
Haoyu Qiu
83d931ad3c
Fix Viewport.own_world_3d
documentation
...
Also fixed the naming of the setter's parameter and made an `if` block
straightforward.
2022-06-06 21:34:40 +08:00
Rémi Verschelde
659f4b64d6
Merge pull request #60830 from Ansraer/fix-2d-scale
...
[4.x] Add viewport content scale
2022-06-04 00:15:38 +02:00
Yuri Sizov
ba273c6c5f
Fix theme propagation for children of top level controls and windows
2022-06-01 04:20:00 +03:00
Yuri Sizov
8e5ad7be46
Mark node groups as dirty for every children if parent is moved
2022-05-31 21:28:04 +03:00
reduz
45af29da80
Add a new HashSet template
...
* Intended to replace RBSet in most cases.
* Optimized for iteration speed
2022-05-20 22:40:38 +02:00
Rémi Verschelde
a5109d49ce
Merge pull request #61026 from timothyqiu/quit-prop
...
Make `auto_accept_quit` and `quit_on_go_back` properties
2022-05-20 08:13:00 +02:00
Aaron Franke
5dc3bfb80e
Use suffixes for units in nodes and resources
2022-05-19 14:34:27 -05:00
Aaron Record
900c676b02
Use range iterators for RBSet in most cases
2022-05-19 12:09:16 +02:00
Rémi Verschelde
2f3a8a3d61
Merge pull request #61095 from BimDav/get_node_and_resource
...
Fix a bug in get_node_and_resource when the property is set to null
2022-05-18 15:19:17 +02:00
Rémi Verschelde
5c79782c7e
Merge pull request #61088 from groud/keep_unhandled_events_on_pass
2022-05-17 23:50:55 +02:00
Gilles Roudière
6db8b7616d
Keep input event as unhandled if they go through a control set to MOUSE_FILTER_PASS
2022-05-17 15:41:58 +02:00
BimDav
3e96abce07
fix a bug in get_node_and_resource
2022-05-16 19:40:59 +02:00
reduz
746dddc067
Replace most uses of Map by HashMap
...
* Map is unnecessary and inefficient in almost every case.
* Replaced by the new HashMap.
* Renamed Map to RBMap and Set to RBSet for cases that still make sense
(order matters) but use is discouraged.
There were very few cases where replacing by HashMap was undesired because
keeping the key order was intended.
I tried to keep those (as RBMap) as much as possible, but might have missed
some. Review appreciated!
2022-05-16 10:37:48 +02:00
Haoyu Qiu
82fdad148f
Make auto_accept_quit and quit_on_go_back properties
2022-05-14 18:18:26 +08:00
reduz
8b7c7f5a75
Add a new HashMap implementation
...
Adds a new, cleaned up, HashMap implementation.
* Uses Robin Hood Hashing (https://en.wikipedia.org/wiki/Hash_table#Robin_Hood_hashing ).
* Keeps elements in a double linked list for simpler, ordered, iteration.
* Allows keeping iterators for later use in removal (Unlike Map<>, it does not do much
for performance vs keeping the key, but helps replace old code).
* Uses a more modern C++ iterator API, deprecates the old one.
* Supports custom allocator (in case there is a wish to use a paged one).
This class aims to unify all the associative template usage and replace it by this one:
* Map<> (whereas key order does not matter, which is 99% of cases)
* HashMap<>
* OrderedHashMap<>
* OAHashMap<>
2022-05-12 11:21:29 +02:00
Rémi Verschelde
b6983eeccf
Merge pull request #51591 from Calinou/call-group-default-immediate
...
Make `{call,set,notify}_group()` immediate by default
2022-05-10 14:52:23 +02:00
Ansraer
045f511bd9
Add viewport content scale
2022-05-06 19:50:53 +02:00
kobewi
1dc7bcc83c
Cleanup metadata usage
2022-05-06 00:27:10 +02:00
Hugo Locurcio
aabbb40009
Make {call,set,notify}_group()
immediate by default
...
This results in less surprising behavior out of the box.
Internal usages were modified to keep the existing behavior
identical there.
2022-05-05 16:59:37 +02:00
reduz
0a57f964a3
Implement missing Node & Resource placeholders
...
Implemented by request of @neikeq to advance in the GDExtension version of Mono.
* If a Resource type is missing upon load, it will be remembered together with its data (Unless manually overriden).
* If a Node type is missing upon load, it will be also be remembered together with its data (unless deleted).
This feature makes working with GDExtension much easier, as it ensures that missing types no longer cause data loss.
2022-05-03 17:08:09 +02:00
Rémi Verschelde
931838b330
Merge pull request #60627 from aaronfranke/rename-elements
...
Rename Transform2D and Basis `elements` to `columns` and `rows` respectively
2022-05-03 14:40:01 +02:00
Hugo Locurcio
180e5d3028
Remove RES
and REF
typedefs in favor of spelled out Ref<>
...
These typedefs don't save much typing compared to the full `Ref<Resource>`
and `Ref<RefCounted>`, yet they sometimes introduce confusion among
new contributors.
2022-05-03 01:43:50 +02:00
Rémi Verschelde
c273ddc3ee
Style: Partially apply clang-tidy's cppcoreguidelines-pro-type-member-init
...
Didn't commit all the changes where it wants to initialize a struct
with `{}`. Should be reviewed in a separate PR.
Option `IgnoreArrays` enabled for now to be conservative, can be
disabled to see if it proposes more useful changes.
Also fixed manually a handful of other missing initializations / moved
some from constructors.
2022-05-02 16:28:25 +02:00
Hugo Locurcio
d567369c8f
Tweak the Viewport configuration warning to mention 2×2 size requirement
2022-04-29 20:25:05 +02:00
kobewi
8187a777ce
Small improvements to get_first_node_in_group()
2022-04-29 16:14:48 +02:00
Aaron Franke
b831fb0a54
Rename Transform2D "elements" to "columns"
2022-04-29 08:02:39 -05:00
Rémi Verschelde
1de51133c9
Merge pull request #60331 from KoBeWi/tween_static()
2022-04-27 13:20:11 +02:00
Rémi Verschelde
a19d7d8f8d
Merge pull request #58383 from bruvzg/no_inv_window_placement
2022-04-27 09:33:40 +02:00
Fabio Alessandrelli
aee2240d5f
[Net] Allow branch-specific MultiplayerAPIs.
...
Removes custom_multiplayer from Node.
MultiplayerAPI overrides are now set at SceneTree level, and apply to
whole branches.
Impact on performance when using only the default multiplayer or
overriding it is minimal, the use of branches can likely be further
optimized by caching nodes and relevant MultiplayerAPI IDs.
2022-04-26 17:22:54 +02:00
Rémi Verschelde
06c33cca18
Merge pull request #60511 from akien-mga/readd-find_node
2022-04-26 09:42:19 +02:00
Rémi Verschelde
02bb8e948f
Merge pull request #60261 from fire-forge/theme-prop-renames
2022-04-25 16:20:19 +02:00
Rémi Verschelde
9c2ea7e296
Node: Re-add find_node
as find_child
, improve docs
...
The new name contrasts it better with `find_parent`, and makes it clear
that it only matches child/descendant nodes.
Also rename `find_nodes` to `find_children` accordingly.
2022-04-25 15:21:22 +02:00
reduz
8580f377a3
Implement Scene Unique Nodes
...
Implements https://github.com/godotengine/godot-proposals/issues/4096
* Nodes can be marked unique to the scene in the editor (or via code).
* Unique nodes can be accessed via the **%** prefix at any point in the path. From that point in the path (depending on whether the scene of the path is), the unique node will be fetched.
* Implementation is very optimal, as these nodes are cached.
2022-04-25 12:19:17 +02:00
FireForge
3073b85de9
Rename theme properties to include underscores
...
- check_vadjust -> check_v_adjust
- close_h_ofs -> close_h_offset
- close_v_ofs -> close_v_offset
- commentfocus -> comment_focus
- hseparation -> h_separation
- ofs -> offset
- selectedframe -> selected_frame
- state_machine_selectedframe -> state_machine_selected_frame
- table_hseparation -> table_h_separation
- table_vseparation -> table_v_separation
- vseparation -> v_separation
2022-04-23 11:16:18 -05:00
bruvzg
defcd0c57e
Avoid setting sub-window or started project window positions, if it's impossible to get screen rect.
2022-04-20 11:10:33 +03:00
Yuri Rubinsky
f4b0c7a1ea
Merge pull request #60175 from Geometror/visual-shader-vector4
2022-04-20 08:33:42 +03:00
kobewi
3017530e26
Make Tween.interpolate_value() static
2022-04-17 23:13:39 +02:00
Hugo Locurcio
52d6a7a7ff
Fix the Audio Listener 3D property not being grouped with 2D in Viewport
2022-04-16 02:22:58 +02:00
Rémi Verschelde
895f2a21f4
Merge pull request #60081 from fire-forge/input-event-editor-fix
...
Redesign InputEvent editor and fix `Window.popup_centered()` rect calculation.
2022-04-12 23:46:56 +02:00
Hendrik Brucker
cf58d23a72
Add Vector4 to VisualShader
2022-04-12 19:09:29 +02:00
Yuri Rubinsky
3d63f6e36d
Merge pull request #60171 from Chaosus/restore_aa
2022-04-12 18:09:58 +03:00
FireForge
0b0a74e135
Redesign InputEvent editor plugin
...
- Use vertical layout and add text wrapping
- Fix Window.popup_centered() rect calculation
2022-04-12 08:30:24 -05:00
Rémi Verschelde
724dd82f92
Merge pull request #60069 from Calinou/fsr-fix-editor-enum
2022-04-12 14:33:52 +02:00
Yuri Roubinsky
6e9535a9c8
Restore antialiasing for draw_line
2022-04-12 13:03:56 +03:00
bruvzg
4bf99f4af2
Narrow FileAccess scope to prevent deadlocks.
2022-04-12 10:54:39 +03:00
Rémi Verschelde
2507b2b006
Merge pull request #54191 from Ev1lbl0w/bugfix-window_popup_ratio
2022-04-11 17:49:20 +02:00
Rémi Verschelde
5613ac37d6
Merge pull request #59440 from bruvzg/fd_ref_counted
2022-04-11 14:12:18 +02:00
bruvzg
9381acb6a4
Make FileAccess and DirAccess classes reference counted.
2022-04-11 13:28:51 +03:00
kobewi
63de41b996
Improvements to files_dropped signal
2022-04-11 00:37:06 +02:00
Ev1lbl0w
139c1eb655
Clamp ratio from popup_centered_ratio
2022-04-10 11:10:21 +01:00
Hugo Locurcio
d15b69118d
Fix 3D scaling enum size in the editor and improve descriptions
2022-04-09 17:53:45 +02:00
Rémi Verschelde
0f9231ca0f
Merge pull request #59788 from Vitika9/59711
2022-04-07 15:30:57 +02:00
bruvzg
f851c4aa33
Fix some issues found by cppcheck.
2022-04-06 14:34:37 +03:00
bruvzg
d1207a0504
[Input] Add extra shortcut_input
input processing step to process Unicode character input with Alt / Ctrl modifiers, after processing of shortcuts.
2022-04-05 13:46:45 +03:00
Rémi Verschelde
f8ab79e68a
Zero initialize all pointer class and struct members
...
This prevents the pitfall of UB when checking if they have been
assigned something valid by comparing to nullptr.
2022-04-04 19:49:50 +02:00
Vitika9
ff75b30e6e
Removed show_on_top property in CanvasItem
2022-04-01 18:40:40 +05:30
Rémi Verschelde
1358efde1f
Merge pull request #59709 from Sauermann/fix-dragndrop-subviewport-transform
2022-03-31 22:31:59 +02:00
Rémi Verschelde
8e5d927af5
Merge pull request #59590 from Calinou/rename-print-stray-nodes
2022-03-31 22:21:51 +02:00
Hugo Locurcio
a29f2bfe54
Rename Node.print_stray_nodes()
to Node.print_orphan_nodes()
...
The "orphan" terminology is already used elsewhere.
2022-03-31 18:33:02 +02:00
Markus Sauermann
529e2279e1
Fix Drag n Drop Transform in main embedding window
2022-03-31 00:43:52 +02:00
Pierre-Thomas Meisels
63f7f44ccb
Make vararg method bind no return and return
...
Type emit_signal exposed method return type
set UndoRedo add_do_method and add_undo_method exposed return void
Set TreeItem::_call_recursive_bind returns void
Set _rpc_bind and _rpc_id_bind returns void in Node
Set _call_group and _call_group_flags method returns void in SceneTree
Set godot-cpp-test CI flag to false
2022-03-30 11:43:12 +02:00
Rémi Verschelde
398d502cc7
Merge pull request #59308 from Sauermann/fix-viewport-warp-mouse
2022-03-30 11:41:31 +02:00
Rémi Verschelde
dc4a5b2d5d
Merge pull request #59568 from Sauermann/fix-focus-out-notification
...
Send a focus-out notification when opening a Window Manager Popup
2022-03-30 08:57:50 +02:00
bruvzg
76174cb05a
Update sub-viewport canvas items to ensure oversampling is applied correctly.
2022-03-29 10:44:09 +03:00
Rémi Verschelde
7119d355eb
String: Remove TTR and DTR defines in non-tools build
...
This ensures we don't use TTR in runtime code, as it's specifically meant
to source translations for the editor.
2022-03-28 20:26:35 +02:00
Rémi Verschelde
2e85105959
Merge pull request #59555 from Sauermann/fix-mouseover-drag
2022-03-28 20:21:28 +02:00
Rémi Verschelde
abbb0dc082
Merge pull request #59548 from akien-mga/obj-remove-unused-categories
2022-03-28 14:17:24 +02:00
Markus Sauermann
ffe42171a5
Fix using Viewport::warp_mouse within Viewports
2022-03-28 11:59:40 +02:00
Rémi Verschelde
7e5cd4bb48
Merge pull request #59118 from Sauermann/fix-window-input-event-coordinates
2022-03-28 09:54:59 +02:00
Markus Sauermann
ba208df6e6
Send a focus-out notification when opening a Window Manager Popup
2022-03-28 09:40:36 +02:00
Rémi Verschelde
00e9170812
Merge pull request #59574 from Sauermann/proposal-rename-warp-mouse
...
Rename warp mouse functions to warp_mouse
2022-03-28 08:52:02 +02:00
Fabio Alessandrelli
4a95408dd4
[Net] Change HTTPRequest timeout type to double.
...
For consistency with the Timer class and general time representation
inside the engine.
2022-03-27 18:15:56 +02:00
Markus Sauermann
d8a3d4b9da
Send Mouse Enter/Exit Notifications independently of mouse focus
2022-03-27 14:20:03 +02:00
Markus Sauermann
0494e024d8
Rename warp mouse functions to warp_mouse
2022-03-27 14:12:01 +02:00
Univeous
383dc11965
Fix UI navigation with joysticks
2022-03-27 17:41:29 +08:00
Rémi Verschelde
5371009d8e
Object: Remove unused category boilerplate
...
We might want to re-add something like this if/when we find a good use case
for it and do the effort to categorize all objects in the API properly.
Until then, it's better to remove that boilerplate since it's not needed.
Closes #18711 .
2022-03-26 15:46:01 +01:00
Markus Sauermann
8d60e8b5d4
Update root order on layer change
...
When the layer of a CanvasLayer changes, the order of roots needs to be recalculated.
2022-03-24 19:25:38 +01:00
Jason Knight
640099cce5
Bind NOTIFICATION_LOCAL_TRANFORM_CHANGED
2022-03-20 11:34:01 -06:00
Markus Sauermann
3f7770c453
Fix coordinate system for stretched viewports for subwindows.
2022-03-18 18:10:53 +01:00
Rémi Verschelde
19950076b1
Merge pull request #58394 from bruvzg/rtl_hint
2022-03-18 14:49:13 +01:00
Markus Sauermann
7451fa63f2
Simplify always true conditional
...
get_viewport() is always true, because is_inside_tree() is true.
2022-03-16 16:28:11 +01:00
Rémi Verschelde
e4b9406313
Merge pull request #59099 from RandomShaper/mouse_drop_on_disable
2022-03-14 11:18:38 +01:00
Markus Sauermann
86574b91dd
Cleanup internal GUI state, if event is accepted in _input.
2022-03-14 08:38:48 +01:00
kobewi
3c53752b4a
Cleanup embed subwindows getters
2022-03-13 18:20:53 +01:00
kobewi
bcf13dc175
Expose methods for screen-space transforms
2022-03-13 16:05:08 +01:00
Pedro J. Estébanez
d083fb21c7
Drop mouse focus and over when gui input is globally disabled
2022-03-13 12:45:32 +01:00
Markus Sauermann
40c08e522f
Revert "Update mouse cursor shape after changes"
...
This reverts commit 0fce98b4b5
.
2022-03-10 09:43:06 +01:00
reduz
21637dfc25
Remove VARIANT_ARG* macros
...
* Very old macros from the time Godot was created.
* Limited arguments to 5 (then later changed to 8) in many places.
* They were replaced by C++11 Variadic Templates.
* Renamed methods that take argument pointers to have a "p" suffix. This was used in some places and not in others, so made it standard.
* Also added a dereference check for Variant*. Helped catch a couple of bugs.
2022-03-09 18:39:13 +01:00
Markus Sauermann
0fce98b4b5
Update mouse cursor shape after changes
...
This fixes some cases where the mouse cursor shape did not change automatically, but instead required a MouseMove to update.
2022-03-09 07:54:03 +01:00
kobewi
bc3aff9b46
Various code and documentation improvements
2022-03-05 22:00:35 +01:00
Rémi Verschelde
345b4bb86a
Merge pull request #58282 from keptsecret/filedialog_visibility_unresponsive
...
Fix to prevent AcceptDialog and children class taking over main window
2022-02-28 12:48:59 +01:00
Rémi Verschelde
9b7aeaf88f
Merge pull request #58413 from Sauermann/fix-canvas-item-visibility
...
Fix invisible CanvasItem visibility issue
2022-02-28 11:24:19 +01:00
Igor Kordiukiewicz
b870b40d79
Remove files_dropped signal from SceneTree
2022-02-28 07:51:50 +01:00
bruvzg
74ff5921d6
Improve popup window handling.
...
Add window FLAG_POPUP and a platform specific routines to control popup auto-hiding and event forwarding.
2022-02-25 09:33:27 +02:00
Markus Sauermann
dce6cb7393
Fix invisible CanvasItem visibility issue
2022-02-22 10:13:02 +01:00
bruvzg
7385c3602d
Add RichTextLabel "hint" tag.
2022-02-21 19:34:16 +02:00
kobewi
3a77484f70
Fix CanvasItem visibility propagation
2022-02-19 22:40:53 +01:00
Markus Sauermann
27aab7f7ca
Update variable name to reflect usage
2022-02-19 09:19:15 +01:00
Rémi Verschelde
417698c202
Merge pull request #58042 from Sauermann/fix-viewport-border-notifications
...
Fix Viewport mouse enter+exit notifications
2022-02-19 09:07:07 +01:00
keptsecret
128e98c124
fixed wrong ifdef enclosed block
2022-02-18 13:31:54 -05:00
keptsecret
cb905fa957
prevent acceptdialog taking over main editor window when made visible
2022-02-18 11:06:41 -05:00
diddykonga
78dc608aa8
Change 'find_node' to 'find_nodes' and Add 'type' parameter
...
Changed 'find_node' to 'find_nodes' which now returns an 'TypedArray<Node>', as well as Added a 'type' parameter to match against specific node types, which supports inheritance.
2022-02-17 01:44:13 -06:00
Markus Sauermann
415042ac89
Connect notifications from Container to Viewport
...
mouse enter+exit
2022-02-15 22:41:30 +01:00
Rémi Verschelde
0f5455230c
Use switch
consistently in _notification
(scene
folder)
2022-02-15 18:44:55 +01:00
Rémi Verschelde
171021145d
Merge pull request #58147 from Geometror/fix-tooltip-flicker
2022-02-15 18:02:55 +01:00
Hendrik Brucker
c30d161562
Fix tooltip flickering in some cases
2022-02-15 16:29:03 +01:00
Wagner Scholl Lemos
160ee4ef8e
Added show and hide methods and updated doc API.
2022-02-15 11:37:41 -03:00
Rémi Verschelde
d3a6b6daaa
Merge pull request #56953 from bruvzg/ex_wnd
2022-02-12 16:46:55 +01:00
Hendrik Brucker
b396fd4eef
Improve compilation speed (forward declarations/includes cleanup)
2022-02-12 02:46:22 +01:00
bruvzg
7d59b81d79
Add exclusive window handling to DisplayServer (on macOS and Windows).
2022-02-12 00:14:09 +02:00
Rémi Verschelde
4be8f200f0
Fix crash calling _activate()
on ShaderGlobalsOverride out of tree
...
Fixes #45984 .
2022-02-10 18:22:20 +01:00
Fabio Alessandrelli
a18ba63417
[Net] Allow to use strings as method name in RPC.
...
Node::rpc and Node::rpc_id will now also accepts Strings instead of only
accepting StringNames.
2022-02-09 14:27:16 +01:00
kobewi
ab5b5e1577
Rework CanvasItem visibility propagation
2022-02-06 00:26:28 +01:00
Rémi Verschelde
5f42e0d0ab
Merge pull request #57646 from Faless/mp/4.x_interfaces
...
[Net] Move RPC, Node cache out of MultiplayerAPI.
2022-02-05 18:26:04 +01:00
kobewi
189dab2d76
Add visibility to CanvasLayer
2022-02-05 14:02:21 +01:00
Fabio Alessandrelli
347d2dfc42
[Net] Move RPC, Node cache out of MultiplayerAPI.
...
Now uses two interfaces so it can be overridden in the future, and
core no longer depends on Node.
The interfaces are implements in scene/multiplayer.
Replaces root_node with root_path.
Remove all Node references from MultiplayerAPI.
2022-02-05 02:00:23 +01:00
Rémi Verschelde
2885befbe6
Merge pull request #55950 from Faless/mp/4.x_replication_nodes
2022-02-04 19:03:10 +01:00
Fabio Alessandrelli
d219547c96
[Net] New replication interface, spawner and synchronizer nodes.
...
Initial implementation of the MultiplayerReplicationInterface and its
default implementation (SceneReplicationInterface).
New MultiplayerSpawner node helps dealing with instantiation of scenes
on remote peers (e.g. clients).
It supports both custom spawns via a `_spawn_custom` virtual function,
and optional auto-spawn of known scenes via a TypedArray<PackedScenes>
property.
New MultiplayerSynchornizer helps synchronizing states between the local
and remote peers, supports both sync and spawn properties and is
configured via a `SceneReplicationConfig` resource.
It can also sync via path (i.e. without being spawned by a
MultiplayerSpawner if both peers has it in tree, but will not send the
spawn state in that case, only the sync one.
2022-02-04 14:56:30 +01:00
Rémi Verschelde
225a3b2545
Merge pull request #57341 from bruvzg/win_multiwin_fs
2022-02-04 13:28:56 +01:00
bruvzg
f4ea9cd9f3
[Windows] Add WS_BORDER flag to windows in WINDOW_MODE_FULLSCREEN mode to allow multi-window interface in full-screen.
...
[Windows] Add WINDOW_MODE_EXCLUSIVE_FULLSCREEN without WS_BORDER flag enabled (no multi-window support).
2022-02-04 12:08:46 +02:00
bruvzg
244db37508
Cleanup and move char functions to the char_utils.h
header.
2022-02-04 11:35:01 +02:00
Rémi Verschelde
2a3c4f00c8
Merge pull request #57541 from reduz/node-add-remove-hook
2022-02-04 10:13:29 +01:00
Rémi Verschelde
36880714e4
Merge pull request #57517 from groud/viewport_expose_gui_focus
2022-02-03 11:20:20 +01:00
Fabio Alessandrelli
6ff753675a
Merge pull request #56771 from mhilbrunner/unacceptable
...
Verify custom HTTP headers, fix off by one error
2022-02-02 18:28:30 +01:00
reduz
fbd9599b04
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
2022-02-02 11:28:11 +01:00
Rémi Verschelde
7ed7bf1fa7
Merge pull request #48156 from madmiraal/fix-46438
...
Fix `mouse_over` not dropped when mouse leaves window
2022-02-02 07:58:49 +01:00
Anilforextra
fc27636999
Vectors: Use clear() and has().
...
Use clear() instead of resize(0).
Use has() instead of "find(p_val) != -1".
2022-02-02 00:11:09 +05:45
Marcel Admiraal
eaa70fd3f8
Fix mouse_over not dropped when mouse leaves window
2022-02-01 16:12:37 +00:00
Gilles Roudière
3521eecb4c
Exposes gui_release_focus and gui_get_focus_owner to Viewport
2022-02-01 15:07:22 +01:00
Max Hilbrunner
3ef5a97505
Verify custom HTTP headers, fix off by one error
2022-01-27 03:22:37 +01:00
Max Hilbrunner
3a83872d26
HTTP comment cleanup
2022-01-27 03:22:37 +01:00
Fabio Alessandrelli
17d4d3839e
[Net] Fix HTTPRequest memory leak in compressed responses.
...
When accept_gzip = true.
2022-01-24 14:24:45 +01:00
rafallus
44f6fe4be4
Bring reusable variables out of while loop
2022-01-23 19:39:00 -06:00
Marcel Admiraal
d009aa4d02
Fix mouse position not being scaled when window size is changed
2022-01-23 11:53:58 +00:00
bruvzg
3d79ad6e50
Fix main window title translation.
2022-01-21 15:32:22 +02:00
Rémi Verschelde
d681d99e12
Merge pull request #52134 from RandomShaper/fix_naming
2022-01-20 22:01:37 +01:00
Pedro J. Estébanez
7b0ed2aa5e
Rename Variant::is_ref() to is_ref_counted()
2022-01-20 18:46:25 +01:00
Rémi Verschelde
9e0973ca23
Merge pull request #56972 from lawnjelly/warn_unused
2022-01-20 15:34:41 +01:00
lawnjelly
b411a731fe
Add nodiscard to core math classes to catch c++ errors.
...
A common source of errors is to call functions (such as round()) expecting them to work in place, but them actually being designed only to return the processed value. Not using the return value in this case in indicative of a bug, and can be flagged as a warning by using the [[nodiscard]] attribute.
2022-01-20 13:07:49 +00:00
Rémi Verschelde
28fcbdd6dd
Merge pull request #56957 from Pineapple/get-node-error-check-optimization
...
Rework Node::get_node to omit is_absolute() check in best case scenario
2022-01-20 07:34:15 +01:00
Bartłomiej T. Listwon
e2792cc71c
Rework Node::get_node to omit is_absolute() check in best case scenario
2022-01-19 21:38:18 +01:00
Rémi Verschelde
6ab5d9d008
Merge pull request #56935 from V-Sekai/window_theme_changed_signal
2022-01-19 13:31:56 +01:00
Rémi Verschelde
74b110a736
Merge pull request #56825 from bruvzg/macos_fix_fullscr_multiwindow
2022-01-19 10:03:17 +01:00
SaracenOne
2db30ef223
Add missing 'theme_changed' signal to Window class
2022-01-19 07:59:42 +00:00
bruvzg
d62ca0c9c0
Window management improvements.
...
[macOS] Fix transient windows not working in the full-screen mode.
[macOS] Fix moving transient windows to the other screen than parent window.
[macOS] Fix popup menu switch on hover.
[macOS] Use content origin rect for windows position (to ensure `DS.mouse_get_position` is equal to `DS.window_get_position` + mouse position from the input events).
[macOS] Fix incorrect input coordinates, when external display with different scaling in connected/disconnected.
[macOS/Windows] Fix moving fullscreen windows between the screens.
Add auto refocusing of the parent window, when the focused transient window is closed.
Remove redundant `DS.mouse_get_absolute_position` function (returns mouse position in the screen coordinates, same as `DS.mouse_get_position`).
2022-01-18 11:47:03 +02:00
Mario Liebisch
a5a03b3a73
Allow embedded windows to be non-resizable
...
This fixes issue #56869 .
2022-01-17 21:19:45 +01:00
Haoyu Qiu
6aecf91e4f
Replicate load-as-placeholder state on node duplication
2022-01-16 15:08:03 +08:00
Stijn Hinlopen
fb1cd9e446
Refactor CanvasItem show/hide/set_visible
2022-01-12 23:13:41 +01:00
Rémi Verschelde
d40d86b959
Merge pull request #56667 from Ice-Cube69/fix_incorrect_property_types
2022-01-11 14:34:18 +01:00
Arnav Vijaywargiya
0c46f73b5e
Fixed incorrect property types
2022-01-11 17:17:11 +05:30
Rémi Verschelde
46624388d4
Merge pull request #56322 from madmiraal/fix-42450
2022-01-11 11:33:59 +01:00
kobewi
205f56f226
Fix Tween pause behavior
2022-01-09 19:38:18 +01:00
Rémi Verschelde
07d2dfef7b
Merge pull request #53419 from TechnoPorg/rework-subwindows
2022-01-07 16:15:09 +01:00
Tomasz Chabora
e72adab511
Update the minimum size of ViewportContainer
2022-01-06 15:43:12 +01:00
Pedro J. Estébanez
2db9397fb9
Clear only owners that are no longer in the same tree
2022-01-05 14:00:49 +01:00
Rémi Verschelde
91b5c358fc
Merge pull request #55512 from RandomShaper/better_node_delete
2022-01-05 10:25:13 +01:00
Rémi Verschelde
851fb16350
Merge pull request #56305 from Calinou/rename-lod-threshold
2022-01-04 15:28:06 +01:00
Rémi Verschelde
23342ac23c
Merge pull request #54987 from KoBeWi/@@Node2D@@69@@420@@@
2022-01-04 10:08:32 +01:00
Rémi Verschelde
7f66c16c03
Merge pull request #51206 from clayjohn/Vulkan-ASSGI
2022-01-04 10:00:17 +01:00
Rémi Verschelde
fe52458154
Update copyright statements to 2022
...
Happy new year to the wonderful Godot community!
2022-01-03 21:27:34 +01:00
Marcel Admiraal
3105d9b1f3
Rename speed to velocity when it's a directional Vector
2021-12-29 15:35:26 +00:00
Hugo Locurcio
df09bc38cb
Rename Lod Threshold to Mesh Lod Threshold
...
This makes it more obvious that the setting only affects mesh LOD,
not manual (H)LOD achieved using visibility ranges.
2021-12-29 00:11:50 +01:00
Ansraer
c7a03412ac
add 2d scale factor property
2021-12-17 19:19:41 +01:00
Fabio Alessandrelli
75ed3d74e8
Merge pull request #55747 from timothyqiu/editor-proxy
...
Add proxy support for the editor
2021-12-16 10:06:14 +01:00
vitika9
51501dadcc
Added check for SceneTree being null
2021-12-13 15:41:29 +05:30
jmb462
d44b33741b
Fix bad mouse offset to show tooltips in Tree
2021-12-12 09:12:26 +01:00
Nathan Franke
49403cbfa0
Replace String comparisons with "", String() to is_empty()
...
Also:
- Adds two stress tests to test_string.h
- Changes to .empty() on std::strings
2021-12-09 04:48:38 -06:00
Nathan Franke
41a20171eb
align to horizontal_alignment, valign to vertical_alignment, related
2021-12-09 01:38:46 -06:00
Haoyu Qiu
5912dd2964
Add proxy support for the editor
...
* Adds proxy support for `HTTPRequest`.
* Adds `network/http_proxy/{host,port}` editor settings.
* Labeled as "HTTP Proxy" and it will be used for both HTTP and
HTTPS requests. This is the same convention as seen in Android
Studio's proxy settings.
* Makes Asset Library and Export Template Manager use proxy according to
the editor settings.
2021-12-09 11:48:16 +08:00
Rémi Verschelde
c1ed695f32
Merge pull request #55659 from timothyqiu/boom
...
Fix crash when `update()` is called inside `_draw()`
2021-12-06 22:39:02 +01:00
jmb462
81efebb3a1
Fix bad popups offset in editor with single window off
...
Co-authored-by: Gil Arasa Verge <gilarasaverge@gmail.com>
Co-authored-by: Tomasz Chabora <kobewi4e@gmail.com>
2021-12-06 14:29:48 +01:00
Haoyu Qiu
f18de71b56
Fix crash when update() is called inside _draw()
2021-12-06 14:20:26 +08:00
Haoyu Qiu
86a47c6540
Fix mouse cursor and notification for force dragging
2021-12-03 18:19:41 +08:00
Pedro J. Estébanez
0a0381dd0a
Rationalize Node removals and deletions
...
- Regarding preservation of owner, `free()` and `remove_child()` now behave the same: owner is kept during `tree_exiting` signal and `null` during `tree_exited`.
- `tree_exited` is emitted in the same order as `tree_exiting`.
- Superfluous code to handle cancelation of ownership is removed.
2021-12-01 14:28:59 +01:00
Rémi Verschelde
e223a9c129
Merge pull request #55486 from nekomatata/physics-contacts-debug
2021-11-30 20:21:54 +01:00
PouleyKetchoupp
1ce74c0273
Fix physics 2D/3D contact points rendering
...
Physics internal process was removed by mistake, it's needed for contact
points to be updated each frame.
Fixed some multimesh parameters to allow 3D contact points to be drawn,
although it's still not working well in 3D as only some of the contact
points are drawn, and some of them keep being drawn when the number
of visible instances drops to 0 instead of hiding them all.
2021-11-30 09:35:12 -07:00
TechnoPorg
acb90ed020
Don't obtain a reference to a subwindow
...
Fixes the wrong location being accessed after changing the order of embedded windows.
This commit also removes an unused variable.
2021-11-29 16:52:19 -07:00
kobewi
dc5f6ac4cf
Don't show tooltips for paused controls
2021-11-29 13:23:28 +01:00
Max Hilbrunner
a6a2e0feb9
Merge pull request #52387 from Calinou/node-rename-path-changed-notification
...
Rename Node's `NOTIFICATION_PATH_CHANGED` to `NOTIFICATION_PATH_RENAMED`
2021-11-25 17:47:44 +01:00
Rémi Verschelde
547c270777
Merge pull request #51679 from Je06jm/fsr
...
AMD FidelityFX Super Resolution
2021-11-24 22:34:48 +01:00
Lightning_A
e078f970db
Rename remove()
to remove_at()
when removing by index
2021-11-23 18:58:57 -07:00
Je06jm
20deb0917d
Implemented AMD's FSR as a computer shader for upscaling 3D scenes
2021-11-23 14:16:03 -07:00
Rémi Verschelde
76aa1d0a43
Merge pull request #55151 from Chaosus/control_reset_size
2021-11-22 16:22:57 +01:00
Yuri Roubinsky
eabf8f5edf
Added reset_size
method to Control
and Window
classes
2021-11-22 16:55:21 +03:00
Rémi Verschelde
78dbe4e3e4
Merge pull request #54339 from ConteZero/line_edit_drag_and_drop
2021-11-22 12:20:01 +01:00
Rémi Verschelde
b99792b5d9
Merge pull request #54167 from brunosxs/fix-game-crash-when-sending-a-notification-from-a-camera-class
2021-11-16 14:11:14 +01:00
ConteZero
2b1787b446
Fix drag and drop on LineEdit
2021-11-15 17:10:56 +01:00
kobewi
58146a74f7
Fix nodes being renamed into garbage upon conflict
2021-11-15 02:05:44 +01:00
Aaron Franke
3c0fdcc8ac
Use "enum class" for input enums
2021-11-12 15:37:54 -06:00
megalobyte
e3def40160
Update editor description property flag
2021-11-10 13:44:54 -05:00
Rémi Verschelde
665fa3d839
Merge pull request #52943 from RandomShaper/property_pin_control_natural
2021-11-08 18:53:08 +01:00
Pedro J. Estébanez
8d6f80d367
Add property value pinning
2021-11-08 17:42:30 +01:00
kobewi
313ef412f5
Fix preview sun and environment names
2021-11-07 00:40:15 +01:00
clayjohn
0eff109a21
Added SSIL post processing effect
2021-11-06 12:43:19 -07:00
Rémi Verschelde
13aaa73124
Merge pull request #54573 from nekomatata/query-parameters
2021-11-05 21:52:39 +01:00
PouleyKetchoupp
acbd24ea84
Use parameter classes instead of arguments for all physics queries
...
Same as what is already done for shape queries, applied to point and ray
queries. Easier to document and more flexible to add more parameters.
Also expose intersect_point method to script in 3D.
Remove intersect_point_on_canvas in 2D, replaced with a parameter.
2021-11-04 11:44:39 -07:00
Hugo Locurcio
c012fbc8b2
Rename PROPERTY_USAGE_NOEDITOR
to PROPERTY_USAGE_NO_EDITOR
...
This is consistent with other constants that include `NO`,
such as `PROPERTY_HINT_COLOR_NO_ALPHA`.
2021-11-03 23:06:17 +01:00
Rémi Verschelde
a2803f3d86
Merge pull request #54072 from KoBeWi/hrcr_is_ded
2021-11-03 17:31:48 +01:00
Rémi Verschelde
96ce806b2f
Merge pull request #54369 from S0yKaf/fix-hardcoded-ray-distance
...
Fix hardcoded raycast distance in viewport object picking
2021-11-01 21:01:44 +01:00
vdyotte
02b6bbc5df
fix hardcoded raycast distance with viewport object picking
...
having the raycast distance hardcoded to `10000` caused input events
to not be registered in very large 3D scenes.
This resolves the issue by using the cameras far distance instead.
Creating the more predictable behavior of if an object is visible,
it will be picked by the viewport.
resolves : #49735
2021-10-28 23:08:48 -04:00
Lyuma
97a4ae9e0f
Fix off by one in Viewport.render_target_update_mode property enum
2021-10-28 19:42:31 -07:00
Rémi Verschelde
3b11e33a09
clang-format: Disable alignment of operands, too unreliable
...
Sets `AlignOperands` to `DontAlign`.
`clang-format` developers seem to mostly care about space-based indentation and
every other version of clang-format breaks the bad mismatch of tabs and spaces
that it seems to use for operand alignment. So it's better without, so that it
respects our two-tabs `ContinuationIndentWidth`.
2021-10-28 15:19:35 +02:00
kobewi
de4f29f458
Remove node_hrcr hack
2021-10-28 01:43:34 +02:00
bruvzg
ebbc25e89c
Ignore empty Font resources as theme override.
...
Add range hint to font_size properties.
Remove excessive `base_size` Font property.
2021-10-25 14:05:37 +03:00
BrunoSXS
eb2deabffe
Fixes a game crash caused by instantiating Camera2D and sending a notification from it before adding it to the tree.
2021-10-23 17:30:18 -03:00
Rémi Verschelde
9f7218eb69
Merge pull request #54088 from madmiraal/remove-unimplemented-methods
2021-10-22 12:59:32 +02:00