@gjsify/adwaita-web 0.53.0 → 0.55.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/dist/adwaita-web.css +8070 -3037
- package/dist/adwaita-web.css.map +1 -1
- package/lib/types/adw-application-window.spec.d.ts +1 -0
- package/lib/types/adw-bin.spec.d.ts +1 -0
- package/lib/types/adw-breakpoint-bin.spec.d.ts +1 -0
- package/lib/types/adw-clamp-scrollable.spec.d.ts +1 -0
- package/lib/types/adw-multi-layout-view.spec.d.ts +1 -0
- package/lib/types/adw-preferences-row.spec.d.ts +1 -0
- package/lib/types/adw-shortcuts.spec.d.ts +1 -0
- package/lib/types/adw-tab-bar.spec.d.ts +1 -0
- package/lib/types/adw-tab-button.spec.d.ts +1 -0
- package/lib/types/adw-tab-overview.spec.d.ts +1 -0
- package/lib/types/adw-view-switcher-sidebar.spec.d.ts +1 -0
- package/lib/types/adw-window.spec.d.ts +1 -0
- package/lib/types/breakpoints.d.ts +14 -3
- package/lib/types/construct-vectors.spec.d.ts +1 -0
- package/lib/types/elements/adw-application-window.d.ts +27 -0
- package/lib/types/elements/adw-bin.d.ts +17 -0
- package/lib/types/elements/adw-breakpoint-bin.d.ts +67 -0
- package/lib/types/elements/adw-clamp-scrollable.d.ts +38 -0
- package/lib/types/elements/adw-dialog.d.ts +10 -0
- package/lib/types/elements/adw-layout-slot.d.ts +19 -0
- package/lib/types/elements/adw-multi-layout-view.d.ts +101 -0
- package/lib/types/elements/adw-preferences-row.d.ts +31 -0
- package/lib/types/elements/adw-shortcuts-dialog.d.ts +13 -0
- package/lib/types/elements/adw-shortcuts-item.d.ts +36 -0
- package/lib/types/elements/adw-shortcuts-section.d.ts +14 -0
- package/lib/types/elements/adw-sidebar.d.ts +5 -0
- package/lib/types/elements/adw-switch-row.d.ts +3 -0
- package/lib/types/elements/adw-tab-bar.d.ts +108 -0
- package/lib/types/elements/adw-tab-button.d.ts +32 -0
- package/lib/types/elements/adw-tab-overview.d.ts +199 -0
- package/lib/types/elements/adw-tab-view.d.ts +19 -23
- package/lib/types/elements/adw-view-switcher-sidebar.d.ts +84 -0
- package/lib/types/elements/adw-window.d.ts +40 -0
- package/lib/types/elements/gtk-about-dialog.d.ts +146 -0
- package/lib/types/elements/gtk-application-window.d.ts +34 -0
- package/lib/types/elements/gtk-aspect-frame.d.ts +27 -0
- package/lib/types/elements/gtk-button.d.ts +9 -0
- package/lib/types/elements/gtk-calendar.d.ts +159 -0
- package/lib/types/elements/gtk-center-box.d.ts +39 -0
- package/lib/types/elements/gtk-color-dialog-button.d.ts +69 -0
- package/lib/types/elements/gtk-column-view.d.ts +50 -0
- package/lib/types/elements/gtk-drag-icon.d.ts +78 -0
- package/lib/types/elements/gtk-drawing-area.d.ts +95 -0
- package/lib/types/elements/gtk-editable-label.d.ts +33 -0
- package/lib/types/elements/gtk-emoji-chooser.d.ts +84 -0
- package/lib/types/elements/gtk-entry.d.ts +20 -1
- package/lib/types/elements/gtk-expander.d.ts +49 -0
- package/lib/types/elements/gtk-fixed.d.ts +13 -0
- package/lib/types/elements/gtk-flow-box-child.d.ts +14 -0
- package/lib/types/elements/gtk-flow-box.d.ts +87 -0
- package/lib/types/elements/gtk-font-dialog-button.d.ts +83 -0
- package/lib/types/elements/gtk-frame.d.ts +24 -0
- package/lib/types/elements/gtk-gl-area.d.ts +136 -0
- package/lib/types/elements/gtk-graphics-offload.d.ts +24 -0
- package/lib/types/elements/gtk-grid-view.d.ts +39 -0
- package/lib/types/elements/gtk-grid.d.ts +27 -0
- package/lib/types/elements/gtk-header-bar.d.ts +60 -0
- package/lib/types/elements/gtk-inscription.d.ts +64 -0
- package/lib/types/elements/gtk-label.d.ts +3 -0
- package/lib/types/elements/gtk-level-bar.d.ts +59 -0
- package/lib/types/elements/gtk-link-button.d.ts +29 -0
- package/lib/types/elements/gtk-list-box-row.d.ts +54 -0
- package/lib/types/elements/gtk-list-box.d.ts +100 -0
- package/lib/types/elements/gtk-list-view.d.ts +73 -0
- package/lib/types/elements/gtk-media-controls.d.ts +142 -0
- package/lib/types/elements/gtk-notebook.d.ts +148 -0
- package/lib/types/elements/gtk-overlay.d.ts +22 -0
- package/lib/types/elements/gtk-page-setup-unix-dialog.d.ts +87 -0
- package/lib/types/elements/gtk-paned.d.ts +121 -0
- package/lib/types/elements/gtk-password-entry.d.ts +27 -0
- package/lib/types/elements/gtk-picture.d.ts +66 -0
- package/lib/types/elements/gtk-popover-bin.d.ts +82 -0
- package/lib/types/elements/gtk-popover-menu-bar.d.ts +66 -0
- package/lib/types/elements/gtk-popover-menu.d.ts +83 -0
- package/lib/types/elements/gtk-popover.d.ts +28 -3
- package/lib/types/elements/gtk-print-unix-dialog.d.ts +167 -0
- package/lib/types/elements/gtk-revealer.d.ts +55 -0
- package/lib/types/elements/gtk-scale-button.d.ts +59 -0
- package/lib/types/elements/gtk-scale.d.ts +98 -0
- package/lib/types/elements/gtk-scrollbar.d.ts +124 -0
- package/lib/types/elements/gtk-scrolled-window.d.ts +121 -0
- package/lib/types/elements/gtk-search-bar.d.ts +39 -0
- package/lib/types/elements/gtk-search-entry.d.ts +27 -0
- package/lib/types/elements/gtk-separator.d.ts +10 -0
- package/lib/types/elements/gtk-spin-button.d.ts +94 -0
- package/lib/types/elements/gtk-spinner.d.ts +14 -0
- package/lib/types/elements/gtk-stack-sidebar.d.ts +43 -0
- package/lib/types/elements/gtk-stack-switcher.d.ts +58 -0
- package/lib/types/elements/gtk-stack.d.ts +154 -0
- package/lib/types/elements/gtk-switch.d.ts +4 -1
- package/lib/types/elements/gtk-text-view.d.ts +62 -0
- package/lib/types/elements/gtk-text.d.ts +45 -0
- package/lib/types/elements/gtk-toggle-button.d.ts +45 -0
- package/lib/types/elements/gtk-tree-expander.d.ts +38 -0
- package/lib/types/elements/gtk-video.d.ts +97 -0
- package/lib/types/elements/gtk-viewport.d.ts +84 -0
- package/lib/types/elements/gtk-window-controls.d.ts +80 -0
- package/lib/types/elements/gtk-window-handle.d.ts +39 -0
- package/lib/types/elements/gtk-window.d.ts +97 -0
- package/lib/types/elements/justification.d.ts +2 -0
- package/lib/types/elements/popover-menu.d.ts +18 -0
- package/lib/types/elements/roving-focus.d.ts +29 -1
- package/lib/types/emoji-data.d.ts +38 -0
- package/lib/types/font-description.d.ts +96 -0
- package/lib/types/gtk-about-dialog.spec.d.ts +1 -0
- package/lib/types/gtk-action-bar.spec.d.ts +1 -0
- package/lib/types/gtk-application-window.spec.d.ts +1 -0
- package/lib/types/gtk-aspect-frame.spec.d.ts +1 -0
- package/lib/types/gtk-calendar.spec.d.ts +1 -0
- package/lib/types/gtk-center-box.spec.d.ts +1 -0
- package/lib/types/gtk-color-dialog-button.spec.d.ts +1 -0
- package/lib/types/gtk-column-view.spec.d.ts +1 -0
- package/lib/types/gtk-drag-icon.spec.d.ts +1 -0
- package/lib/types/gtk-drawing-area.spec.d.ts +1 -0
- package/lib/types/gtk-editable-label.spec.d.ts +1 -0
- package/lib/types/gtk-emoji-chooser.spec.d.ts +1 -0
- package/lib/types/gtk-expander.spec.d.ts +1 -0
- package/lib/types/gtk-fixed.spec.d.ts +1 -0
- package/lib/types/gtk-flow-box.spec.d.ts +1 -0
- package/lib/types/gtk-font-dialog-button.spec.d.ts +1 -0
- package/lib/types/gtk-frame.spec.d.ts +1 -0
- package/lib/types/gtk-gl-area.spec.d.ts +1 -0
- package/lib/types/gtk-graphics-offload.spec.d.ts +1 -0
- package/lib/types/gtk-grid-view.spec.d.ts +1 -0
- package/lib/types/gtk-grid.spec.d.ts +1 -0
- package/lib/types/gtk-header-bar.spec.d.ts +1 -0
- package/lib/types/gtk-inscription.spec.d.ts +1 -0
- package/lib/types/gtk-level-bar.spec.d.ts +1 -0
- package/lib/types/gtk-link-button.spec.d.ts +1 -0
- package/lib/types/gtk-list-box.spec.d.ts +1 -0
- package/lib/types/gtk-list-view.spec.d.ts +1 -0
- package/lib/types/gtk-media-controls.spec.d.ts +1 -0
- package/lib/types/gtk-notebook.spec.d.ts +1 -0
- package/lib/types/gtk-overlay.spec.d.ts +1 -0
- package/lib/types/gtk-paned.spec.d.ts +1 -0
- package/lib/types/gtk-password-entry.spec.d.ts +1 -0
- package/lib/types/gtk-picture.spec.d.ts +1 -0
- package/lib/types/gtk-popover-bin.spec.d.ts +1 -0
- package/lib/types/gtk-popover-menu-bar.spec.d.ts +1 -0
- package/lib/types/gtk-popover-menu.spec.d.ts +1 -0
- package/lib/types/gtk-popover-role.spec.d.ts +1 -0
- package/lib/types/gtk-popover.spec.d.ts +1 -0
- package/lib/types/gtk-print-dialogs.spec.d.ts +1 -0
- package/lib/types/gtk-revealer.spec.d.ts +1 -0
- package/lib/types/gtk-scale-button.spec.d.ts +1 -0
- package/lib/types/gtk-scale.spec.d.ts +1 -0
- package/lib/types/gtk-scrollbar.spec.d.ts +1 -0
- package/lib/types/gtk-scrolled-window.spec.d.ts +1 -0
- package/lib/types/gtk-search-bar.spec.d.ts +1 -0
- package/lib/types/gtk-search-entry.spec.d.ts +1 -0
- package/lib/types/gtk-separator.spec.d.ts +1 -0
- package/lib/types/gtk-spin-button.spec.d.ts +1 -0
- package/lib/types/gtk-spinner.spec.d.ts +1 -0
- package/lib/types/gtk-stack-sidebar.spec.d.ts +1 -0
- package/lib/types/gtk-stack-switcher.spec.d.ts +1 -0
- package/lib/types/gtk-stack.spec.d.ts +1 -0
- package/lib/types/gtk-text-view.spec.d.ts +1 -0
- package/lib/types/gtk-text.spec.d.ts +1 -0
- package/lib/types/gtk-toggle-button.spec.d.ts +1 -0
- package/lib/types/gtk-tree-expander.spec.d.ts +1 -0
- package/lib/types/gtk-video.spec.d.ts +1 -0
- package/lib/types/gtk-viewport.spec.d.ts +1 -0
- package/lib/types/gtk-window-controls.spec.d.ts +1 -0
- package/lib/types/gtk-window-handle.spec.d.ts +1 -0
- package/lib/types/gtk-window.spec.d.ts +1 -0
- package/lib/types/index.d.ts +4 -1
- package/lib/types/list-view-dom.d.ts +44 -0
- package/lib/types/namespace/adw.d.ts +12 -0
- package/lib/types/namespace/gtk.d.ts +61 -0
- package/lib/types/page-setup.d.ts +100 -0
- package/lib/types/scroll-shading.d.ts +15 -1
- package/lib/types/shared-tree-builder.d.ts +30 -2
- package/lib/types/signals.d.ts +4 -0
- package/lib/types/styles.generated.d.ts +1 -1
- package/lib/types/tab-chip.d.ts +73 -0
- package/lib/types/template-classes.d.ts +11 -0
- package/package.json +12 -8
- package/scss/_action_row.scss +2 -2
- package/scss/_application_window.scss +26 -0
- package/scss/_aspect_frame.scss +25 -0
- package/scss/_bin.scss +26 -0
- package/scss/_button.scss +45 -0
- package/scss/_calendar.scss +176 -0
- package/scss/_center_box.scss +25 -0
- package/scss/_checks.scss +6 -1
- package/scss/_clamp_scrollable.scss +28 -0
- package/scss/_color_button.scss +67 -0
- package/scss/_column_view.scss +126 -0
- package/scss/_drag_icon.scss +55 -0
- package/scss/_drawing.scss +85 -0
- package/scss/_emoji_chooser.scss +213 -0
- package/scss/_entry.scss +13 -5
- package/scss/_entry_row.scss +1 -1
- package/scss/_expander.scss +113 -0
- package/scss/_fixed.scss +29 -0
- package/scss/_flow_box.scss +94 -0
- package/scss/_font_button.scss +63 -0
- package/scss/_frame.scss +41 -0
- package/scss/_grid.scss +19 -0
- package/scss/_grid_view.scss +46 -0
- package/scss/_gtk_about_dialog.scss +186 -0
- package/scss/_headerbar.scss +132 -0
- package/scss/_icons.generated.scss +186 -0
- package/scss/_inscription.scss +125 -0
- package/scss/_level_bar.scss +190 -0
- package/scss/_link.scss +82 -0
- package/scss/_list_box.scss +88 -0
- package/scss/_list_view.scss +96 -0
- package/scss/_media_controls.scss +139 -0
- package/scss/_overlay.scss +68 -0
- package/scss/_paned.scss +130 -0
- package/scss/_password_entry.scss +83 -0
- package/scss/_picture.scss +80 -0
- package/scss/_popover_bin.scss +53 -0
- package/scss/_popover_menu_bar.scss +104 -0
- package/scss/_preferences_row.scss +51 -0
- package/scss/_print_dialogs.scss +328 -0
- package/scss/_reset.scss +21 -19
- package/scss/_revealer.scss +37 -0
- package/scss/_row.scss +20 -5
- package/scss/_scale.scss +298 -0
- package/scss/_scale_button.scss +167 -0
- package/scss/_scrollbar.scss +230 -0
- package/scss/_scrolled_window.scss +131 -0
- package/scss/_search_bar.scss +118 -0
- package/scss/_search_entry.scss +86 -0
- package/scss/_separator.scss +44 -0
- package/scss/_shortcuts_dialog.scss +100 -0
- package/scss/_spin_button.scss +172 -0
- package/scss/_spin_row.scss +56 -8
- package/scss/_spinner.scss +85 -4
- package/scss/_stack.scss +729 -0
- package/scss/_switch.scss +13 -5
- package/scss/_switch_row.scss +10 -0
- package/scss/_tab_bar.scss +317 -0
- package/scss/_tab_button.scss +98 -0
- package/scss/_tab_overview.scss +483 -0
- package/scss/_text.scss +182 -0
- package/scss/_theme.scss +1 -1
- package/scss/_tree_expander.scss +62 -0
- package/scss/_variables.scss +43 -21
- package/scss/_video.scss +146 -0
- package/scss/_view_switcher_sidebar.scss +112 -0
- package/scss/_viewport.scss +50 -0
- package/scss/_window.scss +118 -1
- package/scss/_window_handle.scss +20 -0
- package/scss/adwaita-skin.scss +109 -0
- package/src/adw-action-rows.spec.ts +76 -0
- package/src/adw-application-window.spec.ts +118 -0
- package/src/adw-bin.spec.ts +75 -0
- package/src/adw-breakpoint-bin.spec.ts +324 -0
- package/src/adw-clamp-scrollable.spec.ts +189 -0
- package/src/adw-multi-layout-view.spec.ts +243 -0
- package/src/adw-preferences-row.spec.ts +164 -0
- package/src/adw-row-state.spec.ts +142 -0
- package/src/adw-shortcuts.spec.ts +155 -0
- package/src/adw-tab-bar.spec.ts +287 -0
- package/src/adw-tab-button.spec.ts +101 -0
- package/src/adw-tab-overview.spec.ts +443 -0
- package/src/adw-view-switcher-sidebar.spec.ts +281 -0
- package/src/adw-window.spec.ts +129 -0
- package/src/breakpoints.ts +25 -8
- package/src/capabilities.d.mts +3 -0
- package/src/capabilities.mjs +18 -0
- package/src/connect-lifecycle.spec.ts +12 -0
- package/src/construct-vectors.spec.ts +175 -0
- package/src/elements/adw-application-window.ts +154 -0
- package/src/elements/adw-bin.ts +101 -0
- package/src/elements/adw-breakpoint-bin.ts +287 -0
- package/src/elements/adw-clamp-scrollable.ts +207 -0
- package/src/elements/adw-dialog.ts +19 -0
- package/src/elements/adw-layout-slot.ts +95 -0
- package/src/elements/adw-multi-layout-view.ts +326 -0
- package/src/elements/adw-preferences-row.ts +150 -0
- package/src/elements/adw-shortcuts-dialog.ts +52 -0
- package/src/elements/adw-shortcuts-item.ts +171 -0
- package/src/elements/adw-shortcuts-section.ts +86 -0
- package/src/elements/adw-sidebar.ts +42 -3
- package/src/elements/adw-switch-row.ts +28 -1
- package/src/elements/adw-tab-bar.ts +529 -0
- package/src/elements/adw-tab-button.ts +194 -0
- package/src/elements/adw-tab-overview.ts +1011 -0
- package/src/elements/adw-tab-view.ts +66 -145
- package/src/elements/adw-toggle-group.ts +20 -5
- package/src/elements/adw-view-stack.ts +18 -0
- package/src/elements/adw-view-switcher-sidebar.ts +332 -0
- package/src/elements/adw-window.ts +185 -11
- package/src/elements/checks.ts +35 -8
- package/src/elements/gtk-about-dialog.ts +811 -0
- package/src/elements/gtk-application-window.ts +108 -0
- package/src/elements/gtk-aspect-frame.ts +160 -0
- package/src/elements/gtk-button.ts +12 -0
- package/src/elements/gtk-calendar.ts +757 -0
- package/src/elements/gtk-center-box.ts +184 -0
- package/src/elements/gtk-color-dialog-button.ts +278 -0
- package/src/elements/gtk-column-view.ts +320 -0
- package/src/elements/gtk-drag-icon.ts +257 -0
- package/src/elements/gtk-drawing-area.ts +303 -0
- package/src/elements/gtk-editable-label.ts +204 -0
- package/src/elements/gtk-emoji-chooser.ts +542 -0
- package/src/elements/gtk-entry.ts +39 -5
- package/src/elements/gtk-expander.ts +301 -0
- package/src/elements/gtk-fixed.ts +99 -0
- package/src/elements/gtk-flow-box-child.ts +68 -0
- package/src/elements/gtk-flow-box.ts +480 -0
- package/src/elements/gtk-font-dialog-button.ts +432 -0
- package/src/elements/gtk-frame.ts +174 -0
- package/src/elements/gtk-gl-area.ts +476 -0
- package/src/elements/gtk-graphics-offload.ts +130 -0
- package/src/elements/gtk-grid-view.ts +168 -0
- package/src/elements/gtk-grid.ts +127 -0
- package/src/elements/gtk-header-bar.ts +273 -0
- package/src/elements/gtk-inscription.ts +387 -0
- package/src/elements/gtk-label.ts +19 -11
- package/src/elements/gtk-level-bar.ts +323 -0
- package/src/elements/gtk-link-button.ts +138 -0
- package/src/elements/gtk-list-box-row.ts +195 -0
- package/src/elements/gtk-list-box.ts +413 -0
- package/src/elements/gtk-list-view.ts +370 -0
- package/src/elements/gtk-media-controls.ts +509 -0
- package/src/elements/gtk-notebook.ts +664 -0
- package/src/elements/gtk-overlay.ts +149 -0
- package/src/elements/gtk-page-setup-unix-dialog.ts +420 -0
- package/src/elements/gtk-paned.ts +597 -0
- package/src/elements/gtk-password-entry.ts +170 -0
- package/src/elements/gtk-picture.ts +254 -0
- package/src/elements/gtk-popover-bin.ts +332 -0
- package/src/elements/gtk-popover-menu-bar.ts +355 -0
- package/src/elements/gtk-popover-menu.ts +339 -0
- package/src/elements/gtk-popover.ts +92 -10
- package/src/elements/gtk-print-unix-dialog.ts +989 -0
- package/src/elements/gtk-progress-bar.ts +24 -11
- package/src/elements/gtk-revealer.ts +406 -0
- package/src/elements/gtk-scale-button.ts +358 -0
- package/src/elements/gtk-scale.ts +492 -0
- package/src/elements/gtk-scrollbar.ts +528 -0
- package/src/elements/gtk-scrolled-window.ts +642 -0
- package/src/elements/gtk-search-bar.ts +200 -0
- package/src/elements/gtk-search-entry.ts +172 -0
- package/src/elements/gtk-separator.ts +52 -0
- package/src/elements/gtk-spin-button.ts +475 -0
- package/src/elements/gtk-spinner.ts +126 -0
- package/src/elements/gtk-stack-sidebar.ts +212 -0
- package/src/elements/gtk-stack-switcher.ts +279 -0
- package/src/elements/gtk-stack.ts +748 -0
- package/src/elements/gtk-switch.ts +52 -19
- package/src/elements/gtk-text-view.ts +290 -0
- package/src/elements/gtk-text.ts +219 -0
- package/src/elements/gtk-toggle-button.ts +239 -0
- package/src/elements/gtk-tree-expander.ts +243 -0
- package/src/elements/gtk-video.ts +423 -0
- package/src/elements/gtk-viewport.ts +277 -0
- package/src/elements/gtk-window-controls.ts +341 -0
- package/src/elements/gtk-window-handle.ts +221 -0
- package/src/elements/gtk-window.ts +366 -0
- package/src/elements/justification.ts +24 -0
- package/src/elements/popover-menu.ts +24 -0
- package/src/elements/roving-focus.ts +53 -21
- package/src/emoji-data.ts +577 -0
- package/src/entry-rows.spec.ts +31 -0
- package/src/font-description.ts +238 -0
- package/src/gtk-about-dialog.spec.ts +250 -0
- package/src/gtk-action-bar.spec.ts +89 -0
- package/src/gtk-application-window.spec.ts +107 -0
- package/src/gtk-aspect-frame.spec.ts +114 -0
- package/src/gtk-calendar.spec.ts +589 -0
- package/src/gtk-center-box.spec.ts +125 -0
- package/src/gtk-color-dialog-button.spec.ts +141 -0
- package/src/gtk-column-view.spec.ts +154 -0
- package/src/gtk-drag-icon.spec.ts +190 -0
- package/src/gtk-drawing-area.spec.ts +211 -0
- package/src/gtk-editable-label.spec.ts +190 -0
- package/src/gtk-emoji-chooser.spec.ts +173 -0
- package/src/gtk-entry.spec.ts +23 -0
- package/src/gtk-expander.spec.ts +170 -0
- package/src/gtk-fixed.spec.ts +97 -0
- package/src/gtk-flow-box.spec.ts +289 -0
- package/src/gtk-font-dialog-button.spec.ts +166 -0
- package/src/gtk-frame.spec.ts +119 -0
- package/src/gtk-gl-area.spec.ts +361 -0
- package/src/gtk-graphics-offload.spec.ts +119 -0
- package/src/gtk-grid-view.spec.ts +106 -0
- package/src/gtk-grid.spec.ts +122 -0
- package/src/gtk-header-bar.spec.ts +202 -0
- package/src/gtk-inscription.spec.ts +235 -0
- package/src/gtk-level-bar.spec.ts +199 -0
- package/src/gtk-link-button.spec.ts +117 -0
- package/src/gtk-list-box.spec.ts +422 -0
- package/src/gtk-list-view.spec.ts +203 -0
- package/src/gtk-media-controls.spec.ts +295 -0
- package/src/gtk-notebook.spec.ts +546 -0
- package/src/gtk-overlay.spec.ts +141 -0
- package/src/gtk-paned.spec.ts +267 -0
- package/src/gtk-password-entry.spec.ts +150 -0
- package/src/gtk-picture.spec.ts +172 -0
- package/src/gtk-popover-bin.spec.ts +229 -0
- package/src/gtk-popover-menu-bar.spec.ts +296 -0
- package/src/gtk-popover-menu.spec.ts +261 -0
- package/src/gtk-popover-role.spec.ts +138 -0
- package/src/gtk-popover.spec.ts +264 -0
- package/src/gtk-print-dialogs.spec.ts +251 -0
- package/src/gtk-revealer.spec.ts +164 -0
- package/src/gtk-scale-button.spec.ts +218 -0
- package/src/gtk-scale.spec.ts +213 -0
- package/src/gtk-scrollbar.spec.ts +244 -0
- package/src/gtk-scrolled-window.spec.ts +262 -0
- package/src/gtk-search-bar.spec.ts +179 -0
- package/src/gtk-search-entry.spec.ts +142 -0
- package/src/gtk-separator.spec.ts +74 -0
- package/src/gtk-spin-button.spec.ts +186 -0
- package/src/gtk-spinner.spec.ts +130 -0
- package/src/gtk-stack-sidebar.spec.ts +217 -0
- package/src/gtk-stack-switcher.spec.ts +249 -0
- package/src/gtk-stack.spec.ts +432 -0
- package/src/gtk-text-view.spec.ts +189 -0
- package/src/gtk-text.spec.ts +163 -0
- package/src/gtk-toggle-button.spec.ts +186 -0
- package/src/gtk-tree-expander.spec.ts +201 -0
- package/src/gtk-video.spec.ts +240 -0
- package/src/gtk-viewport.spec.ts +140 -0
- package/src/gtk-window-controls.spec.ts +232 -0
- package/src/gtk-window-handle.spec.ts +158 -0
- package/src/gtk-window.spec.ts +190 -0
- package/src/index.ts +9 -1
- package/src/keyboard-operable.spec.ts +33 -1
- package/src/list-view-dom.ts +121 -0
- package/src/namespace/adw.ts +12 -0
- package/src/namespace/gtk.ts +61 -0
- package/src/page-setup.ts +222 -0
- package/src/scroll-shading.ts +18 -1
- package/src/shared-tree-builder.ts +263 -21
- package/src/signals.ts +15 -0
- package/src/source-view/theme.ts +11 -5
- package/src/style-classes.spec.ts +9 -8
- package/src/styles.generated.ts +1 -1
- package/src/tab-chip.ts +200 -0
- package/src/template-classes.ts +45 -0
- package/src/test.browser.mts +152 -0
package/scss/_switch.scss
CHANGED
|
@@ -65,12 +65,20 @@
|
|
|
65
65
|
}
|
|
66
66
|
}
|
|
67
67
|
|
|
68
|
-
|
|
69
|
-
|
|
68
|
+
// The KNOB follows `active` — GTK moves the handle from the user's own position
|
|
69
|
+
// (gtkswitch.c:795-798), which is `Gtk.Switch:active`.
|
|
70
|
+
.adw-switch input:checked + .adw-switch-slider::before {
|
|
71
|
+
transform: translateX(20px);
|
|
72
|
+
}
|
|
70
73
|
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
+
// The TROUGH follows `state`. GTK raises and clears the `:checked` state flag from
|
|
75
|
+
// `gtk_switch_set_state` (gtkswitch.c:853-856) — NOT from `active` — and libadwaita
|
|
76
|
+
// paints `switch:checked` from it (refs/libadwaita/src/stylesheet/widgets/_switch.scss:
|
|
77
|
+
// 41-55). That separation is the whole point of the two booleans: a switch whose
|
|
78
|
+
// backend has not caught up yet shows the user where they put it (knob) over where the
|
|
79
|
+
// thing actually is (trough).
|
|
80
|
+
.adw-switch.checked .adw-switch-slider {
|
|
81
|
+
background-color: var(--accent-bg-color);
|
|
74
82
|
}
|
|
75
83
|
|
|
76
84
|
.adw-switch input:focus-visible + .adw-switch-slider {
|
package/scss/_switch_row.scss
CHANGED
|
@@ -15,4 +15,14 @@ adw-switch-row {
|
|
|
15
15
|
font-size: var(--font-size-base);
|
|
16
16
|
color: var(--card-fg-color);
|
|
17
17
|
}
|
|
18
|
+
|
|
19
|
+
// Adw.SwitchRow is an AdwActionRow upstream (adw-switch-row.c:50), so it inherits
|
|
20
|
+
// `add_prefix` and the box that carries it. Same rules as `.adw-action-row-prefix`:
|
|
21
|
+
// a fixed-size icon must not be squeezed by the text column, which grows.
|
|
22
|
+
.adw-switch-row-prefix {
|
|
23
|
+
display: flex;
|
|
24
|
+
align-items: center;
|
|
25
|
+
gap: var(--spacing-xs);
|
|
26
|
+
flex-shrink: 0;
|
|
27
|
+
}
|
|
18
28
|
}
|
|
@@ -0,0 +1,317 @@
|
|
|
1
|
+
// _tab_bar.scss — <adw-tab-bar>, libadwaita's tab bar as the separate widget it is: a
|
|
2
|
+
// headerbar-coloured strip holding one chip per page, with an action widget on either
|
|
3
|
+
// side of the chips and a two-pixel overflow bar underneath them.
|
|
4
|
+
//
|
|
5
|
+
// The chip rules below are the SAME declarations `scss/_tab_view.scss` writes for
|
|
6
|
+
// `<adw-tab-view>`'s merged bar, from the same upstream block: `tabbar` / `tabbox` / `tab`
|
|
7
|
+
// in refs/libadwaita/src/stylesheet/widgets/_tab-view.scss:1-95 with the chip's own
|
|
8
|
+
// metrics from :154-176. Two copies rather than one shared partial, and deliberately so —
|
|
9
|
+
// the merged bar is what every existing `<adw-tab-view>` test measures (it queries
|
|
10
|
+
// `.adw-tab-bar` inside the view), so lifting its rules into a placeholder both selectors
|
|
11
|
+
// `@extend` would change the compiled stylesheet for a widget this package did not touch.
|
|
12
|
+
// The chip's own MARKUP is shared instead, in src/tab-chip.ts, which is where a change to
|
|
13
|
+
// what a chip contains belongs.
|
|
14
|
+
//
|
|
15
|
+
// Reference: refs/libadwaita/src/stylesheet/widgets/_tab-view.scss (tabbar .box,
|
|
16
|
+
// tabbox + its separator / revealer > indicator, tab, tabbox.single-tab tab,
|
|
17
|
+
// .start-action / .end-action, %tabbar-inline)
|
|
18
|
+
// Reference: refs/libadwaita/src/stylesheet/_colors.scss:270 ($selected_color, the 10% the
|
|
19
|
+
// selected chip and the hover/active terms above it are mixed from)
|
|
20
|
+
// Copyright (c) 2024-2025 Alice Mikhaylenko / Purism SPC. LGPLv2.1+.
|
|
21
|
+
// Modifications: Adapted for @gjsify/adwaita-web Web Components.
|
|
22
|
+
|
|
23
|
+
adw-tab-bar {
|
|
24
|
+
display: flex;
|
|
25
|
+
align-items: stretch;
|
|
26
|
+
flex-shrink: 0;
|
|
27
|
+
box-sizing: border-box;
|
|
28
|
+
// `padding: 1px; padding-top: 0` — the strip's own 1px inset, which is where the
|
|
29
|
+
// separator between it and the view below comes from.
|
|
30
|
+
padding: 0 1px 1px;
|
|
31
|
+
background-color: var(--headerbar-bg-color);
|
|
32
|
+
color: var(--headerbar-fg-color);
|
|
33
|
+
// libadwaita's inset bottom shade under the bar.
|
|
34
|
+
box-shadow: inset 0 -1px var(--headerbar-shade-color);
|
|
35
|
+
// The strip is the ONE scroll window in the widget: `AdwTabBox` sits in a
|
|
36
|
+
// `GtkScrolledWindow`, and pinned tabs stay outside it.
|
|
37
|
+
overflow-x: auto;
|
|
38
|
+
scrollbar-width: none;
|
|
39
|
+
|
|
40
|
+
&[hidden] {
|
|
41
|
+
display: none;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
@media (prefers-contrast: more) {
|
|
45
|
+
box-shadow: inset 0 -1px var(--border-color);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
// `%tabbar-inline`, the `.inline` style class (adw-tab-bar.c:65-69): the bar looks like
|
|
49
|
+
// part of an AdwHeaderBar by default, and this removes its background so it can sit in
|
|
50
|
+
// another context instead.
|
|
51
|
+
&.inline {
|
|
52
|
+
background-color: transparent;
|
|
53
|
+
color: inherit;
|
|
54
|
+
box-shadow: none;
|
|
55
|
+
padding-bottom: 0;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
// `AdwBin`s either side of the box (adw-tab-bar.ui). The two `padding-*-: 0` rules are
|
|
59
|
+
// libadwaita's `:dir()` pair for exactly this: the action widget sits flush against the
|
|
60
|
+
// chips on the side it is on, which logical properties say once instead of twice.
|
|
61
|
+
.adw-tab-bar-start-action,
|
|
62
|
+
.adw-tab-bar-end-action {
|
|
63
|
+
flex-shrink: 0;
|
|
64
|
+
box-sizing: border-box;
|
|
65
|
+
padding: 6px 5px;
|
|
66
|
+
|
|
67
|
+
&:empty {
|
|
68
|
+
display: none;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.adw-tab-bar-start-action {
|
|
73
|
+
padding-inline-end: 0;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
.adw-tab-bar-end-action {
|
|
77
|
+
padding-inline-start: 0;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
.adw-tab-box {
|
|
81
|
+
display: flex;
|
|
82
|
+
align-items: stretch;
|
|
83
|
+
flex: 1 1 auto;
|
|
84
|
+
// `padding-bottom: 6px; padding-top: 6px; min-height: 34px`.
|
|
85
|
+
padding: 6px 0;
|
|
86
|
+
min-height: 34px;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
// `inverted` — the box lays its children out the other way round, which is what puts a
|
|
90
|
+
// non-pinned tab's close button at the BEGINNING and its indicator at the end
|
|
91
|
+
// (adw-tab-bar.c:636-644).
|
|
92
|
+
&[inverted] .adw-tab-box {
|
|
93
|
+
flex-direction: row-reverse;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
// A single tab draws no background at all (`tabbox.single-tab tab`, :79-87).
|
|
97
|
+
&.single-tab .adw-tab {
|
|
98
|
+
&,
|
|
99
|
+
&:hover,
|
|
100
|
+
&:active {
|
|
101
|
+
background: none;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
// `revealer > indicator` (:44-55): the two-pixel accent bar under the chips, shown
|
|
106
|
+
// exactly while the strip cannot show them all.
|
|
107
|
+
.adw-tab-box-overflow {
|
|
108
|
+
flex: none;
|
|
109
|
+
align-self: center;
|
|
110
|
+
min-width: 2px;
|
|
111
|
+
border-radius: 2px;
|
|
112
|
+
margin: 3px 6px;
|
|
113
|
+
background-color: color-mix(in srgb, var(--accent-color) 50%, transparent);
|
|
114
|
+
|
|
115
|
+
&[hidden] {
|
|
116
|
+
display: none;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
@media (prefers-contrast: more) {
|
|
120
|
+
background-color: var(--accent-color);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
// --- a single tab ------------------------------------------------------------
|
|
125
|
+
// `tabbar, dnd > tab` (:154-176) for the metrics, `tab` (:56-77) for the states.
|
|
126
|
+
.adw-tab {
|
|
127
|
+
position: relative;
|
|
128
|
+
box-sizing: border-box;
|
|
129
|
+
display: inline-flex;
|
|
130
|
+
align-items: center;
|
|
131
|
+
justify-content: center;
|
|
132
|
+
gap: var(--spacing-xs);
|
|
133
|
+
// `min-height: 26px; padding: 4px`.
|
|
134
|
+
min-height: 26px;
|
|
135
|
+
padding: 4px;
|
|
136
|
+
margin: 0;
|
|
137
|
+
border: none;
|
|
138
|
+
border-radius: var(--button-radius);
|
|
139
|
+
background-color: transparent;
|
|
140
|
+
color: inherit;
|
|
141
|
+
font-family: var(--font-family);
|
|
142
|
+
font-size: var(--font-size-base);
|
|
143
|
+
line-height: 1;
|
|
144
|
+
cursor: pointer;
|
|
145
|
+
user-select: none;
|
|
146
|
+
-webkit-user-select: none;
|
|
147
|
+
transition: background 150ms ease-in-out;
|
|
148
|
+
|
|
149
|
+
&:hover {
|
|
150
|
+
background-color: color-mix(in srgb, currentColor 7%, transparent);
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
&:active {
|
|
154
|
+
background-color: color-mix(in srgb, currentColor 16%, transparent);
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
// `:selected` is libadwaita's, and `$selected_color` is the currentColor 10% mix
|
|
158
|
+
// (_colors.scss:270); the two hover/active terms under it are the 13% and the 19%.
|
|
159
|
+
&.active {
|
|
160
|
+
background-color: color-mix(in srgb, currentColor 10%, transparent);
|
|
161
|
+
|
|
162
|
+
&:hover {
|
|
163
|
+
background-color: color-mix(in srgb, currentColor 13%, transparent);
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
&:active {
|
|
167
|
+
background-color: color-mix(in srgb, currentColor 19%, transparent);
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
@media (prefers-contrast: more) {
|
|
172
|
+
&:hover,
|
|
173
|
+
&:active,
|
|
174
|
+
&.active {
|
|
175
|
+
box-shadow: inset 0 0 0 1px var(--border-color);
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
// The thin separators between tabs (`tabbox > separator`, :29-38), hidden next to the
|
|
181
|
+
// selected or the hovered one — which is `update_separators` in the element.
|
|
182
|
+
.adw-tab + .adw-tab::before {
|
|
183
|
+
content: '';
|
|
184
|
+
position: absolute;
|
|
185
|
+
left: 0;
|
|
186
|
+
top: 3px;
|
|
187
|
+
bottom: 3px;
|
|
188
|
+
width: 1px;
|
|
189
|
+
background-color: currentColor;
|
|
190
|
+
opacity: 0.2;
|
|
191
|
+
transition: opacity 150ms ease-in-out;
|
|
192
|
+
pointer-events: none;
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
.adw-tab.active + .adw-tab::before,
|
|
196
|
+
.adw-tab + .adw-tab.active::before,
|
|
197
|
+
.adw-tab:hover + .adw-tab::before,
|
|
198
|
+
.adw-tab + .adw-tab:hover::before {
|
|
199
|
+
opacity: 0;
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
.adw-tab-title {
|
|
203
|
+
white-space: nowrap;
|
|
204
|
+
overflow: hidden;
|
|
205
|
+
text-overflow: ellipsis;
|
|
206
|
+
min-width: 0;
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
.adw-tab-icon,
|
|
210
|
+
.adw-tab-indicator {
|
|
211
|
+
flex-shrink: 0;
|
|
212
|
+
// `indicator` (:166-172): the two-pixel accent underline, which is the page's own
|
|
213
|
+
// attention indicator and NOT the overflow bar above.
|
|
214
|
+
width: 16px;
|
|
215
|
+
height: 16px;
|
|
216
|
+
|
|
217
|
+
&[hidden] {
|
|
218
|
+
display: none;
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
// `AdwTabPage:loading` swaps the icon image for the SAME paintable `Adw.Spinner` uses, so
|
|
223
|
+
// the chip mounts a real `<adw-spinner>` rather than a second ring drawn in CSS.
|
|
224
|
+
.adw-tab-spinner {
|
|
225
|
+
flex: none;
|
|
226
|
+
|
|
227
|
+
&[hidden] {
|
|
228
|
+
display: none;
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
// A pinned tab is a single-glyph chip: libadwaita hides both the title and the close
|
|
233
|
+
// button at construction (adw-tab.c:645-650), and `tabCloseVisible` carries the same rule
|
|
234
|
+
// in the element.
|
|
235
|
+
.adw-tab.pinned {
|
|
236
|
+
padding: 0 4px;
|
|
237
|
+
|
|
238
|
+
.adw-tab-title {
|
|
239
|
+
display: none;
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
// `AdwTabPage:needs-attention` — the accent underline libadwaita animates in.
|
|
244
|
+
.adw-tab.needs-attention::after {
|
|
245
|
+
content: '';
|
|
246
|
+
position: absolute;
|
|
247
|
+
bottom: 2px;
|
|
248
|
+
left: 50%;
|
|
249
|
+
width: 12px;
|
|
250
|
+
height: 2px;
|
|
251
|
+
transform: translateX(-50%);
|
|
252
|
+
border-radius: 1px;
|
|
253
|
+
background-color: var(--accent-bg-color);
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
// The close affordance: `button.image-button` inside a tab (:158-164) — a 24px round
|
|
257
|
+
// button with no fill of its own. Presence is decided in JS by `tabCloseVisible`.
|
|
258
|
+
.adw-tab-close {
|
|
259
|
+
box-sizing: border-box;
|
|
260
|
+
flex-shrink: 0;
|
|
261
|
+
position: relative;
|
|
262
|
+
min-width: 24px;
|
|
263
|
+
min-height: 24px;
|
|
264
|
+
margin: 0;
|
|
265
|
+
padding: 0;
|
|
266
|
+
border: none;
|
|
267
|
+
border-radius: 99px;
|
|
268
|
+
background-color: transparent;
|
|
269
|
+
color: inherit;
|
|
270
|
+
cursor: pointer;
|
|
271
|
+
opacity: 0.7;
|
|
272
|
+
transition:
|
|
273
|
+
background-color 150ms ease-in-out,
|
|
274
|
+
opacity 150ms ease-in-out;
|
|
275
|
+
|
|
276
|
+
&[hidden] {
|
|
277
|
+
display: none;
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
&:hover {
|
|
281
|
+
opacity: 1;
|
|
282
|
+
background-color: var(--button-hover-color);
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
&:focus-visible {
|
|
286
|
+
outline: 2px solid var(--accent-color);
|
|
287
|
+
outline-offset: 1px;
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
&::before,
|
|
291
|
+
&::after {
|
|
292
|
+
content: '';
|
|
293
|
+
position: absolute;
|
|
294
|
+
top: 50%;
|
|
295
|
+
left: 50%;
|
|
296
|
+
width: 9px;
|
|
297
|
+
height: 1.5px;
|
|
298
|
+
background-color: currentColor;
|
|
299
|
+
border-radius: 1px;
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
&::before {
|
|
303
|
+
transform: translate(-50%, -50%) rotate(45deg);
|
|
304
|
+
}
|
|
305
|
+
|
|
306
|
+
&::after {
|
|
307
|
+
transform: translate(-50%, -50%) rotate(-45deg);
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
|
|
311
|
+
// `expand-tabs` — chips stretch to fill the strip evenly instead of sitting at their
|
|
312
|
+
// minimum size (adw-tab-bar.c:622-634, delegated to the tab box).
|
|
313
|
+
&[expand-tabs] .adw-tab {
|
|
314
|
+
flex: 1 1 0;
|
|
315
|
+
max-width: 200px;
|
|
316
|
+
}
|
|
317
|
+
}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
// _tab_button.scss — <adw-tab-button>.
|
|
2
|
+
//
|
|
3
|
+
// libadwaita's whole `tabbutton` block is three rules (_buttons.scss:647-663): the count
|
|
4
|
+
// is `font-weight: 800` at `font-size: 10.5px`, dropping to `8px` under `.small`, and the
|
|
5
|
+
// indicator sits a pixel back from the leading edge (`translate(-1px, 1px)` in LTR,
|
|
6
|
+
// mirrored in RTL) so it does not touch the plate's stroke. The button itself is a
|
|
7
|
+
// `.image-button` — `min-width: 24px` and 5px of padding either side (_buttons.scss:
|
|
8
|
+
// 66-70) — which is where the counter's 24px outer box comes from.
|
|
9
|
+
//
|
|
10
|
+
// THE PLATE IS CSS, and that is what the two libadwaita glyphs are: `adw-tab-counter.svg`
|
|
11
|
+
// is a 14×14 `rx≈2.94` rect with `stroke-width: 2` and NO fill, and `adw-tab-overflow.svg`
|
|
12
|
+
// is that same rect plus one decorative mark. Both ship in `refs/libadwaita/src/icons/`
|
|
13
|
+
// rather than in an icon theme, so neither is a `@gjsify/adwaita-icons` export and neither
|
|
14
|
+
// could be compiled into the stylesheet — a border and a border-radius is the whole of
|
|
15
|
+
// the counter glyph, and the overflow mark is an ellipsis, which is the shape libadwaita
|
|
16
|
+
// puts between the two digits of a count it is not going to draw.
|
|
17
|
+
//
|
|
18
|
+
// The indicator is `AdwIndicatorBin`'s, whose own rule is in `_view-switcher.scss:83-104`:
|
|
19
|
+
// a 6px dot in `color-mix(currentColor 40%, transparent)` with a 2px margin, turning to
|
|
20
|
+
// `--accent-color` under `.needs-attention`.
|
|
21
|
+
//
|
|
22
|
+
// Reference: refs/libadwaita/src/stylesheet/widgets/_buttons.scss:66-70, 647-663
|
|
23
|
+
// Reference: refs/libadwaita/src/stylesheet/widgets/_view-switcher.scss:83-104
|
|
24
|
+
// (`indicatorbin > indicator`, and `.needs-attention`)
|
|
25
|
+
// Reference: refs/libadwaita/src/icons/adw-tab-counter.svg, adw-tab-overflow.svg
|
|
26
|
+
// Copyright (c) GNOME contributors (libadwaita). LGPLv2.1+.
|
|
27
|
+
// Modifications: Adapted for @gjsify/adwaita-web Web Components — the `GtkImage` under the
|
|
28
|
+
// `GtkLabel` becomes the plate span, and the icon itself is drawn.
|
|
29
|
+
|
|
30
|
+
adw-tab-button {
|
|
31
|
+
// The `.image-button` numbers, over the `.adw-button` defaults it inherits from the
|
|
32
|
+
// shared button surface (34px and 14px of padding otherwise).
|
|
33
|
+
.adw-button {
|
|
34
|
+
min-width: 24px;
|
|
35
|
+
min-height: 24px;
|
|
36
|
+
padding: 0 5px;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
// The `AdwIndicatorBin`: the glyph with the count over it, and the dot beside both.
|
|
40
|
+
.adw-tab-button-indicatorbin {
|
|
41
|
+
position: relative;
|
|
42
|
+
display: inline-flex;
|
|
43
|
+
align-items: center;
|
|
44
|
+
justify-content: center;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
// The glyph: adw-tab-counter.svg's rounded rectangle, 16×16, a 2px stroke, no fill.
|
|
48
|
+
.adw-tab-button-plate {
|
|
49
|
+
width: 16px;
|
|
50
|
+
height: 16px;
|
|
51
|
+
box-sizing: border-box;
|
|
52
|
+
border: 2px solid currentColor;
|
|
53
|
+
border-radius: 3px;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.adw-tab-button-label {
|
|
57
|
+
// "We're intentionally using pixels here, as this label is a part of the icon"
|
|
58
|
+
// (_buttons.scss:650) — which is why these are px and not the em-derived sizes the
|
|
59
|
+
// rest of the stylesheet uses.
|
|
60
|
+
position: absolute;
|
|
61
|
+
font-weight: 800;
|
|
62
|
+
font-size: 10.5px;
|
|
63
|
+
line-height: 16px;
|
|
64
|
+
text-align: center;
|
|
65
|
+
width: 16px;
|
|
66
|
+
|
|
67
|
+
&.small {
|
|
68
|
+
font-size: 8px;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.adw-tab-button-indicator {
|
|
73
|
+
position: absolute;
|
|
74
|
+
top: 0;
|
|
75
|
+
inset-inline-start: 0;
|
|
76
|
+
min-width: 6px;
|
|
77
|
+
min-height: 6px;
|
|
78
|
+
border-radius: 100px;
|
|
79
|
+
margin: 2px;
|
|
80
|
+
background: color-mix(in srgb, currentColor 40%, transparent);
|
|
81
|
+
|
|
82
|
+
// `&.needs-attention > indicator { background: var(--accent-color) }`
|
|
83
|
+
// (_view-switcher.scss:100-102).
|
|
84
|
+
&.needs-attention {
|
|
85
|
+
background: var(--accent-color);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
// The overflow mark, for a count of a hundred pages or more — the label is hidden
|
|
90
|
+
// there, exactly as `update_icon` hides it.
|
|
91
|
+
.adw-tab-button-indicatorbin.overflow .adw-tab-button-plate::after {
|
|
92
|
+
content: '\22ef';
|
|
93
|
+
font-size: 8px;
|
|
94
|
+
line-height: 12px;
|
|
95
|
+
display: block;
|
|
96
|
+
text-align: center;
|
|
97
|
+
}
|
|
98
|
+
}
|