@gjsify/adwaita-web 0.45.0 → 0.47.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -6
- package/dist/adwaita-web.css +96 -96
- package/dist/adwaita-web.css.map +1 -1
- package/lib/types/elements/adw-entry-row.d.ts +2 -2
- package/lib/types/elements/adw-expander-row.d.ts +1 -1
- package/lib/types/elements/adw-split-button.d.ts +1 -1
- package/lib/types/elements/adw-switch-row.d.ts +1 -1
- package/lib/types/elements/adw-wrap-box.d.ts +1 -1
- package/lib/types/elements/{adw-checks.d.ts → checks.d.ts} +9 -2
- package/lib/types/elements/{adw-button.d.ts → gtk-button.d.ts} +1 -1
- package/lib/types/elements/{adw-drop-down.d.ts → gtk-drop-down.d.ts} +6 -6
- package/lib/types/elements/{adw-entry.d.ts → gtk-entry.d.ts} +1 -1
- package/lib/types/elements/{adw-icon.d.ts → gtk-image.d.ts} +2 -2
- package/lib/types/elements/{adw-menu-button.d.ts → gtk-menu-button.d.ts} +13 -4
- package/lib/types/elements/{adw-popover.d.ts → gtk-popover.d.ts} +9 -9
- package/lib/types/elements/{adw-progress-bar.d.ts → gtk-progress-bar.d.ts} +1 -1
- package/lib/types/elements/{adw-switch.d.ts → gtk-switch.d.ts} +2 -2
- package/lib/types/elements/view-switcher-dom.d.ts +4 -4
- package/lib/types/exported-elements.d.ts +10 -0
- package/lib/types/gtk-button.spec.d.ts +1 -0
- package/lib/types/gtk-drop-down.spec.d.ts +1 -0
- package/lib/types/gtk-entry.spec.d.ts +1 -0
- package/lib/types/gtk-image.spec.d.ts +1 -0
- package/lib/types/gtk-menu-button.spec.d.ts +1 -0
- package/lib/types/gtk-progress-bar.spec.d.ts +1 -0
- package/lib/types/gtk-switch.spec.d.ts +1 -0
- package/lib/types/icon-registry.d.ts +2 -2
- package/lib/types/index.d.ts +13 -51
- package/lib/types/namespace/adw.d.ts +44 -0
- package/lib/types/namespace/gtk.d.ts +9 -0
- package/lib/types/styles.generated.d.ts +1 -1
- package/package.json +6 -6
- package/scss/_about_dialog.scss +1 -1
- package/scss/_button.scss +4 -4
- package/scss/_checks.scss +6 -6
- package/scss/_drop_down.scss +3 -3
- package/scss/_entry.scss +3 -3
- package/scss/_expander_row.scss +1 -1
- package/scss/_icon.scss +4 -4
- package/scss/_menu_button.scss +3 -3
- package/scss/_popover.scss +2 -2
- package/scss/_progress_bar.scss +4 -4
- package/scss/_reset.scss +10 -8
- package/scss/_split_button.scss +1 -1
- package/scss/_style_classes.scss +9 -9
- package/scss/_switch.scss +2 -2
- package/scss/_switch_row.scss +1 -1
- package/scss/_toast.scss +1 -1
- package/scss/adwaita-skin.scss +2 -2
- package/src/adw-action-rows.spec.ts +2 -2
- package/src/adw-button-content.spec.ts +1 -1
- package/src/bottom-sheet.spec.ts +2 -2
- package/src/{adw-checks.spec.ts → checks.spec.ts} +11 -11
- package/src/chrome.spec.ts +2 -2
- package/src/connect-lifecycle.spec.ts +10 -7
- package/src/elements/adw-about-dialog.ts +6 -6
- package/src/elements/adw-avatar.ts +4 -4
- package/src/elements/adw-button-content.ts +6 -6
- package/src/elements/adw-button-row.ts +6 -6
- package/src/elements/adw-combo-row.ts +1 -1
- package/src/elements/adw-entry-row.ts +5 -5
- package/src/elements/adw-expander-row.ts +10 -10
- package/src/elements/adw-navigation-view.ts +1 -1
- package/src/elements/adw-password-entry-row.ts +3 -3
- package/src/elements/adw-sidebar.ts +4 -4
- package/src/elements/adw-split-button.ts +14 -14
- package/src/elements/adw-status-page.ts +4 -4
- package/src/elements/adw-switch-row.ts +8 -8
- package/src/elements/adw-tab-view.ts +7 -7
- package/src/elements/adw-toast-overlay.ts +2 -2
- package/src/elements/adw-toggle-group.ts +3 -3
- package/src/elements/adw-view-switcher-bar.ts +3 -3
- package/src/elements/adw-view-switcher.ts +3 -3
- package/src/elements/{adw-checks.ts → checks.ts} +13 -6
- package/src/elements/{adw-button.ts → gtk-button.ts} +6 -6
- package/src/elements/{adw-drop-down.ts → gtk-drop-down.ts} +18 -18
- package/src/elements/{adw-entry.ts → gtk-entry.ts} +4 -4
- package/src/elements/{adw-icon.ts → gtk-image.ts} +5 -5
- package/src/elements/{adw-menu-button.ts → gtk-menu-button.ts} +27 -18
- package/src/elements/{adw-popover.ts → gtk-popover.ts} +18 -18
- package/src/elements/{adw-progress-bar.ts → gtk-progress-bar.ts} +5 -5
- package/src/elements/{adw-switch.ts → gtk-switch.ts} +4 -4
- package/src/elements/view-switcher-dom.ts +5 -5
- package/src/exported-elements.ts +50 -0
- package/src/{adw-button.spec.ts → gtk-button.spec.ts} +6 -6
- package/src/{adw-drop-down.spec.ts → gtk-drop-down.spec.ts} +17 -17
- package/src/{adw-entry.spec.ts → gtk-entry.spec.ts} +8 -8
- package/src/{adw-icon.spec.ts → gtk-image.spec.ts} +21 -21
- package/src/{adw-menu-button.spec.ts → gtk-menu-button.spec.ts} +6 -6
- package/src/{adw-progress-bar.spec.ts → gtk-progress-bar.spec.ts} +12 -12
- package/src/{adw-switch.spec.ts → gtk-switch.spec.ts} +20 -20
- package/src/icon-registry.spec.ts +6 -6
- package/src/icon-registry.ts +6 -6
- package/src/index.ts +64 -63
- package/src/namespace/adw.ts +99 -0
- package/src/namespace/gtk.ts +22 -0
- package/src/preferences-search.ts +1 -1
- package/src/slotted-children.spec.ts +5 -3
- package/src/source-view/adw-source-view.ts +2 -2
- package/src/split-button.spec.ts +5 -5
- package/src/styles.generated.ts +1 -1
- package/src/test.browser.mts +15 -15
- package/lib/types/adw-button.spec.d.ts +0 -1
- package/lib/types/adw-drop-down.spec.d.ts +0 -1
- package/lib/types/adw-entry.spec.d.ts +0 -1
- package/lib/types/adw-icon.spec.d.ts +0 -1
- package/lib/types/adw-menu-button.spec.d.ts +0 -1
- package/lib/types/adw-progress-bar.spec.d.ts +0 -1
- package/lib/types/adw-switch.spec.d.ts +0 -1
- /package/lib/types/{adw-checks.spec.d.ts → checks.spec.d.ts} +0 -0
package/README.md
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# @gjsify/adwaita-web
|
|
2
2
|
|
|
3
|
-
Browser Adwaita UI components as Custom Elements, bringing the Libadwaita look (light/dark) to the web with no GJS dependencies.
|
|
3
|
+
Browser Adwaita UI components as Custom Elements, bringing the Libadwaita look (light/dark) to the web with no GJS dependencies. Backed by SCSS that mirrors the upstream `refs/adwaita-web` and `refs/libadwaita` color/sizing tokens.
|
|
4
|
+
|
|
5
|
+
Write the tags — `<adw-window>`, `<adw-header-bar>`, `<gtk-button>`, `<gtk-entry>`, `<adw-preferences-group>`, `<adw-switch-row>`, `<adw-overlay-split-view>` and the rest — or reach the classes through the GIR namespace the tag names: `Adw.Window`, `Gtk.Button`, `Adw.OverlaySplitView`. Each tag carries the prefix of the library that owns its GType, and the namespace member is that split read back (ADR 0034). There are no `AdwWindow`/`GtkButton` class exports at the package root; the elements with no GTK counterpart at all — `AdwCard`, `AdwDataGrid`, the declarative page and slot wrappers — keep their flat name, because it is their only one.
|
|
4
6
|
|
|
5
7
|
Part of the [gjsify](https://github.com/gjsify/gjsify) project — Node.js and Web APIs for GJS (GNOME JavaScript).
|
|
6
8
|
|
|
@@ -63,7 +65,7 @@ identical child written in the markup.
|
|
|
63
65
|
|
|
64
66
|
```typescript
|
|
65
67
|
const row = document.querySelector('adw-action-row')!;
|
|
66
|
-
const toggle = document.createElement('
|
|
68
|
+
const toggle = document.createElement('gtk-switch');
|
|
67
69
|
toggle.setAttribute('slot', 'suffix');
|
|
68
70
|
row.append(toggle); // lands in the suffix section, exactly as a declared one does
|
|
69
71
|
```
|
|
@@ -151,7 +153,7 @@ about the individual components.
|
|
|
151
153
|
|
|
152
154
|
## Icons, and the ones the stylesheet does not ship
|
|
153
155
|
|
|
154
|
-
|
|
156
|
+
A `<gtk-image icon-name="go-next">` is a CSS mask: the box takes its colour from
|
|
155
157
|
`currentColor` and a generated `.adw-icon--<name>` class supplies the `mask-image`, so the
|
|
156
158
|
glyph re-themes with whatever contains it. The names that resolve are a **chosen subset** of
|
|
157
159
|
[`@gjsify/adwaita-icons`](../adwaita-icons) — a few dozen of them, plus one glyph drawn
|
|
@@ -178,7 +180,7 @@ if (!isIconAvailable('dialog-error')) {
|
|
|
178
180
|
```
|
|
179
181
|
|
|
180
182
|
```html
|
|
181
|
-
<
|
|
183
|
+
<gtk-image icon-name="dialog-error"></gtk-image>
|
|
182
184
|
<!-- …or any widget attribute that takes an icon name -->
|
|
183
185
|
<adw-status-page icon="dialog-error" title="Could not connect"></adw-status-page>
|
|
184
186
|
```
|
|
@@ -187,7 +189,7 @@ if (!isIconAvailable('dialog-error')) {
|
|
|
187
189
|
`@gjsify/adwaita-icons` exports, and equally any symbolic SVG of your own drawn on the 16px
|
|
188
190
|
Adwaita grid with `fill="currentColor"`. It writes the same pair the build writes: a
|
|
189
191
|
`--icon-<name>` custom property on the document element and a `.adw-icon--<name>` mask rule,
|
|
190
|
-
so from then on the name is indistinguishable from a compiled one — in `<
|
|
192
|
+
so from then on the name is indistinguishable from a compiled one — in `<gtk-image>`, in a
|
|
191
193
|
widget attribute, in a hand-written `class="adw-icon adw-icon--dialog-error"`, and in your
|
|
192
194
|
own CSS as `var(--icon-dialog-error)`.
|
|
193
195
|
|
|
@@ -204,7 +206,7 @@ Notes worth having:
|
|
|
204
206
|
comes off, and what is left has to be a single CSS token. `registerIcon` *throws* on a name
|
|
205
207
|
that is not (`org.gnome.Builder`, `a b`), because a call that silently registers nothing is
|
|
206
208
|
the failure this whole area exists to end — and because there is no mask class such a name
|
|
207
|
-
could be given. `<
|
|
209
|
+
could be given. `<gtk-image>` stays lenient with the same input: the name came from markup,
|
|
208
210
|
so it draws `image-missing` rather than taking the page down.
|
|
209
211
|
- **Re-registering replaces the glyph** rather than adding a second rule, so a runtime theme
|
|
210
212
|
switch can call it as often as it likes.
|
package/dist/adwaita-web.css
CHANGED
|
@@ -506,7 +506,7 @@
|
|
|
506
506
|
font-size: var(--font-size-base);
|
|
507
507
|
}
|
|
508
508
|
|
|
509
|
-
adw-about-dialog, adw-action-row, adw-alert-dialog, adw-alert-response, adw-avatar, adw-banner, adw-bottom-sheet, adw-bottom-sheet-content, adw-bottom-sheet-sheet,
|
|
509
|
+
adw-about-dialog, adw-action-row, adw-alert-dialog, adw-alert-response, adw-avatar, adw-banner, adw-bottom-sheet, adw-bottom-sheet-content, adw-bottom-sheet-sheet, gtk-button, adw-button-content, adw-button-row, adw-card, adw-carousel, adw-carousel-indicator-dots, adw-carousel-indicator-lines, gtk-check-button, adw-clamp, adw-combo-row, adw-data-grid, adw-dialog, gtk-drop-down, gtk-entry, adw-entry-row, adw-expander-row, adw-header-bar, gtk-image, adw-inline-view-switcher, gtk-menu-button, adw-navigation-page, adw-navigation-split-view, adw-navigation-view, adw-overlay-split-view, adw-password-entry-row, gtk-popover, adw-preferences-dialog, adw-preferences-group, adw-preferences-page, gtk-progress-bar, adw-radio, adw-shortcut-label, adw-sidebar, adw-sidebar-item, adw-sidebar-section, adw-source-view, adw-spinner, adw-spin-row, adw-split-button, adw-status-page, gtk-switch, adw-switch-row, adw-tab-page, adw-tab-view, adw-toast-overlay, adw-toggle, adw-toggle-group, adw-toolbar-view, adw-view-stack, adw-view-stack-page, adw-view-switcher, adw-view-switcher-bar, adw-view-switcher-page, adw-window, adw-window-title, adw-wrap-box {
|
|
510
510
|
box-sizing: border-box;
|
|
511
511
|
color: var(--window-fg-color);
|
|
512
512
|
font-family: var(--font-family);
|
|
@@ -577,9 +577,9 @@ adw-bottom-sheet-sheet *::after {
|
|
|
577
577
|
box-sizing: border-box;
|
|
578
578
|
}
|
|
579
579
|
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
580
|
+
gtk-button *,
|
|
581
|
+
gtk-button *::before,
|
|
582
|
+
gtk-button *::after {
|
|
583
583
|
box-sizing: border-box;
|
|
584
584
|
}
|
|
585
585
|
|
|
@@ -619,9 +619,9 @@ adw-carousel-indicator-lines *::after {
|
|
|
619
619
|
box-sizing: border-box;
|
|
620
620
|
}
|
|
621
621
|
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
622
|
+
gtk-check-button *,
|
|
623
|
+
gtk-check-button *::before,
|
|
624
|
+
gtk-check-button *::after {
|
|
625
625
|
box-sizing: border-box;
|
|
626
626
|
}
|
|
627
627
|
|
|
@@ -649,15 +649,15 @@ adw-dialog *::after {
|
|
|
649
649
|
box-sizing: border-box;
|
|
650
650
|
}
|
|
651
651
|
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
652
|
+
gtk-drop-down *,
|
|
653
|
+
gtk-drop-down *::before,
|
|
654
|
+
gtk-drop-down *::after {
|
|
655
655
|
box-sizing: border-box;
|
|
656
656
|
}
|
|
657
657
|
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
658
|
+
gtk-entry *,
|
|
659
|
+
gtk-entry *::before,
|
|
660
|
+
gtk-entry *::after {
|
|
661
661
|
box-sizing: border-box;
|
|
662
662
|
}
|
|
663
663
|
|
|
@@ -679,9 +679,9 @@ adw-header-bar *::after {
|
|
|
679
679
|
box-sizing: border-box;
|
|
680
680
|
}
|
|
681
681
|
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
682
|
+
gtk-image *,
|
|
683
|
+
gtk-image *::before,
|
|
684
|
+
gtk-image *::after {
|
|
685
685
|
box-sizing: border-box;
|
|
686
686
|
}
|
|
687
687
|
|
|
@@ -691,9 +691,9 @@ adw-inline-view-switcher *::after {
|
|
|
691
691
|
box-sizing: border-box;
|
|
692
692
|
}
|
|
693
693
|
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
694
|
+
gtk-menu-button *,
|
|
695
|
+
gtk-menu-button *::before,
|
|
696
|
+
gtk-menu-button *::after {
|
|
697
697
|
box-sizing: border-box;
|
|
698
698
|
}
|
|
699
699
|
|
|
@@ -727,9 +727,9 @@ adw-password-entry-row *::after {
|
|
|
727
727
|
box-sizing: border-box;
|
|
728
728
|
}
|
|
729
729
|
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
730
|
+
gtk-popover *,
|
|
731
|
+
gtk-popover *::before,
|
|
732
|
+
gtk-popover *::after {
|
|
733
733
|
box-sizing: border-box;
|
|
734
734
|
}
|
|
735
735
|
|
|
@@ -751,9 +751,9 @@ adw-preferences-page *::after {
|
|
|
751
751
|
box-sizing: border-box;
|
|
752
752
|
}
|
|
753
753
|
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
754
|
+
gtk-progress-bar *,
|
|
755
|
+
gtk-progress-bar *::before,
|
|
756
|
+
gtk-progress-bar *::after {
|
|
757
757
|
box-sizing: border-box;
|
|
758
758
|
}
|
|
759
759
|
|
|
@@ -817,9 +817,9 @@ adw-status-page *::after {
|
|
|
817
817
|
box-sizing: border-box;
|
|
818
818
|
}
|
|
819
819
|
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
820
|
+
gtk-switch *,
|
|
821
|
+
gtk-switch *::before,
|
|
822
|
+
gtk-switch *::after {
|
|
823
823
|
box-sizing: border-box;
|
|
824
824
|
}
|
|
825
825
|
|
|
@@ -940,7 +940,7 @@ adw-wrap-box *::after {
|
|
|
940
940
|
background-color: transparent;
|
|
941
941
|
}
|
|
942
942
|
|
|
943
|
-
.dimmed, .adw-data-grid .adw-data-grid-row.header .adw-data-grid-cell,
|
|
943
|
+
.dimmed, .adw-data-grid .adw-data-grid-row.header .adw-data-grid-cell, gtk-progress-bar .adw-progress-bar-text {
|
|
944
944
|
opacity: var(--dim-opacity);
|
|
945
945
|
}
|
|
946
946
|
|
|
@@ -1023,7 +1023,7 @@ adw-wrap-box *::after {
|
|
|
1023
1023
|
font-size: var(--monospace-font-size);
|
|
1024
1024
|
}
|
|
1025
1025
|
|
|
1026
|
-
.numeric, .adw-data-grid .adw-data-grid-cell.mono,
|
|
1026
|
+
.numeric, .adw-data-grid .adw-data-grid-cell.mono, gtk-progress-bar .adw-progress-bar-text {
|
|
1027
1027
|
font-variant-numeric: tabular-nums;
|
|
1028
1028
|
}
|
|
1029
1029
|
|
|
@@ -1119,45 +1119,45 @@ adw-card,
|
|
|
1119
1119
|
gap: 6px;
|
|
1120
1120
|
padding: 6px;
|
|
1121
1121
|
}
|
|
1122
|
-
.toolbar
|
|
1123
|
-
.toolbar
|
|
1124
|
-
.toolbar
|
|
1122
|
+
.toolbar gtk-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button.icon-only,
|
|
1123
|
+
.toolbar gtk-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):has(adw-button-content) .adw-button,
|
|
1124
|
+
.toolbar gtk-menu-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button,
|
|
1125
1125
|
.toolbar adw-split-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button {
|
|
1126
1126
|
background-color: transparent;
|
|
1127
1127
|
}
|
|
1128
|
-
.toolbar
|
|
1129
|
-
.toolbar
|
|
1130
|
-
.toolbar
|
|
1128
|
+
.toolbar gtk-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button.icon-only:hover,
|
|
1129
|
+
.toolbar gtk-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):has(adw-button-content) .adw-button:hover,
|
|
1130
|
+
.toolbar gtk-menu-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button:hover,
|
|
1131
1131
|
.toolbar adw-split-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button:hover {
|
|
1132
1132
|
background-color: var(--button-hover-color);
|
|
1133
1133
|
}
|
|
1134
|
-
.toolbar
|
|
1135
|
-
.toolbar
|
|
1136
|
-
.toolbar
|
|
1134
|
+
.toolbar gtk-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button.icon-only:active,
|
|
1135
|
+
.toolbar gtk-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque):has(adw-button-content) .adw-button:active,
|
|
1136
|
+
.toolbar gtk-menu-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button:active,
|
|
1137
1137
|
.toolbar adw-split-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button:active {
|
|
1138
1138
|
background-color: var(--button-active-color);
|
|
1139
1139
|
}
|
|
1140
|
-
.toolbar .linked
|
|
1141
|
-
.toolbar .linked
|
|
1140
|
+
.toolbar .linked gtk-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button,
|
|
1141
|
+
.toolbar .linked gtk-menu-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button,
|
|
1142
1142
|
.toolbar .linked adw-split-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button,
|
|
1143
|
-
.toolbar .adw-linked
|
|
1144
|
-
.toolbar .adw-linked
|
|
1143
|
+
.toolbar .adw-linked gtk-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button,
|
|
1144
|
+
.toolbar .adw-linked gtk-menu-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button,
|
|
1145
1145
|
.toolbar .adw-linked adw-split-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button {
|
|
1146
1146
|
background-color: var(--button-bg-color);
|
|
1147
1147
|
}
|
|
1148
|
-
.toolbar .linked
|
|
1149
|
-
.toolbar .linked
|
|
1148
|
+
.toolbar .linked gtk-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button:hover,
|
|
1149
|
+
.toolbar .linked gtk-menu-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button:hover,
|
|
1150
1150
|
.toolbar .linked adw-split-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button:hover,
|
|
1151
|
-
.toolbar .adw-linked
|
|
1152
|
-
.toolbar .adw-linked
|
|
1151
|
+
.toolbar .adw-linked gtk-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button:hover,
|
|
1152
|
+
.toolbar .adw-linked gtk-menu-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button:hover,
|
|
1153
1153
|
.toolbar .adw-linked adw-split-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button:hover {
|
|
1154
1154
|
background-color: var(--button-hover-color);
|
|
1155
1155
|
}
|
|
1156
|
-
.toolbar .linked
|
|
1157
|
-
.toolbar .linked
|
|
1156
|
+
.toolbar .linked gtk-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button:active,
|
|
1157
|
+
.toolbar .linked gtk-menu-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button:active,
|
|
1158
1158
|
.toolbar .linked adw-split-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button:active,
|
|
1159
|
-
.toolbar .adw-linked
|
|
1160
|
-
.toolbar .adw-linked
|
|
1159
|
+
.toolbar .adw-linked gtk-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button:active,
|
|
1160
|
+
.toolbar .adw-linked gtk-menu-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button:active,
|
|
1161
1161
|
.toolbar .adw-linked adw-split-button:not(.raised):not(.suggested-action):not(.destructive-action):not(.opaque) .adw-button:active {
|
|
1162
1162
|
background-color: var(--button-active-color);
|
|
1163
1163
|
}
|
|
@@ -1181,7 +1181,7 @@ adw-card,
|
|
|
1181
1181
|
/*******
|
|
1182
1182
|
* OSD *
|
|
1183
1183
|
*******/
|
|
1184
|
-
.osd:not(
|
|
1184
|
+
.osd:not(gtk-progress-bar):not(gtk-button):not(gtk-menu-button):not(adw-split-button):not(adw-inline-view-switcher) {
|
|
1185
1185
|
--accent-bg-color: rgb(255 255 255 / 75%);
|
|
1186
1186
|
--accent-fg-color: rgb(0 0 0 / 75%);
|
|
1187
1187
|
--accent-color: oklab(from var(--accent-bg-color) max(l, 0.85) a b);
|
|
@@ -1395,7 +1395,7 @@ adw-window-title .adw-window-title-subtitle {
|
|
|
1395
1395
|
max-width: 100%;
|
|
1396
1396
|
}
|
|
1397
1397
|
|
|
1398
|
-
|
|
1398
|
+
gtk-button {
|
|
1399
1399
|
display: inline-flex;
|
|
1400
1400
|
}
|
|
1401
1401
|
|
|
@@ -1547,7 +1547,7 @@ adw-button-content.can-shrink .adw-button-content-label {
|
|
|
1547
1547
|
min-width: 0;
|
|
1548
1548
|
}
|
|
1549
1549
|
|
|
1550
|
-
|
|
1550
|
+
gtk-popover {
|
|
1551
1551
|
--popover-radius: 15px;
|
|
1552
1552
|
position: absolute;
|
|
1553
1553
|
z-index: 10;
|
|
@@ -1562,31 +1562,31 @@ adw-popover {
|
|
|
1562
1562
|
box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05), 0 1px 5px 1px rgba(0, 0, 0, 0.09), 0 2px 14px 3px rgba(0, 0, 0, 0.05);
|
|
1563
1563
|
}
|
|
1564
1564
|
@media (prefers-contrast: more) {
|
|
1565
|
-
|
|
1565
|
+
gtk-popover {
|
|
1566
1566
|
box-shadow: 0 0 0 1px var(--separator-color), 0 1px 5px 1px rgba(0, 0, 0, 0.09), 0 2px 14px 3px rgba(0, 0, 0, 0.05);
|
|
1567
1567
|
}
|
|
1568
1568
|
}
|
|
1569
|
-
|
|
1569
|
+
gtk-popover[menu], gtk-popover.menu {
|
|
1570
1570
|
padding: 6px;
|
|
1571
1571
|
}
|
|
1572
|
-
|
|
1572
|
+
gtk-popover[data-position=bottom] {
|
|
1573
1573
|
top: calc(100% + 6px);
|
|
1574
1574
|
}
|
|
1575
|
-
|
|
1575
|
+
gtk-popover[data-position=top] {
|
|
1576
1576
|
bottom: calc(100% + 6px);
|
|
1577
1577
|
}
|
|
1578
|
-
|
|
1578
|
+
gtk-popover[data-position=start] {
|
|
1579
1579
|
top: 0;
|
|
1580
1580
|
right: calc(100% + 6px);
|
|
1581
1581
|
}
|
|
1582
|
-
|
|
1582
|
+
gtk-popover[data-position=end] {
|
|
1583
1583
|
top: 0;
|
|
1584
1584
|
left: calc(100% + 6px);
|
|
1585
1585
|
}
|
|
1586
|
-
|
|
1586
|
+
gtk-popover[data-position=bottom][data-align=start], gtk-popover[data-position=top][data-align=start] {
|
|
1587
1587
|
left: 0;
|
|
1588
1588
|
}
|
|
1589
|
-
|
|
1589
|
+
gtk-popover[data-position=bottom][data-align=end], gtk-popover[data-position=top][data-align=end] {
|
|
1590
1590
|
right: 0;
|
|
1591
1591
|
}
|
|
1592
1592
|
|
|
@@ -2067,7 +2067,7 @@ adw-toggle-group.flat.round .adw-toggle {
|
|
|
2067
2067
|
cursor: not-allowed;
|
|
2068
2068
|
}
|
|
2069
2069
|
|
|
2070
|
-
|
|
2070
|
+
gtk-entry {
|
|
2071
2071
|
display: flex;
|
|
2072
2072
|
flex: 1;
|
|
2073
2073
|
min-width: 0;
|
|
@@ -2105,7 +2105,7 @@ adw-entry {
|
|
|
2105
2105
|
box-shadow: inset 0 0 0 1px var(--entry-border-color);
|
|
2106
2106
|
}
|
|
2107
2107
|
|
|
2108
|
-
|
|
2108
|
+
gtk-check-button,
|
|
2109
2109
|
adw-radio {
|
|
2110
2110
|
position: relative;
|
|
2111
2111
|
display: inline-flex;
|
|
@@ -2116,7 +2116,7 @@ adw-radio {
|
|
|
2116
2116
|
cursor: pointer;
|
|
2117
2117
|
user-select: none;
|
|
2118
2118
|
}
|
|
2119
|
-
|
|
2119
|
+
gtk-check-button .adw-check-input,
|
|
2120
2120
|
adw-radio .adw-check-input {
|
|
2121
2121
|
position: absolute;
|
|
2122
2122
|
width: 0;
|
|
@@ -2124,7 +2124,7 @@ adw-radio .adw-check-input {
|
|
|
2124
2124
|
margin: 0;
|
|
2125
2125
|
opacity: 0;
|
|
2126
2126
|
}
|
|
2127
|
-
|
|
2127
|
+
gtk-check-button .adw-check-indicator,
|
|
2128
2128
|
adw-radio .adw-check-indicator {
|
|
2129
2129
|
box-sizing: content-box;
|
|
2130
2130
|
width: 14px;
|
|
@@ -2135,12 +2135,12 @@ adw-radio .adw-check-indicator {
|
|
|
2135
2135
|
transition: background 200ms ease-out, box-shadow 200ms ease-out;
|
|
2136
2136
|
}
|
|
2137
2137
|
@media (prefers-contrast: more) {
|
|
2138
|
-
|
|
2138
|
+
gtk-check-button .adw-check-indicator,
|
|
2139
2139
|
adw-radio .adw-check-indicator {
|
|
2140
2140
|
box-shadow: inset 0 0 0 2px color-mix(in srgb, currentColor 30%, transparent);
|
|
2141
2141
|
}
|
|
2142
2142
|
}
|
|
2143
|
-
|
|
2143
|
+
gtk-check-button .adw-check-indicator::after,
|
|
2144
2144
|
adw-radio .adw-check-indicator::after {
|
|
2145
2145
|
content: "";
|
|
2146
2146
|
display: block;
|
|
@@ -2154,56 +2154,56 @@ adw-radio .adw-check-indicator::after {
|
|
|
2154
2154
|
-webkit-mask-position: center;
|
|
2155
2155
|
-webkit-mask-size: 14px;
|
|
2156
2156
|
}
|
|
2157
|
-
|
|
2157
|
+
gtk-check-button:not([checked]):not([indeterminate]):not([disabled]):hover .adw-check-indicator,
|
|
2158
2158
|
adw-radio:not([checked]):not([indeterminate]):not([disabled]):hover .adw-check-indicator {
|
|
2159
2159
|
box-shadow: inset 0 0 0 2px color-mix(in srgb, currentColor 20%, transparent);
|
|
2160
2160
|
}
|
|
2161
2161
|
@media (prefers-contrast: more) {
|
|
2162
|
-
|
|
2162
|
+
gtk-check-button:not([checked]):not([indeterminate]):not([disabled]):hover .adw-check-indicator,
|
|
2163
2163
|
adw-radio:not([checked]):not([indeterminate]):not([disabled]):hover .adw-check-indicator {
|
|
2164
2164
|
box-shadow: inset 0 0 0 2px color-mix(in srgb, currentColor 60%, transparent);
|
|
2165
2165
|
}
|
|
2166
2166
|
}
|
|
2167
|
-
|
|
2167
|
+
gtk-check-button:not([checked]):not([indeterminate]):not([disabled]):active .adw-check-indicator,
|
|
2168
2168
|
adw-radio:not([checked]):not([indeterminate]):not([disabled]):active .adw-check-indicator {
|
|
2169
2169
|
background-color: color-mix(in srgb, currentColor 25%, transparent);
|
|
2170
2170
|
box-shadow: none;
|
|
2171
2171
|
}
|
|
2172
2172
|
@media (prefers-contrast: more) {
|
|
2173
|
-
|
|
2173
|
+
gtk-check-button:not([checked]):not([indeterminate]):not([disabled]):active .adw-check-indicator,
|
|
2174
2174
|
adw-radio:not([checked]):not([indeterminate]):not([disabled]):active .adw-check-indicator {
|
|
2175
2175
|
background-color: color-mix(in srgb, currentColor 60%, transparent);
|
|
2176
2176
|
}
|
|
2177
2177
|
}
|
|
2178
|
-
|
|
2178
|
+
gtk-check-button[checked] .adw-check-indicator, gtk-check-button[indeterminate] .adw-check-indicator,
|
|
2179
2179
|
adw-radio[checked] .adw-check-indicator,
|
|
2180
2180
|
adw-radio[indeterminate] .adw-check-indicator {
|
|
2181
2181
|
background-color: var(--accent-bg-color);
|
|
2182
2182
|
color: var(--accent-fg-color);
|
|
2183
2183
|
box-shadow: none;
|
|
2184
2184
|
}
|
|
2185
|
-
|
|
2185
|
+
gtk-check-button[checked]:not([disabled]):hover .adw-check-indicator, gtk-check-button[indeterminate]:not([disabled]):hover .adw-check-indicator,
|
|
2186
2186
|
adw-radio[checked]:not([disabled]):hover .adw-check-indicator,
|
|
2187
2187
|
adw-radio[indeterminate]:not([disabled]):hover .adw-check-indicator {
|
|
2188
2188
|
background-image: linear-gradient(color-mix(in srgb, currentColor 10%, transparent), color-mix(in srgb, currentColor 10%, transparent));
|
|
2189
2189
|
}
|
|
2190
|
-
|
|
2190
|
+
gtk-check-button[checked]:not([disabled]):active .adw-check-indicator, gtk-check-button[indeterminate]:not([disabled]):active .adw-check-indicator,
|
|
2191
2191
|
adw-radio[checked]:not([disabled]):active .adw-check-indicator,
|
|
2192
2192
|
adw-radio[indeterminate]:not([disabled]):active .adw-check-indicator {
|
|
2193
2193
|
background-image: linear-gradient(rgba(0, 0, 6, 0.2), rgba(0, 0, 6, 0.2));
|
|
2194
2194
|
}
|
|
2195
|
-
|
|
2195
|
+
gtk-check-button[disabled],
|
|
2196
2196
|
adw-radio[disabled] {
|
|
2197
2197
|
cursor: not-allowed;
|
|
2198
2198
|
opacity: var(--disabled-opacity);
|
|
2199
2199
|
}
|
|
2200
|
-
|
|
2200
|
+
gtk-check-button .adw-check-input:focus-visible ~ .adw-check-indicator,
|
|
2201
2201
|
adw-radio .adw-check-input:focus-visible ~ .adw-check-indicator {
|
|
2202
2202
|
outline: 2px solid var(--accent-color);
|
|
2203
2203
|
outline-offset: 2px;
|
|
2204
2204
|
}
|
|
2205
2205
|
|
|
2206
|
-
|
|
2206
|
+
gtk-check-button .adw-check-indicator {
|
|
2207
2207
|
border-radius: 6px;
|
|
2208
2208
|
}
|
|
2209
2209
|
|
|
@@ -2211,7 +2211,7 @@ adw-radio .adw-check-indicator {
|
|
|
2211
2211
|
border-radius: 100%;
|
|
2212
2212
|
}
|
|
2213
2213
|
|
|
2214
|
-
|
|
2214
|
+
gtk-check-button[checked] .adw-check-indicator::after {
|
|
2215
2215
|
mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14'%3E%3Cpath fill='black' d='m 12.599609,2.1992188 a 1,1 0 0 0 -1.40039,0.2011718 L 5.890625,9.4765625 2.7070313,6.2929687 a 1,1 0 0 0 -1.4140626,0 1,1 0 0 0 0,1.4140625 l 4,3.9999998 A 1.0001,1.0001 0 0 0 6.8007812,11.599609 L 12.800781,3.5996094 A 1,1 0 0 0 12.599609,2.1992188 Z'/%3E%3C/svg%3E");
|
|
2216
2216
|
-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14'%3E%3Cpath fill='black' d='m 12.599609,2.1992188 a 1,1 0 0 0 -1.40039,0.2011718 L 5.890625,9.4765625 2.7070313,6.2929687 a 1,1 0 0 0 -1.4140626,0 1,1 0 0 0 0,1.4140625 l 4,3.9999998 A 1.0001,1.0001 0 0 0 6.8007812,11.599609 L 12.800781,3.5996094 A 1,1 0 0 0 12.599609,2.1992188 Z'/%3E%3C/svg%3E");
|
|
2217
2217
|
}
|
|
@@ -2221,33 +2221,33 @@ adw-radio[checked] .adw-check-indicator::after {
|
|
|
2221
2221
|
-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14'%3E%3Cpath fill='black' d='M 7 3 c -2.207 0 -4 1.793 -4 4 s 1.793 4 4 4 c 2.208 0 4 -1.793 4 -4 s -1.792 -4 -4 -4 z'/%3E%3C/svg%3E");
|
|
2222
2222
|
}
|
|
2223
2223
|
|
|
2224
|
-
|
|
2224
|
+
gtk-check-button[indeterminate] .adw-check-indicator::after,
|
|
2225
2225
|
adw-radio[indeterminate] .adw-check-indicator::after {
|
|
2226
2226
|
mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14'%3E%3Cpath fill='black' d='M 3 5 A 2 2 0 0 0 1 7 A 2 2 0 0 0 3 9 L 11 9 A 2 2 0 0 0 13 7 A 2 2 0 0 0 11 5 Z'/%3E%3C/svg%3E");
|
|
2227
2227
|
-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14'%3E%3Cpath fill='black' d='M 3 5 A 2 2 0 0 0 1 7 A 2 2 0 0 0 3 9 L 11 9 A 2 2 0 0 0 13 7 A 2 2 0 0 0 11 5 Z'/%3E%3C/svg%3E");
|
|
2228
2228
|
}
|
|
2229
2229
|
|
|
2230
|
-
|
|
2230
|
+
gtk-check-button.selection-mode,
|
|
2231
2231
|
adw-radio.selection-mode {
|
|
2232
2232
|
border-radius: 100px;
|
|
2233
2233
|
}
|
|
2234
|
-
|
|
2234
|
+
gtk-check-button.selection-mode .adw-check-indicator,
|
|
2235
2235
|
adw-radio.selection-mode .adw-check-indicator {
|
|
2236
2236
|
padding: 7px;
|
|
2237
2237
|
border-radius: 100px;
|
|
2238
2238
|
}
|
|
2239
|
-
|
|
2239
|
+
gtk-check-button.selection-mode .adw-check-label,
|
|
2240
2240
|
adw-radio.selection-mode .adw-check-label {
|
|
2241
2241
|
margin-inline-end: 6px;
|
|
2242
2242
|
}
|
|
2243
2243
|
|
|
2244
|
-
|
|
2244
|
+
gtk-progress-bar {
|
|
2245
2245
|
display: flex;
|
|
2246
2246
|
flex-direction: column;
|
|
2247
2247
|
gap: var(--spacing-xs);
|
|
2248
2248
|
min-width: 150px;
|
|
2249
2249
|
}
|
|
2250
|
-
|
|
2250
|
+
gtk-progress-bar .adw-progress-bar-trough {
|
|
2251
2251
|
position: relative;
|
|
2252
2252
|
display: flex;
|
|
2253
2253
|
overflow: hidden;
|
|
@@ -2257,49 +2257,49 @@ adw-progress-bar .adw-progress-bar-trough {
|
|
|
2257
2257
|
transition: background 200ms ease-out;
|
|
2258
2258
|
}
|
|
2259
2259
|
@media (prefers-contrast: more) {
|
|
2260
|
-
|
|
2260
|
+
gtk-progress-bar .adw-progress-bar-trough {
|
|
2261
2261
|
background-color: color-mix(in srgb, currentColor 30%, transparent);
|
|
2262
2262
|
}
|
|
2263
2263
|
}
|
|
2264
|
-
|
|
2264
|
+
gtk-progress-bar .adw-progress-bar-progress {
|
|
2265
2265
|
height: 100%;
|
|
2266
2266
|
border-radius: 99px;
|
|
2267
2267
|
background-color: var(--accent-bg-color);
|
|
2268
2268
|
color: var(--accent-fg-color);
|
|
2269
2269
|
transition: width 200ms ease-out, background 200ms ease-out;
|
|
2270
2270
|
}
|
|
2271
|
-
|
|
2271
|
+
gtk-progress-bar .adw-progress-bar-text {
|
|
2272
2272
|
font-size: smaller;
|
|
2273
2273
|
}
|
|
2274
|
-
|
|
2274
|
+
gtk-progress-bar[disabled] {
|
|
2275
2275
|
opacity: var(--disabled-opacity);
|
|
2276
2276
|
}
|
|
2277
|
-
|
|
2277
|
+
gtk-progress-bar[inverted] .adw-progress-bar-trough {
|
|
2278
2278
|
justify-content: flex-end;
|
|
2279
2279
|
}
|
|
2280
|
-
|
|
2280
|
+
gtk-progress-bar .adw-progress-bar-trough.empty .adw-progress-bar-progress {
|
|
2281
2281
|
all: unset;
|
|
2282
2282
|
}
|
|
2283
|
-
|
|
2283
|
+
gtk-progress-bar[osd], gtk-progress-bar.osd {
|
|
2284
2284
|
min-width: 2px;
|
|
2285
2285
|
}
|
|
2286
|
-
|
|
2286
|
+
gtk-progress-bar[osd] .adw-progress-bar-trough, gtk-progress-bar.osd .adw-progress-bar-trough {
|
|
2287
2287
|
height: 2px;
|
|
2288
2288
|
border-radius: 0;
|
|
2289
2289
|
background-color: transparent;
|
|
2290
2290
|
box-shadow: none;
|
|
2291
2291
|
}
|
|
2292
|
-
|
|
2292
|
+
gtk-progress-bar[osd] .adw-progress-bar-progress, gtk-progress-bar.osd .adw-progress-bar-progress {
|
|
2293
2293
|
border-radius: 0;
|
|
2294
2294
|
}
|
|
2295
|
-
|
|
2295
|
+
gtk-progress-bar[pulsing] .adw-progress-bar-progress {
|
|
2296
2296
|
position: absolute;
|
|
2297
2297
|
inset-block: 0;
|
|
2298
2298
|
width: 30%;
|
|
2299
2299
|
animation: adw-progress-bar-indeterminate 1.5s infinite ease-in-out;
|
|
2300
2300
|
}
|
|
2301
2301
|
@media (prefers-reduced-motion: reduce) {
|
|
2302
|
-
|
|
2302
|
+
gtk-progress-bar[pulsing] .adw-progress-bar-progress {
|
|
2303
2303
|
left: 0;
|
|
2304
2304
|
width: 100%;
|
|
2305
2305
|
animation: none;
|