Commit graph

140 commits

Author SHA1 Message Date
A Thousand Ships
79ba22a73f
Use Vector* component-wise min/max/clamp functions where applicable 2024-03-20 13:47:42 +01:00
Thaddeus Crews
3b3e2374c9
clang-tidy: Enforce modernize-use-nullptr 2024-03-12 10:59:53 -05:00
bruvzg
c65a667924
Move global_menu_* methods to a separate NativeMenu class. 2024-03-04 23:41:41 +02:00
Rémi Verschelde
b0b9c66a7f
Merge pull request #88987 from bruvzg/macos_12_depr_warn
[macOS] Fix some deprecation warnings.
2024-02-29 13:55:08 +01: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
bruvzg
e15a2ff1db
[macOS] Fix some deprecation warnings. 2024-02-28 23:38:29 +02: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
606a475bb5
[macOS] Ignore window decorations in confined mouse mode to match other platforms. 2024-02-18 23:53:45 +02:00
Rémi Verschelde
c4869cf15a
Merge pull request #88274 from bruvzg/macos_hdr_picker
[macOS] Fix color picker on HDR screens.
2024-02-15 17:35:48 +01:00
passivestar
757a691b5e Fix Ctrl+Tab and Ctrl+Shift+Tab on macOS 2024-02-15 02:49:31 +04:00
Rémi Verschelde
b6dee8850b
Merge pull request #87384 from bruvzg/sys_base_color
Add method to get "base" system UI color and system theme change callback.
2024-02-13 23:43:21 +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
bruvzg
deffe6a3be
[macOS] Add support for native help menu search callbacks, integrate editor help. 2024-02-13 18:37:37 +02:00
Rémi Verschelde
b50001ecfe
Merge pull request #87999 from bruvzg/metal_layer
[macOS / iOS] Switch Vulkan init to `VK_EXT_metal_surface` extension.
2024-02-13 17:24:15 +01:00
bruvzg
f458943455
[macOS / iOS] Switch Vulkan init to VK_EXT_metal_surface extension. 2024-02-13 16:57:02 +02:00
bruvzg
8da36031e4
Implement support for application status indicators (tray icons). 2024-02-13 15:59:35 +02:00
bruvzg
d9b7075ba6
[macOS] Fix color picker on HDR screens. 2024-02-13 11:24:43 +02:00
Dario
73eff10c76 Finish splitting functionality of the Vulkan and D3D12 backends into RenderingDeviceDriver. 2024-02-12 10:02:18 -03:00
bruvzg
112f489449
[macOS] Fix changing main menu item names. 2024-02-03 21:12:48 +02:00
Stuart Carnie
8f6d4eaa31
use autorelease pools around main loop
Reduces memory usage considerably
2024-02-02 07:06:53 +11:00
Rémi Verschelde
f220d46cdc
Merge pull request #80231 from romlok/input-key-location
Support detecting and mapping ctrl/alt/shift/meta by their left/right physical location
2024-01-29 13:15:42 +01:00
Mel Collins
8406e60522 Add InputEventKey.location to tell left from right
This adds a new enum `KeyLocation` and associated property
`InputEventKey.location`, which indicates the left/right location of key
events which may come from one of two physical keys, eg. Shift, Ctrl.

