v0.2.1 c0399be

adw-banner.go RawHistoryFolder

1// Package adw was automatically generated by github.com/bnema/puregotk DO NOT EDIT
2package adw
3
4import (
5	"structs"
6	"unsafe"
7
8	"github.com/ebitengine/purego"
9
10	"github.com/bnema/puregotk/pkg/core"
11	"github.com/bnema/puregotk/v4/glib"
12	"github.com/bnema/puregotk/v4/gobject"
13	"github.com/bnema/puregotk/v4/gobject/types"
14	"github.com/bnema/puregotk/v4/gtk"
15)
16
17type BannerClass struct {
18	_ structs.HostLayout
19
20	ParentClass gtk.WidgetClass
21}
22
23func (x *BannerClass) GoPointer() uintptr {
24	return uintptr(unsafe.Pointer(x))
25}
26
27// Describes the available button styles for [class@Banner].
28//
29// New values may be added to this enumeration over time.
30//
31// See [property@Banner:button-style].
32type BannerButtonStyle int
33
34var xBannerButtonStyleGLibType func() types.GType
35
36func BannerButtonStyleGLibType() types.GType {
37	return xBannerButtonStyleGLibType()
38}
39
40const (
41
42	// The default button style.
43	BannerButtonDefaultValue BannerButtonStyle = 0
44	// A button in the suggested action style.
45	BannerButtonSuggestedValue BannerButtonStyle = 1
46)
47
48// A bar with contextual information.
49//
50// <picture>
51//
52//	<source srcset="banner-dark.png" media="(prefers-color-scheme: dark)">
53//	<img src="banner.png" alt="banner">
54//
55// </picture>
56//
57// Banners are hidden by default, use [property@Banner:revealed] to show them.
58//
59// Banners have a title, set with [property@Banner:title]. Titles can be marked
60// up with Pango markup, use [property@Banner:use-markup] to enable it.
61//
62// The title will be shown centered or left-aligned depending on available
63// space.
64//
65// Banners can optionally have a button with text on it, set through
66// [property@Banner:button-label]. The button can be used with a `GAction`,
67// or with the [signal@Banner::button-clicked] signal. The button can have
68// different styles, a gray style and a suggested style.
69//
70// <picture>
71//
72//	<source srcset="banner-suggested-dark.png" media="(prefers-color-scheme: dark)">
73//	<img src="banner-suggested.png" alt="banner with suggested button style">
74//
75// </picture>
76//
77// ## CSS nodes
78//
79// `AdwBanner` has a main CSS node with the name `banner`.
80type Banner struct {
81	gtk.Widget
82}
83
84var xBannerGLibType func() types.GType
85
86func BannerGLibType() types.GType {
87	return xBannerGLibType()
88}
89
90func BannerNewFromInternalPtr(ptr uintptr) *Banner {
91	cls := &Banner{}
92	cls.Ptr = ptr
93	return cls
94}
95
96var xNewBanner func(string) uintptr
97
98// Creates a new `AdwBanner`.
99func NewBanner(TitleVar string) *Banner {
100	var cls *Banner
101
102	cret := xNewBanner(TitleVar)
103
104	if cret == 0 {
105		return nil
106	}
107	gobject.IncreaseRef(cret)
108	cls = &Banner{}
109	cls.Ptr = cret
110	return cls
111}
112
113var xBannerGetButtonLabel func(uintptr) string
114
115// Gets the button label for @self.
116func (x *Banner) GetButtonLabel() string {
117
118	cret := xBannerGetButtonLabel(x.GoPointer())
119	return cret
120}
121
122var xBannerGetButtonStyle func(uintptr) BannerButtonStyle
123
124// Gets the style class in use for the banner button.
125func (x *Banner) GetButtonStyle() BannerButtonStyle {
126
127	cret := xBannerGetButtonStyle(x.GoPointer())
128	return cret
129}
130
131var xBannerGetRevealed func(uintptr) bool
132
133// Gets if a banner is revealed
134func (x *Banner) GetRevealed() bool {
135
136	cret := xBannerGetRevealed(x.GoPointer())
137	return cret
138}
139
140var xBannerGetTitle func(uintptr) string
141
142// Gets the title for @self.
143func (x *Banner) GetTitle() string {
144
145	cret := xBannerGetTitle(x.GoPointer())
146	return cret
147}
148
149var xBannerGetUseMarkup func(uintptr) bool
150
151// Gets whether to use Pango markup for the banner title.
152func (x *Banner) GetUseMarkup() bool {
153
154	cret := xBannerGetUseMarkup(x.GoPointer())
155	return cret
156}
157
158var xBannerSetButtonLabel func(uintptr, uintptr)
159
160// Sets the button label for @self.
161//
162// If set to `""` or `NULL`, the button won't be shown.
163//
164// The button can be used with a `GAction`, or with the
165// [signal@Banner::button-clicked] signal.
166func (x *Banner) SetButtonLabel(LabelVar *string) {
167
168	LabelVarPtr := core.GStrdupNullable(LabelVar)
169	defer core.GFreeNullable(LabelVarPtr)
170
171	xBannerSetButtonLabel(x.GoPointer(), LabelVarPtr)
172
173}
174
175var xBannerSetButtonStyle func(uintptr, BannerButtonStyle)
176
177// Sets the style class to use for the banner button.
178//
179// When set to `ADW_BANNER_BUTTON_DEFAULT`, the button stays grey.
180// When set to `ADW_BANNER_BUTTON_SUGGESTED`, the button follows the [`.suggested-action`](style-classes.html#suggested-action) style
181//
182// <picture>
183//
184//	<source srcset="banner-suggested-dark.png" media="(prefers-color-scheme: dark)">
185//	<img src="banner-suggested.png" alt="banner with suggested button style">
186//
187// </picture>
188func (x *Banner) SetButtonStyle(StyleVar BannerButtonStyle) {
189
190	xBannerSetButtonStyle(x.GoPointer(), StyleVar)
191
192}
193
194var xBannerSetRevealed func(uintptr, bool)
195
196// Sets whether a banner should be revealed
197func (x *Banner) SetRevealed(RevealedVar bool) {
198
199	xBannerSetRevealed(x.GoPointer(), RevealedVar)
200
201}
202
203var xBannerSetTitle func(uintptr, string)
204
205// Sets the title for this banner.
206//
207// See also: [property@Banner:use-markup].
208func (x *Banner) SetTitle(TitleVar string) {
209
210	xBannerSetTitle(x.GoPointer(), TitleVar)
211
212}
213
214var xBannerSetUseMarkup func(uintptr, bool)
215
216// Sets whether to use Pango markup for the banner title.
217//
218// See also [func@Pango.parse_markup].
219func (x *Banner) SetUseMarkup(UseMarkupVar bool) {
220
221	xBannerSetUseMarkup(x.GoPointer(), UseMarkupVar)
222
223}
224
225func (c *Banner) GoPointer() uintptr {
226	if c == nil {
227		return 0
228	}
229	return c.Ptr
230}
231
232func (c *Banner) SetGoPointer(ptr uintptr) {
233	c.Ptr = ptr
234}
235
236// SetPropertyButtonLabel sets the "button-label" property.
237// The label to show on the button.
238//
239// If set to `""` or `NULL`, the button won't be shown.
240//
241// The button can be used with a `GAction`, or with the
242// [signal@Banner::button-clicked] signal.
243func (x *Banner) SetPropertyButtonLabel(value string) {
244	var v gobject.Value
245	v.Init(gobject.TypeStringVal)
246	v.SetString(&value)
247	x.SetProperty("button-label", &v)
248}
249
250// GetPropertyButtonLabel gets the "button-label" property.
251// The label to show on the button.
252//
253// If set to `""` or `NULL`, the button won't be shown.
254//
255// The button can be used with a `GAction`, or with the
256// [signal@Banner::button-clicked] signal.
257func (x *Banner) GetPropertyButtonLabel() string {
258	var v gobject.Value
259	x.GetProperty("button-label", &v)
260	return v.GetString()
261}
262
263// SetPropertyRevealed sets the "revealed" property.
264// Whether the banner is currently revealed.
265func (x *Banner) SetPropertyRevealed(value bool) {
266	var v gobject.Value
267	v.Init(gobject.TypeBooleanVal)
268	v.SetBoolean(value)
269	x.SetProperty("revealed", &v)
270}
271
272// GetPropertyRevealed gets the "revealed" property.
273// Whether the banner is currently revealed.
274func (x *Banner) GetPropertyRevealed() bool {
275	var v gobject.Value
276	x.GetProperty("revealed", &v)
277	return v.GetBoolean()
278}
279
280// SetPropertyTitle sets the "title" property.
281// The title for this banner.
282//
283// See also: [property@Banner:use-markup].
284func (x *Banner) SetPropertyTitle(value string) {
285	var v gobject.Value
286	v.Init(gobject.TypeStringVal)
287	v.SetString(&value)
288	x.SetProperty("title", &v)
289}
290
291// GetPropertyTitle gets the "title" property.
292// The title for this banner.
293//
294// See also: [property@Banner:use-markup].
295func (x *Banner) GetPropertyTitle() string {
296	var v gobject.Value
297	x.GetProperty("title", &v)
298	return v.GetString()
299}
300
301// SetPropertyUseMarkup sets the "use-markup" property.
302// Whether to use Pango markup for the banner title.
303//
304// See also [func@Pango.parse_markup].
305func (x *Banner) SetPropertyUseMarkup(value bool) {
306	var v gobject.Value
307	v.Init(gobject.TypeBooleanVal)
308	v.SetBoolean(value)
309	x.SetProperty("use-markup", &v)
310}
311
312// GetPropertyUseMarkup gets the "use-markup" property.
313// Whether to use Pango markup for the banner title.
314//
315// See also [func@Pango.parse_markup].
316func (x *Banner) GetPropertyUseMarkup() bool {
317	var v gobject.Value
318	x.GetProperty("use-markup", &v)
319	return v.GetBoolean()
320}
321
322// This signal is emitted after the action button has been clicked.
323//
324// It can be used as an alternative to setting an action.
325func (x *Banner) ConnectButtonClicked(cb *func(Banner)) uint {
326	cbPtr := uintptr(unsafe.Pointer(cb))
327	if cbRefPtr, ok := glib.GetCallback(cbPtr); ok {
328		handlerID := gobject.SignalConnect(x.GoPointer(), "button-clicked", cbRefPtr)
329		glib.SaveHandlerMapping(handlerID, cbPtr)
330		return handlerID
331	}
332
333	fcb := func(clsPtr uintptr) {
334		fa := Banner{}
335		fa.Ptr = clsPtr
336		cbFn := *cb
337
338		cbFn(fa)
339
340	}
341	cbRefPtr := purego.NewCallback(fcb)
342	glib.SaveCallbackWithClosure(cbPtr, cbRefPtr, cb)
343	handlerID := gobject.SignalConnect(x.GoPointer(), "button-clicked", cbRefPtr)
344	glib.SaveHandlerMapping(handlerID, cbPtr)
345	return handlerID
346}
347
348// Requests the user's screen reader to announce the given message.
349//
350// This kind of notification is useful for messages that
351// either have only a visual representation or that are not
352// exposed visually at all, e.g. a notification about a
353// successful operation.
354//
355// Also, by using this API, you can ensure that the message
356// does not interrupts the user's current screen reader output.
357func (x *Banner) Announce(MessageVar string, PriorityVar gtk.AccessibleAnnouncementPriority) {
358
359	gtk.XGtkAccessibleAnnounce(x.GoPointer(), MessageVar, PriorityVar)
360
361}
362
363// Retrieves the accessible parent for an accessible object.
364//
365// This function returns `NULL` for top level widgets.
366func (x *Banner) GetAccessibleParent() *gtk.AccessibleBase {
367	var cls *gtk.AccessibleBase
368
369	cret := gtk.XGtkAccessibleGetAccessibleParent(x.GoPointer())
370
371	if cret == 0 {
372		return nil
373	}
374	cls = &gtk.AccessibleBase{}
375	cls.Ptr = cret
376	return cls
377}
378
379// Retrieves the accessible role of an accessible object.
380func (x *Banner) GetAccessibleRole() gtk.AccessibleRole {
381
382	cret := gtk.XGtkAccessibleGetAccessibleRole(x.GoPointer())
383	return cret
384}
385
386// Retrieves the implementation for the given accessible object.
387func (x *Banner) GetAtContext() *gtk.ATContext {
388	var cls *gtk.ATContext
389
390	cret := gtk.XGtkAccessibleGetAtContext(x.GoPointer())
391
392	if cret == 0 {
393		return nil
394	}
395	cls = &gtk.ATContext{}
396	cls.Ptr = cret
397	return cls
398}
399
400// Queries the coordinates and dimensions of this accessible
401//
402// This functionality can be overridden by `GtkAccessible`
403// implementations, e.g. to get the bounds from an ignored
404// child widget.
405func (x *Banner) GetBounds(XVar *int, YVar *int, WidthVar *int, HeightVar *int) bool {
406
407	cret := gtk.XGtkAccessibleGetBounds(x.GoPointer(), XVar, YVar, WidthVar, HeightVar)
408	return cret
409}
410
411// Retrieves the first accessible child of an accessible object.
412func (x *Banner) GetFirstAccessibleChild() *gtk.AccessibleBase {
413	var cls *gtk.AccessibleBase
414
415	cret := gtk.XGtkAccessibleGetFirstAccessibleChild(x.GoPointer())
416
417	if cret == 0 {
418		return nil
419	}
420	cls = &gtk.AccessibleBase{}
421	cls.Ptr = cret
422	return cls
423}
424
425// Retrieves the next accessible sibling of an accessible object
426func (x *Banner) GetNextAccessibleSibling() *gtk.AccessibleBase {
427	var cls *gtk.AccessibleBase
428
429	cret := gtk.XGtkAccessibleGetNextAccessibleSibling(x.GoPointer())
430
431	if cret == 0 {
432		return nil
433	}
434	cls = &gtk.AccessibleBase{}
435	cls.Ptr = cret
436	return cls
437}
438
439// Queries a platform state, such as focus.
440//
441// This functionality can be overridden by `GtkAccessible`
442// implementations, e.g. to get platform state from an ignored
443// child widget, as is the case for `GtkText` wrappers.
444func (x *Banner) GetPlatformState(StateVar gtk.AccessiblePlatformState) bool {
445
446	cret := gtk.XGtkAccessibleGetPlatformState(x.GoPointer(), StateVar)
447	return cret
448}
449
450// Resets the accessible property to its default value.
451func (x *Banner) ResetProperty(PropertyVar gtk.AccessibleProperty) {
452
453	gtk.XGtkAccessibleResetProperty(x.GoPointer(), PropertyVar)
454
455}
456
457// Resets the accessible relation to its default value.
458func (x *Banner) ResetRelation(RelationVar gtk.AccessibleRelation) {
459
460	gtk.XGtkAccessibleResetRelation(x.GoPointer(), RelationVar)
461
462}
463
464// Resets the accessible state to its default value.
465func (x *Banner) ResetState(StateVar gtk.AccessibleState) {
466
467	gtk.XGtkAccessibleResetState(x.GoPointer(), StateVar)
468
469}
470
471// Sets the parent and sibling of an accessible object.
472//
473// This function is meant to be used by accessible implementations that are
474// not part of the widget hierarchy, and but act as a logical bridge between
475// widgets. For instance, if a widget creates an object that holds metadata
476// for each child, and you want that object to implement the `GtkAccessible`
477// interface, you will use this function to ensure that the parent of each
478// child widget is the metadata object, and the parent of each metadata
479// object is the container widget.
480func (x *Banner) SetAccessibleParent(ParentVar gtk.Accessible, NextSiblingVar gtk.Accessible) {
481
482	gtk.XGtkAccessibleSetAccessibleParent(x.GoPointer(), ParentVar.GoPointer(), NextSiblingVar.GoPointer())
483
484}
485
486// Updates the next accessible sibling.
487//
488// That might be useful when a new child of a custom accessible
489// is created, and it needs to be linked to a previous child.
490func (x *Banner) UpdateNextAccessibleSibling(NewSiblingVar gtk.Accessible) {
491
492	gtk.XGtkAccessibleUpdateNextAccessibleSibling(x.GoPointer(), NewSiblingVar.GoPointer())
493
494}
495
496// Informs ATs that the platform state has changed.
497//
498// This function should be used by `GtkAccessible` implementations that
499// have a platform state but are not widgets. Widgets handle platform
500// states automatically.
501func (x *Banner) UpdatePlatformState(StateVar gtk.AccessiblePlatformState) {
502
503	gtk.XGtkAccessibleUpdatePlatformState(x.GoPointer(), StateVar)
504
505}
506
507// Updates a list of accessible properties.
508//
509// See the [enum@Gtk.AccessibleProperty] documentation for the
510// value types of accessible properties.
511//
512// This function should be called by `GtkWidget` types whenever
513// an accessible property change must be communicated to assistive
514// technologies.
515//
516// Example:
517// ```c
518// value = gtk_adjustment_get_value (adjustment);
519// gtk_accessible_update_property (GTK_ACCESSIBLE (spin_button),
520//
521//	GTK_ACCESSIBLE_PROPERTY_VALUE_NOW, value,
522//	-1);
523//
524// ```
525func (x *Banner) UpdateProperty(FirstPropertyVar gtk.AccessibleProperty, varArgs ...interface{}) {
526
527	gtk.XGtkAccessibleUpdateProperty(x.GoPointer(), FirstPropertyVar, varArgs...)
528
529}
530
531// Updates an array of accessible properties.
532//
533// This function should be called by `GtkWidget` types whenever an accessible
534// property change must be communicated to assistive technologies.
535//
536// This function is meant to be used by language bindings.
537func (x *Banner) UpdatePropertyValue(NPropertiesVar int, PropertiesVar []gtk.AccessibleProperty, ValuesVar []gobject.Value) {
538
539	gtk.XGtkAccessibleUpdatePropertyValue(x.GoPointer(), NPropertiesVar, PropertiesVar, ValuesVar)
540
541}
542
543// Updates a list of accessible relations.
544//
545// This function should be called by `GtkWidget` types whenever an accessible
546// relation change must be communicated to assistive technologies.
547//
548// If the [enum@Gtk.AccessibleRelation] requires a list of references,
549// you should pass each reference individually, followed by `NULL`, e.g.
550//
551// ```c
552// gtk_accessible_update_relation (accessible,
553//
554//	GTK_ACCESSIBLE_RELATION_CONTROLS,
555//	  ref1, NULL,
556//	GTK_ACCESSIBLE_RELATION_LABELLED_BY,
557//	  ref1, ref2, ref3, NULL,
558//	-1);
559//
560// ```
561func (x *Banner) UpdateRelation(FirstRelationVar gtk.AccessibleRelation, varArgs ...interface{}) {
562
563	gtk.XGtkAccessibleUpdateRelation(x.GoPointer(), FirstRelationVar, varArgs...)
564
565}
566
567// Updates an array of accessible relations.
568//
569// This function should be called by `GtkWidget` types whenever an accessible
570// relation change must be communicated to assistive technologies.
571//
572// This function is meant to be used by language bindings.
573func (x *Banner) UpdateRelationValue(NRelationsVar int, RelationsVar []gtk.AccessibleRelation, ValuesVar []gobject.Value) {
574
575	gtk.XGtkAccessibleUpdateRelationValue(x.GoPointer(), NRelationsVar, RelationsVar, ValuesVar)
576
577}
578
579// Updates a list of accessible states.
580//
581// See the [enum@Gtk.AccessibleState] documentation for the
582// value types of accessible states.
583//
584// This function should be called by `GtkWidget` types whenever
585// an accessible state change must be communicated to assistive
586// technologies.
587//
588// Example:
589//
590// ```c
591// value = GTK_ACCESSIBLE_TRISTATE_MIXED;
592// gtk_accessible_update_state (GTK_ACCESSIBLE (check_button),
593//
594//	GTK_ACCESSIBLE_STATE_CHECKED, value,
595//	-1);
596//
597// ```
598func (x *Banner) UpdateState(FirstStateVar gtk.AccessibleState, varArgs ...interface{}) {
599
600	gtk.XGtkAccessibleUpdateState(x.GoPointer(), FirstStateVar, varArgs...)
601
602}
603
604// Updates an array of accessible states.
605//
606// This function should be called by `GtkWidget` types whenever an accessible
607// state change must be communicated to assistive technologies.
608//
609// This function is meant to be used by language bindings.
610func (x *Banner) UpdateStateValue(NStatesVar int, StatesVar []gtk.AccessibleState, ValuesVar []gobject.Value) {
611
612	gtk.XGtkAccessibleUpdateStateValue(x.GoPointer(), NStatesVar, StatesVar, ValuesVar)
613
614}
615
616// Gets the action name for @actionable.
617func (x *Banner) GetActionName() string {
618
619	cret := gtk.XGtkActionableGetActionName(x.GoPointer())
620	return cret
621}
622
623// Gets the current target value of @actionable.
624func (x *Banner) GetActionTargetValue() *glib.Variant {
625
626	cret := gtk.XGtkActionableGetActionTargetValue(x.GoPointer())
627	return cret
628}
629
630// Specifies the name of the action with which this widget should be
631// associated.
632//
633// If @action_name is %NULL then the widget will be unassociated from
634// any previous action.
635//
636// Usually this function is used when the widget is located (or will be
637// located) within the hierarchy of a `GtkApplicationWindow`.
638//
639// Names are of the form “win.save” or “app.quit” for actions on the
640// containing [class@ApplicationWindow] or its associated [class@Application],
641// respectively. This is the same form used for actions in the [class@Gio.Menu]
642// associated with the window.
643func (x *Banner) SetActionName(ActionNameVar *string) {
644
645	ActionNameVarPtr := core.GStrdupNullable(ActionNameVar)
646	defer core.GFreeNullable(ActionNameVarPtr)
647
648	gtk.XGtkActionableSetActionName(x.GoPointer(), ActionNameVarPtr)
649
650}
651
652// Sets the target of an actionable widget.
653//
654// This is a convenience function that calls [ctor@GLib.Variant.new] for
655// @format_string and uses the result to call
656// [method@Gtk.Actionable.set_action_target_value].
657//
658// If you are setting a string-valued target and want to set
659// the action name at the same time, you can use
660// [method@Gtk.Actionable.set_detailed_action_name].
661func (x *Banner) SetActionTarget(FormatStringVar string, varArgs ...interface{}) {
662
663	gtk.XGtkActionableSetActionTarget(x.GoPointer(), FormatStringVar, varArgs...)
664
665}
666
667// Sets the target value of an actionable widget.
668//
669// If @target_value is %NULL then the target value is unset.
670//
671// The target value has two purposes. First, it is used as the parameter
672// to activation of the action associated with the `GtkActionable` widget.
673// Second, it is used to determine if the widget should be rendered as
674// “active” — the widget is active if the state is equal to the given target.
675//
676// Consider the example of associating a set of buttons with a [iface@Gio.Action]
677// with string state in a typical “radio button” situation. Each button
678// will be associated with the same action, but with a different target
679// value for that action. Clicking on a particular button will activate
680// the action with the target of that button, which will typically cause
681// the action’s state to change to that value. Since the action’s state
682// is now equal to the target value of the button, the button will now
683// be rendered as active (and the other buttons, with different targets,
684// rendered inactive).
685func (x *Banner) SetActionTargetValue(TargetValueVar *glib.Variant) {
686
687	gtk.XGtkActionableSetActionTargetValue(x.GoPointer(), TargetValueVar)
688
689}
690
691// Sets the action-name and associated string target value of an
692// actionable widget.
693//
694// @detailed_action_name is a string in the format accepted by
695// [func@Gio.Action.parse_detailed_name].
696func (x *Banner) SetDetailedActionName(DetailedActionNameVar string) {
697
698	gtk.XGtkActionableSetDetailedActionName(x.GoPointer(), DetailedActionNameVar)
699
700}
701
702// Gets the ID of the @buildable object.
703//
704// `GtkBuilder` sets the name based on the ID attribute
705// of the `<object>` tag used to construct the @buildable.
706func (x *Banner) GetBuildableId() string {
707
708	cret := gtk.XGtkBuildableGetBuildableId(x.GoPointer())
709	return cret
710}
711
712func init() {
713	core.SetPackageName("ADW", "libadwaita-1")
714	core.SetSharedLibraries("ADW", []string{"libadwaita-1.so.0"})
715	var libs []uintptr
716	for _, libPath := range core.GetPaths("ADW") {
717		lib, err := purego.Dlopen(libPath, purego.RTLD_NOW|purego.RTLD_GLOBAL)
718		if err != nil {
719			panic(err)
720		}
721		libs = append(libs, lib)
722	}
723
724	core.PuregoSafeRegister(&xBannerButtonStyleGLibType, libs, "adw_banner_button_style_get_type")
725
726	core.PuregoSafeRegister(&xBannerGLibType, libs, "adw_banner_get_type")
727
728	core.PuregoSafeRegister(&xNewBanner, libs, "adw_banner_new")
729
730	core.PuregoSafeRegister(&xBannerGetButtonLabel, libs, "adw_banner_get_button_label")
731	core.PuregoSafeRegister(&xBannerGetButtonStyle, libs, "adw_banner_get_button_style")
732	core.PuregoSafeRegister(&xBannerGetRevealed, libs, "adw_banner_get_revealed")
733	core.PuregoSafeRegister(&xBannerGetTitle, libs, "adw_banner_get_title")
734	core.PuregoSafeRegister(&xBannerGetUseMarkup, libs, "adw_banner_get_use_markup")
735	core.PuregoSafeRegister(&xBannerSetButtonLabel, libs, "adw_banner_set_button_label")
736	core.PuregoSafeRegister(&xBannerSetButtonStyle, libs, "adw_banner_set_button_style")
737	core.PuregoSafeRegister(&xBannerSetRevealed, libs, "adw_banner_set_revealed")
738	core.PuregoSafeRegister(&xBannerSetTitle, libs, "adw_banner_set_title")
739	core.PuregoSafeRegister(&xBannerSetUseMarkup, libs, "adw_banner_set_use_markup")
740
741}

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 1

Tags 102

↑↓ moveenter openesc close