@gjsify/adwaita-web 0.54.0 → 0.56.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -0
- package/dist/adwaita-web.css +8146 -3011
- 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-status-page.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/attributes.d.ts +19 -0
- package/lib/types/breakpoints.d.ts +14 -3
- package/lib/types/construct-vectors.spec.d.ts +1 -0
- package/lib/types/elements/adw-action-row.d.ts +4 -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-combo-row.d.ts +4 -0
- package/lib/types/elements/adw-dialog.d.ts +10 -0
- package/lib/types/elements/adw-entry-row.d.ts +6 -0
- package/lib/types/elements/adw-expander-row.d.ts +2 -0
- package/lib/types/elements/adw-header-bar.d.ts +6 -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-overlay-split-view.d.ts +13 -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 +8 -2
- package/lib/types/elements/adw-spin-row.d.ts +6 -0
- package/lib/types/elements/adw-switch-row.d.ts +7 -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-toggle-group.d.ts +17 -0
- 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 +129 -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 +103 -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/row-line-clamp.d.ts +20 -0
- package/lib/types/row-tooltip.d.ts +8 -0
- package/lib/types/row-tooltip.spec.d.ts +1 -0
- package/lib/types/scroll-shading.d.ts +15 -1
- package/lib/types/shared-tree-builder.d.ts +75 -17
- package/lib/types/shared-tree-mount.spec.d.ts +1 -0
- 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/lib/types/widget-size.spec.d.ts +1 -0
- package/package.json +12 -8
- package/scss/_action_row.scss +41 -17
- 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/_button_row.scss +5 -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/_expander_row.scss +36 -3
- 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 +134 -1
- 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 +60 -0
- package/scss/_print_dialogs.scss +328 -0
- package/scss/_reset.scss +21 -19
- package/scss/_revealer.scss +37 -0
- package/scss/_row.scss +36 -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/_status_page.scss +1 -1
- 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/_toggle_group.scss +28 -0
- package/scss/_tree_expander.scss +62 -0
- package/scss/_variables.scss +1 -1
- package/scss/_video.scss +146 -0
- package/scss/_view_switcher_sidebar.scss +112 -0
- package/scss/_viewport.scss +50 -0
- package/scss/_widget.scss +14 -3
- package/scss/_window.scss +131 -2
- package/scss/_window_handle.scss +20 -0
- package/scss/adwaita-skin.scss +109 -0
- package/src/adw-action-rows.spec.ts +331 -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-header-bar.spec.ts +18 -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-status-page.spec.ts +124 -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/attributes.ts +52 -0
- package/src/breakpoints.ts +25 -8
- package/src/capabilities.d.mts +3 -0
- package/src/capabilities.mjs +21 -0
- package/src/connect-lifecycle.spec.ts +12 -0
- package/src/construct-vectors.spec.ts +175 -0
- package/src/elements/adw-action-row.ts +31 -2
- package/src/elements/adw-alert-dialog.ts +4 -1
- 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-button-row.ts +7 -1
- package/src/elements/adw-clamp-scrollable.ts +207 -0
- package/src/elements/adw-combo-row.ts +26 -1
- package/src/elements/adw-dialog.ts +19 -0
- package/src/elements/adw-entry-row.ts +22 -12
- package/src/elements/adw-expander-row.ts +34 -1
- package/src/elements/adw-header-bar.ts +18 -4
- package/src/elements/adw-layout-slot.ts +95 -0
- package/src/elements/adw-multi-layout-view.ts +326 -0
- package/src/elements/adw-overlay-split-view.ts +29 -6
- package/src/elements/adw-preferences-row.ts +153 -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 +74 -7
- package/src/elements/adw-spin-row.ts +37 -2
- package/src/elements/adw-status-page.ts +10 -2
- package/src/elements/adw-switch-row.ts +53 -2
- 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 +138 -14
- 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 +190 -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 +653 -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 +372 -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 +202 -0
- package/src/index.ts +9 -1
- package/src/keyboard-operable.spec.ts +77 -9
- 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/row-line-clamp.ts +74 -0
- package/src/row-tooltip.spec.ts +313 -0
- package/src/row-tooltip.ts +52 -0
- package/src/scroll-shading.ts +18 -1
- package/src/shared-tree-builder.ts +336 -41
- package/src/shared-tree-mount.spec.ts +130 -0
- package/src/shared-trees.spec.ts +15 -0
- package/src/signals.ts +15 -0
- 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 +160 -0
- package/src/widget-size.spec.ts +117 -0
|
@@ -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
|
+
}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/** The four overlay glyphs, in the order `update_overlay_icon` tests them (gtkvideo.c:626-646). */
|
|
2
|
+
export type VideoOverlayIcon = 'media-eject-symbolic' | 'dialog-error-symbolic' | 'media-playlist-repeat-symbolic' | 'media-playback-start-symbolic';
|
|
3
|
+
/**
|
|
4
|
+
* The glyph a video with NO stream draws — the FIRST arm of the four-way choice
|
|
5
|
+
* (gtkvideo.c:629), because "there is nothing here to play" is the state every GtkVideo
|
|
6
|
+
* starts in.
|
|
7
|
+
*/
|
|
8
|
+
export declare const NO_STREAM_ICON = "media-eject-symbolic";
|
|
9
|
+
/** The glyph a stream that FAILED draws (gtkvideo.c:633) — tested before `ended`. */
|
|
10
|
+
export declare const ERROR_ICON = "dialog-error-symbolic";
|
|
11
|
+
/** The glyph a stream that has ENDED draws (gtkvideo.c:638-639). */
|
|
12
|
+
export declare const ENDED_ICON = "media-playlist-repeat-symbolic";
|
|
13
|
+
/** The glyph a READY stream draws (gtkvideo.c:645) — the arm everything else falls through to. */
|
|
14
|
+
export declare const READY_ICON = "media-playback-start-symbolic";
|
|
15
|
+
/** `gtk_video_reveal_controls`' timeout: 3 s (gtkvideo.c:130). */
|
|
16
|
+
export declare const CONTROLS_HIDE_MS = 3000;
|
|
17
|
+
export declare class GtkVideo extends HTMLElement {
|
|
18
|
+
private _initialized;
|
|
19
|
+
private _overlayIcon;
|
|
20
|
+
private _controlsRevealer;
|
|
21
|
+
private _media;
|
|
22
|
+
/** The listeners currently bound on `_media`, so `_detachMedia` removes the SAME ones. */
|
|
23
|
+
private mediaListeners;
|
|
24
|
+
private _hideTimer;
|
|
25
|
+
/** What the media element last told us, in the four fields the overlay choice reads. */
|
|
26
|
+
private _hasStream;
|
|
27
|
+
private _error;
|
|
28
|
+
private _ended;
|
|
29
|
+
private _playing;
|
|
30
|
+
static get observedAttributes(): string[];
|
|
31
|
+
/**
|
|
32
|
+
* `GtkVideo:autoplay` (gtkvideo.c:407-414). Defaults to FALSE. The C plays on the
|
|
33
|
+
* stream's `prepared` notification and not on this write — see the header — so this
|
|
34
|
+
* setter records the flag and lets the media's own readiness decide.
|
|
35
|
+
*/
|
|
36
|
+
get autoplay(): boolean;
|
|
37
|
+
set autoplay(value: boolean);
|
|
38
|
+
/** `GtkVideo:loop` (gtkvideo.c:432-439). Defaults to FALSE. A plain `<video loop>`. */
|
|
39
|
+
get loop(): boolean;
|
|
40
|
+
set loop(value: boolean);
|
|
41
|
+
/**
|
|
42
|
+
* `GtkVideo:graphics-offload` (gtkvideo.c:400-406, :1010-1023). Defaults to FALSE — the
|
|
43
|
+
* template ships `<property name="enabled">disabled</property>` (ui/gtkvideo.ui), so the
|
|
44
|
+
* C starts with the offload OFF and an application has to ask for it.
|
|
45
|
+
*
|
|
46
|
+
* Stored, readable and class-flagged, and NOTHING ELSE HAPPENS: CSS has no way to move a
|
|
47
|
+
* subtree into a shared GPU texture, which is what `GtkGraphicsOffload` is. The class is
|
|
48
|
+
* `graphics-offload` so a page can still target it, and `KNOWN_GAPS` in
|
|
49
|
+
* `check-adwaita-element-properties.mjs` does not list it because the PROPERTY is
|
|
50
|
+
* observed — what it does not buy is a faster composite.
|
|
51
|
+
*/
|
|
52
|
+
get graphicsOffload(): boolean;
|
|
53
|
+
set graphicsOffload(value: boolean);
|
|
54
|
+
/** The `<video>` this element drives — the browser's answer to a `GtkMediaStream`. */
|
|
55
|
+
get media(): HTMLVideoElement | null;
|
|
56
|
+
/** Whether the media reports itself playing — `GtkVideo:playing` (`gtk_video_get_playing`). */
|
|
57
|
+
get playing(): boolean;
|
|
58
|
+
/** The current position in SECONDS — the C's `timestamp`, in microseconds × 1000. */
|
|
59
|
+
get timestamp(): number;
|
|
60
|
+
/** The media's duration in SECONDS — the C's `duration`; 0 while it is unknown. */
|
|
61
|
+
get duration(): number;
|
|
62
|
+
/** Whether the overlay controls bar is currently revealed. */
|
|
63
|
+
get controlsRevealed(): boolean;
|
|
64
|
+
private _write;
|
|
65
|
+
connectedCallback(): void;
|
|
66
|
+
/**
|
|
67
|
+
* `ui/gtkvideo.ui` keeps the author's `<video>` as the MAIN child of the overlay and adds
|
|
68
|
+
* the two overlay children around it. Wrapping in place rather than re-creating is what
|
|
69
|
+
* lets the light DOM stay the API: a page writes `<gtk-video><video src=…></video></gtk-video>`
|
|
70
|
+
* and the element never has to be told where the media is.
|
|
71
|
+
*/
|
|
72
|
+
private _wrap;
|
|
73
|
+
private _adoptMedia;
|
|
74
|
+
private _detachMedia;
|
|
75
|
+
/** `autoplay` and `loop` are declared PROPERTIES of the widget, so they are applied to
|
|
76
|
+
* the media rather than left to the author's markup — `ui/gtkvideo.ui` does the same by
|
|
77
|
+
* binding them on the template. */
|
|
78
|
+
private _syncMedia;
|
|
79
|
+
private _overlayClicked;
|
|
80
|
+
/**
|
|
81
|
+
* `gtk_video_reveal_controls` (gtkvideo.c:125-133): reveal, then arm a 3 s timeout that
|
|
82
|
+
* hides it again. Re-arming on every call is what makes it a "three seconds after the
|
|
83
|
+
* LAST movement" rather than a "three seconds after the first".
|
|
84
|
+
*/
|
|
85
|
+
revealControls(): void;
|
|
86
|
+
private _hideControls;
|
|
87
|
+
/** `gtk_video_motion` (ui/gtkvideo.ui) — the motion controller's only job. */
|
|
88
|
+
private _onPointerMove;
|
|
89
|
+
attributeChangedCallback(name: string): void;
|
|
90
|
+
/** The `notify::` detail for `name`: the PROPERTY, parsed, not the raw attribute. */
|
|
91
|
+
private _property;
|
|
92
|
+
/** `gtk_video_update_playing` (gtkvideo.c:658-666) — VISIBILITY, not an icon swap. */
|
|
93
|
+
private _updatePlaying;
|
|
94
|
+
/** `gtk_video_update_overlay_icon` (gtkvideo.c:626-646), arm by arm. */
|
|
95
|
+
private _updateOverlayIcon;
|
|
96
|
+
disconnectedCallback(): void;
|
|
97
|
+
}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { type AdwAdjustment } from '@gjsify/adwaita-core';
|
|
2
|
+
/** The two axes a scrollport reports numbers for, in the order GTK declares them. */
|
|
3
|
+
declare const AXES: readonly ["horizontal", "vertical"];
|
|
4
|
+
type Axis = (typeof AXES)[number];
|
|
5
|
+
export declare class GtkViewport extends HTMLElement {
|
|
6
|
+
private _observer;
|
|
7
|
+
private _watch;
|
|
8
|
+
static get observedAttributes(): string[];
|
|
9
|
+
/**
|
|
10
|
+
* `GtkScrollable:hadjustment` — the horizontal position, as the portable value.
|
|
11
|
+
*
|
|
12
|
+
* Computed on read rather than stored: `viewport_set_adjustment_values` reconfigures both
|
|
13
|
+
* axes on every allocation, so there is no state to cache and nothing an author can write.
|
|
14
|
+
*/
|
|
15
|
+
get hadjustment(): AdwAdjustment;
|
|
16
|
+
/** `GtkScrollable:vadjustment` — the vertical position, as the portable value. */
|
|
17
|
+
get vadjustment(): AdwAdjustment;
|
|
18
|
+
/**
|
|
19
|
+
* `GtkViewport:scroll-to-focus` — whether the viewport keeps the focus widget in view.
|
|
20
|
+
* TRUE in the pspec (gtkviewport.c:338-340), and an unknown value is the DEFAULT rather
|
|
21
|
+
* than "off": only the literal `false` turns it off, which is what FALSE in a construct
|
|
22
|
+
* bag means and what a boolean attribute has to spell out to be read at all.
|
|
23
|
+
*/
|
|
24
|
+
get scrollToFocus(): boolean;
|
|
25
|
+
set scrollToFocus(value: boolean);
|
|
26
|
+
connectedCallback(): void;
|
|
27
|
+
disconnectedCallback(): void;
|
|
28
|
+
/**
|
|
29
|
+
* Announce whenever a number the adjustments are made of has changed.
|
|
30
|
+
*
|
|
31
|
+
* GTK reconfigures both axes on every allocation — `viewport_set_adjustment_values` runs
|
|
32
|
+
* out of `size_allocate`, and `gtk_adjustment_configure` compresses the notifications into
|
|
33
|
+
* one. A browser reports the same event as the scrollport's own box changing (this
|
|
34
|
+
* element) and its CONTENT changing (the children), and neither is the other's: a child
|
|
35
|
+
* that grows leaves the viewport's box exactly where it was, which is why BOTH are watched.
|
|
36
|
+
* The content watcher is what makes a scrolled window's bars appear the moment content
|
|
37
|
+
* lands in it, and it is `gtk_widget_queue_resize` on the child propagating upward.
|
|
38
|
+
*/
|
|
39
|
+
private _observe;
|
|
40
|
+
attributeChangedCallback(name: string): void;
|
|
41
|
+
/**
|
|
42
|
+
* `gtk_adjustment_set_value` on one of the viewport's OWN adjustments — the half of a
|
|
43
|
+
* scrolled window's job that moves content rather than deciding whether to.
|
|
44
|
+
*
|
|
45
|
+
* The value is clamped first, which is `set_value`'s documented behaviour ("The value is
|
|
46
|
+
* clamped to lie between lower and upper") and the reason a bar may ask for a position its
|
|
47
|
+
* own range has just outgrown.
|
|
48
|
+
*/
|
|
49
|
+
scrollAxis(axis: Axis, value: number): void;
|
|
50
|
+
/**
|
|
51
|
+
* `gtk_viewport_scroll_to` — move the position so `descendant` is inside the window.
|
|
52
|
+
* `null` asks only for the position to be CLAMPED, which is what a content that shrank
|
|
53
|
+
* needs from a value that was legal a moment ago.
|
|
54
|
+
*
|
|
55
|
+
* GTK animates the move (`gtk_adjustment_animate_to_value`, gtkviewport.c:757-758) for
|
|
56
|
+
* `ANIMATION_DURATION` unless the widget should not animate — the browser's spelling of
|
|
57
|
+
* that setting is `prefers-reduced-motion`, and `scrollIntoView`'s own `behavior` is where
|
|
58
|
+
* the choice belongs.
|
|
59
|
+
*
|
|
60
|
+
* `scrollTo` IS a platform method with an options form, so both are here and the KIND of
|
|
61
|
+
* the argument decides: a node is GTK's `scroll_to(descendant)` and anything else is the
|
|
62
|
+
* scrollport's own `scrollTo(options)`, which this element is (one element for the two
|
|
63
|
+
* GTK nodes is the port's own decision, see the header).
|
|
64
|
+
*/
|
|
65
|
+
scrollTo(descendant: Element | null): void;
|
|
66
|
+
scrollTo(options?: ScrollToOptions): void;
|
|
67
|
+
scrollTo(x: number, y: number): void;
|
|
68
|
+
/** The adjustments of both axes, as the detail of the `value-changed` event. */
|
|
69
|
+
get adjustments(): {
|
|
70
|
+
hadjustment: AdwAdjustment;
|
|
71
|
+
vadjustment: AdwAdjustment;
|
|
72
|
+
};
|
|
73
|
+
/**
|
|
74
|
+
* One event for both adjustments: a browser scroll moves them together, and the C's
|
|
75
|
+
* `GtkAdjustment::value-changed` is a signal of the ADJUSTMENT rather than of the viewport
|
|
76
|
+
* that reads it. Bubbling, so `<gtk-scrolled-window>` hears it without holding a reference
|
|
77
|
+
* to anything in here.
|
|
78
|
+
*/
|
|
79
|
+
private _announce;
|
|
80
|
+
/** `setup_focus_change_handler` / `clear_focus_change_handler`, on one event instead of a root signal. */
|
|
81
|
+
private _bindFocus;
|
|
82
|
+
private _onFocusIn;
|
|
83
|
+
}
|
|
84
|
+
export {};
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/** `Gtk.PackType`, spelled as the GIR's enum nicks (gtkwindowcontrols.c:68). */
|
|
2
|
+
type PackSide = 'start' | 'end';
|
|
3
|
+
/** What a press asks for: the `GtkActionable` action name minus its `window.` prefix. */
|
|
4
|
+
export type WindowAction = 'minimize' | 'toggle-maximized' | 'close';
|
|
5
|
+
export declare class GtkWindowControls extends HTMLElement {
|
|
6
|
+
private _initialized;
|
|
7
|
+
private _empty;
|
|
8
|
+
/** The frame this controls answers to, or `null` outside one (`:257-263`). */
|
|
9
|
+
private _window;
|
|
10
|
+
private _windowObserver;
|
|
11
|
+
static get observedAttributes(): string[];
|
|
12
|
+
/** `Gtk.WindowControls:side` — which half of the decoration layout to build. */
|
|
13
|
+
get side(): PackSide;
|
|
14
|
+
set side(value: PackSide);
|
|
15
|
+
/** `Gtk.WindowControls:use-native-controls` — a macOS-only branch; see KNOWN_GAPS. */
|
|
16
|
+
get useNativeControls(): boolean;
|
|
17
|
+
/**
|
|
18
|
+
* `Gtk.WindowControls:empty` (read-only in GIR). TRUE — the GIR default (:618) — until a
|
|
19
|
+
* render finds a button, which is what happens outside a window.
|
|
20
|
+
*/
|
|
21
|
+
get empty(): boolean;
|
|
22
|
+
/** `setAttribute` for a write that changes nothing; every GObject setter here returns early. */
|
|
23
|
+
private _write;
|
|
24
|
+
connectedCallback(): void;
|
|
25
|
+
disconnectedCallback(): void;
|
|
26
|
+
attributeChangedCallback(name: string): void;
|
|
27
|
+
private _property;
|
|
28
|
+
/**
|
|
29
|
+
* Bind to the frame above, the way `gtk_window_controls_root` binds to the settings and
|
|
30
|
+
* to `notify` on the window (:443-462) — then run the build, which is that handler's
|
|
31
|
+
* first act. Re-established on every connect: a bar moved into another window has a new
|
|
32
|
+
* ancestor, which is why C does it in `root` and drops it in `unroot`.
|
|
33
|
+
*/
|
|
34
|
+
private _followWindow;
|
|
35
|
+
/** `is_sovereign_window` (gtkwindowcontrols.c:272-273): neither modal nor transient. */
|
|
36
|
+
private _isSovereign;
|
|
37
|
+
/**
|
|
38
|
+
* The window property, in ITS polarity. `resizable` and `deletable` default TRUE
|
|
39
|
+
* (gtkwindow.c:893, :1024) and `maximized` defaults FALSE (:1044), so one helper reading
|
|
40
|
+
* them alike would put a maximize button on a window that cannot be maximized — and a
|
|
41
|
+
* restore glyph on every window there is.
|
|
42
|
+
*/
|
|
43
|
+
private _windowFlag;
|
|
44
|
+
/**
|
|
45
|
+
* `get_layout` (gtkwindowcontrols.c:120-176), reduced to what a page can answer: this
|
|
46
|
+
* widget's own value, then the frame's, then GNOME's default. The first ':' splits the
|
|
47
|
+
* layout in two, and a layout with no ':' is the same half on both sides.
|
|
48
|
+
*/
|
|
49
|
+
private _layoutHalf;
|
|
50
|
+
/** `update_window_buttons` (gtkwindowcontrols.c:247-426), token for token. */
|
|
51
|
+
private _render;
|
|
52
|
+
/** Every render writes the class, whether the VALUE moved or not — see {@link _setEmpty}. */
|
|
53
|
+
private _applyEmptyClass;
|
|
54
|
+
/** The one child a token builds, or `null` for the tokens that build nothing here. */
|
|
55
|
+
private _buttonFor;
|
|
56
|
+
/**
|
|
57
|
+
* `update_window_icon` (gtkwindowcontrols.c:187-210): the icon node is `presentation` to
|
|
58
|
+
* an accessibility tree, and it is dropped when the window has no icon — which for a
|
|
59
|
+
* frame means no `icon-name`, the analogue of a window with no `GdkPaintable`.
|
|
60
|
+
*/
|
|
61
|
+
private _windowIcon;
|
|
62
|
+
/**
|
|
63
|
+
* One `GtkButton` with its `GtkImage` child. A plain `<button>` rather than
|
|
64
|
+
* `<gtk-button>`: libadwaita's own rules select `windowcontrols > button > image`
|
|
65
|
+
* (refs/libadwaita/src/stylesheet/widgets/_header-bar.scss:178-202), so the button IS
|
|
66
|
+
* the widget node here, and `<gtk-button>` would wrap a second one inside it.
|
|
67
|
+
*/
|
|
68
|
+
private _controlButton;
|
|
69
|
+
/**
|
|
70
|
+
* `set_empty` (gtkwindowcontrols.c:216-230): a style class, and a notify of its own.
|
|
71
|
+
*
|
|
72
|
+
* The early return is about the NOTIFY, and it is the whole of C's `if (empty ==
|
|
73
|
+
* self->empty) return;`. The CLASS is not part of that comparison here: `empty` starts
|
|
74
|
+
* TRUE, so the first render outside a window is a no-op against C and the widget was
|
|
75
|
+
* left wearing nothing at all — a property whose style class only appears once it has
|
|
76
|
+
* been wrong and then right again.
|
|
77
|
+
*/
|
|
78
|
+
private _setEmpty;
|
|
79
|
+
}
|
|
80
|
+
export {};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/** `GtkTitlebarGesture`'s three gestures, as `perform_titlebar_action` decides them. */
|
|
2
|
+
export type GtkTitlebarGesture = 'double-click' | 'middle-click' | 'right-click';
|
|
3
|
+
/** The settings' own vocabulary, `none` included: "the compositor declined" is one. */
|
|
4
|
+
export type GtkTitlebarAction = 'toggle-maximize' | 'lower' | 'minimize' | 'menu' | 'none';
|
|
5
|
+
export declare class GtkWindowHandle extends HTMLElement {
|
|
6
|
+
/** The gesture in progress, as `priv->drag_start_x` / `_y` are in the C. */
|
|
7
|
+
private _drag;
|
|
8
|
+
/**
|
|
9
|
+
* The three gesture SETTINGS, spelled out.
|
|
10
|
+
*
|
|
11
|
+
* `GESTURES` above names the same three, and the list is written rather than computed
|
|
12
|
+
* from it because `scripts/adwaita-elements.mjs` reads `observedAttributes` as an array
|
|
13
|
+
* LITERAL: a `.map()` over a table reads as an unreadable element there, which is
|
|
14
|
+
* reported as "this reader cannot tell" rather than as the three attributes it is.
|
|
15
|
+
*/
|
|
16
|
+
static get observedAttributes(): string[];
|
|
17
|
+
/** The action one gesture is set to, as the settings are read in C. */
|
|
18
|
+
actionFor(gesture: GtkTitlebarGesture): GtkTitlebarAction;
|
|
19
|
+
connectedCallback(): void;
|
|
20
|
+
disconnectedCallback(): void;
|
|
21
|
+
/**
|
|
22
|
+
* `perform_titlebar_action_fallback`: raise the action GTK would have activated, and
|
|
23
|
+
* then the event NAMED for it.
|
|
24
|
+
*
|
|
25
|
+
* Both fire for every gesture, `none` included: the first is what a consumer reads to
|
|
26
|
+
* know a titlebar was clicked at all — the C's `retval = FALSE`, where the compositor
|
|
27
|
+
* declined, is a fact worth reporting — and the second is what a window host binds to.
|
|
28
|
+
*/
|
|
29
|
+
private _perform;
|
|
30
|
+
private _onClick;
|
|
31
|
+
private _onPointerDown;
|
|
32
|
+
/**
|
|
33
|
+
* `drag_gesture_update_cb`: past the threshold the WINDOW moves, and the sequence is
|
|
34
|
+
* reset so the gesture does not repeat. The move is a compositor operation, so what is
|
|
35
|
+
* emitted is the INTENT, with the pointer's position where GTK hands `begin_move` its
|
|
36
|
+
* own surface coordinates.
|
|
37
|
+
*/
|
|
38
|
+
private _onPointerMove;
|
|
39
|
+
}
|