Merge pull request #344 from bnema/chore/upstream-foundations
chore(deps): integrate approved upstream foundations
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`, | |||
| 46 | 46 | `integrated-gpu`, `discrete-gpu`, `hybrid-gpu`, `virtual-gpu`, or `unknown-gpu`; | |
| 47 | 47 | do not use a device model or other identifier. Publish only the seven reviewed | |
| 48 | 48 | 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 reviewed | 47 | 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 and | 48 | 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 | 49 | + | 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 ( | |||
| 6 | 6 | github.com/a-h/templ v0.3.1020 | |
| 7 | 7 | github.com/andybalholm/brotli v1.2.2 | |
| 8 | 8 | 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 | |
| 14 | 14 | github.com/charmbracelet/bubbles v1.0.0 | |
| 15 | 15 | github.com/charmbracelet/bubbletea v1.3.10 | |
| 16 | 16 | github.com/charmbracelet/lipgloss v1.1.0 | |
| @@ -6,11 +6,11 @@ require ( | |||||
| 6 | github.com/a-h/templ v0.3.1020 | 6 | github.com/a-h/templ v0.3.1020 | ||
| 7 | github.com/andybalholm/brotli v1.2.2 | 7 | github.com/andybalholm/brotli v1.2.2 | ||
| 8 | github.com/bnema/purego v0.11.0-bnema.4 | 8 | github.com/bnema/purego v0.11.0-bnema.4 | ||
| 9 | - | github.com/bnema/purego-cef v0.13.3 | 9 | + | github.com/bnema/purego-cef v0.13.4-0.20260714140305-f0b7414af67e |
| 10 | - | github.com/bnema/purego-cef2gtk v0.8.4 | 10 | + | github.com/bnema/purego-cef2gtk v0.8.4-0.20260714160309-bbd397409ebe |
| 11 | - | github.com/bnema/purego-pipewire v0.1.4 | 11 | + | github.com/bnema/purego-pipewire v0.1.5-0.20260714124450-6504b9cdf02a |
| 12 | - | github.com/bnema/purego-sqlite v0.1.3 | 12 | + | github.com/bnema/purego-sqlite v0.1.4-0.20260714131321-3614fe683b9c |
| 13 | - | github.com/bnema/puregotk v0.7.0 | 13 | + | github.com/bnema/puregotk v0.7.1-0.20260714170452-0b6b9b901234 |
| 14 | github.com/charmbracelet/bubbles v1.0.0 | 14 | github.com/charmbracelet/bubbles v1.0.0 | ||
| 15 | github.com/charmbracelet/bubbletea v1.3.10 | 15 | github.com/charmbracelet/bubbletea v1.3.10 | ||
| 16 | github.com/charmbracelet/lipgloss v1.1.0 | 16 | 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 | |||
| 2 | 2 | ||
| 3 | 3 | import ( | |
| 4 | 4 | "encoding/json" | |
| 5 | + | "fmt" | |
| 5 | 6 | "os" | |
| 6 | 7 | "os/exec" | |
| 7 | 8 | "path/filepath" | |
| @@ -143,8 +144,9 @@ func TestFirstPresentationCollectorSanitizesMachineLocalValues(t *testing.T) { | |||
| 143 | 144 | } | |
| 144 | 145 | for _, required := range []string{ | |
| 145 | 146 | `"measured_source_revision"`, | |
| 147 | + | `"version": "v0.8.4-0.20260714160309-bbd397409ebe"`, | |
| 146 | 148 | `"tag": "v0.8.4"`, | |
| 147 | - | `"revision": "f217ece342dea3ef2a3f98671fcd16a39ad0037d"`, | |
| 149 | + | `"revision": "bbd397409ebed75a5979c1e4566a2ef319f6a484"`, | |
| 148 | 150 | } { | |
| 149 | 151 | require.Contains(t, artifacts.String(), required) | |
| 150 | 152 | } | |
| @@ -166,6 +168,135 @@ func TestFirstPresentationCollectorSanitizesMachineLocalValues(t *testing.T) { | |||
| 166 | 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 | 300 | func TestFirstPresentationCollectorDefaultsToXDGStateEvidenceDirectory(t *testing.T) { | |
| 170 | 301 | repoRoot, err := filepath.Abs(filepath.Join("..", "..")) | |
| 171 | 302 | 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 | |||
| 31 | 31 | fi | |
| 32 | 32 | readonly output | |
| 33 | 33 | 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 | + | } | |
| 36 | 106 | ||
| 37 | 107 | # The artifact destination is caller-controlled. Never empty or recursively | |
| 38 | 108 | # clear it: collection only writes to a newly-created directory whose parent is | |
| @@ -66,10 +136,9 @@ prepare_output | |||
| 66 | 136 | [[ -x "$binary" ]] || { echo "first-presentation: executable not found: $binary" >&2; exit 2; } | |
| 67 | 137 | [[ -d "$runtime" ]] || { echo "first-presentation: CEF runtime not found: $runtime" >&2; exit 2; } | |
| 68 | 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" ]] || { | |
| 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 | |
| 73 | 142 | ||
| 74 | 143 | # Raw logs and temporary XDG homes may contain machine-local paths. Keep them | |
| 75 | 144 | # outside the committed artifact directory and always remove them. | |
| @@ -80,9 +149,9 @@ cleanup_work_root() { | |||
| 80 | 149 | rm -rf -- "$work_root" | |
| 81 | 150 | } | |
| 82 | 151 | 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 | 153 | 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 | 155 | with open(binary, "rb") as candidate: | |
| 87 | 156 | binary_sha256 = hashlib.file_digest(candidate, "sha256").hexdigest() | |
| 88 | 157 | ||
| @@ -102,7 +171,7 @@ json.dump({ | |||
| 102 | 171 | "binary": {"label": "dumber", "sha256": binary_sha256}, | |
| 103 | 172 | "timeout_seconds": int(timeout), | |
| 104 | 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 | 175 | "comparison": {"os": os_label, "architecture": architecture, "display_protocol": display_protocol, "machine_gpu_profile": gpu_profile}, | |
| 107 | 176 | "render_configuration": {"backend": "gdk-dmabuf", "buffer_sharing": "dmabuf", "renderer": "vulkan"} | |
| 108 | 177 | }, open(path, "w"), indent=2, sort_keys=True) | |
| @@ -31,8 +31,78 @@ else | |||||
| 31 | fi | 31 | fi | ||
| 32 | readonly output | 32 | 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 recursively | 107 | # The artifact destination is caller-controlled. Never empty or recursively | ||
| 38 | # clear it: collection only writes to a newly-created directory whose parent is | 108 | # 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" >&2 | 140 | + | IFS=$'\t' read -r upstream_version upstream_tag upstream_revision <<<"$upstream_provenance" |
| 71 | - | exit 2 | 141 | + | readonly upstream_version upstream_tag upstream_revision |
| 72 | - | } | |||
| 73 | 142 | ||||
| 74 | # Raw logs and temporary XDG homes may contain machine-local paths. Keep them | 143 | # 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 EXIT | 151 | 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, sys | 153 | 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 collapsed to keep the page light
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
| @@ -603,6 +603,7 @@ type TextBuffer struct { | |||
| 603 | 603 | var xTextBufferGLibType func() types.GType | |
| 604 | 604 | ||
| 605 | 605 | func TextBufferGLibType() types.GType { | |
| 606 | + | core.LazyRegister(&xTextBufferGLibType, "GTK", "gtk_text_buffer_get_type", false) | |
| 606 | 607 | return xTextBufferGLibType() | |
| 607 | 608 | } | |
| 608 | 609 | ||
| @@ -616,6 +617,7 @@ var xNewTextBuffer func(uintptr) uintptr | |||
| 616 | 617 | ||
| 617 | 618 | // Creates a new text buffer. | |
| 618 | 619 | func NewTextBuffer(TableVar *TextTagTable) *TextBuffer { | |
| 620 | + | core.LazyRegister(&xNewTextBuffer, "GTK", "gtk_text_buffer_new", false) | |
| 619 | 621 | var cls *TextBuffer | |
| 620 | 622 | ||
| 621 | 623 | cret := xNewTextBuffer(TableVar.GoPointer()) | |
| @@ -642,6 +644,8 @@ var xTextBufferAddCommitNotify func(uintptr, TextBufferNotifyFlags, uintptr, uin | |||
| 642 | 644 | // [signal@Gtk.TextBuffer::delete-range] signals to avoid ordering issues with | |
| 643 | 645 | // other signal handlers which may further modify the [type@Gtk.TextBuffer]. | |
| 644 | 646 | func (x *TextBuffer) AddCommitNotify(FlagsVar TextBufferNotifyFlags, CommitNotifyVar *TextBufferCommitNotify, UserDataVar uintptr, DestroyVar *glib.DestroyNotify) uint { | |
| 647 | + | core.LazyRegister(&xTextBufferAddCommitNotify, "GTK", "gtk_text_buffer_add_commit_notify", false) | |
| 648 | + | ||
| 645 | 649 | cret := xTextBufferAddCommitNotify(x.GoPointer(), FlagsVar, glib.NewCallbackNullable(CommitNotifyVar), UserDataVar, glib.NewCallbackNullable(DestroyVar)) | |
| 646 | 650 | return cret | |
| 647 | 651 | } | |
| @@ -657,6 +661,8 @@ var xTextBufferAddMark func(uintptr, uintptr, *TextIter) | |||
| 657 | 661 | // Emits the [signal@Gtk.TextBuffer::mark-set] signal as notification | |
| 658 | 662 | // of the mark's initial placement. | |
| 659 | 663 | func (x *TextBuffer) AddMark(MarkVar *TextMark, WhereVar *TextIter) { | |
| 664 | + | core.LazyRegister(&xTextBufferAddMark, "GTK", "gtk_text_buffer_add_mark", false) | |
| 665 | + | ||
| 660 | 666 | xTextBufferAddMark(x.GoPointer(), MarkVar.GoPointer(), WhereVar) | |
| 661 | 667 | } | |
| 662 | 668 | ||
| @@ -668,6 +674,8 @@ var xTextBufferAddSelectionClipboard func(uintptr, uintptr) | |||
| 668 | 674 | // In most cases, @clipboard will be the `GdkClipboard` returned by | |
| 669 | 675 | // [method@Gtk.Widget.get_primary_clipboard] for a view of @buffer. | |
| 670 | 676 | func (x *TextBuffer) AddSelectionClipboard(ClipboardVar *gdk.Clipboard) { | |
| 677 | + | core.LazyRegister(&xTextBufferAddSelectionClipboard, "GTK", "gtk_text_buffer_add_selection_clipboard", false) | |
| 678 | + | ||
| 671 | 679 | xTextBufferAddSelectionClipboard(x.GoPointer(), ClipboardVar.GoPointer()) | |
| 672 | 680 | } | |
| 673 | 681 | ||
| @@ -679,6 +687,8 @@ var xTextBufferApplyTag func(uintptr, uintptr, *TextIter, *TextIter) | |||
| 679 | 687 | // @tag to the given range. @start and @end do | |
| 680 | 688 | // not have to be in order. | |
| 681 | 689 | func (x *TextBuffer) ApplyTag(TagVar *TextTag, StartVar *TextIter, EndVar *TextIter) { | |
| 690 | + | core.LazyRegister(&xTextBufferApplyTag, "GTK", "gtk_text_buffer_apply_tag", false) | |
| 691 | + | ||
| 682 | 692 | xTextBufferApplyTag(x.GoPointer(), TagVar.GoPointer(), StartVar, EndVar) | |
| 683 | 693 | } | |
| 684 | 694 | ||
| @@ -690,6 +700,8 @@ var xTextBufferApplyTagByName func(uintptr, string, *TextIter, *TextIter) | |||
| 690 | 700 | // tag table to get a `GtkTextTag`, then calls | |
| 691 | 701 | // [method@Gtk.TextBuffer.apply_tag]. | |
| 692 | 702 | func (x *TextBuffer) ApplyTagByName(NameVar string, StartVar *TextIter, EndVar *TextIter) { | |
| 703 | + | core.LazyRegister(&xTextBufferApplyTagByName, "GTK", "gtk_text_buffer_apply_tag_by_name", false) | |
| 704 | + | ||
| 693 | 705 | xTextBufferApplyTagByName(x.GoPointer(), NameVar, StartVar, EndVar) | |
| 694 | 706 | } | |
| 695 | 707 | ||
| @@ -707,6 +719,8 @@ var xTextBufferBackspace func(uintptr, *TextIter, bool, bool) bool | |||
| 707 | 719 | // invalid after calling this function; however, the @iter will be | |
| 708 | 720 | // re-initialized to point to the location where text was deleted. | |
| 709 | 721 | func (x *TextBuffer) Backspace(IterVar *TextIter, InteractiveVar bool, DefaultEditableVar bool) bool { | |
| 722 | + | core.LazyRegister(&xTextBufferBackspace, "GTK", "gtk_text_buffer_backspace", false) | |
| 723 | + | ||
| 710 | 724 | cret := xTextBufferBackspace(x.GoPointer(), IterVar, InteractiveVar, DefaultEditableVar) | |
| 711 | 725 | return cret | |
| 712 | 726 | } | |
| @@ -725,6 +739,8 @@ var xTextBufferBeginIrreversibleAction func(uintptr) | |||
| 725 | 739 | // You may nest calls to gtk_text_buffer_begin_irreversible_action() | |
| 726 | 740 | // and gtk_text_buffer_end_irreversible_action() pairs. | |
| 727 | 741 | func (x *TextBuffer) BeginIrreversibleAction() { | |
| 742 | + | core.LazyRegister(&xTextBufferBeginIrreversibleAction, "GTK", "gtk_text_buffer_begin_irreversible_action", false) | |
| 743 | + | ||
| 728 | 744 | xTextBufferBeginIrreversibleAction(x.GoPointer()) | |
| 729 | 745 | } | |
| 730 | 746 | ||
| @@ -749,6 +765,8 @@ var xTextBufferBeginUserAction func(uintptr) | |||
| 749 | 765 | // so there's no need to add extra calls if you user action consists | |
| 750 | 766 | // solely of a single call to one of those functions. | |
| 751 | 767 | func (x *TextBuffer) BeginUserAction() { | |
| 768 | + | core.LazyRegister(&xTextBufferBeginUserAction, "GTK", "gtk_text_buffer_begin_user_action", false) | |
| 769 | + | ||
| 752 | 770 | xTextBufferBeginUserAction(x.GoPointer()) | |
| 753 | 771 | } | |
| 754 | 772 | ||
| @@ -756,6 +774,8 @@ var xTextBufferCopyClipboard func(uintptr, uintptr) | |||
| 756 | 774 | ||
| 757 | 775 | // Copies the currently-selected text to a clipboard. | |
| 758 | 776 | func (x *TextBuffer) CopyClipboard(ClipboardVar *gdk.Clipboard) { | |
| 777 | + | core.LazyRegister(&xTextBufferCopyClipboard, "GTK", "gtk_text_buffer_copy_clipboard", false) | |
| 778 | + | ||
| 759 | 779 | xTextBufferCopyClipboard(x.GoPointer(), ClipboardVar.GoPointer()) | |
| 760 | 780 | } | |
| 761 | 781 | ||
| @@ -770,6 +790,7 @@ var xTextBufferCreateChildAnchor func(uintptr, *TextIter) uintptr | |||
| 770 | 790 | // The new anchor is owned by the buffer; no reference count is | |
| 771 | 791 | // returned to the caller of this function. | |
| 772 | 792 | func (x *TextBuffer) CreateChildAnchor(IterVar *TextIter) *TextChildAnchor { | |
| 793 | + | core.LazyRegister(&xTextBufferCreateChildAnchor, "GTK", "gtk_text_buffer_create_child_anchor", false) | |
| 773 | 794 | var cls *TextChildAnchor | |
| 774 | 795 | ||
| 775 | 796 | cret := xTextBufferCreateChildAnchor(x.GoPointer(), IterVar) | |
| @@ -805,6 +826,7 @@ var xTextBufferCreateMark func(uintptr, uintptr, *TextIter, bool) uintptr | |||
| 805 | 826 | // Emits the [signal@Gtk.TextBuffer::mark-set] signal as notification | |
| 806 | 827 | // of the mark's initial placement. | |
| 807 | 828 | func (x *TextBuffer) CreateMark(MarkNameVar *string, WhereVar *TextIter, LeftGravityVar bool) *TextMark { | |
| 829 | + | core.LazyRegister(&xTextBufferCreateMark, "GTK", "gtk_text_buffer_create_mark", false) | |
| 808 | 830 | var cls *TextMark | |
| 809 | 831 | ||
| 810 | 832 | MarkNameVarPtr := core.GStrdupNullable(MarkNameVar) | |
| @@ -837,6 +859,7 @@ var xTextBufferCreateTag func(uintptr, uintptr, uintptr, ...interface{}) uintptr | |||
| 837 | 859 | // The @first_property_name argument and subsequent arguments are a list | |
| 838 | 860 | // of properties to set on the tag, as with g_object_set(). | |
| 839 | 861 | func (x *TextBuffer) CreateTag(TagNameVar *string, FirstPropertyNameVar *string, varArgs ...interface{}) *TextTag { | |
| 862 | + | core.LazyRegister(&xTextBufferCreateTag, "GTK", "gtk_text_buffer_create_tag", false) | |
| 840 | 863 | var cls *TextTag | |
| 841 | 864 | ||
| 842 | 865 | TagNameVarPtr := core.GStrdupNullable(TagNameVar) | |
| @@ -861,6 +884,8 @@ var xTextBufferCutClipboard func(uintptr, uintptr, bool) | |||
| 861 | 884 | // Copies the currently-selected text to a clipboard, | |
| 862 | 885 | // then deletes said text if it’s editable. | |
| 863 | 886 | func (x *TextBuffer) CutClipboard(ClipboardVar *gdk.Clipboard, DefaultEditableVar bool) { | |
| 887 | + | core.LazyRegister(&xTextBufferCutClipboard, "GTK", "gtk_text_buffer_cut_clipboard", false) | |
| 888 | + | ||
| 864 | 889 | xTextBufferCutClipboard(x.GoPointer(), ClipboardVar.GoPointer(), DefaultEditableVar) | |
| 865 | 890 | } | |
| 866 | 891 | ||
| @@ -877,6 +902,8 @@ var xTextBufferDelete func(uintptr, *TextIter, *TextIter) | |||
| 877 | 902 | // calling this function; however, the @start and @end will be | |
| 878 | 903 | // re-initialized to point to the location where text was deleted. | |
| 879 | 904 | func (x *TextBuffer) Delete(StartVar *TextIter, EndVar *TextIter) { | |
| 905 | + | core.LazyRegister(&xTextBufferDelete, "GTK", "gtk_text_buffer_delete", false) | |
| 906 | + | ||
| 880 | 907 | xTextBufferDelete(x.GoPointer(), StartVar, EndVar) | |
| 881 | 908 | } | |
| 882 | 909 | ||
| @@ -889,6 +916,8 @@ var xTextBufferDeleteInteractive func(uintptr, *TextIter, *TextIter, bool) bool | |||
| 889 | 916 | // to point to the location of the last deleted range, or left | |
| 890 | 917 | // untouched if no text was deleted. | |
| 891 | 918 | func (x *TextBuffer) DeleteInteractive(StartIterVar *TextIter, EndIterVar *TextIter, DefaultEditableVar bool) bool { | |
| 919 | + | core.LazyRegister(&xTextBufferDeleteInteractive, "GTK", "gtk_text_buffer_delete_interactive", false) | |
| 920 | + | ||
| 892 | 921 | cret := xTextBufferDeleteInteractive(x.GoPointer(), StartIterVar, EndIterVar, DefaultEditableVar) | |
| 893 | 922 | return cret | |
| 894 | 923 | } | |
| @@ -908,6 +937,8 @@ var xTextBufferDeleteMark func(uintptr, uintptr) | |||
| 908 | 937 | // The [signal@Gtk.TextBuffer::mark-deleted] signal will be emitted as | |
| 909 | 938 | // notification after the mark is deleted. | |
| 910 | 939 | func (x *TextBuffer) DeleteMark(MarkVar *TextMark) { | |
| 940 | + | core.LazyRegister(&xTextBufferDeleteMark, "GTK", "gtk_text_buffer_delete_mark", false) | |
| 941 | + | ||
| 911 | 942 | xTextBufferDeleteMark(x.GoPointer(), MarkVar.GoPointer()) | |
| 912 | 943 | } | |
| 913 | 944 | ||
| @@ -917,6 +948,8 @@ var xTextBufferDeleteMarkByName func(uintptr, string) | |||
| 917 | 948 | // | |
| 918 | 949 | // See [method@Gtk.TextBuffer.delete_mark] for details. | |
| 919 | 950 | func (x *TextBuffer) DeleteMarkByName(NameVar string) { | |
| 951 | + | core.LazyRegister(&xTextBufferDeleteMarkByName, "GTK", "gtk_text_buffer_delete_mark_by_name", false) | |
| 952 | + | ||
| 920 | 953 | xTextBufferDeleteMarkByName(x.GoPointer(), NameVar) | |
| 921 | 954 | } | |
| 922 | 955 | ||
| @@ -928,6 +961,8 @@ var xTextBufferDeleteSelection func(uintptr, bool, bool) bool | |||
| 928 | 961 | // If @interactive is %TRUE, the editability of the selection will be | |
| 929 | 962 | // considered (users can’t delete uneditable text). | |
| 930 | 963 | func (x *TextBuffer) DeleteSelection(InteractiveVar bool, DefaultEditableVar bool) bool { | |
| 964 | + | core.LazyRegister(&xTextBufferDeleteSelection, "GTK", "gtk_text_buffer_delete_selection", false) | |
| 965 | + | ||
| 931 | 966 | cret := xTextBufferDeleteSelection(x.GoPointer(), InteractiveVar, DefaultEditableVar) | |
| 932 | 967 | return cret | |
| 933 | 968 | } | |
| @@ -946,6 +981,8 @@ var xTextBufferEndIrreversibleAction func(uintptr) | |||
| 946 | 981 | // You may nest calls to gtk_text_buffer_begin_irreversible_action() | |
| 947 | 982 | // and gtk_text_buffer_end_irreversible_action() pairs. | |
| 948 | 983 | func (x *TextBuffer) EndIrreversibleAction() { | |
| 984 | + | core.LazyRegister(&xTextBufferEndIrreversibleAction, "GTK", "gtk_text_buffer_end_irreversible_action", false) | |
| 985 | + | ||
| 949 | 986 | xTextBufferEndIrreversibleAction(x.GoPointer()) | |
| 950 | 987 | } | |
| 951 | 988 | ||
| @@ -957,6 +994,8 @@ var xTextBufferEndUserAction func(uintptr) | |||
| 957 | 994 | // [method@Gtk.TextBuffer.begin_user_action]. | |
| 958 | 995 | // See that function for a full explanation. | |
| 959 | 996 | func (x *TextBuffer) EndUserAction() { | |
| 997 | + | core.LazyRegister(&xTextBufferEndUserAction, "GTK", "gtk_text_buffer_end_user_action", false) | |
| 998 | + | ||
| 960 | 999 | xTextBufferEndUserAction(x.GoPointer()) | |
| 961 | 1000 | } | |
| 962 | 1001 | ||
| @@ -965,6 +1004,8 @@ var xTextBufferGetBounds func(uintptr, *TextIter, *TextIter) | |||
| 965 | 1004 | // Retrieves the first and last iterators in the buffer, i.e. the | |
| 966 | 1005 | // entire buffer lies within the range [@start,@end). | |
| 967 | 1006 | func (x *TextBuffer) GetBounds(StartVar *TextIter, EndVar *TextIter) { | |
| 1007 | + | core.LazyRegister(&xTextBufferGetBounds, "GTK", "gtk_text_buffer_get_bounds", false) | |
| 1008 | + | ||
| 968 | 1009 | xTextBufferGetBounds(x.GoPointer(), StartVar, EndVar) | |
| 969 | 1010 | } | |
| 970 | 1011 | ||
| @@ -972,6 +1013,8 @@ var xTextBufferGetCanRedo func(uintptr) bool | |||
| 972 | 1013 | ||
| 973 | 1014 | // Gets whether there is a redoable action in the history. | |
| 974 | 1015 | func (x *TextBuffer) GetCanRedo() bool { | |
| 1016 | + | core.LazyRegister(&xTextBufferGetCanRedo, "GTK", "gtk_text_buffer_get_can_redo", false) | |
| 1017 | + | ||
| 975 | 1018 | cret := xTextBufferGetCanRedo(x.GoPointer()) | |
| 976 | 1019 | return cret | |
| 977 | 1020 | } | |
| @@ -980,6 +1023,8 @@ var xTextBufferGetCanUndo func(uintptr) bool | |||
| 980 | 1023 | ||
| 981 | 1024 | // Gets whether there is an undoable action in the history. | |
| 982 | 1025 | func (x *TextBuffer) GetCanUndo() bool { | |
| 1026 | + | core.LazyRegister(&xTextBufferGetCanUndo, "GTK", "gtk_text_buffer_get_can_undo", false) | |
| 1027 | + | ||
| 983 | 1028 | cret := xTextBufferGetCanUndo(x.GoPointer()) | |
| 984 | 1029 | return cret | |
| 985 | 1030 | } | |
| @@ -994,6 +1039,8 @@ var xTextBufferGetCharCount func(uintptr) int | |||
| 994 | 1039 | // | |
| 995 | 1040 | // The character count is cached, so this function is very fast. | |
| 996 | 1041 | func (x *TextBuffer) GetCharCount() int { | |
| 1042 | + | core.LazyRegister(&xTextBufferGetCharCount, "GTK", "gtk_text_buffer_get_char_count", false) | |
| 1043 | + | ||
| 997 | 1044 | cret := xTextBufferGetCharCount(x.GoPointer()) | |
| 998 | 1045 | return cret | |
| 999 | 1046 | } | |
| @@ -1007,6 +1054,8 @@ var xTextBufferGetEnableUndo func(uintptr) bool | |||
| 1007 | 1054 | // [method@Gtk.TextBuffer.end_irreversible_action] to create | |
| 1008 | 1055 | // changes to the buffer that cannot be undone. | |
| 1009 | 1056 | func (x *TextBuffer) GetEnableUndo() bool { | |
| 1057 | + | core.LazyRegister(&xTextBufferGetEnableUndo, "GTK", "gtk_text_buffer_get_enable_undo", false) | |
| 1058 | + | ||
| 1010 | 1059 | cret := xTextBufferGetEnableUndo(x.GoPointer()) | |
| 1011 | 1060 | return cret | |
| 1012 | 1061 | } | |
| @@ -1022,6 +1071,8 @@ var xTextBufferGetEndIter func(uintptr, *TextIter) | |||
| 1022 | 1071 | // the buffer (call [method@Gtk.TextBuffer.get_start_iter] to get | |
| 1023 | 1072 | // character position 0) to the end iterator. | |
| 1024 | 1073 | func (x *TextBuffer) GetEndIter(IterVar *TextIter) { | |
| 1074 | + | core.LazyRegister(&xTextBufferGetEndIter, "GTK", "gtk_text_buffer_get_end_iter", false) | |
| 1075 | + | ||
| 1025 | 1076 | xTextBufferGetEndIter(x.GoPointer(), IterVar) | |
| 1026 | 1077 | } | |
| 1027 | 1078 | ||
| @@ -1029,6 +1080,8 @@ var xTextBufferGetHasSelection func(uintptr) bool | |||
| 1029 | 1080 | ||
| 1030 | 1081 | // Indicates whether the buffer has some text currently selected. | |
| 1031 | 1082 | func (x *TextBuffer) GetHasSelection() bool { | |
| 1083 | + | core.LazyRegister(&xTextBufferGetHasSelection, "GTK", "gtk_text_buffer_get_has_selection", false) | |
| 1084 | + | ||
| 1032 | 1085 | cret := xTextBufferGetHasSelection(x.GoPointer()) | |
| 1033 | 1086 | return cret | |
| 1034 | 1087 | } | |
| @@ -1041,6 +1094,7 @@ var xTextBufferGetInsert func(uintptr) uintptr | |||
| 1041 | 1094 | // to get the mark named “insert”, but very slightly more | |
| 1042 | 1095 | // efficient, and involves less typing. | |
| 1043 | 1096 | func (x *TextBuffer) GetInsert() *TextMark { | |
| 1097 | + | core.LazyRegister(&xTextBufferGetInsert, "GTK", "gtk_text_buffer_get_insert", false) | |
| 1044 | 1098 | var cls *TextMark | |
| 1045 | 1099 | ||
| 1046 | 1100 | cret := xTextBufferGetInsert(x.GoPointer()) | |
| @@ -1058,6 +1112,8 @@ var xTextBufferGetIterAtChildAnchor func(uintptr, *TextIter, uintptr) | |||
| 1058 | 1112 | ||
| 1059 | 1113 | // Obtains the location of @anchor within @buffer. | |
| 1060 | 1114 | func (x *TextBuffer) GetIterAtChildAnchor(IterVar *TextIter, AnchorVar *TextChildAnchor) { | |
| 1115 | + | core.LazyRegister(&xTextBufferGetIterAtChildAnchor, "GTK", "gtk_text_buffer_get_iter_at_child_anchor", false) | |
| 1116 | + | ||
| 1061 | 1117 | xTextBufferGetIterAtChildAnchor(x.GoPointer(), IterVar, AnchorVar.GoPointer()) | |
| 1062 | 1118 | } | |
| 1063 | 1119 | ||
| @@ -1068,6 +1124,8 @@ var xTextBufferGetIterAtLine func(uintptr, *TextIter, int) bool | |||
| 1068 | 1124 | // If @line_number is greater than or equal to the number of lines | |
| 1069 | 1125 | // in the @buffer, the end iterator is returned. | |
| 1070 | 1126 | func (x *TextBuffer) GetIterAtLine(IterVar *TextIter, LineNumberVar int) bool { | |
| 1127 | + | core.LazyRegister(&xTextBufferGetIterAtLine, "GTK", "gtk_text_buffer_get_iter_at_line", false) | |
| 1128 | + | ||
| 1071 | 1129 | cret := xTextBufferGetIterAtLine(x.GoPointer(), IterVar, LineNumberVar) | |
| 1072 | 1130 | return cret | |
| 1073 | 1131 | } | |
| @@ -1083,6 +1141,8 @@ var xTextBufferGetIterAtLineIndex func(uintptr, *TextIter, int, int) bool | |||
| 1083 | 1141 | // the end iterator is returned. And if @byte_index is off the | |
| 1084 | 1142 | // end of the line, the iterator at the end of the line is returned. | |
| 1085 | 1143 | func (x *TextBuffer) GetIterAtLineIndex(IterVar *TextIter, LineNumberVar int, ByteIndexVar int) bool { | |
| 1144 | + | core.LazyRegister(&xTextBufferGetIterAtLineIndex, "GTK", "gtk_text_buffer_get_iter_at_line_index", false) | |
| 1145 | + | ||
| 1086 | 1146 | cret := xTextBufferGetIterAtLineIndex(x.GoPointer(), IterVar, LineNumberVar, ByteIndexVar) | |
| 1087 | 1147 | return cret | |
| 1088 | 1148 | } | |
| @@ -1098,6 +1158,8 @@ var xTextBufferGetIterAtLineOffset func(uintptr, *TextIter, int, int) bool | |||
| 1098 | 1158 | // the end iterator is returned. And if @char_offset is off the | |
| 1099 | 1159 | // end of the line, the iterator at the end of the line is returned. | |
| 1100 | 1160 | func (x *TextBuffer) GetIterAtLineOffset(IterVar *TextIter, LineNumberVar int, CharOffsetVar int) bool { | |
| 1161 | + | core.LazyRegister(&xTextBufferGetIterAtLineOffset, "GTK", "gtk_text_buffer_get_iter_at_line_offset", false) | |
| 1162 | + | ||
| 1101 | 1163 | cret := xTextBufferGetIterAtLineOffset(x.GoPointer(), IterVar, LineNumberVar, CharOffsetVar) | |
| 1102 | 1164 | return cret | |
| 1103 | 1165 | } | |
| @@ -1106,6 +1168,8 @@ var xTextBufferGetIterAtMark func(uintptr, *TextIter, uintptr) | |||
| 1106 | 1168 | ||
| 1107 | 1169 | // Initializes @iter with the current position of @mark. | |
| 1108 | 1170 | func (x *TextBuffer) GetIterAtMark(IterVar *TextIter, MarkVar *TextMark) { | |
| 1171 | + | core.LazyRegister(&xTextBufferGetIterAtMark, "GTK", "gtk_text_buffer_get_iter_at_mark", false) | |
| 1172 | + | ||
| 1109 | 1173 | xTextBufferGetIterAtMark(x.GoPointer(), IterVar, MarkVar.GoPointer()) | |
| 1110 | 1174 | } | |
| 1111 | 1175 | ||
| @@ -1118,6 +1182,8 @@ var xTextBufferGetIterAtOffset func(uintptr, *TextIter, int) | |||
| 1118 | 1182 | // of characters in the buffer, @iter is initialized to the end iterator, | |
| 1119 | 1183 | // the iterator one past the last valid character in the buffer. | |
| 1120 | 1184 | func (x *TextBuffer) GetIterAtOffset(IterVar *TextIter, CharOffsetVar int) { | |
| 1185 | + | core.LazyRegister(&xTextBufferGetIterAtOffset, "GTK", "gtk_text_buffer_get_iter_at_offset", false) | |
| 1186 | + | ||
| 1121 | 1187 | xTextBufferGetIterAtOffset(x.GoPointer(), IterVar, CharOffsetVar) | |
| 1122 | 1188 | } | |
| 1123 | 1189 | ||
| @@ -1127,6 +1193,8 @@ var xTextBufferGetLineCount func(uintptr) int | |||
| 1127 | 1193 | // | |
| 1128 | 1194 | // This value is cached, so the function is very fast. | |
| 1129 | 1195 | func (x *TextBuffer) GetLineCount() int { | |
| 1196 | + | core.LazyRegister(&xTextBufferGetLineCount, "GTK", "gtk_text_buffer_get_line_count", false) | |
| 1197 | + | ||
| 1130 | 1198 | cret := xTextBufferGetLineCount(x.GoPointer()) | |
| 1131 | 1199 | return cret | |
| 1132 | 1200 | } | |
| @@ -1136,6 +1204,7 @@ var xTextBufferGetMark func(uintptr, string) uintptr | |||
| 1136 | 1204 | // Returns the mark named @name in buffer @buffer, or %NULL if no such | |
| 1137 | 1205 | // mark exists in the buffer. | |
| 1138 | 1206 | func (x *TextBuffer) GetMark(NameVar string) *TextMark { | |
| 1207 | + | core.LazyRegister(&xTextBufferGetMark, "GTK", "gtk_text_buffer_get_mark", false) | |
| 1139 | 1208 | var cls *TextMark | |
| 1140 | 1209 | ||
| 1141 | 1210 | cret := xTextBufferGetMark(x.GoPointer(), NameVar) | |
| @@ -1157,6 +1226,8 @@ var xTextBufferGetMaxUndoLevels func(uintptr) uint | |||
| 1157 | 1226 | // have a memory usage impact as it requires storing an additional | |
| 1158 | 1227 | // copy of the inserted or removed text within the text buffer. | |
| 1159 | 1228 | func (x *TextBuffer) GetMaxUndoLevels() uint { | |
| 1229 | + | core.LazyRegister(&xTextBufferGetMaxUndoLevels, "GTK", "gtk_text_buffer_get_max_undo_levels", false) | |
| 1230 | + | ||
| 1160 | 1231 | cret := xTextBufferGetMaxUndoLevels(x.GoPointer()) | |
| 1161 | 1232 | return cret | |
| 1162 | 1233 | } | |
| @@ -1169,6 +1240,8 @@ var xTextBufferGetModified func(uintptr) bool | |||
| 1169 | 1240 | // | |
| 1170 | 1241 | // Used for example to enable a “save” function in a text editor. | |
| 1171 | 1242 | func (x *TextBuffer) GetModified() bool { | |
| 1243 | + | core.LazyRegister(&xTextBufferGetModified, "GTK", "gtk_text_buffer_get_modified", false) | |
| 1244 | + | ||
| 1172 | 1245 | cret := xTextBufferGetModified(x.GoPointer()) | |
| 1173 | 1246 | return cret | |
| 1174 | 1247 | } | |
| @@ -1188,6 +1261,7 @@ var xTextBufferGetSelectionBound func(uintptr) uintptr | |||
| 1188 | 1261 | // function for handling the selection, if you just want to know whether | |
| 1189 | 1262 | // there’s a selection and what its bounds are. | |
| 1190 | 1263 | func (x *TextBuffer) GetSelectionBound() *TextMark { | |
| 1264 | + | core.LazyRegister(&xTextBufferGetSelectionBound, "GTK", "gtk_text_buffer_get_selection_bound", false) | |
| 1191 | 1265 | var cls *TextMark | |
| 1192 | 1266 | ||
| 1193 | 1267 | cret := xTextBufferGetSelectionBound(x.GoPointer()) | |
| @@ -1211,6 +1285,8 @@ var xTextBufferGetSelectionBounds func(uintptr, *TextIter, *TextIter) bool | |||
| 1211 | 1285 | // If @start and @end are %NULL, then they are not filled in, but the | |
| 1212 | 1286 | // return value still indicates whether text is selected. | |
| 1213 | 1287 | func (x *TextBuffer) GetSelectionBounds(StartVar *TextIter, EndVar *TextIter) bool { | |
| 1288 | + | core.LazyRegister(&xTextBufferGetSelectionBounds, "GTK", "gtk_text_buffer_get_selection_bounds", false) | |
| 1289 | + | ||
| 1214 | 1290 | cret := xTextBufferGetSelectionBounds(x.GoPointer(), StartVar, EndVar) | |
| 1215 | 1291 | return cret | |
| 1216 | 1292 | } | |
| @@ -1222,6 +1298,7 @@ var xTextBufferGetSelectionContent func(uintptr) uintptr | |||
| 1222 | 1298 | // It can be used to make the content of @buffer available | |
| 1223 | 1299 | // in a `GdkClipboard`, see [method@Gdk.Clipboard.set_content]. | |
| 1224 | 1300 | func (x *TextBuffer) GetSelectionContent() *gdk.ContentProvider { | |
| 1301 | + | core.LazyRegister(&xTextBufferGetSelectionContent, "GTK", "gtk_text_buffer_get_selection_content", false) | |
| 1225 | 1302 | var cls *gdk.ContentProvider | |
| 1226 | 1303 | ||
| 1227 | 1304 | cret := xTextBufferGetSelectionContent(x.GoPointer()) | |
| @@ -1247,6 +1324,8 @@ var xTextBufferGetSlice func(uintptr, *TextIter, *TextIter, bool) string | |||
| 1247 | 1324 | // Note that 0xFFFC can occur in normal text as well, so it is not a | |
| 1248 | 1325 | // reliable indicator that a paintable or widget is in the buffer. | |
| 1249 | 1326 | func (x *TextBuffer) GetSlice(StartVar *TextIter, EndVar *TextIter, IncludeHiddenCharsVar bool) string { | |
| 1327 | + | core.LazyRegister(&xTextBufferGetSlice, "GTK", "gtk_text_buffer_get_slice", false) | |
| 1328 | + | ||
| 1250 | 1329 | cret := xTextBufferGetSlice(x.GoPointer(), StartVar, EndVar, IncludeHiddenCharsVar) | |
| 1251 | 1330 | return cret | |
| 1252 | 1331 | } | |
| @@ -1258,6 +1337,8 @@ var xTextBufferGetStartIter func(uintptr, *TextIter) | |||
| 1258 | 1337 | // This is the same as using [method@Gtk.TextBuffer.get_iter_at_offset] | |
| 1259 | 1338 | // to get the iter at character offset 0. | |
| 1260 | 1339 | func (x *TextBuffer) GetStartIter(IterVar *TextIter) { | |
| 1340 | + | core.LazyRegister(&xTextBufferGetStartIter, "GTK", "gtk_text_buffer_get_start_iter", false) | |
| 1341 | + | ||
| 1261 | 1342 | xTextBufferGetStartIter(x.GoPointer(), IterVar) | |
| 1262 | 1343 | } | |
| 1263 | 1344 | ||
| @@ -1265,6 +1346,7 @@ var xTextBufferGetTagTable func(uintptr) uintptr | |||
| 1265 | 1346 | ||
| 1266 | 1347 | // Get the `GtkTextTagTable` associated with this buffer. | |
| 1267 | 1348 | func (x *TextBuffer) GetTagTable() *TextTagTable { | |
| 1349 | + | core.LazyRegister(&xTextBufferGetTagTable, "GTK", "gtk_text_buffer_get_tag_table", false) | |
| 1268 | 1350 | var cls *TextTagTable | |
| 1269 | 1351 | ||
| 1270 | 1352 | cret := xTextBufferGetTagTable(x.GoPointer()) | |
| @@ -1289,6 +1371,8 @@ var xTextBufferGetText func(uintptr, *TextIter, *TextIter, bool) string | |||
| 1289 | 1371 | // correspond to byte and character indexes into the buffer. | |
| 1290 | 1372 | // Contrast with [method@Gtk.TextBuffer.get_slice]. | |
| 1291 | 1373 | func (x *TextBuffer) GetText(StartVar *TextIter, EndVar *TextIter, IncludeHiddenCharsVar bool) string { | |
| 1374 | + | core.LazyRegister(&xTextBufferGetText, "GTK", "gtk_text_buffer_get_text", false) | |
| 1375 | + | ||
| 1292 | 1376 | cret := xTextBufferGetText(x.GoPointer(), StartVar, EndVar, IncludeHiddenCharsVar) | |
| 1293 | 1377 | return cret | |
| 1294 | 1378 | } | |
| @@ -1304,6 +1388,8 @@ var xTextBufferInsert func(uintptr, *TextIter, string, int) | |||
| 1304 | 1388 | // default signal handler revalidates it to point to the end of the | |
| 1305 | 1389 | // inserted text. | |
| 1306 | 1390 | func (x *TextBuffer) Insert(IterVar *TextIter, TextVar string, LenVar int) { | |
| 1391 | + | core.LazyRegister(&xTextBufferInsert, "GTK", "gtk_text_buffer_insert", false) | |
| 1392 | + | ||
| 1307 | 1393 | xTextBufferInsert(x.GoPointer(), IterVar, TextVar, LenVar) | |
| 1308 | 1394 | } | |
| 1309 | 1395 | ||
| @@ -1314,6 +1400,8 @@ var xTextBufferInsertAtCursor func(uintptr, string, int) | |||
| 1314 | 1400 | // Simply calls [method@Gtk.TextBuffer.insert], | |
| 1315 | 1401 | // using the current cursor position as the insertion point. | |
| 1316 | 1402 | func (x *TextBuffer) InsertAtCursor(TextVar string, LenVar int) { | |
| 1403 | + | core.LazyRegister(&xTextBufferInsertAtCursor, "GTK", "gtk_text_buffer_insert_at_cursor", false) | |
| 1404 | + | ||
| 1317 | 1405 | xTextBufferInsertAtCursor(x.GoPointer(), TextVar, LenVar) | |
| 1318 | 1406 | } | |
| 1319 | 1407 | ||
| @@ -1333,6 +1421,8 @@ var xTextBufferInsertChildAnchor func(uintptr, *TextIter, uintptr) | |||
| 1333 | 1421 | // convenient alternative to this function. The buffer will add a | |
| 1334 | 1422 | // reference to the anchor, so you can unref it after insertion. | |
| 1335 | 1423 | func (x *TextBuffer) InsertChildAnchor(IterVar *TextIter, AnchorVar *TextChildAnchor) { | |
| 1424 | + | core.LazyRegister(&xTextBufferInsertChildAnchor, "GTK", "gtk_text_buffer_insert_child_anchor", false) | |
| 1425 | + | ||
| 1336 | 1426 | xTextBufferInsertChildAnchor(x.GoPointer(), IterVar, AnchorVar.GoPointer()) | |
| 1337 | 1427 | } | |
| 1338 | 1428 | ||
| @@ -1349,6 +1439,8 @@ var xTextBufferInsertInteractive func(uintptr, *TextIter, string, int, bool) boo | |||
| 1349 | 1439 | // have a tag affecting editability applied to it. Typically the | |
| 1350 | 1440 | // result of [method@Gtk.TextView.get_editable] is appropriate here. | |
| 1351 | 1441 | func (x *TextBuffer) InsertInteractive(IterVar *TextIter, TextVar string, LenVar int, DefaultEditableVar bool) bool { | |
| 1442 | + | core.LazyRegister(&xTextBufferInsertInteractive, "GTK", "gtk_text_buffer_insert_interactive", false) | |
| 1443 | + | ||
| 1352 | 1444 | cret := xTextBufferInsertInteractive(x.GoPointer(), IterVar, TextVar, LenVar, DefaultEditableVar) | |
| 1353 | 1445 | return cret | |
| 1354 | 1446 | } | |
| @@ -1364,6 +1456,8 @@ var xTextBufferInsertInteractiveAtCursor func(uintptr, string, int, bool) bool | |||
| 1364 | 1456 | // have a tag affecting editability applied to it. Typically the | |
| 1365 | 1457 | // result of [method@Gtk.TextView.get_editable] is appropriate here. | |
| 1366 | 1458 | func (x *TextBuffer) InsertInteractiveAtCursor(TextVar string, LenVar int, DefaultEditableVar bool) bool { | |
| 1459 | + | core.LazyRegister(&xTextBufferInsertInteractiveAtCursor, "GTK", "gtk_text_buffer_insert_interactive_at_cursor", false) | |
| 1460 | + | ||
| 1367 | 1461 | cret := xTextBufferInsertInteractiveAtCursor(x.GoPointer(), TextVar, LenVar, DefaultEditableVar) | |
| 1368 | 1462 | return cret | |
| 1369 | 1463 | } | |
| @@ -1377,6 +1471,8 @@ var xTextBufferInsertMarkup func(uintptr, *TextIter, string, int) | |||
| 1377 | 1471 | // possibly multiple times; insertion actually occurs in the default handler | |
| 1378 | 1472 | // for the signal. @iter will point to the end of the inserted text on return. | |
| 1379 | 1473 | func (x *TextBuffer) InsertMarkup(IterVar *TextIter, MarkupVar string, LenVar int) { | |
| 1474 | + | core.LazyRegister(&xTextBufferInsertMarkup, "GTK", "gtk_text_buffer_insert_markup", false) | |
| 1475 | + | ||
| 1380 | 1476 | xTextBufferInsertMarkup(x.GoPointer(), IterVar, MarkupVar, LenVar) | |
| 1381 | 1477 | } | |
| 1382 | 1478 | ||
| @@ -1392,6 +1488,8 @@ var xTextBufferInsertPaintable func(uintptr, *TextIter, uintptr) | |||
| 1392 | 1488 | // variants do not. e.g. see [method@Gtk.TextBuffer.get_slice] and | |
| 1393 | 1489 | // [method@Gtk.TextBuffer.get_text]. | |
| 1394 | 1490 | func (x *TextBuffer) InsertPaintable(IterVar *TextIter, PaintableVar gdk.Paintable) { | |
| 1491 | + | core.LazyRegister(&xTextBufferInsertPaintable, "GTK", "gtk_text_buffer_insert_paintable", false) | |
| 1492 | + | ||
| 1395 | 1493 | xTextBufferInsertPaintable(x.GoPointer(), IterVar, PaintableVar.GoPointer()) | |
| 1396 | 1494 | } | |
| 1397 | 1495 | ||
| @@ -1409,6 +1507,8 @@ var xTextBufferInsertRange func(uintptr, *TextIter, *TextIter, *TextIter) | |||
| 1409 | 1507 | // Implemented via emissions of the ::insert-text and ::apply-tag signals, | |
| 1410 | 1508 | // so expect those. | |
| 1411 | 1509 | func (x *TextBuffer) InsertRange(IterVar *TextIter, StartVar *TextIter, EndVar *TextIter) { | |
| 1510 | + | core.LazyRegister(&xTextBufferInsertRange, "GTK", "gtk_text_buffer_insert_range", false) | |
| 1511 | + | ||
| 1412 | 1512 | xTextBufferInsertRange(x.GoPointer(), IterVar, StartVar, EndVar) | |
| 1413 | 1513 | } | |
| 1414 | 1514 | ||
| @@ -1423,6 +1523,8 @@ var xTextBufferInsertRangeInteractive func(uintptr, *TextIter, *TextIter, *TextI | |||
| 1423 | 1523 | // no tags enclosing @iter affect editability. Typically the result | |
| 1424 | 1524 | // of [method@Gtk.TextView.get_editable] is appropriate here. | |
| 1425 | 1525 | func (x *TextBuffer) InsertRangeInteractive(IterVar *TextIter, StartVar *TextIter, EndVar *TextIter, DefaultEditableVar bool) bool { | |
| 1526 | + | core.LazyRegister(&xTextBufferInsertRangeInteractive, "GTK", "gtk_text_buffer_insert_range_interactive", false) | |
| 1527 | + | ||
| 1426 | 1528 | cret := xTextBufferInsertRangeInteractive(x.GoPointer(), IterVar, StartVar, EndVar, DefaultEditableVar) | |
| 1427 | 1529 | return cret | |
| 1428 | 1530 | } | |
| @@ -1437,6 +1539,8 @@ var xTextBufferInsertWithTags func(uintptr, *TextIter, string, int, uintptr, ... | |||
| 1437 | 1539 | // then [method@Gtk.TextBuffer.apply_tag] on the inserted text; | |
| 1438 | 1540 | // this is just a convenience function. | |
| 1439 | 1541 | func (x *TextBuffer) InsertWithTags(IterVar *TextIter, TextVar string, LenVar int, FirstTagVar *TextTag, varArgs ...interface{}) { | |
| 1542 | + | core.LazyRegister(&xTextBufferInsertWithTags, "GTK", "gtk_text_buffer_insert_with_tags", false) | |
| 1543 | + | ||
| 1440 | 1544 | xTextBufferInsertWithTags(x.GoPointer(), IterVar, TextVar, LenVar, FirstTagVar.GoPointer(), varArgs...) | |
| 1441 | 1545 | } | |
| 1442 | 1546 | ||
| @@ -1448,6 +1552,8 @@ var xTextBufferInsertWithTagsByName func(uintptr, *TextIter, string, int, string | |||
| 1448 | 1552 | // Same as [method@Gtk.TextBuffer.insert_with_tags], but allows you | |
| 1449 | 1553 | // to pass in tag names instead of tag objects. | |
| 1450 | 1554 | func (x *TextBuffer) InsertWithTagsByName(IterVar *TextIter, TextVar string, LenVar int, FirstTagNameVar string, varArgs ...interface{}) { | |
| 1555 | + | core.LazyRegister(&xTextBufferInsertWithTagsByName, "GTK", "gtk_text_buffer_insert_with_tags_by_name", false) | |
| 1556 | + | ||
| 1451 | 1557 | xTextBufferInsertWithTagsByName(x.GoPointer(), IterVar, TextVar, LenVar, FirstTagNameVar, varArgs...) | |
| 1452 | 1558 | } | |
| 1453 | 1559 | ||
| @@ -1458,6 +1564,8 @@ var xTextBufferMoveMark func(uintptr, uintptr, *TextIter) | |||
| 1458 | 1564 | // Emits the [signal@Gtk.TextBuffer::mark-set] signal | |
| 1459 | 1565 | // as notification of the move. | |
| 1460 | 1566 | func (x *TextBuffer) MoveMark(MarkVar *TextMark, WhereVar *TextIter) { | |
| 1567 | + | core.LazyRegister(&xTextBufferMoveMark, "GTK", "gtk_text_buffer_move_mark", false) | |
| 1568 | + | ||
| 1461 | 1569 | xTextBufferMoveMark(x.GoPointer(), MarkVar.GoPointer(), WhereVar) | |
| 1462 | 1570 | } | |
| 1463 | 1571 | ||
| @@ -1467,6 +1575,8 @@ var xTextBufferMoveMarkByName func(uintptr, string, *TextIter) | |||
| 1467 | 1575 | // | |
| 1468 | 1576 | // See [method@Gtk.TextBuffer.move_mark] for details. | |
| 1469 | 1577 | func (x *TextBuffer) MoveMarkByName(NameVar string, WhereVar *TextIter) { | |
| 1578 | + | core.LazyRegister(&xTextBufferMoveMarkByName, "GTK", "gtk_text_buffer_move_mark_by_name", false) | |
| 1579 | + | ||
| 1470 | 1580 | xTextBufferMoveMarkByName(x.GoPointer(), NameVar, WhereVar) | |
| 1471 | 1581 | } | |
| 1472 | 1582 | ||
| @@ -1482,6 +1592,8 @@ var xTextBufferPasteClipboard func(uintptr, uintptr, *TextIter, bool) | |||
| 1482 | 1592 | // and return, and at some point later after the main loop runs, the paste | |
| 1483 | 1593 | // data will be inserted. | |
| 1484 | 1594 | func (x *TextBuffer) PasteClipboard(ClipboardVar *gdk.Clipboard, OverrideLocationVar *TextIter, DefaultEditableVar bool) { | |
| 1595 | + | core.LazyRegister(&xTextBufferPasteClipboard, "GTK", "gtk_text_buffer_paste_clipboard", false) | |
| 1596 | + | ||
| 1485 | 1597 | xTextBufferPasteClipboard(x.GoPointer(), ClipboardVar.GoPointer(), OverrideLocationVar, DefaultEditableVar) | |
| 1486 | 1598 | } | |
| 1487 | 1599 | ||
| @@ -1497,6 +1609,8 @@ var xTextBufferPlaceCursor func(uintptr, *TextIter) | |||
| 1497 | 1609 | // to be recalculated. This function moves them as a unit, which can | |
| 1498 | 1610 | // be optimized. | |
| 1499 | 1611 | func (x *TextBuffer) PlaceCursor(WhereVar *TextIter) { | |
| 1612 | + | core.LazyRegister(&xTextBufferPlaceCursor, "GTK", "gtk_text_buffer_place_cursor", false) | |
| 1613 | + | ||
| 1500 | 1614 | xTextBufferPlaceCursor(x.GoPointer(), WhereVar) | |
| 1501 | 1615 | } | |
| 1502 | 1616 | ||
| @@ -1504,6 +1618,8 @@ var xTextBufferRedo func(uintptr) | |||
| 1504 | 1618 | ||
| 1505 | 1619 | // Redoes the next redoable action on the buffer, if there is one. | |
| 1506 | 1620 | func (x *TextBuffer) Redo() { | |
| 1621 | + | core.LazyRegister(&xTextBufferRedo, "GTK", "gtk_text_buffer_redo", false) | |
| 1622 | + | ||
| 1507 | 1623 | xTextBufferRedo(x.GoPointer()) | |
| 1508 | 1624 | } | |
| 1509 | 1625 | ||
| @@ -1516,6 +1632,8 @@ var xTextBufferRemoveAllTags func(uintptr, *TextIter, *TextIter) | |||
| 1516 | 1632 | // function is probably a bad idea if you have two or more unrelated | |
| 1517 | 1633 | // code sections that add tags. | |
| 1518 | 1634 | func (x *TextBuffer) RemoveAllTags(StartVar *TextIter, EndVar *TextIter) { | |
| 1635 | + | core.LazyRegister(&xTextBufferRemoveAllTags, "GTK", "gtk_text_buffer_remove_all_tags", false) | |
| 1636 | + | ||
| 1519 | 1637 | xTextBufferRemoveAllTags(x.GoPointer(), StartVar, EndVar) | |
| 1520 | 1638 | } | |
| 1521 | 1639 | ||
| @@ -1527,6 +1645,8 @@ var xTextBufferRemoveCommitNotify func(uintptr, uint) | |||
| 1527 | 1645 | // This may result in the `user_data_destroy` being called that was passed when registering | |
| 1528 | 1646 | // the commit notify functions. | |
| 1529 | 1647 | func (x *TextBuffer) RemoveCommitNotify(CommitNotifyHandlerVar uint) { | |
| 1648 | + | core.LazyRegister(&xTextBufferRemoveCommitNotify, "GTK", "gtk_text_buffer_remove_commit_notify", false) | |
| 1649 | + | ||
| 1530 | 1650 | xTextBufferRemoveCommitNotify(x.GoPointer(), CommitNotifyHandlerVar) | |
| 1531 | 1651 | } | |
| 1532 | 1652 | ||
| @@ -1535,6 +1655,8 @@ var xTextBufferRemoveSelectionClipboard func(uintptr, uintptr) | |||
| 1535 | 1655 | // Removes a `GdkClipboard` added with | |
| 1536 | 1656 | // [method@Gtk.TextBuffer.add_selection_clipboard] | |
| 1537 | 1657 | func (x *TextBuffer) RemoveSelectionClipboard(ClipboardVar *gdk.Clipboard) { | |
| 1658 | + | core.LazyRegister(&xTextBufferRemoveSelectionClipboard, "GTK", "gtk_text_buffer_remove_selection_clipboard", false) | |
| 1659 | + | ||
| 1538 | 1660 | xTextBufferRemoveSelectionClipboard(x.GoPointer(), ClipboardVar.GoPointer()) | |
| 1539 | 1661 | } | |
| 1540 | 1662 | ||
| @@ -1546,6 +1668,8 @@ var xTextBufferRemoveTag func(uintptr, uintptr, *TextIter, *TextIter) | |||
| 1546 | 1668 | // of @tag from the given range. @start and @end don’t have | |
| 1547 | 1669 | // to be in order. | |
| 1548 | 1670 | func (x *TextBuffer) RemoveTag(TagVar *TextTag, StartVar *TextIter, EndVar *TextIter) { | |
| 1671 | + | core.LazyRegister(&xTextBufferRemoveTag, "GTK", "gtk_text_buffer_remove_tag", false) | |
| 1672 | + | ||
| 1549 | 1673 | xTextBufferRemoveTag(x.GoPointer(), TagVar.GoPointer(), StartVar, EndVar) | |
| 1550 | 1674 | } | |
| 1551 | 1675 | ||
| @@ -1557,6 +1681,8 @@ var xTextBufferRemoveTagByName func(uintptr, string, *TextIter, *TextIter) | |||
| 1557 | 1681 | // tag table to get a `GtkTextTag`, then calls | |
| 1558 | 1682 | // [method@Gtk.TextBuffer.remove_tag]. | |
| 1559 | 1683 | func (x *TextBuffer) RemoveTagByName(NameVar string, StartVar *TextIter, EndVar *TextIter) { | |
| 1684 | + | core.LazyRegister(&xTextBufferRemoveTagByName, "GTK", "gtk_text_buffer_remove_tag_by_name", false) | |
| 1685 | + | ||
| 1560 | 1686 | xTextBufferRemoveTagByName(x.GoPointer(), NameVar, StartVar, EndVar) | |
| 1561 | 1687 | } | |
| 1562 | 1688 | ||
| @@ -1572,6 +1698,8 @@ var xTextBufferSelectRange func(uintptr, *TextIter, *TextIter) | |||
| 1572 | 1698 | // to be recalculated. This function moves them as a unit, which can | |
| 1573 | 1699 | // be optimized. | |
| 1574 | 1700 | func (x *TextBuffer) SelectRange(InsVar *TextIter, BoundVar *TextIter) { | |
| 1701 | + | core.LazyRegister(&xTextBufferSelectRange, "GTK", "gtk_text_buffer_select_range", false) | |
| 1702 | + | ||
| 1575 | 1703 | xTextBufferSelectRange(x.GoPointer(), InsVar, BoundVar) | |
| 1576 | 1704 | } | |
| 1577 | 1705 | ||
| @@ -1589,6 +1717,8 @@ var xTextBufferSetEnableUndo func(uintptr, bool) | |||
| 1589 | 1717 | // [method@Gtk.TextBuffer.end_irreversible_action] to create | |
| 1590 | 1718 | // changes to the buffer that cannot be undone. | |
| 1591 | 1719 | func (x *TextBuffer) SetEnableUndo(EnableUndoVar bool) { | |
| 1720 | + | core.LazyRegister(&xTextBufferSetEnableUndo, "GTK", "gtk_text_buffer_set_enable_undo", false) | |
| 1721 | + | ||
| 1592 | 1722 | xTextBufferSetEnableUndo(x.GoPointer(), EnableUndoVar) | |
| 1593 | 1723 | } | |
| 1594 | 1724 | ||
| @@ -1600,6 +1730,8 @@ var xTextBufferSetMaxUndoLevels func(uintptr, uint) | |||
| 1600 | 1730 | // have a memory usage impact as it requires storing an additional | |
| 1601 | 1731 | // copy of the inserted or removed text within the text buffer. | |
| 1602 | 1732 | func (x *TextBuffer) SetMaxUndoLevels(MaxUndoLevelsVar uint) { | |
| 1733 | + | core.LazyRegister(&xTextBufferSetMaxUndoLevels, "GTK", "gtk_text_buffer_set_max_undo_levels", false) | |
| 1734 | + | ||
| 1603 | 1735 | xTextBufferSetMaxUndoLevels(x.GoPointer(), MaxUndoLevelsVar) | |
| 1604 | 1736 | } | |
| 1605 | 1737 | ||
| @@ -1615,6 +1747,8 @@ var xTextBufferSetModified func(uintptr, bool) | |||
| 1615 | 1747 | // bit flips, the buffer emits the | |
| 1616 | 1748 | // [signal@Gtk.TextBuffer::modified-changed] signal. | |
| 1617 | 1749 | func (x *TextBuffer) SetModified(SettingVar bool) { | |
| 1750 | + | core.LazyRegister(&xTextBufferSetModified, "GTK", "gtk_text_buffer_set_modified", false) | |
| 1751 | + | ||
| 1618 | 1752 | xTextBufferSetModified(x.GoPointer(), SettingVar) | |
| 1619 | 1753 | } | |
| 1620 | 1754 | ||
| @@ -1628,6 +1762,8 @@ var xTextBufferSetText func(uintptr, string, int) | |||
| 1628 | 1762 | // If @len is -1, @text must be nul-terminated. | |
| 1629 | 1763 | // @text must be valid UTF-8. | |
| 1630 | 1764 | func (x *TextBuffer) SetText(TextVar string, LenVar int) { | |
| 1765 | + | core.LazyRegister(&xTextBufferSetText, "GTK", "gtk_text_buffer_set_text", false) | |
| 1766 | + | ||
| 1631 | 1767 | xTextBufferSetText(x.GoPointer(), TextVar, LenVar) | |
| 1632 | 1768 | } | |
| 1633 | 1769 | ||
| @@ -1635,6 +1771,8 @@ var xTextBufferUndo func(uintptr) | |||
| 1635 | 1771 | ||
| 1636 | 1772 | // Undoes the last undoable action on the buffer, if there is one. | |
| 1637 | 1773 | func (x *TextBuffer) Undo() { | |
| 1774 | + | core.LazyRegister(&xTextBufferUndo, "GTK", "gtk_text_buffer_undo", false) | |
| 1775 | + | ||
| 1638 | 1776 | xTextBufferUndo(x.GoPointer()) | |
| 1639 | 1777 | } | |
| 1640 | 1778 | ||
| @@ -2164,89 +2302,4 @@ func (x *TextBuffer) ConnectUndo(cb *func(TextBuffer)) uint { | |||
| 2164 | 2302 | func init() { | |
| 2165 | 2303 | core.SetPackageName("GTK", "gtk4") | |
| 2166 | 2304 | core.SetSharedLibraries("GTK", []string{"libgtk-4.so.1", "libgtk-4.1.dylib"}) | |
| 2167 | - | var libs []uintptr | |
| 2168 | - | for _, libPath := range core.GetPaths("GTK") { | |
| 2169 | - | lib, err := purego.Dlopen(libPath, purego.RTLD_NOW|purego.RTLD_GLOBAL) | |
| 2170 | - | if err != nil { | |
| 2171 | - | panic(err) | |
| 2172 | - | } | |
| 2173 | - | libs = append(libs, lib) | |
| 2174 | - | } | |
| 2175 | - | ||
| 2176 | - | core.PuregoSafeRegister(&xTextBufferGLibType, libs, "gtk_text_buffer_get_type") | |
| 2177 | - | ||
| 2178 | - | core.PuregoSafeRegister(&xNewTextBuffer, libs, "gtk_text_buffer_new") | |
| 2179 | - | ||
| 2180 | - | core.PuregoSafeRegister(&xTextBufferAddCommitNotify, libs, "gtk_text_buffer_add_commit_notify") | |
| 2181 | - | core.PuregoSafeRegister(&xTextBufferAddMark, libs, "gtk_text_buffer_add_mark") | |
| 2182 | - | core.PuregoSafeRegister(&xTextBufferAddSelectionClipboard, libs, "gtk_text_buffer_add_selection_clipboard") | |
| 2183 | - | core.PuregoSafeRegister(&xTextBufferApplyTag, libs, "gtk_text_buffer_apply_tag") | |
| 2184 | - | core.PuregoSafeRegister(&xTextBufferApplyTagByName, libs, "gtk_text_buffer_apply_tag_by_name") | |
| 2185 | - | core.PuregoSafeRegister(&xTextBufferBackspace, libs, "gtk_text_buffer_backspace") | |
| 2186 | - | core.PuregoSafeRegister(&xTextBufferBeginIrreversibleAction, libs, "gtk_text_buffer_begin_irreversible_action") | |
| 2187 | - | core.PuregoSafeRegister(&xTextBufferBeginUserAction, libs, "gtk_text_buffer_begin_user_action") | |
| 2188 | - | core.PuregoSafeRegister(&xTextBufferCopyClipboard, libs, "gtk_text_buffer_copy_clipboard") | |
| 2189 | - | core.PuregoSafeRegister(&xTextBufferCreateChildAnchor, libs, "gtk_text_buffer_create_child_anchor") | |
| 2190 | - | core.PuregoSafeRegister(&xTextBufferCreateMark, libs, "gtk_text_buffer_create_mark") | |
| 2191 | - | core.PuregoSafeRegister(&xTextBufferCreateTag, libs, "gtk_text_buffer_create_tag") | |
| 2192 | - | core.PuregoSafeRegister(&xTextBufferCutClipboard, libs, "gtk_text_buffer_cut_clipboard") | |
| 2193 | - | core.PuregoSafeRegister(&xTextBufferDelete, libs, "gtk_text_buffer_delete") | |
| 2194 | - | core.PuregoSafeRegister(&xTextBufferDeleteInteractive, libs, "gtk_text_buffer_delete_interactive") | |
| 2195 | - | core.PuregoSafeRegister(&xTextBufferDeleteMark, libs, "gtk_text_buffer_delete_mark") | |
| 2196 | - | core.PuregoSafeRegister(&xTextBufferDeleteMarkByName, libs, "gtk_text_buffer_delete_mark_by_name") | |
| 2197 | - | core.PuregoSafeRegister(&xTextBufferDeleteSelection, libs, "gtk_text_buffer_delete_selection") | |
| 2198 | - | core.PuregoSafeRegister(&xTextBufferEndIrreversibleAction, libs, "gtk_text_buffer_end_irreversible_action") | |
| 2199 | - | core.PuregoSafeRegister(&xTextBufferEndUserAction, libs, "gtk_text_buffer_end_user_action") | |
| 2200 | - | core.PuregoSafeRegister(&xTextBufferGetBounds, libs, "gtk_text_buffer_get_bounds") | |
| 2201 | - | core.PuregoSafeRegister(&xTextBufferGetCanRedo, libs, "gtk_text_buffer_get_can_redo") | |
| 2202 | - | core.PuregoSafeRegister(&xTextBufferGetCanUndo, libs, "gtk_text_buffer_get_can_undo") | |
| 2203 | - | core.PuregoSafeRegister(&xTextBufferGetCharCount, libs, "gtk_text_buffer_get_char_count") | |
| 2204 | - | core.PuregoSafeRegister(&xTextBufferGetEnableUndo, libs, "gtk_text_buffer_get_enable_undo") | |
| 2205 | - | core.PuregoSafeRegister(&xTextBufferGetEndIter, libs, "gtk_text_buffer_get_end_iter") | |
| 2206 | - | core.PuregoSafeRegister(&xTextBufferGetHasSelection, libs, "gtk_text_buffer_get_has_selection") | |
| 2207 | - | core.PuregoSafeRegister(&xTextBufferGetInsert, libs, "gtk_text_buffer_get_insert") | |
| 2208 | - | core.PuregoSafeRegister(&xTextBufferGetIterAtChildAnchor, libs, "gtk_text_buffer_get_iter_at_child_anchor") | |
| 2209 | - | core.PuregoSafeRegister(&xTextBufferGetIterAtLine, libs, "gtk_text_buffer_get_iter_at_line") | |
| 2210 | - | core.PuregoSafeRegister(&xTextBufferGetIterAtLineIndex, libs, "gtk_text_buffer_get_iter_at_line_index") | |
| 2211 | - | core.PuregoSafeRegister(&xTextBufferGetIterAtLineOffset, libs, "gtk_text_buffer_get_iter_at_line_offset") | |
| 2212 | - | core.PuregoSafeRegister(&xTextBufferGetIterAtMark, libs, "gtk_text_buffer_get_iter_at_mark") | |
| 2213 | - | core.PuregoSafeRegister(&xTextBufferGetIterAtOffset, libs, "gtk_text_buffer_get_iter_at_offset") | |
| 2214 | - | core.PuregoSafeRegister(&xTextBufferGetLineCount, libs, "gtk_text_buffer_get_line_count") | |
| 2215 | - | core.PuregoSafeRegister(&xTextBufferGetMark, libs, "gtk_text_buffer_get_mark") | |
| 2216 | - | core.PuregoSafeRegister(&xTextBufferGetMaxUndoLevels, libs, "gtk_text_buffer_get_max_undo_levels") | |
| 2217 | - | core.PuregoSafeRegister(&xTextBufferGetModified, libs, "gtk_text_buffer_get_modified") | |
| 2218 | - | core.PuregoSafeRegister(&xTextBufferGetSelectionBound, libs, "gtk_text_buffer_get_selection_bound") | |
| 2219 | - | core.PuregoSafeRegister(&xTextBufferGetSelectionBounds, libs, "gtk_text_buffer_get_selection_bounds") | |
| 2220 | - | core.PuregoSafeRegister(&xTextBufferGetSelectionContent, libs, "gtk_text_buffer_get_selection_content") | |
| 2221 | - | core.PuregoSafeRegister(&xTextBufferGetSlice, libs, "gtk_text_buffer_get_slice") | |
| 2222 | - | core.PuregoSafeRegister(&xTextBufferGetStartIter, libs, "gtk_text_buffer_get_start_iter") | |
| 2223 | - | core.PuregoSafeRegister(&xTextBufferGetTagTable, libs, "gtk_text_buffer_get_tag_table") | |
| 2224 | - | core.PuregoSafeRegister(&xTextBufferGetText, libs, "gtk_text_buffer_get_text") | |
| 2225 | - | core.PuregoSafeRegister(&xTextBufferInsert, libs, "gtk_text_buffer_insert") | |
| 2226 | - | core.PuregoSafeRegister(&xTextBufferInsertAtCursor, libs, "gtk_text_buffer_insert_at_cursor") | |
| 2227 | - | core.PuregoSafeRegister(&xTextBufferInsertChildAnchor, libs, "gtk_text_buffer_insert_child_anchor") | |
| 2228 | - | core.PuregoSafeRegister(&xTextBufferInsertInteractive, libs, "gtk_text_buffer_insert_interactive") | |
| 2229 | - | core.PuregoSafeRegister(&xTextBufferInsertInteractiveAtCursor, libs, "gtk_text_buffer_insert_interactive_at_cursor") | |
| 2230 | - | core.PuregoSafeRegister(&xTextBufferInsertMarkup, libs, "gtk_text_buffer_insert_markup") | |
| 2231 | - | core.PuregoSafeRegister(&xTextBufferInsertPaintable, libs, "gtk_text_buffer_insert_paintable") | |
| 2232 | - | core.PuregoSafeRegister(&xTextBufferInsertRange, libs, "gtk_text_buffer_insert_range") | |
| 2233 | - | core.PuregoSafeRegister(&xTextBufferInsertRangeInteractive, libs, "gtk_text_buffer_insert_range_interactive") | |
| 2234 | - | core.PuregoSafeRegister(&xTextBufferInsertWithTags, libs, "gtk_text_buffer_insert_with_tags") | |
| 2235 | - | core.PuregoSafeRegister(&xTextBufferInsertWithTagsByName, libs, "gtk_text_buffer_insert_with_tags_by_name") | |
| 2236 | - | core.PuregoSafeRegister(&xTextBufferMoveMark, libs, "gtk_text_buffer_move_mark") | |
| 2237 | - | core.PuregoSafeRegister(&xTextBufferMoveMarkByName, libs, "gtk_text_buffer_move_mark_by_name") | |
| 2238 | - | core.PuregoSafeRegister(&xTextBufferPasteClipboard, libs, "gtk_text_buffer_paste_clipboard") | |
| 2239 | - | core.PuregoSafeRegister(&xTextBufferPlaceCursor, libs, "gtk_text_buffer_place_cursor") | |
| 2240 | - | core.PuregoSafeRegister(&xTextBufferRedo, libs, "gtk_text_buffer_redo") | |
| 2241 | - | core.PuregoSafeRegister(&xTextBufferRemoveAllTags, libs, "gtk_text_buffer_remove_all_tags") | |
| 2242 | - | core.PuregoSafeRegister(&xTextBufferRemoveCommitNotify, libs, "gtk_text_buffer_remove_commit_notify") | |
| 2243 | - | core.PuregoSafeRegister(&xTextBufferRemoveSelectionClipboard, libs, "gtk_text_buffer_remove_selection_clipboard") | |
| 2244 | - | core.PuregoSafeRegister(&xTextBufferRemoveTag, libs, "gtk_text_buffer_remove_tag") | |
| 2245 | - | core.PuregoSafeRegister(&xTextBufferRemoveTagByName, libs, "gtk_text_buffer_remove_tag_by_name") | |
| 2246 | - | core.PuregoSafeRegister(&xTextBufferSelectRange, libs, "gtk_text_buffer_select_range") | |
| 2247 | - | core.PuregoSafeRegister(&xTextBufferSetEnableUndo, libs, "gtk_text_buffer_set_enable_undo") | |
| 2248 | - | core.PuregoSafeRegister(&xTextBufferSetMaxUndoLevels, libs, "gtk_text_buffer_set_max_undo_levels") | |
| 2249 | - | core.PuregoSafeRegister(&xTextBufferSetModified, libs, "gtk_text_buffer_set_modified") | |
| 2250 | - | core.PuregoSafeRegister(&xTextBufferSetText, libs, "gtk_text_buffer_set_text") | |
| 2251 | - | core.PuregoSafeRegister(&xTextBufferUndo, libs, "gtk_text_buffer_undo") | |
| 2252 | 2305 | } | |
| @@ -603,6 +603,7 @@ type TextBuffer struct { | |||||
| 603 | var xTextBufferGLibType func() types.GType | 603 | var xTextBufferGLibType func() types.GType | ||
| 604 | 604 | ||||
| 605 | func TextBufferGLibType() types.GType { | 605 | func TextBufferGLibType() types.GType { | ||
| 606 | + | core.LazyRegister(&xTextBufferGLibType, "GTK", "gtk_text_buffer_get_type", false) | |||
| 606 | return xTextBufferGLibType() | 607 | return xTextBufferGLibType() | ||
| 607 | } | 608 | } | ||
| 608 | 609 | ||||
| @@ -616,6 +617,7 @@ var xNewTextBuffer func(uintptr) uintptr | |||||
| 616 | 617 | ||||
| 617 | // Creates a new text buffer. | 618 | // Creates a new text buffer. | ||
| 618 | func NewTextBuffer(TableVar *TextTagTable) *TextBuffer { | 619 | func NewTextBuffer(TableVar *TextTagTable) *TextBuffer { | ||
| 620 | + | core.LazyRegister(&xNewTextBuffer, "GTK", "gtk_text_buffer_new", false) | |||
| 619 | var cls *TextBuffer | 621 | var cls *TextBuffer | ||
| 620 | 622 | ||||
| 621 | cret := xNewTextBuffer(TableVar.GoPointer()) | 623 | cret := xNewTextBuffer(TableVar.GoPointer()) | ||
| @@ -642,6 +644,8 @@ var xTextBufferAddCommitNotify func(uintptr, TextBufferNotifyFlags, uintptr, uin | |||||
| 642 | // [signal@Gtk.TextBuffer::delete-range] signals to avoid ordering issues with | 644 | // [signal@Gtk.TextBuffer::delete-range] signals to avoid ordering issues with | ||
| 643 | // other signal handlers which may further modify the [type@Gtk.TextBuffer]. | 645 | // other signal handlers which may further modify the [type@Gtk.TextBuffer]. | ||
| 644 | func (x *TextBuffer) AddCommitNotify(FlagsVar TextBufferNotifyFlags, CommitNotifyVar *TextBufferCommitNotify, UserDataVar uintptr, DestroyVar *glib.DestroyNotify) uint { | 646 | func (x *TextBuffer) AddCommitNotify(FlagsVar TextBufferNotifyFlags, CommitNotifyVar *TextBufferCommitNotify, UserDataVar uintptr, DestroyVar *glib.DestroyNotify) uint { | ||
| 647 | + | core.LazyRegister(&xTextBufferAddCommitNotify, "GTK", "gtk_text_buffer_add_commit_notify", false) | |||
| 648 | + | ||||
| 645 | cret := xTextBufferAddCommitNotify(x.GoPointer(), FlagsVar, glib.NewCallbackNullable(CommitNotifyVar), UserDataVar, glib.NewCallbackNullable(DestroyVar)) | 649 | cret := xTextBufferAddCommitNotify(x.GoPointer(), FlagsVar, glib.NewCallbackNullable(CommitNotifyVar), UserDataVar, glib.NewCallbackNullable(DestroyVar)) | ||
| 646 | return cret | 650 | return cret | ||
| 647 | } | 651 | } | ||
| @@ -657,6 +661,8 @@ var xTextBufferAddMark func(uintptr, uintptr, *TextIter) | |||||
| 657 | // Emits the [signal@Gtk.TextBuffer::mark-set] signal as notification | 661 | // Emits the [signal@Gtk.TextBuffer::mark-set] signal as notification | ||
| 658 | // of the mark's initial placement. | 662 | // of the mark's initial placement. | ||
| 659 | func (x *TextBuffer) AddMark(MarkVar *TextMark, WhereVar *TextIter) { | 663 | func (x *TextBuffer) AddMark(MarkVar *TextMark, WhereVar *TextIter) { | ||
| 664 | + | core.LazyRegister(&xTextBufferAddMark, "GTK", "gtk_text_buffer_add_mark", false) | |||
| 665 | + | ||||
| 660 | xTextBufferAddMark(x.GoPointer(), MarkVar.GoPointer(), WhereVar) | 666 | xTextBufferAddMark(x.GoPointer(), MarkVar.GoPointer(), WhereVar) | ||
| 661 | } | 667 | } | ||
| 662 | 668 | ||||
| @@ -668,6 +674,8 @@ var xTextBufferAddSelectionClipboard func(uintptr, uintptr) | |||||
| 668 | // In most cases, @clipboard will be the `GdkClipboard` returned by | 674 | // In most cases, @clipboard will be the `GdkClipboard` returned by | ||
| 669 | // [method@Gtk.Widget.get_primary_clipboard] for a view of @buffer. | 675 | // [method@Gtk.Widget.get_primary_clipboard] for a view of @buffer. | ||
| 670 | func (x *TextBuffer) AddSelectionClipboard(ClipboardVar *gdk.Clipboard) { | 676 | func (x *TextBuffer) AddSelectionClipboard(ClipboardVar *gdk.Clipboard) { | ||
| 677 | + | core.LazyRegister(&xTextBufferAddSelectionClipboard, "GTK", "gtk_text_buffer_add_selection_clipboard", false) | |||
| 678 | + | ||||
| 671 | xTextBufferAddSelectionClipboard(x.GoPointer(), ClipboardVar.GoPointer()) | 679 | xTextBufferAddSelectionClipboard(x.GoPointer(), ClipboardVar.GoPointer()) | ||
| 672 | } | 680 | } | ||
| 673 | 681 | ||||
| @@ -679,6 +687,8 @@ var xTextBufferApplyTag func(uintptr, uintptr, *TextIter, *TextIter) | |||||
| 679 | // @tag to the given range. @start and @end do | 687 | // @tag to the given range. @start and @end do | ||
| 680 | // not have to be in order. | 688 | // not have to be in order. | ||
| 681 | func (x *TextBuffer) ApplyTag(TagVar *TextTag, StartVar *TextIter, EndVar *TextIter) { | 689 | func (x *TextBuffer) ApplyTag(TagVar *TextTag, StartVar *TextIter, EndVar *TextIter) { | ||
| 690 | + | core.LazyRegister(&xTextBufferApplyTag, "GTK", "gtk_text_buffer_apply_tag", false) | |||
| 691 | + | ||||
| 682 | xTextBufferApplyTag(x.GoPointer(), TagVar.GoPointer(), StartVar, EndVar) | 692 | xTextBufferApplyTag(x.GoPointer(), TagVar.GoPointer(), StartVar, EndVar) | ||
| 683 | } | 693 | } | ||
| 684 | 694 | ||||
| @@ -690,6 +700,8 @@ var xTextBufferApplyTagByName func(uintptr, string, *TextIter, *TextIter) | |||||
| 690 | // tag table to get a `GtkTextTag`, then calls | 700 | // tag table to get a `GtkTextTag`, then calls | ||
| 691 | // [method@Gtk.TextBuffer.apply_tag]. | 701 | // [method@Gtk.TextBuffer.apply_tag]. | ||
| 692 | func (x *TextBuffer) ApplyTagByName(NameVar string, StartVar *TextIter, EndVar *TextIter) { | 702 | func (x *TextBuffer) ApplyTagByName(NameVar string, StartVar *TextIter, EndVar *TextIter) { | ||
| 703 | + | core.LazyRegister(&xTextBufferApplyTagByName, "GTK", "gtk_text_buffer_apply_tag_by_name", false) | |||
| 704 | + | ||||
| 693 | xTextBufferApplyTagByName(x.GoPointer(), NameVar, StartVar, EndVar) | 705 | xTextBufferApplyTagByName(x.GoPointer(), NameVar, StartVar, EndVar) | ||
| 694 | } | 706 | } | ||
| 695 | 707 | ||||
| @@ -707,6 +719,8 @@ var xTextBufferBackspace func(uintptr, *TextIter, bool, bool) bool | |||||
| 707 | // invalid after calling this function; however, the @iter will be | 719 | // invalid after calling this function; however, the @iter will be | ||
| 708 | // re-initialized to point to the location where text was deleted. | 720 | // re-initialized to point to the location where text was deleted. | ||
| 709 | func (x *TextBuffer) Backspace(IterVar *TextIter, InteractiveVar bool, DefaultEditableVar bool) bool { | 721 | func (x *TextBuffer) Backspace(IterVar *TextIter, InteractiveVar bool, DefaultEditableVar bool) bool { | ||
| 722 | + | core.LazyRegister(&xTextBufferBackspace, "GTK", "gtk_text_buffer_backspace", false) | |||
| 723 | + | ||||
| 710 | cret := xTextBufferBackspace(x.GoPointer(), IterVar, InteractiveVar, DefaultEditableVar) | 724 | cret := xTextBufferBackspace(x.GoPointer(), IterVar, InteractiveVar, DefaultEditableVar) | ||
| 711 | return cret | 725 | return cret | ||
| 712 | } | 726 | } | ||
| @@ -725,6 +739,8 @@ var xTextBufferBeginIrreversibleAction func(uintptr) | |||||
| 725 | // You may nest calls to gtk_text_buffer_begin_irreversible_action() | 739 | // You may nest calls to gtk_text_buffer_begin_irreversible_action() | ||
| 726 | // and gtk_text_buffer_end_irreversible_action() pairs. | 740 | // and gtk_text_buffer_end_irreversible_action() pairs. | ||
| 727 | func (x *TextBuffer) BeginIrreversibleAction() { | 741 | func (x *TextBuffer) BeginIrreversibleAction() { | ||
| 742 | + | core.LazyRegister(&xTextBufferBeginIrreversibleAction, "GTK", "gtk_text_buffer_begin_irreversible_action", false) | |||
| 743 | + | ||||
| 728 | xTextBufferBeginIrreversibleAction(x.GoPointer()) | 744 | xTextBufferBeginIrreversibleAction(x.GoPointer()) | ||
| 729 | } | 745 | } | ||
| 730 | 746 | ||||
| @@ -749,6 +765,8 @@ var xTextBufferBeginUserAction func(uintptr) | |||||
| 749 | // so there's no need to add extra calls if you user action consists | 765 | // so there's no need to add extra calls if you user action consists | ||
| 750 | // solely of a single call to one of those functions. | 766 | // solely of a single call to one of those functions. | ||
| 751 | func (x *TextBuffer) BeginUserAction() { | 767 | func (x *TextBuffer) BeginUserAction() { | ||
| 768 | + | core.LazyRegister(&xTextBufferBeginUserAction, "GTK", "gtk_text_buffer_begin_user_action", false) | |||
| 769 | + | ||||
| 752 | xTextBufferBeginUserAction(x.GoPointer()) | 770 | xTextBufferBeginUserAction(x.GoPointer()) | ||
| 753 | } | 771 | } | ||
| 754 | 772 | ||||
| @@ -756,6 +774,8 @@ var xTextBufferCopyClipboard func(uintptr, uintptr) | |||||
| 756 | 774 | ||||
| 757 | // Copies the currently-selected text to a clipboard. | 775 | // Copies the currently-selected text to a clipboard. | ||
| 758 | func (x *TextBuffer) CopyClipboard(ClipboardVar *gdk.Clipboard) { | 776 | func (x *TextBuffer) CopyClipboard(ClipboardVar *gdk.Clipboard) { | ||
| 777 | + | core.LazyRegister(&xTextBufferCopyClipboard, "GTK", "gtk_text_buffer_copy_clipboard", false) | |||
| 778 | + | ||||
| 759 | xTextBufferCopyClipboard(x.GoPointer(), ClipboardVar.GoPointer()) | 779 | xTextBufferCopyClipboard(x.GoPointer(), ClipboardVar.GoPointer()) | ||
| 760 | } | 780 | } | ||
| 761 | 781 | ||||
| @@ -770,6 +790,7 @@ var xTextBufferCreateChildAnchor func(uintptr, *TextIter) uintptr | |||||
| 770 | // The new anchor is owned by the buffer; no reference count is | 790 | // The new anchor is owned by the buffer; no reference count is | ||
| 771 | // returned to the caller of this function. | 791 | // returned to the caller of this function. | ||
| 772 | func (x *TextBuffer) CreateChildAnchor(IterVar *TextIter) *TextChildAnchor { | 792 | func (x *TextBuffer) CreateChildAnchor(IterVar *TextIter) *TextChildAnchor { | ||
| 793 | + | core.LazyRegister(&xTextBufferCreateChildAnchor, "GTK", "gtk_text_buffer_create_child_anchor", false) | |||
| 773 | var cls *TextChildAnchor | 794 | var cls *TextChildAnchor | ||
| 774 | 795 | ||||
| 775 | cret := xTextBufferCreateChildAnchor(x.GoPointer(), IterVar) | 796 | cret := xTextBufferCreateChildAnchor(x.GoPointer(), IterVar) | ||
| @@ -805,6 +826,7 @@ var xTextBufferCreateMark func(uintptr, uintptr, *TextIter, bool) uintptr | |||||
| 805 | // Emits the [signal@Gtk.TextBuffer::mark-set] signal as notification | 826 | // Emits the [signal@Gtk.TextBuffer::mark-set] signal as notification | ||
| 806 | // of the mark's initial placement. | 827 | // of the mark's initial placement. | ||
| 807 | func (x *TextBuffer) CreateMark(MarkNameVar *string, WhereVar *TextIter, LeftGravityVar bool) *TextMark { | 828 | func (x *TextBuffer) CreateMark(MarkNameVar *string, WhereVar *TextIter, LeftGravityVar bool) *TextMark { | ||
| 829 | + | core.LazyRegister(&xTextBufferCreateMark, "GTK", "gtk_text_buffer_create_mark", false) | |||
| 808 | var cls *TextMark | 830 | var cls *TextMark | ||
| 809 | 831 | ||||
| 810 | MarkNameVarPtr := core.GStrdupNullable(MarkNameVar) | 832 | MarkNameVarPtr := core.GStrdupNullable(MarkNameVar) | ||
| @@ -837,6 +859,7 @@ var xTextBufferCreateTag func(uintptr, uintptr, uintptr, ...interface{}) uintptr | |||||
| 837 | // The @first_property_name argument and subsequent arguments are a list | 859 | // The @first_property_name argument and subsequent arguments are a list | ||
| 838 | // of properties to set on the tag, as with g_object_set(). | 860 | // of properties to set on the tag, as with g_object_set(). | ||
| 839 | func (x *TextBuffer) CreateTag(TagNameVar *string, FirstPropertyNameVar *string, varArgs ...interface{}) *TextTag { | 861 | func (x *TextBuffer) CreateTag(TagNameVar *string, FirstPropertyNameVar *string, varArgs ...interface{}) *TextTag { | ||
| 862 | + | core.LazyRegister(&xTextBufferCreateTag, "GTK", "gtk_text_buffer_create_tag", false) | |||
| 840 | var cls *TextTag | 863 | var cls *TextTag | ||
| 841 | 864 | ||||
| 842 | TagNameVarPtr := core.GStrdupNullable(TagNameVar) | 865 | TagNameVarPtr := core.GStrdupNullable(TagNameVar) | ||
| @@ -861,6 +884,8 @@ var xTextBufferCutClipboard func(uintptr, uintptr, bool) | |||||
| 861 | // Copies the currently-selected text to a clipboard, | 884 | // Copies the currently-selected text to a clipboard, | ||
| 862 | // then deletes said text if it’s editable. | 885 | // then deletes said text if it’s editable. | ||
| 863 | func (x *TextBuffer) CutClipboard(ClipboardVar *gdk.Clipboard, DefaultEditableVar bool) { | 886 | func (x *TextBuffer) CutClipboard(ClipboardVar *gdk.Clipboard, DefaultEditableVar bool) { | ||
| 887 | + | core.LazyRegister(&xTextBufferCutClipboard, "GTK", "gtk_text_buffer_cut_clipboard", false) | |||
| 888 | + | ||||
| 864 | xTextBufferCutClipboard(x.GoPointer(), ClipboardVar.GoPointer(), DefaultEditableVar) | 889 | xTextBufferCutClipboard(x.GoPointer(), ClipboardVar.GoPointer(), DefaultEditableVar) | ||
| 865 | } | 890 | } | ||
| 866 | 891 | ||||
| @@ -877,6 +902,8 @@ var xTextBufferDelete func(uintptr, *TextIter, *TextIter) | |||||
| 877 | // calling this function; however, the @start and @end will be | 902 | // calling this function; however, the @start and @end will be | ||
| 878 | // re-initialized to point to the location where text was deleted. | 903 | // re-initialized to point to the location where text was deleted. | ||
| 879 | func (x *TextBuffer) Delete(StartVar *TextIter, EndVar *TextIter) { | 904 | func (x *TextBuffer) Delete(StartVar *TextIter, EndVar *TextIter) { | ||
| 905 | + | core.LazyRegister(&xTextBufferDelete, "GTK", "gtk_text_buffer_delete", false) | |||
| 906 | + | ||||
| 880 | xTextBufferDelete(x.GoPointer(), StartVar, EndVar) | 907 | xTextBufferDelete(x.GoPointer(), StartVar, EndVar) | ||
| 881 | } | 908 | } | ||
| 882 | 909 | ||||
| @@ -889,6 +916,8 @@ var xTextBufferDeleteInteractive func(uintptr, *TextIter, *TextIter, bool) bool | |||||
| 889 | // to point to the location of the last deleted range, or left | 916 | // to point to the location of the last deleted range, or left | ||
| 890 | // untouched if no text was deleted. | 917 | // untouched if no text was deleted. | ||
| 891 | func (x *TextBuffer) DeleteInteractive(StartIterVar *TextIter, EndIterVar *TextIter, DefaultEditableVar bool) bool { | 918 | func (x *TextBuffer) DeleteInteractive(StartIterVar *TextIter, EndIterVar *TextIter, DefaultEditableVar bool) bool { | ||
| 919 | + | core.LazyRegister(&xTextBufferDeleteInteractive, "GTK", "gtk_text_buffer_delete_interactive", false) | |||
| 920 | + | ||||
| 892 | cret := xTextBufferDeleteInteractive(x.GoPointer(), StartIterVar, EndIterVar, DefaultEditableVar) | 921 | cret := xTextBufferDeleteInteractive(x.GoPointer(), StartIterVar, EndIterVar, DefaultEditableVar) | ||
| 893 | return cret | 922 | return cret | ||
| 894 | } | 923 | } | ||
| @@ -908,6 +937,8 @@ var xTextBufferDeleteMark func(uintptr, uintptr) | |||||
| 908 | // The [signal@Gtk.TextBuffer::mark-deleted] signal will be emitted as | 937 | // The [signal@Gtk.TextBuffer::mark-deleted] signal will be emitted as | ||
| 909 | // notification after the mark is deleted. | 938 | // notification after the mark is deleted. | ||
| 910 | func (x *TextBuffer) DeleteMark(MarkVar *TextMark) { | 939 | func (x *TextBuffer) DeleteMark(MarkVar *TextMark) { | ||
| 940 | + | core.LazyRegister(&xTextBufferDeleteMark, "GTK", "gtk_text_buffer_delete_mark", false) | |||
| 941 | + | ||||
| 911 | xTextBufferDeleteMark(x.GoPointer(), MarkVar.GoPointer()) | 942 | xTextBufferDeleteMark(x.GoPointer(), MarkVar.GoPointer()) | ||
| 912 | } | 943 | } | ||
| 913 | 944 | ||||
| @@ -917,6 +948,8 @@ var xTextBufferDeleteMarkByName func(uintptr, string) | |||||
| 917 | // | 948 | // | ||
| 918 | // See [method@Gtk.TextBuffer.delete_mark] for details. | 949 | // See [method@Gtk.TextBuffer.delete_mark] for details. | ||
| 919 | func (x *TextBuffer) DeleteMarkByName(NameVar string) { | 950 | func (x *TextBuffer) DeleteMarkByName(NameVar string) { | ||
| 951 | + | core.LazyRegister(&xTextBufferDeleteMarkByName, "GTK", "gtk_text_buffer_delete_mark_by_name", false) | |||
| 952 | + | ||||
| 920 | xTextBufferDeleteMarkByName(x.GoPointer(), NameVar) | 953 | xTextBufferDeleteMarkByName(x.GoPointer(), NameVar) | ||
| 921 | } | 954 | } | ||
| 922 | 955 | ||||
| @@ -928,6 +961,8 @@ var xTextBufferDeleteSelection func(uintptr, bool, bool) bool | |||||
| 928 | // If @interactive is %TRUE, the editability of the selection will be | 961 | // If @interactive is %TRUE, the editability of the selection will be | ||
| 929 | // considered (users can’t delete uneditable text). | 962 | // considered (users can’t delete uneditable text). | ||
| 930 | func (x *TextBuffer) DeleteSelection(InteractiveVar bool, DefaultEditableVar bool) bool { | 963 | func (x *TextBuffer) DeleteSelection(InteractiveVar bool, DefaultEditableVar bool) bool { | ||
| 964 | + | core.LazyRegister(&xTextBufferDeleteSelection, "GTK", "gtk_text_buffer_delete_selection", false) | |||
| 965 | + | ||||
| 931 | cret := xTextBufferDeleteSelection(x.GoPointer(), InteractiveVar, DefaultEditableVar) | 966 | cret := xTextBufferDeleteSelection(x.GoPointer(), InteractiveVar, DefaultEditableVar) | ||
| 932 | return cret | 967 | return cret | ||
| 933 | } | 968 | } | ||
| @@ -946,6 +981,8 @@ var xTextBufferEndIrreversibleAction func(uintptr) | |||||
| 946 | // You may nest calls to gtk_text_buffer_begin_irreversible_action() | 981 | // You may nest calls to gtk_text_buffer_begin_irreversible_action() | ||
| 947 | // and gtk_text_buffer_end_irreversible_action() pairs. | 982 | // and gtk_text_buffer_end_irreversible_action() pairs. | ||
| 948 | func (x *TextBuffer) EndIrreversibleAction() { | 983 | func (x *TextBuffer) EndIrreversibleAction() { | ||
| 984 | + | core.LazyRegister(&xTextBufferEndIrreversibleAction, "GTK", "gtk_text_buffer_end_irreversible_action", false) | |||
| 985 | + | ||||
| 949 | xTextBufferEndIrreversibleAction(x.GoPointer()) | 986 | xTextBufferEndIrreversibleAction(x.GoPointer()) | ||
| 950 | } | 987 | } | ||
| 951 | 988 | ||||
| @@ -957,6 +994,8 @@ var xTextBufferEndUserAction func(uintptr) | |||||
| 957 | // [method@Gtk.TextBuffer.begin_user_action]. | 994 | // [method@Gtk.TextBuffer.begin_user_action]. | ||
| 958 | // See that function for a full explanation. | 995 | // See that function for a full explanation. | ||
| 959 | func (x *TextBuffer) EndUserAction() { | 996 | func (x *TextBuffer) EndUserAction() { | ||
| 997 | + | core.LazyRegister(&xTextBufferEndUserAction, "GTK", "gtk_text_buffer_end_user_action", false) | |||
| 998 | + | ||||
| 960 | xTextBufferEndUserAction(x.GoPointer()) | 999 | xTextBufferEndUserAction(x.GoPointer()) | ||
| 961 | } | 1000 | } | ||
| 962 | 1001 | ||||
| @@ -965,6 +1004,8 @@ var xTextBufferGetBounds func(uintptr, *TextIter, *TextIter) | |||||
| 965 | // Retrieves the first and last iterators in the buffer, i.e. the | 1004 | // Retrieves the first and last iterators in the buffer, i.e. the | ||
| 966 | // entire buffer lies within the range [@start,@end). | 1005 | // entire buffer lies within the range [@start,@end). | ||
| 967 | func (x *TextBuffer) GetBounds(StartVar *TextIter, EndVar *TextIter) { | 1006 | func (x *TextBuffer) GetBounds(StartVar *TextIter, EndVar *TextIter) { | ||
| 1007 | + | core.LazyRegister(&xTextBufferGetBounds, "GTK", "gtk_text_buffer_get_bounds", false) | |||
| 1008 | + | ||||
| 968 | xTextBufferGetBounds(x.GoPointer(), StartVar, EndVar) | 1009 | xTextBufferGetBounds(x.GoPointer(), StartVar, EndVar) | ||
| 969 | } | 1010 | } | ||
| 970 | 1011 | ||||
| @@ -972,6 +1013,8 @@ var xTextBufferGetCanRedo func(uintptr) bool | |||||
| 972 | 1013 | ||||
| 973 | // Gets whether there is a redoable action in the history. | 1014 | // Gets whether there is a redoable action in the history. | ||
| 974 | func (x *TextBuffer) GetCanRedo() bool { | 1015 | func (x *TextBuffer) GetCanRedo() bool { | ||
| 1016 | + | core.LazyRegister(&xTextBufferGetCanRedo, "GTK", "gtk_text_buffer_get_can_redo", false) | |||
| 1017 | + | ||||
| 975 | cret := xTextBufferGetCanRedo(x.GoPointer()) | 1018 | cret := xTextBufferGetCanRedo(x.GoPointer()) | ||
| 976 | return cret | 1019 | return cret | ||
| 977 | } | 1020 | } | ||
| @@ -980,6 +1023,8 @@ var xTextBufferGetCanUndo func(uintptr) bool | |||||
| 980 | 1023 | ||||
| 981 | // Gets whether there is an undoable action in the history. | 1024 | // Gets whether there is an undoable action in the history. | ||
| 982 | func (x *TextBuffer) GetCanUndo() bool { | 1025 | func (x *TextBuffer) GetCanUndo() bool { | ||
| 1026 | + | core.LazyRegister(&xTextBufferGetCanUndo, "GTK", "gtk_text_buffer_get_can_undo", false) | |||
| 1027 | + | ||||
| 983 | cret := xTextBufferGetCanUndo(x.GoPointer()) | 1028 | cret := xTextBufferGetCanUndo(x.GoPointer()) | ||
| 984 | return cret | 1029 | return cret | ||
| 985 | } | 1030 | } | ||
| @@ -994,6 +1039,8 @@ var xTextBufferGetCharCount func(uintptr) int | |||||
| 994 | // | 1039 | // | ||
| 995 | // The character count is cached, so this function is very fast. | 1040 | // The character count is cached, so this function is very fast. | ||
| 996 | func (x *TextBuffer) GetCharCount() int { | 1041 | func (x *TextBuffer) GetCharCount() int { | ||
| 1042 | + | core.LazyRegister(&xTextBufferGetCharCount, "GTK", "gtk_text_buffer_get_char_count", false) | |||
| 1043 | + | ||||
| 997 | cret := xTextBufferGetCharCount(x.GoPointer()) | 1044 | cret := xTextBufferGetCharCount(x.GoPointer()) | ||
| 998 | return cret | 1045 | return cret | ||
| 999 | } | 1046 | } | ||
| @@ -1007,6 +1054,8 @@ var xTextBufferGetEnableUndo func(uintptr) bool | |||||
| 1007 | // [method@Gtk.TextBuffer.end_irreversible_action] to create | 1054 | // [method@Gtk.TextBuffer.end_irreversible_action] to create | ||
| 1008 | // changes to the buffer that cannot be undone. | 1055 | // changes to the buffer that cannot be undone. | ||
| 1009 | func (x *TextBuffer) GetEnableUndo() bool { | 1056 | func (x *TextBuffer) GetEnableUndo() bool { | ||
| 1057 | + | core.LazyRegister(&xTextBufferGetEnableUndo, "GTK", "gtk_text_buffer_get_enable_undo", false) | |||
| 1058 | + | ||||
| 1010 | cret := xTextBufferGetEnableUndo(x.GoPointer()) | 1059 | cret := xTextBufferGetEnableUndo(x.GoPointer()) | ||
| 1011 | return cret | 1060 | return cret | ||
| 1012 | } | 1061 | } | ||
| @@ -1022,6 +1071,8 @@ var xTextBufferGetEndIter func(uintptr, *TextIter) | |||||
| 1022 | // the buffer (call [method@Gtk.TextBuffer.get_start_iter] to get | 1071 | // the buffer (call [method@Gtk.TextBuffer.get_start_iter] to get | ||
| 1023 | // character position 0) to the end iterator. | 1072 | // character position 0) to the end iterator. | ||
| 1024 | func (x *TextBuffer) GetEndIter(IterVar *TextIter) { | 1073 | func (x *TextBuffer) GetEndIter(IterVar *TextIter) { | ||
| 1074 | + | core.LazyRegister(&xTextBufferGetEndIter, "GTK", "gtk_text_buffer_get_end_iter", false) | |||
| 1075 | + | ||||
| 1025 | xTextBufferGetEndIter(x.GoPointer(), IterVar) | 1076 | xTextBufferGetEndIter(x.GoPointer(), IterVar) | ||
| 1026 | } | 1077 | } | ||
| 1027 | 1078 | ||||
| @@ -1029,6 +1080,8 @@ var xTextBufferGetHasSelection func(uintptr) bool | |||||
| 1029 | 1080 | ||||
| 1030 | // Indicates whether the buffer has some text currently selected. | 1081 | // Indicates whether the buffer has some text currently selected. | ||
| 1031 | func (x *TextBuffer) GetHasSelection() bool { | 1082 | func (x *TextBuffer) GetHasSelection() bool { | ||
| 1083 | + | core.LazyRegister(&xTextBufferGetHasSelection, "GTK", "gtk_text_buffer_get_has_selection", false) | |||
| 1084 | + | ||||
| 1032 | cret := xTextBufferGetHasSelection(x.GoPointer()) | 1085 | cret := xTextBufferGetHasSelection(x.GoPointer()) | ||
| 1033 | return cret | 1086 | return cret | ||
| 1034 | } | 1087 | } | ||
| @@ -1041,6 +1094,7 @@ var xTextBufferGetInsert func(uintptr) uintptr | |||||
| 1041 | // to get the mark named “insert”, but very slightly more | 1094 | // to get the mark named “insert”, but very slightly more | ||
| 1042 | // efficient, and involves less typing. | 1095 | // efficient, and involves less typing. | ||
| 1043 | func (x *TextBuffer) GetInsert() *TextMark { | 1096 | func (x *TextBuffer) GetInsert() *TextMark { | ||
| 1097 | + | core.LazyRegister(&xTextBufferGetInsert, "GTK", "gtk_text_buffer_get_insert", false) | |||
| 1044 | var cls *TextMark | 1098 | var cls *TextMark | ||
| 1045 | 1099 | ||||
| 1046 | cret := xTextBufferGetInsert(x.GoPointer()) | 1100 | cret := xTextBufferGetInsert(x.GoPointer()) | ||
| @@ -1058,6 +1112,8 @@ var xTextBufferGetIterAtChildAnchor func(uintptr, *TextIter, uintptr) | |||||
| 1058 | 1112 | ||||
| 1059 | // Obtains the location of @anchor within @buffer. | 1113 | // Obtains the location of @anchor within @buffer. | ||
| 1060 | func (x *TextBuffer) GetIterAtChildAnchor(IterVar *TextIter, AnchorVar *TextChildAnchor) { | 1114 | func (x *TextBuffer) GetIterAtChildAnchor(IterVar *TextIter, AnchorVar *TextChildAnchor) { | ||
| 1115 | + | core.LazyRegister(&xTextBufferGetIterAtChildAnchor, "GTK", "gtk_text_buffer_get_iter_at_child_anchor", false) | |||
| 1116 | + | ||||
| 1061 | xTextBufferGetIterAtChildAnchor(x.GoPointer(), IterVar, AnchorVar.GoPointer()) | 1117 | xTextBufferGetIterAtChildAnchor(x.GoPointer(), IterVar, AnchorVar.GoPointer()) | ||
| 1062 | } | 1118 | } | ||
| 1063 | 1119 | ||||
| @@ -1068,6 +1124,8 @@ var xTextBufferGetIterAtLine func(uintptr, *TextIter, int) bool | |||||
| 1068 | // If @line_number is greater than or equal to the number of lines | 1124 | // If @line_number is greater than or equal to the number of lines | ||
| 1069 | // in the @buffer, the end iterator is returned. | 1125 | // in the @buffer, the end iterator is returned. | ||
| 1070 | func (x *TextBuffer) GetIterAtLine(IterVar *TextIter, LineNumberVar int) bool { | 1126 | func (x *TextBuffer) GetIterAtLine(IterVar *TextIter, LineNumberVar int) bool { | ||
| 1127 | + | core.LazyRegister(&xTextBufferGetIterAtLine, "GTK", "gtk_text_buffer_get_iter_at_line", false) | |||
| 1128 | + | ||||
| 1071 | cret := xTextBufferGetIterAtLine(x.GoPointer(), IterVar, LineNumberVar) | 1129 | cret := xTextBufferGetIterAtLine(x.GoPointer(), IterVar, LineNumberVar) | ||
| 1072 | return cret | 1130 | return cret | ||
| 1073 | } | 1131 | } | ||
| @@ -1083,6 +1141,8 @@ var xTextBufferGetIterAtLineIndex func(uintptr, *TextIter, int, int) bool | |||||
| 1083 | // the end iterator is returned. And if @byte_index is off the | 1141 | // the end iterator is returned. And if @byte_index is off the | ||
| 1084 | // end of the line, the iterator at the end of the line is returned. | 1142 | // end of the line, the iterator at the end of the line is returned. | ||
| 1085 | func (x *TextBuffer) GetIterAtLineIndex(IterVar *TextIter, LineNumberVar int, ByteIndexVar int) bool { | 1143 | func (x *TextBuffer) GetIterAtLineIndex(IterVar *TextIter, LineNumberVar int, ByteIndexVar int) bool { | ||
| 1144 | + | core.LazyRegister(&xTextBufferGetIterAtLineIndex, "GTK", "gtk_text_buffer_get_iter_at_line_index", false) | |||
| 1145 | + | ||||
| 1086 | cret := xTextBufferGetIterAtLineIndex(x.GoPointer(), IterVar, LineNumberVar, ByteIndexVar) | 1146 | cret := xTextBufferGetIterAtLineIndex(x.GoPointer(), IterVar, LineNumberVar, ByteIndexVar) | ||
| 1087 | return cret | 1147 | return cret | ||
| 1088 | } | 1148 | } | ||
| @@ -1098,6 +1158,8 @@ var xTextBufferGetIterAtLineOffset func(uintptr, *TextIter, int, int) bool | |||||
| 1098 | // the end iterator is returned. And if @char_offset is off the | 1158 | // the end iterator is returned. And if @char_offset is off the | ||
| 1099 | // end of the line, the iterator at the end of the line is returned. | 1159 | // end of the line, the iterator at the end of the line is returned. | ||
| 1100 | func (x *TextBuffer) GetIterAtLineOffset(IterVar *TextIter, LineNumberVar int, CharOffsetVar int) bool { | 1160 | func (x *TextBuffer) GetIterAtLineOffset(IterVar *TextIter, LineNumberVar int, CharOffsetVar int) bool { | ||
| 1161 | + | core.LazyRegister(&xTextBufferGetIterAtLineOffset, "GTK", "gtk_text_buffer_get_iter_at_line_offset", false) | |||
| 1162 | + | ||||
| 1101 | cret := xTextBufferGetIterAtLineOffset(x.GoPointer(), IterVar, LineNumberVar, CharOffsetVar) | 1163 | cret := xTextBufferGetIterAtLineOffset(x.GoPointer(), IterVar, LineNumberVar, CharOffsetVar) | ||
| 1102 | return cret | 1164 | return cret | ||
| 1103 | } | 1165 | } | ||
| @@ -1106,6 +1168,8 @@ var xTextBufferGetIterAtMark func(uintptr, *TextIter, uintptr) | |||||
| 1106 | 1168 | ||||
| 1107 | // Initializes @iter with the current position of @mark. | 1169 | // Initializes @iter with the current position of @mark. | ||
| 1108 | func (x *TextBuffer) GetIterAtMark(IterVar *TextIter, MarkVar *TextMark) { | 1170 | func (x *TextBuffer) GetIterAtMark(IterVar *TextIter, MarkVar *TextMark) { | ||
| 1171 | + | core.LazyRegister(&xTextBufferGetIterAtMark, "GTK", "gtk_text_buffer_get_iter_at_mark", false) | |||
| 1172 | + | ||||
| 1109 | xTextBufferGetIterAtMark(x.GoPointer(), IterVar, MarkVar.GoPointer()) | 1173 | xTextBufferGetIterAtMark(x.GoPointer(), IterVar, MarkVar.GoPointer()) | ||
| 1110 | } | 1174 | } | ||
| 1111 | 1175 | ||||
| @@ -1118,6 +1182,8 @@ var xTextBufferGetIterAtOffset func(uintptr, *TextIter, int) | |||||
| 1118 | // of characters in the buffer, @iter is initialized to the end iterator, | 1182 | // of characters in the buffer, @iter is initialized to the end iterator, | ||
| 1119 | // the iterator one past the last valid character in the buffer. | 1183 | // the iterator one past the last valid character in the buffer. | ||
| 1120 | func (x *TextBuffer) GetIterAtOffset(IterVar *TextIter, CharOffsetVar int) { | 1184 | func (x *TextBuffer) GetIterAtOffset(IterVar *TextIter, CharOffsetVar int) { | ||
| 1185 | + | core.LazyRegister(&xTextBufferGetIterAtOffset, "GTK", "gtk_text_buffer_get_iter_at_offset", false) | |||
| 1186 | + | ||||
| 1121 | xTextBufferGetIterAtOffset(x.GoPointer(), IterVar, CharOffsetVar) | 1187 | xTextBufferGetIterAtOffset(x.GoPointer(), IterVar, CharOffsetVar) | ||
| 1122 | } | 1188 | } | ||
| 1123 | 1189 | ||||
| @@ -1127,6 +1193,8 @@ var xTextBufferGetLineCount func(uintptr) int | |||||
| 1127 | // | 1193 | // | ||
| 1128 | // This value is cached, so the function is very fast. | 1194 | // This value is cached, so the function is very fast. | ||
| 1129 | func (x *TextBuffer) GetLineCount() int { | 1195 | func (x *TextBuffer) GetLineCount() int { | ||
| 1196 | + | core.LazyRegister(&xTextBufferGetLineCount, "GTK", "gtk_text_buffer_get_line_count", false) | |||
| 1197 | + | ||||
| 1130 | cret := xTextBufferGetLineCount(x.GoPointer()) | 1198 | cret := xTextBufferGetLineCount(x.GoPointer()) | ||
| 1131 | return cret | 1199 | return cret | ||
| 1132 | } | 1200 | } | ||
| @@ -1136,6 +1204,7 @@ var xTextBufferGetMark func(uintptr, string) uintptr | |||||
| 1136 | // Returns the mark named @name in buffer @buffer, or %NULL if no such | 1204 | // Returns the mark named @name in buffer @buffer, or %NULL if no such | ||
| 1137 | // mark exists in the buffer. | 1205 | // mark exists in the buffer. | ||
| 1138 | func (x *TextBuffer) GetMark(NameVar string) *TextMark { | 1206 | func (x *TextBuffer) GetMark(NameVar string) *TextMark { | ||
| 1207 | + | core.LazyRegister(&xTextBufferGetMark, "GTK", "gtk_text_buffer_get_mark", false) | |||
| 1139 | var cls *TextMark | 1208 | var cls *TextMark | ||
| 1140 | 1209 | ||||
| 1141 | cret := xTextBufferGetMark(x.GoPointer(), NameVar) | 1210 | cret := xTextBufferGetMark(x.GoPointer(), NameVar) | ||
| @@ -1157,6 +1226,8 @@ var xTextBufferGetMaxUndoLevels func(uintptr) uint | |||||
| 1157 | // have a memory usage impact as it requires storing an additional | 1226 | // have a memory usage impact as it requires storing an additional | ||
| 1158 | // copy of the inserted or removed text within the text buffer. | 1227 | // copy of the inserted or removed text within the text buffer. | ||
| 1159 | func (x *TextBuffer) GetMaxUndoLevels() uint { | 1228 | func (x *TextBuffer) GetMaxUndoLevels() uint { | ||
| 1229 | + | core.LazyRegister(&xTextBufferGetMaxUndoLevels, "GTK", "gtk_text_buffer_get_max_undo_levels", false) | |||
| 1230 | + | ||||
| 1160 | cret := xTextBufferGetMaxUndoLevels(x.GoPointer()) | 1231 | cret := xTextBufferGetMaxUndoLevels(x.GoPointer()) | ||
| 1161 | return cret | 1232 | return cret | ||
| 1162 | } | 1233 | } | ||
| @@ -1169,6 +1240,8 @@ var xTextBufferGetModified func(uintptr) bool | |||||
| 1169 | // | 1240 | // | ||
| 1170 | // Used for example to enable a “save” function in a text editor. | 1241 | // Used for example to enable a “save” function in a text editor. | ||
| 1171 | func (x *TextBuffer) GetModified() bool { | 1242 | func (x *TextBuffer) GetModified() bool { | ||
| 1243 | + | core.LazyRegister(&xTextBufferGetModified, "GTK", "gtk_text_buffer_get_modified", false) | |||
| 1244 | + | ||||
| 1172 | cret := xTextBufferGetModified(x.GoPointer()) | 1245 | cret := xTextBufferGetModified(x.GoPointer()) | ||
| 1173 | return cret | 1246 | return cret | ||
| 1174 | } | 1247 | } | ||
| @@ -1188,6 +1261,7 @@ var xTextBufferGetSelectionBound func(uintptr) uintptr | |||||
| 1188 | // function for handling the selection, if you just want to know whether | 1261 | // function for handling the selection, if you just want to know whether | ||
| 1189 | // there’s a selection and what its bounds are. | 1262 | // there’s a selection and what its bounds are. | ||
| 1190 | func (x *TextBuffer) GetSelectionBound() *TextMark { | 1263 | func (x *TextBuffer) GetSelectionBound() *TextMark { | ||
| 1264 | + | core.LazyRegister(&xTextBufferGetSelectionBound, "GTK", "gtk_text_buffer_get_selection_bound", false) | |||
| 1191 | var cls *TextMark | 1265 | var cls *TextMark | ||
| 1192 | 1266 | ||||
| 1193 | cret := xTextBufferGetSelectionBound(x.GoPointer()) | 1267 | cret := xTextBufferGetSelectionBound(x.GoPointer()) | ||
| @@ -1211,6 +1285,8 @@ var xTextBufferGetSelectionBounds func(uintptr, *TextIter, *TextIter) bool | |||||
| 1211 | // If @start and @end are %NULL, then they are not filled in, but the | 1285 | // If @start and @end are %NULL, then they are not filled in, but the | ||
| 1212 | // return value still indicates whether text is selected. | 1286 | // return value still indicates whether text is selected. | ||
| 1213 | func (x *TextBuffer) GetSelectionBounds(StartVar *TextIter, EndVar *TextIter) bool { | 1287 | func (x *TextBuffer) GetSelectionBounds(StartVar *TextIter, EndVar *TextIter) bool { | ||
| 1288 | + | core.LazyRegister(&xTextBufferGetSelectionBounds, "GTK", "gtk_text_buffer_get_selection_bounds", false) | |||
| 1289 | + | ||||
| 1214 | cret := xTextBufferGetSelectionBounds(x.GoPointer(), StartVar, EndVar) | 1290 | cret := xTextBufferGetSelectionBounds(x.GoPointer(), StartVar, EndVar) | ||
| 1215 | return cret | 1291 | return cret | ||
| 1216 | } | 1292 | } | ||
| @@ -1222,6 +1298,7 @@ var xTextBufferGetSelectionContent func(uintptr) uintptr | |||||
| 1222 | // It can be used to make the content of @buffer available | 1298 | // It can be used to make the content of @buffer available | ||
| 1223 | // in a `GdkClipboard`, see [method@Gdk.Clipboard.set_content]. | 1299 | // in a `GdkClipboard`, see [method@Gdk.Clipboard.set_content]. | ||
| 1224 | func (x *TextBuffer) GetSelectionContent() *gdk.ContentProvider { | 1300 | func (x *TextBuffer) GetSelectionContent() *gdk.ContentProvider { | ||
| 1301 | + | core.LazyRegister(&xTextBufferGetSelectionContent, "GTK", "gtk_text_buffer_get_selection_content", false) | |||
| 1225 | var cls *gdk.ContentProvider | 1302 | var cls *gdk.ContentProvider | ||
| 1226 | 1303 | ||||
| 1227 | cret := xTextBufferGetSelectionContent(x.GoPointer()) | 1304 | cret := xTextBufferGetSelectionContent(x.GoPointer()) | ||
| @@ -1247,6 +1324,8 @@ var xTextBufferGetSlice func(uintptr, *TextIter, *TextIter, bool) string | |||||
| 1247 | // Note that 0xFFFC can occur in normal text as well, so it is not a | 1324 | // Note that 0xFFFC can occur in normal text as well, so it is not a | ||
| 1248 | // reliable indicator that a paintable or widget is in the buffer. | 1325 | // reliable indicator that a paintable or widget is in the buffer. | ||
| 1249 | func (x *TextBuffer) GetSlice(StartVar *TextIter, EndVar *TextIter, IncludeHiddenCharsVar bool) string { | 1326 | func (x *TextBuffer) GetSlice(StartVar *TextIter, EndVar *TextIter, IncludeHiddenCharsVar bool) string { | ||
| 1327 | + | core.LazyRegister(&xTextBufferGetSlice, "GTK", "gtk_text_buffer_get_slice", false) | |||
| 1328 | + | ||||
| 1250 | cret := xTextBufferGetSlice(x.GoPointer(), StartVar, EndVar, IncludeHiddenCharsVar) | 1329 | cret := xTextBufferGetSlice(x.GoPointer(), StartVar, EndVar, IncludeHiddenCharsVar) | ||
| 1251 | return cret | 1330 | return cret | ||
| 1252 | } | 1331 | } | ||
| @@ -1258,6 +1337,8 @@ var xTextBufferGetStartIter func(uintptr, *TextIter) | |||||
| 1258 | // This is the same as using [method@Gtk.TextBuffer.get_iter_at_offset] | 1337 | // This is the same as using [method@Gtk.TextBuffer.get_iter_at_offset] | ||
| 1259 | // to get the iter at character offset 0. | 1338 | // to get the iter at character offset 0. | ||
| 1260 | func (x *TextBuffer) GetStartIter(IterVar *TextIter) { | 1339 | func (x *TextBuffer) GetStartIter(IterVar *TextIter) { | ||
| 1340 | + | core.LazyRegister(&xTextBufferGetStartIter, "GTK", "gtk_text_buffer_get_start_iter", false) | |||
| 1341 | + | ||||
| 1261 | xTextBufferGetStartIter(x.GoPointer(), IterVar) | 1342 | xTextBufferGetStartIter(x.GoPointer(), IterVar) | ||
| 1262 | } | 1343 | } | ||
| 1263 | 1344 | ||||
| @@ -1265,6 +1346,7 @@ var xTextBufferGetTagTable func(uintptr) uintptr | |||||
| 1265 | 1346 | ||||
| 1266 | // Get the `GtkTextTagTable` associated with this buffer. | 1347 | // Get the `GtkTextTagTable` associated with this buffer. | ||
| 1267 | func (x *TextBuffer) GetTagTable() *TextTagTable { | 1348 | func (x *TextBuffer) GetTagTable() *TextTagTable { | ||
| 1349 | + | core.LazyRegister(&xTextBufferGetTagTable, "GTK", "gtk_text_buffer_get_tag_table", false) | |||
| 1268 | var cls *TextTagTable | 1350 | var cls *TextTagTable | ||
| 1269 | 1351 | ||||
| 1270 | cret := xTextBufferGetTagTable(x.GoPointer()) | 1352 | cret := xTextBufferGetTagTable(x.GoPointer()) | ||
| @@ -1289,6 +1371,8 @@ var xTextBufferGetText func(uintptr, *TextIter, *TextIter, bool) string | |||||
| 1289 | // correspond to byte and character indexes into the buffer. | 1371 | // correspond to byte and character indexes into the buffer. | ||
| 1290 | // Contrast with [method@Gtk.TextBuffer.get_slice]. | 1372 | // Contrast with [method@Gtk.TextBuffer.get_slice]. | ||
| 1291 | func (x *TextBuffer) GetText(StartVar *TextIter, EndVar *TextIter, IncludeHiddenCharsVar bool) string { | 1373 | func (x *TextBuffer) GetText(StartVar *TextIter, EndVar *TextIter, IncludeHiddenCharsVar bool) string { | ||
| 1374 | + | core.LazyRegister(&xTextBufferGetText, "GTK", "gtk_text_buffer_get_text", false) | |||
| 1375 | + | ||||
| 1292 | cret := xTextBufferGetText(x.GoPointer(), StartVar, EndVar, IncludeHiddenCharsVar) | 1376 | cret := xTextBufferGetText(x.GoPointer(), StartVar, EndVar, IncludeHiddenCharsVar) | ||
| 1293 | return cret | 1377 | return cret | ||
| 1294 | } | 1378 | } | ||
| @@ -1304,6 +1388,8 @@ var xTextBufferInsert func(uintptr, *TextIter, string, int) | |||||
| 1304 | // default signal handler revalidates it to point to the end of the | 1388 | // default signal handler revalidates it to point to the end of the | ||
| 1305 | // inserted text. | 1389 | // inserted text. | ||
| 1306 | func (x *TextBuffer) Insert(IterVar *TextIter, TextVar string, LenVar int) { | 1390 | func (x *TextBuffer) Insert(IterVar *TextIter, TextVar string, LenVar int) { | ||
| 1391 | + | core.LazyRegister(&xTextBufferInsert, "GTK", "gtk_text_buffer_insert", false) | |||
| 1392 | + | ||||
| 1307 | xTextBufferInsert(x.GoPointer(), IterVar, TextVar, LenVar) | 1393 | xTextBufferInsert(x.GoPointer(), IterVar, TextVar, LenVar) | ||
| 1308 | } | 1394 | } | ||
| 1309 | 1395 | ||||
| @@ -1314,6 +1400,8 @@ var xTextBufferInsertAtCursor func(uintptr, string, int) | |||||
| 1314 | // Simply calls [method@Gtk.TextBuffer.insert], | 1400 | // Simply calls [method@Gtk.TextBuffer.insert], | ||
| 1315 | // using the current cursor position as the insertion point. | 1401 | // using the current cursor position as the insertion point. | ||
| 1316 | func (x *TextBuffer) InsertAtCursor(TextVar string, LenVar int) { | 1402 | func (x *TextBuffer) InsertAtCursor(TextVar string, LenVar int) { | ||
| 1403 | + | core.LazyRegister(&xTextBufferInsertAtCursor, "GTK", "gtk_text_buffer_insert_at_cursor", false) | |||
| 1404 | + | ||||
| 1317 | xTextBufferInsertAtCursor(x.GoPointer(), TextVar, LenVar) | 1405 | xTextBufferInsertAtCursor(x.GoPointer(), TextVar, LenVar) | ||
| 1318 | } | 1406 | } | ||
| 1319 | 1407 | ||||
| @@ -1333,6 +1421,8 @@ var xTextBufferInsertChildAnchor func(uintptr, *TextIter, uintptr) | |||||
| 1333 | // convenient alternative to this function. The buffer will add a | 1421 | // convenient alternative to this function. The buffer will add a | ||
| 1334 | // reference to the anchor, so you can unref it after insertion. | 1422 | // reference to the anchor, so you can unref it after insertion. | ||
| 1335 | func (x *TextBuffer) InsertChildAnchor(IterVar *TextIter, AnchorVar *TextChildAnchor) { | 1423 | func (x *TextBuffer) InsertChildAnchor(IterVar *TextIter, AnchorVar *TextChildAnchor) { | ||
| 1424 | + | core.LazyRegister(&xTextBufferInsertChildAnchor, "GTK", "gtk_text_buffer_insert_child_anchor", false) | |||
| 1425 | + | ||||
| 1336 | xTextBufferInsertChildAnchor(x.GoPointer(), IterVar, AnchorVar.GoPointer()) | 1426 | xTextBufferInsertChildAnchor(x.GoPointer(), IterVar, AnchorVar.GoPointer()) | ||
| 1337 | } | 1427 | } | ||
| 1338 | 1428 | ||||
| @@ -1349,6 +1439,8 @@ var xTextBufferInsertInteractive func(uintptr, *TextIter, string, int, bool) boo | |||||
| 1349 | // have a tag affecting editability applied to it. Typically the | 1439 | // have a tag affecting editability applied to it. Typically the | ||
| 1350 | // result of [method@Gtk.TextView.get_editable] is appropriate here. | 1440 | // result of [method@Gtk.TextView.get_editable] is appropriate here. | ||
| 1351 | func (x *TextBuffer) InsertInteractive(IterVar *TextIter, TextVar string, LenVar int, DefaultEditableVar bool) bool { | 1441 | func (x *TextBuffer) InsertInteractive(IterVar *TextIter, TextVar string, LenVar int, DefaultEditableVar bool) bool { | ||
| 1442 | + | core.LazyRegister(&xTextBufferInsertInteractive, "GTK", "gtk_text_buffer_insert_interactive", false) | |||
| 1443 | + | ||||
| 1352 | cret := xTextBufferInsertInteractive(x.GoPointer(), IterVar, TextVar, LenVar, DefaultEditableVar) | 1444 | cret := xTextBufferInsertInteractive(x.GoPointer(), IterVar, TextVar, LenVar, DefaultEditableVar) | ||
| 1353 | return cret | 1445 | return cret | ||
| 1354 | } | 1446 | } | ||
| @@ -1364,6 +1456,8 @@ var xTextBufferInsertInteractiveAtCursor func(uintptr, string, int, bool) bool | |||||
| 1364 | // have a tag affecting editability applied to it. Typically the | 1456 | // have a tag affecting editability applied to it. Typically the | ||
| 1365 | // result of [method@Gtk.TextView.get_editable] is appropriate here. | 1457 | // result of [method@Gtk.TextView.get_editable] is appropriate here. | ||
| 1366 | func (x *TextBuffer) InsertInteractiveAtCursor(TextVar string, LenVar int, DefaultEditableVar bool) bool { | 1458 | func (x *TextBuffer) InsertInteractiveAtCursor(TextVar string, LenVar int, DefaultEditableVar bool) bool { | ||
| 1459 | + | core.LazyRegister(&xTextBufferInsertInteractiveAtCursor, "GTK", "gtk_text_buffer_insert_interactive_at_cursor", false) | |||
| 1460 | + | ||||
| 1367 | cret := xTextBufferInsertInteractiveAtCursor(x.GoPointer(), TextVar, LenVar, DefaultEditableVar) | 1461 | cret := xTextBufferInsertInteractiveAtCursor(x.GoPointer(), TextVar, LenVar, DefaultEditableVar) | ||
| 1368 | return cret | 1462 | return cret | ||
| 1369 | } | 1463 | } | ||
| @@ -1377,6 +1471,8 @@ var xTextBufferInsertMarkup func(uintptr, *TextIter, string, int) | |||||
| 1377 | // possibly multiple times; insertion actually occurs in the default handler | 1471 | // possibly multiple times; insertion actually occurs in the default handler | ||
| 1378 | // for the signal. @iter will point to the end of the inserted text on return. | 1472 | // for the signal. @iter will point to the end of the inserted text on return. | ||
| 1379 | func (x *TextBuffer) InsertMarkup(IterVar *TextIter, MarkupVar string, LenVar int) { | 1473 | func (x *TextBuffer) InsertMarkup(IterVar *TextIter, MarkupVar string, LenVar int) { | ||
| 1474 | + | core.LazyRegister(&xTextBufferInsertMarkup, "GTK", "gtk_text_buffer_insert_markup", false) | |||
| 1475 | + | ||||
| 1380 | xTextBufferInsertMarkup(x.GoPointer(), IterVar, MarkupVar, LenVar) | 1476 | xTextBufferInsertMarkup(x.GoPointer(), IterVar, MarkupVar, LenVar) | ||
| 1381 | } | 1477 | } | ||
| 1382 | 1478 | ||||
| @@ -1392,6 +1488,8 @@ var xTextBufferInsertPaintable func(uintptr, *TextIter, uintptr) | |||||
| 1392 | // variants do not. e.g. see [method@Gtk.TextBuffer.get_slice] and | 1488 | // variants do not. e.g. see [method@Gtk.TextBuffer.get_slice] and | ||
| 1393 | // [method@Gtk.TextBuffer.get_text]. | 1489 | // [method@Gtk.TextBuffer.get_text]. | ||
| 1394 | func (x *TextBuffer) InsertPaintable(IterVar *TextIter, PaintableVar gdk.Paintable) { | 1490 | func (x *TextBuffer) InsertPaintable(IterVar *TextIter, PaintableVar gdk.Paintable) { | ||
| 1491 | + | core.LazyRegister(&xTextBufferInsertPaintable, "GTK", "gtk_text_buffer_insert_paintable", false) | |||
| 1492 | + | ||||
| 1395 | xTextBufferInsertPaintable(x.GoPointer(), IterVar, PaintableVar.GoPointer()) | 1493 | xTextBufferInsertPaintable(x.GoPointer(), IterVar, PaintableVar.GoPointer()) | ||
| 1396 | } | 1494 | } | ||
| 1397 | 1495 | ||||
| @@ -1409,6 +1507,8 @@ var xTextBufferInsertRange func(uintptr, *TextIter, *TextIter, *TextIter) | |||||
| 1409 | // Implemented via emissions of the ::insert-text and ::apply-tag signals, | 1507 | // Implemented via emissions of the ::insert-text and ::apply-tag signals, | ||
| 1410 | // so expect those. | 1508 | // so expect those. | ||
| 1411 | func (x *TextBuffer) InsertRange(IterVar *TextIter, StartVar *TextIter, EndVar *TextIter) { | 1509 | func (x *TextBuffer) InsertRange(IterVar *TextIter, StartVar *TextIter, EndVar *TextIter) { | ||
| 1510 | + | core.LazyRegister(&xTextBufferInsertRange, "GTK", "gtk_text_buffer_insert_range", false) | |||
| 1511 | + | ||||
| 1412 | xTextBufferInsertRange(x.GoPointer(), IterVar, StartVar, EndVar) | 1512 | xTextBufferInsertRange(x.GoPointer(), IterVar, StartVar, EndVar) | ||
| 1413 | } | 1513 | } | ||
| 1414 | 1514 | ||||
| @@ -1423,6 +1523,8 @@ var xTextBufferInsertRangeInteractive func(uintptr, *TextIter, *TextIter, *TextI | |||||
| 1423 | // no tags enclosing @iter affect editability. Typically the result | 1523 | // no tags enclosing @iter affect editability. Typically the result | ||
| 1424 | // of [method@Gtk.TextView.get_editable] is appropriate here. | 1524 | // of [method@Gtk.TextView.get_editable] is appropriate here. | ||
| 1425 | func (x *TextBuffer) InsertRangeInteractive(IterVar *TextIter, StartVar *TextIter, EndVar *TextIter, DefaultEditableVar bool) bool { | 1525 | func (x *TextBuffer) InsertRangeInteractive(IterVar *TextIter, StartVar *TextIter, EndVar *TextIter, DefaultEditableVar bool) bool { | ||
| 1526 | + | core.LazyRegister(&xTextBufferInsertRangeInteractive, "GTK", "gtk_text_buffer_insert_range_interactive", false) | |||
| 1527 | + | ||||
| 1426 | cret := xTextBufferInsertRangeInteractive(x.GoPointer(), IterVar, StartVar, EndVar, DefaultEditableVar) | 1528 | cret := xTextBufferInsertRangeInteractive(x.GoPointer(), IterVar, StartVar, EndVar, DefaultEditableVar) | ||
| 1427 | return cret | 1529 | return cret | ||
| 1428 | } | 1530 | } | ||
| @@ -1437,6 +1539,8 @@ var xTextBufferInsertWithTags func(uintptr, *TextIter, string, int, uintptr, ... | |||||
| 1437 | // then [method@Gtk.TextBuffer.apply_tag] on the inserted text; | 1539 | // then [method@Gtk.TextBuffer.apply_tag] on the inserted text; | ||
| 1438 | // this is just a convenience function. | 1540 | // this is just a convenience function. | ||
| 1439 | func (x *TextBuffer) InsertWithTags(IterVar *TextIter, TextVar string, LenVar int, FirstTagVar *TextTag, varArgs ...interface{}) { | 1541 | func (x *TextBuffer) InsertWithTags(IterVar *TextIter, TextVar string, LenVar int, FirstTagVar *TextTag, varArgs ...interface{}) { | ||
| 1542 | + | core.LazyRegister(&xTextBufferInsertWithTags, "GTK", "gtk_text_buffer_insert_with_tags", false) | |||
| 1543 | + | ||||
| 1440 | xTextBufferInsertWithTags(x.GoPointer(), IterVar, TextVar, LenVar, FirstTagVar.GoPointer(), varArgs...) | 1544 | xTextBufferInsertWithTags(x.GoPointer(), IterVar, TextVar, LenVar, FirstTagVar.GoPointer(), varArgs...) | ||
| 1441 | } | 1545 | } | ||
| 1442 | 1546 | ||||
| @@ -1448,6 +1552,8 @@ var xTextBufferInsertWithTagsByName func(uintptr, *TextIter, string, int, string | |||||
| 1448 | // Same as [method@Gtk.TextBuffer.insert_with_tags], but allows you | 1552 | // Same as [method@Gtk.TextBuffer.insert_with_tags], but allows you | ||
| 1449 | // to pass in tag names instead of tag objects. | 1553 | // to pass in tag names instead of tag objects. | ||
| 1450 | func (x *TextBuffer) InsertWithTagsByName(IterVar *TextIter, TextVar string, LenVar int, FirstTagNameVar string, varArgs ...interface{}) { | 1554 | func (x *TextBuffer) InsertWithTagsByName(IterVar *TextIter, TextVar string, LenVar int, FirstTagNameVar string, varArgs ...interface{}) { | ||
| 1555 | + | core.LazyRegister(&xTextBufferInsertWithTagsByName, "GTK", "gtk_text_buffer_insert_with_tags_by_name", false) | |||
| 1556 | + | ||||
| 1451 | xTextBufferInsertWithTagsByName(x.GoPointer(), IterVar, TextVar, LenVar, FirstTagNameVar, varArgs...) | 1557 | xTextBufferInsertWithTagsByName(x.GoPointer(), IterVar, TextVar, LenVar, FirstTagNameVar, varArgs...) | ||
| 1452 | } | 1558 | } | ||
| 1453 | 1559 | ||||
| @@ -1458,6 +1564,8 @@ var xTextBufferMoveMark func(uintptr, uintptr, *TextIter) | |||||
| 1458 | // Emits the [signal@Gtk.TextBuffer::mark-set] signal | 1564 | // Emits the [signal@Gtk.TextBuffer::mark-set] signal | ||
| 1459 | // as notification of the move. | 1565 | // as notification of the move. | ||
| 1460 | func (x *TextBuffer) MoveMark(MarkVar *TextMark, WhereVar *TextIter) { | 1566 | func (x *TextBuffer) MoveMark(MarkVar *TextMark, WhereVar *TextIter) { | ||
| 1567 | + | core.LazyRegister(&xTextBufferMoveMark, "GTK", "gtk_text_buffer_move_mark", false) | |||
| 1568 | + | ||||
| 1461 | xTextBufferMoveMark(x.GoPointer(), MarkVar.GoPointer(), WhereVar) | 1569 | xTextBufferMoveMark(x.GoPointer(), MarkVar.GoPointer(), WhereVar) | ||
| 1462 | } | 1570 | } | ||
| 1463 | 1571 | ||||
| @@ -1467,6 +1575,8 @@ var xTextBufferMoveMarkByName func(uintptr, string, *TextIter) | |||||
| 1467 | // | 1575 | // | ||
| 1468 | // See [method@Gtk.TextBuffer.move_mark] for details. | 1576 | // See [method@Gtk.TextBuffer.move_mark] for details. | ||
| 1469 | func (x *TextBuffer) MoveMarkByName(NameVar string, WhereVar *TextIter) { | 1577 | func (x *TextBuffer) MoveMarkByName(NameVar string, WhereVar *TextIter) { | ||
| 1578 | + | core.LazyRegister(&xTextBufferMoveMarkByName, "GTK", "gtk_text_buffer_move_mark_by_name", false) | |||
| 1579 | + | ||||
| 1470 | xTextBufferMoveMarkByName(x.GoPointer(), NameVar, WhereVar) | 1580 | xTextBufferMoveMarkByName(x.GoPointer(), NameVar, WhereVar) | ||
| 1471 | } | 1581 | } | ||
| 1472 | 1582 | ||||
| @@ -1482,6 +1592,8 @@ var xTextBufferPasteClipboard func(uintptr, uintptr, *TextIter, bool) | |||||
| 1482 | // and return, and at some point later after the main loop runs, the paste | 1592 | // and return, and at some point later after the main loop runs, the paste | ||
| 1483 | // data will be inserted. | 1593 | // data will be inserted. | ||
| 1484 | func (x *TextBuffer) PasteClipboard(ClipboardVar *gdk.Clipboard, OverrideLocationVar *TextIter, DefaultEditableVar bool) { | 1594 | func (x *TextBuffer) PasteClipboard(ClipboardVar *gdk.Clipboard, OverrideLocationVar *TextIter, DefaultEditableVar bool) { | ||
| 1595 | + | core.LazyRegister(&xTextBufferPasteClipboard, "GTK", "gtk_text_buffer_paste_clipboard", false) | |||
| 1596 | + | ||||
| 1485 | xTextBufferPasteClipboard(x.GoPointer(), ClipboardVar.GoPointer(), OverrideLocationVar, DefaultEditableVar) | 1597 | xTextBufferPasteClipboard(x.GoPointer(), ClipboardVar.GoPointer(), OverrideLocationVar, DefaultEditableVar) | ||
| 1486 | } | 1598 | } | ||
| 1487 | 1599 | ||||
| @@ -1497,6 +1609,8 @@ var xTextBufferPlaceCursor func(uintptr, *TextIter) | |||||
| 1497 | // to be recalculated. This function moves them as a unit, which can | 1609 | // to be recalculated. This function moves them as a unit, which can | ||
| 1498 | // be optimized. | 1610 | // be optimized. | ||
| 1499 | func (x *TextBuffer) PlaceCursor(WhereVar *TextIter) { | 1611 | func (x *TextBuffer) PlaceCursor(WhereVar *TextIter) { | ||
| 1612 | + | core.LazyRegister(&xTextBufferPlaceCursor, "GTK", "gtk_text_buffer_place_cursor", false) | |||
| 1613 | + | ||||
| 1500 | xTextBufferPlaceCursor(x.GoPointer(), WhereVar) | 1614 | xTextBufferPlaceCursor(x.GoPointer(), WhereVar) | ||
| 1501 | } | 1615 | } | ||
| 1502 | 1616 | ||||
| @@ -1504,6 +1618,8 @@ var xTextBufferRedo func(uintptr) | |||||
| 1504 | 1618 | ||||
| 1505 | // Redoes the next redoable action on the buffer, if there is one. | 1619 | // Redoes the next redoable action on the buffer, if there is one. | ||
| 1506 | func (x *TextBuffer) Redo() { | 1620 | func (x *TextBuffer) Redo() { | ||
| 1621 | + | core.LazyRegister(&xTextBufferRedo, "GTK", "gtk_text_buffer_redo", false) | |||
| 1622 | + | ||||
| 1507 | xTextBufferRedo(x.GoPointer()) | 1623 | xTextBufferRedo(x.GoPointer()) | ||
| 1508 | } | 1624 | } | ||
| 1509 | 1625 | ||||
| @@ -1516,6 +1632,8 @@ var xTextBufferRemoveAllTags func(uintptr, *TextIter, *TextIter) | |||||
| 1516 | // function is probably a bad idea if you have two or more unrelated | 1632 | // function is probably a bad idea if you have two or more unrelated | ||
| 1517 | // code sections that add tags. | 1633 | // code sections that add tags. | ||
| 1518 | func (x *TextBuffer) RemoveAllTags(StartVar *TextIter, EndVar *TextIter) { | 1634 | func (x *TextBuffer) RemoveAllTags(StartVar *TextIter, EndVar *TextIter) { | ||
| 1635 | + | core.LazyRegister(&xTextBufferRemoveAllTags, "GTK", "gtk_text_buffer_remove_all_tags", false) | |||
| 1636 | + | ||||
| 1519 | xTextBufferRemoveAllTags(x.GoPointer(), StartVar, EndVar) | 1637 | xTextBufferRemoveAllTags(x.GoPointer(), StartVar, EndVar) | ||
| 1520 | } | 1638 | } | ||
| 1521 | 1639 | ||||
| @@ -1527,6 +1645,8 @@ var xTextBufferRemoveCommitNotify func(uintptr, uint) | |||||
| 1527 | // This may result in the `user_data_destroy` being called that was passed when registering | 1645 | // This may result in the `user_data_destroy` being called that was passed when registering | ||
| 1528 | // the commit notify functions. | 1646 | // the commit notify functions. | ||
| 1529 | func (x *TextBuffer) RemoveCommitNotify(CommitNotifyHandlerVar uint) { | 1647 | func (x *TextBuffer) RemoveCommitNotify(CommitNotifyHandlerVar uint) { | ||
| 1648 | + | core.LazyRegister(&xTextBufferRemoveCommitNotify, "GTK", "gtk_text_buffer_remove_commit_notify", false) | |||
| 1649 | + | ||||
| 1530 | xTextBufferRemoveCommitNotify(x.GoPointer(), CommitNotifyHandlerVar) | 1650 | xTextBufferRemoveCommitNotify(x.GoPointer(), CommitNotifyHandlerVar) | ||
| 1531 | } | 1651 | } | ||
| 1532 | 1652 | ||||
| @@ -1535,6 +1655,8 @@ var xTextBufferRemoveSelectionClipboard func(uintptr, uintptr) | |||||
| 1535 | // Removes a `GdkClipboard` added with | 1655 | // Removes a `GdkClipboard` added with | ||
| 1536 | // [method@Gtk.TextBuffer.add_selection_clipboard] | 1656 | // [method@Gtk.TextBuffer.add_selection_clipboard] | ||
| 1537 | func (x *TextBuffer) RemoveSelectionClipboard(ClipboardVar *gdk.Clipboard) { | 1657 | func (x *TextBuffer) RemoveSelectionClipboard(ClipboardVar *gdk.Clipboard) { | ||
| 1658 | + | core.LazyRegister(&xTextBufferRemoveSelectionClipboard, "GTK", "gtk_text_buffer_remove_selection_clipboard", false) | |||
| 1659 | + | ||||
| 1538 | xTextBufferRemoveSelectionClipboard(x.GoPointer(), ClipboardVar.GoPointer()) | 1660 | xTextBufferRemoveSelectionClipboard(x.GoPointer(), ClipboardVar.GoPointer()) | ||
| 1539 | } | 1661 | } | ||
| 1540 | 1662 | ||||
| @@ -1546,6 +1668,8 @@ var xTextBufferRemoveTag func(uintptr, uintptr, *TextIter, *TextIter) | |||||
| 1546 | // of @tag from the given range. @start and @end don’t have | 1668 | // of @tag from the given range. @start and @end don’t have | ||
| 1547 | // to be in order. | 1669 | // to be in order. | ||
| 1548 | func (x *TextBuffer) RemoveTag(TagVar *TextTag, StartVar *TextIter, EndVar *TextIter) { | 1670 | func (x *TextBuffer) RemoveTag(TagVar *TextTag, StartVar *TextIter, EndVar *TextIter) { | ||
| 1671 | + | core.LazyRegister(&xTextBufferRemoveTag, "GTK", "gtk_text_buffer_remove_tag", false) | |||
| 1672 | + | ||||
| 1549 | xTextBufferRemoveTag(x.GoPointer(), TagVar.GoPointer(), StartVar, EndVar) | 1673 | xTextBufferRemoveTag(x.GoPointer(), TagVar.GoPointer(), StartVar, EndVar) | ||
| 1550 | } | 1674 | } | ||
| 1551 | 1675 | ||||
| @@ -1557,6 +1681,8 @@ var xTextBufferRemoveTagByName func(uintptr, string, *TextIter, *TextIter) | |||||
| 1557 | // tag table to get a `GtkTextTag`, then calls | 1681 | // tag table to get a `GtkTextTag`, then calls | ||
| 1558 | // [method@Gtk.TextBuffer.remove_tag]. | 1682 | // [method@Gtk.TextBuffer.remove_tag]. | ||
| 1559 | func (x *TextBuffer) RemoveTagByName(NameVar string, StartVar *TextIter, EndVar *TextIter) { | 1683 | func (x *TextBuffer) RemoveTagByName(NameVar string, StartVar *TextIter, EndVar *TextIter) { | ||
| 1684 | + | core.LazyRegister(&xTextBufferRemoveTagByName, "GTK", "gtk_text_buffer_remove_tag_by_name", false) | |||
| 1685 | + | ||||
| 1560 | xTextBufferRemoveTagByName(x.GoPointer(), NameVar, StartVar, EndVar) | 1686 | xTextBufferRemoveTagByName(x.GoPointer(), NameVar, StartVar, EndVar) | ||
| 1561 | } | 1687 | } | ||
| 1562 | 1688 | ||||
| @@ -1572,6 +1698,8 @@ var xTextBufferSelectRange func(uintptr, *TextIter, *TextIter) | |||||
| 1572 | // to be recalculated. This function moves them as a unit, which can | 1698 | // to be recalculated. This function moves them as a unit, which can | ||
| 1573 | // be optimized. | 1699 | // be optimized. | ||
| 1574 | func (x *TextBuffer) SelectRange(InsVar *TextIter, BoundVar *TextIter) { | 1700 | func (x *TextBuffer) SelectRange(InsVar *TextIter, BoundVar *TextIter) { | ||
| 1701 | + | core.LazyRegister(&xTextBufferSelectRange, "GTK", "gtk_text_buffer_select_range", false) | |||
| 1702 | + | ||||
| 1575 | xTextBufferSelectRange(x.GoPointer(), InsVar, BoundVar) | 1703 | xTextBufferSelectRange(x.GoPointer(), InsVar, BoundVar) | ||
| 1576 | } | 1704 | } | ||
| 1577 | 1705 | ||||
| @@ -1589,6 +1717,8 @@ var xTextBufferSetEnableUndo func(uintptr, bool) | |||||
| 1589 | // [method@Gtk.TextBuffer.end_irreversible_action] to create | 1717 | // [method@Gtk.TextBuffer.end_irreversible_action] to create | ||
| 1590 | // changes to the buffer that cannot be undone. | 1718 | // changes to the buffer that cannot be undone. | ||
| 1591 | func (x *TextBuffer) SetEnableUndo(EnableUndoVar bool) { | 1719 | func (x *TextBuffer) SetEnableUndo(EnableUndoVar bool) { | ||
| 1720 | + | core.LazyRegister(&xTextBufferSetEnableUndo, "GTK", "gtk_text_buffer_set_enable_undo", false) | |||
| 1721 | + | ||||
| 1592 | xTextBufferSetEnableUndo(x.GoPointer(), EnableUndoVar) | 1722 | xTextBufferSetEnableUndo(x.GoPointer(), EnableUndoVar) | ||
| 1593 | } | 1723 | } | ||
| 1594 | 1724 | ||||
| @@ -1600,6 +1730,8 @@ var xTextBufferSetMaxUndoLevels func(uintptr, uint) | |||||
| 1600 | // have a memory usage impact as it requires storing an additional | 1730 | // have a memory usage impact as it requires storing an additional | ||
| 1601 | // copy of the inserted or removed text within the text buffer. | 1731 | // copy of the inserted or removed text within the text buffer. | ||
| 1602 | func (x *TextBuffer) SetMaxUndoLevels(MaxUndoLevelsVar uint) { | 1732 | func (x *TextBuffer) SetMaxUndoLevels(MaxUndoLevelsVar uint) { | ||
| 1733 | + | core.LazyRegister(&xTextBufferSetMaxUndoLevels, "GTK", "gtk_text_buffer_set_max_undo_levels", false) | |||
| 1734 | + | ||||
| 1603 | xTextBufferSetMaxUndoLevels(x.GoPointer(), MaxUndoLevelsVar) | 1735 | xTextBufferSetMaxUndoLevels(x.GoPointer(), MaxUndoLevelsVar) | ||
| 1604 | } | 1736 | } | ||
| 1605 | 1737 | ||||
| @@ -1615,6 +1747,8 @@ var xTextBufferSetModified func(uintptr, bool) | |||||
| 1615 | // bit flips, the buffer emits the | 1747 | // bit flips, the buffer emits the | ||
| 1616 | // [signal@Gtk.TextBuffer::modified-changed] signal. | 1748 | // [signal@Gtk.TextBuffer::modified-changed] signal. | ||
| 1617 | func (x *TextBuffer) SetModified(SettingVar bool) { | 1749 | func (x *TextBuffer) SetModified(SettingVar bool) { | ||
| 1750 | + | core.LazyRegister(&xTextBufferSetModified, "GTK", "gtk_text_buffer_set_modified", false) | |||
| 1751 | + | ||||
| 1618 | xTextBufferSetModified(x.GoPointer(), SettingVar) | 1752 | xTextBufferSetModified(x.GoPointer(), SettingVar) | ||
| 1619 | } | 1753 | } | ||
| 1620 | 1754 | ||||
| @@ -1628,6 +1762,8 @@ var xTextBufferSetText func(uintptr, string, int) | |||||
| 1628 | // If @len is -1, @text must be nul-terminated. | 1762 | // If @len is -1, @text must be nul-terminated. | ||
| 1629 | // @text must be valid UTF-8. | 1763 | // @text must be valid UTF-8. | ||
| 1630 | func (x *TextBuffer) SetText(TextVar string, LenVar int) { | 1764 | func (x *TextBuffer) SetText(TextVar string, LenVar int) { | ||
| 1765 | + | core.LazyRegister(&xTextBufferSetText, "GTK", "gtk_text_buffer_set_text", false) | |||
| 1766 | + | ||||
| 1631 | xTextBufferSetText(x.GoPointer(), TextVar, LenVar) | 1767 | xTextBufferSetText(x.GoPointer(), TextVar, LenVar) | ||
| 1632 | } | 1768 | } | ||
| 1633 | 1769 | ||||
| @@ -1635,6 +1771,8 @@ var xTextBufferUndo func(uintptr) | |||||
| 1635 | 1771 | ||||
| 1636 | // Undoes the last undoable action on the buffer, if there is one. | 1772 | // Undoes the last undoable action on the buffer, if there is one. | ||
| 1637 | func (x *TextBuffer) Undo() { | 1773 | func (x *TextBuffer) Undo() { | ||
| 1774 | + | core.LazyRegister(&xTextBufferUndo, "GTK", "gtk_text_buffer_undo", false) | |||
| 1775 | + | ||||
| 1638 | xTextBufferUndo(x.GoPointer()) | 1776 | xTextBufferUndo(x.GoPointer()) | ||
| 1639 | } | 1777 | } | ||
| 1640 | 1778 | ||||
| @@ -2164,89 +2302,4 @@ func (x *TextBuffer) ConnectUndo(cb *func(TextBuffer)) uint { | |||||
| 2164 | func init() { | 2302 | func init() { | ||
| 2165 | core.SetPackageName("GTK", "gtk4") | 2303 | core.SetPackageName("GTK", "gtk4") | ||
| 2166 | core.SetSharedLibraries("GTK", []string{"libgtk-4.so.1", "libgtk-4.1.dylib"}) | 2304 | core.SetSharedLibraries("GTK", []string{"libgtk-4.so.1", "libgtk-4.1.dylib"}) | ||
| 2167 | - | var libs []uintptr | |||
| 2168 | - | for _, libPath := range core.GetPaths("GTK") { | |||
| 2169 | - | lib, err := purego.Dlopen(libPath, purego.RTLD_NOW|purego.RTLD_GLOBAL) | |||
| 2170 | - | if err != nil { | |||
| 2171 | - | panic(err) | |||
| 2172 | - | } | |||
| 2173 | - | libs = append(libs, lib) | |||
| 2174 | - | } | |||
| 2175 | - | ||||
| 2176 | - | core.PuregoSafeRegister(&xTextBufferGLibType, libs, "gtk_text_buffer_get_type") | |||
| 2177 | - | ||||
| 2178 | - | core.PuregoSafeRegister(&xNewTextBuffer, libs, "gtk_text_buffer_new") | |||
| 2179 | - | ||||
| 2180 | - | core.PuregoSafeRegister(&xTextBufferAddCommitNotify, libs, "gtk_text_buffer_add_commit_notify") | |||
| 2181 | - | core.PuregoSafeRegister(&xTextBufferAddMark, libs, "gtk_text_buffer_add_mark") | |||
| 2182 | - | core.PuregoSafeRegister(&xTextBufferAddSelectionClipboard, libs, "gtk_text_buffer_add_selection_clipboard") | |||
| 2183 | - | core.PuregoSafeRegister(&xTextBufferApplyTag, libs, "gtk_text_buffer_apply_tag") | |||
| 2184 | - | core.PuregoSafeRegister(&xTextBufferApplyTagByName, libs, "gtk_text_buffer_apply_tag_by_name") | |||
| 2185 | - | core.PuregoSafeRegister(&xTextBufferBackspace, libs, "gtk_text_buffer_backspace") | |||
| 2186 | - | core.PuregoSafeRegister(&xTextBufferBeginIrreversibleAction, libs, "gtk_text_buffer_begin_irreversible_action") | |||
| 2187 | - | core.PuregoSafeRegister(&xTextBufferBeginUserAction, libs, "gtk_text_buffer_begin_user_action") | |||
| 2188 | - | core.PuregoSafeRegister(&xTextBufferCopyClipboard, libs, "gtk_text_buffer_copy_clipboard") | |||
| 2189 | - | core.PuregoSafeRegister(&xTextBufferCreateChildAnchor, libs, "gtk_text_buffer_create_child_anchor") | |||
| 2190 | - | core.PuregoSafeRegister(&xTextBufferCreateMark, libs, "gtk_text_buffer_create_mark") | |||
| 2191 | - | core.PuregoSafeRegister(&xTextBufferCreateTag, libs, "gtk_text_buffer_create_tag") | |||
| 2192 | - | core.PuregoSafeRegister(&xTextBufferCutClipboard, libs, "gtk_text_buffer_cut_clipboard") | |||
| 2193 | - | core.PuregoSafeRegister(&xTextBufferDelete, libs, "gtk_text_buffer_delete") | |||
| 2194 | - | core.PuregoSafeRegister(&xTextBufferDeleteInteractive, libs, "gtk_text_buffer_delete_interactive") | |||
| 2195 | - | core.PuregoSafeRegister(&xTextBufferDeleteMark, libs, "gtk_text_buffer_delete_mark") | |||
| 2196 | - | core.PuregoSafeRegister(&xTextBufferDeleteMarkByName, libs, "gtk_text_buffer_delete_mark_by_name") | |||
| 2197 | - | core.PuregoSafeRegister(&xTextBufferDeleteSelection, libs, "gtk_text_buffer_delete_selection") | |||
| 2198 | - | core.PuregoSafeRegister(&xTextBufferEndIrreversibleAction, libs, "gtk_text_buffer_end_irreversible_action") | |||
| 2199 | - | core.PuregoSafeRegister(&xTextBufferEndUserAction, libs, "gtk_text_buffer_end_user_action") | |||
| 2200 | - | core.PuregoSafeRegister(&xTextBufferGetBounds, libs, "gtk_text_buffer_get_bounds") | |||
| 2201 | - | core.PuregoSafeRegister(&xTextBufferGetCanRedo, libs, "gtk_text_buffer_get_can_redo") | |||
| 2202 | - | core.PuregoSafeRegister(&xTextBufferGetCanUndo, libs, "gtk_text_buffer_get_can_undo") | |||
| 2203 | - | core.PuregoSafeRegister(&xTextBufferGetCharCount, libs, "gtk_text_buffer_get_char_count") | |||
| 2204 | - | core.PuregoSafeRegister(&xTextBufferGetEnableUndo, libs, "gtk_text_buffer_get_enable_undo") | |||
| 2205 | - | core.PuregoSafeRegister(&xTextBufferGetEndIter, libs, "gtk_text_buffer_get_end_iter") | |||
| 2206 | - | core.PuregoSafeRegister(&xTextBufferGetHasSelection, libs, "gtk_text_buffer_get_has_selection") | |||
| 2207 | - | core.PuregoSafeRegister(&xTextBufferGetInsert, libs, "gtk_text_buffer_get_insert") | |||
| 2208 | - | core.PuregoSafeRegister(&xTextBufferGetIterAtChildAnchor, libs, "gtk_text_buffer_get_iter_at_child_anchor") | |||
| 2209 | - | core.PuregoSafeRegister(&xTextBufferGetIterAtLine, libs, "gtk_text_buffer_get_iter_at_line") | |||
| 2210 | - | core.PuregoSafeRegister(&xTextBufferGetIterAtLineIndex, libs, "gtk_text_buffer_get_iter_at_line_index") | |||
| 2211 | - | core.PuregoSafeRegister(&xTextBufferGetIterAtLineOffset, libs, "gtk_text_buffer_get_iter_at_line_offset") | |||
| 2212 | - | core.PuregoSafeRegister(&xTextBufferGetIterAtMark, libs, "gtk_text_buffer_get_iter_at_mark") | |||
| 2213 | - | core.PuregoSafeRegister(&xTextBufferGetIterAtOffset, libs, "gtk_text_buffer_get_iter_at_offset") | |||
| 2214 | - | core.PuregoSafeRegister(&xTextBufferGetLineCount, libs, "gtk_text_buffer_get_line_count") | |||
| 2215 | - | core.PuregoSafeRegister(&xTextBufferGetMark, libs, "gtk_text_buffer_get_mark") | |||
| 2216 | - | core.PuregoSafeRegister(&xTextBufferGetMaxUndoLevels, libs, "gtk_text_buffer_get_max_undo_levels") | |||
| 2217 | - | core.PuregoSafeRegister(&xTextBufferGetModified, libs, "gtk_text_buffer_get_modified") | |||
| 2218 | - | core.PuregoSafeRegister(&xTextBufferGetSelectionBound, libs, "gtk_text_buffer_get_selection_bound") | |||
| 2219 | - | core.PuregoSafeRegister(&xTextBufferGetSelectionBounds, libs, "gtk_text_buffer_get_selection_bounds") | |||
| 2220 | - | core.PuregoSafeRegister(&xTextBufferGetSelectionContent, libs, "gtk_text_buffer_get_selection_content") | |||
| 2221 | - | core.PuregoSafeRegister(&xTextBufferGetSlice, libs, "gtk_text_buffer_get_slice") | |||
| 2222 | - | core.PuregoSafeRegister(&xTextBufferGetStartIter, libs, "gtk_text_buffer_get_start_iter") | |||
| 2223 | - | core.PuregoSafeRegister(&xTextBufferGetTagTable, libs, "gtk_text_buffer_get_tag_table") | |||
| 2224 | - | core.PuregoSafeRegister(&xTextBufferGetText, libs, "gtk_text_buffer_get_text") | |||
| 2225 | - | core.PuregoSafeRegister(&xTextBufferInsert, libs, "gtk_text_buffer_insert") | |||
| 2226 | - | core.PuregoSafeRegister(&xTextBufferInsertAtCursor, libs, "gtk_text_buffer_insert_at_cursor") | |||
| 2227 | - | core.PuregoSafeRegister(&xTextBufferInsertChildAnchor, libs, "gtk_text_buffer_insert_child_anchor") | |||
| 2228 | - | core.PuregoSafeRegister(&xTextBufferInsertInteractive, libs, "gtk_text_buffer_insert_interactive") | |||
| 2229 | - | core.PuregoSafeRegister(&xTextBufferInsertInteractiveAtCursor, libs, "gtk_text_buffer_insert_interactive_at_cursor") | |||
| 2230 | - | core.PuregoSafeRegister(&xTextBufferInsertMarkup, libs, "gtk_text_buffer_insert_markup") | |||
| 2231 | - | core.PuregoSafeRegister(&xTextBufferInsertPaintable, libs, "gtk_text_buffer_insert_paintable") | |||
| 2232 | - | core.PuregoSafeRegister(&xTextBufferInsertRange, libs, "gtk_text_buffer_insert_range") | |||
| 2233 | - | core.PuregoSafeRegister(&xTextBufferInsertRangeInteractive, libs, "gtk_text_buffer_insert_range_interactive") | |||
| 2234 | - | core.PuregoSafeRegister(&xTextBufferInsertWithTags, libs, "gtk_text_buffer_insert_with_tags") | |||
| 2235 | - | core.PuregoSafeRegister(&xTextBufferInsertWithTagsByName, libs, "gtk_text_buffer_insert_with_tags_by_name") | |||
| 2236 | - | core.PuregoSafeRegister(&xTextBufferMoveMark, libs, "gtk_text_buffer_move_mark") | |||
| 2237 | - | core.PuregoSafeRegister(&xTextBufferMoveMarkByName, libs, "gtk_text_buffer_move_mark_by_name") | |||
| 2238 | - | core.PuregoSafeRegister(&xTextBufferPasteClipboard, libs, "gtk_text_buffer_paste_clipboard") | |||
| 2239 | - | core.PuregoSafeRegister(&xTextBufferPlaceCursor, libs, "gtk_text_buffer_place_cursor") | |||
| 2240 | - | core.PuregoSafeRegister(&xTextBufferRedo, libs, "gtk_text_buffer_redo") | |||
| 2241 | - | core.PuregoSafeRegister(&xTextBufferRemoveAllTags, libs, "gtk_text_buffer_remove_all_tags") | |||
| 2242 | - | core.PuregoSafeRegister(&xTextBufferRemoveCommitNotify, libs, "gtk_text_buffer_remove_commit_notify") | |||
| 2243 | - | core.PuregoSafeRegister(&xTextBufferRemoveSelectionClipboard, libs, "gtk_text_buffer_remove_selection_clipboard") | |||
| 2244 | - | core.PuregoSafeRegister(&xTextBufferRemoveTag, libs, "gtk_text_buffer_remove_tag") | |||
| 2245 | - | core.PuregoSafeRegister(&xTextBufferRemoveTagByName, libs, "gtk_text_buffer_remove_tag_by_name") | |||
| 2246 | - | core.PuregoSafeRegister(&xTextBufferSelectRange, libs, "gtk_text_buffer_select_range") | |||
| 2247 | - | core.PuregoSafeRegister(&xTextBufferSetEnableUndo, libs, "gtk_text_buffer_set_enable_undo") | |||
| 2248 | - | core.PuregoSafeRegister(&xTextBufferSetMaxUndoLevels, libs, "gtk_text_buffer_set_max_undo_levels") | |||
| 2249 | - | core.PuregoSafeRegister(&xTextBufferSetModified, libs, "gtk_text_buffer_set_modified") | |||
| 2250 | - | core.PuregoSafeRegister(&xTextBufferSetText, libs, "gtk_text_buffer_set_text") | |||
| 2251 | - | core.PuregoSafeRegister(&xTextBufferUndo, libs, "gtk_text_buffer_undo") | |||
| 2252 | } | 2305 | } | ||