Skip to content

Host-side directoryPicker seam unavailable in DSH Desktop #111

Description

@nekomona

Problem

DSH Desktop disables the stock directory-picker (auto) row — citing "the Koffi-based Host worker can exit before reporting a result inside packaged Electron" — and inserts a standalone client surface instead.

That removes ctx.directoryPicker from the host, so every host-side consumer fails: host.pickDirectory returns directory-picker-unavailable, and any plugin reading the seam breaks. Observed with dsh-remote 0.5.10: its local-pick endpoint surfaced cannot get property "directoryPicker" without inject (a raw cordis proxy throw).

The premise does not hold

Verified on a packaged Windows v0.3.0 build, from inside the Harness child process: pickNativeDirectory() spawns the Koffi dialog worker, the dialog opens, a real selection resolves the path, and an abort cleanly closes the dialog (WM_CLOSEdone → clean rejection). The stock native pick channel is functional in the desktop environment.

Fix

Keep the composition stock: drop the disable row and the client-surface insert from build/dsh-desktop.patch.yml. The stock auto row (from dsh-web-app) then mounts the native backend — ctx.directoryPicker, host.pickDirectory, and the whole seam work for every plugin unmodified, on dsh's original pick channel.

The Electron-dialog preload bridge and the client-ui patch stay unchanged, so the client surface keeps the parented Electron dialog.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions