@gjsify/adwaita-web 0.53.0 → 0.55.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (440) hide show
  1. package/dist/adwaita-web.css +8070 -3037
  2. package/dist/adwaita-web.css.map +1 -1
  3. package/lib/types/adw-application-window.spec.d.ts +1 -0
  4. package/lib/types/adw-bin.spec.d.ts +1 -0
  5. package/lib/types/adw-breakpoint-bin.spec.d.ts +1 -0
  6. package/lib/types/adw-clamp-scrollable.spec.d.ts +1 -0
  7. package/lib/types/adw-multi-layout-view.spec.d.ts +1 -0
  8. package/lib/types/adw-preferences-row.spec.d.ts +1 -0
  9. package/lib/types/adw-shortcuts.spec.d.ts +1 -0
  10. package/lib/types/adw-tab-bar.spec.d.ts +1 -0
  11. package/lib/types/adw-tab-button.spec.d.ts +1 -0
  12. package/lib/types/adw-tab-overview.spec.d.ts +1 -0
  13. package/lib/types/adw-view-switcher-sidebar.spec.d.ts +1 -0
  14. package/lib/types/adw-window.spec.d.ts +1 -0
  15. package/lib/types/breakpoints.d.ts +14 -3
  16. package/lib/types/construct-vectors.spec.d.ts +1 -0
  17. package/lib/types/elements/adw-application-window.d.ts +27 -0
  18. package/lib/types/elements/adw-bin.d.ts +17 -0
  19. package/lib/types/elements/adw-breakpoint-bin.d.ts +67 -0
  20. package/lib/types/elements/adw-clamp-scrollable.d.ts +38 -0
  21. package/lib/types/elements/adw-dialog.d.ts +10 -0
  22. package/lib/types/elements/adw-layout-slot.d.ts +19 -0
  23. package/lib/types/elements/adw-multi-layout-view.d.ts +101 -0
  24. package/lib/types/elements/adw-preferences-row.d.ts +31 -0
  25. package/lib/types/elements/adw-shortcuts-dialog.d.ts +13 -0
  26. package/lib/types/elements/adw-shortcuts-item.d.ts +36 -0
  27. package/lib/types/elements/adw-shortcuts-section.d.ts +14 -0
  28. package/lib/types/elements/adw-sidebar.d.ts +5 -0
  29. package/lib/types/elements/adw-switch-row.d.ts +3 -0
  30. package/lib/types/elements/adw-tab-bar.d.ts +108 -0
  31. package/lib/types/elements/adw-tab-button.d.ts +32 -0
  32. package/lib/types/elements/adw-tab-overview.d.ts +199 -0
  33. package/lib/types/elements/adw-tab-view.d.ts +19 -23
  34. package/lib/types/elements/adw-view-switcher-sidebar.d.ts +84 -0
  35. package/lib/types/elements/adw-window.d.ts +40 -0
  36. package/lib/types/elements/gtk-about-dialog.d.ts +146 -0
  37. package/lib/types/elements/gtk-application-window.d.ts +34 -0
  38. package/lib/types/elements/gtk-aspect-frame.d.ts +27 -0
  39. package/lib/types/elements/gtk-button.d.ts +9 -0
  40. package/lib/types/elements/gtk-calendar.d.ts +159 -0
  41. package/lib/types/elements/gtk-center-box.d.ts +39 -0
  42. package/lib/types/elements/gtk-color-dialog-button.d.ts +69 -0
  43. package/lib/types/elements/gtk-column-view.d.ts +50 -0
  44. package/lib/types/elements/gtk-drag-icon.d.ts +78 -0
  45. package/lib/types/elements/gtk-drawing-area.d.ts +95 -0
  46. package/lib/types/elements/gtk-editable-label.d.ts +33 -0
  47. package/lib/types/elements/gtk-emoji-chooser.d.ts +84 -0
  48. package/lib/types/elements/gtk-entry.d.ts +20 -1
  49. package/lib/types/elements/gtk-expander.d.ts +49 -0
  50. package/lib/types/elements/gtk-fixed.d.ts +13 -0
  51. package/lib/types/elements/gtk-flow-box-child.d.ts +14 -0
  52. package/lib/types/elements/gtk-flow-box.d.ts +87 -0
  53. package/lib/types/elements/gtk-font-dialog-button.d.ts +83 -0
  54. package/lib/types/elements/gtk-frame.d.ts +24 -0
  55. package/lib/types/elements/gtk-gl-area.d.ts +136 -0
  56. package/lib/types/elements/gtk-graphics-offload.d.ts +24 -0
  57. package/lib/types/elements/gtk-grid-view.d.ts +39 -0
  58. package/lib/types/elements/gtk-grid.d.ts +27 -0
  59. package/lib/types/elements/gtk-header-bar.d.ts +60 -0
  60. package/lib/types/elements/gtk-inscription.d.ts +64 -0
  61. package/lib/types/elements/gtk-label.d.ts +3 -0
  62. package/lib/types/elements/gtk-level-bar.d.ts +59 -0
  63. package/lib/types/elements/gtk-link-button.d.ts +29 -0
  64. package/lib/types/elements/gtk-list-box-row.d.ts +54 -0
  65. package/lib/types/elements/gtk-list-box.d.ts +100 -0
  66. package/lib/types/elements/gtk-list-view.d.ts +73 -0
  67. package/lib/types/elements/gtk-media-controls.d.ts +142 -0
  68. package/lib/types/elements/gtk-notebook.d.ts +148 -0
  69. package/lib/types/elements/gtk-overlay.d.ts +22 -0
  70. package/lib/types/elements/gtk-page-setup-unix-dialog.d.ts +87 -0
  71. package/lib/types/elements/gtk-paned.d.ts +121 -0
  72. package/lib/types/elements/gtk-password-entry.d.ts +27 -0
  73. package/lib/types/elements/gtk-picture.d.ts +66 -0
  74. package/lib/types/elements/gtk-popover-bin.d.ts +82 -0
  75. package/lib/types/elements/gtk-popover-menu-bar.d.ts +66 -0
  76. package/lib/types/elements/gtk-popover-menu.d.ts +83 -0
  77. package/lib/types/elements/gtk-popover.d.ts +28 -3
  78. package/lib/types/elements/gtk-print-unix-dialog.d.ts +167 -0
  79. package/lib/types/elements/gtk-revealer.d.ts +55 -0
  80. package/lib/types/elements/gtk-scale-button.d.ts +59 -0
  81. package/lib/types/elements/gtk-scale.d.ts +98 -0
  82. package/lib/types/elements/gtk-scrollbar.d.ts +124 -0
  83. package/lib/types/elements/gtk-scrolled-window.d.ts +121 -0
  84. package/lib/types/elements/gtk-search-bar.d.ts +39 -0
  85. package/lib/types/elements/gtk-search-entry.d.ts +27 -0
  86. package/lib/types/elements/gtk-separator.d.ts +10 -0
  87. package/lib/types/elements/gtk-spin-button.d.ts +94 -0
  88. package/lib/types/elements/gtk-spinner.d.ts +14 -0
  89. package/lib/types/elements/gtk-stack-sidebar.d.ts +43 -0
  90. package/lib/types/elements/gtk-stack-switcher.d.ts +58 -0
  91. package/lib/types/elements/gtk-stack.d.ts +154 -0
  92. package/lib/types/elements/gtk-switch.d.ts +4 -1
  93. package/lib/types/elements/gtk-text-view.d.ts +62 -0
  94. package/lib/types/elements/gtk-text.d.ts +45 -0
  95. package/lib/types/elements/gtk-toggle-button.d.ts +45 -0
  96. package/lib/types/elements/gtk-tree-expander.d.ts +38 -0
  97. package/lib/types/elements/gtk-video.d.ts +97 -0
  98. package/lib/types/elements/gtk-viewport.d.ts +84 -0
  99. package/lib/types/elements/gtk-window-controls.d.ts +80 -0
  100. package/lib/types/elements/gtk-window-handle.d.ts +39 -0
  101. package/lib/types/elements/gtk-window.d.ts +97 -0
  102. package/lib/types/elements/justification.d.ts +2 -0
  103. package/lib/types/elements/popover-menu.d.ts +18 -0
  104. package/lib/types/elements/roving-focus.d.ts +29 -1
  105. package/lib/types/emoji-data.d.ts +38 -0
  106. package/lib/types/font-description.d.ts +96 -0
  107. package/lib/types/gtk-about-dialog.spec.d.ts +1 -0
  108. package/lib/types/gtk-action-bar.spec.d.ts +1 -0
  109. package/lib/types/gtk-application-window.spec.d.ts +1 -0
  110. package/lib/types/gtk-aspect-frame.spec.d.ts +1 -0
  111. package/lib/types/gtk-calendar.spec.d.ts +1 -0
  112. package/lib/types/gtk-center-box.spec.d.ts +1 -0
  113. package/lib/types/gtk-color-dialog-button.spec.d.ts +1 -0
  114. package/lib/types/gtk-column-view.spec.d.ts +1 -0
  115. package/lib/types/gtk-drag-icon.spec.d.ts +1 -0
  116. package/lib/types/gtk-drawing-area.spec.d.ts +1 -0
  117. package/lib/types/gtk-editable-label.spec.d.ts +1 -0
  118. package/lib/types/gtk-emoji-chooser.spec.d.ts +1 -0
  119. package/lib/types/gtk-expander.spec.d.ts +1 -0
  120. package/lib/types/gtk-fixed.spec.d.ts +1 -0
  121. package/lib/types/gtk-flow-box.spec.d.ts +1 -0
  122. package/lib/types/gtk-font-dialog-button.spec.d.ts +1 -0
  123. package/lib/types/gtk-frame.spec.d.ts +1 -0
  124. package/lib/types/gtk-gl-area.spec.d.ts +1 -0
  125. package/lib/types/gtk-graphics-offload.spec.d.ts +1 -0
  126. package/lib/types/gtk-grid-view.spec.d.ts +1 -0
  127. package/lib/types/gtk-grid.spec.d.ts +1 -0
  128. package/lib/types/gtk-header-bar.spec.d.ts +1 -0
  129. package/lib/types/gtk-inscription.spec.d.ts +1 -0
  130. package/lib/types/gtk-level-bar.spec.d.ts +1 -0
  131. package/lib/types/gtk-link-button.spec.d.ts +1 -0
  132. package/lib/types/gtk-list-box.spec.d.ts +1 -0
  133. package/lib/types/gtk-list-view.spec.d.ts +1 -0
  134. package/lib/types/gtk-media-controls.spec.d.ts +1 -0
  135. package/lib/types/gtk-notebook.spec.d.ts +1 -0
  136. package/lib/types/gtk-overlay.spec.d.ts +1 -0
  137. package/lib/types/gtk-paned.spec.d.ts +1 -0
  138. package/lib/types/gtk-password-entry.spec.d.ts +1 -0
  139. package/lib/types/gtk-picture.spec.d.ts +1 -0
  140. package/lib/types/gtk-popover-bin.spec.d.ts +1 -0
  141. package/lib/types/gtk-popover-menu-bar.spec.d.ts +1 -0
  142. package/lib/types/gtk-popover-menu.spec.d.ts +1 -0
  143. package/lib/types/gtk-popover-role.spec.d.ts +1 -0
  144. package/lib/types/gtk-popover.spec.d.ts +1 -0
  145. package/lib/types/gtk-print-dialogs.spec.d.ts +1 -0
  146. package/lib/types/gtk-revealer.spec.d.ts +1 -0
  147. package/lib/types/gtk-scale-button.spec.d.ts +1 -0
  148. package/lib/types/gtk-scale.spec.d.ts +1 -0
  149. package/lib/types/gtk-scrollbar.spec.d.ts +1 -0
  150. package/lib/types/gtk-scrolled-window.spec.d.ts +1 -0
  151. package/lib/types/gtk-search-bar.spec.d.ts +1 -0
  152. package/lib/types/gtk-search-entry.spec.d.ts +1 -0
  153. package/lib/types/gtk-separator.spec.d.ts +1 -0
  154. package/lib/types/gtk-spin-button.spec.d.ts +1 -0
  155. package/lib/types/gtk-spinner.spec.d.ts +1 -0
  156. package/lib/types/gtk-stack-sidebar.spec.d.ts +1 -0
  157. package/lib/types/gtk-stack-switcher.spec.d.ts +1 -0
  158. package/lib/types/gtk-stack.spec.d.ts +1 -0
  159. package/lib/types/gtk-text-view.spec.d.ts +1 -0
  160. package/lib/types/gtk-text.spec.d.ts +1 -0
  161. package/lib/types/gtk-toggle-button.spec.d.ts +1 -0
  162. package/lib/types/gtk-tree-expander.spec.d.ts +1 -0
  163. package/lib/types/gtk-video.spec.d.ts +1 -0
  164. package/lib/types/gtk-viewport.spec.d.ts +1 -0
  165. package/lib/types/gtk-window-controls.spec.d.ts +1 -0
  166. package/lib/types/gtk-window-handle.spec.d.ts +1 -0
  167. package/lib/types/gtk-window.spec.d.ts +1 -0
  168. package/lib/types/index.d.ts +4 -1
  169. package/lib/types/list-view-dom.d.ts +44 -0
  170. package/lib/types/namespace/adw.d.ts +12 -0
  171. package/lib/types/namespace/gtk.d.ts +61 -0
  172. package/lib/types/page-setup.d.ts +100 -0
  173. package/lib/types/scroll-shading.d.ts +15 -1
  174. package/lib/types/shared-tree-builder.d.ts +30 -2
  175. package/lib/types/signals.d.ts +4 -0
  176. package/lib/types/styles.generated.d.ts +1 -1
  177. package/lib/types/tab-chip.d.ts +73 -0
  178. package/lib/types/template-classes.d.ts +11 -0
  179. package/package.json +12 -8
  180. package/scss/_action_row.scss +2 -2
  181. package/scss/_application_window.scss +26 -0
  182. package/scss/_aspect_frame.scss +25 -0
  183. package/scss/_bin.scss +26 -0
  184. package/scss/_button.scss +45 -0
  185. package/scss/_calendar.scss +176 -0
  186. package/scss/_center_box.scss +25 -0
  187. package/scss/_checks.scss +6 -1
  188. package/scss/_clamp_scrollable.scss +28 -0
  189. package/scss/_color_button.scss +67 -0
  190. package/scss/_column_view.scss +126 -0
  191. package/scss/_drag_icon.scss +55 -0
  192. package/scss/_drawing.scss +85 -0
  193. package/scss/_emoji_chooser.scss +213 -0
  194. package/scss/_entry.scss +13 -5
  195. package/scss/_entry_row.scss +1 -1
  196. package/scss/_expander.scss +113 -0
  197. package/scss/_fixed.scss +29 -0
  198. package/scss/_flow_box.scss +94 -0
  199. package/scss/_font_button.scss +63 -0
  200. package/scss/_frame.scss +41 -0
  201. package/scss/_grid.scss +19 -0
  202. package/scss/_grid_view.scss +46 -0
  203. package/scss/_gtk_about_dialog.scss +186 -0
  204. package/scss/_headerbar.scss +132 -0
  205. package/scss/_icons.generated.scss +186 -0
  206. package/scss/_inscription.scss +125 -0
  207. package/scss/_level_bar.scss +190 -0
  208. package/scss/_link.scss +82 -0
  209. package/scss/_list_box.scss +88 -0
  210. package/scss/_list_view.scss +96 -0
  211. package/scss/_media_controls.scss +139 -0
  212. package/scss/_overlay.scss +68 -0
  213. package/scss/_paned.scss +130 -0
  214. package/scss/_password_entry.scss +83 -0
  215. package/scss/_picture.scss +80 -0
  216. package/scss/_popover_bin.scss +53 -0
  217. package/scss/_popover_menu_bar.scss +104 -0
  218. package/scss/_preferences_row.scss +51 -0
  219. package/scss/_print_dialogs.scss +328 -0
  220. package/scss/_reset.scss +21 -19
  221. package/scss/_revealer.scss +37 -0
  222. package/scss/_row.scss +20 -5
  223. package/scss/_scale.scss +298 -0
  224. package/scss/_scale_button.scss +167 -0
  225. package/scss/_scrollbar.scss +230 -0
  226. package/scss/_scrolled_window.scss +131 -0
  227. package/scss/_search_bar.scss +118 -0
  228. package/scss/_search_entry.scss +86 -0
  229. package/scss/_separator.scss +44 -0
  230. package/scss/_shortcuts_dialog.scss +100 -0
  231. package/scss/_spin_button.scss +172 -0
  232. package/scss/_spin_row.scss +56 -8
  233. package/scss/_spinner.scss +85 -4
  234. package/scss/_stack.scss +729 -0
  235. package/scss/_switch.scss +13 -5
  236. package/scss/_switch_row.scss +10 -0
  237. package/scss/_tab_bar.scss +317 -0
  238. package/scss/_tab_button.scss +98 -0
  239. package/scss/_tab_overview.scss +483 -0
  240. package/scss/_text.scss +182 -0
  241. package/scss/_theme.scss +1 -1
  242. package/scss/_tree_expander.scss +62 -0
  243. package/scss/_variables.scss +43 -21
  244. package/scss/_video.scss +146 -0
  245. package/scss/_view_switcher_sidebar.scss +112 -0
  246. package/scss/_viewport.scss +50 -0
  247. package/scss/_window.scss +118 -1
  248. package/scss/_window_handle.scss +20 -0
  249. package/scss/adwaita-skin.scss +109 -0
  250. package/src/adw-action-rows.spec.ts +76 -0
  251. package/src/adw-application-window.spec.ts +118 -0
  252. package/src/adw-bin.spec.ts +75 -0
  253. package/src/adw-breakpoint-bin.spec.ts +324 -0
  254. package/src/adw-clamp-scrollable.spec.ts +189 -0
  255. package/src/adw-multi-layout-view.spec.ts +243 -0
  256. package/src/adw-preferences-row.spec.ts +164 -0
  257. package/src/adw-row-state.spec.ts +142 -0
  258. package/src/adw-shortcuts.spec.ts +155 -0
  259. package/src/adw-tab-bar.spec.ts +287 -0
  260. package/src/adw-tab-button.spec.ts +101 -0
  261. package/src/adw-tab-overview.spec.ts +443 -0
  262. package/src/adw-view-switcher-sidebar.spec.ts +281 -0
  263. package/src/adw-window.spec.ts +129 -0
  264. package/src/breakpoints.ts +25 -8
  265. package/src/capabilities.d.mts +3 -0
  266. package/src/capabilities.mjs +18 -0
  267. package/src/connect-lifecycle.spec.ts +12 -0
  268. package/src/construct-vectors.spec.ts +175 -0
  269. package/src/elements/adw-application-window.ts +154 -0
  270. package/src/elements/adw-bin.ts +101 -0
  271. package/src/elements/adw-breakpoint-bin.ts +287 -0
  272. package/src/elements/adw-clamp-scrollable.ts +207 -0
  273. package/src/elements/adw-dialog.ts +19 -0
  274. package/src/elements/adw-layout-slot.ts +95 -0
  275. package/src/elements/adw-multi-layout-view.ts +326 -0
  276. package/src/elements/adw-preferences-row.ts +150 -0
  277. package/src/elements/adw-shortcuts-dialog.ts +52 -0
  278. package/src/elements/adw-shortcuts-item.ts +171 -0
  279. package/src/elements/adw-shortcuts-section.ts +86 -0
  280. package/src/elements/adw-sidebar.ts +42 -3
  281. package/src/elements/adw-switch-row.ts +28 -1
  282. package/src/elements/adw-tab-bar.ts +529 -0
  283. package/src/elements/adw-tab-button.ts +194 -0
  284. package/src/elements/adw-tab-overview.ts +1011 -0
  285. package/src/elements/adw-tab-view.ts +66 -145
  286. package/src/elements/adw-toggle-group.ts +20 -5
  287. package/src/elements/adw-view-stack.ts +18 -0
  288. package/src/elements/adw-view-switcher-sidebar.ts +332 -0
  289. package/src/elements/adw-window.ts +185 -11
  290. package/src/elements/checks.ts +35 -8
  291. package/src/elements/gtk-about-dialog.ts +811 -0
  292. package/src/elements/gtk-application-window.ts +108 -0
  293. package/src/elements/gtk-aspect-frame.ts +160 -0
  294. package/src/elements/gtk-button.ts +12 -0
  295. package/src/elements/gtk-calendar.ts +757 -0
  296. package/src/elements/gtk-center-box.ts +184 -0
  297. package/src/elements/gtk-color-dialog-button.ts +278 -0
  298. package/src/elements/gtk-column-view.ts +320 -0
  299. package/src/elements/gtk-drag-icon.ts +257 -0
  300. package/src/elements/gtk-drawing-area.ts +303 -0
  301. package/src/elements/gtk-editable-label.ts +204 -0
  302. package/src/elements/gtk-emoji-chooser.ts +542 -0
  303. package/src/elements/gtk-entry.ts +39 -5
  304. package/src/elements/gtk-expander.ts +301 -0
  305. package/src/elements/gtk-fixed.ts +99 -0
  306. package/src/elements/gtk-flow-box-child.ts +68 -0
  307. package/src/elements/gtk-flow-box.ts +480 -0
  308. package/src/elements/gtk-font-dialog-button.ts +432 -0
  309. package/src/elements/gtk-frame.ts +174 -0
  310. package/src/elements/gtk-gl-area.ts +476 -0
  311. package/src/elements/gtk-graphics-offload.ts +130 -0
  312. package/src/elements/gtk-grid-view.ts +168 -0
  313. package/src/elements/gtk-grid.ts +127 -0
  314. package/src/elements/gtk-header-bar.ts +273 -0
  315. package/src/elements/gtk-inscription.ts +387 -0
  316. package/src/elements/gtk-label.ts +19 -11
  317. package/src/elements/gtk-level-bar.ts +323 -0
  318. package/src/elements/gtk-link-button.ts +138 -0
  319. package/src/elements/gtk-list-box-row.ts +195 -0
  320. package/src/elements/gtk-list-box.ts +413 -0
  321. package/src/elements/gtk-list-view.ts +370 -0
  322. package/src/elements/gtk-media-controls.ts +509 -0
  323. package/src/elements/gtk-notebook.ts +664 -0
  324. package/src/elements/gtk-overlay.ts +149 -0
  325. package/src/elements/gtk-page-setup-unix-dialog.ts +420 -0
  326. package/src/elements/gtk-paned.ts +597 -0
  327. package/src/elements/gtk-password-entry.ts +170 -0
  328. package/src/elements/gtk-picture.ts +254 -0
  329. package/src/elements/gtk-popover-bin.ts +332 -0
  330. package/src/elements/gtk-popover-menu-bar.ts +355 -0
  331. package/src/elements/gtk-popover-menu.ts +339 -0
  332. package/src/elements/gtk-popover.ts +92 -10
  333. package/src/elements/gtk-print-unix-dialog.ts +989 -0
  334. package/src/elements/gtk-progress-bar.ts +24 -11
  335. package/src/elements/gtk-revealer.ts +406 -0
  336. package/src/elements/gtk-scale-button.ts +358 -0
  337. package/src/elements/gtk-scale.ts +492 -0
  338. package/src/elements/gtk-scrollbar.ts +528 -0
  339. package/src/elements/gtk-scrolled-window.ts +642 -0
  340. package/src/elements/gtk-search-bar.ts +200 -0
  341. package/src/elements/gtk-search-entry.ts +172 -0
  342. package/src/elements/gtk-separator.ts +52 -0
  343. package/src/elements/gtk-spin-button.ts +475 -0
  344. package/src/elements/gtk-spinner.ts +126 -0
  345. package/src/elements/gtk-stack-sidebar.ts +212 -0
  346. package/src/elements/gtk-stack-switcher.ts +279 -0
  347. package/src/elements/gtk-stack.ts +748 -0
  348. package/src/elements/gtk-switch.ts +52 -19
  349. package/src/elements/gtk-text-view.ts +290 -0
  350. package/src/elements/gtk-text.ts +219 -0
  351. package/src/elements/gtk-toggle-button.ts +239 -0
  352. package/src/elements/gtk-tree-expander.ts +243 -0
  353. package/src/elements/gtk-video.ts +423 -0
  354. package/src/elements/gtk-viewport.ts +277 -0
  355. package/src/elements/gtk-window-controls.ts +341 -0
  356. package/src/elements/gtk-window-handle.ts +221 -0
  357. package/src/elements/gtk-window.ts +366 -0
  358. package/src/elements/justification.ts +24 -0
  359. package/src/elements/popover-menu.ts +24 -0
  360. package/src/elements/roving-focus.ts +53 -21
  361. package/src/emoji-data.ts +577 -0
  362. package/src/entry-rows.spec.ts +31 -0
  363. package/src/font-description.ts +238 -0
  364. package/src/gtk-about-dialog.spec.ts +250 -0
  365. package/src/gtk-action-bar.spec.ts +89 -0
  366. package/src/gtk-application-window.spec.ts +107 -0
  367. package/src/gtk-aspect-frame.spec.ts +114 -0
  368. package/src/gtk-calendar.spec.ts +589 -0
  369. package/src/gtk-center-box.spec.ts +125 -0
  370. package/src/gtk-color-dialog-button.spec.ts +141 -0
  371. package/src/gtk-column-view.spec.ts +154 -0
  372. package/src/gtk-drag-icon.spec.ts +190 -0
  373. package/src/gtk-drawing-area.spec.ts +211 -0
  374. package/src/gtk-editable-label.spec.ts +190 -0
  375. package/src/gtk-emoji-chooser.spec.ts +173 -0
  376. package/src/gtk-entry.spec.ts +23 -0
  377. package/src/gtk-expander.spec.ts +170 -0
  378. package/src/gtk-fixed.spec.ts +97 -0
  379. package/src/gtk-flow-box.spec.ts +289 -0
  380. package/src/gtk-font-dialog-button.spec.ts +166 -0
  381. package/src/gtk-frame.spec.ts +119 -0
  382. package/src/gtk-gl-area.spec.ts +361 -0
  383. package/src/gtk-graphics-offload.spec.ts +119 -0
  384. package/src/gtk-grid-view.spec.ts +106 -0
  385. package/src/gtk-grid.spec.ts +122 -0
  386. package/src/gtk-header-bar.spec.ts +202 -0
  387. package/src/gtk-inscription.spec.ts +235 -0
  388. package/src/gtk-level-bar.spec.ts +199 -0
  389. package/src/gtk-link-button.spec.ts +117 -0
  390. package/src/gtk-list-box.spec.ts +422 -0
  391. package/src/gtk-list-view.spec.ts +203 -0
  392. package/src/gtk-media-controls.spec.ts +295 -0
  393. package/src/gtk-notebook.spec.ts +546 -0
  394. package/src/gtk-overlay.spec.ts +141 -0
  395. package/src/gtk-paned.spec.ts +267 -0
  396. package/src/gtk-password-entry.spec.ts +150 -0
  397. package/src/gtk-picture.spec.ts +172 -0
  398. package/src/gtk-popover-bin.spec.ts +229 -0
  399. package/src/gtk-popover-menu-bar.spec.ts +296 -0
  400. package/src/gtk-popover-menu.spec.ts +261 -0
  401. package/src/gtk-popover-role.spec.ts +138 -0
  402. package/src/gtk-popover.spec.ts +264 -0
  403. package/src/gtk-print-dialogs.spec.ts +251 -0
  404. package/src/gtk-revealer.spec.ts +164 -0
  405. package/src/gtk-scale-button.spec.ts +218 -0
  406. package/src/gtk-scale.spec.ts +213 -0
  407. package/src/gtk-scrollbar.spec.ts +244 -0
  408. package/src/gtk-scrolled-window.spec.ts +262 -0
  409. package/src/gtk-search-bar.spec.ts +179 -0
  410. package/src/gtk-search-entry.spec.ts +142 -0
  411. package/src/gtk-separator.spec.ts +74 -0
  412. package/src/gtk-spin-button.spec.ts +186 -0
  413. package/src/gtk-spinner.spec.ts +130 -0
  414. package/src/gtk-stack-sidebar.spec.ts +217 -0
  415. package/src/gtk-stack-switcher.spec.ts +249 -0
  416. package/src/gtk-stack.spec.ts +432 -0
  417. package/src/gtk-text-view.spec.ts +189 -0
  418. package/src/gtk-text.spec.ts +163 -0
  419. package/src/gtk-toggle-button.spec.ts +186 -0
  420. package/src/gtk-tree-expander.spec.ts +201 -0
  421. package/src/gtk-video.spec.ts +240 -0
  422. package/src/gtk-viewport.spec.ts +140 -0
  423. package/src/gtk-window-controls.spec.ts +232 -0
  424. package/src/gtk-window-handle.spec.ts +158 -0
  425. package/src/gtk-window.spec.ts +190 -0
  426. package/src/index.ts +9 -1
  427. package/src/keyboard-operable.spec.ts +33 -1
  428. package/src/list-view-dom.ts +121 -0
  429. package/src/namespace/adw.ts +12 -0
  430. package/src/namespace/gtk.ts +61 -0
  431. package/src/page-setup.ts +222 -0
  432. package/src/scroll-shading.ts +18 -1
  433. package/src/shared-tree-builder.ts +263 -21
  434. package/src/signals.ts +15 -0
  435. package/src/source-view/theme.ts +11 -5
  436. package/src/style-classes.spec.ts +9 -8
  437. package/src/styles.generated.ts +1 -1
  438. package/src/tab-chip.ts +200 -0
  439. package/src/template-classes.ts +45 -0
  440. package/src/test.browser.mts +152 -0
@@ -0,0 +1 @@
1
+ export declare const GtkExpanderTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkFixedTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkFlowBoxTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkFontDialogButtonTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkFrameTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkGLAreaTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkGraphicsOffloadTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkGridViewTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkGridTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkHeaderBarTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkInscriptionTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkLevelBarTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkLinkButtonTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkListBoxTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkListViewTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkMediaControlsTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkNotebookTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkOverlayTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkPanedTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkPasswordEntryTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkPictureTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkPopoverBinTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkPopoverMenuBarTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkPopoverMenuTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkPopoverRoleTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkPopoverTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkPrintDialogsTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkRevealerTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkScaleButtonTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkScaleTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkScrollbarTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkScrolledWindowTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkSearchBarTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkSearchEntryTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkSeparatorTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkSpinButtonTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkSpinnerTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkStackSidebarTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkStackSwitcherTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkStackTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkTextViewTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkTextTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkToggleButtonTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkTreeExpanderTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkVideoTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkViewportTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkWindowControlsTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkWindowHandleTest: () => Promise<void>;
@@ -0,0 +1 @@
1
+ export declare const GtkWindowTest: () => Promise<void>;
@@ -6,7 +6,8 @@ export type { AdwAccentSource } from './appearance.js';
6
6
  export { AdwScrollShading } from './scroll-shading.js';
