Comments (5)
The last two are closed merge-requests, which aren't very helpful to track (as they're closed and unlikely to be reopened)
Instead we should track these, which are linked from those last two links, respectively:
- https://gitlab.freedesktop.org/wayland/wayland/-/merge_requests/263
- https://gitlab.freedesktop.org/wayland/wayland-protocols/-/issues/38
I'd like to note, however, that none of these look vital (most have workarounds or are only minor inconveniences) and Wayland is already suitable for use in games.
In fact, the Steam Deck uses gamescope, which is a Wayland compositor, meaning all X11 games run through XWayland on Deck. If Wayland is good enough for Valve, it's good enough for me :)
from mach.
Oh, also, if Wayland is available, it will almost always provide a better user experience than X11, as X11 clients will be running through XWayland, meaning they're hampered by the cumbersome X11 APIs, while also being subject to the restrictions and issues of Wayland applications.
Running under XWayland can't remove any of the restrictions of Wayland, so there's no reason to default to X11 when Wayland is available.
from mach.
Copying from discord:
Indeed defaulting on x11 wont help wayland users. There can be advantages for being an xwayland client rather than native, as compositors implement x11 wm inside them, thus xwayland clients often have more capabilities than native clients (e.g. window positioning), but these really depend on compositor implementation. Anyhow on wayland mach should still default to wayland and accept that there are still issues.
Since mach is getting native wayland backend those above issues all can be avoided by being a "good wayland citizen".
Mach already takes over main, so wayland backend should have similar render loop to JavaScript, that is it registers render callback rather than rendering in a while loop, that way mach wont ever get blocked as it wont try to render when compositor does not allow it.
(this is honestly bad default on wayland side as no other WSI works like this, but i understand why they wanted to do this)
from mach.
https://gitlab.freedesktop.org/wayland/wayland-protocols/-/issues/38
this issue should have been closed by the suspended toplevel state added to xdg-shell. it relies on compositors exposing v6 (mutter, kwin, hyprland), sway has v2, mir has v5, and gamescope has v3.
connection buffer size control also got merged just yesterday. this also doesn't automatically fix compositors but allows compositors to fix the instant death condition, depending on what they set max connection buffer size to.
from mach.
Seems like the SDL3 PR has accelerated the progress libsdl-org/SDL#9345
from mach.
Related Issues (20)
- editor: should not directly depend on spirv_cross, spirv_tools, sysgpu
- examples: should not depend on anything but mach
- mach: use b.lazyDependency where possible
- Tracking issue: priorities of real-world Mach users
- get pixi working with sysgpu with Linux/Vulkan backend
- ecs: `General protection exception (no address available)` HOT 2
- all: nominate Zig 2024.05 HOT 2
- testing: reconsider expect/got order
- mach: ensure usage-as-dependency does not involve building all examples, basisu
- verify aftersun/pixi are quick to build, and file size of deps on disk is reasonable
- core: improve build API (remove App/CoreApp) and entrypoint API (supply your own entrypoint by default)
- 32 bit windows does not compile
- sysaudio: verify that we have a sane latency in all backends HOT 1
- all: use lazyDependency to optimize dependency fetching
- sysaudio: @sizeOf(T) is not the same as @bitSizeOf(T)
- math: remove usingnamespace for mixins
- gpu: WGSL incorrect control flow
- all: nominate Zig 2024.06
- Ability to turn off logging
- gpu: gpu-dawn crashes JVM on Windows 11 HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mach.