diff --git a/CHANGELOG.md b/CHANGELOG.md index a0ad3fd1f5..20a4f21789 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ More detailed release notes can be found on the [releases page](https://github.c * [fyne-cli] Android: allow to specify an inline password for the keystore * Fixed Card widget MinSize (#1581) * Fix missing release tag to enable BuildRelease in Settings.BuildType() +* Dialog shadow does not resize after Refresh (#1370) ## 1.4.1 - 20 November 2020 diff --git a/dialog/color.go b/dialog/color.go index 667353e4ad..d61c74d423 100644 --- a/dialog/color.go +++ b/dialog/color.go @@ -21,7 +21,7 @@ type ColorPickerDialog struct { Advanced bool color color.Color callback func(c color.Color) - advanced *widget.AccordionContainer + advanced *widget.Accordion picker *colorAdvancedPicker } @@ -94,7 +94,7 @@ func (p *ColorPickerDialog) updateUI() { p.picker = newColorAdvancedPicker(p.color, func(c color.Color) { p.color = c }) - p.advanced = widget.NewAccordionContainer(widget.NewAccordionItem("Advanced", p.picker)) + p.advanced = widget.NewAccordion(widget.NewAccordionItem("Advanced", p.picker)) p.dialog.content = fyne.NewContainerWithLayout(layout.NewVBoxLayout(), fyne.NewContainerWithLayout(layout.NewCenterLayout(), diff --git a/dialog/testdata/color/dialog_expanded_theme_dark.png b/dialog/testdata/color/dialog_expanded_theme_dark.png index f4c13bc88a..30ba402f4c 100644 Binary files a/dialog/testdata/color/dialog_expanded_theme_dark.png and b/dialog/testdata/color/dialog_expanded_theme_dark.png differ diff --git a/dialog/testdata/color/dialog_expanded_theme_light.png b/dialog/testdata/color/dialog_expanded_theme_light.png index 332c3e761b..710f97fc6d 100644 Binary files a/dialog/testdata/color/dialog_expanded_theme_light.png and b/dialog/testdata/color/dialog_expanded_theme_light.png differ diff --git a/widget/popup.go b/widget/popup.go index cbdeffe67a..ac6b58d26d 100644 --- a/widget/popup.go +++ b/widget/popup.go @@ -232,7 +232,9 @@ type modalPopUpRenderer struct { func (r *modalPopUpRenderer) Layout(canvasSize fyne.Size) { padding := r.padding() - requestedSize := r.popUp.innerSize.Subtract(padding) + innerSize := r.popUp.innerSize.Max(r.popUp.Content.MinSize().Add(padding)) + + requestedSize := innerSize.Subtract(padding) size := r.popUp.Content.MinSize().Max(requestedSize) size = size.Min(canvasSize.Subtract(padding)) pos := fyne.NewPos((canvasSize.Width-size.Width)/2, (canvasSize.Height-size.Height)/2) @@ -242,7 +244,7 @@ func (r *modalPopUpRenderer) Layout(canvasSize fyne.Size) { innerPos := pos.Subtract(r.offset()) r.bg.Move(innerPos) r.bg.Resize(size.Add(padding)) - r.LayoutShadow(r.popUp.innerSize, innerPos) + r.LayoutShadow(innerSize, innerPos) } func (r *modalPopUpRenderer) MinSize() fyne.Size {