@girs/handy-1 5.0.0 → 5.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -4,7 +4,7 @@
4
4
  ![version](https://img.shields.io/npm/v/@girs/handy-1)
5
5
  ![downloads/week](https://img.shields.io/npm/dw/@girs/handy-1)
6
6
 
7
- GJS TypeScript type definitions for Handy-1 using [ts-for-gir](https://github.com/gjsify/ts-for-gir) v5.0.0.
7
+ GJS TypeScript type definitions for Handy-1 using [ts-for-gir](https://github.com/gjsify/ts-for-gir) v5.2.0.
8
8
 
9
9
  This package contains type declarations only. It ships no runtime code, so it adds
10
10
  nothing to your program and works with any bundler or none at all.
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * GENERATED — do not edit. Provenance: Handy-1 — dropped empty base(s): GObject.InitiallyUnowned GObject.Object Atk.ImplementorIface Gio.ActionGroup Gio.ActionMap
5
5
  *
6
- * 29 concrete widgets, 30 declarations, 11 enum nick unions, 24 slot candidates.
6
+ * 37 instantiable GTypes (of which 29 concrete widgets), 38 declarations, 11 enum nick unions, 24 slot candidates.
7
7
  *
8
8
  * Module-scoped exports only. There is no `JSX` namespace here, no tag spelling and
9
9
  * no `on<Signal>` prop name: those are DIALECT, and every framework answers them
@@ -24,6 +24,8 @@
24
24
  * and the `notify::` keys folded in, is what `Widgets[G]['signals']` points at.
25
25
  */
26
26
 
27
+ import type GObject from '@girs/gobject-2.0';
28
+ import type Gdk from '@girs/gdk-3.0';
27
29
  import type Gio from '@girs/gio-2.0';
28
30
  import type Gtk from '@girs/gtk-3.0';
29
31
  import type Handy from './handy-1.js';
@@ -307,6 +309,12 @@ export interface HdyDeckProps extends GtkContainerProps, GtkBuildableProps, GtkO
307
309
  /** Settable only at construction — a renderer must REBUILD, not patch. */
308
310
  export type HdyDeckConstructOnly = GtkContainerConstructOnly | GtkBuildableConstructOnly | GtkOrientableConstructOnly | HdySwipeableConstructOnly;
309
311
 
312
+ /** An object representing an [struct@GObject.EnumValue]. */
313
+ export interface HdyEnumValueObjectProps {
314
+ }
315
+ /** Settable only at construction — a renderer must REBUILD, not patch. */
316
+ export type HdyEnumValueObjectConstructOnly = never;
317
+
310
318
  /** A [class@Gtk.ListBoxRow] used to reveal widgets. */
311
319
  export interface HdyExpanderRowProps extends HdyPreferencesRowProps, GtkActionableProps, GtkBuildableProps {
312
320
  /**
@@ -499,6 +507,24 @@ export interface HdyHeaderBarProps extends GtkContainerProps, GtkBuildableProps
499
507
  /** Settable only at construction — a renderer must REBUILD, not patch. */
500
508
  export type HdyHeaderBarConstructOnly = GtkContainerConstructOnly | GtkBuildableConstructOnly;
501
509
 
510
+ /** An object handling composite title bars. */
511
+ export interface HdyHeaderGroupProps extends GtkBuildableProps {
512
+ /**
513
+ * Whether the elements of the group should all receive the full decoration.
514
+ * @since 1.0
515
+ * @default FALSE
516
+ */
517
+ 'decorate-all'?: boolean;
518
+ }
519
+ /** Settable only at construction — a renderer must REBUILD, not patch. */
520
+ export type HdyHeaderGroupConstructOnly = GtkBuildableConstructOnly;
521
+
522
+ /** A child object for [class@HeaderGroup]. */
523
+ export interface HdyHeaderGroupChildProps {
524
+ }
525
+ /** Settable only at construction — a renderer must REBUILD, not patch. */
526
+ export type HdyHeaderGroupChildConstructOnly = never;
527
+
502
528
  /** A keypad for dialing numbers The `HdyKeypad` widget is a keypad for entering numbers such as phone numbers or PIN codes. */
503
529
  export interface HdyKeypadProps extends GtkBinProps, GtkBuildableProps {
504
530
  /**
@@ -776,6 +802,64 @@ export interface HdyStatusPageProps extends GtkBinProps, GtkBuildableProps {
776
802
  /** Settable only at construction — a renderer must REBUILD, not patch. */
777
803
  export type HdyStatusPageConstructOnly = GtkBinConstructOnly | GtkBuildableConstructOnly;
778
804
 
805
+ /** A class for managing application-wide styling. */
806
+ export interface HdyStyleManagerProps {
807
+ /**
808
+ * The requested application color scheme.
809
+ * @since 1.6
810
+ * @default HDY_COLOR_SCHEME_DEFAULT
811
+ */
812
+ 'color-scheme'?: HdyColorSchemeNick | Handy.ColorScheme;
813
+ /**
814
+ * The display the style manager is associated with.
815
+ * @since 1.6
816
+ */
817
+ display?: Gdk.Display;
818
+ }
819
+ /** Settable only at construction — a renderer must REBUILD, not patch. */
820
+ export type HdyStyleManagerConstructOnly = 'display';
821
+
822
+ /** An object for syncing swipeable widgets. */
823
+ export interface HdySwipeGroupProps extends GtkBuildableProps {
824
+ }
825
+ /** Settable only at construction — a renderer must REBUILD, not patch. */
826
+ export type HdySwipeGroupConstructOnly = GtkBuildableConstructOnly;
827
+
828
+ /** Swipe tracker used in [class@Carousel] and [class@Leaflet]. */
829
+ export interface HdySwipeTrackerProps extends GtkOrientableProps {
830
+ /**
831
+ * Whether to allow swiping for more than one snap point at a time.
832
+ * @since 1.2
833
+ * @default FALSE
834
+ */
835
+ 'allow-long-swipes'?: boolean;
836
+ /**
837
+ * Whether to allow dragging with mouse pointer.
838
+ * @since 1.0
839
+ * @default FALSE
840
+ */
841
+ 'allow-mouse-drag'?: boolean;
842
+ /**
843
+ * Whether the swipe tracker is enabled.
844
+ * @since 1.0
845
+ * @default TRUE
846
+ */
847
+ enabled?: boolean;
848
+ /**
849
+ * Whether to reverse the swipe direction.
850
+ * @since 1.0
851
+ * @default FALSE
852
+ */
853
+ reversed?: boolean;
854
+ /**
855
+ * The widget the swipe tracker is attached to.
856
+ * @since 1.0
857
+ */
858
+ swipeable?: Handy.Swipeable;
859
+ }
860
+ /** Settable only at construction — a renderer must REBUILD, not patch. */
861
+ export type HdySwipeTrackerConstructOnly = GtkOrientableConstructOnly | 'swipeable';
862
+
779
863
  /** An interface for swipeable widgets. */
780
864
  export interface HdySwipeableProps extends GtkWidgetProps {
781
865
  }
@@ -826,6 +910,62 @@ export interface HdyTabBarProps extends GtkBinProps, GtkBuildableProps {
826
910
  /** Settable only at construction — a renderer must REBUILD, not patch. */
827
911
  export type HdyTabBarConstructOnly = GtkBinConstructOnly | GtkBuildableConstructOnly;
828
912
 
913
+ /** An auxiliary class used by [class@TabView]. */
914
+ export interface HdyTabPageProps {
915
+ /**
916
+ * The child of the page.
917
+ * @since 1.2
918
+ */
919
+ child?: Gtk.Widget;
920
+ /**
921
+ * The icon of the page.
922
+ * @since 1.2
923
+ */
924
+ icon?: Gio.Icon | null;
925
+ /**
926
+ * Whether the indicator icon is activatable.
927
+ * @since 1.2
928
+ * @default FALSE
929
+ */
930
+ 'indicator-activatable'?: boolean;
931
+ /**
932
+ * An indicator icon for the page.
933
+ * @since 1.2
934
+ */
935
+ 'indicator-icon'?: Gio.Icon | null;
936
+ /**
937
+ * Whether the page is loading.
938
+ * @since 1.2
939
+ * @default FALSE
940
+ */
941
+ loading?: boolean;
942
+ /**
943
+ * Whether the page needs attention.
944
+ * @since 1.2
945
+ * @default FALSE
946
+ */
947
+ 'needs-attention'?: boolean;
948
+ /**
949
+ * The parent page of the page.
950
+ * @since 1.2
951
+ */
952
+ parent?: Handy.TabPage | null;
953
+ /**
954
+ * The title of the page.
955
+ * @since 1.2
956
+ * @default NULL
957
+ */
958
+ title?: string | null;
959
+ /**
960
+ * The tooltip of the page.
961
+ * @since 1.2
962
+ * @default NULL
963
+ */
964
+ tooltip?: string | null;
965
+ }
966
+ /** Settable only at construction — a renderer must REBUILD, not patch. */
967
+ export type HdyTabPageConstructOnly = 'child' | 'parent';
968
+
829
969
  /** A dynamic tabbed container. */
830
970
  export interface HdyTabViewProps extends GtkBinProps, GtkBuildableProps {
831
971
  /**
@@ -865,6 +1005,17 @@ export interface HdyTitleBarProps extends GtkBinProps, GtkBuildableProps {
865
1005
  /** Settable only at construction — a renderer must REBUILD, not patch. */
866
1006
  export type HdyTitleBarConstructOnly = GtkBinConstructOnly | GtkBuildableConstructOnly;
867
1007
 
1008
+ /** An object representing a [struct@GObject.Value]. */
1009
+ export interface HdyValueObjectProps {
1010
+ /**
1011
+ * The contained value.
1012
+ * @since 1.0
1013
+ */
1014
+ value?: GObject.Value;
1015
+ }
1016
+ /** Settable only at construction — a renderer must REBUILD, not patch. */
1017
+ export type HdyValueObjectConstructOnly = 'value';
1018
+
868
1019
  /** An adaptive view switcher. */
869
1020
  export interface HdyViewSwitcherProps extends GtkBinProps, GtkBuildableProps {
870
1021
  /**
@@ -1217,7 +1368,11 @@ export interface Widgets {
1217
1368
  };
1218
1369
  }
1219
1370
 
1220
- /** Every GType this namespace can create. A consumer derives its own tag map. */
1371
+ /**
1372
+ * Every GType this namespace can create AND put on screen. A consumer derives its own
1373
+ * tag map. For everything a UI file can instantiate — layout managers, event
1374
+ * controllers, cell renderers, `GtkSizeGroup` — read `DECLS` below.
1375
+ */
1221
1376
  export type WidgetGType = keyof Widgets;
1222
1377
 
1223
1378
  // ---------------------------------------------------------------------------
@@ -1269,7 +1424,14 @@ export const PROVENANCE: {
1269
1424
  readonly childHolders: number;
1270
1425
  readonly droppedBases: readonly string[];
1271
1426
  readonly inlinedBases: readonly string[];
1427
+ /** `<decl>.<prop>` for every property printed `never` because TypeScript has no value for it. */
1272
1428
  readonly unsettableProps: readonly string[];
1429
+ /**
1430
+ * `<decl>.<prop>: <Ns>.<Name>` for every property printed `never` because the model
1431
+ * could not resolve its type across a namespace boundary — two independently released
1432
+ * GIRs disagreeing, which is what the main emitter answers `never` for as well.
1433
+ */
1434
+ readonly unresolvedProps: readonly string[];
1273
1435
  };
1274
1436
 
1275
1437
  /** Declaration GType -> its own settable properties, as GObject registered them. */
@@ -1283,7 +1445,17 @@ export const OWN_PROPS: Readonly<Record<string, readonly string[]>>;
1283
1445
  */
1284
1446
  export const OWN_SIGNALS: Readonly<Record<string, readonly string[]>>;
1285
1447
 
1286
- /** Widget GType -> every declaration its members come from, self first. */
1448
+ /**
1449
+ * Instantiable GType -> every declaration its members come from, self first.
1450
+ *
1451
+ * The key set is what a UI description file can NAME: every registered, non-abstract
1452
+ * class this namespace declares. GtkBuilder resolves a `<object class="…">` through
1453
+ * `g_type_from_name`, which knows nothing about widgets, so this is wider than
1454
+ * `Widgets` by design — `GtkSizeGroup`, `GtkTextTag`, every `GtkEventController`
1455
+ * and every `GtkCellRenderer` are here and are not widgets.
1456
+ *
1457
+ * `Widgets` and `CHILD_HOLDERS` are the narrower questions and answer them unchanged.
1458
+ */
1287
1459
  export const DECLS: Readonly<Record<string, readonly string[]>>;
1288
1460
 
1289
1461
  /** The GTypes in `DECLS` that hold a widget without being one — see `ChildHolders`. */
@@ -1295,8 +1467,8 @@ export const ENUM_NICKS: Readonly<Record<string, readonly string[]>>;
1295
1467
  /**
1296
1468
  * `<enum GType>.<nick>` -> the integer GObject registers for it, from GIR's `value`.
1297
1469
  *
1298
- * Position in `ENUM_NICKS` is NOT this number. Counting is wrong on 6 of the 129 enums a
1299
- * GTK 4 vocabulary carries -- 104 in Gtk-4.0 and 25 in Adw-1: `GtkResponseType` runs -1 to -11, `GtkTextWindowType` starts
1470
+ * Position in `ENUM_NICKS` is NOT this number. Counting is wrong on 6 of the 137 enums a
1471
+ * GTK 4 vocabulary carries -- 112 in Gtk-4.0 and 25 in Adw-1: `GtkResponseType` runs -1 to -11, `GtkTextWindowType` starts
1300
1472
  * at 1, `GtkOrdering` and `GtkConstraintRelation` are -1/0/1, `GtkAlign` has two names
1301
1473
  * on one value, and `GtkConstraintStrength.required` is 1001001000 where counting says 0.
1302
1474
  *
@@ -1334,10 +1506,11 @@ export const ENUM_VALUES_UNREADABLE: Readonly<Record<string, string>>;
1334
1506
  *
1335
1507
  * `ENUM_NICKS` carries no bitfield, because GObject cannot resolve a nick SET; that says
1336
1508
  * nothing about a single member's number, and the number is what a host without GI needs.
1337
- * 21 writable widget properties in Gtk-4.0 and Adw-1 are bitfield-typed and are declared
1338
- * bare `number` -- `GtkEntry:input-hints`, `GtkPopoverMenu:flags`, `AdwTabView:shortcuts`
1339
- * among them. Counting is worst here: 95 of 121 Gtk-4.0 bitfield members disagree with their
1340
- * position, against 29 of 685 enumeration members.
1509
+ * 23 settable properties in Gtk-4.0 and Adw-1 are bitfield-typed and are declared bare
1510
+ * `number` -- `GtkEntry:input-hints`, `GtkPopoverMenu:flags`, `AdwTabView:shortcuts`,
1511
+ * `GtkDropTarget:actions` among them. Counting is worst here: 119 of the 156 Gtk-4.0
1512
+ * bitfield members this vocabulary carries disagree with their declaration position,
1513
+ * against 29 of 672 enumeration members.
1341
1514
  *
1342
1515
  * Combine with `|` as GObject does. There is no nick table to pair this with, so a name
1343
1516
  * here is resolvable and a SET still is not.
@@ -1361,13 +1534,52 @@ export const FLAG_VALUES_UNREADABLE: Readonly<Record<string, string>>;
1361
1534
  *
1362
1535
  * The GType named here is not always one THIS module gives numbers for. A nick vocabulary is
1363
1536
  * emitted once, by the namespace that owns the enum, so `AdwComboRow.search-match-mode` names
1364
- * `GtkStringFilterMatchMode` and its rows are in `@girs/gtk-4.0/vocabulary` — 57 of the 438
1537
+ * `GtkStringFilterMatchMode` and its rows are in `@girs/gtk-4.0/vocabulary` — 83 of the 909
1365
1538
  * entries in a full run resolve only with the owner's vocabulary loaded beside this one. An
1366
1539
  * owner with no vocabulary of its own (Gdk, Pango) is inlined here instead, so every entry
1367
1540
  * resolves against SOME module.
1368
1541
  */
1369
1542
  export const PROP_ENUMS: Readonly<Record<string, string>>;
1370
1543
 
1544
+ /**
1545
+ * The kinds of value a GTK accessible property, relation or state takes.
1546
+ *
1547
+ * `enum` is the one that needs a second lookup: `ARIA_VALUE_ENUMS` names the enum GType,
1548
+ * and `ENUM_NICKS` and `ENUM_VALUES` answer from there.
1549
+ */
1550
+ export type AriaValueType = 'string' | 'integer' | 'double' | 'boolean' | 'reference' | 'enum';
1551
+
1552
+ /**
1553
+ * `<enum GType>.<nick>` -> the kind of value that ARIA slot takes.
1554
+ *
1555
+ * The one table in this file that is not a fact about a ParamSpec. A GtkBuilder or
1556
+ * Blueprint `accessibility { … }` block is typed by GTK's ARIA table, not by the widget,
1557
+ * and the two disagree where it costs most: `orientation` is settable on a `GtkLabel`
1558
+ * that implements no `GtkOrientable`, and `checked` is a `GtkAccessibleTristate`, so
1559
+ * `checked: true` is the number 1 rather than a boolean. Typing those slots from the
1560
+ * widget's properties gets both wrong and raises nothing.
1561
+ *
1562
+ * Keyed like `ENUM_VALUES` because the ARIA names ARE enum members — of
1563
+ * `GtkAccessibleProperty`, `GtkAccessibleRelation` and `GtkAccessibleState` — so
1564
+ * `ENUM_NICKS` already lists them and one key parser reads both.
1565
+ *
1566
+ * Read from each member's own GIR documentation. `gtk_accessible_property_init_value()`
1567
+ * is the C half of this table and is not introspectable; the doc sentence is, and states
1568
+ * the type for 52 of the 53 members in gtk4 4.23.3. Complete or absent, never partial: a
1569
+ * member the generator cannot answer for fails the build and names itself.
1570
+ */
1571
+ export const ARIA_VALUE_TYPES: Readonly<Record<string, AriaValueType>>;
1572
+
1573
+ /**
1574
+ * The same keys, for the `'enum'` rows only -> the GType of that enum.
1575
+ *
1576
+ * A table of its own for the reason `PROP_ENUMS` is one: folded in, the values of
1577
+ * `ARIA_VALUE_TYPES` would be six reserved words mixed with arbitrary GTypes and telling
1578
+ * them apart would be the consumer's problem. Apart, `ARIA_VALUE_TYPES[k] === 'enum'` is
1579
+ * the whole test and `ENUM_NICKS[ARIA_VALUE_ENUMS[k]]` is the nick list.
1580
+ */
1581
+ export const ARIA_VALUE_ENUMS: Readonly<Record<string, string>>;
1582
+
1371
1583
  /** Widget GType -> slot name -> the method that may adopt a child there. */
1372
1584
  export const SLOT_CANDIDATES: Readonly<Record<string, Readonly<Record<string, string>>>>;
1373
1585
 
@@ -14,6 +14,7 @@ export const PROVENANCE = {
14
14
  droppedBases: ['GObject.InitiallyUnowned', 'GObject.Object', 'Atk.ImplementorIface', 'Gio.ActionGroup', 'Gio.ActionMap'],
15
15
  inlinedBases: [],
16
16
  unsettableProps: [],
17
+ unresolvedProps: [],
17
18
  };
18
19
 
19
20
  export const OWN_PROPS = {
@@ -28,6 +29,7 @@ export const OWN_PROPS = {
28
29
  HdyExpanderRow: ['enable-expansion', 'expanded', 'icon-name', 'show-enable-switch', 'subtitle', 'use-underline'],
29
30
  HdyFlap: ['content', 'flap', 'flap-position', 'fold-duration', 'fold-policy', 'locked', 'modal', 'reveal-duration', 'reveal-flap', 'separator', 'swipe-to-close', 'swipe-to-open', 'transition-type'],
30
31
  HdyHeaderBar: ['centering-policy', 'custom-title', 'decoration-layout', 'decoration-layout-set', 'has-subtitle', 'interpolate-size', 'show-close-button', 'spacing', 'subtitle', 'title', 'transition-duration'],
32
+ HdyHeaderGroup: ['decorate-all'],
31
33
  HdyKeypad: ['column-spacing', 'end-action', 'entry', 'letters-visible', 'row-spacing', 'start-action', 'symbols-visible'],
32
34
  HdyLeaflet: ['can-swipe-back', 'can-swipe-forward', 'child-transition-duration', 'hhomogeneous-folded', 'hhomogeneous-unfolded', 'interpolate-size', 'mode-transition-duration', 'transition-type', 'vhomogeneous-folded', 'vhomogeneous-unfolded', 'visible-child', 'visible-child-name'],
33
35
  HdyPreferencesGroup: ['description', 'title', 'use-markup'],
@@ -37,9 +39,13 @@ export const OWN_PROPS = {
37
39
  HdySearchBar: ['search-mode-enabled', 'show-close-button'],
38
40
  HdySqueezer: ['homogeneous', 'interpolate-size', 'transition-duration', 'transition-type', 'xalign', 'yalign'],
39
41
  HdyStatusPage: ['description', 'icon-name', 'title'],
42
+ HdyStyleManager: ['color-scheme', 'display'],
43
+ HdySwipeTracker: ['allow-long-swipes', 'allow-mouse-drag', 'enabled', 'reversed', 'swipeable'],
40
44
  HdyTabBar: ['autohide', 'end-action-widget', 'expand-tabs', 'extra-drag-dest-targets', 'inverted', 'start-action-widget', 'view'],
45
+ HdyTabPage: ['child', 'icon', 'indicator-activatable', 'indicator-icon', 'loading', 'needs-attention', 'parent', 'title', 'tooltip'],
41
46
  HdyTabView: ['default-icon', 'menu-model', 'selected-page', 'shortcut-widget'],
42
47
  HdyTitleBar: ['selection-mode'],
48
+ HdyValueObject: ['value'],
43
49
  HdyViewSwitcher: ['narrow-ellipsize', 'policy', 'stack'],
44
50
  HdyViewSwitcherBar: ['policy', 'reveal', 'stack'],
45
51
  HdyViewSwitcherTitle: ['policy', 'stack', 'subtitle', 'title', 'view-switcher-enabled'],
@@ -48,11 +54,20 @@ export const OWN_PROPS = {
48
54
  export const OWN_SIGNALS = {
49
55
  HdyActionRow: ['activated'],
50
56
  HdyCarousel: ['page-changed'],
57
+ HdyHeaderGroup: ['update-decoration-layouts'],
58
+ HdySwipeTracker: ['begin-swipe', 'end-swipe', 'update-swipe'],
51
59
  HdySwipeable: ['child-switched'],
52
60
  HdyTabBar: ['extra-drag-data-received'],
53
61
  HdyTabView: ['close-page', 'create-window', 'indicator-activated', 'page-attached', 'page-detached', 'page-reordered', 'setup-menu'],
54
62
  };
55
63
 
64
+ // Every GType this namespace can INSTANTIATE -> the declarations its members come from.
65
+ //
66
+ // The key set is what a UI description file can name: a registered, non-abstract class.
67
+ // Not "every widget" — GtkBuilder resolves a name through `g_type_from_name`, which knows
68
+ // nothing about widgets, and a `.ui` file is full of `GtkSizeGroup`, `GtkTextTag`,
69
+ // `GtkEventController*` and `GtkCellRenderer*`. Use `Widgets` and `CHILD_HOLDERS`
70
+ // below for the narrower questions; they did not move.
56
71
  export const DECLS = {
57
72
  HdyActionRow: ['HdyActionRow', 'HdyPreferencesRow', 'GtkListBoxRow', 'GtkBin', 'GtkContainer', 'GtkWidget', 'GtkActionable', 'GtkBuildable'],
58
73
  HdyApplicationWindow: ['HdyApplicationWindow', 'GtkApplicationWindow', 'GtkWindow', 'GtkBin', 'GtkContainer', 'GtkWidget', 'GtkBuildable'],
@@ -63,9 +78,12 @@ export const DECLS = {
63
78
  HdyClamp: ['HdyClamp', 'GtkBin', 'GtkContainer', 'GtkWidget', 'GtkBuildable', 'GtkOrientable'],
64
79
  HdyComboRow: ['HdyComboRow', 'HdyActionRow', 'HdyPreferencesRow', 'GtkListBoxRow', 'GtkBin', 'GtkContainer', 'GtkWidget', 'GtkActionable', 'GtkBuildable'],
65
80
  HdyDeck: ['HdyDeck', 'GtkContainer', 'GtkWidget', 'GtkBuildable', 'GtkOrientable', 'HdySwipeable'],
81
+ HdyEnumValueObject: ['HdyEnumValueObject'],
66
82
  HdyExpanderRow: ['HdyExpanderRow', 'HdyPreferencesRow', 'GtkListBoxRow', 'GtkBin', 'GtkContainer', 'GtkWidget', 'GtkActionable', 'GtkBuildable'],
67
83
  HdyFlap: ['HdyFlap', 'GtkContainer', 'GtkWidget', 'GtkBuildable', 'GtkOrientable', 'HdySwipeable'],
68
84
  HdyHeaderBar: ['HdyHeaderBar', 'GtkContainer', 'GtkWidget', 'GtkBuildable'],
85
+ HdyHeaderGroup: ['HdyHeaderGroup', 'GtkBuildable'],
86
+ HdyHeaderGroupChild: ['HdyHeaderGroupChild'],
69
87
  HdyKeypad: ['HdyKeypad', 'GtkBin', 'GtkContainer', 'GtkWidget', 'GtkBuildable'],
70
88
  HdyLeaflet: ['HdyLeaflet', 'GtkContainer', 'GtkWidget', 'GtkBuildable', 'GtkOrientable', 'HdySwipeable'],
71
89
  HdyPreferencesGroup: ['HdyPreferencesGroup', 'GtkBin', 'GtkContainer', 'GtkWidget', 'GtkBuildable'],
@@ -75,9 +93,14 @@ export const DECLS = {
75
93
  HdySearchBar: ['HdySearchBar', 'GtkBin', 'GtkContainer', 'GtkWidget', 'GtkBuildable'],
76
94
  HdySqueezer: ['HdySqueezer', 'GtkContainer', 'GtkWidget', 'GtkBuildable', 'GtkOrientable'],
77
95
  HdyStatusPage: ['HdyStatusPage', 'GtkBin', 'GtkContainer', 'GtkWidget', 'GtkBuildable'],
96
+ HdyStyleManager: ['HdyStyleManager'],
97
+ HdySwipeGroup: ['HdySwipeGroup', 'GtkBuildable'],
98
+ HdySwipeTracker: ['HdySwipeTracker', 'GtkOrientable'],
78
99
  HdyTabBar: ['HdyTabBar', 'GtkBin', 'GtkContainer', 'GtkWidget', 'GtkBuildable'],
100
+ HdyTabPage: ['HdyTabPage'],
79
101
  HdyTabView: ['HdyTabView', 'GtkBin', 'GtkContainer', 'GtkWidget', 'GtkBuildable'],
80
102
  HdyTitleBar: ['HdyTitleBar', 'GtkBin', 'GtkContainer', 'GtkWidget', 'GtkBuildable'],
103
+ HdyValueObject: ['HdyValueObject'],
81
104
  HdyViewSwitcher: ['HdyViewSwitcher', 'GtkBin', 'GtkContainer', 'GtkWidget', 'GtkBuildable'],
82
105
  HdyViewSwitcherBar: ['HdyViewSwitcherBar', 'GtkBin', 'GtkContainer', 'GtkWidget', 'GtkBuildable'],
83
106
  HdyViewSwitcherTitle: ['HdyViewSwitcherTitle', 'GtkBin', 'GtkContainer', 'GtkWidget', 'GtkBuildable'],
@@ -85,10 +108,11 @@ export const DECLS = {
85
108
  HdyWindowHandle: ['HdyWindowHandle', 'GtkEventBox', 'GtkBin', 'GtkContainer', 'GtkWidget', 'GtkBuildable'],
86
109
  };
87
110
 
88
- // The GTypes above that are NOT widgets: they hold one through `set_child`/`get_child`
89
- // and descend from `GObject.Object`. A renderer places them like a container; a check
90
- // asking "is this a widget" must not count them. Derived from the accessor pair, never
91
- // from a list the count is in the provenance line above.
111
+ // The GTypes above that ARE widgets are the `Widgets` map in the sibling `.d.ts`; these
112
+ // are the ones that merely HOLD one, through `set_child`/`get_child`, descending from
113
+ // `GObject.Object`. A renderer places them like a container; a check asking "is this a
114
+ // widget" must not count them. Derived from the accessor pair, never from a list — the
115
+ // count is in the provenance line above.
92
116
  export const CHILD_HOLDERS = [];
93
117
 
94
118
  export const ENUM_NICKS = {
@@ -110,7 +134,7 @@ export const ENUM_NICKS = {
110
134
  // It ships because position in `ENUM_NICKS` is not the value and a consumer with no
111
135
  // typelib has no other way to learn it: a surface without GI still has to hand GObject an
112
136
  // integer. The alternative a consumer reaches for first is counting, and counting is wrong
113
- // on 6 of the 129 enums a GTK 4 vocabulary carries (104 in Gtk-4.0, 25 in Adw-1) --
137
+ // on 6 of the 137 enums a GTK 4 vocabulary carries (112 in Gtk-4.0, 25 in Adw-1) --
114
138
  // `GtkResponseType` runs -1 down to
115
139
  // -11, `GtkTextWindowType` starts at 1, and `GtkConstraintStrength.required` is
116
140
  // 1001001000 where counting answers 0.
@@ -181,11 +205,12 @@ export const ENUM_VALUES_UNREADABLE = {};
181
205
  // The number behind each member of a registered BITFIELD, keyed the same way.
182
206
  //
183
207
  // `ENUM_NICKS` refuses a bitfield because GObject cannot resolve a nick SET, and that
184
- // reason says nothing about one member's number. 21 writable widget properties in Gtk-4.0
185
- // and Adw-1 are bitfield-typed -- `GtkEntry:input-hints`, `GtkPopoverMenu:flags`,
186
- // `AdwTabView:shortcuts`, ... -- and they are typed bare `number`, so a host without GI
187
- // has nothing to compute one from. Counting is worst exactly here: 95 of 121 Gtk-4.0
188
- // bitfield members disagree with their position, against 29 of 685 enumeration members.
208
+ // reason says nothing about one member's number. 23 settable properties in Gtk-4.0 and
209
+ // Adw-1 are bitfield-typed -- `GtkEntry:input-hints`, `GtkPopoverMenu:flags`,
210
+ // `AdwTabView:shortcuts`, `GtkDropTarget:actions`, ... -- and they are typed bare
211
+ // `number`, so a host without GI has nothing to compute one from. Counting is worst
212
+ // exactly here: 119 of the 156 Gtk-4.0 bitfield members this vocabulary carries disagree
213
+ // with their declaration position, against 29 of 672 enumeration members.
189
214
  //
190
215
  // A table of its own rather than more rows in `ENUM_VALUES`, so that "every nick in
191
216
  // `ENUM_NICKS` has a number or a declared reason" stays a claim about one set.
@@ -208,7 +233,7 @@ export const FLAG_VALUES_UNREADABLE = {};
208
233
  // one are both entries a consumer would resolve wrongly, so neither is written.
209
234
  //
210
235
  // A GType named here has numbers in SOME vocabulary, not necessarily this one: the namespace
211
- // that OWNS an enum publishes it, so 57 of the 438 entries a full run emits want the owner's
236
+ // that OWNS an enum publishes it, so 83 of the 909 entries a full run emits want the owner's
212
237
  // vocabulary loaded too. Owners that emit none (Gdk, Pango) are inlined into the tables above.
213
238
  export const PROP_ENUMS = {
214
239
  'HdyDeck.transition-type': 'HdyDeckTransitionType',
@@ -218,12 +243,38 @@ export const PROP_ENUMS = {
218
243
  'HdyHeaderBar.centering-policy': 'HdyCenteringPolicy',
219
244
  'HdyLeaflet.transition-type': 'HdyLeafletTransitionType',
220
245
  'HdySqueezer.transition-type': 'HdySqueezerTransitionType',
246
+ 'HdyStyleManager.color-scheme': 'HdyColorScheme',
221
247
  'HdyViewSwitcher.narrow-ellipsize': 'PangoEllipsizeMode',
222
248
  'HdyViewSwitcher.policy': 'HdyViewSwitcherPolicy',
223
249
  'HdyViewSwitcherBar.policy': 'HdyViewSwitcherPolicy',
224
250
  'HdyViewSwitcherTitle.policy': 'HdyViewSwitcherPolicy',
225
251
  };
226
252
 
253
+ // `<enum GType>.<nick>` -> the kind of value that ARIA slot takes.
254
+ //
255
+ // The one table here that is not about a ParamSpec. A GtkBuilder or Blueprint
256
+ // `accessibility { … }` block is typed by GTK's ARIA table instead, and the two disagree
257
+ // where it matters: `orientation` is settable on a `GtkLabel` that implements no
258
+ // `GtkOrientable` and has no such property, and `checked` is a `GtkAccessibleTristate`, so
259
+ // `checked: true` means the number 1 and not the boolean. A consumer typing those slots
260
+ // from the widget gets both wrong, silently.
261
+ //
262
+ // Read from each member's own documentation, which is where GTK keeps the table --
263
+ // `gtk_accessible_property_init_value()` is the C half and is not introspectable, the
264
+ // sentence is. Complete or absent, never partial: a member whose documentation states no
265
+ // value type fails generation and names itself, because a missing row is indistinguishable
266
+ // from "GTK has no such name" and the plausible fallback emits `true` where GTK means 1.
267
+ export const ARIA_VALUE_TYPES = {};
268
+
269
+ // The same keys, for the `'enum'` rows only -> the GType of the enum.
270
+ //
271
+ // The join on from a kind to a number, and a table of its own for the reason `PROP_ENUMS`
272
+ // is one: folding the GType into `ARIA_VALUE_TYPES` would make its values a mix of six
273
+ // reserved words and arbitrary GTypes, and telling them apart would be the consumer's
274
+ // problem. With this, `ARIA_VALUE_TYPES[k] === 'enum'` is the whole test, and
275
+ // `ENUM_NICKS[ARIA_VALUE_ENUMS[k]]` is the nick list.
276
+ export const ARIA_VALUE_ENUMS = {};
277
+
227
278
  export const SLOT_CANDIDATES = {
228
279
  HdyActionRow: {
229
280
  'activatable': 'set_activatable_widget',
@@ -324,6 +375,7 @@ export const SINCE = {
324
375
  'HdyDeck.vhomogeneous': '1.0',
325
376
  'HdyDeck.visible-child': '1.0',
326
377
  'HdyDeck.visible-child-name': '1.0',
378
+ 'HdyEnumValueObject': '1.0',
327
379
  'HdyExpanderRow': '1.0',
328
380
  'HdyExpanderRow.enable-expansion': '1.0',
329
381
  'HdyExpanderRow.expanded': '1.0',
@@ -357,6 +409,10 @@ export const SINCE = {
357
409
  'HdyHeaderBar.subtitle': '1.0',
358
410
  'HdyHeaderBar.title': '1.0',
359
411
  'HdyHeaderBar.transition-duration': '1.0',
412
+ 'HdyHeaderGroup': '1.0',
413
+ 'HdyHeaderGroup.decorate-all': '1.0',
414
+ 'HdyHeaderGroup::update-decoration-layouts': '1.0',
415
+ 'HdyHeaderGroupChild': '1.0',
360
416
  'HdyKeypad': '1.0',
361
417
  'HdyKeypad.column-spacing': '1.0',
362
418
  'HdyKeypad.end-action': '1.0',
@@ -405,6 +461,19 @@ export const SINCE = {
405
461
  'HdyStatusPage.description': '1.2',
406
462
  'HdyStatusPage.icon-name': '1.2',
407
463
  'HdyStatusPage.title': '1.2',
464
+ 'HdyStyleManager': '1.6',
465
+ 'HdyStyleManager.color-scheme': '1.6',
466
+ 'HdyStyleManager.display': '1.6',
467
+ 'HdySwipeGroup': '1.0',
468
+ 'HdySwipeTracker': '1.0',
469
+ 'HdySwipeTracker.allow-long-swipes': '1.2',
470
+ 'HdySwipeTracker.allow-mouse-drag': '1.0',
471
+ 'HdySwipeTracker.enabled': '1.0',
472
+ 'HdySwipeTracker.reversed': '1.0',
473
+ 'HdySwipeTracker.swipeable': '1.0',
474
+ 'HdySwipeTracker::begin-swipe': '1.0',
475
+ 'HdySwipeTracker::end-swipe': '1.0',
476
+ 'HdySwipeTracker::update-swipe': '1.0',
408
477
  'HdySwipeable': '1.0',
409
478
  'HdySwipeable::child-switched': '1.0',
410
479
  'HdyTabBar': '1.2',
@@ -416,6 +485,16 @@ export const SINCE = {
416
485
  'HdyTabBar.start-action-widget': '1.2',
417
486
  'HdyTabBar.view': '1.2',
418
487
  'HdyTabBar::extra-drag-data-received': '1.2',
488
+ 'HdyTabPage': '1.2',
489
+ 'HdyTabPage.child': '1.2',
490
+ 'HdyTabPage.icon': '1.2',
491
+ 'HdyTabPage.indicator-activatable': '1.2',
492
+ 'HdyTabPage.indicator-icon': '1.2',
493
+ 'HdyTabPage.loading': '1.2',
494
+ 'HdyTabPage.needs-attention': '1.2',
495
+ 'HdyTabPage.parent': '1.2',
496
+ 'HdyTabPage.title': '1.2',
497
+ 'HdyTabPage.tooltip': '1.2',
419
498
  'HdyTabView': '1.2',
420
499
  'HdyTabView.default-icon': '1.2',
421
500
  'HdyTabView.menu-model': '1.2',
@@ -430,6 +509,8 @@ export const SINCE = {
430
509
  'HdyTabView::setup-menu': '1.2',
431
510
  'HdyTitleBar': '1.0',
432
511
  'HdyTitleBar.selection-mode': '1.0',
512
+ 'HdyValueObject': '1.0',
513
+ 'HdyValueObject.value': '1.0',
433
514
  'HdyViewSwitcher': '1.0',
434
515
  'HdyViewSwitcher.narrow-ellipsize': '1.0',
435
516
  'HdyViewSwitcher.policy': '1.0',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@girs/handy-1",
3
- "version": "5.0.0",
3
+ "version": "5.2.0",
4
4
  "description": "GJS TypeScript type definitions for Handy-1",
5
5
  "type": "module",
6
6
  "module": "handy-1.js",
@@ -36,20 +36,20 @@
36
36
  "test": "tsc --project tsconfig.json"
37
37
  },
38
38
  "dependencies": {
39
- "@girs/gjs": "^5.0.0",
40
- "@girs/gtk-3.0": "^5.0.0",
41
- "@girs/xlib-2.0": "^5.0.0",
42
- "@girs/gdk-3.0": "^5.0.0",
43
- "@girs/cairo-1.0": "^5.0.0",
44
- "@girs/gobject-2.0": "^5.0.0",
45
- "@girs/glib-2.0": "^5.0.0",
46
- "@girs/pango-1.0": "^5.0.0",
47
- "@girs/harfbuzz-0.0": "^5.0.0",
48
- "@girs/freetype2-2.0": "^5.0.0",
49
- "@girs/gio-2.0": "^5.0.0",
50
- "@girs/gmodule-2.0": "^5.0.0",
51
- "@girs/gdkpixbuf-2.0": "^5.0.0",
52
- "@girs/atk-1.0": "^5.0.0" },
39
+ "@girs/gjs": "^5.2.0",
40
+ "@girs/gtk-3.0": "^5.2.0",
41
+ "@girs/xlib-2.0": "^5.2.0",
42
+ "@girs/gdk-3.0": "^5.2.0",
43
+ "@girs/cairo-1.0": "^5.2.0",
44
+ "@girs/gobject-2.0": "^5.2.0",
45
+ "@girs/glib-2.0": "^5.2.0",
46
+ "@girs/pango-1.0": "^5.2.0",
47
+ "@girs/harfbuzz-0.0": "^5.2.0",
48
+ "@girs/freetype2-2.0": "^5.2.0",
49
+ "@girs/gio-2.0": "^5.2.0",
50
+ "@girs/gmodule-2.0": "^5.2.0",
51
+ "@girs/gdkpixbuf-2.0": "^5.2.0",
52
+ "@girs/atk-1.0": "^5.2.0" },
53
53
  "devDependencies": {
54
54
  "typescript": "*"
55
55
  },