davidgereb/dsh-plugin-better-mobile-ui ↗★ 0
dsh-plugin-better-mobile-ui
Mobile-first layout fixes for dsh web: hidden sidebar with swipe drawer, session-header dropdown, pinned top action bar, and a composer toolbar that no longer overlaps
安装
此插件尚未提供可验证的 bundle,或兼容性检查未通过。请先阅读仓库说明。 阅读完整 README ↗
说明文档
阅读完整 README ↗dsh-plugin-better-mobile-ui
A dsh web client plugin that makes the GUI usable on phones/tablets (viewport ≤ 768px by default). It only activates in the mobile media query — desktop is byte-for-byte untouched.
Install
From GitHub
dsh plugin --profile web add github:davidgereb/dsh-plugin-better-mobile-ui
Then add the loader row to the profile patch file
($DSH_HOME/profiles/web/cordis.patch.yml):
- insert:
- id: ui-better-mobile
name: dsh-plugin-better-mobile-ui
The server must re-boot to pick up a NEW plugin entry (the patch hot-reload does not fire on every deployment); after that, refresh the GUI page once.
From a local checkout
# 1. build
node scripts/build-client.js
# 2. make the package resolvable by the profile
dsh plugin --profile web link /path/to/dsh-plugin-better-mobile-ui
# 3. register the loader row in cordis.patch.yml (see above)
What it fixes
- Sidebar → swipe drawer — the sidebar grid track is forced to 0 on
mobile, so the collapsed 56px rail no longer eats screen space. The sidebar
becomes an off-canvas drawer:
- swipe right anywhere on the conversation (mid-screen works — Android owns the screen edges) to slide it in;
- swipe left anywhere to go back (see the navigation stack below);
- the ☰ button in the top bar toggles it;
- the app's own layout store is kept in the "expanded" state on mobile, so the drawer always shows the full sidebar (sessions, workspaces), never the icon rail.
- Settings as drawer screens (Android-settings style navigation stack).
The app's settings modal renders inside the sidebar column, so on mobile it
becomes two screens:
- tapping Settings in the drawer shows the section list (General, Models, Plugins, …) filling the drawer, with a ← back arrow;
- selecting a section expands the drawer to the full viewport as the settings page;
- the X dismisses back to the settings list; the left-swipe backs are fully drag-follow like the sidebar — the drawer follows the finger and snaps on release: settings page → settings list → sidebar → hidden.