1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-05 12:10:55 +00:00
Commit Graph

281 Commits

Author SHA1 Message Date
Markus Sauermann
0eff41d045 Fix displaying of embedded Window
Fix Rect of texture to take window and stretch transform into account.

There is no need for `viewport_attach_to_screen` for embedded windows,
since their display is handled via `Viewport::_sub_window_update`.
2024-12-17 08:38:14 +01:00
bruvzg
9fece033ab [macOS, Windows] Add support for excluding windows from a screenshot. 2024-12-10 11:00:13 +02:00
Rémi Verschelde
302da3d9a4 Merge pull request #99669 from syntaxerror247/root_window_issues
Fix root window size bug on `Android`
2024-12-02 15:51:16 +01:00
Anish Mishra
c699d5bada Fix root window size bug on Android 2024-12-02 19:00:28 +05:30
kobewi
e0304a7d00 Add helper method to get Window from ID 2024-11-29 21:15:23 +01:00
Pāvels Nadtočajevs
932b2269f8 Fix missing native file dialog title translation. 2024-11-14 14:48:52 +02:00
Fabio Alessandrelli
7cd850b909 [Debugger] Move quit shortcut configuration to the SceneDebugger 2024-11-07 15:03:17 +01:00
Thaddeus Crews
7dbea98c49 Merge pull request #97005 from Repiteo/core/window-corner-style
Core: Add `DisplayServer` flag for sharp corners
2024-10-21 16:39:25 -05:00
Thaddeus Crews
f8c4a683d7 Core: Add DisplayServer flag for sharp corners 2024-10-18 11:20:21 -05:00
Haoyu Qiu
009446a277 Add System Locale layout direction for Control and Window 2024-10-17 07:52:07 +08:00
Markus Sauermann
60aaa017ff Enable Drag and Drop for SubViewports and Windows
Make Drag and Drop an application-wide operation.
This allows do drop on Controls in other Viewports/Windows.

In order to achieve this, `Viewport::_update_mouse_over` is adjusted to
remember the Control, that the mouse is over (possibly within nested
viewports). This Control is used as a basis for the Drop-operation, which
replaces the previous algorithm, which was only aware of the topmost
Viewport.

Also now all nodes in the SceneTree are notified about the Drag and Drop
operation, with the exception of SubViewports that are not children of
SubViewportContainers.
2024-09-15 01:06:02 +02:00
Rémi Verschelde
83d54ab2ad Merge pull request #96708 from bruvzg/lbl3d_os
[Label3D] Fix updating labels in subvieports on oversampling change.
2024-09-12 10:28:52 +02:00
rune-scape
0dde931bc9 StringName: Fix empty hash
+Fixed compat hashes
2024-09-09 13:30:02 -07:00
bruvzg
bdd5117086 [Label3D] Fix updating labels in subvieports on oversampling change. 2024-09-08 15:11:13 +03:00
Rémi Verschelde
091212b4f1 Merge pull request #93602 from aaronp64/inspector_latency
Improve Editor Inspector/Theme item lookup performance
2024-08-22 00:10:26 +02:00
aaronp64
7593e55527 Improve Editor Inspector/Theme item lookup performance
Changes to reduce the latency between changing node selection in the editor and seeing the new node reflected in the Inspector tab

- Use Vector instead of List for ThemeOwner::get_theme_type_dependencies and related functions
- Use Vector instead of List for ThemeContext::themes, set_themes(), and get_themes()
- Add ClassDB:get_inheritance_chain_nocheck to get all parent/ancestor classes at once, to avoid repeated ClassDB locking overhead
- Update BIND_THEME_ITEM macros and ThemeDB::update_class_instance_items to use provided StringNames for call to ThemeItemSetter, instead of creating a new StringName in each call

