mirror of
https://github.com/storytold/vectorcraft.git
synced 2026-11-11 16:33:22 -06:00
#1151: Preferences › Performance › Linux display server opens the window through Xwayland, where file drops work
winit 0.30 delivers no file drops on native Wayland. The new Linux Display Server preference (Automatic / X11 (XWayland), shown on Linux only, read at startup) has winit open the window on X11 when the session is Wayland, DISPLAY is set and the X11 libraries winit loads are installed (ldconfig check ported from PhotoCraft); otherwise the window opens on Wayland and the log says why. README, development notes, parity docs, ROADMAP and the complete catalogs updated. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
22ff29167e
commit
a809f270eb
@@ -156,6 +156,23 @@ fn gpu_preference_defaults_to_automatic_and_validates() {
|
||||
assert_eq!(s.prefs.gpu_preference, "automatic");
|
||||
}
|
||||
|
||||
/// Performance › Linux Display Server (#1151): automatic by default, X11 by value or label, and
|
||||
/// anything else is an error that changes nothing.
|
||||
#[test]
|
||||
fn linux_display_server_defaults_to_automatic_and_validates() {
|
||||
let mut s = Session::new();
|
||||
assert_eq!(s.prefs.linux_display_server, "automatic");
|
||||
s.execute("prefs.set", &json!({"key": "linuxDisplayServer", "value": "X11 (XWayland)"})).unwrap();
|
||||
assert_eq!(s.prefs.linux_display_server, "x11");
|
||||
for bad in [json!("wayland"), json!(""), json!(11), json!(null)] {
|
||||
assert!(s.execute("prefs.set", &json!({"key": "linuxDisplayServer", "value": bad})).is_err(), "{bad}");
|
||||
assert_eq!(s.prefs.linux_display_server, "x11");
|
||||
}
|
||||
assert_eq!(s.prefs.to_json()["linuxDisplayServer"], "x11");
|
||||
s.execute("prefs.reset", &json!({"category": "Performance"})).unwrap();
|
||||
assert_eq!(s.prefs.linux_display_server, "automatic");
|
||||
}
|
||||
|
||||
/// Selection & Anchor Display › Tolerance, Object Selection by Path Only and Command Click to
|
||||
/// Select Objects Behind, and General › Double Click To Isolate, as the Selection tool sees them
|
||||
/// (#394).
|
||||
|
||||
Reference in New Issue
Block a user