@gtkx/ffi 0.6.0 → 0.7.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 (724) hide show
  1. package/dist/cairo/cairo.d.ts +4 -6
  2. package/dist/cairo/cairo.js +0 -3
  3. package/dist/codegen/ffi-generator.d.ts +10 -4
  4. package/dist/codegen/ffi-generator.js +156 -22
  5. package/dist/generated/adw/application-window.js +3 -2
  6. package/dist/generated/adw/avatar.js +3 -2
  7. package/dist/generated/adw/banner.d.ts +57 -0
  8. package/dist/generated/adw/banner.js +119 -1
  9. package/dist/generated/adw/breakpoint-condition.js +2 -2
  10. package/dist/generated/adw/breakpoint.d.ts +7 -0
  11. package/dist/generated/adw/breakpoint.js +16 -2
  12. package/dist/generated/adw/carousel-indicator-dots.d.ts +9 -0
  13. package/dist/generated/adw/carousel-indicator-dots.js +27 -0
  14. package/dist/generated/adw/carousel-indicator-lines.d.ts +9 -0
  15. package/dist/generated/adw/carousel-indicator-lines.js +27 -0
  16. package/dist/generated/adw/carousel.d.ts +9 -0
  17. package/dist/generated/adw/carousel.js +29 -2
  18. package/dist/generated/adw/clamp-layout.d.ts +9 -0
  19. package/dist/generated/adw/clamp-layout.js +27 -0
  20. package/dist/generated/adw/clamp-scrollable.d.ts +61 -0
  21. package/dist/generated/adw/clamp-scrollable.js +175 -0
  22. package/dist/generated/adw/clamp.d.ts +9 -0
  23. package/dist/generated/adw/clamp.js +27 -0
  24. package/dist/generated/adw/combo-row.js +3 -2
  25. package/dist/generated/adw/constants.d.ts +17 -0
  26. package/dist/generated/adw/constants.js +17 -0
  27. package/dist/generated/adw/entry-row.d.ts +220 -0
  28. package/dist/generated/adw/entry-row.js +480 -2
  29. package/dist/generated/adw/enum-list-model.d.ts +61 -0
  30. package/dist/generated/adw/enum-list-model.js +108 -0
  31. package/dist/generated/adw/flap.d.ts +9 -0
  32. package/dist/generated/adw/flap.js +29 -2
  33. package/dist/generated/adw/functions.js +2 -2
  34. package/dist/generated/adw/index.d.ts +1 -0
  35. package/dist/generated/adw/index.js +1 -0
  36. package/dist/generated/adw/inline-view-switcher.d.ts +9 -0
  37. package/dist/generated/adw/inline-view-switcher.js +27 -0
  38. package/dist/generated/adw/layout.d.ts +7 -0
  39. package/dist/generated/adw/layout.js +14 -0
  40. package/dist/generated/adw/leaflet.d.ts +9 -0
  41. package/dist/generated/adw/leaflet.js +30 -3
  42. package/dist/generated/adw/navigation-view.js +3 -2
  43. package/dist/generated/adw/shortcuts-section.d.ts +68 -0
  44. package/dist/generated/adw/shortcuts-section.js +122 -0
  45. package/dist/generated/adw/spin-row.d.ts +220 -0
  46. package/dist/generated/adw/spin-row.js +479 -1
  47. package/dist/generated/adw/spinner-paintable.d.ts +132 -0
  48. package/dist/generated/adw/spinner-paintable.js +266 -1
  49. package/dist/generated/adw/split-button.d.ts +57 -0
  50. package/dist/generated/adw/split-button.js +119 -1
  51. package/dist/generated/adw/spring-animation.js +2 -2
  52. package/dist/generated/adw/spring-params.js +2 -2
  53. package/dist/generated/adw/squeezer.d.ts +9 -0
  54. package/dist/generated/adw/squeezer.js +29 -2
  55. package/dist/generated/adw/status-page.js +3 -2
  56. package/dist/generated/adw/style-manager.js +2 -2
  57. package/dist/generated/adw/swipe-tracker.d.ts +10 -0
  58. package/dist/generated/adw/swipe-tracker.js +30 -2
  59. package/dist/generated/adw/tab-button.d.ts +57 -0
  60. package/dist/generated/adw/tab-button.js +119 -1
  61. package/dist/generated/adw/tab-page.d.ts +141 -0
  62. package/dist/generated/adw/tab-page.js +409 -3
  63. package/dist/generated/adw/tab-view.js +4 -3
  64. package/dist/generated/adw/toast.js +2 -2
  65. package/dist/generated/adw/toggle-group.d.ts +9 -0
  66. package/dist/generated/adw/toggle-group.js +29 -2
  67. package/dist/generated/adw/view-stack-page.d.ts +141 -0
  68. package/dist/generated/adw/view-stack-page.js +405 -0
  69. package/dist/generated/adw/view-stack-pages.d.ts +165 -0
  70. package/dist/generated/adw/view-stack-pages.js +371 -1
  71. package/dist/generated/adw/view-stack.js +2 -2
  72. package/dist/generated/adw/window.js +3 -2
  73. package/dist/generated/adw/wrap-box.d.ts +9 -0
  74. package/dist/generated/adw/wrap-box.js +27 -0
  75. package/dist/generated/adw/wrap-layout.d.ts +9 -0
  76. package/dist/generated/adw/wrap-layout.js +27 -0
  77. package/dist/generated/appstream/agreement.js +2 -2
  78. package/dist/generated/appstream/artifact.js +3 -3
  79. package/dist/generated/appstream/category.js +4 -4
  80. package/dist/generated/appstream/component-box.js +2 -2
  81. package/dist/generated/appstream/component.js +28 -28
  82. package/dist/generated/appstream/constants.d.ts +3 -0
  83. package/dist/generated/appstream/constants.js +3 -0
  84. package/dist/generated/appstream/functions.js +2 -2
  85. package/dist/generated/appstream/index.d.ts +1 -0
  86. package/dist/generated/appstream/index.js +1 -0
  87. package/dist/generated/appstream/launchable.js +2 -2
  88. package/dist/generated/appstream/metadata.js +2 -2
  89. package/dist/generated/appstream/provided.js +2 -2
  90. package/dist/generated/appstream/release-list.js +2 -2
  91. package/dist/generated/appstream/release.js +3 -3
  92. package/dist/generated/appstream/review.js +2 -2
  93. package/dist/generated/appstream/screenshot.js +5 -5
  94. package/dist/generated/appstream/suggested.js +2 -2
  95. package/dist/generated/appstream/system-info.js +17 -2
  96. package/dist/generated/appstream/validator.js +2 -2
  97. package/dist/generated/atspi/accessible.js +65 -53
  98. package/dist/generated/atspi/collection.js +4 -4
  99. package/dist/generated/atspi/component.js +4 -4
  100. package/dist/generated/atspi/constants.d.ts +70 -0
  101. package/dist/generated/atspi/constants.js +70 -0
  102. package/dist/generated/atspi/device.js +2 -2
  103. package/dist/generated/atspi/document.js +4 -4
  104. package/dist/generated/atspi/functions.js +2 -2
  105. package/dist/generated/atspi/hyperlink.js +2 -2
  106. package/dist/generated/atspi/image.js +4 -4
  107. package/dist/generated/atspi/index.d.ts +1 -0
  108. package/dist/generated/atspi/index.js +1 -0
  109. package/dist/generated/atspi/point.js +2 -2
  110. package/dist/generated/atspi/range.js +2 -2
  111. package/dist/generated/atspi/rect.js +2 -2
  112. package/dist/generated/atspi/state-set.js +2 -2
  113. package/dist/generated/atspi/table-cell.js +3 -3
  114. package/dist/generated/atspi/table.js +3 -3
  115. package/dist/generated/atspi/text.js +13 -13
  116. package/dist/generated/gdk/cairo-context.js +2 -2
  117. package/dist/generated/gdk/cicp-params.js +2 -2
  118. package/dist/generated/gdk/clipboard.js +3 -3
  119. package/dist/generated/gdk/color-state.js +2 -2
  120. package/dist/generated/gdk/constants.d.ts +2488 -0
  121. package/dist/generated/gdk/constants.js +2488 -0
  122. package/dist/generated/gdk/content-deserializer.d.ts +23 -0
  123. package/dist/generated/gdk/content-deserializer.js +70 -2
  124. package/dist/generated/gdk/content-formats-builder.js +3 -3
  125. package/dist/generated/gdk/content-formats.js +7 -7
  126. package/dist/generated/gdk/content-provider.js +3 -3
  127. package/dist/generated/gdk/content-serializer.d.ts +23 -0
  128. package/dist/generated/gdk/content-serializer.js +70 -2
  129. package/dist/generated/gdk/display.js +4 -3
  130. package/dist/generated/gdk/dmabuf-formats.js +2 -2
  131. package/dist/generated/gdk/dmabuf-texture-builder.js +3 -3
  132. package/dist/generated/gdk/drag.js +2 -2
  133. package/dist/generated/gdk/draw-context.js +2 -2
  134. package/dist/generated/gdk/drop.js +3 -3
  135. package/dist/generated/gdk/event.js +2 -2
  136. package/dist/generated/gdk/frame-clock.js +3 -3
  137. package/dist/generated/gdk/frame-timings.js +2 -2
  138. package/dist/generated/gdk/functions.js +11 -10
  139. package/dist/generated/gdk/gltexture-builder.js +3 -3
  140. package/dist/generated/gdk/index.d.ts +1 -0
  141. package/dist/generated/gdk/index.js +1 -0
  142. package/dist/generated/gdk/memory-texture-builder.js +4 -4
  143. package/dist/generated/gdk/paintable.js +2 -2
  144. package/dist/generated/gdk/popup-layout.js +4 -4
  145. package/dist/generated/gdk/rgba.js +2 -2
  146. package/dist/generated/gdk/surface.js +2 -2
  147. package/dist/generated/gdk/texture-downloader.js +5 -5
  148. package/dist/generated/gdk/texture.d.ts +61 -0
  149. package/dist/generated/gdk/texture.js +247 -5
  150. package/dist/generated/gdk/toplevel-layout.js +3 -3
  151. package/dist/generated/gdkpixbuf/constants.d.ts +22 -0
  152. package/dist/generated/gdkpixbuf/constants.js +22 -0
  153. package/dist/generated/gdkpixbuf/index.d.ts +1 -0
  154. package/dist/generated/gdkpixbuf/index.js +1 -0
  155. package/dist/generated/gdkpixbuf/pixbuf-animation.js +46 -1
  156. package/dist/generated/gdkpixbuf/pixbuf-format.js +2 -2
  157. package/dist/generated/gdkpixbuf/pixbuf-loader.js +32 -2
  158. package/dist/generated/gdkpixbuf/pixbuf.d.ts +61 -0
  159. package/dist/generated/gdkpixbuf/pixbuf.js +334 -3
  160. package/dist/generated/gio/action-group.js +9 -9
  161. package/dist/generated/gio/action-map.js +3 -2
  162. package/dist/generated/gio/action.js +5 -5
  163. package/dist/generated/gio/app-info.js +4 -3
  164. package/dist/generated/gio/application-command-line.js +5 -4
  165. package/dist/generated/gio/application.js +11 -10
  166. package/dist/generated/gio/bytes-icon.js +3 -3
  167. package/dist/generated/gio/cancellable.js +2 -2
  168. package/dist/generated/gio/charset-converter.js +2 -2
  169. package/dist/generated/gio/constants.d.ts +1024 -0
  170. package/dist/generated/gio/constants.js +1024 -0
  171. package/dist/generated/gio/converter-input-stream.js +4 -3
  172. package/dist/generated/gio/converter-output-stream.js +4 -3
  173. package/dist/generated/gio/converter.js +2 -2
  174. package/dist/generated/gio/datagram-based.js +2 -2
  175. package/dist/generated/gio/dbus-action-group.js +9 -9
  176. package/dist/generated/gio/dbus-annotation-info.js +2 -2
  177. package/dist/generated/gio/dbus-arg-info.js +2 -2
  178. package/dist/generated/gio/dbus-connection.js +50 -5
  179. package/dist/generated/gio/dbus-interface-info.js +5 -5
  180. package/dist/generated/gio/dbus-interface-skeleton.js +5 -4
  181. package/dist/generated/gio/dbus-interface.js +4 -3
  182. package/dist/generated/gio/dbus-message.js +18 -3
  183. package/dist/generated/gio/dbus-method-info.js +2 -2
  184. package/dist/generated/gio/dbus-method-invocation.js +4 -4
  185. package/dist/generated/gio/dbus-node-info.js +3 -3
  186. package/dist/generated/gio/dbus-object-manager-client.js +50 -3
  187. package/dist/generated/gio/dbus-object-manager-server.js +5 -3
  188. package/dist/generated/gio/dbus-object-manager.js +5 -3
  189. package/dist/generated/gio/dbus-object-proxy.js +3 -2
  190. package/dist/generated/gio/dbus-object-skeleton.js +3 -2
  191. package/dist/generated/gio/dbus-object.js +3 -2
  192. package/dist/generated/gio/dbus-property-info.js +2 -2
  193. package/dist/generated/gio/dbus-proxy.js +55 -9
  194. package/dist/generated/gio/dbus-signal-info.js +2 -2
  195. package/dist/generated/gio/drive.js +4 -3
  196. package/dist/generated/gio/dtls-client-connection.js +3 -2
  197. package/dist/generated/gio/emblem.js +4 -3
  198. package/dist/generated/gio/emblemed-icon.js +4 -3
  199. package/dist/generated/gio/file-attribute-info-list.js +3 -3
  200. package/dist/generated/gio/file-attribute-matcher.js +3 -3
  201. package/dist/generated/gio/file-enumerator.js +4 -3
  202. package/dist/generated/gio/file-icon.js +4 -3
  203. package/dist/generated/gio/file-info.js +8 -7
  204. package/dist/generated/gio/file.js +19 -17
  205. package/dist/generated/gio/functions.js +52 -38
  206. package/dist/generated/gio/icon.js +2 -2
  207. package/dist/generated/gio/index.d.ts +1 -0
  208. package/dist/generated/gio/index.js +1 -0
  209. package/dist/generated/gio/inet-address-mask.js +15 -0
  210. package/dist/generated/gio/input-stream.js +3 -3
  211. package/dist/generated/gio/memory-input-stream.js +2 -2
  212. package/dist/generated/gio/memory-output-stream.js +3 -3
  213. package/dist/generated/gio/menu-attribute-iter.js +3 -3
  214. package/dist/generated/gio/menu-item.js +2 -2
  215. package/dist/generated/gio/menu-model.js +2 -2
  216. package/dist/generated/gio/mount.js +11 -7
  217. package/dist/generated/gio/pollable-input-stream.js +2 -2
  218. package/dist/generated/gio/pollable-output-stream.js +2 -2
  219. package/dist/generated/gio/property-action.js +5 -5
  220. package/dist/generated/gio/resource.js +3 -3
  221. package/dist/generated/gio/settings-schema-key.js +5 -5
  222. package/dist/generated/gio/settings-schema-source.js +3 -3
  223. package/dist/generated/gio/settings-schema.js +3 -3
  224. package/dist/generated/gio/settings.js +7 -6
  225. package/dist/generated/gio/simple-action-group.js +12 -11
  226. package/dist/generated/gio/simple-action.js +5 -5
  227. package/dist/generated/gio/socket-client.js +3 -2
  228. package/dist/generated/gio/socket.js +19 -4
  229. package/dist/generated/gio/srv-target.js +2 -2
  230. package/dist/generated/gio/subprocess.js +5 -5
  231. package/dist/generated/gio/task.js +2 -2
  232. package/dist/generated/gio/themed-icon.js +2 -2
  233. package/dist/generated/gio/tls-certificate.js +80 -5
  234. package/dist/generated/gio/tls-client-connection.js +3 -2
  235. package/dist/generated/gio/vfs.js +5 -4
  236. package/dist/generated/gio/volume-monitor.js +5 -3
  237. package/dist/generated/gio/volume.js +10 -6
  238. package/dist/generated/gio/zlib-compressor.js +2 -2
  239. package/dist/generated/gio/zlib-decompressor.js +2 -2
  240. package/dist/generated/giounix/constants.d.ts +5 -0
  241. package/dist/generated/giounix/constants.js +5 -0
  242. package/dist/generated/giounix/desktop-app-info-lookup.js +3 -2
  243. package/dist/generated/giounix/desktop-app-info.d.ts +191 -0
  244. package/dist/generated/giounix/desktop-app-info.js +583 -1
  245. package/dist/generated/giounix/functions.js +10 -9
  246. package/dist/generated/giounix/index.d.ts +1 -0
  247. package/dist/generated/giounix/index.js +1 -0
  248. package/dist/generated/giounix/input-stream.d.ts +61 -0
  249. package/dist/generated/giounix/input-stream.js +134 -1
  250. package/dist/generated/giounix/mount-entry.js +5 -4
  251. package/dist/generated/giounix/mount-point.js +5 -4
  252. package/dist/generated/giounix/output-stream.d.ts +91 -0
  253. package/dist/generated/giounix/output-stream.js +208 -1
  254. package/dist/generated/glib/bookmark-file.js +6 -6
  255. package/dist/generated/glib/bytes.js +4 -4
  256. package/dist/generated/glib/checksum.js +2 -2
  257. package/dist/generated/glib/constants.d.ts +606 -0
  258. package/dist/generated/glib/constants.js +606 -0
  259. package/dist/generated/glib/date-time.js +15 -15
  260. package/dist/generated/glib/date.js +2 -2
  261. package/dist/generated/glib/dir.js +2 -2
  262. package/dist/generated/glib/error.js +2 -2
  263. package/dist/generated/glib/functions.js +36 -36
  264. package/dist/generated/glib/hmac.js +3 -3
  265. package/dist/generated/glib/index.d.ts +1 -0
  266. package/dist/generated/glib/index.js +1 -0
  267. package/dist/generated/glib/iochannel.js +2 -2
  268. package/dist/generated/glib/main-context.js +5 -5
  269. package/dist/generated/glib/main-loop.js +3 -3
  270. package/dist/generated/glib/mapped-file.js +3 -3
  271. package/dist/generated/glib/markup-parse-context.js +2 -2
  272. package/dist/generated/glib/match-info.js +3 -3
  273. package/dist/generated/glib/option-group.js +2 -2
  274. package/dist/generated/glib/pattern-spec.js +2 -2
  275. package/dist/generated/glib/rand.js +2 -2
  276. package/dist/generated/glib/regex.js +6 -6
  277. package/dist/generated/glib/source.js +4 -4
  278. package/dist/generated/glib/string.js +26 -26
  279. package/dist/generated/glib/strv-builder.js +2 -2
  280. package/dist/generated/glib/thread.js +2 -2
  281. package/dist/generated/glib/time-zone.js +2 -2
  282. package/dist/generated/glib/tree.js +2 -2
  283. package/dist/generated/glib/uri.js +2 -2
  284. package/dist/generated/glib/variant-builder.js +3 -3
  285. package/dist/generated/glib/variant-dict.js +4 -4
  286. package/dist/generated/glib/variant-type.js +7 -7
  287. package/dist/generated/glib/variant.js +12 -12
  288. package/dist/generated/glibunix/functions.js +3 -3
  289. package/dist/generated/gmodule/constants.d.ts +4 -0
  290. package/dist/generated/gmodule/constants.js +4 -0
  291. package/dist/generated/gmodule/index.d.ts +1 -0
  292. package/dist/generated/gmodule/index.js +1 -0
  293. package/dist/generated/gobject/closure.js +2 -2
  294. package/dist/generated/gobject/constants.d.ts +82 -0
  295. package/dist/generated/gobject/constants.js +82 -0
  296. package/dist/generated/gobject/functions.js +6 -5
  297. package/dist/generated/gobject/index.d.ts +1 -0
  298. package/dist/generated/gobject/index.js +1 -0
  299. package/dist/generated/gobject/param-spec.js +2 -2
  300. package/dist/generated/gobject/value-array.js +9 -9
  301. package/dist/generated/gobject/value.js +5 -5
  302. package/dist/generated/graphene/box.js +6 -6
  303. package/dist/generated/graphene/constants.d.ts +56 -0
  304. package/dist/generated/graphene/constants.js +56 -0
  305. package/dist/generated/graphene/euler.js +8 -8
  306. package/dist/generated/graphene/frustum.js +4 -4
  307. package/dist/generated/graphene/functions.js +27 -27
  308. package/dist/generated/graphene/index.d.ts +1 -0
  309. package/dist/generated/graphene/index.js +1 -0
  310. package/dist/generated/graphene/matrix.js +14 -14
  311. package/dist/generated/graphene/plane.js +6 -6
  312. package/dist/generated/graphene/point.js +4 -4
  313. package/dist/generated/graphene/point3d.js +4 -4
  314. package/dist/generated/graphene/quad.js +5 -5
  315. package/dist/generated/graphene/quaternion.js +10 -10
  316. package/dist/generated/graphene/ray.js +4 -4
  317. package/dist/generated/graphene/rect.js +7 -7
  318. package/dist/generated/graphene/size.js +3 -3
  319. package/dist/generated/graphene/sphere.js +4 -4
  320. package/dist/generated/graphene/triangle.js +4 -4
  321. package/dist/generated/graphene/vec2.js +4 -4
  322. package/dist/generated/graphene/vec3.js +4 -4
  323. package/dist/generated/graphene/vec4.js +6 -6
  324. package/dist/generated/gsk/cairo-node.js +3 -3
  325. package/dist/generated/gsk/clip-node.js +2 -2
  326. package/dist/generated/gsk/color-matrix-node.js +3 -3
  327. package/dist/generated/gsk/color-node.js +2 -2
  328. package/dist/generated/gsk/component-transfer-node.js +2 -2
  329. package/dist/generated/gsk/component-transfer.js +2 -2
  330. package/dist/generated/gsk/conic-gradient-node.js +2 -2
  331. package/dist/generated/gsk/fill-node.js +2 -2
  332. package/dist/generated/gsk/functions.js +3 -3
  333. package/dist/generated/gsk/glshader-node.js +2 -2
  334. package/dist/generated/gsk/glshader.js +2 -2
  335. package/dist/generated/gsk/inset-shadow-node.js +2 -2
  336. package/dist/generated/gsk/linear-gradient-node.js +3 -3
  337. package/dist/generated/gsk/outset-shadow-node.js +2 -2
  338. package/dist/generated/gsk/path-builder.js +4 -4
  339. package/dist/generated/gsk/path-measure.js +3 -3
  340. package/dist/generated/gsk/path-point.js +2 -2
  341. package/dist/generated/gsk/path.js +2 -2
  342. package/dist/generated/gsk/radial-gradient-node.js +2 -2
  343. package/dist/generated/gsk/render-node.js +2 -2
  344. package/dist/generated/gsk/repeat-node.js +2 -2
  345. package/dist/generated/gsk/shader-args-builder.js +3 -3
  346. package/dist/generated/gsk/stroke-node.js +3 -3
  347. package/dist/generated/gsk/stroke.js +2 -2
  348. package/dist/generated/gsk/text-node.js +3 -3
  349. package/dist/generated/gsk/transform-node.js +2 -2
  350. package/dist/generated/gsk/transform.js +15 -15
  351. package/dist/generated/gst/allocation-params.js +2 -2
  352. package/dist/generated/gst/allocator.js +2 -2
  353. package/dist/generated/gst/bin.js +8 -8
  354. package/dist/generated/gst/buffer-list.js +6 -6
  355. package/dist/generated/gst/buffer-pool.js +4 -4
  356. package/dist/generated/gst/buffer.js +9 -9
  357. package/dist/generated/gst/bus.js +8 -8
  358. package/dist/generated/gst/caps-features.js +3 -3
  359. package/dist/generated/gst/caps.js +16 -16
  360. package/dist/generated/gst/constants.d.ts +674 -0
  361. package/dist/generated/gst/constants.js +674 -0
  362. package/dist/generated/gst/context.js +6 -6
  363. package/dist/generated/gst/control-binding.js +2 -2
  364. package/dist/generated/gst/date-time.js +3 -3
  365. package/dist/generated/gst/device.js +3 -3
  366. package/dist/generated/gst/element.js +6 -6
  367. package/dist/generated/gst/event.js +9 -9
  368. package/dist/generated/gst/functions.js +22 -22
  369. package/dist/generated/gst/id-str.js +2 -2
  370. package/dist/generated/gst/index.d.ts +1 -0
  371. package/dist/generated/gst/index.js +1 -0
  372. package/dist/generated/gst/iterator.js +3 -3
  373. package/dist/generated/gst/memory.js +4 -4
  374. package/dist/generated/gst/message.js +22 -22
  375. package/dist/generated/gst/mini-object.js +3 -3
  376. package/dist/generated/gst/object.js +2 -2
  377. package/dist/generated/gst/pad-template.js +3 -3
  378. package/dist/generated/gst/pad.js +11 -11
  379. package/dist/generated/gst/parse-context.js +2 -2
  380. package/dist/generated/gst/plugin.js +2 -2
  381. package/dist/generated/gst/promise.js +3 -3
  382. package/dist/generated/gst/proxy-pad.js +2 -2
  383. package/dist/generated/gst/query.js +11 -11
  384. package/dist/generated/gst/sample.js +6 -6
  385. package/dist/generated/gst/segment.js +2 -2
  386. package/dist/generated/gst/static-caps.js +2 -2
  387. package/dist/generated/gst/static-pad-template.js +2 -2
  388. package/dist/generated/gst/stream.js +3 -3
  389. package/dist/generated/gst/structure.js +13 -13
  390. package/dist/generated/gst/tag-list.js +12 -12
  391. package/dist/generated/gst/tag-setter.js +2 -2
  392. package/dist/generated/gst/toc-entry.js +4 -4
  393. package/dist/generated/gst/toc-setter.js +2 -2
  394. package/dist/generated/gst/toc.js +3 -3
  395. package/dist/generated/gst/type-find-factory.js +2 -2
  396. package/dist/generated/gst/uri.js +9 -9
  397. package/dist/generated/gstbase/adapter.js +8 -8
  398. package/dist/generated/gstbase/aggregator-pad.js +3 -3
  399. package/dist/generated/gstbase/aggregator.js +2 -2
  400. package/dist/generated/gstbase/base-parse-frame.js +2 -2
  401. package/dist/generated/gstbase/base-sink.js +3 -3
  402. package/dist/generated/gstbase/collect-pads.js +6 -6
  403. package/dist/generated/gstbase/constants.d.ts +6 -0
  404. package/dist/generated/gstbase/constants.js +6 -0
  405. package/dist/generated/gstbase/flow-combiner.js +2 -2
  406. package/dist/generated/gstbase/functions.js +11 -11
  407. package/dist/generated/gstbase/index.d.ts +1 -0
  408. package/dist/generated/gstbase/index.js +1 -0
  409. package/dist/generated/gtk/about-dialog.js +3 -2
  410. package/dist/generated/gtk/accessible.js +4 -4
  411. package/dist/generated/gtk/actionable.js +2 -2
  412. package/dist/generated/gtk/app-chooser-button.js +3 -2
  413. package/dist/generated/gtk/app-chooser-dialog.js +3 -2
  414. package/dist/generated/gtk/app-chooser-widget.js +2 -2
  415. package/dist/generated/gtk/app-chooser.js +3 -2
  416. package/dist/generated/gtk/application-window.d.ts +308 -0
  417. package/dist/generated/gtk/application-window.js +659 -1
  418. package/dist/generated/gtk/assistant.js +3 -2
  419. package/dist/generated/gtk/atcontext.js +3 -2
  420. package/dist/generated/gtk/bitset.js +3 -3
  421. package/dist/generated/gtk/bookmark-list.d.ts +61 -0
  422. package/dist/generated/gtk/bookmark-list.js +108 -0
  423. package/dist/generated/gtk/border.js +2 -2
  424. package/dist/generated/gtk/builder-list-item-factory.js +4 -3
  425. package/dist/generated/gtk/builder.js +4 -3
  426. package/dist/generated/gtk/button.js +2 -2
  427. package/dist/generated/gtk/calendar.js +2 -2
  428. package/dist/generated/gtk/cell-area.js +3 -2
  429. package/dist/generated/gtk/cell-renderer.js +3 -2
  430. package/dist/generated/gtk/cell-view.js +4 -3
  431. package/dist/generated/gtk/check-button.js +2 -2
  432. package/dist/generated/gtk/color-dialog-button.js +2 -2
  433. package/dist/generated/gtk/color-dialog.js +2 -2
  434. package/dist/generated/gtk/column-view.js +5 -3
  435. package/dist/generated/gtk/combo-box.js +3 -2
  436. package/dist/generated/gtk/constant-expression.js +2 -2
  437. package/dist/generated/gtk/constants.d.ts +401 -0
  438. package/dist/generated/gtk/constants.js +401 -0
  439. package/dist/generated/gtk/constraint-layout.js +4 -3
  440. package/dist/generated/gtk/constraint.js +4 -3
  441. package/dist/generated/gtk/css-section.js +6 -5
  442. package/dist/generated/gtk/directory-list.d.ts +61 -0
  443. package/dist/generated/gtk/directory-list.js +112 -3
  444. package/dist/generated/gtk/drop-down.js +3 -2
  445. package/dist/generated/gtk/drop-target-async.js +2 -2
  446. package/dist/generated/gtk/drop-target.js +3 -3
  447. package/dist/generated/gtk/editable-label.js +3 -2
  448. package/dist/generated/gtk/editable.js +2 -2
  449. package/dist/generated/gtk/entry-completion.js +3 -2
  450. package/dist/generated/gtk/entry.js +9 -6
  451. package/dist/generated/gtk/expression-watch.js +2 -2
  452. package/dist/generated/gtk/expression.js +3 -3
  453. package/dist/generated/gtk/file-chooser-dialog.js +7 -6
  454. package/dist/generated/gtk/file-chooser-native.js +7 -6
  455. package/dist/generated/gtk/file-chooser-widget.js +7 -6
  456. package/dist/generated/gtk/file-chooser.js +7 -6
  457. package/dist/generated/gtk/file-dialog.js +13 -12
  458. package/dist/generated/gtk/file-filter.js +2 -2
  459. package/dist/generated/gtk/file-launcher.js +3 -2
  460. package/dist/generated/gtk/filter-list-model.d.ts +61 -0
  461. package/dist/generated/gtk/filter-list-model.js +111 -2
  462. package/dist/generated/gtk/fixed-layout-child.js +2 -2
  463. package/dist/generated/gtk/fixed.js +2 -2
  464. package/dist/generated/gtk/flatten-list-model.d.ts +61 -0
  465. package/dist/generated/gtk/flatten-list-model.js +112 -3
  466. package/dist/generated/gtk/font-button.js +2 -2
  467. package/dist/generated/gtk/font-chooser-dialog.js +2 -2
  468. package/dist/generated/gtk/font-chooser-widget.js +2 -2
  469. package/dist/generated/gtk/font-chooser.js +2 -2
  470. package/dist/generated/gtk/font-dialog-button.js +3 -3
  471. package/dist/generated/gtk/font-dialog.js +3 -3
  472. package/dist/generated/gtk/functions.js +5 -4
  473. package/dist/generated/gtk/gesture-single.js +2 -2
  474. package/dist/generated/gtk/gesture.js +2 -2
  475. package/dist/generated/gtk/glarea.js +2 -2
  476. package/dist/generated/gtk/grid-view.js +3 -2
  477. package/dist/generated/gtk/icon-paintable.d.ts +120 -0
  478. package/dist/generated/gtk/icon-paintable.js +222 -2
  479. package/dist/generated/gtk/icon-view.js +13 -11
  480. package/dist/generated/gtk/image.js +5 -3
  481. package/dist/generated/gtk/imcontext.js +2 -2
  482. package/dist/generated/gtk/index.d.ts +1 -0
  483. package/dist/generated/gtk/index.js +1 -0
  484. package/dist/generated/gtk/inscription.js +2 -2
  485. package/dist/generated/gtk/label.js +3 -3
  486. package/dist/generated/gtk/list-box-row.js +2 -2
  487. package/dist/generated/gtk/list-store.js +4 -3
  488. package/dist/generated/gtk/list-view.js +3 -2
  489. package/dist/generated/gtk/map-list-model.d.ts +61 -0
  490. package/dist/generated/gtk/map-list-model.js +111 -2
  491. package/dist/generated/gtk/media-file.js +3 -2
  492. package/dist/generated/gtk/media-stream.d.ts +120 -0
  493. package/dist/generated/gtk/media-stream.js +221 -2
  494. package/dist/generated/gtk/multi-filter.d.ts +61 -0
  495. package/dist/generated/gtk/multi-filter.js +108 -0
  496. package/dist/generated/gtk/multi-selection.d.ts +61 -0
  497. package/dist/generated/gtk/multi-selection.js +113 -4
  498. package/dist/generated/gtk/multi-sorter.d.ts +61 -0
  499. package/dist/generated/gtk/multi-sorter.js +108 -0
  500. package/dist/generated/gtk/no-selection.d.ts +61 -0
  501. package/dist/generated/gtk/no-selection.js +113 -4
  502. package/dist/generated/gtk/notebook.js +3 -2
  503. package/dist/generated/gtk/page-setup.js +33 -3
  504. package/dist/generated/gtk/paper-size.js +3 -3
  505. package/dist/generated/gtk/password-entry.js +3 -2
  506. package/dist/generated/gtk/picture.js +5 -3
  507. package/dist/generated/gtk/print-context.js +2 -2
  508. package/dist/generated/gtk/print-dialog.js +2 -2
  509. package/dist/generated/gtk/print-job.js +2 -2
  510. package/dist/generated/gtk/print-settings.js +33 -3
  511. package/dist/generated/gtk/print-setup.js +2 -2
  512. package/dist/generated/gtk/recent-info.js +9 -8
  513. package/dist/generated/gtk/recent-manager.js +2 -2
  514. package/dist/generated/gtk/requisition.js +2 -2
  515. package/dist/generated/gtk/scroll-info.js +2 -2
  516. package/dist/generated/gtk/search-entry.js +3 -2
  517. package/dist/generated/gtk/selection-filter-model.d.ts +61 -0
  518. package/dist/generated/gtk/selection-filter-model.js +111 -2
  519. package/dist/generated/gtk/selection-model.js +3 -3
  520. package/dist/generated/gtk/shortcut-controller.d.ts +61 -0
  521. package/dist/generated/gtk/shortcut-controller.js +108 -0
  522. package/dist/generated/gtk/shortcut.js +2 -2
  523. package/dist/generated/gtk/single-selection.d.ts +61 -0
  524. package/dist/generated/gtk/single-selection.js +113 -4
  525. package/dist/generated/gtk/slice-list-model.d.ts +61 -0
  526. package/dist/generated/gtk/slice-list-model.js +111 -2
  527. package/dist/generated/gtk/snapshot.js +3 -3
  528. package/dist/generated/gtk/sort-list-model.d.ts +61 -0
  529. package/dist/generated/gtk/sort-list-model.js +111 -2
  530. package/dist/generated/gtk/spin-button.js +3 -2
  531. package/dist/generated/gtk/stack-page.js +5 -4
  532. package/dist/generated/gtk/stack.js +3 -2
  533. package/dist/generated/gtk/string-list.d.ts +61 -0
  534. package/dist/generated/gtk/string-list.js +108 -0
  535. package/dist/generated/gtk/switch.js +2 -2
  536. package/dist/generated/gtk/text-iter.js +5 -4
  537. package/dist/generated/gtk/text-view.js +2 -2
  538. package/dist/generated/gtk/text.js +5 -4
  539. package/dist/generated/gtk/tree-iter.js +2 -2
  540. package/dist/generated/gtk/tree-list-model.d.ts +61 -0
  541. package/dist/generated/gtk/tree-list-model.js +111 -2
  542. package/dist/generated/gtk/tree-list-row.js +3 -2
  543. package/dist/generated/gtk/tree-model-filter.js +7 -6
  544. package/dist/generated/gtk/tree-model-sort.js +7 -6
  545. package/dist/generated/gtk/tree-model.js +3 -3
  546. package/dist/generated/gtk/tree-path.js +2 -2
  547. package/dist/generated/gtk/tree-row-reference.js +5 -4
  548. package/dist/generated/gtk/tree-store.js +4 -3
  549. package/dist/generated/gtk/tree-view.js +15 -12
  550. package/dist/generated/gtk/video.js +3 -2
  551. package/dist/generated/gtk/widget-paintable.d.ts +121 -0
  552. package/dist/generated/gtk/widget-paintable.js +220 -1
  553. package/dist/generated/gtk/widget.js +13 -9
  554. package/dist/generated/gtksource/annotation.js +3 -2
  555. package/dist/generated/gtksource/buffer.js +5 -5
  556. package/dist/generated/gtksource/completion-context.d.ts +61 -0
  557. package/dist/generated/gtksource/completion-context.js +111 -3
  558. package/dist/generated/gtksource/completion-provider.js +4 -3
  559. package/dist/generated/gtksource/completion-snippets.js +4 -3
  560. package/dist/generated/gtksource/completion-words.js +4 -3
  561. package/dist/generated/gtksource/constants.d.ts +18 -0
  562. package/dist/generated/gtksource/constants.js +18 -0
  563. package/dist/generated/gtksource/encoding.js +2 -2
  564. package/dist/generated/gtksource/file-loader.js +4 -3
  565. package/dist/generated/gtksource/file-saver.js +4 -3
  566. package/dist/generated/gtksource/file.js +4 -3
  567. package/dist/generated/gtksource/functions.js +4 -4
  568. package/dist/generated/gtksource/gutter-renderer-pixbuf.js +5 -3
  569. package/dist/generated/gtksource/indenter.js +2 -2
  570. package/dist/generated/gtksource/index.d.ts +1 -0
  571. package/dist/generated/gtksource/index.js +1 -0
  572. package/dist/generated/gtksource/mark-attributes.js +5 -3
  573. package/dist/generated/gtksource/search-context.js +2 -2
  574. package/dist/generated/gtksource/snippet-manager.js +4 -3
  575. package/dist/generated/gtksource/snippet.js +16 -1
  576. package/dist/generated/gtksource/space-drawer.js +2 -2
  577. package/dist/generated/gtksource/style-scheme-preview.d.ts +57 -0
  578. package/dist/generated/gtksource/style-scheme-preview.js +119 -1
  579. package/dist/generated/gtksource/view.js +3 -2
  580. package/dist/generated/harfbuzz/constants.d.ts +49 -0
  581. package/dist/generated/harfbuzz/constants.js +49 -0
  582. package/dist/generated/harfbuzz/functions.js +56 -56
  583. package/dist/generated/harfbuzz/index.d.ts +1 -0
  584. package/dist/generated/harfbuzz/index.js +1 -0
  585. package/dist/generated/javascriptcore/constants.d.ts +42 -0
  586. package/dist/generated/javascriptcore/constants.js +42 -0
  587. package/dist/generated/javascriptcore/functions.js +2 -2
  588. package/dist/generated/javascriptcore/index.d.ts +1 -0
  589. package/dist/generated/javascriptcore/index.js +1 -0
  590. package/dist/generated/javascriptcore/value.js +2 -2
  591. package/dist/generated/json/array.js +6 -6
  592. package/dist/generated/json/builder.js +2 -2
  593. package/dist/generated/json/constants.d.ts +13 -0
  594. package/dist/generated/json/constants.js +13 -0
  595. package/dist/generated/json/functions.js +7 -7
  596. package/dist/generated/json/generator.js +3 -3
  597. package/dist/generated/json/index.d.ts +1 -0
  598. package/dist/generated/json/index.js +1 -0
  599. package/dist/generated/json/node.js +16 -16
  600. package/dist/generated/json/object.js +6 -6
  601. package/dist/generated/json/parser.js +3 -3
  602. package/dist/generated/json/path.js +2 -2
  603. package/dist/generated/json/reader.js +4 -4
  604. package/dist/generated/json/serializable.js +3 -3
  605. package/dist/generated/pango/attr-iterator.js +4 -4
  606. package/dist/generated/pango/attr-list.js +5 -5
  607. package/dist/generated/pango/attribute.js +2 -2
  608. package/dist/generated/pango/color.js +2 -2
  609. package/dist/generated/pango/constants.d.ts +63 -0
  610. package/dist/generated/pango/constants.js +63 -0
  611. package/dist/generated/pango/context.js +5 -5
  612. package/dist/generated/pango/font-description.js +3 -3
  613. package/dist/generated/pango/font-face.js +2 -2
  614. package/dist/generated/pango/font-family.d.ts +61 -0
  615. package/dist/generated/pango/font-family.js +108 -0
  616. package/dist/generated/pango/font-map.d.ts +61 -0
  617. package/dist/generated/pango/font-map.js +108 -0
  618. package/dist/generated/pango/font-metrics.js +2 -2
  619. package/dist/generated/pango/font.js +5 -5
  620. package/dist/generated/pango/fontset.js +2 -2
  621. package/dist/generated/pango/functions.js +50 -50
  622. package/dist/generated/pango/glyph-item-iter.js +2 -2
  623. package/dist/generated/pango/glyph-item.js +3 -3
  624. package/dist/generated/pango/glyph-string.js +2 -2
  625. package/dist/generated/pango/index.d.ts +1 -0
  626. package/dist/generated/pango/index.js +1 -0
  627. package/dist/generated/pango/item.js +3 -3
  628. package/dist/generated/pango/layout-iter.js +4 -4
  629. package/dist/generated/pango/layout-line.js +2 -2
  630. package/dist/generated/pango/layout.js +8 -8
  631. package/dist/generated/pango/matrix.js +4 -4
  632. package/dist/generated/pango/renderer.js +4 -4
  633. package/dist/generated/pango/tab-array.js +2 -2
  634. package/dist/generated/pangocairo/font.js +2 -2
  635. package/dist/generated/pangocairo/functions.js +2 -2
  636. package/dist/generated/secret/constants.d.ts +22 -0
  637. package/dist/generated/secret/constants.js +22 -0
  638. package/dist/generated/secret/functions.js +4 -3
  639. package/dist/generated/secret/index.d.ts +1 -0
  640. package/dist/generated/secret/index.js +1 -0
  641. package/dist/generated/secret/item.js +5 -5
  642. package/dist/generated/secret/prompt.js +3 -3
  643. package/dist/generated/secret/retrievable.js +4 -4
  644. package/dist/generated/secret/schema.js +2 -2
  645. package/dist/generated/secret/service.js +6 -6
  646. package/dist/generated/secret/value.js +2 -2
  647. package/dist/generated/soup/constants.d.ts +74 -0
  648. package/dist/generated/soup/constants.js +74 -0
  649. package/dist/generated/soup/content-sniffer.js +2 -2
  650. package/dist/generated/soup/cookie.js +3 -3
  651. package/dist/generated/soup/functions.js +11 -11
  652. package/dist/generated/soup/hstspolicy.js +3 -3
  653. package/dist/generated/soup/index.d.ts +1 -0
  654. package/dist/generated/soup/index.js +1 -0
  655. package/dist/generated/soup/message-body.js +4 -4
  656. package/dist/generated/soup/message-headers.js +4 -4
  657. package/dist/generated/soup/message-metrics.js +2 -2
  658. package/dist/generated/soup/message.js +7 -7
  659. package/dist/generated/soup/multipart-input-stream.d.ts +61 -0
  660. package/dist/generated/soup/multipart-input-stream.js +135 -2
  661. package/dist/generated/soup/multipart.js +4 -4
  662. package/dist/generated/soup/server-message.js +6 -6
  663. package/dist/generated/soup/session.js +9 -7
  664. package/dist/generated/soup/websocket-connection.js +2 -2
  665. package/dist/generated/soup/websocket-extension.js +3 -3
  666. package/dist/generated/vte/constants.d.ts +145 -0
  667. package/dist/generated/vte/constants.js +145 -0
  668. package/dist/generated/vte/index.d.ts +1 -0
  669. package/dist/generated/vte/index.js +1 -0
  670. package/dist/generated/vte/pty.d.ts +42 -0
  671. package/dist/generated/vte/pty.js +85 -0
  672. package/dist/generated/vte/regex.js +3 -3
  673. package/dist/generated/vte/terminal.d.ts +83 -0
  674. package/dist/generated/vte/terminal.js +226 -14
  675. package/dist/generated/vte/uuid.js +3 -3
  676. package/dist/generated/webkit/application-info.js +2 -2
  677. package/dist/generated/webkit/authentication-request.js +3 -3
  678. package/dist/generated/webkit/automation-session.js +2 -2
  679. package/dist/generated/webkit/constants.d.ts +92 -0
  680. package/dist/generated/webkit/constants.js +92 -0
  681. package/dist/generated/webkit/context-menu-item.js +3 -2
  682. package/dist/generated/webkit/context-menu.js +2 -2
  683. package/dist/generated/webkit/credential.js +2 -2
  684. package/dist/generated/webkit/feature-list.js +3 -3
  685. package/dist/generated/webkit/feature.js +2 -2
  686. package/dist/generated/webkit/form-submission-request.js +3 -3
  687. package/dist/generated/webkit/geolocation-position.js +2 -2
  688. package/dist/generated/webkit/index.d.ts +1 -0
  689. package/dist/generated/webkit/index.js +1 -0
  690. package/dist/generated/webkit/input-method-underline.js +2 -2
  691. package/dist/generated/webkit/itpfirst-party.js +3 -3
  692. package/dist/generated/webkit/itpthird-party.js +2 -2
  693. package/dist/generated/webkit/memory-pressure-settings.js +2 -2
  694. package/dist/generated/webkit/navigation-action.js +2 -2
  695. package/dist/generated/webkit/navigation-policy-decision.js +2 -2
  696. package/dist/generated/webkit/network-proxy-settings.js +2 -2
  697. package/dist/generated/webkit/option-menu-item.js +2 -2
  698. package/dist/generated/webkit/option-menu.js +2 -2
  699. package/dist/generated/webkit/permission-state-query.js +3 -3
  700. package/dist/generated/webkit/script-dialog.js +2 -2
  701. package/dist/generated/webkit/script-message-reply.js +2 -2
  702. package/dist/generated/webkit/security-origin.js +2 -2
  703. package/dist/generated/webkit/urirequest.js +2 -2
  704. package/dist/generated/webkit/uriresponse.js +2 -2
  705. package/dist/generated/webkit/urischeme-request.js +2 -2
  706. package/dist/generated/webkit/user-content-filter-store.js +4 -4
  707. package/dist/generated/webkit/user-content-filter.js +2 -2
  708. package/dist/generated/webkit/user-message.js +2 -2
  709. package/dist/generated/webkit/user-script.js +2 -2
  710. package/dist/generated/webkit/user-style-sheet.js +2 -2
  711. package/dist/generated/webkit/web-extension-match-pattern.js +2 -2
  712. package/dist/generated/webkit/web-view-session-state.js +3 -3
  713. package/dist/generated/webkit/web-view.js +2 -2
  714. package/dist/generated/webkit/website-data.js +2 -2
  715. package/dist/generated/webkitwebprocessextension/console-message.js +2 -2
  716. package/dist/generated/webkitwebprocessextension/context-menu-item.js +3 -2
  717. package/dist/generated/webkitwebprocessextension/context-menu.js +2 -2
  718. package/dist/generated/webkitwebprocessextension/urirequest.js +2 -2
  719. package/dist/generated/webkitwebprocessextension/uriresponse.js +2 -2
  720. package/dist/generated/webkitwebprocessextension/user-message.js +2 -2
  721. package/dist/gl/gl.js +3 -2
  722. package/dist/native.d.ts +16 -5
  723. package/dist/native.js +45 -11
  724. package/package.json +3 -3
