summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorAlexander Neumann <alexander.neumann@picos-software.com>2019-02-26 17:33:38 +0100
committerAlexander Neumann <alexander.neumann@picos-software.com>2019-02-26 17:33:38 +0100
commit9a6dec1003d8b97b59794538a5e77c39858a03a3 (patch)
treebdc1dc402a7da3ae2c4e8cb52aa7e933af5a9892
parentSlider: Fix default LineSize + PageSize (diff)
downloadwireguard-windows-9a6dec1003d8b97b59794538a5e77c39858a03a3.tar.xz
wireguard-windows-9a6dec1003d8b97b59794538a5e77c39858a03a3.zip
declarative/Builder: Fix nested grid layout bug
-rw-r--r--declarative/builder.go8
1 files changed, 7 insertions, 1 deletions
diff --git a/declarative/builder.go b/declarative/builder.go
index e376fd9d..307cc9f4 100644
--- a/declarative/builder.go
+++ b/declarative/builder.go
@@ -211,6 +211,9 @@ func (b *Builder) InitWidget(d Widget, w walk.Window, customInit func() error) e
column := b.int("Column")
columnSpan := b.int("ColumnSpan")
+ rowBackup := row
+ columnBackup := column
+
if widget, ok := w.(walk.Widget); ok {
if err := widget.SetAlwaysConsumeSpace(b.bool("AlwaysConsumeSpace")); err != nil {
return err
@@ -332,10 +335,13 @@ func (b *Builder) InitWidget(d Widget, w walk.Window, customInit func() error) e
if layout != nil {
if g, ok := layout.(Grid); ok {
+ rowBackup = b.row
+ columnBackup = b.col
+
rows := b.rows
columns := b.columns
defer func() {
- b.rows, b.columns, b.row, b.col = rows, columns, row, column+columnSpan
+ b.rows, b.columns, b.row, b.col = rows, columns, rowBackup+rowSpan, columnBackup+columnSpan
}()
b.rows = g.Rows