Keep dropdowns right-aligned
This commit is contained in:
@@ -5672,10 +5672,7 @@ func (u *ui) syncButtonGroup(gtx layout.Context) layout.Dimensions {
|
||||
menuDims := layout.Inset{Top: unit.Dp(6)}.Layout(menuGTX, u.syncMenu)
|
||||
menuCall := menuOps.Stop()
|
||||
|
||||
menuX := rowDims.Size.X - menuDims.Size.X
|
||||
if menuX < 0 {
|
||||
menuX = 0
|
||||
}
|
||||
menuX := anchoredMenuX(rowDims.Size.X, menuDims.Size.X)
|
||||
stack := op.Offset(image.Pt(menuX, rowDims.Size.Y)).Push(gtx.Ops)
|
||||
menuCall.Add(gtx.Ops)
|
||||
stack.Pop()
|
||||
@@ -7198,10 +7195,7 @@ func (u *ui) mainMenuButtonGroup(gtx layout.Context) layout.Dimensions {
|
||||
menuDims := layout.Inset{Top: unit.Dp(6)}.Layout(menuGTX, u.mainMenu)
|
||||
menuCall := menuOps.Stop()
|
||||
|
||||
menuX := buttonDims.Size.X - menuDims.Size.X
|
||||
if menuX < 0 {
|
||||
menuX = 0
|
||||
}
|
||||
menuX := anchoredMenuX(buttonDims.Size.X, menuDims.Size.X)
|
||||
stack := op.Offset(image.Pt(menuX, buttonDims.Size.Y)).Push(gtx.Ops)
|
||||
menuCall.Add(gtx.Ops)
|
||||
stack.Pop()
|
||||
@@ -7224,6 +7218,10 @@ func (u *ui) mainMenuRightAlignsToTrigger() bool {
|
||||
return true
|
||||
}
|
||||
|
||||
func anchoredMenuX(triggerWidth, menuWidth int) int {
|
||||
return triggerWidth - menuWidth
|
||||
}
|
||||
|
||||
func detailLine(th *material.Theme, label, value string) layout.Widget {
|
||||
return func(gtx layout.Context) layout.Dimensions {
|
||||
valueSize := unit.Sp(16)
|
||||
|
||||
@@ -356,6 +356,17 @@ func TestUIMainMenuAnchorsMatchAcrossModes(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestAnchoredMenuXAllowsWiderMenusToExtendLeft(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
if got := anchoredMenuX(48, 160); got != -112 {
|
||||
t.Fatalf("anchoredMenuX(48, 160) = %d, want -112", got)
|
||||
}
|
||||
if got := anchoredMenuX(160, 48); got != 112 {
|
||||
t.Fatalf("anchoredMenuX(160, 48) = %d, want 112", got)
|
||||
}
|
||||
}
|
||||
|
||||
func TestUICurrentVaultSummary(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user