7
7
  export type { AdwUndershootEdges } from './scroll-shading.js';
8
8
  export { buildSharedTree, mountSharedTree } from './shared-tree-builder.js';
9
- export type { MountedSharedTree } from './shared-tree-builder.js';
9
+ export type { MountedSharedTree, SizeSource } from './shared-tree-builder.js';
10
+ export { registerTemplateClass } from './template-classes.js';
10
11
  export { isIconAvailable, registerIcon } from './icon-registry.js';
11
12
  export * as Adw from './namespace/adw.js';
12
13
  export * as Gtk from './namespace/gtk.js';
@@ -20,6 +21,8 @@ export { AdwTabPage } from './elements/adw-tab-view.js';
20
21
  export { AdwViewSwitcherPage } from './elements/adw-view-switcher.js';
21
22
  export { AdwViewStackPage } from './elements/adw-inline-view-switcher.js';
22
23
  export { AdwSidebarItem, AdwSidebarSection } from './elements/adw-sidebar.js';
24
+ export { AdwShortcutsSection } from './elements/adw-shortcuts-section.js';
25
+ export { AdwShortcutsItem } from './elements/adw-shortcuts-item.js';
23
26
  export { AdwBottomSheetBottomBar, AdwBottomSheetContent, AdwBottomSheetSheet } from './elements/adw-bottom-sheet.js';
