#mode #dark #light #detect #color-scheme #enabled #kde

dark-light

检测是否启用了深色模式或浅色模式

9 个版本 (3 个稳定版)

1.1.1 2024 年 4 月 4 日
1.1.0 2024 年 4 月 3 日
1.0.0 2022 年 12 月 25 日
0.2.3 2022 年 9 月 18 日
0.1.1 2021 年 2 月 18 日

#43GUI

Download history 2552/week @ 2024-04-20 3465/week @ 2024-04-27 2832/week @ 2024-05-04 2210/week @ 2024-05-11 2421/week @ 2024-05-18 2337/week @ 2024-05-25 2535/week @ 2024-06-01 2413/week @ 2024-06-08 2931/week @ 2024-06-15 2851/week @ 2024-06-22 2493/week @ 2024-06-29 2884/week @ 2024-07-06 2820/week @ 2024-07-13 3336/week @ 2024-07-20 3480/week @ 2024-07-27 4432/week @ 2024-08-03

14,610 每月下载次数
用于 26 个 crate (14 个直接使用)

MIT/Apache

14KB
225 代码行

rust-dark-light

Rust 包用于检测是否启用了深色模式或浅色模式。支持 macOS、Windows、Linux、BSD 和 WASM。在 Linux 和 BSD 上,首先检查 XDG 桌面门户 dbus API 的 color-scheme 预设,这在 Flatpak 沙盒中无需文件系统访问即可工作。如果这不起作用,将使用 KDE、GNOME、Cinnamon、MATE、XFCE 和 Unity 的回退方法。

API 文档

用法

fn main() {
    let mode = dark_light::detect();

    match mode {
        // Dark mode
        dark_light::Mode::Dark => {},
        // Light mode
        dark_light::Mode::Light => {},
        // Unspecified
        dark_light::Mode::Default => {},
    }
}

示例

cargo run --example detect

许可

许可协议为以下之一

供您选择。

依赖

~0–12MB
~135K SLoC