diff --git a/uicontext.go b/uicontext.go index 3ac67d3f7..651863cea 100644 --- a/uicontext.go +++ b/uicontext.go @@ -62,6 +62,11 @@ func (c *uiContext) setError(err error) { } func (c *uiContext) Layout(outsideWidth, outsideHeight float64) { + // The given outside size can be 0 e.g. just after restoring from the fullscreen mode on Windows (#1589) + // Just ignore such cases. Otherwise, creating a zero-sized framebuffer causes a panic. + if outsideWidth == 0 || outsideHeight == 0 { + return + } c.outsideSizeUpdated = true c.outsideWidth = outsideWidth c.outsideHeight = outsideHeight