24
27
  export { AdwAlertResponse } from './elements/adw-alert-dialog.js';
25
28
  export type { GtkPopoverAlign, GtkPopoverPosition, GtkPopoverRole } from './elements/gtk-popover.js';
@@ -0,0 +1,44 @@
1
+ import type { AdwListItemFactory } from '@gjsify/adwaita-core';
2
+ /** The class every row/cell label carries, so one stylesheet rule reaches all three views. */
3
+ export declare const LIST_ITEM_LABEL_CLASS = "adw-list-item-label";
4
+ /**
5
+ * What a view draws for an item when no `factory` was set.
6
+ *
7
+ * GTK HAS NO DEFAULT FACTORY — `gtk_list_view_new (model, NULL)` is legal and draws empty
8
+ * rows, which on a documentation surface is indistinguishable from a broken widget. So
9
+ * the port's default is the factory every upstream example writes by hand: a label bound
10
+ * to the item. Setting `factory` replaces it, and that is the only way to get GTK's own
11
+ * answer back.
12
+ */
13
+ export declare const defaultListItemFactory: AdwListItemFactory<Node>;
14
+ /** What {@link attachRubberBand} needs to know about the view it bands. */
15
+ export interface AdwRubberBandInit {
16
+ /** The element the pointer listeners sit on. */
17
+ host: HTMLElement;
18
+ /** The positioned box the band is drawn inside — the row container. */
19
+ surface: HTMLElement;
20
+ /** Whether a drag may start right now: `enable-rubberband` AND a multiple selection. */
21
+ enabled: () => boolean;
22
+ /** The row elements, in model order. */
23
+ rows: () => readonly HTMLElement[];
24
+ /** Select every position the band covers, replacing the selection. */
25
+ selectPositions: (positions: readonly number[]) => void;
26
+ }
27
+ /**
28
+ * Rubberband selection — drag on the view's background to select what the rectangle
29
+ * covers.
30
+ *
31
+ * GTK runs this as a drag gesture on `GtkListBase` and draws a `rubberband` CSS node,
32
+ * which libadwaita styles as an accent border over a 20% accent fill
33
+ * (`_views.scss:47-50`); this builds the same node and lets that rule reach it.
34
+ *
35
+ * THE DRAG MUST START ON THE BACKGROUND. A press that lands on a row is that row's click
36
+ * — GTK's row gesture claims the sequence — so starting a band there would make every
37
+ * click a one-pixel drag and swallow the row's own selection step.
38
+ *
39
+ * The hit test is `getBoundingClientRect` per row against the band, which is the same
40
+ * question GTK answers against its tile areas. It is recomputed per pointermove rather
41
+ * than cached: a row's box can change mid-drag (a scroll, a factory that lays out late),
42
+ * and a cached rectangle would select the wrong rows without anything looking wrong.
43
+ */
44
+ export declare function attachRubberBand(init: AdwRubberBandInit): void;
@@ -1,21 +1,27 @@
1
1
  export { AdwAboutDialog as AboutDialog } from '../elements/adw-about-dialog.js';
