adjust layout of aux controls

This commit is contained in:
Drew Weymouth
2023-06-19 19:22:47 -07:00
parent 13f0692566
commit a324177fef
+23 -3
View File
@@ -6,6 +6,7 @@ import (
"fyne.io/fyne/v2/layout" "fyne.io/fyne/v2/layout"
"fyne.io/fyne/v2/theme" "fyne.io/fyne/v2/theme"
"fyne.io/fyne/v2/widget" "fyne.io/fyne/v2/widget"
"github.com/dweymouth/supersonic/ui/util"
) )
// The "aux" controls for playback, positioned to the right // The "aux" controls for playback, positioned to the right
@@ -14,22 +15,41 @@ type AuxControls struct {
widget.BaseWidget widget.BaseWidget
VolumeControl *VolumeControl VolumeControl *VolumeControl
loop *widget.Button loop *miniButton
container *fyne.Container container *fyne.Container
} }
type miniButton struct {
widget.Button
}
func newMiniButton(icon fyne.Resource) *miniButton {
b := &miniButton{
Button: widget.Button{
Icon: icon,
},
}
b.ExtendBaseWidget(b)
return b
}
func (b *miniButton) MinSize() fyne.Size {
return fyne.NewSize(24, 24)
}
func NewAuxControls(initialVolume int) *AuxControls { func NewAuxControls(initialVolume int) *AuxControls {
a := &AuxControls{ a := &AuxControls{
VolumeControl: NewVolumeControl(initialVolume), VolumeControl: NewVolumeControl(initialVolume),
loop: widget.NewButtonWithIcon("", theme.MediaReplayIcon(), func() {}), loop: newMiniButton(theme.MediaReplayIcon()),
} }
a.container = container.NewHBox( a.container = container.NewHBox(
layout.NewSpacer(), layout.NewSpacer(),
container.NewVBox( container.NewVBox(
util.NewHSpace(0), // hack to move everything down a tiny bit
layout.NewSpacer(), layout.NewSpacer(),
a.VolumeControl, a.VolumeControl,
container.NewCenter(layout.NewSpacer(), a.loop), container.NewHBox(layout.NewSpacer(), a.loop, util.NewHSpace(5)),
layout.NewSpacer(), layout.NewSpacer(),
), ),
) )