summaryrefslogtreecommitdiff
path: root/platform/linuxbsd/x11
AgeCommit message (Collapse)Author
2023-05-12Enable shadow warnings and fix raised errorsNinni Pipping
(cherry picked from commit 71ee65dc5701a0675ae6b1879a694a28c7206a63)
2023-05-12Ensure WindowData minimized/maximized are mutually exclusiveChristopher Foo
The window manager can break the assumption that fullscreen/maximized/minimized values are mutually exclusive. (cherry picked from commit e4d052e284c04c9fd41d42de40151451e8756a6b)
2023-03-30[X11] Fix layout bug in `keyboard_get_keycode_from_physical`Sabrehull
(cherry picked from commit d4b746626659d6e29c54da57b822735d15ab14c0)
2023-03-14Tweak command syntax in Vulkan renderer failure messageHugo Locurcio
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). (cherry picked from commit ddc9cc3e492861dff43617cecb24ae919e122455)
2023-03-14[Linux/X11] Add some missing keycodes/scancodes.bruvzg
(cherry picked from commit 5d35c600d5e4d6fc553246407e766d600f5b774e)
2023-03-14Propogate errors when creating an OpenGL context fails in X11clayjohn
(cherry picked from commit e7ea3ef53189d4bc94c784e4805a5311701ba9aa)
2023-03-14Fix broken shortcut key inputRindbee
(cherry picked from commit 91e460d500c52505557ed79af4547f188b635589)
2023-03-13[Linux/X11] Check if required xkb functions exist before using it.bruvzg
(cherry picked from commit 8a675f3824db71f0fc3268a95b73af3a50800c2f)
2023-02-24Merge pull request #73752 from bruvzg/x11_quote_leftRémi Verschelde
Fix X11 QUOTELEFT / SECTION physical key mapping.
2023-02-22Fix X11 QUOTELEFT / SECTION physical key mapping.bruvzg
2023-02-22[Input] Use BRACKET_ instead of BRACE_ for physical keys.bruvzg
2023-02-17Merge pull request #72877 from bruvzg/x11_on_topRémi Verschelde
[X11] Fix initial "on top" window state.
2023-02-17[X11] Fix initial "on top" window state.bruvzg
2023-02-17Fix crash with bogus shape index to DisplayServer.cursor_set_custom_image()Rémi Verschelde
Fixes #66605.
2023-02-16[Linux] Make SO wrapper usage optional.bruvzg
2023-02-14Some fixes for initial window position and sizeThomas ten Cate
- 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-07[X11] Do not suppress structure/focus events on popup close to correctly ↵bruvzg
return focus.
2023-02-06[X11] Fix IME window focus events.bruvzg
2023-02-01Merge pull request #72104 from bruvzg/popup-non-popupsRémi Verschelde
Extend special popup window handling to any non-popup child of a popup.
2023-02-01[X11] Fix IME subwindow in the popup not getting input focus.bruvzg
2023-01-30[X11] Add support for dead keys without active IME. Fix IME focus and cleanup.bruvzg
2023-01-27Merge pull request #72102 from Riteo/keymapx11-scope-goodnessRémi Verschelde
Put KeyMappingX11 stuff inside its own scope
2023-01-26Extend special popup window handling to any non-popup child of a popup.bruvzg
2023-01-26[X11] Fix IME focus return.bruvzg
2023-01-26Put KeyMappingX11 stuff inside its own scopeRiteo
This avoids collisions with other "concurrent" key mappers.
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-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-16Add `WINDOW_FLAG_MOUSE_PASSTHROUGH` flag and enabled it for tooltips. Expose ↵bruvzg
`window_set_mouse_passthrough` to `Window`.
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".
2022-12-29Improve `window_set_current_screen` and fix secondary window initial mode ↵bruvzg
and positions.
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-15Fix typos with codespellRémi Verschelde
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-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