Skip to content

Releases: Yu-jianhai/dsh-sidebar-layout

Release list

v0.1.6

Choose a tag to compare

@Yu-jianhai Yu-jianhai released this 30 Oct 17:28

新版本要点

设置界面做了一个可诊断的兜底

设置页外面包了一层错误边界:万一某个 DSH 版本上渲染失败,页面会直接画出报错文本和排查提示(__dsl.state() / __dsl.reset()),而不是留一片空白。

设置接口本身没有缺失,注册一直是成功的——settings.section 的占用者实测为 id: sidebar-layout、order: 70、active: true。两个入口都能到:

  • 设置 → 侧栏布局(设置导航里,靠下)
  • 侧栏底部的三条横线图标(浮层里是同一套开关)

README 改为中英双语

中文为主(痛点 / 解决 / 能力表 / 安装 / 设计边界 / 调试 / 自检 / 卸载),整段 ## English 供外部读者快速判断这个插件解决什么问题;顶部加了 version / license / platform 三枚徽章。

完整能力(沿用 0.1.5)

限高滚动 · 行内拖动排序 · 拖动底边调高 · 逐个显隐 · 行数上限跟随入口数(装新插件自动长高,主动设小的上限被尊重)· 实验性紧凑密度。

安装

见 README:把包加进 profile 的 dependencies(link: 可用)与 bundles,让 node_modules/dsh-sidebar-layout 指向本目录,重启 DSH。

v0.1.5

Choose a tag to compare

@Yu-jianhai Yu-jianhai released this 30 Oct 16:47

首个公开版本。

能解决的问题

DSH 的左侧栏入口是固定高度的一整列(每行 36px + 2px 间距),装一个带侧栏的插件就长高一行。
装到八个入口时这一列固定吃掉约 348px,多出来的高度只能从下面挤——被挤掉的正是工作区会话列表的可见行数。

这个插件把那一列变成有限高、可滚动、顺序可调、逐个可关的窗口,省下的高度还给会话列表。

功能

  • 限高滚动:入口只占你允许的行数(3 … 入口数),其余收进窗口内滚动
  • 拖动排序:行尾抓手上下拖,顺序持久化;设置页另提供 ↑↓ 作为键盘可达兜底
  • 拖动调高:底边热区上下拖动改显示行数,双击恢复不限高
  • 逐个显隐:设置 → 侧栏布局,勾选即彻底不显示;底栏图标提供同一套开关
  • 上限随入口数派生:最多拖到「一行一个入口」;拖到「全部 N 行」后新装插件自动长高,主动设小的上限会被尊重
  • 实验性紧凑密度:行高 36 → 28px

实现要点

  • 叠加层增强,不替换 sidebar 单例槽(该槽 replaceRisk: shadows-shipped-ui)
  • 靠自己的底栏按钮 [data-dsl-anchor="1"] 定位列表,不依赖哈希类名与文案;找不到侧栏即静默降级
  • 滚动条完全交回宿主 scrollbar.css,只做横向对齐补偿;拖拽热区让开滚动条列
  • 拖动落点用数数法判定,避开 CSS order 与 DOM 顺序混用导致的位置回跳
  • 纯客户端、无构建步骤、宿主侧零状态

安装

见 README 的「安装」一节:把它加进 profile 的 dependencies(link:)与 bundles,让 node_modules/dsh-sidebar-layout 指向本目录,重启 DSH。