@@ -2,6 +2,7 @@
2
2
  * Cairo drawing function bindings via libcairo.
3
3
  * These wrap Cairo calls for use in GtkDrawingArea draw callbacks.
4
4
  */
5
+ import type { LineCap, LineJoin, Operator } from "../generated/cairo/enums.js";
5
6
  /**
6
7
  * Begin a new sub-path. After this call the current point will be (x, y).
7
8
  */
@@ -81,14 +82,12 @@ export declare function setSourceRgba(cr: unknown, red: number, green: number, b
81
82
  export declare function setLineWidth(cr: unknown, width: number): void;
82
83
  /**
83
84
  * Sets the current line cap style.
84
- * @param lineCap - 0 = BUTT, 1 = ROUND, 2 = SQUARE
85
85
  */
86
- export declare function setLineCap(cr: unknown, lineCap: number): void;
86
+ export declare function setLineCap(cr: unknown, lineCap: LineCap): void;
87
87
  /**
88
88
  * Sets the current line join style.
89
- * @param lineJoin - 0 = MITER, 1 = ROUND, 2 = BEVEL
90
89
  */
91
- export declare function setLineJoin(cr: unknown, lineJoin: number): void;
90
+ export declare function setLineJoin(cr: unknown, lineJoin: LineJoin): void;
92
91
  /**
93
92
  * Sets the dash pattern to be used by stroke.
94
93
  */
@@ -128,6 +127,5 @@ export declare function clipPreserve(cr: unknown): void;
128
127
  export declare function resetClip(cr: unknown): void;
129
128
  /**
130
129
  * Sets the compositing operator.
131
- * @param op - Operator constant (e.g., CAIRO_OPERATOR_OVER = 2)
132
130
  */
133
- export declare function setOperator(cr: unknown, op: number): void;
131
+ export declare function setOperator(cr: unknown, op: Operator): void;
@@ -173,7 +173,6 @@ export function setLineWidth(cr, width) {
173
173
  }
174
174
  /**
175
175
  * Sets the current line cap style.
176
- * @param lineCap - 0 = BUTT, 1 = ROUND, 2 = SQUARE
177
176
  */
178
177
  export function setLineCap(cr, lineCap) {
179
178
  call(LIB, "cairo_set_line_cap", [
@@ -183,7 +182,6 @@ export function setLineCap(cr, lineCap) {
183
182
  }
184
183
  /**
185
184
  * Sets the current line join style.
186
- * @param lineJoin - 0 = MITER, 1 = ROUND, 2 = BEVEL
187
185
  */
188
186
  export function setLineJoin(cr, lineJoin) {
189
187
  call(LIB, "cairo_set_line_join", [
@@ -264,7 +262,6 @@ export function resetClip(cr) {
264
262
  }
265
263
  /**
266
264
  * Sets the compositing operator.
267
- * @param op - Operator constant (e.g., CAIRO_OPERATOR_OVER = 2)
268
265
  */
269
266
  export function setOperator(cr, op) {
270
267
  call(LIB, "cairo_set_operator", [
@@ -2,7 +2,7 @@ import type { GirNamespace, TypeRegistry } from "@gtkx/gir";
2
2
  /**
3
3
  * Configuration options for the FFI code generator.
4
4
  */
5
- interface GeneratorOptions {
5
+ type GeneratorOptions = {
6
6
  /** Output directory for generated files. */
7
7
  outputDir: string;
8
8
  /** The namespace being generated (e.g., "Gtk"). */
@@ -13,7 +13,7 @@ interface GeneratorOptions {
13
13
  typeRegistry?: TypeRegistry;
14
14
  /** All parsed namespaces for cross-namespace parent method lookup. */
15
15
  allNamespaces?: Map<string, GirNamespace>;
16
- }
16
+ };
17
17
  /**
18
18
  * Generates TypeScript FFI bindings from GIR namespace definitions.
19
19
  * Creates classes, methods, properties, and signal handlers that call
@@ -32,6 +32,8 @@ export declare class CodeGenerator {
32
32
  private usesAlloc;
33
33
  private usesNativeError;
34
34
  private usesGetObject;
35
+ private usesGetBoxed;
36
+ private usesGetInterface;
35
37
  private usesRegisterType;
36
38
  private usesSignalMeta;
37
39
  private usedEnums;
@@ -108,6 +110,7 @@ export declare class CodeGenerator {
108
110
  private generateFunctions;
109
111
  private generateFunction;
110
112
  private generateEnums;
113
+ private generateConstants;
111
114
  private generateIndex;
112
115
  private generateParameterList;
113
116
  private generateCallArguments;
@@ -120,8 +123,11 @@ export declare class CodeGenerator {
120
123
  private formatCode;
121
124
  private generateCyclicTypeReturn;
122
125
  /**
123
- * Adds a catch-all signal handler overload.
124
- * Uses `any` for TypeScript compatibility with typed overloads.
126
+ * Adds a catch-all signal handler overload for unknown signal types.
127
+ *
128
+ * Uses `any` because TypeScript overload resolution requires the catch-all
129
+ * signature to be compatible with all typed overloads. Using `unknown` would
130
+ * prevent passing typed handlers to this overload.
125
131
  */
126
132
  private addSignalCatchAllOverload;
127
133
  }
@@ -205,6 +205,8 @@ export class CodeGenerator {
205
205
  usesAlloc = false;
206
206
  usesNativeError = false;
207
207
  usesGetObject = false;
208
+ usesGetBoxed = false;
209
+ usesGetInterface = false;
208
210
  usesRegisterType = false;
209
211
  usesSignalMeta = false;
210
212
  usedEnums = new Set();
@@ -262,6 +264,9 @@ export class CodeGenerator {
262
264
  if (standaloneFunctions.length > 0) {
263
265
  files.set("functions.ts", await this.generateFunctions(standaloneFunctions, namespace.sharedLibrary));
264
266
  }
267
+ if (namespace.constants.length > 0) {
268
+ files.set("constants.ts", await this.generateConstants(namespace.constants));
269
+ }
265
270
  files.set("index.ts", await this.generateIndex(files.keys()));
266
271
  return files;
267
272
  }
@@ -329,6 +334,8 @@ export class CodeGenerator {
329
334
  this.usesAlloc = false;
330
335
  this.usesNativeError = false;
331
336
  this.usesGetObject = false;
337
+ this.usesGetBoxed = false;
338
+ this.usesGetInterface = false;
332
339
  this.usesRegisterType = false;
333
340
  this.usesSignalMeta = false;
334
341
  this.usedEnums.clear();
@@ -373,7 +380,17 @@ export class CodeGenerator {
373
380
  const seenInterfaceMethodNames = new Set();
374
381
  const interfaceMethods = [];
375
382
  for (const ifaceName of cls.implements) {
376
- const iface = interfaceMap.get(ifaceName);
383
+ let iface;
384
+ if (ifaceName.includes(".")) {
385
+ const [ns, ifaceClassName] = ifaceName.split(".", 2);
386
+ const ifaceNs = this.options.allNamespaces?.get(ns ?? "");
387
+ if (ifaceNs && ifaceClassName) {
388
+ iface = ifaceNs.interfaces.find((i) => i.name === ifaceClassName);
389
+ }
390
+ }
391
+ else {
392
+ iface = interfaceMap.get(ifaceName);
393
+ }
377
394
  if (!iface)
378
395
  continue;
379
396
  for (const method of iface.methods) {
@@ -724,19 +741,28 @@ ${args ? `${args},` : ""}
724
741
  const args = this.generateCallArguments(ctor.parameters);
725
742
  const ctorDoc = formatMethodDoc(ctor.doc, ctor.parameters);
726
743
  const borrowed = ctor.returnType.transferOwnership !== "full";
744
+ const errorArg = ctor.throws ? this.generateErrorArgument() : "";
745
+ const allArgs = errorArg ? args + (args ? ",\n" : "") + errorArg : args;
727
746
  this.usesGetObject = true;
728
- return `${ctorDoc} static ${methodName}(${params}): ${className} {
729
- const ptr = call(
747
+ const lines = [];
748
+ lines.push(`${ctorDoc} static ${methodName}(${params}): ${className} {`);
749
+ if (ctor.throws) {
750
+ lines.push(` const error = { value: null as unknown };`);
751
+ }
752
+ lines.push(` const ptr = call(
730
753
  "${sharedLibrary}",
731
754
  "${ctor.cIdentifier}",
732
755
  [
733
- ${args}
756
+ ${allArgs}
734
757
  ],
735
758
  { type: "gobject", borrowed: ${borrowed} }
736
- );
737
- return getObject(ptr) as ${className};
738
- }
739
- `;
759
+ );`);
760
+ if (ctor.throws) {
761
+ lines.push(this.generateErrorCheck());
762
+ }
763
+ lines.push(` return getObject(ptr) as ${className};`);
764
+ lines.push(` }`);
765
+ return `${lines.join("\n")}\n`;
740
766
  }
741
767
  generateStaticFunctions(functions, sharedLibrary, className) {
742
768
  const sections = [];
@@ -934,8 +960,11 @@ ${allArgs ? `${allArgs},` : ""}
934
960
  buildAsyncCallArgs(method, finishMethod, outputParams, sharedLibrary, isNullable = false) {
935
961
  const returnTypeMapping = this.typeMapper.mapType(finishMethod.returnType, true);
936
962
  const hasMainReturn = returnTypeMapping.ts !== "void";
937
- const needsObjectWrap = (returnTypeMapping.ffi.type === "gobject" || returnTypeMapping.ffi.type === "boxed") &&
938
- returnTypeMapping.ts !== "unknown";
963
+ const isInterface = returnTypeMapping.kind === "interface";
964
+ const needsGObjectWrap = returnTypeMapping.ffi.type === "gobject" && returnTypeMapping.ts !== "unknown" && !isInterface;
965
+ const needsBoxedWrap = returnTypeMapping.ffi.type === "boxed" && returnTypeMapping.ts !== "unknown" && !isInterface;
966
+ const needsInterfaceWrap = returnTypeMapping.ffi.type === "gobject" && returnTypeMapping.ts !== "unknown" && isInterface;
967
+ const needsObjectWrap = needsGObjectWrap || needsBoxedWrap || needsInterfaceWrap;
939
968
  const lines = [];
940
969
  for (const param of outputParams) {
941
970
  const paramName = toValidIdentifier(toCamelCase(param.name));
@@ -995,7 +1024,22 @@ ${allArgs ? `${allArgs},` : ""}
995
1024
  }
996
1025
  if (outputParams.length === 0) {
997
1026
  if (hasMainReturn) {
998
- if (needsObjectWrap) {
1027
+ if (needsBoxedWrap) {
1028
+ this.usesGetBoxed = true;
1029
+ const boxedTypeName = finishReturnType.ffi.innerType;
1030
+ if (isNullable) {
1031
+ lines.push(` if (ptr === null) { resolve(null); return; }`);
1032
+ }
1033
+ lines.push(` resolve(getBoxed(ptr, "${boxedTypeName}") as ${finishReturnType.ts});`);
1034
+ }
1035
+ else if (needsInterfaceWrap) {
1036
+ this.usesGetInterface = true;
1037
+ if (isNullable) {
1038
+ lines.push(` if (ptr === null) { resolve(null); return; }`);
1039
+ }
1040
+ lines.push(` resolve(getInterface(ptr, ${finishReturnType.ts})!);`);
1041
+ }
1042
+ else if (needsGObjectWrap) {
999
1043
  this.usesGetObject = true;
1000
1044
  if (isNullable) {
1001
1045
  lines.push(` if (ptr === null) { resolve(null); return; }`);
@@ -1013,7 +1057,26 @@ ${allArgs ? `${allArgs},` : ""}
1013
1057
  else {
1014
1058
  const resolveFields = [];
1015
1059
  if (hasMainReturn) {
1016
- if (needsObjectWrap) {
1060
+ if (needsBoxedWrap) {
1061
+ this.usesGetBoxed = true;
1062
+ const boxedTypeName = finishReturnType.ffi.innerType;
1063
+ if (isNullable) {
1064
+ lines.push(` const result = (ptr === null ? null : getBoxed(ptr, "${boxedTypeName}")) as ${finishReturnType.ts} | null;`);
1065
+ }
1066
+ else {
1067
+ lines.push(` const result = getBoxed(ptr, "${boxedTypeName}") as ${finishReturnType.ts};`);
1068
+ }
1069
+ }
1070
+ else if (needsInterfaceWrap) {
1071
+ this.usesGetInterface = true;
1072
+ if (isNullable) {
1073
+ lines.push(` const result = ptr === null ? null : getInterface(ptr, ${finishReturnType.ts});`);
1074
+ }
1075
+ else {
1076
+ lines.push(` const result = getInterface(ptr, ${finishReturnType.ts})!;`);
1077
+ }
1078
+ }
1079
+ else if (needsGObjectWrap) {
1017
1080
  this.usesGetObject = true;
1018
1081
  if (isNullable) {
1019
1082
  lines.push(` const result = (ptr === null ? null : getObject(ptr)) as ${finishReturnType.ts} | null;`);
@@ -1090,9 +1153,16 @@ ${allArgs ? `${allArgs},` : ""}
1090
1153
  const returnTypeAnnotation = tsReturnType !== "void" ? `: ${tsReturnType}` : "";
1091
1154
  const hasResultParam = method.parameters.some((p) => toValidIdentifier(toCamelCase(p.name)) === "result");
1092
1155
  const resultVarName = hasResultParam ? "_result" : "result";
1093
- const needsObjectWrap = (returnTypeMapping.ffi.type === "gobject" || returnTypeMapping.ffi.type === "boxed") &&
1156
+ const needsGObjectWrap = returnTypeMapping.ffi.type === "gobject" &&
1157
+ baseReturnType !== "unknown" &&
1158
+ returnTypeMapping.kind !== "interface";
1159
+ const needsBoxedWrap = returnTypeMapping.ffi.type === "boxed" &&
1094
1160
  baseReturnType !== "unknown" &&
1095
1161
  returnTypeMapping.kind !== "interface";
1162
+ const needsInterfaceWrap = returnTypeMapping.ffi.type === "gobject" &&
1163
+ baseReturnType !== "unknown" &&
1164
+ returnTypeMapping.kind === "interface";
1165
+ const needsObjectWrap = needsGObjectWrap || needsBoxedWrap || needsInterfaceWrap;
1096
1166
  const needsArrayWrap = returnTypeMapping.ffi.type === "array" &&
1097
1167
  returnTypeMapping.ffi.itemType?.type === "gobject" &&
1098
1168
  baseReturnType.endsWith("[]");
@@ -1137,6 +1207,15 @@ ${allArgs ? `${allArgs},` : ""}
1137
1207
  if (isCyclic) {
1138
1208
  lines.push(this.generateCyclicTypeReturn(baseReturnType));
1139
1209
  }
1210
+ else if (needsBoxedWrap) {
1211
+ this.usesGetBoxed = true;
1212
+ const boxedTypeName = returnTypeMapping.ffi.innerType;
1213
+ lines.push(` return getBoxed(ptr, "${boxedTypeName}") as ${baseReturnType};`);
1214
+ }
1215
+ else if (needsInterfaceWrap) {
1216
+ this.usesGetInterface = true;
1217
+ lines.push(` return getInterface(ptr, ${baseReturnType})!;`);
1218
+ }
1140
1219
  else {
1141
1220
  this.usesGetObject = true;
1142
1221
  lines.push(` return getObject(ptr) as ${baseReturnType};`);
@@ -1723,9 +1802,16 @@ ${args}
1723
1802
  const tsReturnType = fullReturnType === "void" ? "" : `: ${fullReturnType}`;
1724
1803
  const hasResultParam = func.parameters.some((p) => toValidIdentifier(toCamelCase(p.name)) === "result");
1725
1804
  const resultVarName = hasResultParam ? "_result" : "result";
1726
- const needsObjectWrap = (returnTypeMapping.ffi.type === "gobject" || returnTypeMapping.ffi.type === "boxed") &&
1805
+ const needsGObjectWrap = returnTypeMapping.ffi.type === "gobject" &&
1727
1806
  returnTypeMapping.ts !== "unknown" &&
1728
1807
  returnTypeMapping.kind !== "interface";
1808
+ const needsBoxedWrap = returnTypeMapping.ffi.type === "boxed" &&
1809
+ returnTypeMapping.ts !== "unknown" &&
1810
+ returnTypeMapping.kind !== "interface";
1811
+ const needsInterfaceWrap = returnTypeMapping.ffi.type === "gobject" &&
1812
+ returnTypeMapping.ts !== "unknown" &&
1813
+ returnTypeMapping.kind === "interface";
1814
+ const needsObjectWrap = needsGObjectWrap || needsBoxedWrap || needsInterfaceWrap;
1729
1815
  const hasReturnValue = returnTypeMapping.ts !== "void";
1730
1816
  const gtkAllocatesRefs = this.identifyGtkAllocatesRefs(func.parameters);
1731
1817
  const lines = [];
@@ -1742,7 +1828,6 @@ ${args}
1742
1828
  const allArgs = errorArg ? args + (args ? ",\n" : "") + errorArg : args;
1743
1829
  const refRewrapCode = this.generateRefRewrapCode(gtkAllocatesRefs).map((line) => line.replace(/^ {4}/, " "));
1744
1830
  if (needsObjectWrap && hasReturnValue) {
1745
- this.usesGetObject = true;
1746
1831
  lines.push(` const ptr = call("${sharedLibrary}", "${func.cIdentifier}", [
1747
1832
  ${allArgs ? `${allArgs},` : ""}
1748
1833
  ], ${this.generateTypeDescriptor(returnTypeMapping.ffi)});`);
@@ -1753,7 +1838,19 @@ ${allArgs ? `${allArgs},` : ""}
1753
1838
  if (isNullable) {
1754
1839
  lines.push(` if (ptr === null) return null;`);
1755
1840
  }
1756
- lines.push(` return getObject(ptr) as ${baseReturnType};`);
1841
+ if (needsBoxedWrap) {
1842
+ this.usesGetBoxed = true;
1843
+ const boxedTypeName = returnTypeMapping.ffi.innerType;
1844
+ lines.push(` return getBoxed(ptr, "${boxedTypeName}") as ${baseReturnType};`);
1845
+ }
1846
+ else if (needsInterfaceWrap) {
1847
+ this.usesGetInterface = true;
1848
+ lines.push(` return getInterface(ptr, ${baseReturnType})!;`);
1849
+ }
1850
+ else {
1851
+ this.usesGetObject = true;
1852
+ lines.push(` return getObject(ptr) as ${baseReturnType};`);
1853
+ }
1757
1854
  }
1758
1855
  else {
1759
1856
  const hasRefRewrap = gtkAllocatesRefs.length > 0;
@@ -1795,6 +1892,22 @@ ${allArgs ? `${allArgs},` : ""}
1795
1892
  });
1796
1893
  return this.formatCode(`${sections.join("\n\n")}\n`);
1797
1894
  }
1895
+ async generateConstants(constants) {
1896
+ const seen = new Set();
1897
+ const sections = [];
1898
+ for (const constant of constants) {
1899
+ const constName = constant.name;
1900
+ if (seen.has(constName)) {
1901
+ continue;
1902
+ }
1903
+ seen.add(constName);
1904
+ const isStringType = constant.type.name === "utf8" || constant.type.name === "filename";
1905
+ const constValue = isStringType ? `"${constant.value}"` : constant.value;
1906
+ const constDoc = constant.doc ? formatDoc(constant.doc) : "";
1907
+ sections.push(`${constDoc}export const ${constName} = ${constValue};`);
1908
+ }
1909
+ return this.formatCode(`${sections.join("\n\n")}\n`);
1910
+ }
1798
1911
  async generateIndex(fileNames) {
1799
1912
  const exports = Array.from(fileNames)
1800
1913
  .filter((f) => f !== "index.ts")
@@ -1838,10 +1951,16 @@ ${allArgs ? `${allArgs},` : ""}
1838
1951
  typeof mapped.ffi.innerType === "object" &&
1839
1952
  (mapped.ffi.innerType.type === "boxed" || mapped.ffi.innerType.type === "gobject")) {
1840
1953
  const innerTsType = mapped.ts.slice(4, -1);
1954
+ const isBoxed = mapped.ffi.innerType.type === "boxed";
1955
+ const boxedTypeName = isBoxed
1956
+ ? mapped.ffi.innerType.innerType
1957
+ : undefined;
1841
1958
  return {
1842
1959
  paramName: toValidIdentifier(toCamelCase(param.name)),
1843
1960
  innerType: innerTsType,
1844
1961
  nullable: this.typeMapper.isNullable(param),
1962
+ isBoxed,
1963
+ boxedTypeName,
1845
1964
  };
1846
1965
  }
1847
1966
  return null;
@@ -1852,10 +1971,18 @@ ${allArgs ? `${allArgs},` : ""}
1852
1971
  if (gtkAllocatesRefs.length === 0) {
1853
1972
  return [];
1854
1973
  }
1855
- this.usesGetObject = true;
1856
- return gtkAllocatesRefs.map((ref) => ref.nullable
1857
- ? ` if (${ref.paramName}) ${ref.paramName}.value = getObject(${ref.paramName}.value) as ${ref.innerType};`
1858
- : ` ${ref.paramName}.value = getObject(${ref.paramName}.value) as ${ref.innerType};`);
1974
+ return gtkAllocatesRefs.map((ref) => {
1975
+ if (ref.isBoxed && ref.boxedTypeName) {
1976
+ this.usesGetBoxed = true;
1977
+ return ref.nullable
1978
+ ? ` if (${ref.paramName}) ${ref.paramName}.value = getBoxed(${ref.paramName}.value, "${ref.boxedTypeName}") as ${ref.innerType};`
1979
+ : ` ${ref.paramName}.value = getBoxed(${ref.paramName}.value, "${ref.boxedTypeName}") as ${ref.innerType};`;
1980
+ }
1981
+ this.usesGetObject = true;
1982
+ return ref.nullable
1983
+ ? ` if (${ref.paramName}) ${ref.paramName}.value = getObject(${ref.paramName}.value) as ${ref.innerType};`
1984
+ : ` ${ref.paramName}.value = getObject(${ref.paramName}.value) as ${ref.innerType};`;
1985
+ });
1859
1986
  }
1860
1987
  generateErrorArgument(indent = " ") {
1861
1988
  return `${indent} {\n${indent} type: { type: "ref", innerType: { type: "boxed", innerType: "GError", lib: "libglib-2.0.so.0" } },\n${indent} value: error,\n${indent} }`;
@@ -1941,6 +2068,10 @@ ${indent} }`;
1941
2068
  ffiImports.push("NativeError");
1942
2069
  if (this.usesGetObject)
1943
2070
  ffiImports.push("getObject");
2071
+ if (this.usesGetBoxed)
2072
+ ffiImports.push("getBoxed");
2073
+ if (this.usesGetInterface)
2074
+ ffiImports.push("getInterface");
1944
2075
  if (this.usesInstantiating)
1945
2076
  ffiImports.push("isInstantiating", "setInstantiating");
1946
2077
  if (this.usesRegisterType)
@@ -2033,8 +2164,11 @@ ${indent} }`;
2033
2164
  return ` return { id: ptr } as unknown as ${baseReturnType};`;
2034
2165
  }
2035
2166
  /**
2036
- * Adds a catch-all signal handler overload.
2037
- * Uses `any` for TypeScript compatibility with typed overloads.
2167
+ * Adds a catch-all signal handler overload for unknown signal types.
2168
+ *
2169
+ * Uses `any` because TypeScript overload resolution requires the catch-all
2170
+ * signature to be compatible with all typed overloads. Using `unknown` would
2171
+ * prevent passing typed handlers to this overload.
2038
2172
  */
2039
2173
  addSignalCatchAllOverload(signalOverloads, methodName) {
2040
2174
  signalOverloads.push(` ${methodName}(signal: string, handler: (...args: any[]) => any, after?: boolean): number;`);
@@ -1,4 +1,5 @@
1
- import { call, getObject, isInstantiating, setInstantiating, registerType, } from "@gtkx/ffi";
1
+ import { call, getObject, getInterface, isInstantiating, setInstantiating, registerType, } from "@gtkx/ffi";
2
+ import * as Gio from "../gio/index.js";
2
3
  import * as Gtk from "../gtk/index.js";
3
4
  /**
4
5
  * A freeform application window.
@@ -123,7 +124,7 @@ export class ApplicationWindow extends Gtk.ApplicationWindow {
123
124
  value: this.id,
124
125
  },
125
126
  ], { type: "gobject", borrowed: true });
126
- return getObject(ptr);
127
+ return getInterface(ptr, Gio.ListModel);
127
128
  }
128
129
  /**
129
130
  * Returns the currently visible dialog in @self, if there's one.
@@ -1,4 +1,5 @@
1
- import { call, getObject, isInstantiating, setInstantiating, registerType, } from "@gtkx/ffi";
1
+ import { call, getObject, getInterface, isInstantiating, setInstantiating, registerType, } from "@gtkx/ffi";
2
+ import * as Gdk from "../gdk/index.js";
2
3
  import * as Gtk from "../gtk/index.js";
3
4
  /**
4
5
  * A widget displaying an image, with a generated fallback.
@@ -92,7 +93,7 @@ export class Avatar extends Gtk.Widget {
92
93
  ], { type: "gobject", borrowed: true });
93
94
  if (ptr === null)
94
95
  return null;
95
- return getObject(ptr);
96
+ return getInterface(ptr, Gdk.Paintable);
96
97
  }
97
98
  /**
98
99
  * Gets the name of an icon to use as a fallback.
@@ -1,4 +1,5 @@
1
1
  import { BannerButtonStyle } from "./enums.js";
2
+ import * as GLib from "../glib/index.js";
2
3
  import * as GObject from "../gobject/index.js";
3
4
  import * as Gtk from "../gtk/index.js";
4
5
  export declare class Banner extends Gtk.Widget {
@@ -65,6 +66,62 @@ export declare class Banner extends Gtk.Widget {
65
66
  * @param useMarkup - whether to use markup
66
67
  */
67
68
  setUseMarkup(useMarkup: boolean): void;
69
+ /**
70
+ * Gets the action name for @actionable.
71
+ */
72
+ getActionName(): string | null;
73
+ /**
74
+ * Gets the current target value of @actionable.
75
+ */
76
+ getActionTargetValue(): GLib.Variant | null;
77
+ /**
78
+ * Specifies the name of the action with which this widget should be
79
+ * associated.
80
+ *
81
+ * If `action_name` is %NULL then the widget will be unassociated from
82
+ * any previous action.
83
+ *
84
+ * Usually this function is used when the widget is located (or will be
85
+ * located) within the hierarchy of a `GtkApplicationWindow`.
86
+ *
87
+ * Names are of the form “win.save” or “app.quit” for actions on the
88
+ * containing [class@ApplicationWindow] or its associated [class@Application],
89
+ * respectively. This is the same form used for actions in the [class@Gio.Menu]
90
+ * associated with the window.
91
+ * @param actionName - an action name
92
+ */
93
+ setActionName(actionName?: string | null): void;
94
+ /**
95
+ * Sets the target value of an actionable widget.
96
+ *
97
+ * If `target_value` is %NULL then the target value is unset.
98
+ *
99
+ * The target value has two purposes. First, it is used as the parameter
100
+ * to activation of the action associated with the `GtkActionable` widget.
101
+ * Second, it is used to determine if the widget should be rendered as
102
+ * “active” — the widget is active if the state is equal to the given target.
103
+ *
104
+ * Consider the example of associating a set of buttons with a [iface@Gio.Action]
105
+ * with string state in a typical “radio button” situation. Each button
106
+ * will be associated with the same action, but with a different target
107
+ * value for that action. Clicking on a particular button will activate
108
+ * the action with the target of that button, which will typically cause
109
+ * the action’s state to change to that value. Since the action’s state
110
+ * is now equal to the target value of the button, the button will now
111
+ * be rendered as active (and the other buttons, with different targets,
112
+ * rendered inactive).
113
+ * @param targetValue - a [struct@GLib.Variant] to set as the target value
114
+ */
115
+ setActionTargetValue(targetValue?: GLib.Variant | null): void;
116
+ /**
117
+ * Sets the action-name and associated string target value of an
118
+ * actionable widget.
119
+ *
120
+ * `detailed_action_name` is a string in the format accepted by
121
+ * [func@Gio.Action.parse_detailed_name].
122
+ * @param detailedActionName - the detailed action name
123
+ */
124
+ setDetailedActionName(detailedActionName: string): void;
68
125
  connect(signal: "button-clicked", handler: (self: Banner) => void, after?: boolean): number;
69
126
  connect(signal: "notify", handler: (self: Banner, pspec: GObject.ParamSpec) => void, after?: boolean): number;
70
127
  connect(signal: string, handler: (...args: any[]) => any, after?: boolean): number;
@@ -1,4 +1,4 @@
1
- import { call, getObject, isInstantiating, setInstantiating, registerType, } from "@gtkx/ffi";
1
+ import { call, getObject, getBoxed, isInstantiating, setInstantiating, registerType, } from "@gtkx/ffi";
2
2
  import * as Gtk from "../gtk/index.js";
3
3
  /**
4
4
  * A bar with contextual information.
@@ -199,6 +199,124 @@ export class Banner extends Gtk.Widget {
199
199
  },
200
200
  ], { type: "undefined" });
201
201
  }
202
+ /**
203
+ * Gets the action name for @actionable.
204
+ */
205
+ getActionName() {
206
+ return call("libadwaita-1.so.0", "gtk_actionable_get_action_name", [
207
+ {
208
+ type: { type: "gobject" },
209
+ value: this.id,
210
+ },
211
+ ], { type: "string", borrowed: true });
212
+ }
213
+ /**
214
+ * Gets the current target value of @actionable.
215
+ */
216
+ getActionTargetValue() {
217
+ const ptr = call("libadwaita-1.so.0", "gtk_actionable_get_action_target_value", [
218
+ {
219
+ type: { type: "gobject" },
220
+ value: this.id,
221
+ },
222
+ ], {
223
+ type: "boxed",
224
+ borrowed: true,
225
+ innerType: "GVariant",
226
+ lib: "libadwaita-1.so.0",
227
+ });
228
+ if (ptr === null)
229
+ return null;
230
+ return getBoxed(ptr, "GVariant");
231
+ }
232
+ /**
233
+ * Specifies the name of the action with which this widget should be
234
+ * associated.
235
+ *
236
+ * If `action_name` is %NULL then the widget will be unassociated from
237
+ * any previous action.
238
+ *
239
+ * Usually this function is used when the widget is located (or will be
240
+ * located) within the hierarchy of a `GtkApplicationWindow`.
241
+ *
242
+ * Names are of the form “win.save” or “app.quit” for actions on the
243
+ * containing [class@ApplicationWindow] or its associated [class@Application],
244
+ * respectively. This is the same form used for actions in the [class@Gio.Menu]
245
+ * associated with the window.
246
+ * @param actionName - an action name
247
+ */
248
+ setActionName(actionName) {
249
+ call("libadwaita-1.so.0", "gtk_actionable_set_action_name", [
250
+ {
251
+ type: { type: "gobject" },
252
+ value: this.id,
253
+ },
254
+ {
255
+ type: { type: "string" },
256
+ value: actionName,
257
+ optional: true,
258
+ },
259
+ ], { type: "undefined" });
260
+ }
261
+ /**
262
+ * Sets the target value of an actionable widget.
263
+ *
264
+ * If `target_value` is %NULL then the target value is unset.
265
+ *
266
+ * The target value has two purposes. First, it is used as the parameter
267
+ * to activation of the action associated with the `GtkActionable` widget.
268
+ * Second, it is used to determine if the widget should be rendered as
269
+ * “active” — the widget is active if the state is equal to the given target.
270
+ *
271
+ * Consider the example of associating a set of buttons with a [iface@Gio.Action]
272
+ * with string state in a typical “radio button” situation. Each button
273
+ * will be associated with the same action, but with a different target
274
+ * value for that action. Clicking on a particular button will activate
275
+ * the action with the target of that button, which will typically cause
276
+ * the action’s state to change to that value. Since the action’s state
277
+ * is now equal to the target value of the button, the button will now
278
+ * be rendered as active (and the other buttons, with different targets,
279
+ * rendered inactive).
280
+ * @param targetValue - a [struct@GLib.Variant] to set as the target value
281
+ */
282
+ setActionTargetValue(targetValue) {
283
+ call("libadwaita-1.so.0", "gtk_actionable_set_action_target_value", [
284
+ {
285
+ type: { type: "gobject" },
286
+ value: this.id,
287
+ },
288
+ {
289
+ type: {
290
+ type: "boxed",
291
+ borrowed: true,
292
+ innerType: "GVariant",
293
+ lib: "libadwaita-1.so.0",
294
+ },
295
+ value: targetValue?.id ?? targetValue,
296
+ optional: true,
297
+ },
298
+ ], { type: "undefined" });
299
+ }
300
+ /**
301
+ * Sets the action-name and associated string target value of an
302
+ * actionable widget.
303
+ *
304
+ * `detailed_action_name` is a string in the format accepted by
305
+ * [func@Gio.Action.parse_detailed_name].
306
+ * @param detailedActionName - the detailed action name
307
+ */
308
+ setDetailedActionName(detailedActionName) {
309
+ call("libadwaita-1.so.0", "gtk_actionable_set_detailed_action_name", [
310
+ {
311
+ type: { type: "gobject" },
312
+ value: this.id,
313
+ },
314
+ {
315
+ type: { type: "string" },
316
+ value: detailedActionName,
317
+ },
318
+ ], { type: "undefined" });
319
+ }
202
320
  connect(signal, handler, after = false) {
203
321
  const meta = SIGNAL_META[signal];
204
322
  const selfType = { type: "gobject", borrowed: true };
@@ -1,4 +1,4 @@
1
- import { call, getObject, registerType } from "@gtkx/ffi";
1
+ import { call, getObject, getBoxed, registerType } from "@gtkx/ffi";
2
2
  /** Describes condition for an [class@Breakpoint]. */
3
3
  export class BreakpointCondition {
4
4
  static glibTypeName = "AdwBreakpointCondition";
@@ -195,7 +195,7 @@ export class BreakpointCondition {
195
195
  innerType: "AdwBreakpointCondition",
196
196
  lib: "libadwaita-1.so.0",
197
197
  });
198
- return getObject(ptr);
198
+ return getBoxed(ptr, "AdwBreakpointCondition");
199
199
  }
200
200
  /**
201
201
  * Frees @self.