Skip to content

[Bug] macOS 26 主题模式-跟随系统设置 失效 #6526

Description

@ToobLac

问题描述 | Bug Description

31st July 更新:问题的表现可以归纳为以下两点:
在 macOS 上:

  • “主题模式“不是”跟随系统设置“时,切换到”跟随系统设置“不会有任何效果
  • 即使”主题模式“在开启启动器时就是”跟随系统设置“,后续系统深浅色模式切换时HMCL也不会跟随切换

原因:

  • 在应用程序未使用 NSApplication::setAppearance 设置自己的深浅色模式时,JavaFX的 colorScheme 属性(也就是 FXUtils::DARK_MODE 属性)能正常跟随系统切换,此时“跟随系统设置”表现正常,代价是文件选择窗口颜色始终与系统而非HMCL匹配
  • 在 macOS 下随明暗模式设置 NSAppearance #5778 以后,在macOS上HMCL会把上述属性设置为自己的深浅色模式,以改变文件选择窗口的颜色。然而这导致 colorScheme 属性被设置为HMCL自己的深浅色模式,且不再随系统深浅色模式变化
  • HMCL在使用“跟随系统设置”时,会优先使用 FXUtils::DARK_MODE 的值。然而这个值此时已经是HMCL自己的颜色了,所以不会产生任何效果。

  1. 将启动器“主题模式”设置为“深色模式”
  2. 重启启动器,将“主题模式”设置为“跟随系统设置”
  3. 启动器表现为深色模式
  4. 将“主题模式”设置为“浅色模式”
  5. 重复2
  6. 启动器表现为浅色模式
  7. 保持“主题模式”为“跟随系统设置”,重启启动器
  8. 启动器能正常跟随系统设置

macOS 26.5.2, Oracle JDK 26.0.2, HMCL v3.17.0.351

启动器崩溃报告 / 启动器日志文件 | Launcher Crash Report / Launcher Log File

N/A

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions