summaryrefslogtreecommitdiff
path: root/common/modules/matugen/templates/matugen-zen.nix
blob: cd98991bbac3a675fc156efed5cec5f7431f3d3b (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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
{
  xdg.configFile = {
    "matugen/templates/zen-usercontent.css" = {
      enable = true;
      text =
        # css
        ''
          /* Common variables affecting all pages */
            @-moz-document url-prefix("about:") {
              :root {
                --in-content-page-color: {{colors.secondary.default.hex}} !important;
                --color-accent-primary: {{colors.primary.default.hex}} !important;
                /* --color-accent-primary-hover: rgb(249, 217, 240) !important;
                --color-accent-primary-active: rgb(245, 195, 219) !important; */
                background-color: {{colors.surface_container.default.hex}} !important;
                --in-content-page-background: {{colors.surface_container.default.hex}} !important;
              }

            }

            /* Variables and styles specific to about:newtab and about:home */
            @-moz-document url("about:newtab"), url("about:home") {

              :root {
                --newtab-background-color: {{colors.surface_container.default.hex}} !important;
                --newtab-background-color-secondary: {{colors.surface_container_high.default.hex}} !important;
                --newtab-element-hover-color: {{colors.surface_container_high.default.hex}} !important;
                --newtab-text-primary-color: {{colors.secondary.default.hex}} !important;
                --newtab-wordmark-color: {{colors.secondary.default.hex}} !important;
                --newtab-primary-action-background: {{colors.primary.default.hex}} !important;
              }

              .icon {
                color: {{colors.primary.default.hex}} !important;
              }

              .card-outer:is(:hover, :focus, .active):not(.placeholder) .card-title {
                color: {{colors.primary.default.hex}} !important;
              }
            }

            /* Variables and styles specific to about:preferences */
            @-moz-document url-prefix("about:preferences") {
              :root {
                --zen-colors-tertiary: {{colors.surface_container_low.default.hex}} !important;
                --in-content-text-color: {{colors.secondary.default.hex}} !important;
                --link-color: {{colors.primary.default.hex}} !important;
                /* --link-color-hover: rgb(249, 217, 240) !important; */
                --zen-colors-primary: {{colors.surface_container_high.default.hex}} !important;
                --in-content-box-background: {{colors.surface_container_high.default.hex}} !important;
                --zen-primary-color: {{colors.primary.default.hex}} !important;
              }

              button,
              groupbox menulist {
                background: {{colors.surface_container_high.default.hex}} !important;
                color: {{colors.secondary.default.hex}} !important;
              }

              .main-content {
                background-color: {{colors.surface_container_lowest.default.hex}} !important;
              }
            }

            /* Variables and styles specific to about:addons */
            @-moz-document url-prefix("about:addons") {
              :root {
                --zen-dark-color-mix-base: {{colors.surface_container_low.default.hex}} !important;
                --background-color-box: {{colors.surface_container.default.hex}} !important;
              }
            }

            /* Variables and styles specific to about:protections */
            @-moz-document url-prefix("about:protections") {
              :root {
                --zen-primary-color: {{colors.surface_container.default.hex}} !important;
                --in-content-primary-button-text-color-hover: {{colors.secondary.default.hex}} !important;
                --in-content-primary-button-background: {{colors.surface_container.default.hex}} !important;
                --in-content-primary-button-text-color: {{colors.secondary.default.hex}} !important;
              }

              .card {
                background-color: {{colors.surface_container_high.default.hex}} !important;
              }
            }
              /* Pane UI button visibility issue fix */
            #PanelUI-menu-button[open] .toolbarbutton-icon {
              fill: {{colors.primary.default.hex}} !important;
            }
          }


          img, canvas, video, .avatar, 
          [class*="avatar"], 
          [class*="ProfileAvatar"],
          [style*="border-radius"] {
              border-radius: 0 !important;
              clip-path: none !important;
              mask-image: none !important;
              -webkit-mask-image: none !important;
          }

          :not(svg):not(circle):not(ellipse):not(path) {
              border-radius: 0 !important;
          }

          :root {
              --border-radius: 0px !important;
              --radius: 0px !important;
              --rounded-corner: 0px !important;
              --avatar-radius: 0px !important;
              --pfp-radius: 0px !important;
          }
        '';
    };
  };
  xdg.configFile = {
    "matugen/templates/zen.css" = {
      enable = true;
      text =
        # css
        ''
          :root {
            --zen-primary-color: {{colors.primary_container.default.hex}} !important;
            --toolbarbutton-icon-fill: {{colors.primary.default.hex}} !important;
            --toolbar-field-color: {{colors.on_background.default.hex}} !important;
            --tab-selected-textcolor: {{colors.primary.default.hex}} !important;
            --toolbar-color: {{colors.on_background.default.hex}} !important;
            --arrowpanel-color: {{colors.on_surface.default.hex}} !important;
            --arrowpanel-background: {{colors.surface_container.default.hex}} !important;
            --sidebar-text-color: {{colors.on_background.default.hex}} !important;
            --zen-main-browser-background: {{colors.background.default.hex}} !important;
          }

          * {
            font-family: "JetBrainsMono Nerd Font", monospace !important;
            border-radius: 0 !important;
          }

          .sidebar-placesTree {
            background-color: {{colors.surface_container.default.hex}} !important;
          }

          #zen-workspaces-button {
            background-color: {{colors.surface_container.default.hex}} !important;
          }

          #TabsToolbar {
            background-color: {{colors.background.default.hex}} !important;
          }

          .urlbar-background {
            background-color: {{colors.surface_container.default.hex}} !important;
          }

          .urlbar-input::selection {
            color: {{colors.on_primary.default.hex}} !important;
            background-color: {{colors.primary.default.hex}} !important;
          }

          .urlbarView-url {
            color: {{colors.on_surface_variant.default.hex}} !important;
          }

          toolbar .toolbarbutton-1 {
            &:not([disabled]) {
              &:is([open], [checked])
                > :is(
                  .toolbarbutton-icon,
                  .toolbarbutton-text,
                  .toolbarbutton-badge-stack
                ) {
                fill: {{colors.primary.default.hex}}
              }
            }
          }

          .identity-color-blue {
            --identity-tab-color: \{{color12}} !important;
            --identity-icon-color: \{{color12}} !important;
          }

          .identity-color-turquoise {
            --identity-tab-color: \{{color6}} !important;
            --identity-icon-color: \{{color6}} !important;
          }

          .identity-color-green {
            --identity-tab-color: \{{color10}} !important;
            --identity-icon-color: \{{color10}} !important;
          }

          .identity-color-yellow {
            --identity-tab-color: \{{color11}} !important;
            --identity-icon-color: \{{color11}} !important;
          }

          .identity-color-orange {
            --identity-tab-color: \{{color3}} !important;
            --identity-icon-color: \{{color3}} !important;
          }

          .identity-color-red {
            --identity-tab-color: \{{color9}} !important;
            --identity-icon-color: \{{color9}} !important;
          }

          .identity-color-pink {
            --identity-tab-color: \{{color13}} !important;
            --identity-icon-color: \{{color13}} !important;
          }

          .identity-color-purple {
            --identity-tab-color: \{{color5}} !important;
            --identity-icon-color: \{{color5}} !important;
          }

          #zen-appcontent-navbar-container {
            background-color: {{colors.background.default.hex}} !important;
          }

          #PanelUI-menu-button .toolbarbutton-icon,
          #downloads-button .toolbarbutton-icon,
          #unified-extensions-button .toolbarbutton-icon {
            fill: {{colors.primary.default.hex}} !important;
            color: {{colors.primary.default.hex}} !important;
          }

          #PanelUI-menu-button .toolbarbutton-badge-stack,
          #downloads-button .toolbarbutton-badge-stack,
          #unified-extensions-button .toolbarbutton-badge-stack {
            fill: {{colors.primary.default.hex}} !important;
            color: {{colors.primary.default.hex}} !important;
          }

          toolbar .toolbarbutton-1 > .toolbarbutton-icon {
            fill: {{colors.primary.default.hex}} !important;
          }
        '';
    };
  };
}