aboutsummaryrefslogtreecommitdiff
path: root/include/Config.hpp
blob: 5e0218b62e989c62ddd1109722d6ce6154a45d96 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#pragma once

#include <string>

namespace QuickMedia {
    struct SearchConfig {
        int font_size = 16;
    };

    struct TabConfig {
        int font_size = 16;
    };

    struct BodyConfig {
        int title_font_size = 16;
        int author_font_size = 14;
        int description_font_size = 14;
        int timestamp_font_size = 10;
        int reaction_font_size = 14;
        int progress_font_size = 14;
        int replies_font_size = 14;
        int embedded_load_font_size = 14;
    };

    struct InputConfig {
        int font_size = 16;
    };

    struct Config {
        Config() = default;
        Config(const Config&) = delete;
        Config&operator=(const Config&) = delete;

        SearchConfig search;
        TabConfig tab;
        BodyConfig body;
        InputConfig input;
        bool use_system_fonts = false;
        bool use_system_mpv_config = false;
        std::string theme = "default";
        float scale = 1.0f;
        float font_scale = 1.0f;
    };

    const Config& get_config();
}