Merge pull request #350 from bnema/fix/repin-fixed-puregotk
fix(deps): validate puregotk lazy registration fix
907 files · +27874 -25296
M go.mod +3 -1
| @@ -11,7 +11,7 @@ require ( | |||
| 11 | 11 | github.com/bnema/purego-pipewire v0.1.5-0.20260714124450-6504b9cdf02a | |
| 12 | 12 | github.com/bnema/purego-sqlite v0.1.4-0.20260714131321-3614fe683b9c | |
| 13 | 13 | github.com/bnema/purego-webp v0.2.1-0.20260714152238-7bc9c402fdf6 | |
| 14 | - | github.com/bnema/puregotk v0.7.0 | |
| 14 | + | github.com/bnema/puregotk v0.7.1-0.20260714200603-7370c78950ef | |
| 15 | 15 | github.com/charmbracelet/bubbles v1.0.0 | |
| 16 | 16 | github.com/charmbracelet/bubbletea v1.3.10 | |
| 17 | 17 | github.com/charmbracelet/lipgloss v1.1.0 | |
| @@ -47,6 +47,7 @@ require ( | |||
| 47 | 47 | github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f // indirect | |
| 48 | 48 | github.com/fatih/color v1.19.0 // indirect | |
| 49 | 49 | github.com/go-viper/mapstructure/v2 v2.5.0 // indirect | |
| 50 | + | github.com/google/go-cmp v0.7.0 // indirect | |
| 50 | 51 | github.com/inconshreveable/mousetrap v1.1.0 // indirect | |
| 51 | 52 | github.com/lucasb-eyer/go-colorful v1.4.0 // indirect | |
| 52 | 53 | github.com/mattn/go-colorable v0.1.14 // indirect | |
| @@ -80,6 +81,7 @@ require ( | |||
| 80 | 81 | golang.org/x/text v0.40.0 // indirect | |
| 81 | 82 | golang.org/x/tools v0.47.0 // indirect | |
| 82 | 83 | gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c // indirect | |
| 84 | + | mvdan.cc/gofumpt v0.9.2 // indirect | |
| 83 | 85 | ) | |
| 84 | 86 | ||
| 85 | 87 | tool github.com/a-h/templ/cmd/templ | |
| @@ -11,7 +11,7 @@ require ( | |||||
| 11 | github.com/bnema/purego-pipewire v0.1.5-0.20260714124450-6504b9cdf02a | 11 | github.com/bnema/purego-pipewire v0.1.5-0.20260714124450-6504b9cdf02a | ||
| 12 | github.com/bnema/purego-sqlite v0.1.4-0.20260714131321-3614fe683b9c | 12 | github.com/bnema/purego-sqlite v0.1.4-0.20260714131321-3614fe683b9c | ||
| 13 | github.com/bnema/purego-webp v0.2.1-0.20260714152238-7bc9c402fdf6 | 13 | github.com/bnema/purego-webp v0.2.1-0.20260714152238-7bc9c402fdf6 | ||
| 14 | - | github.com/bnema/puregotk v0.7.0 | 14 | + | github.com/bnema/puregotk v0.7.1-0.20260714200603-7370c78950ef |
| 15 | github.com/charmbracelet/bubbles v1.0.0 | 15 | github.com/charmbracelet/bubbles v1.0.0 | ||
| 16 | github.com/charmbracelet/bubbletea v1.3.10 | 16 | github.com/charmbracelet/bubbletea v1.3.10 | ||
| 17 | github.com/charmbracelet/lipgloss v1.1.0 | 17 | github.com/charmbracelet/lipgloss v1.1.0 | ||
| @@ -47,6 +47,7 @@ require ( | |||||
| 47 | github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f // indirect | 47 | github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f // indirect | ||
| 48 | github.com/fatih/color v1.19.0 // indirect | 48 | github.com/fatih/color v1.19.0 // indirect | ||
| 49 | github.com/go-viper/mapstructure/v2 v2.5.0 // indirect | 49 | github.com/go-viper/mapstructure/v2 v2.5.0 // indirect | ||
| 50 | + | github.com/google/go-cmp v0.7.0 // indirect | |||
| 50 | github.com/inconshreveable/mousetrap v1.1.0 // indirect | 51 | github.com/inconshreveable/mousetrap v1.1.0 // indirect | ||
| 51 | github.com/lucasb-eyer/go-colorful v1.4.0 // indirect | 52 | github.com/lucasb-eyer/go-colorful v1.4.0 // indirect | ||
| 52 | github.com/mattn/go-colorable v0.1.14 // indirect | 53 | github.com/mattn/go-colorable v0.1.14 // indirect | ||
| @@ -80,6 +81,7 @@ require ( | |||||
| 80 | golang.org/x/text v0.40.0 // indirect | 81 | golang.org/x/text v0.40.0 // indirect | ||
| 81 | golang.org/x/tools v0.47.0 // indirect | 82 | golang.org/x/tools v0.47.0 // indirect | ||
| 82 | gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c // indirect | 83 | gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c // indirect | ||
| 84 | + | mvdan.cc/gofumpt v0.9.2 // indirect | |||
| 83 | ) | 85 | ) | ||
| 84 | 86 | ||||
| 85 | tool github.com/a-h/templ/cmd/templ | 87 | tool github.com/a-h/templ/cmd/templ | ||
M go.sum +4 -18 generated file: collapsed
M vendor/github.com/bnema/puregotk/internal/core/core.go +197 -4 generated file: collapsed
M vendor/github.com/bnema/puregotk/pkg/core/core.go +10 -0 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-about-dialog.go +99 -64 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-about-window.go +95 -62 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-accent-color.go +7 -15 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-action-row.go +33 -29 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-alert-dialog.go +66 -47 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-animation-target.go +10 -27 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-animation-util.go +4 -12 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-animation.go +24 -26 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-application-window.go +14 -22 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-application.go +3 -15 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-avatar.go +22 -25 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-banner.go +23 -26 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-bin.go +5 -16 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-bottom-sheet.go +47 -38 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-breakpoint-bin.go +10 -19 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-breakpoint.go +33 -37 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-button-content.go +18 -22 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-button-row.go +10 -18 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-carousel-indicator-dots.go +5 -16 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-carousel-indicator-lines.go +5 -16 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-carousel.go +47 -37 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-clamp-layout.go +14 -20 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-clamp-scrollable.go +17 -22 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-clamp.go +17 -22 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-combo-row.go +34 -33 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-dialog.go +45 -38 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-easing.go +3 -13 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-entry-row.go +40 -33 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-enum-list-model.go +13 -22 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-expander-row.go +40 -33 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-flap.go +61 -48 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-fold-threshold-policy.go +10 -1 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-header-bar.go +36 -33 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-inline-view-switcher.go +18 -24 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-layout-slot.go +4 -15 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-layout.go +7 -17 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-leaflet.go +69 -56 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-length-unit.go +5 -14 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-main.go +5 -15 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-message-dialog.go +63 -44 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-multi-layout-view.go +17 -23 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-navigation-direction.go +10 -1 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-navigation-split-view.go +36 -32 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-navigation-view.go +60 -49 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-overlay-split-view.go +48 -38 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-password-entry-row.go +2 -13 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-preferences-dialog.go +23 -25 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-preferences-group.go +24 -26 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-preferences-page.go +38 -33 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-preferences-row.go +18 -22 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-preferences-window.go +31 -29 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-shortcut-label.go +10 -18 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-shortcuts-dialog.go +4 -15 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-shortcuts-item.go +23 -25 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-shortcuts-section.go +8 -17 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-sidebar-item.go +45 -37 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-sidebar-section.go +24 -27 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-sidebar.go +41 -39 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-spin-row.go +40 -34 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-spinner-paintable.go +5 -16 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-spinner.go +2 -13 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-split-button.go +39 -34 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-spring-animation.go +34 -30 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-spring-params.go +17 -21 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-squeezer.go +49 -44 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-status-page.go +20 -24 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-style-manager.go +25 -28 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-swipe-tracker.go +33 -30 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-swipeable.go +33 -21 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-switch-row.go +6 -16 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-tab-bar.go +35 -32 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-tab-button.go +5 -16 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-tab-overview.go +45 -37 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-tab-view.go +123 -87 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-timed-animation.go +30 -28 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-toast-overlay.go +9 -18 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-toast.go +41 -36 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-toggle-group.go +64 -51 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-toolbar-view.go +40 -35 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-version.go +7 -16 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-view-stack.go +78 -62 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-view-switcher-bar.go +9 -18 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-view-switcher-sidebar.go +15 -22 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-view-switcher-title.go +19 -23 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-view-switcher.go +10 -20 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-window-title.go +10 -18 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-window.go +14 -22
| @@ -5,7 +5,6 @@ import ( | |||
| 5 | 5 | "structs" | |
| 6 | 6 | "unsafe" | |
| 7 | 7 | ||
| 8 | - | "github.com/bnema/purego" | |
| 9 | 8 | "github.com/bnema/puregotk/pkg/core" | |
| 10 | 9 | "github.com/bnema/puregotk/v4/gdk" | |
| 11 | 10 | "github.com/bnema/puregotk/v4/gio" | |
| @@ -127,6 +126,7 @@ type Window struct { | |||
| 127 | 126 | var xWindowGLibType func() types.GType | |
| 128 | 127 | ||
| 129 | 128 | func WindowGLibType() types.GType { | |
| 129 | + | core.LazyRegister(&xWindowGLibType, "ADW", "adw_window_get_type", false) | |
| 130 | 130 | return xWindowGLibType() | |
| 131 | 131 | } | |
| 132 | 132 | ||
| @@ -140,6 +140,7 @@ var xNewWindow func() uintptr | |||
| 140 | 140 | ||
| 141 | 141 | // Creates a new `AdwWindow`. | |
| 142 | 142 | func NewWindow() *Window { | |
| 143 | + | core.LazyRegister(&xNewWindow, "ADW", "adw_window_new", false) | |
| 143 | 144 | var cls *Window | |
| 144 | 145 | ||
| 145 | 146 | cret := xNewWindow() | |
| @@ -157,6 +158,8 @@ var xWindowAddBreakpoint func(uintptr, uintptr) | |||
| 157 | 158 | ||
| 158 | 159 | // Adds @breakpoint to @self. | |
| 159 | 160 | func (x *Window) AddBreakpoint(BreakpointVar *Breakpoint) { | |
| 161 | + | core.LazyRegister(&xWindowAddBreakpoint, "ADW", "adw_window_add_breakpoint", false) | |
| 162 | + | ||
| 160 | 163 | xWindowAddBreakpoint(x.GoPointer(), BreakpointVar.GoPointer()) | |
| 161 | 164 | } | |
| 162 | 165 | ||
| @@ -164,6 +167,8 @@ var xWindowGetAdaptivePreview func(uintptr) bool | |||
| 164 | 167 | ||
| 165 | 168 | // Gets whether adaptive preview for @self is currently open. | |
| 166 | 169 | func (x *Window) GetAdaptivePreview() bool { | |
| 170 | + | core.LazyRegister(&xWindowGetAdaptivePreview, "ADW", "adw_window_get_adaptive_preview", false) | |
| 171 | + | ||
| 167 | 172 | cret := xWindowGetAdaptivePreview(x.GoPointer()) | |
| 168 | 173 | return cret | |
| 169 | 174 | } | |
| @@ -174,6 +179,7 @@ var xWindowGetContent func(uintptr) uintptr | |||
| 174 | 179 | // | |
| 175 | 180 | // This method should always be used instead of [method@Gtk.Window.get_child]. | |
| 176 | 181 | func (x *Window) GetContent() *gtk.Widget { | |
| 182 | + | core.LazyRegister(&xWindowGetContent, "ADW", "adw_window_get_content", false) | |
| 177 | 183 | var cls *gtk.Widget | |
| 178 | 184 | ||
| 179 | 185 | cret := xWindowGetContent(x.GoPointer()) | |
| @@ -191,6 +197,7 @@ var xWindowGetCurrentBreakpoint func(uintptr) uintptr | |||
| 191 | 197 | ||
| 192 | 198 | // Gets the current breakpoint. | |
| 193 | 199 | func (x *Window) GetCurrentBreakpoint() *Breakpoint { | |
| 200 | + | core.LazyRegister(&xWindowGetCurrentBreakpoint, "ADW", "adw_window_get_current_breakpoint", false) | |
| 194 | 201 | var cls *Breakpoint | |
| 195 | 202 | ||
| 196 | 203 | cret := xWindowGetCurrentBreakpoint(x.GoPointer()) | |
| @@ -210,6 +217,7 @@ var xWindowGetDialogs func(uintptr) uintptr | |||
| 210 | 217 | // | |
| 211 | 218 | // This can be used to keep an up-to-date view. | |
| 212 | 219 | func (x *Window) GetDialogs() *gio.ListModelBase { | |
| 220 | + | core.LazyRegister(&xWindowGetDialogs, "ADW", "adw_window_get_dialogs", false) | |
| 213 | 221 | var cls *gio.ListModelBase | |
| 214 | 222 | ||
| 215 | 223 | cret := xWindowGetDialogs(x.GoPointer()) | |
| @@ -226,6 +234,7 @@ var xWindowGetVisibleDialog func(uintptr) uintptr | |||
| 226 | 234 | ||
| 227 | 235 | // Returns the currently visible dialog in @self, if there's one. | |
| 228 | 236 | func (x *Window) GetVisibleDialog() *Dialog { | |
| 237 | + | core.LazyRegister(&xWindowGetVisibleDialog, "ADW", "adw_window_get_visible_dialog", false) | |
| 229 | 238 | var cls *Dialog | |
| 230 | 239 | ||
| 231 | 240 | cret := xWindowGetVisibleDialog(x.GoPointer()) | |
| @@ -251,6 +260,8 @@ var xWindowSetAdaptivePreview func(uintptr, bool) | |||
| 251 | 260 | // | |
| 252 | 261 | // Most applications should not use this function. | |
| 253 | 262 | func (x *Window) SetAdaptivePreview(AdaptivePreviewVar bool) { | |
| 263 | + | core.LazyRegister(&xWindowSetAdaptivePreview, "ADW", "adw_window_set_adaptive_preview", false) | |
| 264 | + | ||
| 254 | 265 | xWindowSetAdaptivePreview(x.GoPointer(), AdaptivePreviewVar) | |
| 255 | 266 | } | |
| 256 | 267 | ||
| @@ -260,6 +271,8 @@ var xWindowSetContent func(uintptr, uintptr) | |||
| 260 | 271 | // | |
| 261 | 272 | // This method should always be used instead of [method@Gtk.Window.set_child]. | |
| 262 | 273 | func (x *Window) SetContent(ContentVar *gtk.Widget) { | |
| 274 | + | core.LazyRegister(&xWindowSetContent, "ADW", "adw_window_set_content", false) | |
| 275 | + | ||
| 263 | 276 | xWindowSetContent(x.GoPointer(), ContentVar.GoPointer()) | |
| 264 | 277 | } | |
| 265 | 278 | ||
| @@ -669,25 +682,4 @@ func (x *Window) SetFocus(FocusVar *gtk.Widget) { | |||
| 669 | 682 | func init() { | |
| 670 | 683 | core.SetPackageName("ADW", "libadwaita-1") | |
| 671 | 684 | core.SetSharedLibraries("ADW", []string{"libadwaita-1.so.0", "libadwaita-1.0.dylib"}) | |
| 672 | - | var libs []uintptr | |
| 673 | - | for _, libPath := range core.GetPaths("ADW") { | |
| 674 | - | lib, err := purego.Dlopen(libPath, purego.RTLD_NOW|purego.RTLD_GLOBAL) | |
| 675 | - | if err != nil { | |
| 676 | - | panic(err) | |
| 677 | - | } | |
| 678 | - | libs = append(libs, lib) | |
| 679 | - | } | |
| 680 | - | ||
| 681 | - | core.PuregoSafeRegister(&xWindowGLibType, libs, "adw_window_get_type") | |
| 682 | - | ||
| 683 | - | core.PuregoSafeRegister(&xNewWindow, libs, "adw_window_new") | |
| 684 | - | ||
| 685 | - | core.PuregoSafeRegister(&xWindowAddBreakpoint, libs, "adw_window_add_breakpoint") | |
| 686 | - | core.PuregoSafeRegister(&xWindowGetAdaptivePreview, libs, "adw_window_get_adaptive_preview") | |
| 687 | - | core.PuregoSafeRegister(&xWindowGetContent, libs, "adw_window_get_content") | |
| 688 | - | core.PuregoSafeRegister(&xWindowGetCurrentBreakpoint, libs, "adw_window_get_current_breakpoint") | |
| 689 | - | core.PuregoSafeRegister(&xWindowGetDialogs, libs, "adw_window_get_dialogs") | |
| 690 | - | core.PuregoSafeRegister(&xWindowGetVisibleDialog, libs, "adw_window_get_visible_dialog") | |
| 691 | - | core.PuregoSafeRegister(&xWindowSetAdaptivePreview, libs, "adw_window_set_adaptive_preview") | |
| 692 | - | core.PuregoSafeRegister(&xWindowSetContent, libs, "adw_window_set_content") | |
| 693 | 685 | } | |
| @@ -5,7 +5,6 @@ import ( | |||||
| 5 | "structs" | 5 | "structs" | ||
| 6 | "unsafe" | 6 | "unsafe" | ||
| 7 | 7 | ||||
| 8 | - | "github.com/bnema/purego" | |||
| 9 | "github.com/bnema/puregotk/pkg/core" | 8 | "github.com/bnema/puregotk/pkg/core" | ||
| 10 | "github.com/bnema/puregotk/v4/gdk" | 9 | "github.com/bnema/puregotk/v4/gdk" | ||
| 11 | "github.com/bnema/puregotk/v4/gio" | 10 | "github.com/bnema/puregotk/v4/gio" | ||
| @@ -127,6 +126,7 @@ type Window struct { | |||||
| 127 | var xWindowGLibType func() types.GType | 126 | var xWindowGLibType func() types.GType | ||
| 128 | 127 | ||||
| 129 | func WindowGLibType() types.GType { | 128 | func WindowGLibType() types.GType { | ||
| 129 | + | core.LazyRegister(&xWindowGLibType, "ADW", "adw_window_get_type", false) | |||
| 130 | return xWindowGLibType() | 130 | return xWindowGLibType() | ||
| 131 | } | 131 | } | ||
| 132 | 132 | ||||
| @@ -140,6 +140,7 @@ var xNewWindow func() uintptr | |||||
| 140 | 140 | ||||
| 141 | // Creates a new `AdwWindow`. | 141 | // Creates a new `AdwWindow`. | ||
| 142 | func NewWindow() *Window { | 142 | func NewWindow() *Window { | ||
| 143 | + | core.LazyRegister(&xNewWindow, "ADW", "adw_window_new", false) | |||
| 143 | var cls *Window | 144 | var cls *Window | ||
| 144 | 145 | ||||
| 145 | cret := xNewWindow() | 146 | cret := xNewWindow() | ||
| @@ -157,6 +158,8 @@ var xWindowAddBreakpoint func(uintptr, uintptr) | |||||
| 157 | 158 | ||||
| 158 | // Adds @breakpoint to @self. | 159 | // Adds @breakpoint to @self. | ||
| 159 | func (x *Window) AddBreakpoint(BreakpointVar *Breakpoint) { | 160 | func (x *Window) AddBreakpoint(BreakpointVar *Breakpoint) { | ||
| 161 | + | core.LazyRegister(&xWindowAddBreakpoint, "ADW", "adw_window_add_breakpoint", false) | |||
| 162 | + | ||||
| 160 | xWindowAddBreakpoint(x.GoPointer(), BreakpointVar.GoPointer()) | 163 | xWindowAddBreakpoint(x.GoPointer(), BreakpointVar.GoPointer()) | ||
| 161 | } | 164 | } | ||
| 162 | 165 | ||||
| @@ -164,6 +167,8 @@ var xWindowGetAdaptivePreview func(uintptr) bool | |||||
| 164 | 167 | ||||
| 165 | // Gets whether adaptive preview for @self is currently open. | 168 | // Gets whether adaptive preview for @self is currently open. | ||
| 166 | func (x *Window) GetAdaptivePreview() bool { | 169 | func (x *Window) GetAdaptivePreview() bool { | ||
| 170 | + | core.LazyRegister(&xWindowGetAdaptivePreview, "ADW", "adw_window_get_adaptive_preview", false) | |||
| 171 | + | ||||
| 167 | cret := xWindowGetAdaptivePreview(x.GoPointer()) | 172 | cret := xWindowGetAdaptivePreview(x.GoPointer()) | ||
| 168 | return cret | 173 | return cret | ||
| 169 | } | 174 | } | ||
| @@ -174,6 +179,7 @@ var xWindowGetContent func(uintptr) uintptr | |||||
| 174 | // | 179 | // | ||
| 175 | // This method should always be used instead of [method@Gtk.Window.get_child]. | 180 | // This method should always be used instead of [method@Gtk.Window.get_child]. | ||
| 176 | func (x *Window) GetContent() *gtk.Widget { | 181 | func (x *Window) GetContent() *gtk.Widget { | ||
| 182 | + | core.LazyRegister(&xWindowGetContent, "ADW", "adw_window_get_content", false) | |||
| 177 | var cls *gtk.Widget | 183 | var cls *gtk.Widget | ||
| 178 | 184 | ||||
| 179 | cret := xWindowGetContent(x.GoPointer()) | 185 | cret := xWindowGetContent(x.GoPointer()) | ||
| @@ -191,6 +197,7 @@ var xWindowGetCurrentBreakpoint func(uintptr) uintptr | |||||
| 191 | 197 | ||||
| 192 | // Gets the current breakpoint. | 198 | // Gets the current breakpoint. | ||
| 193 | func (x *Window) GetCurrentBreakpoint() *Breakpoint { | 199 | func (x *Window) GetCurrentBreakpoint() *Breakpoint { | ||
| 200 | + | core.LazyRegister(&xWindowGetCurrentBreakpoint, "ADW", "adw_window_get_current_breakpoint", false) | |||
| 194 | var cls *Breakpoint | 201 | var cls *Breakpoint | ||
| 195 | 202 | ||||
| 196 | cret := xWindowGetCurrentBreakpoint(x.GoPointer()) | 203 | cret := xWindowGetCurrentBreakpoint(x.GoPointer()) | ||
| @@ -210,6 +217,7 @@ var xWindowGetDialogs func(uintptr) uintptr | |||||
| 210 | // | 217 | // | ||
| 211 | // This can be used to keep an up-to-date view. | 218 | // This can be used to keep an up-to-date view. | ||
| 212 | func (x *Window) GetDialogs() *gio.ListModelBase { | 219 | func (x *Window) GetDialogs() *gio.ListModelBase { | ||
| 220 | + | core.LazyRegister(&xWindowGetDialogs, "ADW", "adw_window_get_dialogs", false) | |||
| 213 | var cls *gio.ListModelBase | 221 | var cls *gio.ListModelBase | ||
| 214 | 222 | ||||
| 215 | cret := xWindowGetDialogs(x.GoPointer()) | 223 | cret := xWindowGetDialogs(x.GoPointer()) | ||
| @@ -226,6 +234,7 @@ var xWindowGetVisibleDialog func(uintptr) uintptr | |||||
| 226 | 234 | ||||
| 227 | // Returns the currently visible dialog in @self, if there's one. | 235 | // Returns the currently visible dialog in @self, if there's one. | ||
| 228 | func (x *Window) GetVisibleDialog() *Dialog { | 236 | func (x *Window) GetVisibleDialog() *Dialog { | ||
| 237 | + | core.LazyRegister(&xWindowGetVisibleDialog, "ADW", "adw_window_get_visible_dialog", false) | |||
| 229 | var cls *Dialog | 238 | var cls *Dialog | ||
| 230 | 239 | ||||
| 231 | cret := xWindowGetVisibleDialog(x.GoPointer()) | 240 | cret := xWindowGetVisibleDialog(x.GoPointer()) | ||
| @@ -251,6 +260,8 @@ var xWindowSetAdaptivePreview func(uintptr, bool) | |||||
| 251 | // | 260 | // | ||
| 252 | // Most applications should not use this function. | 261 | // Most applications should not use this function. | ||
| 253 | func (x *Window) SetAdaptivePreview(AdaptivePreviewVar bool) { | 262 | func (x *Window) SetAdaptivePreview(AdaptivePreviewVar bool) { | ||
| 263 | + | core.LazyRegister(&xWindowSetAdaptivePreview, "ADW", "adw_window_set_adaptive_preview", false) | |||
| 264 | + | ||||
| 254 | xWindowSetAdaptivePreview(x.GoPointer(), AdaptivePreviewVar) | 265 | xWindowSetAdaptivePreview(x.GoPointer(), AdaptivePreviewVar) | ||
| 255 | } | 266 | } | ||
| 256 | 267 | ||||
| @@ -260,6 +271,8 @@ var xWindowSetContent func(uintptr, uintptr) | |||||
| 260 | // | 271 | // | ||
| 261 | // This method should always be used instead of [method@Gtk.Window.set_child]. | 272 | // This method should always be used instead of [method@Gtk.Window.set_child]. | ||
| 262 | func (x *Window) SetContent(ContentVar *gtk.Widget) { | 273 | func (x *Window) SetContent(ContentVar *gtk.Widget) { | ||
| 274 | + | core.LazyRegister(&xWindowSetContent, "ADW", "adw_window_set_content", false) | |||
| 275 | + | ||||
| 263 | xWindowSetContent(x.GoPointer(), ContentVar.GoPointer()) | 276 | xWindowSetContent(x.GoPointer(), ContentVar.GoPointer()) | ||
| 264 | } | 277 | } | ||
| 265 | 278 | ||||
| @@ -669,25 +682,4 @@ func (x *Window) SetFocus(FocusVar *gtk.Widget) { | |||||
| 669 | func init() { | 682 | func init() { | ||
| 670 | core.SetPackageName("ADW", "libadwaita-1") | 683 | core.SetPackageName("ADW", "libadwaita-1") | ||
| 671 | core.SetSharedLibraries("ADW", []string{"libadwaita-1.so.0", "libadwaita-1.0.dylib"}) | 684 | core.SetSharedLibraries("ADW", []string{"libadwaita-1.so.0", "libadwaita-1.0.dylib"}) | ||
| 672 | - | var libs []uintptr | |||
| 673 | - | for _, libPath := range core.GetPaths("ADW") { | |||
| 674 | - | lib, err := purego.Dlopen(libPath, purego.RTLD_NOW|purego.RTLD_GLOBAL) | |||
| 675 | - | if err != nil { | |||
| 676 | - | panic(err) | |||
| 677 | - | } | |||
| 678 | - | libs = append(libs, lib) | |||
| 679 | - | } | |||
| 680 | - | ||||
| 681 | - | core.PuregoSafeRegister(&xWindowGLibType, libs, "adw_window_get_type") | |||
| 682 | - | ||||
| 683 | - | core.PuregoSafeRegister(&xNewWindow, libs, "adw_window_new") | |||
| 684 | - | ||||
| 685 | - | core.PuregoSafeRegister(&xWindowAddBreakpoint, libs, "adw_window_add_breakpoint") | |||
| 686 | - | core.PuregoSafeRegister(&xWindowGetAdaptivePreview, libs, "adw_window_get_adaptive_preview") | |||
| 687 | - | core.PuregoSafeRegister(&xWindowGetContent, libs, "adw_window_get_content") | |||
| 688 | - | core.PuregoSafeRegister(&xWindowGetCurrentBreakpoint, libs, "adw_window_get_current_breakpoint") | |||
| 689 | - | core.PuregoSafeRegister(&xWindowGetDialogs, libs, "adw_window_get_dialogs") | |||
| 690 | - | core.PuregoSafeRegister(&xWindowGetVisibleDialog, libs, "adw_window_get_visible_dialog") | |||
| 691 | - | core.PuregoSafeRegister(&xWindowSetAdaptivePreview, libs, "adw_window_set_adaptive_preview") | |||
| 692 | - | core.PuregoSafeRegister(&xWindowSetContent, libs, "adw_window_set_content") | |||
| 693 | } | 685 | } | ||