2
2
  export { AdwActionRow as ActionRow } from '../elements/adw-action-row.js';
3
3
  export { AdwAlertDialog as AlertDialog } from '../elements/adw-alert-dialog.js';
4
+ export { AdwApplicationWindow as ApplicationWindow } from '../elements/adw-application-window.js';
4
5
  export { AdwAvatar as Avatar } from '../elements/adw-avatar.js';
5
6
  export { AdwBanner as Banner } from '../elements/adw-banner.js';
7
+ export { AdwBin as Bin } from '../elements/adw-bin.js';
6
8
  export { AdwBottomSheet as BottomSheet } from '../elements/adw-bottom-sheet.js';
9
+ export { AdwBreakpointBin as BreakpointBin } from '../elements/adw-breakpoint-bin.js';
7
10
  export { AdwButtonContent as ButtonContent } from '../elements/adw-button-content.js';
8
11
  export { AdwButtonRow as ButtonRow } from '../elements/adw-button-row.js';
9
12
  export { AdwCarousel as Carousel } from '../elements/adw-carousel.js';
10
13
  export { AdwCarouselIndicatorDots as CarouselIndicatorDots } from '../elements/adw-carousel.js';
11
14
  export { AdwCarouselIndicatorLines as CarouselIndicatorLines } from '../elements/adw-carousel.js';
