Skip to content

Commit

Permalink
Add tests
Browse files Browse the repository at this point in the history
And update max icon even if disabled
  • Loading branch information
andydotxyz committed Feb 8, 2025
1 parent f88ce9e commit ed5ffac
Show file tree
Hide file tree
Showing 2 changed files with 35 additions and 8 deletions.
14 changes: 7 additions & 7 deletions container/innerwindow.go
Original file line number Diff line number Diff line change
Expand Up @@ -241,18 +241,18 @@ func (i *innerWindowRenderer) Refresh() {
i.buttons[1].SetOnTapped(i.win.OnMinimized)
i.buttons[1].Enable()
}

max := i.buttons[2]
if i.win.OnMaximized == nil {
i.buttons[2].Disable()
} else {
max := i.buttons[2]
max.SetOnTapped(i.win.OnMaximized)
max.Enable()

if i.win.maximized {
max.b.SetIcon(theme.ViewRestoreIcon())
} else {
max.b.SetIcon(theme.WindowMaximizeIcon())
}
}
if i.win.maximized {
max.b.SetIcon(theme.ViewRestoreIcon())
} else {
max.b.SetIcon(theme.WindowMaximizeIcon())
}

title := i.bar.Objects[0].(*fyne.Container).Objects[0].(*draggableLabel)
Expand Down
29 changes: 28 additions & 1 deletion container/innerwindow_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,31 @@ package container
import (
"testing"

"github.com/stretchr/testify/assert"

"fyne.io/fyne/v2"
"fyne.io/fyne/v2/internal/cache"
"fyne.io/fyne/v2/test"
"fyne.io/fyne/v2/theme"
"fyne.io/fyne/v2/widget"
"github.com/stretchr/testify/assert"
)

func TestInnerWindow_Alignment(t *testing.T) {
w := NewInnerWindow("Title", widget.NewLabel("Content"))
w.Resize(fyne.NewSize(150, 100))
assert.Equal(t, widget.ButtonAlignCenter, w.Alignment)
assert.NotEqual(t, widget.ButtonAlignCenter, w.buttonPosition())

buttons := test.WidgetRenderer(w).(*innerWindowRenderer).buttonBox
w.Alignment = widget.ButtonAlignLeading
w.Refresh()
assert.Zero(t, buttons.Position().X)

w.Alignment = widget.ButtonAlignTrailing
w.Refresh()
assert.Greater(t, buttons.Position().X, float32(100))
}

func TestInnerWindow_Close(t *testing.T) {
w := NewInnerWindow("Thing", widget.NewLabel("Content"))

Expand Down Expand Up @@ -60,6 +77,16 @@ func TestInnerWindow_SetContent(t *testing.T) {
assert.Equal(t, "Content2", title.Objects[0].(*widget.Label).Text)
}

func TestInnerWindow_SetMaximized(t *testing.T) {
w := NewInnerWindow("Title", widget.NewLabel("Content"))

icon := test.WidgetRenderer(w).(*innerWindowRenderer).buttons[2]
assert.Equal(t, "foreground_maximize.svg", icon.b.Icon.Name())

w.SetMaximized(true)
assert.Equal(t, "foreground_view-zoom-fit.svg", icon.b.Icon.Name())
}

func TestInnerWindow_SetPadded(t *testing.T) {
w := NewInnerWindow("Title", widget.NewLabel("Content"))
minPadded := w.MinSize()
Expand Down

0 comments on commit ed5ffac

Please sign in to comment.