summaryrefslogtreecommitdiff
path: root/platform/linuxbsd
AgeCommit message (Collapse)Author
2023-01-25Merge pull request #72029 from bruvzg/x11_keycodeRémi Verschelde
[X11] Fix incorrect keycodes from non-QWERTY layouts.
2023-01-25[X11] Fix incorrect keycodes from non-QWERTY layouts.bruvzg
2023-01-25[X11] Make IME focus window input only.bruvzg
2023-01-25Merge pull request #72018 from bruvzg/x11_ime_loopRémi Verschelde
[X11] Prevent IME activation from entering infinite loop.
2023-01-25[X11] Prevent IME activation from entering infinite loop.bruvzg
2023-01-25Move xkbcommon dynamic loading code into generic linuxbsd folderRiteo
Since Wayland uses it too, it only makes sense to have it in the parent directory of both.
2023-01-23[Linux/BSD] Include headers for dynamically loaded libraries to simplify ↵bruvzg
build dependencies.
2023-01-23Cleanup and unify keyboard input.bruvzg
- 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-23Convert en_GB spelling to en_US with codespellRémi Verschelde
2023-01-21Merge pull request #71819 from Riteo/certified-musl-momentRémi Verschelde
Make PIE relocation detection glibc-only
2023-01-21Make PIE relocation detection glibc-onlyRiteo
Musl doesn't compile with it, and by looking online I think that this is a glibc only thing.
2023-01-20Exclude atomic lib under FreeBSD using LLVMrobfram
2023-01-17Improve DisplayServer message for video card drivers failureRémi Verschelde
And remove leftover duplicated message on Android.
2023-01-17Fix X11 input region size.bruvzg
2023-01-16Linux/BSD: Add LINUXBSD_ENABLED define for non X11-related checksRémi Verschelde
2023-01-16Add `WINDOW_FLAG_MOUSE_PASSTHROUGH` flag and enabled it for tooltips. Expose ↵bruvzg
`window_set_mouse_passthrough` to `Window`.
2023-01-15Merge pull request #71437 from vaartis/linux-backtraceRémi Verschelde
Alter linux debug stacktraces handling to support more environments
2023-01-15Alter linux debug stacktraces handling to support more environmentsEkaterina Vaartis
- 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-14Update all outdated online documentation linksYuri Sizov
2023-01-13Merge pull request #63312 from bruvzg/one_clickRémi Verschelde
[Export] Add one-click deploy over SSH for the desktop exports.
2023-01-08Use BitField<> in core type masksJuan Linietsky
* 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-07Add support for the custom initial screen for the main window, fix primary ↵bruvzg
screen detection.
2023-01-05One Copyright Update to rule them allRémi Verschelde
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-03Merge pull request #70624 from bruvzg/cur_scRémi Verschelde
Improve `window_set_current_screen` and fix secondary window initial mode and positions.
2022-12-29Improve `window_set_current_screen` and fix secondary window initial mode ↵bruvzg
and positions.
2022-12-29[Export] Add one-click deploy over SSH for the desktop exports.bruvzg
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-27Allow building X11 without VulkanRiteo
This limit was likely introduced when Vulkan was the only option.
2022-12-16Merge pull request #69678 from Sauermann/fix-slider-button-upRémi Verschelde
Fix colorpicker slider bug with mouse-up outside of popup
2022-12-16Fix String::word_wrap() for long wordsHaoyu Qiu
- Changes `TextServer.string_get_word_breaks()` - Returns pairs of boundary start and end offsets - Accepts `chars_per_line` to return line breaks - Removes `String::word_wrap()` Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2022-12-15Fix typos with codespellRémi Verschelde
2022-12-09fix dbus and fontconfig linksnikitalita
2022-12-07Merge pull request #69712 from bruvzg/real_sizeRémi Verschelde
Rename `window_get_real_size`, add position counterpart.
2022-12-07Rename `window_get_real_size` to `window_get_size_with_decorations`, add ↵bruvzg
`window_get_position_with_decorations`.
2022-12-07[Linux/X11] Split fullscreen mode into `WINDOW_MODE_EXCLUSIVE_FULLSCREEN` ↵bruvzg
and `WINDOW_MODE_FULLSCREEN` to improve multi-window handling.
2022-12-06Fix colorpicker slider bug with mouse-up outside of popupMarkus Sauermann
When releasing the mouse button outside of the popup while dragging a slider, the slider still gets adjusted by mouse-move events. The reason for this bug is that the mouse-up event is sent to the focused window (main editor window) instead of the colorpicker popup window. This PR adjusts the linuxbsd X11 DisplayServer to send the event to the correct expected window.
2022-12-05Fix that mouse-button-up event is parsed twice for drag-and-dropMarkus Sauermann
Currently Input::get_singleton()->parse_input_event(mb); is called twice for mouse-button-up events when dropping in a different window on linuxbsd.
2022-12-05Merge pull request #69563 from nyanpasu64/patch-1Rémi Verschelde
Fix burning CPU with udev disabled on Flatpak
2022-12-05[Linux/BSD] Fix build without fontconfig.bruvzg
2022-12-04Use system fonts as fallback and improve system font handling.bruvzg
Add support for font weight and stretch selection when using system fonts. Add function to get system fallback font from a font name, style, text, and language code. Implement system font support for Android. Use system fonts as a last resort fallback.
2022-12-03Fix burning CPU with udev disabled on Flatpaknyanpasu64
Fixes #67355.
2022-12-03Load X11 dynamicallyRiteo
The loaders have been generated through hpvb's dynload-wrapper, although they had to be heavily handpatched to workaround some already reported issues with it. I added a note to each generated file to account for that. As GLAD uses X11 stuff directly, I had to define the GLAD_GLX_NO_X11 macro to not let do it that, and handle myself the display loading and screen handling part myself, which wasn't that hard but it's still something worth saying. I plan to improve greatly the X11 backend (including this aspect) but, as the release isn't that far and I'm also working on the Wayland backend, this will do for now, I hope.
2022-11-16X11: Don't override glxSwapInterval function pointers loaded by GLADRémi Verschelde
Fixes #68722. Co-authored-by: alcomposer <alex.w.mitchell@gmail.com>
2022-11-15Set vsync on window creation when using GLES3.clayjohn
Add vsync to Windows platform
2022-11-15Load GLX dynamically with GLADRiteo Siuga
This is accomplished through the addition of a GLAD GLX loader in the `thirdparty` directory. This is another step towards a nice Wayland/X11 interoperation.
2022-11-15Merge pull request #68680 from bruvzg/fc_no_font_subRémi Verschelde
[fontconfig] Reject font substitutes if non-alias name was used.
2022-11-15Merge pull request #68372 from Riteo/glad2Rémi Verschelde
Regenerate GL loader code with GLAD 2
2022-11-15[fontconfig] Reject font substitutes if non-alias name was used.bruvzg
2022-11-15Merge pull request #68504 from dzil123/cache_system_dir_xdg2Rémi Verschelde
Cache OS_LinuxBSD::get_system_dir
2022-11-14Regenerate GL loader code with GLAD 2Riteo
GLAD 1 creates unusable loaders for EGL, while the newly released GLAD 2 does not, so for consistency I thought that it would be a good idea to uniform things beforehand. While it had some API changes some renames were all that was needed and everything works like before, at least on the Wayland branch. I've kept the structure identical, although this new generator has quite a few hefty features, such as a single header mode. I've also added GLAD to `thirdparty/README.md`, but I haven't specified that in the commit title because it's a very small "fix".
2022-11-12Cache OS_LinuxBSD::get_system_dir(SYSTEM_DIR_DESKTOP)dzil123