@gjsify/adwaita-web 0.64.2-next.252 → 0.64.2-next.254

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.
Files changed (293) hide show
  1. package/README.md +10 -80
  2. package/dist/adwaita-web.css +52 -3
  3. package/dist/adwaita-web.css.map +1 -1
  4. package/lib/types/accessible.d.ts +8 -0
  5. package/lib/types/compute-expand.d.ts +5 -0
  6. package/lib/types/compute-expand.spec.d.ts +1 -0
  7. package/lib/types/elements/adw-about-dialog.d.ts +28 -1
  8. package/lib/types/elements/adw-action-row.d.ts +2 -1
  9. package/lib/types/elements/adw-alert-dialog.d.ts +3 -2
  10. package/lib/types/elements/adw-avatar.d.ts +2 -1
  11. package/lib/types/elements/adw-banner.d.ts +2 -1
  12. package/lib/types/elements/adw-bin.d.ts +2 -1
  13. package/lib/types/elements/adw-bottom-sheet.d.ts +5 -4
  14. package/lib/types/elements/adw-breakpoint-bin.d.ts +2 -1
  15. package/lib/types/elements/adw-button-content.d.ts +2 -1
  16. package/lib/types/elements/adw-button-row.d.ts +2 -1
  17. package/lib/types/elements/adw-card.d.ts +2 -1
  18. package/lib/types/elements/adw-carousel.d.ts +20 -3
  19. package/lib/types/elements/adw-clamp-scrollable.d.ts +2 -1
  20. package/lib/types/elements/adw-clamp.d.ts +2 -1
  21. package/lib/types/elements/adw-combo-row.d.ts +6 -1
  22. package/lib/types/elements/adw-data-grid.d.ts +2 -1
  23. package/lib/types/elements/adw-dialog.d.ts +2 -1
  24. package/lib/types/elements/adw-entry-row.d.ts +2 -1
  25. package/lib/types/elements/adw-expander-row.d.ts +2 -1
  26. package/lib/types/elements/adw-header-bar.d.ts +2 -1
  27. package/lib/types/elements/adw-inline-view-switcher.d.ts +3 -2
  28. package/lib/types/elements/adw-layout-slot.d.ts +2 -1
  29. package/lib/types/elements/adw-multi-layout-view.d.ts +2 -1
  30. package/lib/types/elements/adw-navigation-split-view.d.ts +2 -1
  31. package/lib/types/elements/adw-navigation-view.d.ts +3 -2
  32. package/lib/types/elements/adw-overlay-split-view.d.ts +2 -1
  33. package/lib/types/elements/adw-preferences-dialog.d.ts +5 -4
  34. package/lib/types/elements/adw-preferences-group.d.ts +2 -1
  35. package/lib/types/elements/adw-preferences-row.d.ts +2 -1
  36. package/lib/types/elements/adw-shortcut-label.d.ts +2 -1
  37. package/lib/types/elements/adw-shortcuts-item.d.ts +2 -1
  38. package/lib/types/elements/adw-shortcuts-section.d.ts +2 -1
  39. package/lib/types/elements/adw-sidebar.d.ts +4 -3
  40. package/lib/types/elements/adw-spin-row.d.ts +2 -1
  41. package/lib/types/elements/adw-spinner.d.ts +2 -1
  42. package/lib/types/elements/adw-split-button.d.ts +2 -1
  43. package/lib/types/elements/adw-status-page.d.ts +2 -1
  44. package/lib/types/elements/adw-switch-row.d.ts +4 -1
  45. package/lib/types/elements/adw-tab-bar.d.ts +2 -1
  46. package/lib/types/elements/adw-tab-button.d.ts +2 -1
  47. package/lib/types/elements/adw-tab-overview.d.ts +2 -1
  48. package/lib/types/elements/adw-tab-view.d.ts +3 -2
  49. package/lib/types/elements/adw-toast-overlay.d.ts +2 -1
  50. package/lib/types/elements/adw-toggle-group.d.ts +3 -2
  51. package/lib/types/elements/adw-toolbar-view.d.ts +2 -1
  52. package/lib/types/elements/adw-view-stack.d.ts +3 -1
  53. package/lib/types/elements/adw-view-switcher-bar.d.ts +2 -1
  54. package/lib/types/elements/adw-view-switcher-sidebar.d.ts +2 -1
  55. package/lib/types/elements/adw-view-switcher.d.ts +3 -2
  56. package/lib/types/elements/adw-window-title.d.ts +2 -1
  57. package/lib/types/elements/adw-wrap-box.d.ts +2 -1
  58. package/lib/types/elements/checks.d.ts +16 -1
  59. package/lib/types/elements/gtk-action-bar.d.ts +2 -1
  60. package/lib/types/elements/gtk-aspect-frame.d.ts +2 -1
  61. package/lib/types/elements/gtk-box.d.ts +5 -1
  62. package/lib/types/elements/gtk-button.d.ts +5 -7
  63. package/lib/types/elements/gtk-calendar.d.ts +2 -1
  64. package/lib/types/elements/gtk-center-box.d.ts +2 -1
  65. package/lib/types/elements/gtk-color-dialog-button.d.ts +2 -1
  66. package/lib/types/elements/gtk-drag-icon.d.ts +2 -1
  67. package/lib/types/elements/gtk-drawing-area.d.ts +2 -1
  68. package/lib/types/elements/gtk-drop-down.d.ts +2 -1
  69. package/lib/types/elements/gtk-editable-label.d.ts +2 -1
  70. package/lib/types/elements/gtk-entry.d.ts +2 -1
  71. package/lib/types/elements/gtk-expander.d.ts +2 -1
  72. package/lib/types/elements/gtk-fixed.d.ts +2 -1
  73. package/lib/types/elements/gtk-flow-box-child.d.ts +2 -1
  74. package/lib/types/elements/gtk-flow-box.d.ts +2 -1
  75. package/lib/types/elements/gtk-font-dialog-button.d.ts +2 -1
  76. package/lib/types/elements/gtk-frame.d.ts +2 -1
  77. package/lib/types/elements/gtk-gl-area.d.ts +2 -1
  78. package/lib/types/elements/gtk-graphics-offload.d.ts +2 -1
  79. package/lib/types/elements/gtk-grid.d.ts +2 -1
  80. package/lib/types/elements/gtk-header-bar.d.ts +2 -1
  81. package/lib/types/elements/gtk-image.d.ts +5 -6
  82. package/lib/types/elements/gtk-inscription.d.ts +2 -1
  83. package/lib/types/elements/gtk-label.d.ts +10 -3
  84. package/lib/types/elements/gtk-level-bar.d.ts +2 -1
  85. package/lib/types/elements/gtk-list-box-row.d.ts +2 -1
  86. package/lib/types/elements/gtk-list-box.d.ts +2 -1
  87. package/lib/types/elements/gtk-list-view.d.ts +2 -1
  88. package/lib/types/elements/gtk-media-controls.d.ts +2 -1
  89. package/lib/types/elements/gtk-menu-button.d.ts +2 -1
  90. package/lib/types/elements/gtk-notebook.d.ts +2 -1
  91. package/lib/types/elements/gtk-overlay.d.ts +2 -1
  92. package/lib/types/elements/gtk-paned.d.ts +2 -1
  93. package/lib/types/elements/gtk-picture.d.ts +2 -1
  94. package/lib/types/elements/gtk-popover-bin.d.ts +2 -1
  95. package/lib/types/elements/gtk-popover-menu-bar.d.ts +2 -1
  96. package/lib/types/elements/gtk-popover.d.ts +2 -1
  97. package/lib/types/elements/gtk-progress-bar.d.ts +2 -1
  98. package/lib/types/elements/gtk-revealer.d.ts +2 -1
  99. package/lib/types/elements/gtk-scale-button.d.ts +2 -1
  100. package/lib/types/elements/gtk-scale.d.ts +2 -1
  101. package/lib/types/elements/gtk-scrollbar.d.ts +2 -1
  102. package/lib/types/elements/gtk-scrolled-window.d.ts +2 -1
  103. package/lib/types/elements/gtk-search-bar.d.ts +2 -1
  104. package/lib/types/elements/gtk-separator.d.ts +2 -1
  105. package/lib/types/elements/gtk-spin-button.d.ts +2 -1
  106. package/lib/types/elements/gtk-spinner.d.ts +2 -1
  107. package/lib/types/elements/gtk-stack-page.d.ts +2 -1
  108. package/lib/types/elements/gtk-stack-sidebar.d.ts +2 -1
  109. package/lib/types/elements/gtk-stack-switcher.d.ts +2 -1
  110. package/lib/types/elements/gtk-stack.d.ts +2 -1
  111. package/lib/types/elements/gtk-switch.d.ts +2 -1
  112. package/lib/types/elements/gtk-text-view.d.ts +2 -1
  113. package/lib/types/elements/gtk-text.d.ts +2 -1
  114. package/lib/types/elements/gtk-tree-expander.d.ts +2 -1
  115. package/lib/types/elements/gtk-video.d.ts +2 -1
  116. package/lib/types/elements/gtk-viewport.d.ts +2 -1
  117. package/lib/types/elements/gtk-window-controls.d.ts +2 -1
  118. package/lib/types/elements/gtk-window-handle.d.ts +2 -1
  119. package/lib/types/elements/gtk-window.d.ts +2 -1
  120. package/lib/types/gobject-elements.d.ts +7 -1
  121. package/lib/types/gtksource/gtk-source-view.d.ts +2 -1
  122. package/lib/types/{icon-registry.spec.d.ts → icon-masks.spec.d.ts} +1 -1
  123. package/lib/types/icon-theme.d.ts +15 -35
  124. package/lib/types/index.d.ts +1 -2
  125. package/lib/types/namespace/gdk.d.ts +1 -0
  126. package/lib/types/namespace/gio.d.ts +1 -0
  127. package/lib/types/namespace/glib.d.ts +2 -1
  128. package/lib/types/signals.d.ts +5 -1
  129. package/lib/types/source-view/adw-source-view.d.ts +2 -1
  130. package/lib/types/styles.generated.d.ts +1 -1
  131. package/lib/types/widget-element.d.ts +25 -0
  132. package/lib/types/widget-map.spec.d.ts +1 -0
  133. package/lib/types/widget-mapping.d.ts +7 -0
  134. package/package.json +12 -12
  135. package/scss/_about_dialog.scss +46 -1
  136. package/scss/_checks.scss +5 -2
  137. package/scss/_icon.scss +3 -4
  138. package/scss/_labels.scss +2 -2
  139. package/scss/_overlay_split_view.scss +10 -0
  140. package/scss/_scrolled_window.scss +15 -0
  141. package/scss/_widget.scss +5 -1
  142. package/src/accessible.ts +29 -0
  143. package/src/adw-about-dialog.spec.ts +81 -12
  144. package/src/adw-action-rows.spec.ts +2 -2
  145. package/src/adw-button-content.spec.ts +1 -1
  146. package/src/adw-carousel.spec.ts +49 -1
  147. package/src/capabilities.mjs +1 -0
  148. package/src/checks.spec.ts +51 -1
  149. package/src/compute-expand.spec.ts +186 -0
  150. package/src/compute-expand.ts +134 -0
  151. package/src/construct-vectors.spec.ts +46 -1
  152. package/src/elements/adw-about-dialog.ts +152 -9
  153. package/src/elements/adw-action-row.ts +2 -1
  154. package/src/elements/adw-alert-dialog.ts +3 -2
  155. package/src/elements/adw-avatar.ts +2 -1
  156. package/src/elements/adw-banner.ts +2 -1
  157. package/src/elements/adw-bin.ts +2 -1
  158. package/src/elements/adw-bottom-sheet.ts +5 -4
  159. package/src/elements/adw-breakpoint-bin.ts +2 -1
  160. package/src/elements/adw-button-content.ts +2 -1
  161. package/src/elements/adw-button-row.ts +2 -1
  162. package/src/elements/adw-card.ts +2 -1
  163. package/src/elements/adw-carousel.ts +62 -3
  164. package/src/elements/adw-clamp-scrollable.ts +2 -1
  165. package/src/elements/adw-clamp.ts +2 -1
  166. package/src/elements/adw-combo-row.ts +15 -1
  167. package/src/elements/adw-data-grid.ts +2 -1
  168. package/src/elements/adw-dialog.ts +2 -1
  169. package/src/elements/adw-entry-row.ts +2 -1
  170. package/src/elements/adw-expander-row.ts +2 -1
  171. package/src/elements/adw-header-bar.ts +2 -1
  172. package/src/elements/adw-inline-view-switcher.ts +3 -2
  173. package/src/elements/adw-layout-slot.ts +2 -1
  174. package/src/elements/adw-multi-layout-view.ts +2 -1
  175. package/src/elements/adw-navigation-split-view.ts +2 -1
  176. package/src/elements/adw-navigation-view.ts +3 -2
  177. package/src/elements/adw-overlay-split-view.ts +2 -1
  178. package/src/elements/adw-preferences-dialog.ts +6 -4
  179. package/src/elements/adw-preferences-group.ts +2 -1
  180. package/src/elements/adw-preferences-row.ts +2 -1
  181. package/src/elements/adw-shortcut-label.ts +2 -1
  182. package/src/elements/adw-shortcuts-item.ts +2 -1
  183. package/src/elements/adw-shortcuts-section.ts +2 -1
  184. package/src/elements/adw-sidebar.ts +4 -3
  185. package/src/elements/adw-spin-row.ts +2 -1
  186. package/src/elements/adw-spinner.ts +2 -1
  187. package/src/elements/adw-split-button.ts +2 -1
  188. package/src/elements/adw-status-page.ts +2 -1
  189. package/src/elements/adw-switch-row.ts +10 -1
  190. package/src/elements/adw-tab-bar.ts +2 -1
  191. package/src/elements/adw-tab-button.ts +2 -1
  192. package/src/elements/adw-tab-overview.ts +2 -1
  193. package/src/elements/adw-tab-view.ts +3 -2
  194. package/src/elements/adw-toast-overlay.ts +2 -1
  195. package/src/elements/adw-toggle-group.ts +3 -2
  196. package/src/elements/adw-toolbar-view.ts +2 -1
  197. package/src/elements/adw-view-stack.ts +39 -1
  198. package/src/elements/adw-view-switcher-bar.ts +2 -1
  199. package/src/elements/adw-view-switcher-sidebar.ts +2 -1
  200. package/src/elements/adw-view-switcher.ts +3 -2
  201. package/src/elements/adw-window-title.ts +2 -1
  202. package/src/elements/adw-wrap-box.ts +2 -1
  203. package/src/elements/checks.ts +85 -6
  204. package/src/elements/gtk-action-bar.ts +2 -1
  205. package/src/elements/gtk-aspect-frame.ts +2 -1
  206. package/src/elements/gtk-box.ts +56 -1
  207. package/src/elements/gtk-button.ts +10 -22
  208. package/src/elements/gtk-calendar.ts +2 -1
  209. package/src/elements/gtk-center-box.ts +2 -1
  210. package/src/elements/gtk-color-dialog-button.ts +2 -1
  211. package/src/elements/gtk-drag-icon.ts +2 -1
  212. package/src/elements/gtk-drawing-area.ts +2 -1
  213. package/src/elements/gtk-drop-down.ts +2 -1
  214. package/src/elements/gtk-editable-label.ts +2 -1
  215. package/src/elements/gtk-entry.ts +2 -1
  216. package/src/elements/gtk-expander.ts +2 -1
  217. package/src/elements/gtk-fixed.ts +2 -1
  218. package/src/elements/gtk-flow-box-child.ts +2 -1
  219. package/src/elements/gtk-flow-box.ts +2 -1
  220. package/src/elements/gtk-font-dialog-button.ts +2 -1
  221. package/src/elements/gtk-frame.ts +2 -1
  222. package/src/elements/gtk-gl-area.ts +2 -1
  223. package/src/elements/gtk-graphics-offload.ts +2 -1
  224. package/src/elements/gtk-grid.ts +2 -1
  225. package/src/elements/gtk-header-bar.ts +2 -1
  226. package/src/elements/gtk-image.ts +14 -15
  227. package/src/elements/gtk-inscription.ts +2 -1
  228. package/src/elements/gtk-label.ts +12 -5
  229. package/src/elements/gtk-level-bar.ts +2 -1
  230. package/src/elements/gtk-list-box-row.ts +2 -1
  231. package/src/elements/gtk-list-box.ts +2 -1
  232. package/src/elements/gtk-list-view.ts +2 -1
  233. package/src/elements/gtk-media-controls.ts +2 -1
  234. package/src/elements/gtk-menu-button.ts +2 -1
  235. package/src/elements/gtk-notebook.ts +2 -1
  236. package/src/elements/gtk-overlay.ts +2 -1
  237. package/src/elements/gtk-paned.ts +2 -1
  238. package/src/elements/gtk-picture.ts +2 -1
  239. package/src/elements/gtk-popover-bin.ts +2 -1
  240. package/src/elements/gtk-popover-menu-bar.ts +2 -1
  241. package/src/elements/gtk-popover.ts +2 -1
  242. package/src/elements/gtk-progress-bar.ts +2 -1
  243. package/src/elements/gtk-revealer.ts +2 -1
  244. package/src/elements/gtk-scale-button.ts +2 -1
  245. package/src/elements/gtk-scale.ts +2 -1
  246. package/src/elements/gtk-scrollbar.ts +2 -1
  247. package/src/elements/gtk-scrolled-window.ts +8 -5
  248. package/src/elements/gtk-search-bar.ts +2 -1
  249. package/src/elements/gtk-separator.ts +2 -1
  250. package/src/elements/gtk-spin-button.ts +2 -1
  251. package/src/elements/gtk-spinner.ts +2 -1
  252. package/src/elements/gtk-stack-page.ts +2 -1
  253. package/src/elements/gtk-stack-sidebar.ts +2 -1
  254. package/src/elements/gtk-stack-switcher.ts +2 -1
  255. package/src/elements/gtk-stack.ts +2 -1
  256. package/src/elements/gtk-switch.ts +2 -1
  257. package/src/elements/gtk-text-view.ts +2 -1
  258. package/src/elements/gtk-text.ts +2 -1
  259. package/src/elements/gtk-tree-expander.ts +2 -1
  260. package/src/elements/gtk-video.ts +2 -1
  261. package/src/elements/gtk-viewport.ts +2 -1
  262. package/src/elements/gtk-window-controls.ts +2 -1
  263. package/src/elements/gtk-window-handle.ts +2 -1
  264. package/src/elements/gtk-window.ts +2 -1
  265. package/src/gio.spec.ts +13 -3
  266. package/src/glib.spec.ts +9 -0
  267. package/src/gobject-elements.ts +18 -4
  268. package/src/gtk-label.spec.ts +39 -0
  269. package/src/gtk-scrolled-window.spec.ts +6 -6
  270. package/src/gtk-value-doors.spec.ts +19 -0
  271. package/src/gtk-window.spec.ts +2 -2
  272. package/src/gtksource/gtk-source-view.ts +2 -1
  273. package/src/{icon-registry.spec.ts → icon-masks.spec.ts} +4 -100
  274. package/src/icon-theme.spec.ts +69 -124
  275. package/src/icon-theme.ts +29 -119
  276. package/src/index.ts +3 -7
  277. package/src/namespace/gdk.ts +1 -0
  278. package/src/namespace/gio.ts +8 -0
  279. package/src/namespace/glib.ts +4 -0
  280. package/src/shared-tree-builder.ts +26 -3
  281. package/src/signals.ts +11 -2
  282. package/src/source-view/adw-source-view.ts +2 -1
  283. package/src/split-button.spec.ts +1 -1
  284. package/src/style-manager.spec.ts +13 -0
  285. package/src/style-manager.ts +6 -0
  286. package/src/styles.generated.ts +1 -1
  287. package/src/test.browser.mts +6 -2
  288. package/src/widget-element.ts +75 -0
  289. package/src/widget-map.spec.ts +116 -0
  290. package/src/widget-mapping.ts +100 -0
  291. package/src/widget-visible.spec.ts +44 -0
  292. package/lib/types/icon-registry.d.ts +0 -37
  293. package/src/icon-registry.ts +0 -163
