summaryrefslogtreecommitdiff
path: root/platform/linuxbsd
AgeCommit message (Collapse)Author
2022-09-12Fix multiwindow support in GLES3 for X11, Windows, and MacOS.clayjohn
Instead of updating all viewports, then blitting all viewports to the backbuffer, then swapping all buffers, we run through all viewports and render, blit, and swap backbuffer before going to the next viewport.
2022-09-08SCons: Refactor LTO options with `lto=<none|thin|full>`Rémi Verschelde
Adds support for LTO on macOS and Android. We don't have much experience with LTO on these platforms so for now we keep it disabled by default even when `production=yes` is set. Similarly for iOS where we ship object files for the user to link in Xcode so LTO makes builds extremely slow to link. `production=yes` defaults to full LTO. ThinLTO is much faster for LLVM-based compilers but seems to produce bigger binaries (at least for the Web platform).
2022-09-06Merge pull request #64417 from aaronfranke/has-spaceRémi Verschelde
Replace AABB/Rect2/Rect2i has_no_* methods with has_* methods
2022-09-04Replace Rect2(i) has_no_area with has_areaAaron Franke
2022-09-04Fix XSendEvent crash & bootsplash.MatthewZelriche
Fixes a crash due to an Xlib error, as well as ensures that Godot holds the correct size of the window after window modes have been applied, before exiting the DisplayServerX11 constructor. This ensures the bootsplash will be displayed with the correct dimensions. Fixes #65320
2022-09-03Merge pull request #65283 from bruvzg/reenable_per_pix_transpRémi Verschelde
Re-enable per-pixel transparency support on Linux, macOS, and Windows.
2022-09-03Merge pull request #65111 from MatthewZelriche/DroppedXEventFixRémi Verschelde
Fix dropped XEvents early in main window lifetime.
2022-09-03Re-enable per-pixel transparency support on Linux, macOS, and Windows (for ↵bruvzg
Vulkan and OpenGL rendering drivers).
2022-09-02Add support for system dark mode (Linux)Raul Santos
- Use `org.freedesktop.appearance color-scheme` to support system dark mode.
2022-09-01Fix dropped XEvents early in main window lifetime.MatthewZelriche
The DisplayServerX11 constructor processes pending events shortly after constructing the main window. However, it discards pending events on the event queue that it is not interested in. This results in these events never making it to the main events thread and as a result are never processed. We need to save the events we don't handle in DisplayServerX11 so that they can be resent for later handling by the events thread.
2022-08-30Fix minimize/maximize not taking effect in X11.MatthewZelriche
Attempts to construct an X11 window in an initial state of minimized/maximized would fail due to the window being unmapped. We simply check for failed mode changes during an unmap and reapply them if necessary.
2022-08-30Merge pull request #65066 from aaronfranke/str-path-joinRémi Verschelde
2022-08-29Fix fullscreen on X11.MatthewZelriche
Attempts to set a Godot window to fullscreen prior to the window being mapped would silently fail. This commit uses _window_fullscreen_check to test if a window had been set to fullscreen while unmapped, and if so, resets it to fullscreen once the window has been successfully mapped. Fixes #54065
2022-08-29Rename String `plus_file` to `path_join`Aaron Franke
2022-08-29Merge pull request #64943 from MatthewZelriche/FixUnMappedAncestorRémi Verschelde
2022-08-27Merge pull request #64507 from RandomShaper/remove_unusedRémi Verschelde
Remove unused `force_quit` variable from many OS abstractions
2022-08-27Fix X11 menu window bug.MatthewZelriche
Fixes an issue where XSetInputFocus fails due to the window not being viewable. Fixes #62635 Fixes #60690
2022-08-27Remove unused force_quit variable from many OS abstractionsPedro J. Estébanez
2022-08-26Linux: Fix GNU ld detection for pck_embed linker scriptRémi Verschelde
2022-08-25Improve platform-specific READMEs to add useful linksHugo Locurcio
This also adds READMEs for all platforms.
2022-08-25Unify bits, arch, and android_arch into env["arch"]Aaron Franke
Fully removes the `bits` option and adapts the code that relied on it. Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-08-22Replace Array return types with TypedArraykobewi
2022-08-09Fix memory leak when accessing/listing system fonts.bruvzg
2022-08-06Only define `keep_screen_on` project setting onceRedMser
2022-08-02Merge pull request #61315 from lawnjelly/variant_bucket_poolsRémi Verschelde
Variant memory pools
2022-07-30Merge pull request #63563 from aaronfranke/export-archRémi Verschelde
2022-07-29[Linux] Fix build with missing DBUS.bruvzg
2022-07-29Merge pull request #63595 from reduz/remove-signal-connect-bindsRémi Verschelde
Remove Signal connect binds
2022-07-29Update export dialog to handle many architecturesAaron Franke
2022-07-29Remove Signal connect bindsJuan Linietsky
Remove the optional argument p_binds from `Object::connect` since it was deprecated by Callable.bind(). Changed all uses of it to Callable.bind()
2022-07-29[Linux] Load dbus libraries dynamically.bruvzg
2022-07-29[Linux] Replace fontconfig wrapper with a one generated from the older ↵bruvzg
library version (2.12.6, Ubuntu 18.04 LTS).
2022-07-27Load fontconfig libraries dynamically.bruvzg
2022-07-27Fix Linux build without fontconfig.bruvzg
2022-07-27Merge pull request #62973 from bruvzg/sysfont_supportRémi Verschelde
2022-07-26Split up editor export code into multiple filesAaron Franke
2022-07-26Merge pull request #63096 from aaronfranke/exp-template-namesRémi Verschelde
2022-07-26Implement support for loading system fonts on Linux, macOS / iOS and Windows.bruvzg
2022-07-25Code quality: Fix header guards consistencyRémi Verschelde
Adds `header_guards.sh` bash script, used in CI to validate future changes. Can be run locally to fix invalid header guards.
2022-07-22Update export template names for Windows, Mac, and LinuxAaron Franke
2022-07-22Merge pull request #63278 from akien-mga/scons-linux-refactor-linkerRémi Verschelde
2022-07-22Merge pull request #63303 from hansemro/x11-eraser-case-insensitiveRémi Verschelde
[X11] Do case-insensitive search for pen inversion detection
2022-07-21[X11] Do case-insensitive search for pen inversion detectionHansem Ro
2022-07-22SCons: Refactor Linux linker options with `linker=<bfd|gold|lld|mold>`Rémi Verschelde
The new option is `linker` and lets the user specify the argument to the`-fuse_ld=` linker flag directly. The supported options are: - `default`: No change, typically uses GNU ld (bfd) unless the user or distro picked a different default `/usr/bin/ld`. - `bfd`: GNU ld from binutils - `gold`: GNU gold from binutils - `lld`: lld from LLVM - `mold`: mold, an extremely fast modern linker, not (yet) intended for use in production but great for development speed. Provided by distro `mold` package or needs to be compiled from source and installed to `/usr` otherwise. Removes the `use_lld=yes` option, and make lld actually usable with GCC too. Not all the above are compatible or recommend for LTO, we recommend using GNU ld with GCC LTO, or lld with LLVM ThinLTO.
2022-07-20Improve `linuxbsd` headless building, cleanup build scriptsRiteo
Now the `linuxbsd` platform can be built headlessly (e.g. without X11 development libraries). I also cleaned up some weird (old?) usages of the `env` variable which seem to make no difference and are used nowhere else.
2022-07-20Remove `-pipe` from `LINKFLAGS`Riteo
For some reason this fixes the CI from going OOM.
2022-07-19Improve DisplayServer.window_set_current_screenbruvzg
Prevent unnecessary fullscreen toggle animation on macOS, when screen is not changed Fix window position on Linux/X11
2022-07-08Add static methods for creating Image and ImageTexturekobewi
2022-07-06Check if GL manager exist to prevent crash when using multithreaded renderer ↵bruvzg
with Vulkan.
2022-07-04Merge pull request #62212 from hansemro/eraser-detect-4Rémi Verschelde
Add inversion/eraser-end property for tablet pens