Hugo Locurcio
303bf247de
Add support for VRAM-compressed custom mouse cursor images
...
No memory is actually saved when using this, so lossless modes are
still recommended as they look better and load faster.
2023-04-21 18:01:47 +02:00
bruvzg
520a8d8ed2
Add project manager / editor initial screen settings, implement DisplayServer.get_keyboard_focus_screen method.
2023-04-19 08:54:53 +03:00
Rémi Verschelde
63d17df83e
Merge pull request #74978 from bruvzg/linux_version_check
...
[Linux/BSD] Add dynamically loaded library version checks.
2023-04-18 23:38:51 +02:00
Yuri Sizov
f5f796b0b7
Merge pull request #76040 from MightiestGoat/fix-sliding-window-linux-via-tracking-parent
...
Fix the sliding window problem in linux occur due to reparenting of the window due to decoration.
2023-04-14 13:11:36 +02:00
mightygoat
932afc3bf5
Fix the sliding window problem in linux occur due to reparenting of the window during the decoration via tracking the parent of the window
2023-04-14 00:45:34 +05:30
Kvel2D
41f0a523db
Fix custom cursor using atlas texture
...
Remove image.is_valid() check
There is already a fail condition and image is not used before that
Move up texture_is_valid() check
2023-04-11 19:16:24 +02:00
Sabrehull
d4b7466266
[X11] Fix layout bug in `keyboard_get_keycode_from_physical`
2023-03-29 15:18:31 +02:00
bruvzg
09465f3fe6
Remove (or make verbose only) various debug prints.
2023-03-20 08:14:18 +02:00
bruvzg
bed46f723c
[Linux/BSD] Add dynamically loaded library version checks.
2023-03-20 08:10:56 +02:00
Hugo Locurcio
ddc9cc3e49
Tweak command syntax in Vulkan renderer failure message
...
This quotes the executable name so that copying it always works
(even if the path contains spaces).
The command is also indented from the rest of the text and is
no longer single-quoted, as that can prevent the command from
running if the line is copied in its entirety (with the quotes).
2023-03-08 22:28:23 +01:00
Rémi Verschelde
511dac838b
Merge pull request #74598 from bruvzg/x11_kc
...
[Linux/X11] Add some missing keycodes/scancodes.
2023-03-08 14:06:58 +01:00
bruvzg
5d35c600d5
[Linux/X11] Add some missing keycodes/scancodes.
2023-03-08 12:13:41 +02:00
Rémi Verschelde
8325320192
Merge pull request #74563 from clayjohn/X11-context
...
Propogate errors when creating an OpenGL context fails in X11
2023-03-08 08:58:35 +01:00
clayjohn
e7ea3ef531
Propogate errors when creating an OpenGL context fails in X11
2023-03-07 11:12:21 -08:00
Rindbee
91e460d500
Fix broken shortcut key input
2023-03-07 16:06:38 +08:00
Rémi Verschelde
5f2137a050
Merge pull request #74087 from bruvzg/get_screen_px
...
[DisplayServer] Implement screen_get_pixel method for LinuxBSD/X11, macOS and Windows.
2023-03-06 21:58:58 +01:00
bruvzg
8a675f3824
[Linux/X11] Check if required xkb functions exist before using it.
2023-03-02 10:25:50 +02:00
bruvzg
e7647b5ee5
[DisplayServer] Implement screen_get_pixel method for LinuxBSD/X11, macOS and Windows.
2023-03-01 09:32:23 +02:00
Rémi Verschelde
9e6cb51939
Merge pull request #73752 from bruvzg/x11_quote_left
...
Fix X11 QUOTELEFT / SECTION physical key mapping.
2023-02-24 14:11:25 +01:00
bruvzg
693afe95d3
Fix X11 QUOTELEFT / SECTION physical key mapping.
2023-02-22 13:16:58 +02:00
bruvzg
fdf56a2fc2
[Input] Use BRACKET_ instead of BRACE_ for physical keys.
2023-02-22 12:39:30 +02:00
Rémi Verschelde
f84479fe5a
Merge pull request #72877 from bruvzg/x11_on_top
...
[X11] Fix initial "on top" window state.
2023-02-17 16:21:13 +01:00
bruvzg
853f0eae58
[X11] Fix initial "on top" window state.
2023-02-17 16:08:26 +02:00
Rémi Verschelde
4574b97752
Fix crash with bogus shape index to DisplayServer.cursor_set_custom_image()
...
Fixes #66605 .
2023-02-17 14:17:37 +01:00
bruvzg
dd068794c3
[Linux] Make SO wrapper usage optional.
2023-02-16 16:38:47 +02: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
80dc7713f9
[X11] Do not suppress structure/focus events on popup close to correctly return focus.
2023-02-07 12:13:34 +02:00
bruvzg
103f671ada
[X11] Fix IME window focus events.
2023-02-06 09:18:16 +02:00
Rémi Verschelde
707ccc09ab
Merge pull request #72104 from bruvzg/popup-non-popups
...
Extend special popup window handling to any non-popup child of a popup.
2023-02-01 11:07:39 +01:00
bruvzg
9f42649823
[X11] Fix IME subwindow in the popup not getting input focus.
2023-02-01 11:10:10 +02:00
bruvzg
4c50ac3921
[X11] Add support for dead keys without active IME. Fix IME focus and cleanup.
2023-01-30 13:31:48 +02:00
Rémi Verschelde
a0a633ae58
Merge pull request #72102 from Riteo/keymapx11-scope-goodness
...
Put KeyMappingX11 stuff inside its own scope
2023-01-27 10:30:20 +01:00
bruvzg
700d85bd19
Extend special popup window handling to any non-popup child of a popup.
2023-01-26 12:38:53 +02:00
bruvzg
912c937921
[X11] Fix IME focus return.
2023-01-26 10:13:51 +02:00
Riteo
aa7cd71498
Put KeyMappingX11 stuff inside its own scope
...
This avoids collisions with other "concurrent" key mappers.
2023-01-26 03:19:36 +01:00
Rémi Verschelde
67961d8ebf
Merge pull request #72029 from bruvzg/x11_keycode
...
[X11] Fix incorrect keycodes from non-QWERTY layouts.
2023-01-25 12:17:41 +01:00
bruvzg
1bb7e357a0
[X11] Fix incorrect keycodes from non-QWERTY layouts.
2023-01-25 13:04:02 +02:00
bruvzg
5ebb60e0cf
[X11] Make IME focus window input only.
2023-01-25 12:31:42 +02:00
Rémi Verschelde
4368191a9f
Merge pull request #72018 from bruvzg/x11_ime_loop
...
[X11] Prevent IME activation from entering infinite loop.
2023-01-25 09:44:50 +01:00
bruvzg
b713cfdccd
[X11] Prevent IME activation from entering infinite loop.
2023-01-25 10:21:27 +02:00
Riteo
beaff2f5cb
Move xkbcommon dynamic loading code into generic linuxbsd folder
...
Since Wayland uses it too, it only makes sense to have it in the parent
directory of both.
2023-01-25 03:28:13 +01:00
bruvzg
5c4fe6339b
[Linux/BSD] Include headers for dynamically loaded libraries to simplify build dependencies.
2023-01-23 16:37:43 +02:00
bruvzg
daad4aed62
Cleanup and unify keyboard input.
...
- Unify keycode values (secondary label printed on a key), remove unused hardcoded Latin-1 codes.
- Unify IME behaviour, add inline composition string display on Windows and X11.
- Add key_label (localized label printed on a key) value to the key events, and allow mapping actions to the unshifted Unicode events.
- Add support for physical keyboard (Bluetooth or Sidecar) handling on iOS.
- Add support for media key handling on macOS.
Co-authored-by: Raul Santos <raulsntos@gmail.com>
2023-01-23 15:08:12 +02:00
Rémi Verschelde
68d71f88f5
Improve DisplayServer message for video card drivers failure
...
And remove leftover duplicated message on Android.
2023-01-17 15:41:54 +01:00
bruvzg
60e0043012
Fix X11 input region size.
2023-01-17 07:54:54 +02: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
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
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
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
bruvzg
f7955633de
Improve `window_set_current_screen` and fix secondary window initial mode and positions.
2022-12-29 09:43:39 +02:00