Commit Graph

1064 Commits

Author SHA1 Message Date
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
97062ddf2b [Linux TTS] Use Callable instead of registering methods. 2023-02-22 16:05:17 +02:00
693afe95d3 Fix X11 QUOTELEFT / SECTION physical key mapping. 2023-02-22 13:16:58 +02:00
fdf56a2fc2 [Input] Use BRACKET_ instead of BRACE_ for physical keys. 2023-02-22 12:39:30 +02:00
6e76a7fbd8 [Linux] Process TTS callback on the main thread to avoid speech-dispatcher deadlock. 2023-02-21 10:45:49 +02:00
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
853f0eae58 [X11] Fix initial "on top" window state. 2023-02-17 16:08:26 +02:00
4574b97752 Fix crash with bogus shape index to DisplayServer.cursor_set_custom_image()
Fixes #66605.
2023-02-17 14:17:37 +01:00
cefe1e0654 Merge pull request #73441 from akien-mga/linux-unbundling-fixes
Fix includes of thirdparty libs which can be unbundled on Linux
2023-02-17 09:56:02 +01:00
e2fc0acd36 Fix includes of thirdparty libs which can be unbundled on Linux
Changes `builtin_icu` and `builtin_recast` to match the folder names in
`thirdparty`.
2023-02-16 15:52:13 +01:00
dd068794c3 [Linux] Make SO wrapper usage optional. 2023-02-16 16:38:47 +02:00
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
074d87d718 Update PCK embedding SCons warning message to mention mold linker
mold is now part of the SCons `linker` option.
2023-02-13 10:55:37 +01:00
80dc7713f9 [X11] Do not suppress structure/focus events on popup close to correctly return focus. 2023-02-07 12:13:34 +02:00
103f671ada [X11] Fix IME window focus events. 2023-02-06 09:18:16 +02:00
e7779dc62d Use a "warning" icon in OS.alert() on Linux/*BSD
This is the same icon as used on Windows.
2023-02-02 15:17:15 +01:00
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
9f42649823 [X11] Fix IME subwindow in the popup not getting input focus. 2023-02-01 11:10:10 +02:00
4c50ac3921 [X11] Add support for dead keys without active IME. Fix IME focus and cleanup. 2023-01-30 13:31:48 +02:00
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
240374c58f Fix split allow empty string in SSH export plugin 2023-01-27 05:09:30 -03:00
700d85bd19 Extend special popup window handling to any non-popup child of a popup. 2023-01-26 12:38:53 +02:00
912c937921 [X11] Fix IME focus return. 2023-01-26 10:13:51 +02:00
aa7cd71498 Put KeyMappingX11 stuff inside its own scope
This avoids collisions with other "concurrent" key mappers.
2023-01-26 03:19:36 +01:00
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
1bb7e357a0 [X11] Fix incorrect keycodes from non-QWERTY layouts. 2023-01-25 13:04:02 +02:00
5ebb60e0cf [X11] Make IME focus window input only. 2023-01-25 12:31:42 +02:00
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
b713cfdccd [X11] Prevent IME activation from entering infinite loop. 2023-01-25 10:21:27 +02:00
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
5c4fe6339b [Linux/BSD] Include headers for dynamically loaded libraries to simplify build dependencies. 2023-01-23 16:37:43 +02:00
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
5b1df48c6c Convert en_GB spelling to en_US with codespell 2023-01-23 11:02:20 +01:00
271920cc54 Merge pull request #71819 from Riteo/certified-musl-moment
Make PIE relocation detection glibc-only
2023-01-21 20:52:40 +01:00
2a6ce37910 Make PIE relocation detection glibc-only
Musl doesn't compile with it, and by looking online I think that this is
a glibc only thing.
2023-01-21 17:59:52 +01:00
9faa92bda0 Exclude atomic lib under FreeBSD using LLVM 2023-01-20 20:52:19 +00:00
68d71f88f5 Improve DisplayServer message for video card drivers failure
And remove leftover duplicated message on Android.
2023-01-17 15:41:54 +01:00
60e0043012 Fix X11 input region size. 2023-01-17 07:54:54 +02:00
91a54cdbc1 Linux/BSD: Add LINUXBSD_ENABLED define for non X11-related checks 2023-01-16 17:01:35 +01:00
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
9711abe787 Merge pull request #71437 from vaartis/linux-backtrace
Alter linux debug stacktraces handling to support more environments
2023-01-15 13:09:31 +01:00
5e041eee11 Alter linux debug stacktraces handling to support more environments
- Use -gdwarf-4 to support both LLVM and GCC when calling addr2line
- Subtract position-independant execuable relocation when passing the
  address to addr2line
2023-01-15 02:48:33 +03:00
4c1f11944e Update all outdated online documentation links 2023-01-14 19:38:00 +03:00
3dffe0b967 Merge pull request #63312 from bruvzg/one_click
[Export] Add one-click deploy over SSH for the desktop exports.
2023-01-13 18:00:18 +01:00
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
2718a7b7d3 Add support for the custom initial screen for the main window, fix primary screen detection. 2023-01-07 11:14:35 +02:00
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
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
f7955633de Improve window_set_current_screen and fix secondary window initial mode and positions. 2022-12-29 09:43:39 +02:00
cebefc9f5d [Export] Add one-click deploy over SSH for the desktop exports.
Add one-click deploy over SSH for the desktop exports.
Add ZIP export option for Linux and Windows.
Change export plugin icons to SVG format.
2022-12-29 09:42:00 +02:00