Commit Graph

361 Commits

Author SHA1 Message Date
Rémi Verschelde a139cd611a
Merge pull request #92826 from bruvzg/nat_icon_checks
Improve native menu and status indicator icons conversion and checks.
2024-06-07 23:30:39 +02:00
Rémi Verschelde e52658643d
Merge pull request #92702 from kleonc/cursor_image_from_atlas_texture_fix
Fix creating cursor image from `AtlasTexture`
2024-06-07 23:29:57 +02:00
bruvzg 28ec2240c4
Improve native menu and status indicator icons conversion and checks. 2024-06-06 07:46:09 +03:00
kleonc 91e995e704 Fix creating cursor image from AtlasTexture 2024-06-05 01:44:05 +02:00
Hilderin e201e5bf30 Fix Windows Activate Process 2024-06-03 19:33:41 -04:00
bruvzg 5168647530
Use current mouse button state instead of saved values. 2024-05-31 15:50:14 +03:00
Rémi Verschelde d30456fea8
Merge pull request #92415 from bruvzg/win_mod_keys
[Windows] Use current keyboard state instead of saved values for modifier keys.
2024-05-31 14:16:13 +02:00
Rémi Verschelde ffad49f169
Merge pull request #86029 from 0x0ACB/resize_fix
Remove dead code from `DisplayServerWindows::window_set_size`
2024-05-30 11:47:21 +02:00
bruvzg 714effdf07
[DisplayServer] Add error messages and descriptions to callbacks. 2024-05-28 17:36:54 +03:00
ACB 9dd1268306 remove dead code from DisplayServerWindows::window_set_size 2024-05-28 08:55:15 +02:00
bruvzg 62e41087d5 [Windows] Use current keyboard state instead of saved values for modifier keys. 2024-05-27 09:15:01 +03:00
bruvzg fc89a0c118
Fix build with `vuklan=no` and `d3d12=no` after #91505. 2024-05-25 21:08:50 +03:00
bruvzg 628c81d2d9
[DisplayServer] Add method to check if window transparency is supported and enabled. 2024-05-23 15:23:18 +03:00
Paulo Poiati a3769c0edc Properly set window class in Wayland 2024-05-22 10:42:12 -03:00
Pedro J. Estébanez fc08eca524 DisplayServer: Avoid deadlocks while issuing input events and recursive main loop iterations 2024-05-08 17:41:40 +02:00
Rémi Verschelde 2885620385
Merge pull request #91361 from RandomShaper/fix_no_focusin
Windows: Fix `WINDOW_EVENT_FOCUS_IN` not delivered in some cases
2024-05-07 13:48:48 +02:00
A Thousand Ships 955d5affa8
Reduce and prevent unnecessary random-access to `List`
Random-access access to `List` when iterating is `O(n^2)` (`O(n)` when
accessing a single element)