@@ -1,6 +1,7 @@
1
1
  import type { Toast, ToastScheduler } from '@gjsify/adwaita-core';
2
+ import { WidgetElement } from '../widget-element.js';
2
3
  export type { ToastScheduler, ToastTimerHandle } from '@gjsify/adwaita-core';
3
- export declare class AdwToastOverlay extends HTMLElement {
4
+ export declare class AdwToastOverlay extends WidgetElement {
4
5
  private _toasts;
5
6
  private _initialized;
6
7
  /** The headless queue of `adw-toast-overlay.c` (ADR 0004). */
@@ -1,9 +1,10 @@
1
+ import { WidgetElement } from '../widget-element.js';
1
2
  /** A single toggle. Children of <adw-toggle-group>; consumed at connect time. */
2
- export declare class AdwToggle extends HTMLElement {
3
+ export declare class AdwToggle extends WidgetElement {
3
4
  static get observedAttributes(): string[];
4
5
  attributeChangedCallback(name: string, oldValue: string | null, newValue: string | null): void;
5
6
  }
6
- export declare class AdwToggleGroup extends HTMLElement {
7
+ export declare class AdwToggleGroup extends WidgetElement {
7
8
  private _innerEl;
8
9
  private _buttons;
9
10
  /** The headless segment list + guarded selection state machine (ADR 0004). */
@@ -1,4 +1,5 @@
1
- export declare class AdwToolbarView extends HTMLElement {
1
+ import { WidgetElement } from '../widget-element.js';
2
+ export declare class AdwToolbarView extends WidgetElement {
2
3
  private _topEl;
3
4
  private _contentEl;
4
5
  private _bottomEl;
@@ -1,7 +1,8 @@
1
1
  import type { AdwViewStackPageInfo as CorePageInfo } from '@gjsify/adwaita-core';
2
2
  import type { DispatchedSignals } from '../signals.js';
3
+ import { WidgetElement } from '../widget-element.js';
3
4
  export type AdwViewStackPageInfo = CorePageInfo<HTMLElement>;
4
- export declare class AdwViewStack extends HTMLElement {
5
+ export declare class AdwViewStack extends WidgetElement {
5
6
  /** The GTK signals this element dispatches, each with the DOM event it arrives as (ADR 0093). */
6
7
  static readonly signals: DispatchedSignals;
7
8
  private readonly _state;
@@ -60,6 +61,7 @@ export declare class AdwViewStack extends HTMLElement {
60
61
  */
61
62
  private _emitItemsChanged;
62
63
  private _onStateChange;
64
+ private _onChildrenRemoved;
63
65
  private _applyVisibility;
64
66
  private _reflectName;
65
67
  }
@@ -1,5 +1,6 @@
1
1
  import type { AdwViewStack } from './adw-view-stack.js';
2
- export declare class AdwViewSwitcherBar extends HTMLElement {
2
+ import { WidgetElement } from '../widget-element.js';
3
+ export declare class AdwViewSwitcherBar extends WidgetElement {
3
4
  private readonly _barState;
4
5
  private _barEl;
5
6
  private _nodes;
@@ -1,6 +1,7 @@
1
1
  import type { SidebarItemFilter } from '@gjsify/adwaita-core';
2
2
  import type { AdwViewStack } from './adw-view-stack.js';
3
- export declare class AdwViewSwitcherSidebar extends HTMLElement {
3
+ import { WidgetElement } from '../widget-element.js';
4
+ export declare class AdwViewSwitcherSidebar extends WidgetElement {
4
5
  private _sidebar;
5
6
  private _placeholderEl;
6
7
  private _prefixEl;
@@ -1,5 +1,6 @@
1
1
  import type { ViewSwitcherScheduler } from '@gjsify/adwaita-core';
2
2
  import type { AdwViewSwitcherPage as AdwViewSwitcherPageInfo, AdwViewSwitcherPolicy } from '@gjsify/adwaita-core';
3
+ import { WidgetElement } from '../widget-element.js';
3
4
  /**
4
5
  * A single page. Children of `<adw-view-switcher>`; consumed at connect time.
5
6
  *
@@ -9,9 +10,9 @@ import type { AdwViewSwitcherPage as AdwViewSwitcherPageInfo, AdwViewSwitcherPol
9
10
  * switcher watches them with a `MutationObserver` instead — the DOM stand-in for
10
11
  * the per-page `notify` C rebinds on.
11
12
  */
12
- export declare class AdwViewSwitcherPage extends HTMLElement {
13
+ export declare class AdwViewSwitcherPage extends WidgetElement {
13
14
  }
14
- export declare class AdwViewSwitcher extends HTMLElement {
15
+ export declare class AdwViewSwitcher extends WidgetElement {
15
16
  /**
16
17
  * The dwell timer, injectable so a test can hand in a clock and drive
17
18
  * `VIEW_SWITCHER_DRAG_VECTORS` against the real element. Replace it before the
@@ -1,4 +1,5 @@
1
- export declare class AdwWindowTitle extends HTMLElement {
1
+ import { WidgetElement } from '../widget-element.js';
2
+ export declare class AdwWindowTitle extends WidgetElement {
2
3
  private _titleEl;
3
4
  private _subtitleEl;
4
5
  /** The headless title/subtitle pair + change detection (ADR 0004). */
@@ -1,5 +1,6 @@
1
1
  import { type AdwLengthUnit } from '@gjsify/adwaita-core';
2
- export declare class AdwWrapBox extends HTMLElement {
2
+ import { WidgetElement } from '../widget-element.js';
3
+ export declare class AdwWrapBox extends WidgetElement {
3
4
  private _initialized;
4
5
  static get observedAttributes(): ("orientation" | "align" | "child-spacing" | "child-spacing-unit" | "pack-direction" | "justify" | "justify-last-line" | "line-spacing" | "line-spacing-unit" | "line-homogeneous" | "natural-line-length" | "natural-line-length-unit" | "wrap-reverse" | "wrap-policy")[];
5
6
  /** Spacing between children on the same line, in `child-spacing-unit`. */
@@ -1,4 +1,5 @@
1
1
  import type { DispatchedSignals } from '../signals.js';
2
+ import { WidgetElement } from '../widget-element.js';
2
3
  /**
3
4
  * The markup + state shared by `<gtk-check-button>` and `<adw-radio>`.
4
5
  *
@@ -7,7 +8,7 @@ import type { DispatchedSignals } from '../signals.js';
7
8
  * `.adw-check-indicator` and `.adw-check-label`, which are the Adwaita SKIN, and the
8
9
  * skin is not what the tag names. It is also not a widget — nothing registers it.
9
10
  */
10
- declare abstract class AdwCheckBase extends HTMLElement {
11
+ declare abstract class AdwCheckBase extends WidgetElement {
11
12
  protected _input: HTMLInputElement;
12
13
  protected _indicator: HTMLSpanElement;
13
14
  protected _label: HTMLSpanElement;
@@ -41,6 +42,20 @@ export declare class GtkCheckButton extends AdwCheckBase {
41
42
  static readonly signals: DispatchedSignals;
42
43
  static get observedAttributes(): string[];
43
44
  protected get inputType(): 'checkbox';
45
+ /**
46
+ * `Gtk.CheckButton:group`, WRITE-ONLY as in GTK (`G_PARAM_WRITABLE`, gtkcheckbutton.c:665-668):
47
+ * another check button, or its id as a projected `.blp` writes it, or `null` to leave.
48
+ */
49
+ set group(value: GtkCheckButton | string | null);
50
+ /** `gtk_check_button_set_group`. */
51
+ set_group(group: GtkCheckButton | null): void;
52
+ get_active(): boolean;
53
+ set_active(active: boolean): void;
54
+ attributeChangedCallback(name: string): void;
55
+ protected onConnected(): void;
56
+ /** The `group` attribute names a check button by id, looked up once the tree is in a document. */
57
+ private _resolveGroup;
58
+ protected render(): void;
44
59
  protected activate(): void;
45
60
  }
46
61
  /** The Adwaita radio — `checkbutton > radio`, exclusive within its `name`. */
@@ -1,4 +1,5 @@
1
- export declare class GtkActionBar extends HTMLElement {
1
+ import { WidgetElement } from '../widget-element.js';
2
+ export declare class GtkActionBar extends WidgetElement {
2
3
  private _initialized;
3
4
  private _startEl;
4
5
  private _centerEl;
@@ -1,4 +1,5 @@
1
- export declare class GtkAspectFrame extends HTMLElement {
1
+ import { WidgetElement } from '../widget-element.js';
2
+ export declare class GtkAspectFrame extends WidgetElement {
2
3
  static get observedAttributes(): string[];
3
4
  /** `Gtk.AspectFrame:ratio` — the width/height of the child. Ignored under `obey-child`. */
4
5
  get ratio(): number;
@@ -1,5 +1,7 @@
1
1
  import { type BoxOrientation } from '@gjsify/adwaita-core';
2
- export declare class GtkBox extends HTMLElement {
2
+ import { WidgetElement } from '../widget-element.js';
3
+ export declare class GtkBox extends WidgetElement {
4
+ private _expandObserver;
3
5
  static get observedAttributes(): ("spacing" | "orientation" | "homogeneous")[];
4
6
  /** `GtkOrientable:orientation` — `horizontal` (the default) or `vertical`. */
5
7
  get orientation(): BoxOrientation;
@@ -11,7 +13,9 @@ export declare class GtkBox extends HTMLElement {
11
13
  get homogeneous(): boolean;
12
14
  set homogeneous(value: boolean);
13
15
  connectedCallback(): void;
16
+ disconnectedCallback(): void;
14
17
  attributeChangedCallback(name: string, old: string | null, value: string | null): void;
15
18
  private _normalized;
16
19
  private _sync;
20
+ private _syncComputedExpand;
17
21
  }
@@ -1,5 +1,6 @@
1
1
  import type { DispatchedSignals } from '../signals.js';
2
- export declare class GtkButton extends HTMLElement {
2
+ import { TooltipElement } from '../widget-element.js';
3
+ export declare class GtkButton extends TooltipElement {
3
4
  /** The GTK signals this element dispatches, each with the DOM event it arrives as (ADR 0093). */
4
5
  static readonly signals: DispatchedSignals;
5
6
  private _button;
@@ -9,17 +10,14 @@ export declare class GtkButton extends HTMLElement {
9
10
  private _child;
10
11
  static get observedAttributes(): string[];
11
12
  /**
12
- * `Gtk.Button:icon-name` and `Gtk.Widget:tooltip-text`, the GObject spellings: a class that
13
- * holds a button as a template child writes `button.icon_name = …`, which must reach the DOM.
13
+ * `Gtk.Button:icon-name`, the GObject spelling: a class that holds a button as a template
14
+ * child writes `button.icon_name = …`, which must reach the DOM. `Gtk.Widget:tooltip-text`
15
+ * comes from `TooltipElement`.
14
16
  */
15
17
  get icon_name(): string | null;
16
18
  set icon_name(value: string | null);
17
19
  get iconName(): string | null;
18
20
  set iconName(value: string | null);
19
- get tooltip_text(): string | null;
20
- set tooltip_text(value: string | null);
21
- get tooltipText(): string | null;
22
- set tooltipText(value: string | null);
23
21
  private reflect;
24
22
  /** The inner native button (for focus/imperative access). */
25
23
  get button(): HTMLButtonElement;
@@ -1,5 +1,6 @@
1
1
  import { type AdwCalendarCell, type AdwCalendarDate } from '@gjsify/adwaita-core';
2
- export declare class GtkCalendar extends HTMLElement {
2
+ import { WidgetElement } from '../widget-element.js';
3
+ export declare class GtkCalendar extends WidgetElement {
3
4
  private _headerEl;
4
5
  private _monthEl;
5
6
  private _yearEl;
@@ -1,3 +1,4 @@
1
+ import { WidgetElement } from '../widget-element.js';
1
2
  /** `Gtk.BaselinePosition`'s three nicks, in the order GTK measures them (gtkcenterbox.c:267-271). */
2
3
  declare const BASELINE_POSITIONS: {
3
4
  readonly top: 0;
@@ -5,7 +6,7 @@ declare const BASELINE_POSITIONS: {
5
6
  readonly bottom: 1;
6
7
  };
7
8
  export type BaselinePosition = keyof typeof BASELINE_POSITIONS;
8
- export declare class GtkCenterBox extends HTMLElement {
9
+ export declare class GtkCenterBox extends WidgetElement {
9
10
  static get observedAttributes(): string[];
10
11
  /**
11
12
  * `Gtk.CenterBox:baseline-position` — `top`, `center` (the pspec default) or `bottom`.
@@ -1,3 +1,4 @@
1
+ import { WidgetElement } from '../widget-element.js';
1
2
  /** A `GdkRGBA` — the four channels of `GtkColorDialogButton:rgba`, each 0…1. */
2
3
  export interface GdkRgbaValue {
3
4
  red: number;
@@ -17,7 +18,7 @@ export interface ColorDialogParameters {
17
18
  /** Whether colours may carry alpha. Default `TRUE`, as in the GIR. */
18
19
  withAlpha?: boolean;
19
20
  }
20
- export declare class GtkColorDialogButton extends HTMLElement {
21
+ export declare class GtkColorDialogButton extends WidgetElement {
21
22
  private _buttonEl;
22
23
  private _swatchEl;
23
24
  private _inputEl;
@@ -1,3 +1,4 @@
1
+ import { WidgetElement } from '../widget-element.js';
1
2
  /** The `rgba()` string a `GdkRGBA` value paints, as the colour swatch shows it. */
2
3
  interface Rgba {
3
4
  readonly red: number;
@@ -5,7 +6,7 @@ interface Rgba {
5
6
  readonly blue: number;
6
7
  readonly alpha?: number;
7
8
  }
8
- export declare class GtkDragIcon extends HTMLElement {
9
+ export declare class GtkDragIcon extends WidgetElement {
9
10
  private _pointerX;
10
11
  private _pointerY;
11
12
  private _dragging;
@@ -1,3 +1,4 @@
1
+ import { WidgetElement } from '../widget-element.js';
1
2
  /**
2
3
  * `GtkDrawingAreaDrawFunc` with the `user_data` / `destroy` pair dropped — see the header.
3
4
  *
@@ -7,7 +8,7 @@
7
8
  * @param height the height of the allocation — NOT of `content-height`
8
9
  */
9
10
  export type GtkDrawingAreaDrawFunc = (area: GtkDrawingArea, cr: CanvasRenderingContext2D, width: number, height: number) => void;
10
- export declare class GtkDrawingArea extends HTMLElement {
11
+ export declare class GtkDrawingArea extends WidgetElement {
11
12
  private _canvas;
12
13
  private _context;
13
14
  private _initialized;
@@ -1,13 +1,14 @@
1
1
  import './gtk-popover.js';
2
2
  import type { AdwComboOption, AdwListModelInput } from '@gjsify/adwaita-core';
3
3
  import type { DispatchedSignals } from '../signals.js';
4
+ import { WidgetElement } from '../widget-element.js';
4
5
  /**
5
6
  * A dropdown option — `value` is the stable id, `label` the shown text. An alias of
6
7
  * core's {@link AdwComboOption}, since the drop-down and the combo row are the same
7
8
  * selection model behind two chromes; still exported so the published name keeps working.
8
9
  */
9
10
  export type GtkDropDownOption = AdwComboOption;
10
- export declare class GtkDropDown extends HTMLElement {
11
+ export declare class GtkDropDown extends WidgetElement {
11
12
  /** The GTK signals this element dispatches, each with the DOM event it arrives as (ADR 0093). */
12
13
  static readonly signals: DispatchedSignals;
13
14
  private _buttonEl;
@@ -1,4 +1,5 @@
1
- export declare class GtkEditableLabel extends HTMLElement {
1
+ import { WidgetElement } from '../widget-element.js';
2
+ export declare class GtkEditableLabel extends WidgetElement {
2
3
  private _label;
3
4
  private _entry;
4
5
  private _initialized;
@@ -1,5 +1,6 @@
1
1
  import type { DispatchedSignals } from '../signals.js';
2
- export declare class GtkEntry extends HTMLElement {
2
+ import { WidgetElement } from '../widget-element.js';
3
+ export declare class GtkEntry extends WidgetElement {
3
4
  /**
4
5
  * `protected`, not `private`: `GtkPasswordEntry` and `GtkSearchEntry` subclass this
5
6
  * element and restyle or wrap the very input it builds (the password field's Caps Lock
@@ -1,5 +1,6 @@
1
1
  import './gtk-label.js';
2
- export declare class GtkExpander extends HTMLElement {
2
+ import { WidgetElement } from '../widget-element.js';
3
+ export declare class GtkExpander extends WidgetElement {
3
4
  private _box;
4
5
  private _titleEl;
5
6
  private _arrowEl;
@@ -1,4 +1,5 @@
1
- export declare class GtkFixed extends HTMLElement {
1
+ import { WidgetElement } from '../widget-element.js';
2
+ export declare class GtkFixed extends WidgetElement {
2
3
  private _resize;
3
4
  private _mutations;
4
5
  connectedCallback(): void;
@@ -1,4 +1,5 @@
1
- export declare class GtkFlowBoxChild extends HTMLElement {
1
+ import { WidgetElement } from '../widget-element.js';
2
+ export declare class GtkFlowBoxChild extends WidgetElement {
2
3
  private _contentsEl;
3
4
  private _initialized;
4
5
  connectedCallback(): void;
@@ -1,11 +1,12 @@
1
1
  import { type AdwBoxSelectionMode } from '@gjsify/adwaita-core';
2
2
  import type { GtkFlowBoxChild } from './gtk-flow-box-child.js';
3
3
  import './gtk-flow-box-child.js';
4
+ import { WidgetElement } from '../widget-element.js';
4
5
  /** `GtkFlowBox:max-children-per-line`'s default — `DEFAULT_MAX_CHILDREN_PER_LINE` (:728). */
5
6
  export declare const ADW_FLOW_BOX_MAX_CHILDREN_PER_LINE = 7;
6
7
  /** `GtkFlowBox:orientation` — HORIZONTAL by default here, unlike a `GtkListBase` (:3981). */
7
8
  export type AdwFlowBoxOrientation = 'horizontal' | 'vertical';
8
- export declare class GtkFlowBox extends HTMLElement {
9
+ export declare class GtkFlowBox extends WidgetElement {
9
10
  private _children;
10
11
  private _selection;
11
12
  /** `priv->selected_child`, `-1` for the C's NULL. */
@@ -1,6 +1,7 @@
1
1
  import { type PangoFontDescription } from '../font-description.js';
2
2
  import './gtk-popover.js';
3
3
  import './gtk-separator.js';
4
+ import { WidgetElement } from '../widget-element.js';
4
5
  /** `GtkFontLevel`'s four values, under the nicks a string property carries. */
5
6
  export type FontLevel = 'family' | 'face' | 'font' | 'features';
6
7
  /** `GtkFontDialog`'s own parameters; `font-map` has no browser counterpart and is absent. */
@@ -14,7 +15,7 @@ export interface FontDialogParameters {
14
15
  /** Whether only scalable fonts are offered. */
15
16
  filter?: number;
16
17
  }
17
- export declare class GtkFontDialogButton extends HTMLElement {
18
+ export declare class GtkFontDialogButton extends WidgetElement {
18
19
  private _buttonEl;
19
20
  private _labelEl;
20
21
  private _sizeBoxEl;
@@ -1,4 +1,5 @@
1
- export declare class GtkFrame extends HTMLElement {
1
+ import { WidgetElement } from '../widget-element.js';
2
+ export declare class GtkFrame extends WidgetElement {
2
3
  private _mutations;
3
4
  static get observedAttributes(): string[];
4
5
  /** The element's own `<gtk-label>`, built from `label` — null while no string is set. */
@@ -1,9 +1,10 @@
1
+ import { WidgetElement } from '../widget-element.js';
1
2
  /** `GdkGLAPI`'s nicks, as `GdkGLAPINickSet` spells them. */
2
3
  declare const APIS: readonly ["gl", "gles"];
3
4
  type GlApi = (typeof APIS)[number];
4
5
  /** A WebGL context, whichever version the browser handed out. */
5
6
  type GlContext = WebGLRenderingContext | WebGL2RenderingContext;
6
- export declare class GtkGLArea extends HTMLElement {
7
+ export declare class GtkGLArea extends WidgetElement {
7
8
  private _canvas;
8
9
  private _messageEl;
9
10
  private _initialized;
@@ -1,6 +1,7 @@
1
+ import { WidgetElement } from '../widget-element.js';
1
2
  /** `GtkGraphicsOffloadEnabled`, spelled as the GIR's enum nicks. */
2
3
  type OffloadEnabled = 'enabled' | 'disabled';
3
- export declare class GtkGraphicsOffload extends HTMLElement {
4
+ export declare class GtkGraphicsOffload extends WidgetElement {
4
5
  private _childEl;
5
6
  private _initialized;
6
7
  static get observedAttributes(): string[];
@@ -1,5 +1,6 @@
1
1
  import { type BoxOrientation } from '@gjsify/adwaita-core';
2
- export declare class GtkGrid extends HTMLElement {
2
+ import { WidgetElement } from '../widget-element.js';
3
+ export declare class GtkGrid extends WidgetElement {
3
4
  static get observedAttributes(): string[];
4
5
  /** `Gtk.Grid:column-spacing` — the gap between two consecutive columns. Defaults to 0. */
5
6
  get columnSpacing(): number;
@@ -1,5 +1,6 @@
1
1
  import './gtk-window-controls.js';
2
- export declare class GtkHeaderBar extends HTMLElement {
2
+ import { WidgetElement } from '../widget-element.js';
3
+ export declare class GtkHeaderBar extends WidgetElement {
3
4
  private _initialized;
4
5
  private _handle;
5
6
  private _box;
@@ -1,7 +1,6 @@
1
+ import { WidgetElement } from '../widget-element.js';
1
2
  /**
2
- * The generated mask-class prefix — the one place the `--` spelling appears. `icon-registry`
3
- * builds the same class for a runtime registration and imports it from here rather than
4
- * spelling it twice.
3
+ * The generated mask-class prefix — the one place the `--` spelling appears.
5
4
  */
6
5
  export declare const MASK_CLASS_PREFIX = "adw-icon--";
7
6
  /**
@@ -16,15 +15,15 @@ export declare const MISSING_ICON_NAME = "image-missing";
16
15
  * as "a mask is applied", and a colour icon has none.
17
16
  */
18
17
  export declare const COLOR_ICON_CLASS = "adw-icon-color";
19
- export declare class GtkImage extends HTMLElement {
18
+ export declare class GtkImage extends WidgetElement {
20
19
  static get observedAttributes(): string[];
21
20
  /** The declared symbolic name, `-symbolic` suffix optional. */
22
21
  get iconName(): string;
23
22
  set iconName(value: string | null);
24
23
  /**
25
24
  * The name the SYMBOLIC lookup works with — `''` when the icon-name is absent, empty,
26
- * or not usable as one CSS token. A registered colour icon can still draw for a name
27
- * that answers `''` here (`org.gnome.Builder`); whether a name draws anything but
25
+ * or not usable as one CSS token. A resource file can still draw for a name that
26
+ * answers `''` here (`org.gnome.Builder`); whether a name draws anything but
28
27
  * `image-missing` is `isIconAvailable`'s question.
29
28
  *
30
29
  * `''` does NOT mean the box draws nothing: an unusable name that was given still
@@ -1,4 +1,5 @@
1
1
  import { type LabelWrapMode } from '@gjsify/adwaita-core';
2
+ import { WidgetElement } from '../widget-element.js';
2
3
  /** `GtkInscriptionOverflow`, in enum order (gtkinscription.h:44-48). */
3
4
  export declare const INSCRIPTION_OVERFLOW_MODES: readonly ["clip", "ellipsize-start", "ellipsize-middle", "ellipsize-end"];
4
5
  export type InscriptionOverflow = (typeof INSCRIPTION_OVERFLOW_MODES)[number];
@@ -15,7 +16,7 @@ export declare const DEFAULT_INSCRIPTION_WRAP_MODE: LabelWrapMode;
15
16
  export declare function normalizeInscriptionOverflow(value: unknown): InscriptionOverflow;
16
17
  /** `GtkInscription:wrap-mode` from its nick, with {@link DEFAULT_INSCRIPTION_WRAP_MODE}. */
17
18
  export declare function normalizeInscriptionWrapMode(value: unknown): LabelWrapMode;
18
- export declare class GtkInscription extends HTMLElement {
19
+ export declare class GtkInscription extends WidgetElement {
19
20
  private _initialized;
20
21
  static get observedAttributes(): string[];
21
22
  /** `GtkInscription:text` — the plain string to draw (gtkinscription.c:713-717). */
@@ -1,5 +1,6 @@
1
1
  import { type LabelEllipsizeMode, type LabelJustification, type LabelWrapMode } from '@gjsify/adwaita-core';
2
- export declare class GtkLabel extends HTMLElement {
2
+ import { WidgetElement } from '../widget-element.js';
3
+ export declare class GtkLabel extends WidgetElement {
3
4
  /**
4
5
  * The rendered text's own box — present while {@link wrap} is set (so it can be pinned
5
6
  * to its measured wrap width, see `_remeasure`) OR while {@link ellipsize} is not
@@ -110,9 +111,15 @@ export declare class GtkLabel extends HTMLElement {
110
111
  * here, not the narrower width GTK's Pango layout actually wrapped to. So this measures
111
112
  * instead, in two passes: first let {@link _wrapSpan} wrap at the FULL container width
112
113
  * (`width: ''`, the same collapse above, which is exactly the width GTK's own
113
- * allocation wraps against), then pin the span to its widest resulting line via
114
+ * allocation wraps against), then cap the span at its widest resulting line via
114
115
  * `Range.getClientRects()`, which gives the pseudo spacers real free space to split.
115
- * Approximate on purpose, and cheap: one synchronous reflow per render. The pinned
116
+ * A CAP, `max-width`, and never `width`: a pinned `width` is also the span's
117
+ * min-content, so the label could no longer shrink below the width it first wrapped
118
+ * at, and a card holding it in a narrower pane grew past the pane and was clipped.
119
+ * GtkLabel's wrapping minimum is its widest word (`gtk_label_measure`), which a capped
120
+ * flex item keeps as its min-content; the cap itself only resolves against a definite
121
+ * container, so the label's max-content stays its text on one line, GTK's natural.
122
+ * Approximate on purpose, and cheap: one synchronous reflow per render. The measured
116
123
  * width goes stale whenever the available width or the font changes, and a page does
117
124
  * both (a rotated phone, an opened sidebar, a web font arriving late), so
118
125
  * {@link connectedCallback} re-measures on each resize and once the fonts have loaded.
@@ -1,7 +1,8 @@
1
1
  import { type BoxOrientation } from '@gjsify/adwaita-core';
2
+ import { WidgetElement } from '../widget-element.js';
2
3
  /** `GtkLevelBarMode`, spelled as the GIR's enum nicks (:1004-1008). */
3
4
  type LevelBarMode = 'continuous' | 'discrete';
4
- export declare class GtkLevelBar extends HTMLElement {
5
+ export declare class GtkLevelBar extends WidgetElement {
5
6
  private _trough;
6
7
  private _initialized;
7
8
  /** Offset name → value, kept sorted ascending exactly as the C's `GList` is. */
@@ -1,4 +1,5 @@
1
- export declare class GtkListBoxRow extends HTMLElement {
1
+ import { WidgetElement } from '../widget-element.js';
2
+ export declare class GtkListBoxRow extends WidgetElement {
2
3
  private _contentsEl;
3
4
  private _activation?;
4
5
  private _initialized;
@@ -1,11 +1,12 @@
1
1
  import { type AdwBoxSelectionMode } from '@gjsify/adwaita-core';
2
2
  import type { GtkListBoxRow } from './gtk-list-box-row.js';
3
3
  import './gtk-list-box-row.js';
4
+ import { WidgetElement } from '../widget-element.js';
4
5
  /** `GtkListTabBehavior`'s nicks — `cell` behaves as `item` outside a cell-based box. */
5
6
  export type GtkListTabBehavior = 'all' | 'item' | 'cell';
6
7
  /** An unknown nick is `all`, the ParamSpec's default (gtklistbox.c:574-578). */
7
8
  export declare function normalizeListTabBehavior(raw: string | null | undefined): GtkListTabBehavior;
8
- export declare class GtkListBox extends HTMLElement {
9
+ export declare class GtkListBox extends WidgetElement {
9
10
  private _rows;
10
11
  private _selection;
11
12
  /** `box->selected_row`, `-1` for the C's NULL. */
@@ -1,9 +1,10 @@
1
1
  import { ListViewState, type AdwComboOption, type AdwListItemFactory, type AdwListModelInput, type AdwListSelectionMode, type BoxOrientation } from '@gjsify/adwaita-core';
2
+ import { WidgetElement } from '../widget-element.js';
2
3
  /** `GtkListTabBehavior`'s nicks — `cell` behaves as `item` outside a cell-based view. */
3
4
  export type GtkListTabBehavior = 'all' | 'item' | 'cell';
4
5
  /** An unknown nick is `all`, the ParamSpec's default (gtklistview.c:965-969). */
5
6
  export declare function normalizeListTabBehavior(raw: string | null | undefined): GtkListTabBehavior;
6
- export declare class GtkListView extends HTMLElement {
7
+ export declare class GtkListView extends WidgetElement {
7
8
  protected _listEl: HTMLDivElement;
8
9
  protected _rows: HTMLElement[];
9
10
  /** The model + selection machine all three views share (ADR 0004, ADR 0089). */
@@ -1,3 +1,4 @@
1
+ import { WidgetElement } from '../widget-element.js';
1
2
  /**
2
3
  * The four `audio-volume-*` names `GtkVolumeButton` derives from a 0…1 level, one constant
3
4
  * each rather than an array of them, in the ORDER `icons_symbolic` holds them
@@ -53,7 +54,7 @@ export declare function volumeIconFor(volume: number): string;
53
54
  * as it is not in the C — see above.
54
55
  */
55
56
  export declare function mediaTimeToString(seconds: number, remaining?: boolean, forceHour?: boolean): string;
56
- export declare class GtkMediaControls extends HTMLElement {
57
+ export declare class GtkMediaControls extends WidgetElement {
57
58
  private _initialized;
58
59
  private _playButton;
59
60
  private _timeLabel;
@@ -1,6 +1,7 @@
1
1
  import type { AdwMenuActions, AdwMenuInput, AdwMenuModel, SplitButtonDirection } from '@gjsify/adwaita-core';
2
2
  import './gtk-popover.js';
3
- export declare class GtkMenuButton extends HTMLElement {
3
+ import { WidgetElement } from '../widget-element.js';
4
+ export declare class GtkMenuButton extends WidgetElement {
4
5
  private _buttonEl;
5
6
  private _popoverEl;
6
7
  private _model;
@@ -1,3 +1,4 @@
1
+ import { WidgetElement } from '../widget-element.js';
1
2
  /** `GtkPositionType`, spelled as the GIR's enum nicks. `top` is the property default. */
2
3
  export type NotebookTabPos = 'top' | 'bottom' | 'left' | 'right';
3
4
  /** The browser's page descriptor — the stand-in for the `GtkNotebookPage` GObject. */
@@ -19,7 +20,7 @@ export interface NotebookPageInfo {
19
20
  /** `GtkNotebookPage:child`. */
20
21
  child: HTMLElement;
21
22
  }
22
- export declare class GtkNotebook extends HTMLElement {
23
+ export declare class GtkNotebook extends WidgetElement {
23
24
  private _current;
24
25
  private _initialized;
25
26
  private _initializedChildren;
@@ -1,4 +1,5 @@
1
- export declare class GtkOverlay extends HTMLElement {
1
+ import { WidgetElement } from '../widget-element.js';
2
+ export declare class GtkOverlay extends WidgetElement {
2
3
  private _childEl;
3
4
  private _layerEl;
4
5
  private _initialized;
@@ -1,4 +1,5 @@
1
1
  import { type BoxOrientation } from '@gjsify/adwaita-core';
2
+ import { WidgetElement } from '../widget-element.js';
2
3
  /** The inputs of `gtk_paned_compute_position`, one per field it reads. */
3
4
  export interface PanedPositionInput {
4
5
  /** The paned's own allocation along the axis, minus the handle — its `allocation`. */
@@ -33,7 +34,7 @@ export interface PanedPosition {
33
34
  * of inputs can hold.
34
35
  */
35
36
  export declare function computePanedPosition(input: PanedPositionInput): PanedPosition;
36
- export declare class GtkPaned extends HTMLElement {
37
+ export declare class GtkPaned extends WidgetElement {
37
38
  private _startEl;
38
39
  private _handleEl;
39
40
  private _endEl;
@@ -1,3 +1,4 @@
1
+ import { WidgetElement } from '../widget-element.js';
1
2
  /** `GtkContentFit`, in enum order — the four nicks the GIR and CSS share. */
2
3
  export declare const PICTURE_CONTENT_FIT_MODES: readonly ["fill", "contain", "cover", "scale-down"];
3
4
  export type PictureContentFit = (typeof PICTURE_CONTENT_FIT_MODES)[number];
@@ -9,7 +10,7 @@ export declare const DEFAULT_PICTURE_CONTENT_FIT: PictureContentFit;
9
10
  * distort every picture a page writes.
10
11
  */
11
12
  export declare function normalizePictureContentFit(value: unknown): PictureContentFit;
12
- export declare class GtkPicture extends HTMLElement {
13
+ export declare class GtkPicture extends WidgetElement {
13
14
  private _initialized;
14
15
  static get observedAttributes(): string[];
15
16
  /**