Adds scripts/live-dbus-test.sh (`just live-dbus`): each scenario runs the installed Ghostty 1.3.1 and the Rust build on a private dbus-run-session bus inside a private headless weston (the user's session bus is never written to), with Python/Gio mocks for org.freedesktop.Notifications, the GlobalShortcuts/Settings portal and org.freedesktop.systemd1, plus a real xdg-desktop-portal run. Scenarios: single-instance (+detect), +new-window with arguments, notifications, global shortcuts, color-scheme settings, cgroup scope creation, URL opening. tests/live_dbus.rs compares the Rust build against goldens recorded from the original (skips when tools or a fresh production build are missing). Two Rust bugs found and fixed (no upstream deviation): - GlobalShortcuts CreateSession/BindShortcuts payloads used the wrong D-Bus signatures ((v), double-boxed values), which a real portal rejects; signature tests added. - CreateSession was sent twice at startup; the config is now bound only after the D-Bus connection is set, as in Zig. All nine scenarios now behave identically to the original (docs/rewrite/notes/live-dbus.md). Test Plan: - just live-dbus - cargo test --test live_dbus (needs target/vp/production/ghostty)
17 lines
1.8 KiB
Plaintext
17 lines
1.8 KiB
Plaintext
== facts ==
|
|
notifications so far: 7
|
|
alive after ActionInvoked: instances=1 windows=1
|
|
alive after more ActionInvoked: instances=1 windows=1
|
|
notifications after desktop-notifications=false: 7
|
|
== mock received ==
|
|
org.freedesktop.portal.Settings.Read ["org.freedesktop.appearance", "color-scheme"]
|
|
org.freedesktop.portal.Settings.Read ["org.freedesktop.appearance", "contrast"]
|
|
org.freedesktop.portal.Settings.Read ["org.freedesktop.appearance", "accent-color"]
|
|
org.freedesktop.Notifications.Notify ["", 0, "", "Ghostty", "osc9 body", ["default", ""], {"desktop-entry": "com.mitchellh.ghostty", "image-path": "com.mitchellh.ghostty", "urgency": 1}, -1]
|
|
org.freedesktop.Notifications.Notify ["", 0, "", "Title777", "Body777", ["default", ""], {"desktop-entry": "com.mitchellh.ghostty", "image-path": "com.mitchellh.ghostty", "urgency": 1}, -1]
|
|
org.freedesktop.Notifications.Notify ["", 0, "", "Ghostty", "OnlyBody", ["default", ""], {"desktop-entry": "com.mitchellh.ghostty", "image-path": "com.mitchellh.ghostty", "urgency": 1}, -1]
|
|
org.freedesktop.Notifications.Notify ["", 0, "", "Only title", "", ["default", ""], {"desktop-entry": "com.mitchellh.ghostty", "image-path": "com.mitchellh.ghostty", "urgency": 1}, -1]
|
|
org.freedesktop.Notifications.Notify ["", 0, "", "Ghostty", "<b>markup</b> & \"quotes\" \u00e9\u20ac", ["default", ""], {"desktop-entry": "com.mitchellh.ghostty", "image-path": "com.mitchellh.ghostty", "urgency": 1}, -1]
|
|
org.freedesktop.Notifications.Notify ["", 1, "", "Ghostty", "osc9 body", ["default", ""], {"desktop-entry": "com.mitchellh.ghostty", "image-path": "com.mitchellh.ghostty", "urgency": 1}, -1]
|
|
org.freedesktop.Notifications.Notify ["", 0, "", "semi", "colon;body", ["default", ""], {"desktop-entry": "com.mitchellh.ghostty", "image-path": "com.mitchellh.ghostty", "urgency": 1}, -1]
|