* Removed subscript operator, in favor of a more explicit `get`
* Added conversion from `Iterator` to `ConstIterator`
* Remade existing operations into other solutions when applicable
2024-05-04 16:08:55 +02:00
Pedro J. Estébanez 12fda2fc13 Windows: Fix WINDOW_EVENT_FOCUS_IN not delivered in some cases 2024-05-03 13:42:12 +02:00
bruvzg e5205e589f
[StatusIndicator] Add method to get indicator icon screen rect. 2024-05-02 14:39:33 +03:00
Rémi Verschelde 85062e37ef
Merge pull request #89588 from bruvzg/status_ind_menu_direct
[StatusIndicator] Switch API to use Texture2D instead of Image, improve handling on macOS, add method to set native popup menu directly.
2024-05-01 09:54:44 +02:00
A Thousand Ships 31e7ee63f2
Fix unsafe uses of `Callable.is_null()`
`Callable.is_null()` is not equivalent to `!Callable.is_valid()` and
doesn't guarantee the call is valid.
2024-04-27 16:22:57 +02: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
Rémi Verschelde dc91479082
Merge pull request #90382 from RandomShaper/win_focus_fix
Windows: Fix mouse handling regression
2024-04-08 15:54:32 +02:00
Pedro J. Estébanez bdfe76b200 Windows: Fix mouse handling regression 2024-04-08 13:05:01 +02:00
Rémi Verschelde 7d96ec4f9d
Merge pull request #88329 from ManpreetXSingh/key-window-menu
Windows: Add support for enabling Alt+Space menu and fix borderless maximize
2024-04-08 11:20:05 +02:00
Manpreet Singh 329d04d331 Windows: Add alt+space menu and fix window modes 2024-04-06 16:26:19 +05:30
Pedro J. Estébanez 9240034d3c Robustify handling of activation & focus on Windows 2024-04-03 15:52:11 +02:00
bruvzg dc01658ee9
[DisplayServer] Add separate feature flags for different native dialog types. 2024-03-26 15:18:06 +02:00
A Thousand Ships 79ba22a73f
Use `Vector*` component-wise `min/max/clamp` functions where applicable 2024-03-20 13:47:42 +01:00
bruvzg 0587a1d217
[StatusIndicator] Switch API to use Texture2D instead of Image, improve handling on macOS, add method to set native popup menu directly. 2024-03-20 11:56:07 +02:00
bruvzg ebb19c4198 [NativeMenu] Fix changes lost due to incorrect rebase (menu goes under task bar, dark mode, item text get, docs) and check to ensure help menu is not using native menu on Windows. 2024-03-15 22:46:47 +02:00
Rémi Verschelde 4ca6cd054f
Merge pull request #89273 from bruvzg/win_native_menu
[NativeMenu] Implement native popup menu support on Windows.
2024-03-14 22:34:42 +01:00
bruvzg ac7583e449
[NativeMenu] Implement native popup menu support on Windows. 2024-03-13 10:51:38 +02:00
Thaddeus Crews 3b3e2374c9
clang-tidy: Enforce `modernize-use-nullptr` 2024-03-12 10:59:53 -05:00
bruvzg 620e194727
[Windows] Disable fallback to ANGLE logic when compiled w/o ANGLE support. 2024-03-10 13:18:03 +02:00
K. S. Ernest (iFire) Lee 0a47f4ebd2 Avoid scale_with_dpi constexpr compiler error. 2024-03-06 15:15:01 -08:00
Rémi Verschelde 13954fc33e
Merge pull request #87452 from bruvzg/native_menu
Move `global_menu_*` methods to a separate `NativeMenu` class.
2024-03-06 13:16:52 +01:00
398utubzyt 1c10f577cb Windows: Fix `FreeLibrary` not always being called in `dialog_show` 2024-03-05 10:31:32 -08:00
Rémi Verschelde 2862cb19a8
Merge pull request #88957 from 398utubzyt/windows/native-dialogs
Windows: Implement `dialog_show` and `dialog_input_text` for `DisplayServer`
2024-03-05 09:56:00 +01:00
bruvzg c65a667924
Move `global_menu_*` methods to a separate `NativeMenu` class. 2024-03-04 23:41:41 +02:00
398utubzyt 99500611b2 Windows: Implement `DisplayServer::dialog_show` and `DisplayServer::dialog_input_text` 2024-03-04 12:53:22 -08:00
Rémi Verschelde 6d9a529c87
Merge pull request #88970 from KoBeWi/ImageCursor2D
Improve `cursor_set_custom_image()` method
2024-02-29 13:54:53 +01:00
kobewi 3aeb4a5542 Improve cursor_set_custom_image() method 2024-02-28 20:32:25 +01:00
Rémi Verschelde 3a08c646ee
Pre-commit: Update to clang-format 17.0.6 and black 24.2.0 2024-02-28 14:25:35 +01:00
bruvzg a0084803b4
[macOS/Windows] Fix application indicator destruction. 2024-02-27 22:19:47 +02:00
bruvzg e939341a0b
[Windows] Set application user model ID to prevent editor / running project and different versions of editor taskbar icon stacking. 2024-02-23 13:16:58 +02:00
Rémi Verschelde b2fa20922f
Merge pull request #88405 from bruvzg/fix_non_bgra_dib
[Windows] Fix reading non-BGRA8 DIBs from clipboard.
2024-02-17 00:27:23 +01:00
bruvzg 9777a0132e [Windows] Fix reading non-BGRA8 DIBs from clipboard. 2024-02-16 17:10:16 +02:00
Rémi Verschelde 92e9bcb633
Merge pull request #80548 from garychia/keyboard_focus
Ensure the active window gains the keyboard focus
2024-02-15 15:44:16 +01:00
bruvzg ee53ae28df
Add method to get "base" system UI color (macOS/Windows) and system theme change callback. 2024-02-13 18:38:53 +02:00