These changes reduce the time taken by EditorInspector::update_tree by around 30-35%
2024-08-20 13:39:40 -04:00
DE-YU
46abbae2b0 Fix Window.wrap_controls does not account for the content_scale_factor 2024-08-19 14:48:43 +02:00
Haoyu Qiu
7343dc3a5d Split TranslationServer into its own file 2024-08-15 15:00:47 +08:00
kit
fce60c2b3f Fix update mouse cursor state wrong mouse position 2024-07-31 14:10:40 -04:00
Alvin Wong
97aa278edb Pass window exclusive and transient properties for subwindow creation
On Windows this allows to avoid having to change the owner of the window
after it has been created, which in rare circumstances may cause the
window to bug out.
2024-07-25 00:27:27 +08:00
bruvzg
18393eb09a [Window] Ignore duplicate mouse enter events. 2024-06-12 22:37:28 +03:00
bruvzg
768fd1eacb [Window] Fix mouse hover state of the main window when mouse enter event was sent before setting callbacks. 2024-06-10 18:43:01 +03:00
bruvzg
864a93fdbf Fix excessive canvas items updates. 2024-06-05 21:01:30 +03:00
bruvzg
9fb9660912 Force canvas item update on oversampling change. 2024-06-03 19:46:49 +03:00
bruvzg
5c433cf693 Update editor Window preview position when resizing window. 2024-05-31 07:52:46 +03:00
Rémi Verschelde
c9f249796d Merge pull request #92317 from bruvzg/emb_decorations
Fix `get_position_with_decorations` and `get_size_with_decorations` for embedded windows.
2024-05-30 11:48:02 +02:00
bruvzg
19839d9553 Fix Window position preview in the editor. 2024-05-29 11:56:06 +03:00
bruvzg
64d789aba7 Fix get_position_with_decorations and get_size_with_decorations for embedded windows. 2024-05-24 20:10:36 +03:00
kobewi
413c11357d Use Core/Scene stringnames consistently 2024-05-13 23:41:07 +02:00
kobewi
a262d2d881 Add shorthand for using singleton string names 2024-05-11 18:53:08 +02:00
A Thousand Ships
308dbb8c63 [Core] Add scalar versions of Vector* min/max/clamp/snap(ped)
Convenience for a number of cases operating on single values
2024-05-02 10:31:13 +02:00
Rémi Verschelde
c951421c99 Merge pull request #90268 from RandomShaper/wtp_servers
Use WorkerThreadPool for Server threads (enhanced)
2024-04-15 10:12:00 +02:00
aaronp64
4ed51933f9 Fix Window.hide() crash when force_native changed
Moved force_native = p_force_native assignment to after is_visible() check, to prevent value from changing after window is shown.

Fixes #90609
2024-04-13 14:03:29 -04:00
Pedro J. Estébanez
c28f5901c7 Polish interaction between windowing, input and rendering
- Adapt GL make/release API to the current architecture.
- Fix DisplayServer being locked while dispatching input (prevent deadlocks).
2024-04-10 18:47:42 +02:00
Markus Sauermann
945babc619 Prohibit execution of delayed input events by different means
In some cases it can happen, that the order of input events and
window events is not followed, when input buffering or input accumulation
is active.

The display server order `InputEvent` => window-event gets changed to
window-event => `InputEvent` which becomes problematic in certain
situations.

This PR makes sure, that the order is adhered to by flushing input events
before a window event is sent.
Previously this problem was mitigated by discarding these delayed events.
But this solution was problematic in the setting of android input events.
2024-03-27 20:58:15 +01:00
Rémi Verschelde
d66539e485 Merge pull request #89673 from bruvzg/f_na_ed
Do not apply `force_native` to the edited scene windows.
2024-03-25 13:16:03 +01:00
A Thousand Ships
79ba22a73f Use Vector* component-wise min/max/clamp functions where applicable 2024-03-20 13:47:42 +01:00
bruvzg
92d69da7a6 Do not apply "force_native" to the edited scene windows. 2024-03-19 12:39:50 +02:00
bruvzg
cfdb968848 [Window] Allow to override viewport and project settings and force use of native window. 2024-03-04 23:06:27 +02:00
Rémi Verschelde
3ce9ae71fc Merge pull request #84906 from /fix-some-defvals 2024-02-23 11:29:22 +01:00
Raul Santos
5ba92e5a57 Fix some DEFVALs to use the right type
- Use `StringName()` in DEFVAL for StringNames.
- Use `Variant()` in DEFVAL for Variants.
2024-02-23 01:50:18 +01:00
Michael Alexsander
584a6aeeb7 Revert "Fix NOTIFICATION_WM_SIZE_CHANGED firing if the size hasn't changed"
This reverts commit 957378a69e, reversing
changes made to 0d88840e81.
2024-02-21 15:37:53 -03:00
Rémi Verschelde
dfcecb77bd Merge pull request #79617 from sepTN/add-screensize-check-popup
Add size check to prevent popup bigger than the screen itself
2024-02-19 00:07:01 +01:00
Septian
34210e812a Add screen size check on popup 2024-02-19 00:25:02 +07:00
Michael Alexsander
7b42c24550 Make auto translation inheritable 2024-02-15 16:51:19 -03:00
bruvzg
0d88aadd53 Automatically set viewport background to transparent when window flag is set. 2024-02-02 10:40:26 +02:00
A Thousand Ships
15369fdb1d Remove unnecessary this-> expressions 2024-01-29 09:59:18 +01:00
Rémi Verschelde
03767fbf3b Merge pull request #86446 from reduz/transient-to-focused
Implement a `transient_to_focused` Window mode
2024-01-15 13:25:00 +01:00
Juan Linietsky
15144c24bd Implement a transient_to_focused mode
This intends to be the correct way to handle non-child windows becoming covered by the current window when becoming focused.
Enabling this property on select windows, they will become transient to the currently focused one when becoming visible.

This deprecates the "unparent_when_invisible" function introduced by #76025.
2024-01-14 18:51:44 +01:00
Jakub Marcowski
06534f8ad5 Add deprecation notice to a duplicate method of class Window 2024-01-12 18:18:28 +01:00