It also adds simulation of missing Shift KEYUP events for Windows.
When multiple Shifts are held down at the same time, Windows natively
only sends a KEYUP for the last one to be released.
2024-01-26 14:42:28 +01:00
bruvzg
a8f521bcad
[Native File Dialog] Add support for adding custom options to the dialogs.
Add support for adding custom options (checkboxes and optionboxes) to the dialogs (both native and built-in).
2024-01-24 15:00:31 +02:00
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
Yuri Sizov
3a8524dd92
Merge pull request #83452 from RandomShaper/rd_common
Split `RenderingDevice` into API-agnostic and `RenderingDeviceDriver` parts
2023-12-20 20:09:18 +01:00
Pedro J. Estébanez
12a519bae2 Split RenderingDevice into API-agnostic and RenderingDeviceDriver parts
Credit and thanks to @bruzvg for multiple build fixes, update of 3rd-party items and MinGW support.

Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2023-12-20 19:18:08 +01:00
Yuri Sizov
aee8a3bada Merge pull request #75489 from bruvzg/init_pos_usable
[DisplayServer] Use screen "usable rect" instead of full rect to calculate initial window rect.
2023-12-19 20:32:10 +01:00
bruvzg
0d44b50520
[macOS] Add default Window and Help menus, allow special menu customization. 2023-12-13 23:20:05 +02:00
bruvzg
b02cf351f3
[DisplayServer] Use screen "usable rect" instead of full rect to calculate initial window rect. 2023-12-04 07:56:33 +02:00
HolySkyMin
5962e5278c Fix IME key event being erased in macOS
Fixes Korean IME behavior which calls insertText and setMarkedText at the same time.
2023-11-29 18:17:57 +09:00
bruvzg
6b25204575
[macOS] Fix transparent and borderless flags interaction with full-screen mode. 2023-11-14 08:36:32 +02:00
Rémi Verschelde
5a5b456fca
Merge pull request #84774 from akien-mga/fix-TTR-in-ERR-WARN-prints
Don't use TTR/RTR for ERR/WARN prints
2023-11-12 22:59:38 +01:00
Rémi Verschelde
15b8185c68
Don't use TTR/RTR for ERR/WARN prints
We don't translate those, only editor strings are translated.
2023-11-12 12:00:55 +01:00
Rémi Verschelde
ba713c80df
Fix various typos with codespell
Using 2.2.7.dev51+geb4a58fe.
2023-11-11 23:01:24 +01:00
Rémi Verschelde
03d97977b1
Merge pull request #84649 from bruvzg/mac_fs_fs_switch
[macOS] Fix fullscreen <-> exclusive fullscreen transition.
2023-11-09 20:05:09 +01:00
bruvzg
4fda7e14be
[macOS] Fix fullscreen <-> exclusive fullscreen transition. 2023-11-09 08:02:56 +02:00
bruvzg
f3d4f5a77e
[X11] Add fallback from desktop GL to GLES, suppress PRIME detector error spam. 2023-11-06 12:40:44 +02:00
bruvzg
4c74c7d11a
[macOS] Improve ANGLE support detection.
Try opening EGL display when checking if ANGLE is supported.
2023-11-01 08:34:35 +02:00
bruvzg
590c353707
[macOS] Fallback to native OpenGL renderer if ANGLE initialization failed. Remove platform specific renderer config values from docs. 2023-10-21 22:09:35 +03:00
bruvzg
b52826bf55
Add error messages to the native menu and file dialogs callback. 2023-10-14 18:10:39 +03:00
bruvzg
6371cc3d69
[macOS] Fix crash when using system default menu shortcuts. 2023-10-13 10:12:44 +03:00
bruvzg
3620d612ba
[macOS] Use occlusionState instead of isOnActiveSpace to determine when window is drawable. 2023-10-10 12:20:06 +03:00
A Thousand Ships
f18aa00e85 Replace ERR_FAIL_COND with ERR_FAIL_NULL where applicable 2023-10-08 17:23:33 +02:00
bruvzg
abbdc99821
[macOS] Fix ambiguous method call with older SDKs. 2023-10-05 22:12:24 +03:00
kobewi
09b30be86d Add vararg call() method to C++ Callable 2023-10-05 11:35:29 +02:00
Rémi Verschelde
d5db0e5032
Merge pull request #81218 from bruvzg/_temp_fs
[Native File Dialogs] Improve filter list handling, add selected filter to the callback.
2023-10-04 15:34:16 +02:00
bruvzg
d1aaa914f3
[macOS] Add about_to_open and popup_hide callback for the global menus, move part of logic to the PopupMenu to allow live menu modification. 2023-10-04 09:49:51 +03:00
bruvzg
43e4708dff
[Native File Dialogs] Improve filter list handling, add selected filter to the callback. 2023-10-03 19:26:16 +03:00