better-er/dsh-mobile-drawer:窄屏下的侧栏优化

前言

DeepSeek Harness (DSH) 的插件化架构允许针对特定场景定制行为。在移动端或窄屏浏览器中使用 DSH Web 界面时,默认的侧栏会占用宝贵的显示空间,且切换会话时的自动聚焦会触发软键盘,导致页面被顶起,遮挡对话内容。better-er/dsh-mobile-drawer 针对这一场景进行了调整,将侧栏在窄屏下收起为悬浮方块,并压制自动聚焦行为。

插件介绍

这是一个客户端插件,由 betterer 维护,采用 MIT 许可证。它的核心价值在于将 DSH Web 界面的侧栏在窄屏下重构为覆盖式抽屉,通过自动收起和聚焦压制,提升移动端浏览体验。

核心功能

插件仅在视口宽度小于 1024 像素时生效,宽屏下完全不会介入。

  1. 悬浮方块与覆盖抽屉

    • 收起态:侧栏被压缩为零宽,中央区域占据整幅宽度,左上角出现一个 44 像素的悬浮方块。
    • 展开态:点击方块展开侧栏,此时侧栏变为 280 像素宽的覆盖式抽屉,覆盖在对话之上,右侧有遮罩层。
  2. 自动收起与聚焦压制

    • 自动收起:在抽屉中点击任意会话行,侧栏会自动收起,把屏幕还给对话。点击行内的更多按钮不触发此行为。
    • 聚焦压制:插件会压制紧随会话点击后的自动聚焦行为,持续约 1.5 秒,防止软键盘弹出顶起页面。如果用户主动点击输入框,压制立即解除。
  3. 移动端按键增强
    在输入框右上角提供了一排手机键盘上没有的按键,目前包括 Shift、Ctrl 与 Tab。

    • Tab:在输入 / 或 @ 时触发菜单补全,否则在光标处插入制表符。
    • Shift / Ctrl:为粘滞修饰键。点击一下锁定、再点取消。锁定状态下按回车分别执行换行与发送。

安装

使用官方安装命令添加插件:

dsh plugin --profile web add github:better-er/dsh-mobile-drawer

也可以从 npm 安装(包含构建产物,无需现场构建):

dsh plugin --profile web add dsh-mobile-drawer

安装后重启 DSH Web 即可生效,无需手工编辑文件。

典型用法

  1. 使用 Edge 或手机浏览器打开 DSH Web。
  2. 将窗口宽度缩至 1024 像素以下(或在手机上访问),左上角会出现悬浮方块。
  3. 点击方块展开抽屉,点击任一会话,侧栏自动收起。
  4. 在输入框右上角可以看到新增的 Shift、Ctrl、Tab 按键。

注意事项

  • 生效条件:所有行为仅对视口宽度小于 1024 像素的设备生效。
  • 无原生修改:插件为纯浏览器端插件,不修改任何原生界面与内置样式。
  • 图标依赖:悬浮方块图标直接克隆内置收起栏的鲸鱼标记,若无法获取内置图标,方块将不显示,收起态的布局副作用也会一并跳过。

总结

该插件通过 DOM 副作用而非修改原生样式,解决了窄屏下侧栏遮挡和软键盘顶起页面的问题。对于需要在移动端频繁查看对话内容的用户,这是一个实用的工具。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