summaryrefslogtreecommitdiff
path: root/platform/linuxbsd/display_server_x11.cpp
AgeCommit message (Collapse)Author
2022-10-01Fix inconsistent window state on X11.Matthew Munro (mam552)
Fixes #66413. DisplayServerX11 tracks some internal state about whether the window is fullscreen, minimized, maximized or none. This commit queries the display server when the window changes, so that this internal state can be correctly updated.
2022-09-16Merge pull request #65496 from MinusKube/popup-capture-mouse-bugRémi Verschelde
Fix MOUSE_MODE_CAPTURED not working correctly with popups
2022-09-07Fix MOUSE_MODE_CAPTURED not working correctly with popupsMinusKube
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-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-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-22Replace Array return types with TypedArraykobewi
2022-08-06Only define `keep_screen_on` project setting onceRedMser
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-21[X11] Do case-insensitive search for pen inversion detectionHansem Ro
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-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
2022-07-04[macOS, Windows, X11] Add stylus inverted/eraser support toHansem Ro
InputEventMouseMotion event
2022-06-30Properly check for fullscreen toggle made through the Window ManagerWilson E. Alvarez
Fixes #40007. Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-06-02Remove mouse events that closed the popup from queue, to fix pop-up reopening.bruvzg
2022-05-20Add a new HashSet templatereduz
* Intended to replace RBSet in most cases. * Optimized for iteration speed
2022-05-16Replace most uses of Map by HashMapreduz
* Map is unnecessary and inefficient in almost every case. * Replaced by the new HashMap. * Renamed Map to RBMap and Set to RBSet for cases that still make sense (order matters) but use is discouraged. There were very few cases where replacing by HashMap was undesired because keeping the key order was intended. I tried to keep those (as RBMap) as much as possible, but might have missed some. Review appreciated!
2022-05-12Basic 3D renderingclayjohn
2022-05-03Remove `RES` and `REF` typedefs in favor of spelled out `Ref<>`Hugo Locurcio
These typedefs don't save much typing compared to the full `Ref<Resource>` and `Ref<RefCounted>`, yet they sometimes introduce confusion among new contributors.
2022-05-02Style: Partially apply clang-tidy's `cppcoreguidelines-pro-type-member-init`Rémi Verschelde
Didn't commit all the changes where it wants to initialize a struct with `{}`. Should be reviewed in a separate PR. Option `IgnoreArrays` enabled for now to be conservative, can be disabled to see if it proposes more useful changes. Also fixed manually a handful of other missing initializations / moved some from constructors.
2022-04-28Implement text-to-speech support on Android, iOS, HTML5, Linux, macOS and ↵bruvzg
Windows. Implement TextServer word break method.
2022-04-27Merge pull request #59979 from bruvzg/cpp_check2Rémi Verschelde
2022-04-27Merge pull request #58272 from bruvzg/x11_backup_screen_infoRémi Verschelde
2022-04-20Fix more issues found by cppcheck.bruvzg
2022-04-13Fix sub-menu keyboard navigation.bruvzg
2022-04-06Fix some issues found by cppcheck.bruvzg
2022-04-05Fix a possible race condition on popup close, that might cause multiple ↵bruvzg
deletions of the same list item.
2022-03-31Fix X11 is_window_maximizedConteZero
2022-03-27Rename warp mouse functions to warp_mouseMarkus Sauermann
2022-03-08[X11] Do not try to focus unmapped window.bruvzg
2022-03-04Fix X11 memory leak after drag & drop file into the editorHaoyu Qiu
2022-02-25Improve popup window handling.bruvzg
Add window FLAG_POPUP and a platform specific routines to control popup auto-hiding and event forwarding.
2022-02-18[Linux/X11] Fallback to the X server root window to get screen rects, if ↵bruvzg
Xinerama is not available.
2022-02-16Style: Cleanup single-line blocks, semicolons, dead codeRémi Verschelde
Remove currently unused implementation of TextureBasisU, could be re-added later on if needed and ported.
2022-02-10Fix typos with codespellRémi Verschelde
Using codespell 2.2-dev from current git. Added `misc/scripts/codespell.sh` to make it easier to run it once in a while and update the skip and ignore lists.
2022-02-08[X11] Fix decoration reset when returning from fullscreen mode.bruvzg
2022-02-06Snap refresh rate to hundreths place on X11jordi
2022-02-04Merge pull request #57341 from bruvzg/win_multiwin_fsRémi Verschelde
2022-02-04Merge pull request #57617 from bruvzg/char_cleanupRémi Verschelde
2022-02-04Merge pull request #57335 from jordigcs/display-refresh-rateRémi Verschelde
2022-02-04[Windows] Add WS_BORDER flag to windows in WINDOW_MODE_FULLSCREEN mode to ↵bruvzg
allow multi-window interface in full-screen. [Windows] Add WINDOW_MODE_EXCLUSIVE_FULLSCREEN without WS_BORDER flag enabled (no multi-window support).