12
15
  export { AdwClamp as Clamp } from '../elements/adw-clamp.js';
16
+ export { AdwClampScrollable as ClampScrollable } from '../elements/adw-clamp-scrollable.js';
13
17
  export { AdwComboRow as ComboRow } from '../elements/adw-combo-row.js';
14
18
  export { AdwDialog as Dialog } from '../elements/adw-dialog.js';
15
19
  export { AdwEntryRow as EntryRow } from '../elements/adw-entry-row.js';
16
20
  export { AdwExpanderRow as ExpanderRow } from '../elements/adw-expander-row.js';
17
21
  export { AdwHeaderBar as HeaderBar } from '../elements/adw-header-bar.js';
18
22
  export { AdwInlineViewSwitcher as InlineViewSwitcher } from '../elements/adw-inline-view-switcher.js';
23
+ export { AdwLayoutSlot as LayoutSlot } from '../elements/adw-layout-slot.js';
24
+ export { AdwMultiLayoutView as MultiLayoutView } from '../elements/adw-multi-layout-view.js';
19
25
  export { AdwNavigationPage as NavigationPage } from '../elements/adw-navigation-view.js';
20
26
  export { AdwNavigationSplitView as NavigationSplitView } from '../elements/adw-navigation-split-view.js';
21
27
  export { AdwNavigationView as NavigationView } from '../elements/adw-navigation-view.js';
@@ -24,13 +30,18 @@ export { AdwPasswordEntryRow as PasswordEntryRow } from '../elements/adw-passwor
24
30
  export { AdwPreferencesDialog as PreferencesDialog } from '../elements/adw-preferences-dialog.js';
25
31
  export { AdwPreferencesGroup as PreferencesGroup } from '../elements/adw-preferences-group.js';
26
32
  export { AdwPreferencesPage as PreferencesPage } from '../elements/adw-preferences-dialog.js';
33
+ export { AdwPreferencesRow as PreferencesRow } from '../elements/adw-preferences-row.js';
27
34
  export { AdwShortcutLabel as ShortcutLabel } from '../elements/adw-shortcut-label.js';
35
+ export { AdwShortcutsDialog as ShortcutsDialog } from '../elements/adw-shortcuts-dialog.js';
28
36
  export { AdwSidebar as Sidebar } from '../elements/adw-sidebar.js';
29
37
  export { AdwSpinRow as SpinRow } from '../elements/adw-spin-row.js';
30
38
  export { AdwSpinner as Spinner } from '../elements/adw-spinner.js';
31
39
  export { AdwSplitButton as SplitButton } from '../elements/adw-split-button.js';
32
40
  export { AdwStatusPage as StatusPage } from '../elements/adw-status-page.js';
33
41
  export { AdwSwitchRow as SwitchRow } from '../elements/adw-switch-row.js';
42
+ export { AdwTabBar as TabBar } from '../elements/adw-tab-bar.js';
43
+ export { AdwTabButton as TabButton } from '../elements/adw-tab-button.js';
44
+ export { AdwTabOverview as TabOverview } from '../elements/adw-tab-overview.js';
34
45
  export { AdwTabView as TabView } from '../elements/adw-tab-view.js';
35
46
  export { AdwToastOverlay as ToastOverlay } from '../elements/adw-toast-overlay.js';
36
47
  export { AdwToggle as Toggle } from '../elements/adw-toggle-group.js';
@@ -38,6 +49,7 @@ export { AdwToggleGroup as ToggleGroup } from '../elements/adw-toggle-group.js';
38
49
  export { AdwToolbarView as ToolbarView } from '../elements/adw-toolbar-view.js';
39
50
  export { AdwViewStack as ViewStack } from '../elements/adw-view-stack.js';
40
51
  export { AdwViewSwitcher as ViewSwitcher } from '../elements/adw-view-switcher.js';
52
+ export { AdwViewSwitcherSidebar as ViewSwitcherSidebar } from '../elements/adw-view-switcher-sidebar.js';
41
53
  export { AdwViewSwitcherBar as ViewSwitcherBar } from '../elements/adw-view-switcher-bar.js';
42
54
  export { AdwWindow as Window } from '../elements/adw-window.js';
43
55
  export { AdwWindowTitle as WindowTitle } from '../elements/adw-window-title.js';
@@ -1,14 +1,75 @@
1
1
  export { GtkAdjustment as Adjustment } from '@gjsify/adwaita-core';
2
+ export { GtkAboutDialog as AboutDialog } from '../elements/gtk-about-dialog.js';
2
3
  export { GtkActionBar as ActionBar } from '../elements/gtk-action-bar.js';
4
+ export { GtkApplicationWindow as ApplicationWindow } from '../elements/gtk-application-window.js';
5
+ export { GtkAspectFrame as AspectFrame } from '../elements/gtk-aspect-frame.js';
3
6
  export { GtkBox as Box } from '../elements/gtk-box.js';
4
7
  export { GtkButton as Button } from '../elements/gtk-button.js';
8
+ export { GtkCalendar as Calendar } from '../elements/gtk-calendar.js';
9
+ export { GtkCenterBox as CenterBox } from '../elements/gtk-center-box.js';
5
10
  export { GtkCheckButton as CheckButton } from '../elements/checks.js';
11
+ export { GtkColorDialogButton as ColorDialogButton } from '../elements/gtk-color-dialog-button.js';
12
+ export { GtkColumnView as ColumnView } from '../elements/gtk-column-view.js';
6
13
  export { GtkDropDown as DropDown } from '../elements/gtk-drop-down.js';
14
+ export { GtkDrawingArea as DrawingArea } from '../elements/gtk-drawing-area.js';
15
+ export { GtkDragIcon as DragIcon } from '../elements/gtk-drag-icon.js';
16
+ export { GtkEditableLabel as EditableLabel } from '../elements/gtk-editable-label.js';
17
+ export { GtkEmojiChooser as EmojiChooser } from '../elements/gtk-emoji-chooser.js';
7
18
  export { GtkEntry as Entry } from '../elements/gtk-entry.js';
19
+ export { GtkExpander as Expander } from '../elements/gtk-expander.js';
20
+ export { GtkFixed as Fixed } from '../elements/gtk-fixed.js';
21
+ export { GtkFlowBox as FlowBox } from '../elements/gtk-flow-box.js';
22
+ export { GtkFlowBoxChild as FlowBoxChild } from '../elements/gtk-flow-box-child.js';
23
+ export { GtkFontDialogButton as FontDialogButton } from '../elements/gtk-font-dialog-button.js';
24
+ export { GtkFrame as Frame } from '../elements/gtk-frame.js';
25
+ export { GtkGLArea as GLArea } from '../elements/gtk-gl-area.js';
26
+ export { GtkGraphicsOffload as GraphicsOffload } from '../elements/gtk-graphics-offload.js';
27
+ export { GtkGrid as Grid } from '../elements/gtk-grid.js';
28
+ export { GtkGridView as GridView } from '../elements/gtk-grid-view.js';
29
+ export { GtkHeaderBar as HeaderBar } from '../elements/gtk-header-bar.js';
8
30
  export { GtkImage as Image } from '../elements/gtk-image.js';
