Our own backends for X11/Wayland
See original GitHub issueThere are way too many limitations and tradeoffs that GTK/GDK have to support both of them, while not allowing us to do things that we want to do. Notable examples are separate-thread rendering (we have to use our own X11 connection to do that) and issues with absolute window positioning on Wayland (Wayland has xdg_surface_set_window_geometry
which isn’t used by GTK for some reason which leads to our popups being broken, we are forcing GTK to use X11 backend because of that).
There are some major caveats on that way:
- System dialogs (open/save file, folder selection, etc). We need to either still load GTK or have them out-of-proc somehow. The out-of-proc way will cause issues with making dialogs modal to the parent window on X11
- Input methods. Right now we are relying on GTK do support them
- Client-side window decorations. Some of the wayland shells are requiring applications to draw window frame, title and buttons, we need to support that somehow
Issue Analytics
- State:
- Created 6 years ago
- Reactions:6
- Comments:11 (9 by maintainers)
Top Results From Across the Web
Wayland - ArchWiki
Xwayland is an X server that runs under Wayland and provides compatibility for native X11 applications that are yet to provide Wayland support....
Read more >weston - the reference Wayland server
x11 -backend.so The X11 backend runs on an X server. Each Weston output becomes an X window. This is a cheap way to...
Read more >[SOLVED] How to use Xorg backend instead of Wayland ...
Problem: I need to use Xorg backend instead of Wayland backend for gnome. I found solution (source: https://wiki.archlinux.org/index ...
Read more >weston - the reference Wayland server
x11 -backend.so The X11 backend runs on an X server. Each Weston output becomes an X window. This is a cheap way to...
Read more >how to use x11 backend on wayland? : r/kivy
I'm recycling an old app I've made for android a few years ago to use it on my pinephone (GNU/Linux arm device). The...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
Wayland is planned afaik and the preparation work where we need breaking changes is already in progress. In the 11.x time frame we hope to be able to add wayland support. @affederaffe already did a great job on this backend.
Shower thought: GTK is not, in fact, a “native” UI toolkit for Linux. Some popular distros are using KDE and Qt. So our dependency on GTK isn’t free. Our file dialogs also don’t look native everywhere.
So we should use libX11/libxcb for UI and separate backend system for file dialogs, that should support: