@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
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { GtkEntry } from './gtk-entry.js';
|
|
2
|
+
export declare class GtkSearchEntry extends GtkEntry {
|
|
3
|
+
private _searchIcon;
|
|
4
|
+
private _clear;
|
|
5
|
+
private _clearIcon;
|
|
6
|
+
private _timeout;
|
|
7
|
+
static get observedAttributes(): string[];
|
|
8
|
+
/** `GtkSearchEntry:search-delay` — ms from the last keypress to `search-changed`. */
|
|
9
|
+
get searchDelay(): number;
|
|
10
|
+
set searchDelay(value: number);
|
|
11
|
+
/** Whether there is text, which is what decides the two icons. */
|
|
12
|
+
private get _empty();
|
|
13
|
+
connectedCallback(): void;
|
|
14
|
+
attributeChangedCallback(name: string, oldValue: string | null, value: string | null): void;
|
|
15
|
+
disconnectedCallback(): void;
|
|
16
|
+
/**
|
|
17
|
+
* `gtk_search_entry_changed` (gtksearchentry.c:776-803) over `reset_timeout`.
|
|
18
|
+
*
|
|
19
|
+
* Empty is immediate and cancels; non-empty replaces the queue. `clearTimeout` before
|
|
20
|
+
* arming is `reset_timeout`'s `g_source_remove`, and without it two keystrokes would
|
|
21
|
+
* fire the signal twice.
|
|
22
|
+
*/
|
|
23
|
+
private _onChanged;
|
|
24
|
+
private _cancel;
|
|
25
|
+
private _onKeyDown;
|
|
26
|
+
private _render;
|
|
27
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type BoxOrientation } from '@gjsify/adwaita-core';
|
|
2
|
+
export declare class GtkSeparator extends HTMLElement {
|
|
3
|
+
static get observedAttributes(): string[];
|
|
4
|
+
/** `GtkOrientable:orientation` — `horizontal` (the default) or `vertical`. */
|
|
5
|
+
get orientation(): BoxOrientation;
|
|
6
|
+
set orientation(value: BoxOrientation);
|
|
7
|
+
connectedCallback(): void;
|
|
8
|
+
attributeChangedCallback(): void;
|
|
9
|
+
private _render;
|
|
10
|
+
}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import type { AdwAdjustment, AdwAdjustmentInput } from '@gjsify/adwaita-core';
|
|
2
|
+
/** `Gtk.SpinButtonUpdatePolicy` nicks; `always` is the pspec default (gtkspinbutton.c:472-475). */
|
|
3
|
+
declare const UPDATE_POLICIES: readonly ["always", "if-valid"];
|
|
4
|
+
export declare class GtkSpinButton extends HTMLElement {
|
|
5
|
+
private readonly _range;
|
|
6
|
+
private _input;
|
|
7
|
+
private _down;
|
|
8
|
+
private _up;
|
|
9
|
+
private _initialized;
|
|
10
|
+
private _edited;
|
|
11
|
+
/** The orientation the children are CURRENTLY arranged for — see `_render`. */
|
|
12
|
+
private _vertical;
|
|
13
|
+
private _initialTimer;
|
|
14
|
+
private _repeatTimer;
|
|
15
|
+
private _timerCalls;
|
|
16
|
+
private _timerStep;
|
|
17
|
+
static get observedAttributes(): string[];
|
|
18
|
+
/** The numeric range — `Gtk.SpinButton:adjustment`, as the portable value. Writes MERGE. */
|
|
19
|
+
get adjustment(): AdwAdjustment;
|
|
20
|
+
set adjustment(value: AdwAdjustmentInput | string);
|
|
21
|
+
/** `Gtk.SpinButton:value` — always inside `adjustmentRange`. */
|
|
22
|
+
get value(): number;
|
|
23
|
+
set value(v: number);
|
|
24
|
+
/** `Gtk.SpinButton:digits` — `gtk_spin_button_init` starts it at 0. */
|
|
25
|
+
get digits(): number;
|
|
26
|
+
set digits(value: number);
|
|
27
|
+
/** `Gtk.SpinButton:numeric` — "whether non-numeric characters should be ignored". */
|
|
28
|
+
get numeric(): boolean;
|
|
29
|
+
set numeric(value: boolean);
|
|
30
|
+
/** `Gtk.SpinButton:snap-to-ticks`. */
|
|
31
|
+
get snapToTicks(): boolean;
|
|
32
|
+
set snapToTicks(value: boolean);
|
|
33
|
+
/** `Gtk.SpinButton:wrap` — whether the value wraps at either bound. */
|
|
34
|
+
get wrap(): boolean;
|
|
35
|
+
set wrap(value: boolean);
|
|
36
|
+
/** `Gtk.SpinButton:update-policy` — `always` (the default) or `if-valid`. */
|
|
37
|
+
get updatePolicy(): (typeof UPDATE_POLICIES)[number];
|
|
38
|
+
set updatePolicy(value: (typeof UPDATE_POLICIES)[number]);
|
|
39
|
+
/** `Gtk.SpinButton:climb-rate` — the acceleration of a held arrow. */
|
|
40
|
+
get climbRate(): number;
|
|
41
|
+
set climbRate(value: number);
|
|
42
|
+
/** The inner text node, for a consumer that needs to place a caret in it. */
|
|
43
|
+
get text(): HTMLInputElement;
|
|
44
|
+
connectedCallback(): void;
|
|
45
|
+
attributeChangedCallback(name: string): void;
|
|
46
|
+
/**
|
|
47
|
+
* `gtk_spin_button_real_spin` (gtkspinbutton.c:1666-1711), the whole of it: the two wrap
|
|
48
|
+
* branches, the two clamp branches and the `wrapped` signal.
|
|
49
|
+
*
|
|
50
|
+
* The clamp itself is `SpinState`'s; what is here is that `wrap` REPLACES it, which is
|
|
51
|
+
* why this is a method and not `increment()`/`decrement()` on the core state.
|
|
52
|
+
*/
|
|
53
|
+
private _spin;
|
|
54
|
+
/**
|
|
55
|
+
* `gtk_spin_button_update` (gtkspinbutton.c:1795-1832) over
|
|
56
|
+
* `gtk_spin_button_default_input` (gtkspinbutton.c:1673-1752).
|
|
57
|
+
*
|
|
58
|
+
* `update-policy` is the two branches that decide what a bad entry does: `always`
|
|
59
|
+
* clamps, `if-valid` leaves the field ALONE and re-formats the committed value — which
|
|
60
|
+
* is the `value_changed` call plus the early return C does at :1820-1824.
|
|
61
|
+
*/
|
|
62
|
+
private _update;
|
|
63
|
+
private _commit;
|
|
64
|
+
/**
|
|
65
|
+
* `gtk_spin_button_insert_text`'s `numeric` filter (gtkspinbutton.c:1589-1649), applied to
|
|
66
|
+
* the field's whole text rather than to one insertion — a browser input hands over the
|
|
67
|
+
* result, not the keystroke. The three refusals C has are the three here: a sign after
|
|
68
|
+
* the first character, a decimal point when `digits` is 0 or one is already there, and
|
|
69
|
+
* anything that is not a digit.
|
|
70
|
+
*/
|
|
71
|
+
private _rejectNonNumeric;
|
|
72
|
+
/** A refused character drops the WHOLE edit and restores the formatted value, as C does. */
|
|
73
|
+
private _resetText;
|
|
74
|
+
/**
|
|
75
|
+
* The held-arrow repeat, `gtk_spin_button_timer` (gtkspinbutton.c:1374-1407) with the
|
|
76
|
+
* two constants that shape it.
|
|
77
|
+
*
|
|
78
|
+
* The ramp is C's exactly: the step grows by `climb-rate` once every `MAX_TIMER_CALLS`
|
|
79
|
+
* ticks, and only while it is still below `page-increment`.
|
|
80
|
+
*/
|
|
81
|
+
private _hold;
|
|
82
|
+
private _tick;
|
|
83
|
+
private _stopHold;
|
|
84
|
+
/**
|
|
85
|
+
* The keys `GtkSpinButton` takes on the entry (gtkspinbutton.c:1495-1525): the arrows and
|
|
86
|
+
* Page Up/Down move by the step and the page, and the vertical pair is bound on the
|
|
87
|
+
* SCROLL controller rather than the keyboard — which is the same "arrows step whatever way
|
|
88
|
+
* the widget runs" rule `GtkScale` states in its own words.
|
|
89
|
+
*/
|
|
90
|
+
private _onKeyDown;
|
|
91
|
+
private _formatted;
|
|
92
|
+
private _render;
|
|
93
|
+
}
|
|
94
|
+
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare class GtkSpinner extends HTMLElement {
|
|
2
|
+
private _initialized;
|
|
3
|
+
static get observedAttributes(): string[];
|
|
4
|
+
/** `Gtk.Spinner:spinning` — whether the animation runs. Defaults to FALSE (:338-340). */
|
|
5
|
+
get spinning(): boolean;
|
|
6
|
+
set spinning(v: boolean);
|
|
7
|
+
/** `gtk_spinner_start` (gtkspinner.c:373-383): spin, and announce the busy state. */
|
|
8
|
+
start(): void;
|
|
9
|
+
/** `gtk_spinner_stop` (gtkspinner.c:391-400). */
|
|
10
|
+
stop(): void;
|
|
11
|
+
connectedCallback(): void;
|
|
12
|
+
attributeChangedCallback(name: string): void;
|
|
13
|
+
private _render;
|
|
14
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { GtkStack } from './gtk-stack.js';
|
|
2
|
+
export declare class GtkStackSidebar extends HTMLElement {
|
|
3
|
+
private _stack;
|
|
4
|
+
private _list;
|
|
5
|
+
private _initialized;
|
|
6
|
+
private _rows;
|
|
7
|
+
private readonly _onStackChange;
|
|
8
|
+
static get observedAttributes(): string[];
|
|
9
|
+
/** `Gtk.StackSidebar:stack` — the stack this sidebar drives, or null. */
|
|
10
|
+
get stack(): GtkStack | null;
|
|
11
|
+
set stack(value: GtkStack | string | null);
|
|
12
|
+
/** Rebuild the rows by hand, for a consumer that mutated a page in place. */
|
|
13
|
+
refresh(): void;
|
|
14
|
+
connectedCallback(): void;
|
|
15
|
+
disconnectedCallback(): void;
|
|
16
|
+
attributeChangedCallback(name: string, _old: string | null, value: string | null): void;
|
|
17
|
+
/** Bind to a stack element (or null). Unbinds the previous one, as `set_stack` does. */
|
|
18
|
+
setStack(stack: GtkStack | null): void;
|
|
19
|
+
private _resolve;
|
|
20
|
+
private _bindStack;
|
|
21
|
+
private _unbindStack;
|
|
22
|
+
private _pages;
|
|
23
|
+
/**
|
|
24
|
+
* `update_row`'s visibility rule (gtkstacksidebar.c:186): the page is visible AND
|
|
25
|
+
* carries a title. There is no icon fallback — `update_row` never reads `icon-name`,
|
|
26
|
+
* which is the one rule where this sidebar and the switcher disagree.
|
|
27
|
+
*/
|
|
28
|
+
private _visible;
|
|
29
|
+
private _selectedIndex;
|
|
30
|
+
/**
|
|
31
|
+
* An `items-changed` rebuilds the list wholesale (gtkstacksidebar.c:307-311) and a
|
|
32
|
+
* `selection-changed` does not (:317-338), so the rows are recreated ONLY when the
|
|
33
|
+
* page COUNT moves.
|
|
34
|
+
*/
|
|
35
|
+
private _rebuild;
|
|
36
|
+
private _buildRow;
|
|
37
|
+
/**
|
|
38
|
+
* `gtk_stack_sidebar_row_selected` (gtkstacksidebar.c:130-143): a selected row
|
|
39
|
+
* selects its page. An UNSELECTION is not driven from here — the model is the
|
|
40
|
+
* authority, exactly as in the switcher.
|
|
41
|
+
*/
|
|
42
|
+
private _onRowActivated;
|
|
43
|
+
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { type BoxOrientation } from '@gjsify/adwaita-core';
|
|
2
|
+
import type { GtkStack } from './gtk-stack.js';
|
|
3
|
+
export declare class GtkStackSwitcher extends HTMLElement {
|
|
4
|
+
private _stack;
|
|
5
|
+
private _initialized;
|
|
6
|
+
private _nodes;
|
|
7
|
+
private readonly _onStackChange;
|
|
8
|
+
static get observedAttributes(): string[];
|
|
9
|
+
/** `Gtk.StackSwitcher:stack` — the stack this switcher drives, or null. */
|
|
10
|
+
get stack(): GtkStack | null;
|
|
11
|
+
set stack(value: GtkStack | string | null);
|
|
12
|
+
/** `GtkOrientable:orientation` (gtkstackswitcher.c:47). */
|
|
13
|
+
get orientation(): BoxOrientation;
|
|
14
|
+
set orientation(v: BoxOrientation);
|
|
15
|
+
/**
|
|
16
|
+
* Rebuild the buttons by hand, for a consumer that mutated a page in place. Not
|
|
17
|
+
* the only path: the stack emits `page-updated` and `items-changed`, and this
|
|
18
|
+
* element binds both, which is the mechanism C uses (`:311-321`, `:347-355`).
|
|
19
|
+
*/
|
|
20
|
+
refresh(): void;
|
|
21
|
+
connectedCallback(): void;
|
|
22
|
+
disconnectedCallback(): void;
|
|
23
|
+
attributeChangedCallback(name: string, _old: string | null, value: string | null): void;
|
|
24
|
+
/** Bind to a stack element (or null). Unbinds the previous one, as `set_stack` does. */
|
|
25
|
+
setStack(stack: GtkStack | null): void;
|
|
26
|
+
private _resolve;
|
|
27
|
+
private _bindStack;
|
|
28
|
+
private _unbindStack;
|
|
29
|
+
/**
|
|
30
|
+
* A button is visible when its page is visible AND the page carries a title or an
|
|
31
|
+
* icon (gtkstackswitcher.c:200). `visible` false must hide the row, and an absent
|
|
32
|
+
* title with no icon leaves the button childless — `rebuild_child` builds nothing
|
|
33
|
+
* for it (`:158-176`).
|
|
34
|
+
*/
|
|
35
|
+
private _visible;
|
|
36
|
+
/**
|
|
37
|
+
* The pages, in the order the stack holds them. A stack that is not upgraded has no
|
|
38
|
+
* `pages` getter, which is why it is read defensively.
|
|
39
|
+
*/
|
|
40
|
+
private _pages;
|
|
41
|
+
/** Which page the stack has selected, by position, `-1` for none. */
|
|
42
|
+
private _selectedIndex;
|
|
43
|
+
/**
|
|
44
|
+
* `items_changed_cb` rebuilds everything (gtkstackswitcher.c:347-355) and a
|
|
45
|
+
* `selection_changed_cb` does not — so the nodes are recreated ONLY when the page
|
|
46
|
+
* COUNT moves, and a selection change re-marks them in place (:359-381). Replacing
|
|
47
|
+
* a button mid-interaction would also drop keyboard focus.
|
|
48
|
+
*/
|
|
49
|
+
private _rebuild;
|
|
50
|
+
private _buildButton;
|
|
51
|
+
private _onToggled;
|
|
52
|
+
/**
|
|
53
|
+
* The orientation attribute is the GIR property's own spelling (gtkstackswitcher.c:47)
|
|
54
|
+
* and the stylesheet selects on it directly, so there is nothing to mirror onto a
|
|
55
|
+
* second attribute; this hook exists so the render pass has one entry point.
|
|
56
|
+
*/
|
|
57
|
+
private _render;
|
|
58
|
+
}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
/** `GtkStackTransitionType`, spelled as the GIR's enum nicks (gtkstack.c:95-121). */
|
|
2
|
+
export type StackTransitionType = 'none' | 'crossfade' | 'slide-right' | 'slide-left' | 'slide-up' | 'slide-down' | 'slide-left-right' | 'slide-up-down' | 'over-up' | 'over-down' | 'over-left' | 'over-right' | 'under-up' | 'under-down' | 'under-left' | 'under-right' | 'over-up-down' | 'over-down-up' | 'over-left-right' | 'over-right-left' | 'rotate-left' | 'rotate-right' | 'rotate-left-right';
|
|
3
|
+
/** The browser's page descriptor — the stand-in for the `GtkStackPage` GObject. */
|
|
4
|
+
export interface GtkStackPageInfo {
|
|
5
|
+
/** `GtkStackPage:name`, `''` for a page with no `name` attribute. */
|
|
6
|
+
name: string;
|
|
7
|
+
/** `GtkStackPage:title` — `null` when absent, which is C's NULL and means NO label. */
|
|
8
|
+
title: string | null;
|
|
9
|
+
/** `GtkStackPage:icon-name` — `null` when absent. */
|
|
10
|
+
iconName: string | null;
|
|
11
|
+
/** `GtkStackPage:needs-attention`. */
|
|
12
|
+
needsAttention: boolean;
|
|
13
|
+
/** `GtkStackPage:use-underline`. */
|
|
14
|
+
useUnderline: boolean;
|
|
15
|
+
/** `GtkStackPage:visible` AND `GtkWidget:visible` — the child's `hidden` attribute. */
|
|
16
|
+
visible: boolean;
|
|
17
|
+
/** `GtkStackPage:child`: the page's own node. */
|
|
18
|
+
child: HTMLElement;
|
|
19
|
+
}
|
|
20
|
+
export declare class GtkStack extends HTMLElement {
|
|
21
|
+
/** The child that is visible, or `null` — C's `priv->visible_child`. */
|
|
22
|
+
private _visible;
|
|
23
|
+
/** C's `priv->last_visible_child`: the page being animated away. */
|
|
24
|
+
private _lastVisible;
|
|
25
|
+
private _initialized;
|
|
26
|
+
private _initializedChildren;
|
|
27
|
+
private _observer;
|
|
28
|
+
private _timer;
|
|
29
|
+
private _running;
|
|
30
|
+
static get observedAttributes(): string[];
|
|
31
|
+
/** `Gtk.Stack:visible-child-name` — the name of the visible child. */
|
|
32
|
+
get visibleChildName(): string | null;
|
|
33
|
+
set visibleChildName(v: string | null);
|
|
34
|
+
/**
|
|
35
|
+
* `Gtk.Stack:visible-child` as the browser can spell it: the visible child ELEMENT
|
|
36
|
+
* (the C property takes a `Gtk.Widget`, which no attribute can carry). Writes go
|
|
37
|
+
* through the child's own `name`, so it is `visible-child-name` that is read back.
|
|
38
|
+
*/
|
|
39
|
+
get visibleChild(): HTMLElement | null;
|
|
40
|
+
set visibleChild(child: HTMLElement | null);
|
|
41
|
+
/** `Gtk.Stack:transition-type`. An unknown nick reads as `none`, the GIR default. */
|
|
42
|
+
get transitionType(): StackTransitionType;
|
|
43
|
+
set transitionType(v: StackTransitionType);
|
|
44
|
+
/** `Gtk.Stack:transition-duration` in milliseconds. `0` disables the animation. */
|
|
45
|
+
get transitionDuration(): number;
|
|
46
|
+
set transitionDuration(v: number);
|
|
47
|
+
/**
|
|
48
|
+
* `Gtk.Stack:hhomogeneous` — the same width for every child. Defaults to TRUE
|
|
49
|
+
* (gtkstack.c:981-987), which is why this one is NOT a boolean attribute: an absent
|
|
50
|
+
* attribute already means true, so the spelling has to be able to say false.
|
|
51
|
+
*/
|
|
52
|
+
get hhomogeneous(): boolean;
|
|
53
|
+
set hhomogeneous(v: boolean);
|
|
54
|
+
/** `Gtk.Stack:vhomogeneous` — the same height for every child. Defaults to TRUE. */
|
|
55
|
+
get vhomogeneous(): boolean;
|
|
56
|
+
set vhomogeneous(v: boolean);
|
|
57
|
+
/** `Gtk.Stack:interpolate-size` — let the size change smoothly too. */
|
|
58
|
+
get interpolateSize(): boolean;
|
|
59
|
+
set interpolateSize(v: boolean);
|
|
60
|
+
/** `Gtk.Stack:transition-running` — READ-ONLY; reflected for the stylesheet. */
|
|
61
|
+
get transitionRunning(): boolean;
|
|
62
|
+
/**
|
|
63
|
+
* `Gtk.Stack:pages` — the page descriptors in child order, the browser half of the
|
|
64
|
+
* `GtkStackPages` selection model (gtkstack.c:698-745).
|
|
65
|
+
*/
|
|
66
|
+
get pages(): GtkStackPageInfo[];
|
|
67
|
+
/** `gtk_stack_get_child_by_name` (gtkstack.c:1889-1916), `null` when not found. */
|
|
68
|
+
getChildByName(name: string): HTMLElement | null;
|
|
69
|
+
/** `gtk_stack_get_page` (gtkstack.c:1870-1887) as a descriptor, `null` when absent. */
|
|
70
|
+
getPage(child: HTMLElement): GtkStackPageInfo | null;
|
|
71
|
+
/** `gtk_stack_pages_is_selected` (gtkstack.c:647-666) for the model this element is. */
|
|
72
|
+
isSelected(child: HTMLElement): boolean;
|
|
73
|
+
/** `gtk_stack_add_titled` (gtkstack.c:1644-1663) — append a named, titled child. */
|
|
74
|
+
addTitled(child: HTMLElement, name: string | null, title?: string | null): HTMLElement;
|
|
75
|
+
/** `gtk_stack_add_named` (gtkstack.c:1687-1696). */
|
|
76
|
+
addNamed(child: HTMLElement, name: string | null): HTMLElement;
|
|
77
|
+
/** `gtk_stack_add_child` (gtkstack.c:1665-1685) — the unnamed form. */
|
|
78
|
+
addChild(child: HTMLElement): HTMLElement;
|
|
79
|
+
/**
|
|
80
|
+
* `gtk_stack_remove` (gtkstack.c:1834-1868), named `removePage` because
|
|
81
|
+
* `HTMLElement.remove()` already occupies the short spelling — the same rename
|
|
82
|
+
* `Adw.ViewStack.remove` took in `adw-view-stack.ts`.
|
|
83
|
+
*/
|
|
84
|
+
removePage(child: HTMLElement): void;
|
|
85
|
+
/**
|
|
86
|
+
* `gtk_stack_set_visible_child` (gtkstack.c:2244-2281), with `gtk_stack_set_visible_
|
|
87
|
+
* child_full`'s per-call transition (gtkstack.c:2306-2334). A child that is not in
|
|
88
|
+
* this stack, or whose page is not visible, changes nothing — C warns and returns.
|
|
89
|
+
*/
|
|
90
|
+
setVisibleChild(child: HTMLElement | null, transitionType?: StackTransitionType): boolean;
|
|
91
|
+
/** `gtk_stack_set_visible_child_name` (gtkstack.c:2283-2304). */
|
|
92
|
+
setVisibleChildName(name: string | null): boolean;
|
|
93
|
+
connectedCallback(): void;
|
|
94
|
+
disconnectedCallback(): void;
|
|
95
|
+
attributeChangedCallback(name: string): void;
|
|
96
|
+
/**
|
|
97
|
+
* The `notify::` detail for `name`: the PROPERTY, parsed, not the raw attribute —
|
|
98
|
+
* `transition-type` in particular reads as `none` for an unknown nick.
|
|
99
|
+
*/
|
|
100
|
+
private _property;
|
|
101
|
+
private _notify;
|
|
102
|
+
private _write;
|
|
103
|
+
/** A boolean property that DEFAULTS TO TRUE: absent means true, like C's spec. */
|
|
104
|
+
private _flag;
|
|
105
|
+
/**
|
|
106
|
+
* `Gtk.Stack:transition-duration`, the `g_param_spec_uint` default of 200
|
|
107
|
+
* (gtkstack.c:1024). An unparseable or negative value is the uint clamp to 0 that
|
|
108
|
+
* the property's own range produces (gtkstack.c:1051-1060), and 0 is what stops the
|
|
109
|
+
* transition from starting at all (gtkstack.c:1402-1403).
|
|
110
|
+
*/
|
|
111
|
+
private _duration;
|
|
112
|
+
/** The pages, in child order — `priv->children`, never the shadow root. */
|
|
113
|
+
private _children;
|
|
114
|
+
/** The page descriptor of one child (gtkstack.c:499-573). */
|
|
115
|
+
private _page;
|
|
116
|
+
/** `set_visible_child`'s "pick first visible" scan (gtkstack.c:1437-1450). */
|
|
117
|
+
private _firstVisible;
|
|
118
|
+
private _initChild;
|
|
119
|
+
private _onChildMutations;
|
|
120
|
+
/** C's NULL page name is an ABSENT attribute, not the empty string (gtkstack.c:2216). */
|
|
121
|
+
private _nameOrNull;
|
|
122
|
+
/**
|
|
123
|
+
* `set_visible_child` (gtkstack.c:1428-1586) reduced to what a browser can decide,
|
|
124
|
+
* with the guards kept in C's order. Returns whether the visible child changed.
|
|
125
|
+
*/
|
|
126
|
+
private _show;
|
|
127
|
+
/**
|
|
128
|
+
* `gtk_stack_start_transition` (gtkstack.c:1389-1426) with
|
|
129
|
+
* `get_effective_transition_type` (gtkstack.c:1320-1390) and, for a two-way type,
|
|
130
|
+
* `get_simple_transition_type` on the page ORDER (gtkstack.c:1539-1561,
|
|
131
|
+
* :1162-1200). The result is always a SIMPLE type, which is what the stylesheet
|
|
132
|
+
* keys on — C resolves the two-way pair into one of the one-directional types
|
|
133
|
+
* before the animation starts, and so does this.
|
|
134
|
+
*/
|
|
135
|
+
private _startTransition;
|
|
136
|
+
/**
|
|
137
|
+
* `i_first` (gtkstack.c:1548-1557): whether the incoming page was ADDED EARLIER than
|
|
138
|
+
* the outgoing one. C walks the children from the start and breaks on whichever it
|
|
139
|
+
* meets first, so the answer is a comparison of positions.
|
|
140
|
+
*/
|
|
141
|
+
private _newChildFirst;
|
|
142
|
+
/** `get_effective_transition_type` (gtkstack.c:1320-1390): reduced motion, then RTL. */
|
|
143
|
+
private _effectiveType;
|
|
144
|
+
/** `gtk_widget_get_settings`'s `gtk-interface-reduced-motion`, read from the media query. */
|
|
145
|
+
private _reducedMotion;
|
|
146
|
+
/**
|
|
147
|
+
* The render pass: which page is visible, which is animating out, and the two
|
|
148
|
+
* `aria-hidden` states GTK raises on the PAGES (gtkstack.c:1526-1532, :1543-1547,
|
|
149
|
+
* :1610-1613). `hidden` is never written — it is the author's own
|
|
150
|
+
* `GtkStackPage:visible`, and overwriting it would destroy the distinction C keeps
|
|
151
|
+
* between the page flag and the widget's own visibility.
|
|
152
|
+
*/
|
|
153
|
+
private _render;
|
|
154
|
+
}
|
|
@@ -13,9 +13,12 @@ export declare class GtkSwitch extends HTMLElement {
|
|
|
13
13
|
*/
|
|
14
14
|
get unfocusable(): boolean;
|
|
15
15
|
set unfocusable(value: boolean);
|
|
16
|
-
/** Whether the switch
|
|
16
|
+
/** Whether the user put the switch ON. Drives the knob. */
|
|
17
17
|
get active(): boolean;
|
|
18
18
|
set active(value: boolean);
|
|
19
|
+
/** `Gtk.Switch:state` — what the switched thing currently is. Drives the trough. */
|
|
20
|
+
get state(): boolean;
|
|
21
|
+
set state(value: boolean);
|
|
19
22
|
/** Whether the switch is inert. */
|
|
20
23
|
get disabled(): boolean;
|
|
21
24
|
set disabled(value: boolean);
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { type LabelJustification } from '@gjsify/adwaita-core';
|
|
2
|
+
/** `Gtk.WrapMode`'s four nicks, in enum order — Pango's enum, and the DEFAULT is `none`. */
|
|
3
|
+
declare const WRAP_MODES: readonly ["none", "char", "word", "word-char"];
|
|
4
|
+
type TextViewWrapMode = (typeof WRAP_MODES)[number];
|
|
5
|
+
export declare class GtkTextView extends HTMLElement {
|
|
6
|
+
private _area;
|
|
7
|
+
private _initialized;
|
|
8
|
+
static get observedAttributes(): string[];
|
|
9
|
+
/** The buffer's text — the light-DOM text of the element, then whatever is typed. */
|
|
10
|
+
get text(): string;
|
|
11
|
+
set text(value: string);
|
|
12
|
+
/** `Gtk.TextView:editable` — defaults TRUE, so the attribute carries a VALUE. */
|
|
13
|
+
get editable(): boolean;
|
|
14
|
+
set editable(value: boolean);
|
|
15
|
+
/** `Gtk.TextView:wrap-mode` — where a line may break. Defaults to `none`, no wrapping. */
|
|
16
|
+
get wrapMode(): TextViewWrapMode;
|
|
17
|
+
set wrapMode(value: TextViewWrapMode);
|
|
18
|
+
/** `Gtk.TextView:justification` — how the lines align with each other. Defaults `left`. */
|
|
19
|
+
get justification(): LabelJustification;
|
|
20
|
+
set justification(value: LabelJustification);
|
|
21
|
+
/** `Gtk.TextView:monospace` — whether the text is drawn in a monospace font. */
|
|
22
|
+
get monospace(): boolean;
|
|
23
|
+
set monospace(value: boolean);
|
|
24
|
+
/** `Gtk.TextView:accepts-tab` — whether Tab inserts a tab character. Defaults TRUE. */
|
|
25
|
+
get acceptsTab(): boolean;
|
|
26
|
+
set acceptsTab(value: boolean);
|
|
27
|
+
/** `Gtk.TextView:cursor-visible` — whether the insertion cursor is drawn. Defaults TRUE. */
|
|
28
|
+
get cursorVisible(): boolean;
|
|
29
|
+
set cursorVisible(value: boolean);
|
|
30
|
+
/** `Gtk.TextView:top-margin` — pixels of blank space above the text, in `padding`. */
|
|
31
|
+
get topMargin(): number;
|
|
32
|
+
set topMargin(value: number);
|
|
33
|
+
/** `Gtk.TextView:bottom-margin` — pixels of blank space below the text. */
|
|
34
|
+
get bottomMargin(): number;
|
|
35
|
+
set bottomMargin(value: number);
|
|
36
|
+
/** `Gtk.TextView:left-margin` — pixels of blank space to the left of the text. */
|
|
37
|
+
get leftMargin(): number;
|
|
38
|
+
set leftMargin(value: number);
|
|
39
|
+
/** `Gtk.TextView:right-margin` — pixels of blank space to the right of the text. */
|
|
40
|
+
get rightMargin(): number;
|
|
41
|
+
set rightMargin(value: number);
|
|
42
|
+
/** The inner native textarea, for focus and selection. */
|
|
43
|
+
get textarea(): HTMLTextAreaElement;
|
|
44
|
+
connectedCallback(): void;
|
|
45
|
+
attributeChangedCallback(name: string, _old: string | null, value: string | null): void;
|
|
46
|
+
private _render;
|
|
47
|
+
/** The buffer's text before the inner control exists: the light-DOM text, or the attribute. */
|
|
48
|
+
private _seedText;
|
|
49
|
+
/**
|
|
50
|
+
* `Gtk.TextBuffer:changed`, the signal a text view's edits travel on. The buffer is a
|
|
51
|
+
* separate GObject here (its text is the element's), so its `changed` is the one event
|
|
52
|
+
* this widget has to re-emit.
|
|
53
|
+
*/
|
|
54
|
+
private _emitChanged;
|
|
55
|
+
/** A boolean pspec read the way its default decides an attribute can spell it. */
|
|
56
|
+
private _bool;
|
|
57
|
+
/** {@link _bool}'s writer: the pspec default is left unwritten, anything else is written. */
|
|
58
|
+
private _setBool;
|
|
59
|
+
/** A pixel margin, floored at 0 like every `g_param_spec_int` with a zero minimum. */
|
|
60
|
+
private _margin;
|
|
61
|
+
}
|
|
62
|
+
export {};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
export declare class GtkText extends HTMLElement {
|
|
2
|
+
private _input;
|
|
3
|
+
private _initialized;
|
|
4
|
+
private _maxLength;
|
|
5
|
+
static get observedAttributes(): string[];
|
|
6
|
+
/** `Gtk.Editable:text` — the buffer's contents, which is what the field shows. */
|
|
7
|
+
get text(): string;
|
|
8
|
+
set text(value: string);
|
|
9
|
+
/** `Gtk.Editable:editable` — defaults TRUE, so the attribute carries a VALUE. */
|
|
10
|
+
get editable(): boolean;
|
|
11
|
+
set editable(value: boolean);
|
|
12
|
+
/** `Gtk.Text:placeholder-text` — shown while the field is empty and unfocused. */
|
|
13
|
+
get placeholderText(): string;
|
|
14
|
+
set placeholderText(value: string);
|
|
15
|
+
/** `Gtk.Text:max-length` — 0 means unlimited. Counted in CODE POINTS. */
|
|
16
|
+
get maxLength(): number;
|
|
17
|
+
set maxLength(value: number);
|
|
18
|
+
/** `Gtk.Text:visibility` — FALSE masks the contents (the "password mode"). Defaults TRUE. */
|
|
19
|
+
get visibility(): boolean;
|
|
20
|
+
set visibility(value: boolean);
|
|
21
|
+
/**
|
|
22
|
+
* `Gtk.Text:propagate-text-width` — whether the widget grows and shrinks with its
|
|
23
|
+
* content. GTK re-measures the Pango layout on every insertion and deletion while it
|
|
24
|
+
* is set (gtktext.c:2588-2600,3605-3607,3639-3640); a native input has the same
|
|
25
|
+
* mechanism, its `size`, which is why this is a real mapping and not a measurement.
|
|
26
|
+
*/
|
|
27
|
+
get propagateTextWidth(): boolean;
|
|
28
|
+
set propagateTextWidth(value: boolean);
|
|
29
|
+
/** `gtk_text_get_text_length` — code points, not UTF-16 units. */
|
|
30
|
+
get textLength(): number;
|
|
31
|
+
/** The inner native input, for focus and selection. */
|
|
32
|
+
get input(): HTMLInputElement;
|
|
33
|
+
connectedCallback(): void;
|
|
34
|
+
attributeChangedCallback(name: string, _old: string | null, value: string | null): void;
|
|
35
|
+
private _render;
|
|
36
|
+
/**
|
|
37
|
+
* `text[.read-only]` (gtktext.c:155-167) is the node class a read-only text carries,
|
|
38
|
+
* and libadwaita never styles it — it is a selector hook. GTK's own `set_editable`
|
|
39
|
+
* adds the class on the way TO editable (gtktext.c:5762-5767), which is the inverse of
|
|
40
|
+
* what the node documentation above it describes; the DOCUMENTED rule is what a node
|
|
41
|
+
* author can rely on, so that is the one applied here.
|
|
42
|
+
*/
|
|
43
|
+
private _reflectReadOnly;
|
|
44
|
+
private _resizeToText;
|
|
45
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { DispatchedSignals } from '../signals.js';
|
|
2
|
+
import { GtkButton } from './gtk-button.js';
|
|
3
|
+
export declare class GtkToggleButton extends GtkButton {
|
|
4
|
+
static readonly signals: DispatchedSignals;
|
|
5
|
+
private _wired;
|
|
6
|
+
/** The other end of the group link, both halves of `GtkToggleButtonPrivate`. */
|
|
7
|
+
private _groupNext;
|
|
8
|
+
private _groupPrev;
|
|
9
|
+
/** Guards the `group` property ↔ attribute loop, as `gtk-popover` guards its `open`. */
|
|
10
|
+
private _reflectingGroup;
|
|
11
|
+
static get observedAttributes(): string[];
|
|
12
|
+
/** Whether the button is pressed in. */
|
|
13
|
+
get active(): boolean;
|
|
14
|
+
set active(value: boolean);
|
|
15
|
+
/**
|
|
16
|
+
* `Gtk.ToggleButton:group` — the button this one joins, or `null` to leave the group.
|
|
17
|
+
*
|
|
18
|
+
* `G_PARAM_WRITABLE` upstream (:310-313), so there is deliberately NO getter: the
|
|
19
|
+
* member's own links are the state, and reading them back is not what GTK offers.
|
|
20
|
+
*/
|
|
21
|
+
set group(value: GtkToggleButton | null);
|
|
22
|
+
/** Whether this button has at least one group link — `group_prev || group_next`. */
|
|
23
|
+
private get _grouped();
|
|
24
|
+
connectedCallback(): void;
|
|
25
|
+
attributeChangedCallback(name?: string): void;
|
|
26
|
+
/**
|
|
27
|
+
* `gtk_toggle_button_set_group` — insert this button DIRECTLY BEFORE `group`, or
|
|
28
|
+
* unlink it when `group` is null. The three arms are the C's, in order.
|
|
29
|
+
*/
|
|
30
|
+
private _setGroup;
|
|
31
|
+
/**
|
|
32
|
+
* Release every OTHER member of the group — `get_group_first()` walked backwards,
|
|
33
|
+
* then the chain forwards, skipping this one (:426-434).
|
|
34
|
+
*/
|
|
35
|
+
private _clearGroup;
|
|
36
|
+
/**
|
|
37
|
+
* `get_group_first` (:242-262) — the walk backwards along `group_prev`.
|
|
38
|
+
*
|
|
39
|
+
* Written as recursion rather than a loop accumulator so no local ever holds `this`,
|
|
40
|
+
* which the walk does not need: the C's `g_assert (group_first)` is its proof that the
|
|
41
|
+
* walk terminates on a member, and the same proof is the `depth` guard here.
|
|
42
|
+
*/
|
|
43
|
+
private _groupFirst;
|
|
44
|
+
protected decorate(button: HTMLButtonElement): void;
|
|
45
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { type AdwTreeExpanderLayout } from '@gjsify/adwaita-core';
|
|
2
|
+
export declare class GtkTreeExpander extends HTMLElement {
|
|
3
|
+
private _ornaments;
|
|
4
|
+
private _expandTimer;
|
|
5
|
+
private _initialized;
|
|
6
|
+
static get observedAttributes(): string[];
|
|
7
|
+
get hideExpander(): boolean;
|
|
8
|
+
set hideExpander(value: boolean);
|
|
9
|
+
/** Default TRUE (gtktreeexpander.c:750), so only the literal `false` turns it off. */
|
|
10
|
+
get indentForDepth(): boolean;
|
|
11
|
+
set indentForDepth(value: boolean);
|
|
12
|
+
/** Default TRUE (gtktreeexpander.c:749), read the same way as `indent-for-depth`. */
|
|
13
|
+
get indentForIcon(): boolean;
|
|
14
|
+
set indentForIcon(value: boolean);
|
|
15
|
+
/** The row's depth — 0 at the root, as `gtk_tree_list_row_get_depth` reports it. */
|
|
16
|
+
get depth(): number;
|
|
17
|
+
set depth(value: number);
|
|
18
|
+
get expandable(): boolean;
|
|
19
|
+
set expandable(value: boolean);
|
|
20
|
+
get expanded(): boolean;
|
|
21
|
+
set expanded(value: boolean);
|
|
22
|
+
/** What this expander draws, as counts — `treeExpanderLayout`'s answer for it. */
|
|
23
|
+
get layout(): AdwTreeExpanderLayout;
|
|
24
|
+
connectedCallback(): void;
|
|
25
|
+
/** The listeners, installed once — they sit on the element, so a re-parent keeps them. */
|
|
26
|
+
private _wire;
|
|
27
|
+
disconnectedCallback(): void;
|
|
28
|
+
attributeChangedCallback(name?: string): void;
|
|
29
|
+
private _cancelExpandTimer;
|
|
30
|
+
/**
|
|
31
|
+
* Rebuild the indents and the expander in front of the child.
|
|
32
|
+
*
|
|
33
|
+
* Every ornament is dropped and rebuilt rather than diffed: there are at most
|
|
34
|
+
* depth + 1 of them, they hold no state and no focus, and a diff over two kinds of
|
|
35
|
+
* node is where the leaf/expandable transition would go wrong.
|
|
36
|
+
*/
|
|
37
|
+
private _render;
|
|
38
|
+
}
|