31
+ export { GtkLinkButton as LinkButton } from '../elements/gtk-link-button.js';
9
32
  export { GtkLabel as Label } from '../elements/gtk-label.js';
33
+ export { GtkInscription as Inscription } from '../elements/gtk-inscription.js';
34
+ export { GtkLevelBar as LevelBar } from '../elements/gtk-level-bar.js';
35
+ export { GtkListBox as ListBox } from '../elements/gtk-list-box.js';
36
+ export { GtkListBoxRow as ListBoxRow } from '../elements/gtk-list-box-row.js';
37
+ export { GtkListView as ListView } from '../elements/gtk-list-view.js';
38
+ export { GtkMediaControls as MediaControls } from '../elements/gtk-media-controls.js';
10
39
  export { GtkMenuButton as MenuButton } from '../elements/gtk-menu-button.js';
40
+ export { GtkNotebook as Notebook } from '../elements/gtk-notebook.js';
41
+ export { GtkOverlay as Overlay } from '../elements/gtk-overlay.js';
42
+ export { GtkPageSetupUnixDialog as PageSetupUnixDialog } from '../elements/gtk-page-setup-unix-dialog.js';
43
+ export { GtkPaned as Paned } from '../elements/gtk-paned.js';
44
+ export { GtkPasswordEntry as PasswordEntry } from '../elements/gtk-password-entry.js';
45
+ export { GtkPicture as Picture } from '../elements/gtk-picture.js';
11
46
  export { GtkPopover as Popover } from '../elements/gtk-popover.js';
47
+ export { GtkPopoverBin as PopoverBin } from '../elements/gtk-popover-bin.js';
48
+ export { GtkPopoverMenu as PopoverMenu } from '../elements/gtk-popover-menu.js';
49
+ export { GtkPopoverMenuBar as PopoverMenuBar } from '../elements/gtk-popover-menu-bar.js';
50
+ export { GtkPrintUnixDialog as PrintUnixDialog } from '../elements/gtk-print-unix-dialog.js';
12
51
  export { GtkProgressBar as ProgressBar } from '../elements/gtk-progress-bar.js';
52
+ export { GtkRevealer as Revealer } from '../elements/gtk-revealer.js';
53
+ export { GtkScale as Scale } from '../elements/gtk-scale.js';
54
+ export { GtkScaleButton as ScaleButton } from '../elements/gtk-scale-button.js';
55
+ export { GtkSearchBar as SearchBar } from '../elements/gtk-search-bar.js';
56
+ export { GtkSearchEntry as SearchEntry } from '../elements/gtk-search-entry.js';
57
+ export { GtkScrolledWindow as ScrolledWindow } from '../elements/gtk-scrolled-window.js';
58
+ export { GtkScrollbar as Scrollbar } from '../elements/gtk-scrollbar.js';
59
+ export { GtkSeparator as Separator } from '../elements/gtk-separator.js';
60
+ export { GtkSpinButton as SpinButton } from '../elements/gtk-spin-button.js';
61
+ export { GtkSpinner as Spinner } from '../elements/gtk-spinner.js';
62
+ export { GtkStack as Stack } from '../elements/gtk-stack.js';
63
+ export { GtkStackSidebar as StackSidebar } from '../elements/gtk-stack-sidebar.js';
64
+ export { GtkStackSwitcher as StackSwitcher } from '../elements/gtk-stack-switcher.js';
13
65
  export { GtkStringList as StringList } from '@gjsify/adwaita-core';
14
66
  export { GtkSwitch as Switch } from '../elements/gtk-switch.js';
67
+ export { GtkText as Text } from '../elements/gtk-text.js';
68
+ export { GtkTextView as TextView } from '../elements/gtk-text-view.js';
69
+ export { GtkToggleButton as ToggleButton } from '../elements/gtk-toggle-button.js';
70
+ export { GtkTreeExpander as TreeExpander } from '../elements/gtk-tree-expander.js';
71
+ export { GtkVideo as Video } from '../elements/gtk-video.js';
72
+ export { GtkWindow as Window } from '../elements/gtk-window.js';
73
+ export { GtkWindowControls as WindowControls } from '../elements/gtk-window-controls.js';
74
+ export { GtkViewport as Viewport } from '../elements/gtk-viewport.js';
75
+ export { GtkWindowHandle as WindowHandle } from '../elements/gtk-window-handle.js';
@@ -0,0 +1,100 @@
1
+ /** `Gtk.PageOrientation`, in enum order. Reversed orientations are separate values. */
2
+ export declare const PAGE_ORIENTATIONS: readonly ["portrait", "landscape", "reverse-portrait", "reverse-landscape"];
3
+ /** One `Gtk.PageOrientation` — the nicks `packages/framework/gtk-host` generates. */
4
+ export type PageOrientation = (typeof PAGE_ORIENTATIONS)[number];
5
+ /** The `Gtk.Unit` the two dialogs' labels speak: millimetres or inches. */
6
+ export type PageUnit = 'mm' | 'inch';
7
+ /** One row of GTK's `paper_names` table, in millimetres. */
8
+ export interface PaperSize {
9
+ /** The `GtkPaperSize` name — `iso_a4`, `na_letter`, … */
10
+ readonly name: string;
11
+ /** `gtk_paper_size_get_display_name()` — `A4`, `US Letter`, … */
12
+ readonly displayName: string;
13
+ /** Short edge, mm. */
14
+ readonly width: number;
15
+ /** Long edge, mm. */
16
+ readonly height: number;
17
+ }
18
+ /**
19
+ * The twelve `common_paper_sizes`, in the order `fill_paper_sizes_from_printer` appends
20
+ * them when there is no printer (gtkpagesetupunixdialog.c:474-491): the list is
21
+ * deliberately NOT sorted, so the order here is the one a reader sees.
22
+ *
23
+ * Sizes and names are the `paper_names.c` rows for those keys; `in` sizes are
24
+ * converted once, at parse time, exactly as `parse_media_size` does.
25
+ */
26
+ export declare const COMMON_PAPER_SIZES: readonly PaperSize[];
27
+ /**
28
+ * `double_to_string` (gtkpagesetupunixdialog.c:594-628).
29
+ *
30
+ * The comment above the C is the reason this is not `toFixed`: the author wanted no
31
+ * decimal point at all on a whole number and at most one significant digit otherwise,
32
+ * and `printf` offers no "max precision" — so the code prints two places in inch and
33
+ * one in mm and then strips the zeros and the separator by hand. The stripping is
34
+ * ASCII-only and drops a `0.0` to `0`.
35
+ */
36
+ export declare function doubleToString(value: number, unit: PageUnit): string;
37
+ /** The four margins of a `Gtk.PageSetup`, in millimetres. */
38
+ export interface PageMargins {
39
+ readonly top: number;
40
+ readonly bottom: number;
41
+ readonly left: number;
42
+ readonly right: number;
43
+ }
44
+ /**
45
+ * `gtk_page_setup_set_paper_size_and_default_margins` (gtkpagesetup.c:248-258) —
46
+ * every margin `gtk_paper_size_get_default_*_margin` returns, for one paper size.
47
+ */
48
+ export declare function defaultMargins(size: PaperSize): PageMargins;
49
+ /** A plain-data `Gtk.PageSetup`: which paper, which way up, and the four margins. */
50
+ export interface PageSetup {
51
+ /** The `GtkPaperSize` name. */
52
+ readonly paperSize: string;
53
+ /** `GtkPageOrientation`. */
54
+ readonly orientation: PageOrientation;
55
+ /** Margins in millimetres, which is what `GtkPageSetup` stores internally. */
56
+ readonly margins: PageMargins;
57
+ }
58
+ /**
59
+ * `gtk_page_setup_new()` — the default setup GTK hands a dialog that has been given
60
+ * none: ISO A4, portrait, the default margins for it.
61
+ */
62
+ export declare function defaultPageSetup(): PageSetup;
63
+ /**
64
+ * `gtk_paper_size_new (name)` + the margins, for one of the twelve common sizes, or
65
+ * `null` for a name the table does not have — which is what `set_paper_size` sees
66
+ * when no row matches (it returns FALSE rather than inventing one).
67
+ */
68
+ export declare function paperSizeByName(name: string): PaperSize | null;
69
+ /** The paper size a setup names, or the default one when the name is unknown. */
70
+ export declare function paperSizeOf(setup: PageSetup): PaperSize;
71
+ /**
72
+ * `page_setup_is_equal` (gtkpagesetupunixdialog.c:410-418): same paper AND the same
73
+ * four margins. `page_setup_is_same_size` is the first half of it, which
74
+ * `set_paper_size` asks for when a new printer brings its own sizes along.
75
+ */
76
+ export declare function pageSetupEquals(a: PageSetup, b: PageSetup): boolean;
77
+ /** `page_setup_is_same_size` — the paper alone, margins ignored. */
78
+ export declare function pageSetupSameSize(a: PageSetup, b: PageSetup): boolean;
79
+ /**
80
+ * The width and height a `GtkPageSetup` reports for an orientation: landscape and
81
+ * reverse-landscape SWAP the two edges, which is the whole of
82
+ * `gtk_page_setup_get_orientation`-aware geometry in GTK (there is no separate
83
+ * landscape size).
84
+ */
85
+ export declare function orientedSize(setup: PageSetup, unit?: PageUnit): {
86
+ width: number;
87
+ height: number;
88
+ };
89
+ /** The `unit_str` of `paper_size_changed`: `_("mm")` or `_("inch")`. */
90
+ export declare function unitLabel(unit: PageUnit): string;
91
+ /**
92
+ * The label under the paper-size combo: `W × H unit`, both numbers through
93
+ * {@link doubleToString} and in the dialog's user unit.
94
+ */
95
+ export declare function paperSizeLabel(setup: PageSetup, unit?: PageUnit): string;
96
+ /**
97
+ * The tooltip `paper_size_changed` puts on the same label — the margins alone, in its
98
+ * order: left, right, top, bottom. The sizes live in the label text, not here.
99
+ */
100
+ export declare function paperMarginsTooltip(setup: PageSetup, unit?: PageUnit): string;
@@ -5,6 +5,19 @@ export interface AdwUndershootEdges {
5
5
  /** `undershoot-bottom` on the view. */
6
6
  bottom: boolean;
7
7
  }
