mirror of
https://github.com/storytold/lightcraft.git
synced 2026-10-31 13:38:14 -06:00
LR-BEHAV-ACCESS: the Flatpak may talk to the accessibility bus, so Orca can read LightCraft
This commit is contained in:
File diff suppressed because one or more lines are too long
@@ -2,6 +2,9 @@
|
||||
|
||||
## 2026-10-30
|
||||
|
||||
### The Flatpak may talk to the accessibility bus
|
||||
- The Flatpak package now has access to the accessibility bus (`org.a11y.Bus`) and no other new permission; its network, Pictures folder and GPU access are unchanged. Before, the sandbox hid the bus, so a screen reader such as Orca could not see LightCraft's window. The Flatpak build is the only one affected.
|
||||
|
||||
### A keyboard shortcut for Clear Color Label
|
||||
- Clear Color Label is now a command of its own in Help ▸ Keyboard Shortcuts, so it can have a key like Set Rating or
|
||||
Set Flag; before, only the red, yellow, green and blue labels (6–9) had keys and clearing a label was menu-only. It has
|
||||
|
||||
@@ -17,6 +17,8 @@ for name in ("ai.storyteller.lightcraft.yml", "ai.storyteller.lightcraft.bundle.
|
||||
with open("packaging/linux/flatpak/" + name) as source:
|
||||
manifest = yaml.safe_load(source)
|
||||
assert manifest["id"] == "ai.storyteller.lightcraft" and manifest["command"] == "lightcraft", name
|
||||
# Without this talk-name the sandbox hides the accessibility bus and Orca cannot see the app.
|
||||
assert "--talk-name=org.a11y.Bus" in manifest["finish-args"], f"{name} lost --talk-name=org.a11y.Bus"
|
||||
manifests.append(manifest)
|
||||
for key in ("runtime", "runtime-version", "sdk", "finish-args"):
|
||||
assert manifests[0][key] == manifests[1][key], f"Flatpak manifests disagree on {key}"
|
||||
|
||||
@@ -25,6 +25,10 @@ finish-args:
|
||||
- --share=ipc
|
||||
# GPU access for the wgpu renderer (Vulkan, or GL as a fallback).
|
||||
- --device=dri
|
||||
# Screen readers: AccessKit asks the accessibility bus (org.a11y.Bus) whether one is running and
|
||||
# publishes the window there over AT-SPI. Without it the sandbox hides the bus and the app is
|
||||
# invisible to Orca and other assistive technology.
|
||||
- --talk-name=org.a11y.Bus
|
||||
# The library lives in ~/Pictures/LightCraft Library by default, and imports usually come from
|
||||
# Pictures. Open/Save dialogs go through the file-chooser portal (rfd's xdg-portal backend) and
|
||||
# drag-and-drop through the document portal, so picked folders elsewhere work without broad
|
||||
|
||||
@@ -31,6 +31,10 @@ finish-args:
|
||||
- --share=ipc
|
||||
# GPU access for the wgpu renderer (Vulkan, or GL as a fallback).
|
||||
- --device=dri
|
||||
# Screen readers: AccessKit asks the accessibility bus (org.a11y.Bus) whether one is running and
|
||||
# publishes the window there over AT-SPI. Without it the sandbox hides the bus and the app is
|
||||
# invisible to Orca and other assistive technology.
|
||||
- --talk-name=org.a11y.Bus
|
||||
# The library lives in ~/Pictures/LightCraft Library by default, and imports usually come from
|
||||
# Pictures. Open/Save dialogs go through the file-chooser portal (rfd's xdg-portal backend) and
|
||||
# drag-and-drop through the document portal, so picked folders elsewhere work without broad
|
||||
|
||||
Reference in New Issue
Block a user