FIT2CLOUD
深色模式 的图标

深色模式

701
371

为 Halo 后台管理面板提供深色/浅色模式切换,支持跟随系统、手动切换和偏好记忆

1.1.5
Serendipity 发布于
>=2.25.0

v1.1.5(2026-08-31)

修复

  • 解决文章 / 页面编辑页深色模式下卡死的问题:在编辑页彻底禁用 Dark Reader 引擎,切断 contenteditable(如 ByteMD / 富文本)与引擎动态分析之间的相互触发

行为变化

  • 编辑页识别采用「路由 + 编辑区 DOM」双重判断:只要 URL 以 /editor 结尾,或页面出现 .ProseMirror / .editor-content / [contenteditable] / .editor 任一编辑区节点,即执行 disable(),并强制 color-scheme: light
  • 编辑页整页转为白天模式:无论全局主题是深色还是浅色,进入编辑页时左侧导航、工具栏、正文均显示为 Halo 默认浅色;退出编辑页后自动恢复全局主题
  • 通过劫持 history.pushState / history.replaceState、监听 popstateMutationObserver 与兜底轮询,在进出编辑页时即时重应用 DR,无需整页刷新

验证

  • 前端单元测试通过(含“编辑页 URL 命中强制禁用”“编辑区 DOM 出现强制禁用”“离开编辑页恢复”用例)
  • ./gradlew build 成功,产物 plugin-dark-mode-1.1.5.jar

资源下载

  • plugin-dark-mode-1.1.5.jar