detached 45b5ee0

Merge pull request #344 from bnema/chore/upstream-foundations

chore(deps): integrate approved upstream foundations
commit
45b5ee02d70d8fc7b30a18e2b5f30c2c77afb1f2
author
bnema · · 2026-07-14 17:16 UTC
committer
GitHub · · 2026-07-14 17:16 UTC
merge of
41933ea + a161e34 · diff against the first parent
signature
GPG UnverifiedB5690EEEBB952194 The key is unknown
921 files · +28709 -25527
M docs/first-presentation.md +5 -2
@@ -46,5 +46,8 @@ labels. Set `DUMBER_MACHINE_GPU_PROFILE` to one of `generic-gpu`,
4646 `integrated-gpu`, `discrete-gpu`, `hybrid-gpu`, `virtual-gpu`, or `unknown-gpu`;
4747 do not use a device model or other identifier. Publish only the seven reviewed
4848 JSON files to an external Gist. Raw logs and temporary XDG homes are removed and
49-must not be published. A missing or incomplete timeline, non-DMABUF backend, or
50-invalid run fails collection.
49+must not be published. `metadata.json` derives the selected
50+`github.com/bnema/purego-cef2gtk` pseudo-version and its full immutable Git
51+origin hash from Go module metadata; branch selectors or missing origin metadata
52+fail collection. A missing or incomplete timeline, non-DMABUF backend, or invalid
53+run also fails collection.
@@ -46,5 +46,8 @@ labels. Set `DUMBER_MACHINE_GPU_PROFILE` to one of `generic-gpu`,
46 `integrated-gpu`, `discrete-gpu`, `hybrid-gpu`, `virtual-gpu`, or `unknown-gpu`;46 `integrated-gpu`, `discrete-gpu`, `hybrid-gpu`, `virtual-gpu`, or `unknown-gpu`;
47 do not use a device model or other identifier. Publish only the seven reviewed47 do not use a device model or other identifier. Publish only the seven reviewed
48 JSON files to an external Gist. Raw logs and temporary XDG homes are removed and48 JSON files to an external Gist. Raw logs and temporary XDG homes are removed and
49-must not be published. A missing or incomplete timeline, non-DMABUF backend, or49+must not be published. `metadata.json` derives the selected
50-invalid run fails collection.50+`github.com/bnema/purego-cef2gtk` pseudo-version and its full immutable Git
51+origin hash from Go module metadata; branch selectors or missing origin metadata
52+fail collection. A missing or incomplete timeline, non-DMABUF backend, or invalid
53+run also fails collection.
M go.mod +5 -5
@@ -6,11 +6,11 @@ require (
66 github.com/a-h/templ v0.3.1020
77 github.com/andybalholm/brotli v1.2.2
88 github.com/bnema/purego v0.11.0-bnema.4
9- github.com/bnema/purego-cef v0.13.3
10- github.com/bnema/purego-cef2gtk v0.8.4
11- github.com/bnema/purego-pipewire v0.1.4
12- github.com/bnema/purego-sqlite v0.1.3
13- github.com/bnema/puregotk v0.7.0
9+ github.com/bnema/purego-cef v0.13.4-0.20260714140305-f0b7414af67e
10+ github.com/bnema/purego-cef2gtk v0.8.4-0.20260714160309-bbd397409ebe
11+ github.com/bnema/purego-pipewire v0.1.5-0.20260714124450-6504b9cdf02a
12+ github.com/bnema/purego-sqlite v0.1.4-0.20260714131321-3614fe683b9c
13+ github.com/bnema/puregotk v0.7.1-0.20260714170452-0b6b9b901234
1414 github.com/charmbracelet/bubbles v1.0.0
1515 github.com/charmbracelet/bubbletea v1.3.10
1616 github.com/charmbracelet/lipgloss v1.1.0
@@ -6,11 +6,11 @@ require (
6 github.com/a-h/templ v0.3.10206 github.com/a-h/templ v0.3.1020
7 github.com/andybalholm/brotli v1.2.27 github.com/andybalholm/brotli v1.2.2
8 github.com/bnema/purego v0.11.0-bnema.48 github.com/bnema/purego v0.11.0-bnema.4
9- github.com/bnema/purego-cef v0.13.39+ github.com/bnema/purego-cef v0.13.4-0.20260714140305-f0b7414af67e
10- github.com/bnema/purego-cef2gtk v0.8.410+ github.com/bnema/purego-cef2gtk v0.8.4-0.20260714160309-bbd397409ebe
11- github.com/bnema/purego-pipewire v0.1.411+ github.com/bnema/purego-pipewire v0.1.5-0.20260714124450-6504b9cdf02a
12- github.com/bnema/purego-sqlite v0.1.312+ github.com/bnema/purego-sqlite v0.1.4-0.20260714131321-3614fe683b9c
13- github.com/bnema/puregotk v0.7.013+ github.com/bnema/puregotk v0.7.1-0.20260714170452-0b6b9b901234
14 github.com/charmbracelet/bubbles v1.0.014 github.com/charmbracelet/bubbles v1.0.0
15 github.com/charmbracelet/bubbletea v1.3.1015 github.com/charmbracelet/bubbletea v1.3.10
16 github.com/charmbracelet/lipgloss v1.1.016 github.com/charmbracelet/lipgloss v1.1.0
M go.sum +12 -0 generated file: collapsed
A internal/infrastructure/persistence/sqlite/history_repo_benchmark_test.go +71 -0
@@ -0,0 +1,71 @@
1+package sqlite_test
2+
3+import (
4+ "fmt"
5+ "path/filepath"
6+ "testing"
7+
8+ "github.com/bnema/dumber/internal/domain/entity"
9+ "github.com/bnema/dumber/internal/domain/repository"
10+ "github.com/bnema/dumber/internal/infrastructure/persistence/sqlite"
11+)
12+
13+// newHistoryBenchmarkRepository creates a representative local history corpus
14+// outside the measured operation. Sidebar reads use GetRecent and omnibox
15+// history suggestions use Search.
16+func newHistoryBenchmarkRepository(b *testing.B) (repository.HistoryRepository, func()) {
17+ b.Helper()
18+
19+ ctx := historyTestCtx()
20+ db, err := sqlite.NewConnection(ctx, filepath.Join(b.TempDir(), "dumber.db"))
21+ if err != nil {
22+ b.Fatal(err)
23+ }
24+
25+ b.Cleanup(func() {
26+ if err := db.Close(); err != nil {
27+ b.Errorf("close benchmark database: %v", err)
28+ }
29+ })
30+
31+ repo := sqlite.NewHistoryRepository(db)
32+ for i := range 200 {
33+ entry := &entity.HistoryEntry{
34+ URL: fmt.Sprintf("https://example%d.test/dumber/history/%d", i%20, i),
35+ Title: fmt.Sprintf("Dumber history entry %d", i),
36+ }
37+ if err := repo.Save(ctx, entry); err != nil {
38+ b.Fatal(err)
39+ }
40+ }
41+
42+ return repo, func() {}
43+}
44+
45+func BenchmarkHistorySQLiteSidebarRecent(b *testing.B) {
46+ repo, closeDB := newHistoryBenchmarkRepository(b)
47+ defer closeDB()
48+ ctx := historyTestCtx()
49+
50+ b.ReportAllocs()
51+ b.ResetTimer()
52+ for range b.N {
53+ if _, err := repo.GetRecent(ctx, 50, 0); err != nil {
54+ b.Fatal(err)
55+ }
56+ }
57+}
58+
59+func BenchmarkHistorySQLiteOmniboxSearch(b *testing.B) {
60+ repo, closeDB := newHistoryBenchmarkRepository(b)
61+ defer closeDB()
62+ ctx := historyTestCtx()
63+
64+ b.ReportAllocs()
65+ b.ResetTimer()
66+ for range b.N {
67+ if _, err := repo.Search(ctx, "dumber history", 10); err != nil {
68+ b.Fatal(err)
69+ }
70+ }
71+}
@@ -0,0 +1,71 @@
1+package sqlite_test
2+
3+import (
4+ "fmt"
5+ "path/filepath"
6+ "testing"
7+
8+ "github.com/bnema/dumber/internal/domain/entity"
9+ "github.com/bnema/dumber/internal/domain/repository"
10+ "github.com/bnema/dumber/internal/infrastructure/persistence/sqlite"
11+)
12+
13+// newHistoryBenchmarkRepository creates a representative local history corpus
14+// outside the measured operation. Sidebar reads use GetRecent and omnibox
15+// history suggestions use Search.
16+func newHistoryBenchmarkRepository(b *testing.B) (repository.HistoryRepository, func()) {
17+ b.Helper()
18+
19+ ctx := historyTestCtx()
20+ db, err := sqlite.NewConnection(ctx, filepath.Join(b.TempDir(), "dumber.db"))
21+ if err != nil {
22+ b.Fatal(err)
23+ }
24+
25+ b.Cleanup(func() {
26+ if err := db.Close(); err != nil {
27+ b.Errorf("close benchmark database: %v", err)
28+ }
29+ })
30+
31+ repo := sqlite.NewHistoryRepository(db)
32+ for i := range 200 {
33+ entry := &entity.HistoryEntry{
34+ URL: fmt.Sprintf("https://example%d.test/dumber/history/%d", i%20, i),
35+ Title: fmt.Sprintf("Dumber history entry %d", i),
36+ }
37+ if err := repo.Save(ctx, entry); err != nil {
38+ b.Fatal(err)
39+ }
40+ }
41+
42+ return repo, func() {}
43+}
44+
45+func BenchmarkHistorySQLiteSidebarRecent(b *testing.B) {
46+ repo, closeDB := newHistoryBenchmarkRepository(b)
47+ defer closeDB()
48+ ctx := historyTestCtx()
49+
50+ b.ReportAllocs()
51+ b.ResetTimer()
52+ for range b.N {
53+ if _, err := repo.GetRecent(ctx, 50, 0); err != nil {
54+ b.Fatal(err)
55+ }
56+ }
57+}
58+
59+func BenchmarkHistorySQLiteOmniboxSearch(b *testing.B) {
60+ repo, closeDB := newHistoryBenchmarkRepository(b)
61+ defer closeDB()
62+ ctx := historyTestCtx()
63+
64+ b.ReportAllocs()
65+ b.ResetTimer()
66+ for range b.N {
67+ if _, err := repo.Search(ctx, "dumber history", 10); err != nil {
68+ b.Fatal(err)
69+ }
70+ }
71+}
M internal/logging/first_presentation_collector_test.go +132 -1
@@ -2,6 +2,7 @@ package logging
22
33 import (
44 "encoding/json"
5+ "fmt"
56 "os"
67 "os/exec"
78 "path/filepath"
@@ -143,8 +144,9 @@ func TestFirstPresentationCollectorSanitizesMachineLocalValues(t *testing.T) {
143144 }
144145 for _, required := range []string{
145146 `"measured_source_revision"`,
147+ `"version": "v0.8.4-0.20260714160309-bbd397409ebe"`,
146148 `"tag": "v0.8.4"`,
147- `"revision": "f217ece342dea3ef2a3f98671fcd16a39ad0037d"`,
149+ `"revision": "bbd397409ebed75a5979c1e4566a2ef319f6a484"`,
148150 } {
149151 require.Contains(t, artifacts.String(), required)
150152 }
@@ -166,6 +168,135 @@ func TestFirstPresentationCollectorSanitizesMachineLocalValues(t *testing.T) {
166168 require.Equal(t, "integrated-gpu", metadata.Comparison.MachineGPUProfile)
167169 }
168170
171+func TestFirstPresentationCollectorDerivesSelectedImmutableModuleProvenance(t *testing.T) {
172+ repoRoot, err := filepath.Abs(filepath.Join("..", ".."))
173+ require.NoError(t, err)
174+ temp := t.TempDir()
175+ runtime := filepath.Join(temp, "cef-147-runtime")
176+ require.NoError(t, os.Mkdir(runtime, 0o755))
177+ binary := filepath.Join(temp, "dumber")
178+ require.NoError(t, os.WriteFile(binary, collectorTestBinary(validFirstPresentationLog), 0o755))
179+
180+ // This exact pseudo-version is deliberately newer than the former v0.8.4
181+ // hardcode; the collector must report what the selected module says.
182+ const version = "v0.8.5-0.20300102030405-bbd397409ebe"
183+ const revision = "bbd397409ebed75a5979c1e4566a2ef319f6a484"
184+ goBin := collectorProvenanceGo(t, temp, version, revision, "")
185+ output := filepath.Join(temp, "artifacts")
186+ cmd := exec.Command(filepath.Join(repoRoot, "scripts", "collect_first_presentation.sh"))
187+ cmd.Dir = repoRoot
188+ cmd.Env = append(os.Environ(),
189+ "DISPLAY=:test",
190+ "DUMBER_CEF_DIR="+runtime,
191+ "DUMBER_FIRST_PRESENTATION_BIN="+binary,
192+ "DUMBER_FIRST_PRESENTATION_OUTPUT="+output,
193+ "DUMBER_FIRST_PRESENTATION_TIMEOUT_SECONDS=1",
194+ "PATH="+filepath.Dir(goBin)+":"+os.Getenv("PATH"),
195+ )
196+ result, err := cmd.CombinedOutput()
197+ require.NoErrorf(t, err, "collector failed: %s", result)
198+
199+ var metadata struct {
200+ Upstream struct {
201+ Module string `json:"module"`
202+ Version string `json:"version"`
203+ Tag string `json:"tag"`
204+ Revision string `json:"revision"`
205+ } `json:"upstream"`
206+ }
207+ contents, err := os.ReadFile(filepath.Join(output, "metadata.json"))
208+ require.NoError(t, err)
209+ require.NoError(t, json.Unmarshal(contents, &metadata))
210+ require.Equal(t, "github.com/bnema/purego-cef2gtk", metadata.Upstream.Module)
211+ require.Equal(t, version, metadata.Upstream.Version)
212+ require.Equal(t, "v0.8.5", metadata.Upstream.Tag)
213+ require.Equal(t, revision, metadata.Upstream.Revision)
214+
215+ script, err := os.ReadFile(filepath.Join(repoRoot, "scripts", "collect_first_presentation.sh"))
216+ require.NoError(t, err)
217+ require.NotContains(t, string(script), "f217ece342dea3ef2a3f98671fcd16a39ad0037d")
218+}
219+
220+func TestFirstPresentationCollectorRejectsNonImmutableModuleProvenanceWithoutLeaks(t *testing.T) {
221+ repoRoot, err := filepath.Abs(filepath.Join("..", ".."))
222+ require.NoError(t, err)
223+
224+ for _, test := range []struct {
225+ name, version, revision, ref string
226+ }{
227+ {name: "branch selector", version: "main", ref: "main"},
228+ {name: "missing origin", version: "v0.8.5-0.20300102030405-bbd397409ebe"},
229+ {name: "named origin ref", version: "v0.8.5-0.20300102030405-bbd397409ebe", revision: "bbd397409ebed75a5979c1e4566a2ef319f6a484", ref: "main"},
230+ } {
231+ t.Run(test.name, func(t *testing.T) {
232+ temp := t.TempDir()
233+ runtime := filepath.Join(temp, "cef-147-runtime")
234+ require.NoError(t, os.Mkdir(runtime, 0o755))
235+ binary := filepath.Join(temp, "dumber")
236+ require.NoError(t, os.WriteFile(binary, collectorTestBinary(validFirstPresentationLog), 0o755))
237+
238+ goBin := collectorProvenanceGo(t, temp, test.version, test.revision, test.ref)
239+ output := filepath.Join(temp, "artifacts")
240+ cmd := exec.Command(filepath.Join(repoRoot, "scripts", "collect_first_presentation.sh"))
241+ cmd.Dir = repoRoot
242+ cmd.Env = append(os.Environ(),
243+ "DISPLAY=:test",
244+ "DUMBER_CEF_DIR="+runtime,
245+ "DUMBER_FIRST_PRESENTATION_BIN="+binary,
246+ "DUMBER_FIRST_PRESENTATION_OUTPUT="+output,
247+ "PATH="+filepath.Dir(goBin)+":"+os.Getenv("PATH"),
248+ )
249+ result, runErr := cmd.CombinedOutput()
250+ require.Errorf(t, runErr, "collector accepted nonimmutable module provenance: %s", result)
251+ require.Contains(t, string(result), "immutable module provenance is unavailable")
252+ require.NotContains(t, string(result), temp)
253+ require.NoFileExists(t, filepath.Join(output, "metadata.json"))
254+ for _, name := range runArtifactNames() {
255+ require.NoFileExists(t, filepath.Join(output, name))
256+ }
257+ })
258+ }
259+}
260+
261+func collectorProvenanceGo(t *testing.T, temp, version, revision, ref string) string {
262+ t.Helper()
263+ infoPath := filepath.Join(temp, "module.info")
264+ info := map[string]any{"Version": version}
265+ if revision != "" {
266+ info["Origin"] = map[string]string{
267+ "VCS": "git", "URL": "https://github.com/bnema/purego-cef2gtk", "Hash": revision, "Ref": ref,
268+ }
269+ }
270+ infoJSON, err := json.Marshal(info)
271+ require.NoError(t, err)
272+ require.NoError(t, os.WriteFile(infoPath, infoJSON, 0o600))
273+
274+ selectedJSON, err := json.Marshal(map[string]string{
275+ "Path": "github.com/bnema/purego-cef2gtk", "Version": version,
276+ })
277+ require.NoError(t, err)
278+ downloadedJSON, err := json.Marshal(map[string]string{
279+ "Path": "github.com/bnema/purego-cef2gtk", "Version": version, "Info": infoPath,
280+ })
281+ require.NoError(t, err)
282+ binDir := filepath.Join(temp, "bin")
283+ require.NoError(t, os.Mkdir(binDir, 0o755))
284+ goBin := filepath.Join(binDir, "go")
285+ script := fmt.Sprintf(`#!/bin/sh
286+if [ "$1" = "list" ] && [ "$2" = "-m" ] && [ "$3" = "-json" ] && [ "$4" = "github.com/bnema/purego-cef2gtk" ]; then
287+ printf '%%s\n' '%s'
288+ exit 0
289+fi
290+if [ "$1" = "mod" ] && [ "$2" = "download" ] && [ "$3" = "-json" ] && [ "$4" = "github.com/bnema/purego-cef2gtk@%s" ]; then
291+ printf '%%s\n' '%s'
292+ exit 0
293+fi
294+exit 1
295+`, selectedJSON, version, downloadedJSON)
296+ require.NoError(t, os.WriteFile(goBin, []byte(script), 0o755))
297+ return goBin
298+}
299+
169300 func TestFirstPresentationCollectorDefaultsToXDGStateEvidenceDirectory(t *testing.T) {
170301 repoRoot, err := filepath.Abs(filepath.Join("..", ".."))
171302 require.NoError(t, err)
@@ -2,6 +2,7 @@ package logging
2 2
3 import (3 import (
4 "encoding/json"4 "encoding/json"
5+ "fmt"
5 "os"6 "os"
6 "os/exec"7 "os/exec"
7 "path/filepath"8 "path/filepath"
@@ -143,8 +144,9 @@ func TestFirstPresentationCollectorSanitizesMachineLocalValues(t *testing.T) {
143 }144 }
144 for _, required := range []string{145 for _, required := range []string{
145 `"measured_source_revision"`,146 `"measured_source_revision"`,
147+ `"version": "v0.8.4-0.20260714160309-bbd397409ebe"`,
146 `"tag": "v0.8.4"`,148 `"tag": "v0.8.4"`,
147- `"revision": "f217ece342dea3ef2a3f98671fcd16a39ad0037d"`,149+ `"revision": "bbd397409ebed75a5979c1e4566a2ef319f6a484"`,
148 } {150 } {
149 require.Contains(t, artifacts.String(), required)151 require.Contains(t, artifacts.String(), required)
150 }152 }
@@ -166,6 +168,135 @@ func TestFirstPresentationCollectorSanitizesMachineLocalValues(t *testing.T) {
166 require.Equal(t, "integrated-gpu", metadata.Comparison.MachineGPUProfile)168 require.Equal(t, "integrated-gpu", metadata.Comparison.MachineGPUProfile)
167 }169 }
168 170
171+func TestFirstPresentationCollectorDerivesSelectedImmutableModuleProvenance(t *testing.T) {
172+ repoRoot, err := filepath.Abs(filepath.Join("..", ".."))
173+ require.NoError(t, err)
174+ temp := t.TempDir()
175+ runtime := filepath.Join(temp, "cef-147-runtime")
176+ require.NoError(t, os.Mkdir(runtime, 0o755))
177+ binary := filepath.Join(temp, "dumber")
178+ require.NoError(t, os.WriteFile(binary, collectorTestBinary(validFirstPresentationLog), 0o755))
179+
180+ // This exact pseudo-version is deliberately newer than the former v0.8.4
181+ // hardcode; the collector must report what the selected module says.
182+ const version = "v0.8.5-0.20300102030405-bbd397409ebe"
183+ const revision = "bbd397409ebed75a5979c1e4566a2ef319f6a484"
184+ goBin := collectorProvenanceGo(t, temp, version, revision, "")
185+ output := filepath.Join(temp, "artifacts")
186+ cmd := exec.Command(filepath.Join(repoRoot, "scripts", "collect_first_presentation.sh"))
187+ cmd.Dir = repoRoot
188+ cmd.Env = append(os.Environ(),
189+ "DISPLAY=:test",
190+ "DUMBER_CEF_DIR="+runtime,
191+ "DUMBER_FIRST_PRESENTATION_BIN="+binary,
192+ "DUMBER_FIRST_PRESENTATION_OUTPUT="+output,
193+ "DUMBER_FIRST_PRESENTATION_TIMEOUT_SECONDS=1",
194+ "PATH="+filepath.Dir(goBin)+":"+os.Getenv("PATH"),
195+ )
196+ result, err := cmd.CombinedOutput()
197+ require.NoErrorf(t, err, "collector failed: %s", result)
198+
199+ var metadata struct {
200+ Upstream struct {
201+ Module string `json:"module"`
202+ Version string `json:"version"`
203+ Tag string `json:"tag"`
204+ Revision string `json:"revision"`
205+ } `json:"upstream"`
206+ }
207+ contents, err := os.ReadFile(filepath.Join(output, "metadata.json"))
208+ require.NoError(t, err)
209+ require.NoError(t, json.Unmarshal(contents, &metadata))
210+ require.Equal(t, "github.com/bnema/purego-cef2gtk", metadata.Upstream.Module)
211+ require.Equal(t, version, metadata.Upstream.Version)
212+ require.Equal(t, "v0.8.5", metadata.Upstream.Tag)
213+ require.Equal(t, revision, metadata.Upstream.Revision)
214+
215+ script, err := os.ReadFile(filepath.Join(repoRoot, "scripts", "collect_first_presentation.sh"))
216+ require.NoError(t, err)
217+ require.NotContains(t, string(script), "f217ece342dea3ef2a3f98671fcd16a39ad0037d")
218+}
219+
220+func TestFirstPresentationCollectorRejectsNonImmutableModuleProvenanceWithoutLeaks(t *testing.T) {
221+ repoRoot, err := filepath.Abs(filepath.Join("..", ".."))
222+ require.NoError(t, err)
223+
224+ for _, test := range []struct {
225+ name, version, revision, ref string
226+ }{
227+ {name: "branch selector", version: "main", ref: "main"},
228+ {name: "missing origin", version: "v0.8.5-0.20300102030405-bbd397409ebe"},
229+ {name: "named origin ref", version: "v0.8.5-0.20300102030405-bbd397409ebe", revision: "bbd397409ebed75a5979c1e4566a2ef319f6a484", ref: "main"},
230+ } {
231+ t.Run(test.name, func(t *testing.T) {
232+ temp := t.TempDir()
233+ runtime := filepath.Join(temp, "cef-147-runtime")
234+ require.NoError(t, os.Mkdir(runtime, 0o755))
235+ binary := filepath.Join(temp, "dumber")
236+ require.NoError(t, os.WriteFile(binary, collectorTestBinary(validFirstPresentationLog), 0o755))
237+
238+ goBin := collectorProvenanceGo(t, temp, test.version, test.revision, test.ref)
239+ output := filepath.Join(temp, "artifacts")
240+ cmd := exec.Command(filepath.Join(repoRoot, "scripts", "collect_first_presentation.sh"))
241+ cmd.Dir = repoRoot
242+ cmd.Env = append(os.Environ(),
243+ "DISPLAY=:test",
244+ "DUMBER_CEF_DIR="+runtime,
245+ "DUMBER_FIRST_PRESENTATION_BIN="+binary,
246+ "DUMBER_FIRST_PRESENTATION_OUTPUT="+output,
247+ "PATH="+filepath.Dir(goBin)+":"+os.Getenv("PATH"),
248+ )
249+ result, runErr := cmd.CombinedOutput()
250+ require.Errorf(t, runErr, "collector accepted nonimmutable module provenance: %s", result)
251+ require.Contains(t, string(result), "immutable module provenance is unavailable")
252+ require.NotContains(t, string(result), temp)
253+ require.NoFileExists(t, filepath.Join(output, "metadata.json"))
254+ for _, name := range runArtifactNames() {
255+ require.NoFileExists(t, filepath.Join(output, name))
256+ }
257+ })
258+ }
259+}
260+
261+func collectorProvenanceGo(t *testing.T, temp, version, revision, ref string) string {
262+ t.Helper()
263+ infoPath := filepath.Join(temp, "module.info")
264+ info := map[string]any{"Version": version}
265+ if revision != "" {
266+ info["Origin"] = map[string]string{
267+ "VCS": "git", "URL": "https://github.com/bnema/purego-cef2gtk", "Hash": revision, "Ref": ref,
268+ }
269+ }
270+ infoJSON, err := json.Marshal(info)
271+ require.NoError(t, err)
272+ require.NoError(t, os.WriteFile(infoPath, infoJSON, 0o600))
273+
274+ selectedJSON, err := json.Marshal(map[string]string{
275+ "Path": "github.com/bnema/purego-cef2gtk", "Version": version,
276+ })
277+ require.NoError(t, err)
278+ downloadedJSON, err := json.Marshal(map[string]string{
279+ "Path": "github.com/bnema/purego-cef2gtk", "Version": version, "Info": infoPath,
280+ })
281+ require.NoError(t, err)
282+ binDir := filepath.Join(temp, "bin")
283+ require.NoError(t, os.Mkdir(binDir, 0o755))
284+ goBin := filepath.Join(binDir, "go")
285+ script := fmt.Sprintf(`#!/bin/sh
286+if [ "$1" = "list" ] && [ "$2" = "-m" ] && [ "$3" = "-json" ] && [ "$4" = "github.com/bnema/purego-cef2gtk" ]; then
287+ printf '%%s\n' '%s'
288+ exit 0
289+fi
290+if [ "$1" = "mod" ] && [ "$2" = "download" ] && [ "$3" = "-json" ] && [ "$4" = "github.com/bnema/purego-cef2gtk@%s" ]; then
291+ printf '%%s\n' '%s'
292+ exit 0
293+fi
294+exit 1
295+`, selectedJSON, version, downloadedJSON)
296+ require.NoError(t, os.WriteFile(goBin, []byte(script), 0o755))
297+ return goBin
298+}
299+
169 func TestFirstPresentationCollectorDefaultsToXDGStateEvidenceDirectory(t *testing.T) {300 func TestFirstPresentationCollectorDefaultsToXDGStateEvidenceDirectory(t *testing.T) {
170 repoRoot, err := filepath.Abs(filepath.Join("..", ".."))301 repoRoot, err := filepath.Abs(filepath.Join("..", ".."))
171 require.NoError(t, err)302 require.NoError(t, err)
M scripts/collect_first_presentation.sh +78 -9
@@ -31,8 +31,78 @@ else
3131 fi
3232 readonly output
3333 readonly upstream_module="github.com/bnema/purego-cef2gtk"
34-readonly upstream_tag="v0.8.4"
35-readonly upstream_revision="f217ece342dea3ef2a3f98671fcd16a39ad0037d"
34+
35+# Resolve the version selected by this checkout, then obtain its immutable VCS
36+# origin from Go's cached module metadata. Do not infer a revision from a tag,
37+# a branch, or a truncated pseudo-version suffix.
38+resolve_upstream_provenance() {
39+ local selected_metadata selected_version downloaded_metadata
40+
41+ selected_metadata="$(go list -m -json "$upstream_module" 2>/dev/null)" || {
42+ echo "first-presentation: immutable module provenance is unavailable" >&2
43+ exit 2
44+ }
45+ selected_version="$(python3 - "$upstream_module" "$selected_metadata" <<'PY'
46+import json, sys
47+try:
48+ metadata = json.loads(sys.argv[2])
49+ if metadata.get("Path") != sys.argv[1] or not isinstance(metadata.get("Version"), str):
50+ raise ValueError
51+ print(metadata["Version"])
52+except (AttributeError, TypeError, ValueError, json.JSONDecodeError):
53+ raise SystemExit("first-presentation: immutable module provenance is unavailable")
54+PY
55+)" || exit $?
56+ downloaded_metadata="$(go mod download -json "$upstream_module@$selected_version" 2>/dev/null)" || {
57+ echo "first-presentation: immutable module provenance is unavailable" >&2
58+ exit 2
59+ }
60+
61+ python3 - "$upstream_module" "$selected_metadata" "$downloaded_metadata" <<'PY'
62+import json, re, sys
63+
64+module, selected_raw, downloaded_raw = sys.argv[1:]
65+
66+def fail():
67+ # Do not expose Go cache locations or other machine-local values.
68+ raise SystemExit("first-presentation: immutable module provenance is unavailable")
69+
70+try:
71+ selected = json.loads(selected_raw)
72+ downloaded = json.loads(downloaded_raw)
73+ version = selected["Version"]
74+ if selected.get("Path") != module or downloaded.get("Path") != module:
75+ fail()
76+ if downloaded.get("Version") != version:
77+ fail()
78+ # A selected pseudo-version is an exact immutable selector, never a branch.
79+ match = re.fullmatch(r"(v\d+\.\d+\.\d+)-0\.\d{14}-([0-9a-f]{12})", version)
80+ if not match:
81+ fail()
82+ info_path = downloaded.get("Info")
83+ if not isinstance(info_path, str) or not info_path:
84+ fail()
85+ with open(info_path, encoding="utf-8") as info_file:
86+ info = json.load(info_file)
87+ origin = info.get("Origin") or downloaded.get("Origin")
88+ if info.get("Version") != version or not isinstance(origin, dict):
89+ fail()
90+ revision = origin.get("Hash")
91+ if origin.get("VCS") != "git" or origin.get("URL") != "https://github.com/bnema/purego-cef2gtk":
92+ fail()
93+ if not isinstance(revision, str) or not re.fullmatch(r"[0-9a-f]{40}", revision):
94+ fail()
95+ if not revision.startswith(match.group(2)):
96+ fail()
97+ # A named ref can move. Only the immutable hash itself is acceptable.
98+ if origin.get("Ref") not in (None, "", revision):
99+ fail()
100+except (AttributeError, KeyError, OSError, TypeError, ValueError, json.JSONDecodeError):
101+ fail()
102+
103+print("\t".join((version, match.group(1), revision)))
104+PY
105+}
36106
37107 # The artifact destination is caller-controlled. Never empty or recursively
38108 # clear it: collection only writes to a newly-created directory whose parent is
@@ -66,10 +136,9 @@ prepare_output
66136 [[ -x "$binary" ]] || { echo "first-presentation: executable not found: $binary" >&2; exit 2; }
67137 [[ -d "$runtime" ]] || { echo "first-presentation: CEF runtime not found: $runtime" >&2; exit 2; }
68138 [[ -n "${WAYLAND_DISPLAY:-}${DISPLAY:-}" ]] || { echo "first-presentation: a current Wayland/X11 display is required" >&2; exit 2; }
69-[[ "$(go list -m -f '{{.Version}}' "$upstream_module")" == "$upstream_tag" ]] || {
70- echo "first-presentation: expected $upstream_module@$upstream_tag" >&2
71- exit 2
72-}
139+upstream_provenance="$(resolve_upstream_provenance)" || exit $?
140+IFS=$'\t' read -r upstream_version upstream_tag upstream_revision <<<"$upstream_provenance"
141+readonly upstream_version upstream_tag upstream_revision
73142
74143 # Raw logs and temporary XDG homes may contain machine-local paths. Keep them
75144 # outside the committed artifact directory and always remove them.
@@ -80,9 +149,9 @@ cleanup_work_root() {
80149 rm -rf -- "$work_root"
81150 }
82151 trap cleanup_work_root EXIT
83-python3 - "$output/metadata.json" "$binary" "$timeout_seconds" "$upstream_module" "$upstream_tag" "$upstream_revision" <<'PY'
152+python3 - "$output/metadata.json" "$binary" "$timeout_seconds" "$upstream_module" "$upstream_version" "$upstream_tag" "$upstream_revision" <<'PY'
84153 import hashlib, json, os, platform, subprocess, sys
85-path, binary, timeout, upstream_module, upstream_tag, upstream_revision = sys.argv[1:]
154+path, binary, timeout, upstream_module, upstream_version, upstream_tag, upstream_revision = sys.argv[1:]
86155 with open(binary, "rb") as candidate:
87156 binary_sha256 = hashlib.file_digest(candidate, "sha256").hexdigest()
88157
@@ -102,7 +171,7 @@ json.dump({
102171 "binary": {"label": "dumber", "sha256": binary_sha256},
103172 "timeout_seconds": int(timeout),
104173 "measured_source_revision": subprocess.check_output(["git", "-c", f"safe.directory={os.getcwd()}", "rev-parse", "HEAD"], text=True).strip(),
105- "upstream": {"module": upstream_module, "tag": upstream_tag, "revision": upstream_revision},
174+ "upstream": {"module": upstream_module, "version": upstream_version, "tag": upstream_tag, "revision": upstream_revision},
106175 "comparison": {"os": os_label, "architecture": architecture, "display_protocol": display_protocol, "machine_gpu_profile": gpu_profile},
107176 "render_configuration": {"backend": "gdk-dmabuf", "buffer_sharing": "dmabuf", "renderer": "vulkan"}
108177 }, open(path, "w"), indent=2, sort_keys=True)
@@ -31,8 +31,78 @@ else
31 fi31 fi
32 readonly output32 readonly output
33 readonly upstream_module="github.com/bnema/purego-cef2gtk"33 readonly upstream_module="github.com/bnema/purego-cef2gtk"
34-readonly upstream_tag="v0.8.4"34+
35-readonly upstream_revision="f217ece342dea3ef2a3f98671fcd16a39ad0037d"35+# Resolve the version selected by this checkout, then obtain its immutable VCS
36+# origin from Go's cached module metadata. Do not infer a revision from a tag,
37+# a branch, or a truncated pseudo-version suffix.
38+resolve_upstream_provenance() {
39+ local selected_metadata selected_version downloaded_metadata
40+
41+ selected_metadata="$(go list -m -json "$upstream_module" 2>/dev/null)" || {
42+ echo "first-presentation: immutable module provenance is unavailable" >&2
43+ exit 2
44+ }
45+ selected_version="$(python3 - "$upstream_module" "$selected_metadata" <<'PY'
46+import json, sys
47+try:
48+ metadata = json.loads(sys.argv[2])
49+ if metadata.get("Path") != sys.argv[1] or not isinstance(metadata.get("Version"), str):
50+ raise ValueError
51+ print(metadata["Version"])
52+except (AttributeError, TypeError, ValueError, json.JSONDecodeError):
53+ raise SystemExit("first-presentation: immutable module provenance is unavailable")
54+PY
55+)" || exit $?
56+ downloaded_metadata="$(go mod download -json "$upstream_module@$selected_version" 2>/dev/null)" || {
57+ echo "first-presentation: immutable module provenance is unavailable" >&2
58+ exit 2
59+ }
60+
61+ python3 - "$upstream_module" "$selected_metadata" "$downloaded_metadata" <<'PY'
62+import json, re, sys
63+
64+module, selected_raw, downloaded_raw = sys.argv[1:]
65+
66+def fail():
67+ # Do not expose Go cache locations or other machine-local values.
68+ raise SystemExit("first-presentation: immutable module provenance is unavailable")
69+
70+try:
71+ selected = json.loads(selected_raw)
72+ downloaded = json.loads(downloaded_raw)
73+ version = selected["Version"]
74+ if selected.get("Path") != module or downloaded.get("Path") != module:
75+ fail()
76+ if downloaded.get("Version") != version:
77+ fail()
78+ # A selected pseudo-version is an exact immutable selector, never a branch.
79+ match = re.fullmatch(r"(v\d+\.\d+\.\d+)-0\.\d{14}-([0-9a-f]{12})", version)
80+ if not match:
81+ fail()
82+ info_path = downloaded.get("Info")
83+ if not isinstance(info_path, str) or not info_path:
84+ fail()
85+ with open(info_path, encoding="utf-8") as info_file:
86+ info = json.load(info_file)
87+ origin = info.get("Origin") or downloaded.get("Origin")
88+ if info.get("Version") != version or not isinstance(origin, dict):
89+ fail()
90+ revision = origin.get("Hash")
91+ if origin.get("VCS") != "git" or origin.get("URL") != "https://github.com/bnema/purego-cef2gtk":
92+ fail()
93+ if not isinstance(revision, str) or not re.fullmatch(r"[0-9a-f]{40}", revision):
94+ fail()
95+ if not revision.startswith(match.group(2)):
96+ fail()
97+ # A named ref can move. Only the immutable hash itself is acceptable.
98+ if origin.get("Ref") not in (None, "", revision):
99+ fail()
100+except (AttributeError, KeyError, OSError, TypeError, ValueError, json.JSONDecodeError):
101+ fail()
102+
103+print("\t".join((version, match.group(1), revision)))
104+PY
105+}
36 106
37 # The artifact destination is caller-controlled. Never empty or recursively107 # The artifact destination is caller-controlled. Never empty or recursively
38 # clear it: collection only writes to a newly-created directory whose parent is108 # clear it: collection only writes to a newly-created directory whose parent is
@@ -66,10 +136,9 @@ prepare_output
66 [[ -x "$binary" ]] || { echo "first-presentation: executable not found: $binary" >&2; exit 2; }136 [[ -x "$binary" ]] || { echo "first-presentation: executable not found: $binary" >&2; exit 2; }
67 [[ -d "$runtime" ]] || { echo "first-presentation: CEF runtime not found: $runtime" >&2; exit 2; }137 [[ -d "$runtime" ]] || { echo "first-presentation: CEF runtime not found: $runtime" >&2; exit 2; }
68 [[ -n "${WAYLAND_DISPLAY:-}${DISPLAY:-}" ]] || { echo "first-presentation: a current Wayland/X11 display is required" >&2; exit 2; }138 [[ -n "${WAYLAND_DISPLAY:-}${DISPLAY:-}" ]] || { echo "first-presentation: a current Wayland/X11 display is required" >&2; exit 2; }
69-[[ "$(go list -m -f '{{.Version}}' "$upstream_module")" == "$upstream_tag" ]] || {139+upstream_provenance="$(resolve_upstream_provenance)" || exit $?
70- echo "first-presentation: expected $upstream_module@$upstream_tag" >&2140+IFS=$'\t' read -r upstream_version upstream_tag upstream_revision <<<"$upstream_provenance"
71- exit 2141+readonly upstream_version upstream_tag upstream_revision
72-}
73 142
74 # Raw logs and temporary XDG homes may contain machine-local paths. Keep them143 # Raw logs and temporary XDG homes may contain machine-local paths. Keep them
75 # outside the committed artifact directory and always remove them.144 # outside the committed artifact directory and always remove them.
@@ -80,9 +149,9 @@ cleanup_work_root() {
80 rm -rf -- "$work_root"149 rm -rf -- "$work_root"
81 }150 }
82 trap cleanup_work_root EXIT151 trap cleanup_work_root EXIT
83-python3 - "$output/metadata.json" "$binary" "$timeout_seconds" "$upstream_module" "$upstream_tag" "$upstream_revision" <<'PY'152+python3 - "$output/metadata.json" "$binary" "$timeout_seconds" "$upstream_module" "$upstream_version" "$upstream_tag" "$upstream_revision" <<'PY'
84 import hashlib, json, os, platform, subprocess, sys153 import hashlib, json, os, platform, subprocess, sys
85-path, binary, timeout, upstream_module, upstream_tag, upstream_revision = sys.argv[1:]154+path, binary, timeout, upstream_module, upstream_version, upstream_tag, upstream_revision = sys.argv[1:]
86 with open(binary, "rb") as candidate:155 with open(binary, "rb") as candidate:
87 binary_sha256 = hashlib.file_digest(candidate, "sha256").hexdigest()156 binary_sha256 = hashlib.file_digest(candidate, "sha256").hexdigest()
88 157
@@ -102,7 +171,7 @@ json.dump({
102 "binary": {"label": "dumber", "sha256": binary_sha256},171 "binary": {"label": "dumber", "sha256": binary_sha256},
103 "timeout_seconds": int(timeout),172 "timeout_seconds": int(timeout),
104 "measured_source_revision": subprocess.check_output(["git", "-c", f"safe.directory={os.getcwd()}", "rev-parse", "HEAD"], text=True).strip(),173 "measured_source_revision": subprocess.check_output(["git", "-c", f"safe.directory={os.getcwd()}", "rev-parse", "HEAD"], text=True).strip(),
105- "upstream": {"module": upstream_module, "tag": upstream_tag, "revision": upstream_revision},174+ "upstream": {"module": upstream_module, "version": upstream_version, "tag": upstream_tag, "revision": upstream_revision},
106 "comparison": {"os": os_label, "architecture": architecture, "display_protocol": display_protocol, "machine_gpu_profile": gpu_profile},175 "comparison": {"os": os_label, "architecture": architecture, "display_protocol": display_protocol, "machine_gpu_profile": gpu_profile},
107 "render_configuration": {"backend": "gdk-dmabuf", "buffer_sharing": "dmabuf", "renderer": "vulkan"}176 "render_configuration": {"backend": "gdk-dmabuf", "buffer_sharing": "dmabuf", "renderer": "vulkan"}
108 }, open(path, "w"), indent=2, sort_keys=True)177 }, open(path, "w"), indent=2, sort_keys=True)
M vendor/github.com/bnema/purego-cef/cef/bridge.go +8 -13 generated file: collapsed
M vendor/github.com/bnema/purego-cef2gtk/internal/cefadapter/accelerated_paint.go +34 -37 generated file: collapsed
M vendor/github.com/bnema/purego-cef2gtk/internal/dmabuf/frame.go +38 -19 generated file: collapsed
M vendor/github.com/bnema/purego-cef2gtk/internal/gtkgdk/renderer.go +89 -69 generated file: collapsed
M vendor/github.com/bnema/purego-pipewire/internal/core/player.go +5 -0 generated file: collapsed
M vendor/github.com/bnema/purego-pipewire/internal/core/player_rt.go +10 -6 generated file: collapsed
M vendor/github.com/bnema/purego-pipewire/internal/core/pwbuffer.go +66 -32 generated file: collapsed
M vendor/github.com/bnema/purego-sqlite/driver/driver.go +268 -63 generated file: collapsed
M vendor/github.com/bnema/purego-sqlite/internal/core/db.go +8 -0 generated file: collapsed
M vendor/github.com/bnema/purego-sqlite/internal/core/rows.go +13 -0 generated file: collapsed
M vendor/github.com/bnema/purego-sqlite/internal/loader/loader.go +23 -5 generated file: collapsed
M vendor/github.com/bnema/purego-sqlite/internal/ports/in/ports_gen.go +3 -0 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 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-wrap-box.go +66 -46 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/adw/adw-wrap-layout.go +57 -46 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/cairo/main.go +36 -79 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkapplaunchcontext.go +10 -17 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkcairo.go +12 -16 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkcairocontext.go +3 -13 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkcicpparams.go +20 -25 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkclipboard.go +34 -32 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkcolorstate.go +12 -16 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkcontentdeserializer.go +26 -27 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkcontentformats.go +28 -31 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkcontentprovider.go +23 -28 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkcontentserializer.go +26 -27 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkcursor.go +12 -21 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkdevice.go +36 -33 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkdevicepad.go +27 -22 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkdevicetool.go +10 -18 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkdisplay.go +51 -43 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkdisplaymanager.go +10 -20 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkdmabuftexture.go +3 -13 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkdmabuftexturebuilder.go +53 -41 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkdrag.go +20 -28 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkdragsurface.go +6 -14 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkdragsurfacesize.go +3 -13 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkdrawcontext.go +11 -18 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkdrop.go +19 -24 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkenums.go +21 -1 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkevents.go +120 -118 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkframeclock.go +22 -24 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkframetimings.go +17 -20 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkglcontext.go +40 -36 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkgltexture.go +4 -15 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkgltexturebuilder.go +41 -35 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkkeys.go +19 -22 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkmemorytexture.go +2 -13 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkmemorytexturebuilder.go +42 -35 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkmonitor.go +27 -27 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkpaintable.go +63 -33 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkpango.go +4 -12 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkpixbuf.go +2 -12 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkpopup.go +47 -26 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkpopuplayout.go +36 -32 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkrgba.go +19 -21 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkseat.go +11 -20 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdksnapshot.go +7 -0 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdksurface.go +46 -40 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdktexture.go +27 -31 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdktoplevel.go +157 -66 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdktoplevellayout.go +24 -25 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdktoplevelsize.go +9 -16 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdktypes.go +95 -72 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdk/gdkvulkancontext.go +3 -13 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdkpixbuf/gdk-pixbuf-animation.go +26 -32 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdkpixbuf/gdk-pixbuf-core.go +9 -0 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdkpixbuf/gdk-pixbuf-io.go +25 -23 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdkpixbuf/gdk-pixbuf-loader.go +13 -22 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdkpixbuf/gdk-pixbuf-simple-anim.go +8 -17 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdkpixbuf/gdk-pixbuf-transform.go +11 -1 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdkpixbuf/gdk-pixbuf.go +102 -79 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gdkpixbuf/main.go +5 -17 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gaction.go +59 -31 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gactiongroup.go +96 -39 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gactionmap.go +33 -21 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gappinfo.go +244 -116 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gapplication.go +79 -55 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gapplicationcommandline.go +31 -27 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gasyncinitable.go +25 -22 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gasyncresult.go +26 -19 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gbufferedinputstream.go +26 -29 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gbufferedoutputstream.go +11 -18 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gbytesicon.go +4 -15 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gcancellable.go +26 -27 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gcharsetconverter.go +8 -17 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gcontenttype.go +30 -26 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gconverter.go +23 -20 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gconverterinputstream.go +3 -14 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gconverteroutputstream.go +3 -14 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gcredentials.go +12 -21 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdatagrambased.go +45 -30 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdatainputstream.go +31 -35 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdataoutputstream.go +14 -23 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdbusactiongroup.go +2 -13 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdbusaddress.go +10 -17 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdbusauthobserver.go +6 -16 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdbusconnection.go +77 -66 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdbuserror.go +16 -18 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdbusinterface.go +26 -19 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdbusinterfaceskeleton.go +25 -24 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdbusintrospection.go +54 -56 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdbusmenumodel.go +2 -13 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdbusmessage.go +88 -64 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdbusmethodinvocation.go +35 -30 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdbusnameowning.go +10 -15 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdbusnamewatching.go +10 -15 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdbusobject.go +19 -17 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdbusobjectmanager.go +26 -19 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdbusobjectmanagerclient.go +16 -23 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdbusobjectmanagerserver.go +13 -20 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdbusobjectproxy.go +3 -15 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdbusobjectskeleton.go +12 -18 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdbusproxy.go +42 -38 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdbusserver.go +14 -20 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdbusutils.go +24 -22 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdebugcontroller.go +12 -16 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdebugcontrollerdbus.go +4 -14 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdrive.go +214 -82 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdtlsclientconnection.go +34 -24 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdtlsconnection.go +207 -80 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gdtlsserverconnection.go +2 -13 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gemblem.go +6 -17 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gemblemedicon.go +9 -18 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gfile.go +1148 -450 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gfileattribute.go +13 -19 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gfileenumerator.go +34 -35 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gfileicon.go +3 -15 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gfileinfo.go +138 -84 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gfileinputstream.go +17 -23 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gfileiostream.go +23 -27 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gfilemonitor.go +9 -15 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gfilenamecompleter.go +8 -16 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gfileoutputstream.go +23 -27 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gfilterinputstream.go +6 -14 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gfilteroutputstream.go +6 -14 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gicon.go +32 -25 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/ginetaddress.go +40 -34 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/ginetaddressmask.go +14 -21 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/ginetsocketaddress.go +10 -19 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/ginitable.go +11 -18 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/ginputstream.go +52 -48 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gioenums.go +90 -1 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gioerror.go +6 -13 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/giomodule.go +26 -29 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gioscheduler.go +4 -12 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/giostream.go +25 -29 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/giotypes.go +70 -60 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/giptosmessage.go +6 -16 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gipv6tclassmessage.go +6 -16 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/glistmodel.go +33 -21 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gliststore.go +22 -24 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gloadableicon.go +27 -23 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gmemoryinputstream.go +8 -17 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gmemorymonitor.go +2 -12 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gmemoryoutputstream.go +13 -19 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gmenu.go +62 -50 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gmenumodel.go +31 -33 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gmount.go +215 -86 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gmountoperation.go +40 -32 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gnativesocketaddress.go +2 -13 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gnativevolumemonitor.go +7 -0 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gnetworkaddress.go +11 -21 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gnetworking.go +3 -14 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gnetworkmonitor.go +49 -31 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gnetworkservice.go +12 -19 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gnotification.go +26 -26 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/goutputstream.go +86 -72 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gpermission.go +33 -33 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gpollableinputstream.go +30 -22 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gpollableoutputstream.go +41 -27 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gpollableutils.go +7 -15 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gpowerprofilemonitor.go +7 -16 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gpropertyaction.go +2 -13 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gproxy.go +35 -27 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gproxyaddress.go +16 -21 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gproxyaddressenumerator.go +7 -0 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gproxyresolver.go +35 -27 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gremoteactiongroup.go +12 -15 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gresolver.go +75 -67 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gresource.go +19 -23 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gseekable.go +41 -27 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gsettings.go +99 -67 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gsettingsbackend.go +19 -24 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gsettingsschema.go +48 -43 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gsimpleaction.go +9 -18 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gsimpleactiongroup.go +9 -18 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gsimpleasyncresult.go +46 -40 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gsimpleiostream.go +2 -13 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gsimplepermission.go +2 -13 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gsimpleproxyresolver.go +8 -16 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gsocket.go +87 -72 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gsocketaddress.go +11 -19 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gsocketaddressenumerator.go +13 -20 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gsocketclient.go +54 -44 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gsocketconnectable.go +19 -17 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gsocketconnection.go +14 -21 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gsocketcontrolmessage.go +10 -17 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gsocketlistener.go +18 -25 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gsocketservice.go +8 -16 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gsrvtarget.go +2 -11 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gsubprocess.go +40 -39 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gsubprocesslauncher.go +34 -31 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gtask.go +70 -52 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gtcpconnection.go +5 -14 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gtcpwrapperconnection.go +3 -15 generated file: collapsed
M vendor/github.com/bnema/puregotk/v4/gio/gtestdbus.go +16 -22 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gio/gthemedicon.go +10 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gio/gthreadedresolver.go +7 -0 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gio/gthreadedsocketservice.go +2 -12 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gio/gtlsbackend.go +69 -33 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gio/gtlscertificate.go +25 -29 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gio/gtlsclientconnection.go +55 -29 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gio/gtlsconnection.go +56 -46 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gio/gtlsdatabase.go +51 -48 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gio/gtlsfiledatabase.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gio/gtlsinteraction.go +27 -31 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gio/gtlspassword.go +20 -22 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gio/gtlsserverconnection.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gio/gunixconnection.go +11 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gio/gunixcredentialsmessage.go +6 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gio/gunixfdlist.go +11 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gio/gunixsocketaddress.go +14 -22 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gio/gvfs.go +18 -24 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gio/gvolume.go +143 -58 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gio/gvolumemonitor.go +11 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gio/gzlibcompressor.go +9 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gio/gzlibdecompressor.go +3 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gio/main.go +2 -11 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gallocator.go +32 -28 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/garray.go +82 -59
@@ -5,7 +5,6 @@ import (
55 "structs"
66 "unsafe"
77
8- "github.com/bnema/purego"
98 "github.com/bnema/puregotk/pkg/core"
109 "github.com/bnema/puregotk/v4/gobject/types"
1110 )
@@ -22,6 +21,7 @@ type Array struct {
2221 var xArrayGLibType func() types.GType
2322
2423 func ArrayGLibType() types.GType {
24+ core.LazyRegister(&xArrayGLibType, "GLIB", "g_array_get_type", false)
2525 return xArrayGLibType()
2626 }
2727
@@ -49,6 +49,7 @@ type ByteArray struct {
4949 var xByteArrayGLibType func() types.GType
5050
5151 func ByteArrayGLibType() types.GType {
52+ core.LazyRegister(&xByteArrayGLibType, "GLIB", "g_byte_array_get_type", false)
5253 return xByteArrayGLibType()
5354 }
5455
@@ -98,6 +99,7 @@ type Bytes struct {
9899 var xBytesGLibType func() types.GType
99100
100101 func BytesGLibType() types.GType {
102+ core.LazyRegister(&xBytesGLibType, "GLIB", "g_bytes_get_type", false)
101103 return xBytesGLibType()
102104 }
103105
@@ -123,6 +125,8 @@ var xNewBytes func([]byte, uint) uintptr
123125 // copying the data within the resulting bytes structure if sufficiently small
124126 // (since GLib 2.84).
125127 func NewBytes(DataVar []byte, SizeVar uint) *Bytes {
128+ core.LazyRegister(&xNewBytes, "GLIB", "g_bytes_new", false)
129+
126130 cret := xNewBytes(DataVar, SizeVar)
127131 if cret == 0 {
128132 return nil
@@ -145,6 +149,8 @@ var xNewBytesFromBytes func(*Bytes, uint, uint) uintptr
145149 // the same `GBytes` instead of @bytes. This allows consumers to simplify the
146150 // usage of `GBytes` when asynchronously writing to streams.
147151 func NewBytesFromBytes(BytesVar *Bytes, OffsetVar uint, LengthVar uint) *Bytes {
152+ core.LazyRegister(&xNewBytesFromBytes, "GLIB", "g_bytes_new_from_bytes", false)
153+
148154 cret := xNewBytesFromBytes(BytesVar, OffsetVar, LengthVar)
149155 if cret == 0 {
150156 return nil
@@ -159,6 +165,8 @@ var xNewBytesStatic func([]byte, uint) uintptr
159165 // @data must be static (ie: never modified or freed). It may be `NULL` if @size
160166 // is 0.
161167 func NewBytesStatic(DataVar []byte, SizeVar uint) *Bytes {
168+ core.LazyRegister(&xNewBytesStatic, "GLIB", "g_bytes_new_static", false)
169+
162170 cret := xNewBytesStatic(DataVar, SizeVar)
163171 if cret == 0 {
164172 return nil
@@ -179,6 +187,8 @@ var xNewBytesTake func(uintptr, uint) uintptr
179187 //
180188 // @data may be `NULL` if @size is 0.
181189 func NewBytesTake(DataVar uintptr, SizeVar uint) *Bytes {
190+ core.LazyRegister(&xNewBytesTake, "GLIB", "g_bytes_new_take", false)
191+
182192 cret := xNewBytesTake(DataVar, SizeVar)
183193 if cret == 0 {
184194 return nil
@@ -198,6 +208,8 @@ var xNewBytesWithFreeFunc func([]byte, uint, uintptr, uintptr) uintptr
198208 //
199209 // @data may be `NULL` if @size is 0.
200210 func NewBytesWithFreeFunc(DataVar []byte, SizeVar uint, FreeFuncVar *DestroyNotify, UserDataVar uintptr) *Bytes {
211+ core.LazyRegister(&xNewBytesWithFreeFunc, "GLIB", "g_bytes_new_with_free_func", false)
212+
201213 cret := xNewBytesWithFreeFunc(DataVar, SizeVar, NewCallback(FreeFuncVar), UserDataVar)
202214 if cret == 0 {
203215 return nil
@@ -218,6 +230,8 @@ var xBytesCompare func(uintptr, uintptr) int
218230 // comparison. If @bytes1 has a smaller value at that position it is
219231 // considered less, otherwise greater than @bytes2.
220232 func (x *Bytes) Compare(Bytes2Var uintptr) int {
233+ core.LazyRegister(&xBytesCompare, "GLIB", "g_bytes_compare", false)
234+
221235 cret := xBytesCompare(x.GoPointer(), Bytes2Var)
222236 return cret
223237 }
@@ -231,6 +245,8 @@ var xBytesEqual func(uintptr, uintptr) bool
231245 // @key_equal_func parameter, when using non-`NULL` `GBytes` pointers as keys in
232246 // a [struct@GLib.HashTable].
233247 func (x *Bytes) Equal(Bytes2Var uintptr) bool {
248+ core.LazyRegister(&xBytesEqual, "GLIB", "g_bytes_equal", false)
249+
234250 cret := xBytesEqual(x.GoPointer(), Bytes2Var)
235251 return cret
236252 }
@@ -247,6 +263,8 @@ var xBytesGetData func(uintptr, *uint) uintptr
247263 // may represent an empty string with @data non-`NULL` and @size as 0. `NULL`
248264 // will not be returned if @size is non-zero.
249265 func (x *Bytes) GetData(SizeVar *uint) uintptr {
266+ core.LazyRegister(&xBytesGetData, "GLIB", "g_bytes_get_data", false)
267+
250268 cret := xBytesGetData(x.GoPointer(), SizeVar)
251269 return cret
252270 }
@@ -274,6 +292,8 @@ var xBytesGetRegion func(uintptr, uint, uint, uint) uintptr
274292 // that you will be using this function to check for a zero-sized region
275293 // in a zero-sized @bytes, `NULL` effectively always means ‘error’.
276294 func (x *Bytes) GetRegion(ElementSizeVar uint, OffsetVar uint, NElementsVar uint) uintptr {
295+ core.LazyRegister(&xBytesGetRegion, "GLIB", "g_bytes_get_region", false)
296+
277297 cret := xBytesGetRegion(x.GoPointer(), ElementSizeVar, OffsetVar, NElementsVar)
278298 return cret
279299 }
@@ -284,6 +304,8 @@ var xBytesGetSize func(uintptr) uint
284304 //
285305 // This function will always return the same value for a given `GBytes`.
286306 func (x *Bytes) GetSize() uint {
307+ core.LazyRegister(&xBytesGetSize, "GLIB", "g_bytes_get_size", false)
308+
287309 cret := xBytesGetSize(x.GoPointer())
288310 return cret
289311 }
@@ -296,6 +318,8 @@ var xBytesHash func(uintptr) uint
296318 // @key_hash_func parameter, when using non-`NULL` `GBytes` pointers as keys in
297319 // a [struct@GLib.HashTable].
298320 func (x *Bytes) Hash() uint {
321+ core.LazyRegister(&xBytesHash, "GLIB", "g_bytes_hash", false)
322+
299323 cret := xBytesHash(x.GoPointer())
300324 return cret
301325 }
@@ -304,6 +328,8 @@ var xBytesRef func(uintptr) uintptr
304328
305329 // Increase the reference count on @bytes.
306330 func (x *Bytes) Ref() *Bytes {
331+ core.LazyRegister(&xBytesRef, "GLIB", "g_bytes_ref", false)
332+
307333 cret := xBytesRef(x.GoPointer())
308334 if cret == 0 {
309335 return nil
@@ -318,6 +344,8 @@ var xBytesUnref func(uintptr)
318344 // This may result in the bytes being freed. If @bytes is `NULL`, it will
319345 // return immediately.
320346 func (x *Bytes) Unref() {
347+ core.LazyRegister(&xBytesUnref, "GLIB", "g_bytes_unref", false)
348+
321349 xBytesUnref(x.GoPointer())
322350 }
323351
@@ -337,6 +365,8 @@ var xBytesUnrefToArray func(uintptr) uintptr
337365 // bytes. [struct@GLib.ByteArray] stores the length of its data in `guint`,
338366 // which may be shorter than `gsize`, that @bytes is using.
339367 func (x *Bytes) UnrefToArray() uintptr {
368+ core.LazyRegister(&xBytesUnrefToArray, "GLIB", "g_bytes_unref_to_array", false)
369+
340370 cret := xBytesUnrefToArray(x.GoPointer())
341371 return cret
342372 }
@@ -353,6 +383,8 @@ var xBytesUnrefToData func(uintptr, *uint) uintptr
353383 // [struct@GLib.Bytes] may internalize within its allocation. In all other cases
354384 // the data is copied.
355385 func (x *Bytes) UnrefToData(SizeVar *uint) uintptr {
386+ core.LazyRegister(&xBytesUnrefToData, "GLIB", "g_bytes_unref_to_data", false)
387+
356388 cret := xBytesUnrefToData(x.GoPointer(), SizeVar)
357389 return cret
358390 }
@@ -369,6 +401,7 @@ type PtrArray struct {
369401 var xPtrArrayGLibType func() types.GType
370402
371403 func PtrArrayGLibType() types.GType {
404+ core.LazyRegister(&xPtrArrayGLibType, "GLIB", "g_ptr_array_get_type", false)
372405 return xPtrArrayGLibType()
373406 }
374407
@@ -404,6 +437,8 @@ var xArrayNewTake func(uintptr, uint, bool, uint) uintptr
404437 // [`G_MAXUINT`](types.html#guint). `GArray` stores the length of its data in
405438 // `guint`, which may be shorter than `gsize`.
406439 func ArrayNewTake(DataVar uintptr, LenVar uint, ClearVar bool, ElementSizeVar uint) uintptr {
440+ core.LazyRegister(&xArrayNewTake, "GLIB", "g_array_new_take", false)
441+
407442 cret := xArrayNewTake(DataVar, LenVar, ClearVar, ElementSizeVar)
408443 return cret
409444 }
@@ -430,6 +465,8 @@ var xArrayNewTakeZeroTerminated func(uintptr, bool, uint) uintptr
430465 // [`G_MAXUINT`](types.html#guint). `GArray` stores the length of its data in
431466 // `guint`, which may be shorter than `gsize`.
432467 func ArrayNewTakeZeroTerminated(DataVar uintptr, ClearVar bool, ElementSizeVar uint) uintptr {
468+ core.LazyRegister(&xArrayNewTakeZeroTerminated, "GLIB", "g_array_new_take_zero_terminated", false)
469+
433470 cret := xArrayNewTakeZeroTerminated(DataVar, ClearVar, ElementSizeVar)
434471 return cret
435472 }
@@ -439,6 +476,8 @@ var xByteArrayAppend func([]byte, []byte, uint) uintptr
439476 // Adds the given bytes to the end of the `GByteArray`.
440477 // The array will grow in size automatically if necessary.
441478 func ByteArrayAppend(ArrayVar []byte, DataVar []byte, LenVar uint) uintptr {
479+ core.LazyRegister(&xByteArrayAppend, "GLIB", "g_byte_array_append", false)
480+
442481 cret := xByteArrayAppend(ArrayVar, DataVar, LenVar)
443482 return cret
444483 }
@@ -450,6 +489,8 @@ var xByteArrayFree func([]byte, bool) uintptr
450489 // @array is greater than one, the `GByteArray` wrapper is preserved but
451490 // the size of @array will be set to zero.
452491 func ByteArrayFree(ArrayVar []byte, FreeSegmentVar bool) uintptr {
492+ core.LazyRegister(&xByteArrayFree, "GLIB", "g_byte_array_free", false)
493+
453494 cret := xByteArrayFree(ArrayVar, FreeSegmentVar)
454495 return cret
455496 }
@@ -466,6 +507,8 @@ var xByteArrayFreeToBytes func([]byte) uintptr
466507 // This is identical to using [ctor@GLib.Bytes.new_take] and
467508 // [func@GLib.ByteArray.free] together.
468509 func ByteArrayFreeToBytes(ArrayVar []byte) *Bytes {
510+ core.LazyRegister(&xByteArrayFreeToBytes, "GLIB", "g_byte_array_free_to_bytes", false)
511+
469512 cret := xByteArrayFreeToBytes(ArrayVar)
470513 if cret == 0 {
471514 return nil
@@ -477,6 +520,8 @@ var xByteArrayNew func() uintptr
477520
478521 // Creates a new `GByteArray` with a reference count of 1.
479522 func ByteArrayNew() uintptr {
523+ core.LazyRegister(&xByteArrayNew, "GLIB", "g_byte_array_new", false)
524+
480525 cret := xByteArrayNew()
481526 return cret
482527 }
@@ -492,6 +537,8 @@ var xByteArrayNewTake func([]byte, uint) uintptr
492537 // `GByteArray` stores the length of its data in `guint`, which may be shorter
493538 // than `gsize`.
494539 func ByteArrayNewTake(DataVar []byte, LenVar uint) uintptr {
540+ core.LazyRegister(&xByteArrayNewTake, "GLIB", "g_byte_array_new_take", false)
541+
495542 cret := xByteArrayNewTake(DataVar, LenVar)
496543 return cret
497544 }
@@ -501,6 +548,8 @@ var xByteArrayPrepend func([]byte, []byte, uint) uintptr
501548 // Adds the given data to the start of the `GByteArray`.
502549 // The array will grow in size automatically if necessary.
503550 func ByteArrayPrepend(ArrayVar []byte, DataVar []byte, LenVar uint) uintptr {
551+ core.LazyRegister(&xByteArrayPrepend, "GLIB", "g_byte_array_prepend", false)
552+
504553 cret := xByteArrayPrepend(ArrayVar, DataVar, LenVar)
505554 return cret
506555 }
@@ -510,6 +559,8 @@ var xByteArrayRef func([]byte) uintptr
510559 // Atomically increments the reference count of @array by one.
511560 // This function is thread-safe and may be called from any thread.
512561 func ByteArrayRef(ArrayVar []byte) uintptr {
562+ core.LazyRegister(&xByteArrayRef, "GLIB", "g_byte_array_ref", false)
563+
513564 cret := xByteArrayRef(ArrayVar)
514565 return cret
515566 }
@@ -519,6 +570,8 @@ var xByteArrayRemoveIndex func([]byte, uint) uintptr
519570 // Removes the byte at the given index from a `GByteArray`.
520571 // The following bytes are moved down one place.
521572 func ByteArrayRemoveIndex(ArrayVar []byte, IndexVar uint) uintptr {
573+ core.LazyRegister(&xByteArrayRemoveIndex, "GLIB", "g_byte_array_remove_index", false)
574+
522575 cret := xByteArrayRemoveIndex(ArrayVar, IndexVar)
523576 return cret
524577 }
@@ -530,6 +583,8 @@ var xByteArrayRemoveIndexFast func([]byte, uint) uintptr
530583 // does not preserve the order of the `GByteArray`. But it is faster
531584 // than [func@GLib.ByteArray.remove_index].
532585 func ByteArrayRemoveIndexFast(ArrayVar []byte, IndexVar uint) uintptr {
586+ core.LazyRegister(&xByteArrayRemoveIndexFast, "GLIB", "g_byte_array_remove_index_fast", false)
587+
533588 cret := xByteArrayRemoveIndexFast(ArrayVar, IndexVar)
534589 return cret
535590 }
@@ -539,6 +594,8 @@ var xByteArrayRemoveRange func([]byte, uint, uint) uintptr
539594 // Removes the given number of bytes starting at the given index from a
540595 // `GByteArray`. The following elements are moved to close the gap.
541596 func ByteArrayRemoveRange(ArrayVar []byte, IndexVar uint, LengthVar uint) uintptr {
597+ core.LazyRegister(&xByteArrayRemoveRange, "GLIB", "g_byte_array_remove_range", false)
598+
542599 cret := xByteArrayRemoveRange(ArrayVar, IndexVar, LengthVar)
543600 return cret
544601 }
@@ -547,6 +604,8 @@ var xByteArraySetSize func([]byte, uint) uintptr
547604
548605 // Sets the size of the `GByteArray`, expanding it if necessary.
549606 func ByteArraySetSize(ArrayVar []byte, LengthVar uint) uintptr {
607+ core.LazyRegister(&xByteArraySetSize, "GLIB", "g_byte_array_set_size", false)
608+
550609 cret := xByteArraySetSize(ArrayVar, LengthVar)
551610 return cret
552611 }
@@ -558,6 +617,8 @@ var xByteArraySizedNew func(uint) uintptr
558617 // bytes to the array. Note however that the size of the array is still
559618 // 0.
560619 func ByteArraySizedNew(ReservedSizeVar uint) uintptr {
620+ core.LazyRegister(&xByteArraySizedNew, "GLIB", "g_byte_array_sized_new", false)
621+
561622 cret := xByteArraySizedNew(ReservedSizeVar)
562623 return cret
563624 }
@@ -575,6 +636,8 @@ var xByteArraySort func([]byte, uintptr)
575636 // if two elements would otherwise compare equal, compares them by
576637 // their addresses.
577638 func ByteArraySort(ArrayVar []byte, CompareFuncVar *CompareFunc) {
639+ core.LazyRegister(&xByteArraySort, "GLIB", "g_byte_array_sort", false)
640+
578641 xByteArraySort(ArrayVar, NewCallback(CompareFuncVar))
579642 }
580643
@@ -583,6 +646,8 @@ var xByteArraySortWithData func([]byte, uintptr, uintptr)
583646 // Like [func@GLib.ByteArray.sort], but the comparison function takes an extra
584647 // user data argument.
585648 func ByteArraySortWithData(ArrayVar []byte, CompareFuncVar *CompareDataFunc, UserDataVar uintptr) {
649+ core.LazyRegister(&xByteArraySortWithData, "GLIB", "g_byte_array_sort_with_data", false)
650+
586651 xByteArraySortWithData(ArrayVar, NewCallback(CompareFuncVar), UserDataVar)
587652 }
588653
@@ -592,6 +657,8 @@ var xByteArraySteal func([]byte, *uint) uintptr
592657 // the underlying array is preserved for use elsewhere and returned
593658 // to the caller.
594659 func ByteArraySteal(ArrayVar []byte, LenVar *uint) uintptr {
660+ core.LazyRegister(&xByteArraySteal, "GLIB", "g_byte_array_steal", false)
661+
595662 cret := xByteArraySteal(ArrayVar, LenVar)
596663 return cret
597664 }
@@ -603,6 +670,8 @@ var xByteArrayUnref func([]byte)
603670 // released. This function is thread-safe and may be called from any
604671 // thread.
605672 func ByteArrayUnref(ArrayVar []byte) {
673+ core.LazyRegister(&xByteArrayUnref, "GLIB", "g_byte_array_unref", false)
674+
606675 xByteArrayUnref(ArrayVar)
607676 }
608677
@@ -617,6 +686,8 @@ var xPtrArrayFind func([]uintptr, uintptr, *uint) bool
617686 // checks, such as string comparisons, use
618687 // [func@GLib.PtrArray.find_with_equal_func].
619688 func PtrArrayFind(HaystackVar []uintptr, NeedleVar uintptr, IndexVar *uint) bool {
689+ core.LazyRegister(&xPtrArrayFind, "GLIB", "g_ptr_array_find", false)
690+
620691 cret := xPtrArrayFind(HaystackVar, NeedleVar, IndexVar)
621692 return cret
622693 }
@@ -633,6 +704,8 @@ var xPtrArrayFindWithEqualFunc func([]uintptr, uintptr, uintptr, *uint) bool
633704 // and @needle as its second parameter. If @equal_func is `NULL`, pointer
634705 // equality is used.
635706 func PtrArrayFindWithEqualFunc(HaystackVar []uintptr, NeedleVar uintptr, EqualFuncVar *EqualFunc, IndexVar *uint) bool {
707+ core.LazyRegister(&xPtrArrayFindWithEqualFunc, "GLIB", "g_ptr_array_find_with_equal_func", false)
708+
636709 cret := xPtrArrayFindWithEqualFunc(HaystackVar, NeedleVar, NewCallbackNullable(EqualFuncVar), IndexVar)
637710 return cret
638711 }
@@ -657,6 +730,8 @@ var xPtrArrayNewFromArray func([]uintptr, uint, uintptr, uintptr, uintptr) uintp
657730 // `GPtrArray` stores the length of its data in `guint`, which may be shorter
658731 // than `gsize`.
659732 func PtrArrayNewFromArray(DataVar []uintptr, LenVar uint, CopyFuncVar *CopyFunc, CopyFuncUserDataVar uintptr, ElementFreeFuncVar *DestroyNotify) uintptr {
733+ core.LazyRegister(&xPtrArrayNewFromArray, "GLIB", "g_ptr_array_new_from_array", false)
734+
660735 cret := xPtrArrayNewFromArray(DataVar, LenVar, NewCallbackNullable(CopyFuncVar), CopyFuncUserDataVar, NewCallbackNullable(ElementFreeFuncVar))
661736 return cret
662737 }
@@ -677,6 +752,8 @@ var xPtrArrayNewFromNullTerminatedArray func([]uintptr, uintptr, uintptr, uintpt
677752 // elements. `GPtrArray` stores the length of its data in `guint`, which may be
678753 // shorter than `gsize`.
679754 func PtrArrayNewFromNullTerminatedArray(DataVar []uintptr, CopyFuncVar *CopyFunc, CopyFuncUserDataVar uintptr, ElementFreeFuncVar *DestroyNotify) uintptr {
755+ core.LazyRegister(&xPtrArrayNewFromNullTerminatedArray, "GLIB", "g_ptr_array_new_from_null_terminated_array", false)
756+
680757 cret := xPtrArrayNewFromNullTerminatedArray(DataVar, NewCallbackNullable(CopyFuncVar), CopyFuncUserDataVar, NewCallbackNullable(ElementFreeFuncVar))
681758 return cret
682759 }
@@ -700,6 +777,8 @@ var xPtrArrayNewTake func([]uintptr, uint, uintptr) uintptr
700777 // `GPtrArray` stores the length of its data in `guint`, which may be shorter
701778 // than `gsize`.
702779 func PtrArrayNewTake(DataVar []uintptr, LenVar uint, ElementFreeFuncVar *DestroyNotify) uintptr {
780+ core.LazyRegister(&xPtrArrayNewTake, "GLIB", "g_ptr_array_new_take", false)
781+
703782 cret := xPtrArrayNewTake(DataVar, LenVar, NewCallbackNullable(ElementFreeFuncVar))
704783 return cret
705784 }
@@ -726,6 +805,8 @@ var xPtrArrayNewTakeNullTerminated func([]uintptr, uintptr) uintptr
726805 // [`G_MAXUINT`](types.html#guint). `GPtrArray` stores the length of its data
727806 // in `guint`, which may be shorter than `gsize`.
728807 func PtrArrayNewTakeNullTerminated(DataVar []uintptr, ElementFreeFuncVar *DestroyNotify) uintptr {
808+ core.LazyRegister(&xPtrArrayNewTakeNullTerminated, "GLIB", "g_ptr_array_new_take_null_terminated", false)
809+
729810 cret := xPtrArrayNewTakeNullTerminated(DataVar, NewCallbackNullable(ElementFreeFuncVar))
730811 return cret
731812 }
@@ -733,62 +814,4 @@ func PtrArrayNewTakeNullTerminated(DataVar []uintptr, ElementFreeFuncVar *Destro
733814 func init() {
734815 core.SetPackageName("GLIB", "glib-2.0")
735816 core.SetSharedLibraries("GLIB", []string{"libgobject-2.0.so.0", "libglib-2.0.so.0", "libgobject-2.0.0.dylib", "libglib-2.0.0.dylib"})
736- var libs []uintptr
737- for _, libPath := range core.GetPaths("GLIB") {
738- lib, err := purego.Dlopen(libPath, purego.RTLD_NOW|purego.RTLD_GLOBAL)
739- if err != nil {
740- panic(err)
741- }
742- libs = append(libs, lib)
743- }
744-
745- core.PuregoSafeRegister(&xArrayNewTake, libs, "g_array_new_take")
746- core.PuregoSafeRegister(&xArrayNewTakeZeroTerminated, libs, "g_array_new_take_zero_terminated")
747- core.PuregoSafeRegister(&xByteArrayAppend, libs, "g_byte_array_append")
748- core.PuregoSafeRegister(&xByteArrayFree, libs, "g_byte_array_free")
749- core.PuregoSafeRegister(&xByteArrayFreeToBytes, libs, "g_byte_array_free_to_bytes")
750- core.PuregoSafeRegister(&xByteArrayNew, libs, "g_byte_array_new")
751- core.PuregoSafeRegister(&xByteArrayNewTake, libs, "g_byte_array_new_take")
752- core.PuregoSafeRegister(&xByteArrayPrepend, libs, "g_byte_array_prepend")
753- core.PuregoSafeRegister(&xByteArrayRef, libs, "g_byte_array_ref")
754- core.PuregoSafeRegister(&xByteArrayRemoveIndex, libs, "g_byte_array_remove_index")
755- core.PuregoSafeRegister(&xByteArrayRemoveIndexFast, libs, "g_byte_array_remove_index_fast")
756- core.PuregoSafeRegister(&xByteArrayRemoveRange, libs, "g_byte_array_remove_range")
757- core.PuregoSafeRegister(&xByteArraySetSize, libs, "g_byte_array_set_size")
758- core.PuregoSafeRegister(&xByteArraySizedNew, libs, "g_byte_array_sized_new")
759- core.PuregoSafeRegister(&xByteArraySort, libs, "g_byte_array_sort")
760- core.PuregoSafeRegister(&xByteArraySortWithData, libs, "g_byte_array_sort_with_data")
761- core.PuregoSafeRegister(&xByteArraySteal, libs, "g_byte_array_steal")
762- core.PuregoSafeRegister(&xByteArrayUnref, libs, "g_byte_array_unref")
763- core.PuregoSafeRegister(&xPtrArrayFind, libs, "g_ptr_array_find")
764- core.PuregoSafeRegister(&xPtrArrayFindWithEqualFunc, libs, "g_ptr_array_find_with_equal_func")
765- core.PuregoSafeRegister(&xPtrArrayNewFromArray, libs, "g_ptr_array_new_from_array")
766- core.PuregoSafeRegister(&xPtrArrayNewFromNullTerminatedArray, libs, "g_ptr_array_new_from_null_terminated_array")
767- core.PuregoSafeRegister(&xPtrArrayNewTake, libs, "g_ptr_array_new_take")
768- core.PuregoSafeRegister(&xPtrArrayNewTakeNullTerminated, libs, "g_ptr_array_new_take_null_terminated")
769-
770- core.PuregoSafeRegister(&xArrayGLibType, libs, "g_array_get_type")
771-
772- core.PuregoSafeRegister(&xByteArrayGLibType, libs, "g_byte_array_get_type")
773-
774- core.PuregoSafeRegister(&xBytesGLibType, libs, "g_bytes_get_type")
775-
776- core.PuregoSafeRegister(&xNewBytes, libs, "g_bytes_new")
777- core.PuregoSafeRegister(&xNewBytesFromBytes, libs, "g_bytes_new_from_bytes")
778- core.PuregoSafeRegister(&xNewBytesStatic, libs, "g_bytes_new_static")
779- core.PuregoSafeRegister(&xNewBytesTake, libs, "g_bytes_new_take")
780- core.PuregoSafeRegister(&xNewBytesWithFreeFunc, libs, "g_bytes_new_with_free_func")
781-
782- core.PuregoSafeRegister(&xBytesCompare, libs, "g_bytes_compare")
783- core.PuregoSafeRegister(&xBytesEqual, libs, "g_bytes_equal")
784- core.PuregoSafeRegister(&xBytesGetData, libs, "g_bytes_get_data")
785- core.PuregoSafeRegister(&xBytesGetRegion, libs, "g_bytes_get_region")
786- core.PuregoSafeRegister(&xBytesGetSize, libs, "g_bytes_get_size")
787- core.PuregoSafeRegister(&xBytesHash, libs, "g_bytes_hash")
788- core.PuregoSafeRegister(&xBytesRef, libs, "g_bytes_ref")
789- core.PuregoSafeRegister(&xBytesUnref, libs, "g_bytes_unref")
790- core.PuregoSafeRegister(&xBytesUnrefToArray, libs, "g_bytes_unref_to_array")
791- core.PuregoSafeRegister(&xBytesUnrefToData, libs, "g_bytes_unref_to_data")
792-
793- core.PuregoSafeRegister(&xPtrArrayGLibType, libs, "g_ptr_array_get_type")
794817 }
@@ -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/gobject/types"9 "github.com/bnema/puregotk/v4/gobject/types"
11 )10 )
@@ -22,6 +21,7 @@ type Array struct {
22 var xArrayGLibType func() types.GType21 var xArrayGLibType func() types.GType
23 22
24 func ArrayGLibType() types.GType {23 func ArrayGLibType() types.GType {
24+ core.LazyRegister(&xArrayGLibType, "GLIB", "g_array_get_type", false)
25 return xArrayGLibType()25 return xArrayGLibType()
26 }26 }
27 27
@@ -49,6 +49,7 @@ type ByteArray struct {
49 var xByteArrayGLibType func() types.GType49 var xByteArrayGLibType func() types.GType
50 50
51 func ByteArrayGLibType() types.GType {51 func ByteArrayGLibType() types.GType {
52+ core.LazyRegister(&xByteArrayGLibType, "GLIB", "g_byte_array_get_type", false)
52 return xByteArrayGLibType()53 return xByteArrayGLibType()
53 }54 }
54 55
@@ -98,6 +99,7 @@ type Bytes struct {
98 var xBytesGLibType func() types.GType99 var xBytesGLibType func() types.GType
99 100
100 func BytesGLibType() types.GType {101 func BytesGLibType() types.GType {
102+ core.LazyRegister(&xBytesGLibType, "GLIB", "g_bytes_get_type", false)
101 return xBytesGLibType()103 return xBytesGLibType()
102 }104 }
103 105
@@ -123,6 +125,8 @@ var xNewBytes func([]byte, uint) uintptr
123 // copying the data within the resulting bytes structure if sufficiently small125 // copying the data within the resulting bytes structure if sufficiently small
124 // (since GLib 2.84).126 // (since GLib 2.84).
125 func NewBytes(DataVar []byte, SizeVar uint) *Bytes {127 func NewBytes(DataVar []byte, SizeVar uint) *Bytes {
128+ core.LazyRegister(&xNewBytes, "GLIB", "g_bytes_new", false)
129+
126 cret := xNewBytes(DataVar, SizeVar)130 cret := xNewBytes(DataVar, SizeVar)
127 if cret == 0 {131 if cret == 0 {
128 return nil132 return nil
@@ -145,6 +149,8 @@ var xNewBytesFromBytes func(*Bytes, uint, uint) uintptr
145 // the same `GBytes` instead of @bytes. This allows consumers to simplify the149 // the same `GBytes` instead of @bytes. This allows consumers to simplify the
146 // usage of `GBytes` when asynchronously writing to streams.150 // usage of `GBytes` when asynchronously writing to streams.
147 func NewBytesFromBytes(BytesVar *Bytes, OffsetVar uint, LengthVar uint) *Bytes {151 func NewBytesFromBytes(BytesVar *Bytes, OffsetVar uint, LengthVar uint) *Bytes {
152+ core.LazyRegister(&xNewBytesFromBytes, "GLIB", "g_bytes_new_from_bytes", false)
153+
148 cret := xNewBytesFromBytes(BytesVar, OffsetVar, LengthVar)154 cret := xNewBytesFromBytes(BytesVar, OffsetVar, LengthVar)
149 if cret == 0 {155 if cret == 0 {
150 return nil156 return nil
@@ -159,6 +165,8 @@ var xNewBytesStatic func([]byte, uint) uintptr
159 // @data must be static (ie: never modified or freed). It may be `NULL` if @size165 // @data must be static (ie: never modified or freed). It may be `NULL` if @size
160 // is 0.166 // is 0.
161 func NewBytesStatic(DataVar []byte, SizeVar uint) *Bytes {167 func NewBytesStatic(DataVar []byte, SizeVar uint) *Bytes {
168+ core.LazyRegister(&xNewBytesStatic, "GLIB", "g_bytes_new_static", false)
169+
162 cret := xNewBytesStatic(DataVar, SizeVar)170 cret := xNewBytesStatic(DataVar, SizeVar)
163 if cret == 0 {171 if cret == 0 {
164 return nil172 return nil
@@ -179,6 +187,8 @@ var xNewBytesTake func(uintptr, uint) uintptr
179 //187 //
180 // @data may be `NULL` if @size is 0.188 // @data may be `NULL` if @size is 0.
181 func NewBytesTake(DataVar uintptr, SizeVar uint) *Bytes {189 func NewBytesTake(DataVar uintptr, SizeVar uint) *Bytes {
190+ core.LazyRegister(&xNewBytesTake, "GLIB", "g_bytes_new_take", false)
191+
182 cret := xNewBytesTake(DataVar, SizeVar)192 cret := xNewBytesTake(DataVar, SizeVar)
183 if cret == 0 {193 if cret == 0 {
184 return nil194 return nil
@@ -198,6 +208,8 @@ var xNewBytesWithFreeFunc func([]byte, uint, uintptr, uintptr) uintptr
198 //208 //
199 // @data may be `NULL` if @size is 0.209 // @data may be `NULL` if @size is 0.
200 func NewBytesWithFreeFunc(DataVar []byte, SizeVar uint, FreeFuncVar *DestroyNotify, UserDataVar uintptr) *Bytes {210 func NewBytesWithFreeFunc(DataVar []byte, SizeVar uint, FreeFuncVar *DestroyNotify, UserDataVar uintptr) *Bytes {
211+ core.LazyRegister(&xNewBytesWithFreeFunc, "GLIB", "g_bytes_new_with_free_func", false)
212+
201 cret := xNewBytesWithFreeFunc(DataVar, SizeVar, NewCallback(FreeFuncVar), UserDataVar)213 cret := xNewBytesWithFreeFunc(DataVar, SizeVar, NewCallback(FreeFuncVar), UserDataVar)
202 if cret == 0 {214 if cret == 0 {
203 return nil215 return nil
@@ -218,6 +230,8 @@ var xBytesCompare func(uintptr, uintptr) int
218 // comparison. If @bytes1 has a smaller value at that position it is230 // comparison. If @bytes1 has a smaller value at that position it is
219 // considered less, otherwise greater than @bytes2.231 // considered less, otherwise greater than @bytes2.
220 func (x *Bytes) Compare(Bytes2Var uintptr) int {232 func (x *Bytes) Compare(Bytes2Var uintptr) int {
233+ core.LazyRegister(&xBytesCompare, "GLIB", "g_bytes_compare", false)
234+
221 cret := xBytesCompare(x.GoPointer(), Bytes2Var)235 cret := xBytesCompare(x.GoPointer(), Bytes2Var)
222 return cret236 return cret
223 }237 }
@@ -231,6 +245,8 @@ var xBytesEqual func(uintptr, uintptr) bool
231 // @key_equal_func parameter, when using non-`NULL` `GBytes` pointers as keys in245 // @key_equal_func parameter, when using non-`NULL` `GBytes` pointers as keys in
232 // a [struct@GLib.HashTable].246 // a [struct@GLib.HashTable].
233 func (x *Bytes) Equal(Bytes2Var uintptr) bool {247 func (x *Bytes) Equal(Bytes2Var uintptr) bool {
248+ core.LazyRegister(&xBytesEqual, "GLIB", "g_bytes_equal", false)
249+
234 cret := xBytesEqual(x.GoPointer(), Bytes2Var)250 cret := xBytesEqual(x.GoPointer(), Bytes2Var)
235 return cret251 return cret
236 }252 }
@@ -247,6 +263,8 @@ var xBytesGetData func(uintptr, *uint) uintptr
247 // may represent an empty string with @data non-`NULL` and @size as 0. `NULL`263 // may represent an empty string with @data non-`NULL` and @size as 0. `NULL`
248 // will not be returned if @size is non-zero.264 // will not be returned if @size is non-zero.
249 func (x *Bytes) GetData(SizeVar *uint) uintptr {265 func (x *Bytes) GetData(SizeVar *uint) uintptr {
266+ core.LazyRegister(&xBytesGetData, "GLIB", "g_bytes_get_data", false)
267+
250 cret := xBytesGetData(x.GoPointer(), SizeVar)268 cret := xBytesGetData(x.GoPointer(), SizeVar)
251 return cret269 return cret
252 }270 }
@@ -274,6 +292,8 @@ var xBytesGetRegion func(uintptr, uint, uint, uint) uintptr
274 // that you will be using this function to check for a zero-sized region292 // that you will be using this function to check for a zero-sized region
275 // in a zero-sized @bytes, `NULL` effectively always means ‘error’.293 // in a zero-sized @bytes, `NULL` effectively always means ‘error’.
276 func (x *Bytes) GetRegion(ElementSizeVar uint, OffsetVar uint, NElementsVar uint) uintptr {294 func (x *Bytes) GetRegion(ElementSizeVar uint, OffsetVar uint, NElementsVar uint) uintptr {
295+ core.LazyRegister(&xBytesGetRegion, "GLIB", "g_bytes_get_region", false)
296+
277 cret := xBytesGetRegion(x.GoPointer(), ElementSizeVar, OffsetVar, NElementsVar)297 cret := xBytesGetRegion(x.GoPointer(), ElementSizeVar, OffsetVar, NElementsVar)
278 return cret298 return cret
279 }299 }
@@ -284,6 +304,8 @@ var xBytesGetSize func(uintptr) uint
284 //304 //
285 // This function will always return the same value for a given `GBytes`.305 // This function will always return the same value for a given `GBytes`.
286 func (x *Bytes) GetSize() uint {306 func (x *Bytes) GetSize() uint {
307+ core.LazyRegister(&xBytesGetSize, "GLIB", "g_bytes_get_size", false)
308+
287 cret := xBytesGetSize(x.GoPointer())309 cret := xBytesGetSize(x.GoPointer())
288 return cret310 return cret
289 }311 }
@@ -296,6 +318,8 @@ var xBytesHash func(uintptr) uint
296 // @key_hash_func parameter, when using non-`NULL` `GBytes` pointers as keys in318 // @key_hash_func parameter, when using non-`NULL` `GBytes` pointers as keys in
297 // a [struct@GLib.HashTable].319 // a [struct@GLib.HashTable].
298 func (x *Bytes) Hash() uint {320 func (x *Bytes) Hash() uint {
321+ core.LazyRegister(&xBytesHash, "GLIB", "g_bytes_hash", false)
322+
299 cret := xBytesHash(x.GoPointer())323 cret := xBytesHash(x.GoPointer())
300 return cret324 return cret
301 }325 }
@@ -304,6 +328,8 @@ var xBytesRef func(uintptr) uintptr
304 328
305 // Increase the reference count on @bytes.329 // Increase the reference count on @bytes.
306 func (x *Bytes) Ref() *Bytes {330 func (x *Bytes) Ref() *Bytes {
331+ core.LazyRegister(&xBytesRef, "GLIB", "g_bytes_ref", false)
332+
307 cret := xBytesRef(x.GoPointer())333 cret := xBytesRef(x.GoPointer())
308 if cret == 0 {334 if cret == 0 {
309 return nil335 return nil
@@ -318,6 +344,8 @@ var xBytesUnref func(uintptr)
318 // This may result in the bytes being freed. If @bytes is `NULL`, it will344 // This may result in the bytes being freed. If @bytes is `NULL`, it will
319 // return immediately.345 // return immediately.
320 func (x *Bytes) Unref() {346 func (x *Bytes) Unref() {
347+ core.LazyRegister(&xBytesUnref, "GLIB", "g_bytes_unref", false)
348+
321 xBytesUnref(x.GoPointer())349 xBytesUnref(x.GoPointer())
322 }350 }
323 351
@@ -337,6 +365,8 @@ var xBytesUnrefToArray func(uintptr) uintptr
337 // bytes. [struct@GLib.ByteArray] stores the length of its data in `guint`,365 // bytes. [struct@GLib.ByteArray] stores the length of its data in `guint`,
338 // which may be shorter than `gsize`, that @bytes is using.366 // which may be shorter than `gsize`, that @bytes is using.
339 func (x *Bytes) UnrefToArray() uintptr {367 func (x *Bytes) UnrefToArray() uintptr {
368+ core.LazyRegister(&xBytesUnrefToArray, "GLIB", "g_bytes_unref_to_array", false)
369+
340 cret := xBytesUnrefToArray(x.GoPointer())370 cret := xBytesUnrefToArray(x.GoPointer())
341 return cret371 return cret
342 }372 }
@@ -353,6 +383,8 @@ var xBytesUnrefToData func(uintptr, *uint) uintptr
353 // [struct@GLib.Bytes] may internalize within its allocation. In all other cases383 // [struct@GLib.Bytes] may internalize within its allocation. In all other cases
354 // the data is copied.384 // the data is copied.
355 func (x *Bytes) UnrefToData(SizeVar *uint) uintptr {385 func (x *Bytes) UnrefToData(SizeVar *uint) uintptr {
386+ core.LazyRegister(&xBytesUnrefToData, "GLIB", "g_bytes_unref_to_data", false)
387+
356 cret := xBytesUnrefToData(x.GoPointer(), SizeVar)388 cret := xBytesUnrefToData(x.GoPointer(), SizeVar)
357 return cret389 return cret
358 }390 }
@@ -369,6 +401,7 @@ type PtrArray struct {
369 var xPtrArrayGLibType func() types.GType401 var xPtrArrayGLibType func() types.GType
370 402
371 func PtrArrayGLibType() types.GType {403 func PtrArrayGLibType() types.GType {
404+ core.LazyRegister(&xPtrArrayGLibType, "GLIB", "g_ptr_array_get_type", false)
372 return xPtrArrayGLibType()405 return xPtrArrayGLibType()
373 }406 }
374 407
@@ -404,6 +437,8 @@ var xArrayNewTake func(uintptr, uint, bool, uint) uintptr
404 // [`G_MAXUINT`](types.html#guint). `GArray` stores the length of its data in437 // [`G_MAXUINT`](types.html#guint). `GArray` stores the length of its data in
405 // `guint`, which may be shorter than `gsize`.438 // `guint`, which may be shorter than `gsize`.
406 func ArrayNewTake(DataVar uintptr, LenVar uint, ClearVar bool, ElementSizeVar uint) uintptr {439 func ArrayNewTake(DataVar uintptr, LenVar uint, ClearVar bool, ElementSizeVar uint) uintptr {
440+ core.LazyRegister(&xArrayNewTake, "GLIB", "g_array_new_take", false)
441+
407 cret := xArrayNewTake(DataVar, LenVar, ClearVar, ElementSizeVar)442 cret := xArrayNewTake(DataVar, LenVar, ClearVar, ElementSizeVar)
408 return cret443 return cret
409 }444 }
@@ -430,6 +465,8 @@ var xArrayNewTakeZeroTerminated func(uintptr, bool, uint) uintptr
430 // [`G_MAXUINT`](types.html#guint). `GArray` stores the length of its data in465 // [`G_MAXUINT`](types.html#guint). `GArray` stores the length of its data in
431 // `guint`, which may be shorter than `gsize`.466 // `guint`, which may be shorter than `gsize`.
432 func ArrayNewTakeZeroTerminated(DataVar uintptr, ClearVar bool, ElementSizeVar uint) uintptr {467 func ArrayNewTakeZeroTerminated(DataVar uintptr, ClearVar bool, ElementSizeVar uint) uintptr {
468+ core.LazyRegister(&xArrayNewTakeZeroTerminated, "GLIB", "g_array_new_take_zero_terminated", false)
469+
433 cret := xArrayNewTakeZeroTerminated(DataVar, ClearVar, ElementSizeVar)470 cret := xArrayNewTakeZeroTerminated(DataVar, ClearVar, ElementSizeVar)
434 return cret471 return cret
435 }472 }
@@ -439,6 +476,8 @@ var xByteArrayAppend func([]byte, []byte, uint) uintptr
439 // Adds the given bytes to the end of the `GByteArray`.476 // Adds the given bytes to the end of the `GByteArray`.
440 // The array will grow in size automatically if necessary.477 // The array will grow in size automatically if necessary.
441 func ByteArrayAppend(ArrayVar []byte, DataVar []byte, LenVar uint) uintptr {478 func ByteArrayAppend(ArrayVar []byte, DataVar []byte, LenVar uint) uintptr {
479+ core.LazyRegister(&xByteArrayAppend, "GLIB", "g_byte_array_append", false)
480+
442 cret := xByteArrayAppend(ArrayVar, DataVar, LenVar)481 cret := xByteArrayAppend(ArrayVar, DataVar, LenVar)
443 return cret482 return cret
444 }483 }
@@ -450,6 +489,8 @@ var xByteArrayFree func([]byte, bool) uintptr
450 // @array is greater than one, the `GByteArray` wrapper is preserved but489 // @array is greater than one, the `GByteArray` wrapper is preserved but
451 // the size of @array will be set to zero.490 // the size of @array will be set to zero.
452 func ByteArrayFree(ArrayVar []byte, FreeSegmentVar bool) uintptr {491 func ByteArrayFree(ArrayVar []byte, FreeSegmentVar bool) uintptr {
492+ core.LazyRegister(&xByteArrayFree, "GLIB", "g_byte_array_free", false)
493+
453 cret := xByteArrayFree(ArrayVar, FreeSegmentVar)494 cret := xByteArrayFree(ArrayVar, FreeSegmentVar)
454 return cret495 return cret
455 }496 }
@@ -466,6 +507,8 @@ var xByteArrayFreeToBytes func([]byte) uintptr
466 // This is identical to using [ctor@GLib.Bytes.new_take] and507 // This is identical to using [ctor@GLib.Bytes.new_take] and
467 // [func@GLib.ByteArray.free] together.508 // [func@GLib.ByteArray.free] together.
468 func ByteArrayFreeToBytes(ArrayVar []byte) *Bytes {509 func ByteArrayFreeToBytes(ArrayVar []byte) *Bytes {
510+ core.LazyRegister(&xByteArrayFreeToBytes, "GLIB", "g_byte_array_free_to_bytes", false)
511+
469 cret := xByteArrayFreeToBytes(ArrayVar)512 cret := xByteArrayFreeToBytes(ArrayVar)
470 if cret == 0 {513 if cret == 0 {
471 return nil514 return nil
@@ -477,6 +520,8 @@ var xByteArrayNew func() uintptr
477 520
478 // Creates a new `GByteArray` with a reference count of 1.521 // Creates a new `GByteArray` with a reference count of 1.
479 func ByteArrayNew() uintptr {522 func ByteArrayNew() uintptr {
523+ core.LazyRegister(&xByteArrayNew, "GLIB", "g_byte_array_new", false)
524+
480 cret := xByteArrayNew()525 cret := xByteArrayNew()
481 return cret526 return cret
482 }527 }
@@ -492,6 +537,8 @@ var xByteArrayNewTake func([]byte, uint) uintptr
492 // `GByteArray` stores the length of its data in `guint`, which may be shorter537 // `GByteArray` stores the length of its data in `guint`, which may be shorter
493 // than `gsize`.538 // than `gsize`.
494 func ByteArrayNewTake(DataVar []byte, LenVar uint) uintptr {539 func ByteArrayNewTake(DataVar []byte, LenVar uint) uintptr {
540+ core.LazyRegister(&xByteArrayNewTake, "GLIB", "g_byte_array_new_take", false)
541+
495 cret := xByteArrayNewTake(DataVar, LenVar)542 cret := xByteArrayNewTake(DataVar, LenVar)
496 return cret543 return cret
497 }544 }
@@ -501,6 +548,8 @@ var xByteArrayPrepend func([]byte, []byte, uint) uintptr
501 // Adds the given data to the start of the `GByteArray`.548 // Adds the given data to the start of the `GByteArray`.
502 // The array will grow in size automatically if necessary.549 // The array will grow in size automatically if necessary.
503 func ByteArrayPrepend(ArrayVar []byte, DataVar []byte, LenVar uint) uintptr {550 func ByteArrayPrepend(ArrayVar []byte, DataVar []byte, LenVar uint) uintptr {
551+ core.LazyRegister(&xByteArrayPrepend, "GLIB", "g_byte_array_prepend", false)
552+
504 cret := xByteArrayPrepend(ArrayVar, DataVar, LenVar)553 cret := xByteArrayPrepend(ArrayVar, DataVar, LenVar)
505 return cret554 return cret
506 }555 }
@@ -510,6 +559,8 @@ var xByteArrayRef func([]byte) uintptr
510 // Atomically increments the reference count of @array by one.559 // Atomically increments the reference count of @array by one.
511 // This function is thread-safe and may be called from any thread.560 // This function is thread-safe and may be called from any thread.
512 func ByteArrayRef(ArrayVar []byte) uintptr {561 func ByteArrayRef(ArrayVar []byte) uintptr {
562+ core.LazyRegister(&xByteArrayRef, "GLIB", "g_byte_array_ref", false)
563+
513 cret := xByteArrayRef(ArrayVar)564 cret := xByteArrayRef(ArrayVar)
514 return cret565 return cret
515 }566 }
@@ -519,6 +570,8 @@ var xByteArrayRemoveIndex func([]byte, uint) uintptr
519 // Removes the byte at the given index from a `GByteArray`.570 // Removes the byte at the given index from a `GByteArray`.
520 // The following bytes are moved down one place.571 // The following bytes are moved down one place.
521 func ByteArrayRemoveIndex(ArrayVar []byte, IndexVar uint) uintptr {572 func ByteArrayRemoveIndex(ArrayVar []byte, IndexVar uint) uintptr {
573+ core.LazyRegister(&xByteArrayRemoveIndex, "GLIB", "g_byte_array_remove_index", false)
574+
522 cret := xByteArrayRemoveIndex(ArrayVar, IndexVar)575 cret := xByteArrayRemoveIndex(ArrayVar, IndexVar)
523 return cret576 return cret
524 }577 }
@@ -530,6 +583,8 @@ var xByteArrayRemoveIndexFast func([]byte, uint) uintptr
530 // does not preserve the order of the `GByteArray`. But it is faster583 // does not preserve the order of the `GByteArray`. But it is faster
531 // than [func@GLib.ByteArray.remove_index].584 // than [func@GLib.ByteArray.remove_index].
532 func ByteArrayRemoveIndexFast(ArrayVar []byte, IndexVar uint) uintptr {585 func ByteArrayRemoveIndexFast(ArrayVar []byte, IndexVar uint) uintptr {
586+ core.LazyRegister(&xByteArrayRemoveIndexFast, "GLIB", "g_byte_array_remove_index_fast", false)
587+
533 cret := xByteArrayRemoveIndexFast(ArrayVar, IndexVar)588 cret := xByteArrayRemoveIndexFast(ArrayVar, IndexVar)
534 return cret589 return cret
535 }590 }
@@ -539,6 +594,8 @@ var xByteArrayRemoveRange func([]byte, uint, uint) uintptr
539 // Removes the given number of bytes starting at the given index from a594 // Removes the given number of bytes starting at the given index from a
540 // `GByteArray`. The following elements are moved to close the gap.595 // `GByteArray`. The following elements are moved to close the gap.
541 func ByteArrayRemoveRange(ArrayVar []byte, IndexVar uint, LengthVar uint) uintptr {596 func ByteArrayRemoveRange(ArrayVar []byte, IndexVar uint, LengthVar uint) uintptr {
597+ core.LazyRegister(&xByteArrayRemoveRange, "GLIB", "g_byte_array_remove_range", false)
598+
542 cret := xByteArrayRemoveRange(ArrayVar, IndexVar, LengthVar)599 cret := xByteArrayRemoveRange(ArrayVar, IndexVar, LengthVar)
543 return cret600 return cret
544 }601 }
@@ -547,6 +604,8 @@ var xByteArraySetSize func([]byte, uint) uintptr
547 604
548 // Sets the size of the `GByteArray`, expanding it if necessary.605 // Sets the size of the `GByteArray`, expanding it if necessary.
549 func ByteArraySetSize(ArrayVar []byte, LengthVar uint) uintptr {606 func ByteArraySetSize(ArrayVar []byte, LengthVar uint) uintptr {
607+ core.LazyRegister(&xByteArraySetSize, "GLIB", "g_byte_array_set_size", false)
608+
550 cret := xByteArraySetSize(ArrayVar, LengthVar)609 cret := xByteArraySetSize(ArrayVar, LengthVar)
551 return cret610 return cret
552 }611 }
@@ -558,6 +617,8 @@ var xByteArraySizedNew func(uint) uintptr
558 // bytes to the array. Note however that the size of the array is still617 // bytes to the array. Note however that the size of the array is still
559 // 0.618 // 0.
560 func ByteArraySizedNew(ReservedSizeVar uint) uintptr {619 func ByteArraySizedNew(ReservedSizeVar uint) uintptr {
620+ core.LazyRegister(&xByteArraySizedNew, "GLIB", "g_byte_array_sized_new", false)
621+
561 cret := xByteArraySizedNew(ReservedSizeVar)622 cret := xByteArraySizedNew(ReservedSizeVar)
562 return cret623 return cret
563 }624 }
@@ -575,6 +636,8 @@ var xByteArraySort func([]byte, uintptr)
575 // if two elements would otherwise compare equal, compares them by636 // if two elements would otherwise compare equal, compares them by
576 // their addresses.637 // their addresses.
577 func ByteArraySort(ArrayVar []byte, CompareFuncVar *CompareFunc) {638 func ByteArraySort(ArrayVar []byte, CompareFuncVar *CompareFunc) {
639+ core.LazyRegister(&xByteArraySort, "GLIB", "g_byte_array_sort", false)
640+
578 xByteArraySort(ArrayVar, NewCallback(CompareFuncVar))641 xByteArraySort(ArrayVar, NewCallback(CompareFuncVar))
579 }642 }
580 643
@@ -583,6 +646,8 @@ var xByteArraySortWithData func([]byte, uintptr, uintptr)
583 // Like [func@GLib.ByteArray.sort], but the comparison function takes an extra646 // Like [func@GLib.ByteArray.sort], but the comparison function takes an extra
584 // user data argument.647 // user data argument.
585 func ByteArraySortWithData(ArrayVar []byte, CompareFuncVar *CompareDataFunc, UserDataVar uintptr) {648 func ByteArraySortWithData(ArrayVar []byte, CompareFuncVar *CompareDataFunc, UserDataVar uintptr) {
649+ core.LazyRegister(&xByteArraySortWithData, "GLIB", "g_byte_array_sort_with_data", false)
650+
586 xByteArraySortWithData(ArrayVar, NewCallback(CompareFuncVar), UserDataVar)651 xByteArraySortWithData(ArrayVar, NewCallback(CompareFuncVar), UserDataVar)
587 }652 }
588 653
@@ -592,6 +657,8 @@ var xByteArraySteal func([]byte, *uint) uintptr
592 // the underlying array is preserved for use elsewhere and returned657 // the underlying array is preserved for use elsewhere and returned
593 // to the caller.658 // to the caller.
594 func ByteArraySteal(ArrayVar []byte, LenVar *uint) uintptr {659 func ByteArraySteal(ArrayVar []byte, LenVar *uint) uintptr {
660+ core.LazyRegister(&xByteArraySteal, "GLIB", "g_byte_array_steal", false)
661+
595 cret := xByteArraySteal(ArrayVar, LenVar)662 cret := xByteArraySteal(ArrayVar, LenVar)
596 return cret663 return cret
597 }664 }
@@ -603,6 +670,8 @@ var xByteArrayUnref func([]byte)
603 // released. This function is thread-safe and may be called from any670 // released. This function is thread-safe and may be called from any
604 // thread.671 // thread.
605 func ByteArrayUnref(ArrayVar []byte) {672 func ByteArrayUnref(ArrayVar []byte) {
673+ core.LazyRegister(&xByteArrayUnref, "GLIB", "g_byte_array_unref", false)
674+
606 xByteArrayUnref(ArrayVar)675 xByteArrayUnref(ArrayVar)
607 }676 }
608 677
@@ -617,6 +686,8 @@ var xPtrArrayFind func([]uintptr, uintptr, *uint) bool
617 // checks, such as string comparisons, use686 // checks, such as string comparisons, use
618 // [func@GLib.PtrArray.find_with_equal_func].687 // [func@GLib.PtrArray.find_with_equal_func].
619 func PtrArrayFind(HaystackVar []uintptr, NeedleVar uintptr, IndexVar *uint) bool {688 func PtrArrayFind(HaystackVar []uintptr, NeedleVar uintptr, IndexVar *uint) bool {
689+ core.LazyRegister(&xPtrArrayFind, "GLIB", "g_ptr_array_find", false)
690+
620 cret := xPtrArrayFind(HaystackVar, NeedleVar, IndexVar)691 cret := xPtrArrayFind(HaystackVar, NeedleVar, IndexVar)
621 return cret692 return cret
622 }693 }
@@ -633,6 +704,8 @@ var xPtrArrayFindWithEqualFunc func([]uintptr, uintptr, uintptr, *uint) bool
633 // and @needle as its second parameter. If @equal_func is `NULL`, pointer704 // and @needle as its second parameter. If @equal_func is `NULL`, pointer
634 // equality is used.705 // equality is used.
635 func PtrArrayFindWithEqualFunc(HaystackVar []uintptr, NeedleVar uintptr, EqualFuncVar *EqualFunc, IndexVar *uint) bool {706 func PtrArrayFindWithEqualFunc(HaystackVar []uintptr, NeedleVar uintptr, EqualFuncVar *EqualFunc, IndexVar *uint) bool {
707+ core.LazyRegister(&xPtrArrayFindWithEqualFunc, "GLIB", "g_ptr_array_find_with_equal_func", false)
708+
636 cret := xPtrArrayFindWithEqualFunc(HaystackVar, NeedleVar, NewCallbackNullable(EqualFuncVar), IndexVar)709 cret := xPtrArrayFindWithEqualFunc(HaystackVar, NeedleVar, NewCallbackNullable(EqualFuncVar), IndexVar)
637 return cret710 return cret
638 }711 }
@@ -657,6 +730,8 @@ var xPtrArrayNewFromArray func([]uintptr, uint, uintptr, uintptr, uintptr) uintp
657 // `GPtrArray` stores the length of its data in `guint`, which may be shorter730 // `GPtrArray` stores the length of its data in `guint`, which may be shorter
658 // than `gsize`.731 // than `gsize`.
659 func PtrArrayNewFromArray(DataVar []uintptr, LenVar uint, CopyFuncVar *CopyFunc, CopyFuncUserDataVar uintptr, ElementFreeFuncVar *DestroyNotify) uintptr {732 func PtrArrayNewFromArray(DataVar []uintptr, LenVar uint, CopyFuncVar *CopyFunc, CopyFuncUserDataVar uintptr, ElementFreeFuncVar *DestroyNotify) uintptr {
733+ core.LazyRegister(&xPtrArrayNewFromArray, "GLIB", "g_ptr_array_new_from_array", false)
734+
660 cret := xPtrArrayNewFromArray(DataVar, LenVar, NewCallbackNullable(CopyFuncVar), CopyFuncUserDataVar, NewCallbackNullable(ElementFreeFuncVar))735 cret := xPtrArrayNewFromArray(DataVar, LenVar, NewCallbackNullable(CopyFuncVar), CopyFuncUserDataVar, NewCallbackNullable(ElementFreeFuncVar))
661 return cret736 return cret
662 }737 }
@@ -677,6 +752,8 @@ var xPtrArrayNewFromNullTerminatedArray func([]uintptr, uintptr, uintptr, uintpt
677 // elements. `GPtrArray` stores the length of its data in `guint`, which may be752 // elements. `GPtrArray` stores the length of its data in `guint`, which may be
678 // shorter than `gsize`.753 // shorter than `gsize`.
679 func PtrArrayNewFromNullTerminatedArray(DataVar []uintptr, CopyFuncVar *CopyFunc, CopyFuncUserDataVar uintptr, ElementFreeFuncVar *DestroyNotify) uintptr {754 func PtrArrayNewFromNullTerminatedArray(DataVar []uintptr, CopyFuncVar *CopyFunc, CopyFuncUserDataVar uintptr, ElementFreeFuncVar *DestroyNotify) uintptr {
755+ core.LazyRegister(&xPtrArrayNewFromNullTerminatedArray, "GLIB", "g_ptr_array_new_from_null_terminated_array", false)
756+
680 cret := xPtrArrayNewFromNullTerminatedArray(DataVar, NewCallbackNullable(CopyFuncVar), CopyFuncUserDataVar, NewCallbackNullable(ElementFreeFuncVar))757 cret := xPtrArrayNewFromNullTerminatedArray(DataVar, NewCallbackNullable(CopyFuncVar), CopyFuncUserDataVar, NewCallbackNullable(ElementFreeFuncVar))
681 return cret758 return cret
682 }759 }
@@ -700,6 +777,8 @@ var xPtrArrayNewTake func([]uintptr, uint, uintptr) uintptr
700 // `GPtrArray` stores the length of its data in `guint`, which may be shorter777 // `GPtrArray` stores the length of its data in `guint`, which may be shorter
701 // than `gsize`.778 // than `gsize`.
702 func PtrArrayNewTake(DataVar []uintptr, LenVar uint, ElementFreeFuncVar *DestroyNotify) uintptr {779 func PtrArrayNewTake(DataVar []uintptr, LenVar uint, ElementFreeFuncVar *DestroyNotify) uintptr {
780+ core.LazyRegister(&xPtrArrayNewTake, "GLIB", "g_ptr_array_new_take", false)
781+
703 cret := xPtrArrayNewTake(DataVar, LenVar, NewCallbackNullable(ElementFreeFuncVar))782 cret := xPtrArrayNewTake(DataVar, LenVar, NewCallbackNullable(ElementFreeFuncVar))
704 return cret783 return cret
705 }784 }
@@ -726,6 +805,8 @@ var xPtrArrayNewTakeNullTerminated func([]uintptr, uintptr) uintptr
726 // [`G_MAXUINT`](types.html#guint). `GPtrArray` stores the length of its data805 // [`G_MAXUINT`](types.html#guint). `GPtrArray` stores the length of its data
727 // in `guint`, which may be shorter than `gsize`.806 // in `guint`, which may be shorter than `gsize`.
728 func PtrArrayNewTakeNullTerminated(DataVar []uintptr, ElementFreeFuncVar *DestroyNotify) uintptr {807 func PtrArrayNewTakeNullTerminated(DataVar []uintptr, ElementFreeFuncVar *DestroyNotify) uintptr {
808+ core.LazyRegister(&xPtrArrayNewTakeNullTerminated, "GLIB", "g_ptr_array_new_take_null_terminated", false)
809+
729 cret := xPtrArrayNewTakeNullTerminated(DataVar, NewCallbackNullable(ElementFreeFuncVar))810 cret := xPtrArrayNewTakeNullTerminated(DataVar, NewCallbackNullable(ElementFreeFuncVar))
730 return cret811 return cret
731 }812 }
@@ -733,62 +814,4 @@ func PtrArrayNewTakeNullTerminated(DataVar []uintptr, ElementFreeFuncVar *Destro
733 func init() {814 func init() {
734 core.SetPackageName("GLIB", "glib-2.0")815 core.SetPackageName("GLIB", "glib-2.0")
735 core.SetSharedLibraries("GLIB", []string{"libgobject-2.0.so.0", "libglib-2.0.so.0", "libgobject-2.0.0.dylib", "libglib-2.0.0.dylib"})816 core.SetSharedLibraries("GLIB", []string{"libgobject-2.0.so.0", "libglib-2.0.so.0", "libgobject-2.0.0.dylib", "libglib-2.0.0.dylib"})
736- var libs []uintptr
737- for _, libPath := range core.GetPaths("GLIB") {
738- lib, err := purego.Dlopen(libPath, purego.RTLD_NOW|purego.RTLD_GLOBAL)
739- if err != nil {
740- panic(err)
741- }
742- libs = append(libs, lib)
743- }
744-
745- core.PuregoSafeRegister(&xArrayNewTake, libs, "g_array_new_take")
746- core.PuregoSafeRegister(&xArrayNewTakeZeroTerminated, libs, "g_array_new_take_zero_terminated")
747- core.PuregoSafeRegister(&xByteArrayAppend, libs, "g_byte_array_append")
748- core.PuregoSafeRegister(&xByteArrayFree, libs, "g_byte_array_free")
749- core.PuregoSafeRegister(&xByteArrayFreeToBytes, libs, "g_byte_array_free_to_bytes")
750- core.PuregoSafeRegister(&xByteArrayNew, libs, "g_byte_array_new")
751- core.PuregoSafeRegister(&xByteArrayNewTake, libs, "g_byte_array_new_take")
752- core.PuregoSafeRegister(&xByteArrayPrepend, libs, "g_byte_array_prepend")
753- core.PuregoSafeRegister(&xByteArrayRef, libs, "g_byte_array_ref")
754- core.PuregoSafeRegister(&xByteArrayRemoveIndex, libs, "g_byte_array_remove_index")
755- core.PuregoSafeRegister(&xByteArrayRemoveIndexFast, libs, "g_byte_array_remove_index_fast")
756- core.PuregoSafeRegister(&xByteArrayRemoveRange, libs, "g_byte_array_remove_range")
757- core.PuregoSafeRegister(&xByteArraySetSize, libs, "g_byte_array_set_size")
758- core.PuregoSafeRegister(&xByteArraySizedNew, libs, "g_byte_array_sized_new")
759- core.PuregoSafeRegister(&xByteArraySort, libs, "g_byte_array_sort")
760- core.PuregoSafeRegister(&xByteArraySortWithData, libs, "g_byte_array_sort_with_data")
761- core.PuregoSafeRegister(&xByteArraySteal, libs, "g_byte_array_steal")
762- core.PuregoSafeRegister(&xByteArrayUnref, libs, "g_byte_array_unref")
763- core.PuregoSafeRegister(&xPtrArrayFind, libs, "g_ptr_array_find")
764- core.PuregoSafeRegister(&xPtrArrayFindWithEqualFunc, libs, "g_ptr_array_find_with_equal_func")
765- core.PuregoSafeRegister(&xPtrArrayNewFromArray, libs, "g_ptr_array_new_from_array")
766- core.PuregoSafeRegister(&xPtrArrayNewFromNullTerminatedArray, libs, "g_ptr_array_new_from_null_terminated_array")
767- core.PuregoSafeRegister(&xPtrArrayNewTake, libs, "g_ptr_array_new_take")
768- core.PuregoSafeRegister(&xPtrArrayNewTakeNullTerminated, libs, "g_ptr_array_new_take_null_terminated")
769-
770- core.PuregoSafeRegister(&xArrayGLibType, libs, "g_array_get_type")
771-
772- core.PuregoSafeRegister(&xByteArrayGLibType, libs, "g_byte_array_get_type")
773-
774- core.PuregoSafeRegister(&xBytesGLibType, libs, "g_bytes_get_type")
775-
776- core.PuregoSafeRegister(&xNewBytes, libs, "g_bytes_new")
777- core.PuregoSafeRegister(&xNewBytesFromBytes, libs, "g_bytes_new_from_bytes")
778- core.PuregoSafeRegister(&xNewBytesStatic, libs, "g_bytes_new_static")
779- core.PuregoSafeRegister(&xNewBytesTake, libs, "g_bytes_new_take")
780- core.PuregoSafeRegister(&xNewBytesWithFreeFunc, libs, "g_bytes_new_with_free_func")
781-
782- core.PuregoSafeRegister(&xBytesCompare, libs, "g_bytes_compare")
783- core.PuregoSafeRegister(&xBytesEqual, libs, "g_bytes_equal")
784- core.PuregoSafeRegister(&xBytesGetData, libs, "g_bytes_get_data")
785- core.PuregoSafeRegister(&xBytesGetRegion, libs, "g_bytes_get_region")
786- core.PuregoSafeRegister(&xBytesGetSize, libs, "g_bytes_get_size")
787- core.PuregoSafeRegister(&xBytesHash, libs, "g_bytes_hash")
788- core.PuregoSafeRegister(&xBytesRef, libs, "g_bytes_ref")
789- core.PuregoSafeRegister(&xBytesUnref, libs, "g_bytes_unref")
790- core.PuregoSafeRegister(&xBytesUnrefToArray, libs, "g_bytes_unref_to_array")
791- core.PuregoSafeRegister(&xBytesUnrefToData, libs, "g_bytes_unref_to_data")
792-
793- core.PuregoSafeRegister(&xPtrArrayGLibType, libs, "g_ptr_array_get_type")
794 }817 }
M vendor/github.com/bnema/puregotk/v4/glib/gasyncqueue.go +56 -39 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gatomic.go +43 -34 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gbacktrace.go +5 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gbase64.go +13 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gbitlock.go +23 -24 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gbookmarkfile.go +69 -61 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gcache.go +10 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gcharset.go +13 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gchecksum.go +23 -25 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gcompletion.go +14 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gconvert.go +25 -28 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gdataset.go +36 -28 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gdate.go +103 -65 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gdatetime.go +107 -66 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gdir.go +12 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/genviron.go +17 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gerror.go +30 -29 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gfileutils.go +45 -38 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/ggettext.go +13 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/ghash.go +81 -53 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/ghmac.go +21 -24 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/ghook.go +28 -26 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/ghostutils.go +11 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/giochannel.go +83 -67 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gkeyfile.go +72 -62 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/glib-types.go +4 -12 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/glist.go +2 -11 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gmain.go +181 -117 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gmappedfile.go +15 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gmarkup.go +51 -43 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gmem.go +44 -31 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gmessages.go +70 -45 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gnode.go +50 -35 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/goption.go +57 -43 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gpathbuf.go +26 -24 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gpattern.go +19 -23 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gpoll.go +3 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gprimes.go +3 -14 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gprintf.go +15 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gqsort.go +5 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gquark.go +13 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gqueue.go +84 -52 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/grand.go +33 -30 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/grcbox.go +29 -27 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/grefcount.go +17 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/grefstring.go +15 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gregex.go +72 -57 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/grel.go +20 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gscanner.go +40 -30 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gsequence.go +74 -49 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gshell.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gslice.go +17 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gslist.go +2 -11 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gspawn.go +12 -23 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gstdio.go +33 -27 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gstrfuncs.go +115 -71 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gstring.go +77 -51 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gstringchunk.go +10 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gstrvbuilder.go +19 -22 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gtestutils.go +132 -80 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gthread.go +146 -97 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gthreadpool.go +26 -25 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gtimer.go +18 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gtimezone.go +27 -26 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gtrashstack.go +8 -14 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gtree.go +63 -45 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gtypes.go +4 -12 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gunicode.go +132 -85 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/guri.go +63 -50 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gutils.go +62 -41 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/guuid.go +5 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gvariant-parser.go +3 -14 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gvariant.go +242 -143 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gvarianttype.go +63 -45 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/gversion.go +3 -14 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/glib/main.go +31 -28 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gmodule/gmodule.go +14 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gmodule/main.go +2 -11 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gobject/gbinding.go +14 -22 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gobject/gbindinggroup.go +11 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gobject/gboxed.go +6 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gobject/gclosure.go +37 -31 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gobject/genums.go +24 -22 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gobject/glib-types.go +2 -11 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gobject/gmarshal.go +45 -35 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gobject/gobject.go +116 -82 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gobject/gparam.go +54 -43 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gobject/gparamspecs.go +46 -79 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gobject/gsignal.go +79 -50 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gobject/gsignalgroup.go +21 -24 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gobject/gsourceclosure.go +4 -12 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gobject/gtype.go +136 -82 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gobject/gtypemodule.go +15 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gobject/gtypeplugin.go +26 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gobject/gvalue.go +141 -85 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gobject/gvaluearray.go +21 -23 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gobject/gvaluetypes.go +6 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gobject/main.go +10 -1 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gobject/more.go +8 -1 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/graphene/graphene-box.go +61 -44 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/graphene/graphene-euler.go +43 -34 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/graphene/graphene-frustum.go +21 -23 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/graphene/graphene-matrix.go +135 -80 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/graphene/graphene-plane.go +29 -27 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/graphene/graphene-point.go +23 -25 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/graphene/graphene-point3d.go +35 -31 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/graphene/graphene-quad.go +17 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/graphene/graphene-quaternion.go +49 -37 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/graphene/graphene-ray.go +37 -31 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/graphene/graphene-rect.go +67 -46 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/graphene/graphene-size.go +17 -22 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/graphene/graphene-sphere.go +27 -26 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/graphene/graphene-triangle.go +33 -29 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/graphene/graphene-vec2.go +53 -40 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/graphene/graphene-vec3.go +69 -48 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/graphene/graphene-vec4.go +69 -48 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskblendnode.go +6 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskblurnode.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskbordernode.go +8 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskbroadwayrenderer.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskcaironode.go +6 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskcairorenderer.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskclipnode.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskcolormatrixnode.go +7 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskcolornode.go +4 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskcomponenttransfer.go +3 -14 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskcomponenttransfernode.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskcompositenode.go +6 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskconicgradientnode.go +12 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskcontainernode.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskcopynode.go +3 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskcrossfadenode.go +6 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskdebugnode.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskenums.go +24 -1 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskfillnode.go +7 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskglrenderer.go +4 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskglshader.go +65 -50 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskglshadernode.go +8 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskinsetshadownode.go +14 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskisolationnode.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gsklineargradientnode.go +12 -22 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskmasknode.go +6 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskopacitynode.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskoutsetshadownode.go +14 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskpastenode.go +4 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskpath.go +4 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskpathpoint.go +19 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskradialgradientnode.go +18 -25 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskrenderer.go +12 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskrendernode.go +26 -29 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskrepeatnode.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskroundedclipnode.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskroundedrect.go +20 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskshadownode.go +7 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskstroke.go +3 -14 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskstrokenode.go +7 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gsksubsurfacenode.go +5 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gsktextnode.go +13 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gsktexturenode.go +3 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gsktexturescalenode.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gsktransform.go +3 -14 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gsktransformnode.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gsktypes.go +237 -153 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gsk/gskvulkanrenderer.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkaboutdialog.go +70 -51 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkaccelgroup.go +18 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkaccessible.go +159 -66 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkaccessiblehypertext.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkaccessiblerange.go +7 -0 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkaccessibletext.go +21 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkactionable.go +40 -23 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkactionbar.go +15 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkadjustment.go +32 -28 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkalertdialog.go +31 -29 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkappchooser.go +19 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkappchooserbutton.go +24 -25 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkappchooserdialog.go +8 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkappchooserwidget.go +26 -26 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkapplication.go +27 -29 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkapplicationwindow.go +11 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkaspectframe.go +21 -24 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkassistant.go +48 -43 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkatcontext.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkbinlayout.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkbitset.go +15 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkbookmarklist.go +14 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkboolfilter.go +9 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkborder.go +7 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkbox.go +28 -27 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkboxlayout.go +18 -22 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkbuildable.go +28 -28 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkbuilder.go +35 -41 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkbuilderlistitemfactory.go +8 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkbuilderscope.go +14 -23 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkbutton.go +28 -28 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcalendar.go +40 -33 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcellarea.go +87 -59 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcellareabox.go +10 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcellareacontext.go +20 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcelleditable.go +19 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcelllayout.go +68 -31 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcellrenderer.go +56 -42 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcellrendereraccel.go +3 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcellrenderercombo.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcellrendererpixbuf.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcellrendererprogress.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcellrendererspin.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcellrendererspinner.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcellrenderertext.go +4 -14 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcellrenderertoggle.go +14 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcellview.go +21 -26 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcenterbox.go +19 -24 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcenterlayout.go +23 -26 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcheckbutton.go +25 -26 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcolorbutton.go +11 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcolorchooser.go +33 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcolorchooserdialog.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcolorchooserwidget.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcolordialog.go +17 -22 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcolordialogbutton.go +9 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcolorutils.go +5 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcolumnview.go +47 -39 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcolumnviewcell.go +13 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcolumnviewcolumn.go +36 -33 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcolumnviewrow.go +26 -25 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcolumnviewsorter.go +7 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcombobox.go +51 -40 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcomboboxtext.go +21 -24 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkconstraint.go +24 -28 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkconstraintguide.go +22 -24 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkconstraintlayout.go +20 -27 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcsserror.go +4 -12 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcssprovider.go +18 -22 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcsssection.go +22 -24 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcustomfilter.go +4 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcustomlayout.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkcustomsorter.go +4 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkdebug.go +5 -14 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkdialog.go +21 -28 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkdialogerror.go +3 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkdirectorylist.go +21 -24 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkdragicon.go +8 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkdragsource.go +14 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkdrawingarea.go +12 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkdropcontrollermotion.go +7 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkdropdown.go +35 -34 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkdroptarget.go +22 -25 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkdroptargetasync.go +12 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkeditable.go +173 -65 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkeditablelabel.go +8 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkemojichooser.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkentry.go +119 -76 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkentrybuffer.go +22 -23 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkentrycompletion.go +45 -37 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkenums.go +70 -147 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkeventcontroller.go +24 -25 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkeventcontrollerfocus.go +6 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkeventcontrollerkey.go +9 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkeventcontrollerlegacy.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkeventcontrollermotion.go +6 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkeventcontrollerscroll.go +9 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkexpander.go +29 -29 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkexpression.go +50 -67 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkfilechooser.go +177 -68 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkfilechooserdialog.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkfilechoosernative.go +10 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkfilechooserwidget.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkfiledialog.go +54 -46 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkfilefilter.go +21 -24 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkfilelauncher.go +19 -24 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkfilter.go +9 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkfilterlistmodel.go +18 -23 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkfixed.go +14 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkfixedlayout.go +7 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkflattenlistmodel.go +6 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkflowbox.go +79 -57 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkfontbutton.go +19 -23 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkfontchooser.go +132 -51 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkfontchooserdialog.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkfontchooserwidget.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkfontdialog.go +32 -32 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkfontdialogbutton.go +30 -30 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkframe.go +16 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkgesture.go +33 -29 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkgestureclick.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkgesturedrag.go +6 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkgesturelongpress.go +6 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkgesturepan.go +6 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkgesturerotate.go +4 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkgesturesingle.go +17 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkgesturestylus.go +13 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkgestureswipe.go +4 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkgesturezoom.go +4 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkglarea.go +39 -32 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkgraphicsoffload.go +14 -22 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkgrid.go +45 -36 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkgridlayout.go +43 -37 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkgridview.go +30 -29 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkheaderbar.go +23 -25 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkiconpaintable.go +7 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkicontheme.go +34 -37 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkiconview.go +123 -78 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkimage.go +37 -37 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkimcontext.go +31 -26 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkimcontextsimple.go +6 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkimmulticontext.go +6 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkinfobar.go +32 -30 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkinscription.go +45 -37 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtklabel.go +98 -64 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtklayoutchild.go +3 -14 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtklayoutmanager.go +11 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtklevelbar.go +29 -28 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtklinkbutton.go +11 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtklistbase.go +7 -0 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtklistbox.go +88 -63 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtklistheader.go +11 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtklistitem.go +29 -27 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtklistitemfactory.go +7 -0 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkliststore.go +41 -34 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtklistview.go +29 -29 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtklockbutton.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkmain.go +16 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkmaplistmodel.go +9 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkmediacontrols.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkmediafile.go +18 -24 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkmediastream.go +69 -45 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkmenubutton.go +53 -41 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkmessagedialog.go +11 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkmountoperation.go +10 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkmultifilter.go +9 -22 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkmultiselection.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkmultisorter.go +6 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtknative.go +34 -24 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtknativedialog.go +20 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtknoselection.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtknotebook.go +87 -64 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtknumericsorter.go +9 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkorientable.go +12 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkoverlay.go +17 -22 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkoverlaylayout.go +11 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkpadcontroller.go +7 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkpagesetup.go +47 -40 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkpagesetupunixdialog.go +8 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkpaned.go +32 -30 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkpapersize.go +50 -39 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkpasswordentry.go +9 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkpasswordentrybuffer.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkpicture.go +39 -36 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkpopover.go +41 -33 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkpopoverbin.go +19 -24 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkpopovermenu.go +14 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkpopovermenubar.go +9 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkprintcontext.go +19 -23 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkprintdialog.go +36 -37 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkprinter.go +48 -40 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkprintjob.go +57 -44 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkprintoperation.go +65 -54 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkprintoperationpreview.go +19 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkprintsettings.go +145 -89 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkprintunixdialog.go +33 -31 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkprogressbar.go +28 -27 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkrange.go +44 -33 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkrecentmanager.go +65 -54 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkrender.go +24 -22 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkrevealer.go +20 -25 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkroot.go +19 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkscale.go +28 -27 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkscalebutton.go +20 -24 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkscrollable.go +61 -29 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkscrollbar.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkscrolledwindow.go +61 -49 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtksearchbar.go +18 -23 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtksearchentry.go +21 -24 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtksectionmodel.go +12 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkselectionfiltermodel.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkselectionmodel.go +75 -33 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkseparator.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtksettings.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkshortcut.go +13 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkshortcutaction.go +25 -47 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkshortcutcontroller.go +15 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkshortcutlabel.go +10 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkshortcutmanager.go +7 -0 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkshortcutsgroup.go +3 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkshortcutssection.go +3 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkshortcutsshortcut.go +8 -0 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkshortcutswindow.go +3 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkshortcuttrigger.go +34 -46 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkshow.go +5 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtksignallistitemfactory.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtksingleselection.go +18 -23 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtksizegroup.go +12 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtksizerequest.go +2 -11 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkslicelistmodel.go +13 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtksnapshot.go +112 -71 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtksorter.go +9 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtksortlistmodel.go +17 -23 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkspinbutton.go +56 -45 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkspinner.go +10 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkstack.go +68 -55 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkstacksidebar.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkstackswitcher.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkstatusbar.go +12 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkstringfilter.go +18 -24 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkstringlist.go +18 -26 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkstringsorter.go +14 -22 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkstylecontext.go +43 -35 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkstyleprovider.go +10 -1 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtksvg.go +41 -39 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkswitch.go +10 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtksymbolicpaintable.go +12 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktestatcontext.go +17 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktestutils.go +9 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktext.go +69 -49 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktextbuffer.go +138 -85 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktextchild.go +7 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktextiter.go +179 -104 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktextmark.go +13 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktexttag.go +8 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktexttagtable.go +11 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktextview.go +145 -92 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktogglebutton.go +12 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktooltip.go +15 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktreednd.go +34 -27 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktreeexpander.go +21 -25 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktreelistmodel.go +26 -32 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktreelistrowsorter.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktreemodel.go +261 -113 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktreemodelfilter.go +20 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktreemodelsort.go +17 -22 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktreeselection.go +40 -32 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktreesortable.go +40 -23 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktreestore.go +45 -36 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktreeview.go +176 -105 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktreeviewcolumn.go +102 -68 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtktypes.go +74 -53 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkurilauncher.go +11 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkversion.go +13 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkvideo.go +28 -30 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkviewport.go +11 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkvolumebutton.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkwidget.go +357 -207 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkwidgetpaintable.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkwindow.go +121 -79 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkwindowcontrols.go +16 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkwindowgroup.go +8 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/gtkwindowhandle.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/gtk/main.go +2 -11 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/javascriptcore/JSCClass.go +15 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/javascriptcore/JSCContext.go +32 -35 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/javascriptcore/JSCException.go +23 -27 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/javascriptcore/JSCOptions.go +32 -26 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/javascriptcore/JSCValue.go +93 -73 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/javascriptcore/JSCVersion.go +7 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/javascriptcore/JSCVirtualMachine.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/javascriptcore/JSCWeakValue.go +3 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/layershell/gtk4-layer-shell.go +52 -38 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/main.go +2 -11 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-attributes.go +160 -108 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-bidi-type.go +9 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-break.go +10 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-color.go +11 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-context.go +45 -37 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-coverage.go +16 -25 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-direction.go +10 -1 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-font.go +153 -112 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-fontmap.go +13 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-fontset-simple.go +6 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-fontset.go +6 -14 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-glyph-item.go +26 -27 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-glyph.go +32 -31 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-gravity.go +10 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-item.go +19 -23 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-language.go +6 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-layout.go +201 -131 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-markup.go +4 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-matrix.go +27 -25 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-renderer.go +39 -32 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-script.go +14 -22 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-tabs.go +34 -32 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-types.go +17 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/pango/pango-utils.go +38 -29 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-auth-basic.go +10 -1 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-auth-digest.go +10 -1 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-auth-domain-basic.go +4 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-auth-domain-digest.go +6 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-auth-domain.go +19 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-auth-manager.go +5 -14 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-auth-negotiate.go +3 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-auth-ntlm.go +10 -1 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-auth.go +32 -28 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-cache.go +16 -23 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-content-decoder.go +7 -0 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-content-sniffer.go +4 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-cookie-jar-db.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-cookie-jar-text.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-cookie-jar.go +29 -28 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-cookie.go +15 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-date-utils.go +5 -14 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-form.go +12 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-headers.go +30 -25 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-hsts-enforcer-db.go +2 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-hsts-enforcer.go +14 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-logger.go +13 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-message-body.go +30 -29 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-message-headers.go +68 -52 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-message.go +90 -64 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-multipart-input-stream.go +8 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-multipart.go +19 -22 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-server-message.go +42 -35 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-server.go +46 -40 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-session-feature.go +7 -0 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-session.go +74 -60 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-status.go +4 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-tld.go +6 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-types.go +113 -75 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-uri-utils.go +7 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-version.go +9 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-websocket-connection.go +39 -33 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-websocket-extension-deflate.go +7 -0 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-websocket-extension-manager.go +7 -0 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-websocket-extension.go +20 -25 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/soup/soup-websocket.go +13 -25 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitApplicationInfo.go +17 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitAuthenticationRequest.go +32 -31 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitAutomationSession.go +10 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitBackForwardList.go +17 -24 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitBackForwardListItem.go +9 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitClipboardPermissionRequest.go +11 -0 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitColorChooserRequest.go +13 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitContextMenu.go +31 -33 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitContextMenuActions.go +13 -1 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitContextMenuItem.go +20 -28 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitCookieManager.go +27 -33 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitCredential.go +23 -24 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitDeviceInfoPermissionRequest.go +11 -0 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitDownload.go +22 -26 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitEditorState.go +16 -23 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitError.go +32 -39 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitFaviconDatabase.go +13 -23 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitFeature.go +29 -28 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitFileChooserRequest.go +14 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitFindController.go +21 -26 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitFormSubmissionRequest.go +7 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitGeolocationManager.go +26 -30 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitGeolocationPermissionRequest.go +11 -0 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitHitTestResult.go +28 -29 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitImage.go +11 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitInputMethodContext.go +38 -38 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitMediaKeySystemPermissionRequest.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitMemoryPressureSettings.go +29 -25 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitNavigationAction.go +21 -22 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitNavigationPolicyDecision.go +5 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitNetworkProxySettings.go +12 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitNetworkSession.go +34 -36 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitNotification.go +15 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitNotificationPermissionRequest.go +11 -0 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitOptionMenu.go +14 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitOptionMenuItem.go +19 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitPermissionRequest.go +14 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitPermissionStateQuery.go +14 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitPointerLockPermissionRequest.go +11 -0 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitPolicyDecision.go +11 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitPrintOperation.go +15 -25 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitResponsePolicyDecision.go +9 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitScriptDialog.go +20 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitSecurityManager.go +27 -27 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitSecurityOrigin.go +19 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitSettings.go +255 -146 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitURIRequest.go +12 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitURIResponse.go +15 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitURISchemeRequest.go +21 -25 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitURISchemeResponse.go +10 -20 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitURIUtilities.go +5 -13 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitUserContent.go +30 -36 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitUserContentFilterStore.go +22 -28 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitUserContentManager.go +39 -37 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitUserMediaPermissionRequest.go +9 -18 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitUserMessage.go +15 -26 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitVersion.go +9 -15 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitWebContext.go +41 -40 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitWebExtension.go +50 -41 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitWebExtensionMatchPattern.go +34 -31 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitWebInspector.go +20 -24 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitWebResource.go +9 -19 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitWebView.go +159 -118 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitWebViewBase.go +11 -0 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitWebViewGtk4.go +13 -1 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitWebViewSessionState.go +11 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitWebsiteData.go +13 -16 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitWebsiteDataAccessPermissionRequest.go +7 -17 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitWebsiteDataManager.go +47 -46 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitWebsitePolicies.go +8 -21 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitWindowProperties.go +19 -23 collapsed to keep the page light
M vendor/github.com/bnema/puregotk/v4/webkit/WebKitXRPermissionRequest.go +21 -27 collapsed to keep the page light
M vendor/modules.txt +5 -5 collapsed to keep the page light

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 8

Tags 42

↑↓ moveenter openesc close