Skip to content

Releases: xcloud-ai/xu-quiet-outline

2.2.3

Choose a tag to compare

@github-actions github-actions released this 23 Sep 10:14

Full Changelog: 2.2.2...2.2.3

2.2.2

Choose a tag to compare

@github-actions github-actions released this 23 Sep 10:10

Full Changelog: 2.2.1...2.2.2

2.2.1

Choose a tag to compare

@github-actions github-actions released this 23 Sep 07:28

Full Changelog: 2.2.0...2.2.1

2.2.0

Choose a tag to compare

@github-actions github-actions released this 23 Sep 06:23

Full Changelog: 2.1.0...2.2.0

2.1.0

Choose a tag to compare

@github-actions github-actions released this 23 Sep 05:26

Full Changelog: 2.0.3...2.1.0

2.0.3

Choose a tag to compare

@github-actions github-actions released this 20 Sep 13:32

Full Changelog: 2.0.2...2.0.3

2.0.2

Choose a tag to compare

@github-actions github-actions released this 20 Sep 13:17

Code quality

  • Expansion memory parsing now goes through unknown with a runtime type guard before use, eliminating the two type-aware lint warnings (no-unsafe-assignment / no-unsafe-argument). Corrupted or unexpected stored data is safely treated as "no memory" instead of being trusted blindly
  • Removed an unused legacy helper module

No user-facing behavior changes.


代码质量

  • 展开记忆解析改为先落 unknown 再经运行时类型守卫收窄,消除两条 type-aware lint 警告(no-unsafe-assignment / no-unsafe-argument);存储数据损坏或内容异常时安全地按"无记忆"处理,不再盲信
  • 删除一个未使用的遗留工具模块

无用户可见的行为变化。

Full Changelog: 2.0.1...2.0.2

2.0.1

Choose a tag to compare

@github-actions github-actions released this 20 Sep 13:01

Code review fixes

  • Replaced all direct HTML string injection with Obsidian's addIcon / setIcon icon API and createEl DOM helpers (fixes the unsafe innerHTML error and the DOM / icon related warnings)
  • Expansion memory now uses the vault-scoped App#loadLocalStorage / App#saveLocalStorage APIs instead of global localStorage
  • Added getSettingDefinitions() alongside the existing settings tab (dual-support pattern): all settings are indexed in Obsidian 1.13+ settings search, with live theme refresh on change; older versions keep the current settings page
  • Timer uses window.requestAnimationFrame; removed unnecessary type assertions and an unsafe array typing
  • Removed the deprecated builtin-modules dependency in favor of Node's built-in module API

No user-facing behavior changes.


代码审核修复

  • 移除全部 HTML 字符串直注:自定义图标改用 Obsidian addIcon / setIcon 图标 API,DOM 统一走 createEl 系辅助方法(修复 unsafe innerHTML 错误及相关 DOM / 图标警告)
  • 展开记忆改用 vault 级隔离的 App#loadLocalStorage / App#saveLocalStorage API,不再直接访问全局 localStorage
  • 设置页在保留现有界面的基础上增加 getSettingDefinitions()(官方双支持模式):Obsidian 1.13+ 全部设置可被全局设置搜索索引,改色/开关仍即时生效;旧版本维持原设置页
  • 计时器改用 window.requestAnimationFrame;清理多余类型断言与不安全的数组类型
  • 移除官方不推荐的 builtin-modules 依赖,改用 Node 内置 module API

无用户可见的行为变化。

Full Changelog: 2.0.0...2.0.1

2.0.0

Choose a tag to compare

@github-actions github-actions released this 20 Sep 12:23

Rewrite

  • Removed Vue 3 / Naive UI / Vite: the whole plugin is rewritten with zero UI framework — vanilla DOM rendering bundled by esbuild
  • Fixed-row-height virtual scrolling: only viewport rows are rendered, smooth even with 1000+ headings
  • Smaller footprint: main.js is now ~91 KB

Fixes

  • Clicked-heading highlight no longer lingers while scrolling; a single highlight tracks the cursor / scroll position
  • Fixed rows overlapping on first launch when the sidebar panel mounts late (row height is measured after layout and re-measured on resize)
  • Fixed the expansion level resetting to 0 on startup due to empty memory written during a race; expansion memory now stores the per-file level (v2 format), legacy data is migrated automatically

Changes

  • "Default expanding level" is now a validated 0-5 dropdown instead of free text; qo-default-level: 0 in frontmatter is honored correctly
  • Primary color override is off by default, so the outline follows the active Obsidian theme accent color
  • Rainbow indentation color pickers are labeled by indent level (1-5)
  • Removed about ten dead code paths left by the rewrite (unused event channels, navigator hooks, store fields)

重写

  • 移除 Vue 3 / Naive UI / Vite,全插件零框架重写:原生 DOM 渲染,esbuild 打包
  • 固定行高虚拟滚动:只渲染视口内行,上千标题长文档滚动依然流畅
  • 体积更小:main.js 约 91 KB

修复

  • 点击标题后滚动不再残留两个高亮,仅保留跟随光标 / 滚动位置的单个高亮
  • 修复侧边栏面板延迟挂载时首启动行文字堆叠(布局完成后补测行高,尺寸变化时自动重测)
  • 修复启动竞态写入空记忆导致展开级别被重置为 0;展开记忆升级为按文件存级别(v2 格式),旧数据自动迁移

变更

  • 「默认展开层级」由自由文本改为 0-5 下拉校验;frontmatter qo-default-level: 0 现在能正确生效
  • 「覆盖主色」默认关闭,大纲跟随当前 Obsidian 主题强调色
  • 彩虹缩进线取色器按缩进层级 1-5 标注
  • 清理重写遗留的约 10 处死代码(无触发方事件通道、导航器冗余钩子、store 无用字段等)

Full Changelog: 1.1.6...2.0.0

1.1.6

Choose a tag to compare

@github-actions github-actions released this 19 Sep 16:07

Full Changelog: 1.1.5...1.1.6