8
+ /**
9
+ * What a caller can ask to hear about, which is `GtkScrolledWindow::edge-overshot`'s own
10
+ * argument: the SIGNED distance past the edge, negative at the near one and positive at the
11
+ * far one, and `0` when the position is back inside the range.
12
+ *
13
+ * The alternative is a second copy of the overshoot accumulation in the caller, which is
14
+ * the duplication this module exists to prevent — the unclamped position is a value only
15
+ * the wheel bookkeeping here has.
16
+ */
17
+ export interface AdwScrollShadingOptions {
18
+ /** Called whenever a wheel pushes a scroller's position past one of its edges. */
19
+ onOvershoot?: (distance: number) => void;
20
+ }
8
21
  /**
9
22
  * Keeps every scroller under a root marked with its live edge indicators.
10
23
  *
@@ -24,7 +37,8 @@ export declare class AdwScrollShading {
24
37
  private _shaded;
25
38
  private _pendingScan;
26
39
  private _undershootEdges;
27
- constructor(root: HTMLElement);
40
+ private _onOvershoot;
41
+ constructor(root: HTMLElement, options?: AdwScrollShadingOptions);
28
42
  /**
29
43
  * Which edges may draw an UNDERSHOOT. The overshoot glow is not gated: upstream
30
44
  * draws it on every `scrolledwindow`, while the undershoot is what a toolbar
@@ -1,4 +1,5 @@
1
- import type { SharedTreeNode } from '@gjsify/adwaita-core/conformance';
1
+ import { type BreakpointSize } from '@gjsify/adwaita-core';
2
+ import { type SharedTreeNode } from '@gjsify/adwaita-core/conformance';
2
3
  /** One authored placement, kept so {@link mountSharedTree} can hold the renderer to it. */
3
4
  interface PlacedChild {
4
5
  parent: HTMLElement;
@@ -14,6 +15,30 @@ interface ExtendedNode {
14
15
  interface BuildRecord {
15
16
  placed: PlacedChild[];
16
17
  extended: ExtendedNode[];
18
+ /** Every authored id and the element it built, which a `bind` source is looked up in. */
19
+ ids: Map<string, HTMLElement>;
20
+ /** The `bindings` of every node, resolved once every id exists (a source may be built after its target). */
21
+ binds: PendingBind[];
22
+ /** The nodes that carry `breakpoints`, wired once every id exists (a setter may name a later sibling). */
23
+ breakpointHosts: {
24
+ el: HTMLElement;
25
+ node: SharedTreeNode;
26
+ }[];
27
+ /** Undoes what the build wired to the outside (the size observers); {@link mountSharedTree}'s `unmount` runs it. */
28
+ disposers: (() => void)[];
29
+ /** The size source a `breakpoints` node is driven from; a `ResizeObserver` unless the caller supplies one. */
30
+ observeSize?: SizeSource;
31
+ /** The object a signal handler's NAME is resolved against (ADR 0093 § 3), as `Gtk.BuilderScope` does. */
32
+ scope?: Readonly<Record<string, unknown>>;
33
+ }
34
+ /** Calls `onSize` with the host's measured size, now and on every change; returns its disposer. */
35
+ export type SizeSource = (element: Element, onSize: (size: BreakpointSize) => void) => () => void;
36
+ interface PendingBind {
37
+ el: HTMLElement;
38
+ property: string;
39
+ source: string;
40
+ sourceProperty: string;
41
+ flags: readonly string[];
17
42
  }
18
43
  /**
19
44
  * A `SharedTreeNode`, realised as a DETACHED element tree: a tag, its authored properties as
@@ -60,5 +85,8 @@ export interface MountedSharedTree {
60
85
  * instantiation half a caller reading the corpus's elements normally wants; a bare
61
86
  * `buildSharedTree` is for a caller that already has somewhere of its own to attach it.
62
87
  */
63
- export declare function mountSharedTree(node: SharedTreeNode): MountedSharedTree;
88
+ export declare function mountSharedTree(node: SharedTreeNode, options?: {
89
+ scope?: Readonly<Record<string, unknown>>;
90
+ observeSize?: SizeSource;
91
+ }): MountedSharedTree;
64
92
  export {};
@@ -0,0 +1,4 @@
1
+ /** GTK signal name → the DOM event type the element dispatches it as. */
2
+ export type DispatchedSignals = Readonly<Record<string, string>>;
3
+ /** The signals `el`'s class declares, or none. */
4
+ export declare function dispatchedSignalsOf(el: Element): DispatchedSignals;