summaryrefslogtreecommitdiff
path: root/platform/linuxbsd/x11
AgeCommit message (Collapse)Author
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
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-13Fix gl_manager nullptr crashMarkus Sauermann
Add a nullptr-check, before accessing gl_manager
2022-11-11Fix unsent WINDOW_EVENT_MOUSE_ENTER event on mouse_mode-changeMarkus Sauermann
coauthor: @bruvzg On linuxbsd and macOS the WINDOW_EVENT_MOUSE_ENTER was not sent, when the mouse became visible again after a mouse_mode-change.
2022-11-09Merge pull request #68345 from Abdul-AZ/masterRémi Verschelde
Fix static object destructors being called on gpu selection with X11
2022-11-08Add support for OpenGL to OpenXRDavid Snopek
2022-11-07Fix static object destructors being called on gpu selection with X11Abdulrahman Al Zeidi
2022-11-03Merge pull request #67695 from Sauermann/fix-filedrop-spaceRémi Verschelde
Do not strip spaces at the end of file names of dropped files
2022-11-03Do not strip spaces at the end of file names of dropped files on linuxbsdMarkus Sauermann
2022-11-03Fix unwanted popup closing by mouse-move while holding mouse-buttonMarkus Sauermann
2022-11-02linuxbsd: move all X11 stuff in its own directoryRiteo
This allows implementing `DisplayServer`s like Wayland without making a mess in the source tree.