From cb3276493d69818cefd16506e971e14a117e8309 Mon Sep 17 00:00:00 2001
From: faiface <faiface@ksp.sk>
Date: Tue, 14 Mar 2017 18:31:44 +0100
Subject: [PATCH] fix window resizing consistency

---
 pixelgl/window.go | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/pixelgl/window.go b/pixelgl/window.go
index 9980295..f844dbc 100644
--- a/pixelgl/window.go
+++ b/pixelgl/window.go
@@ -145,11 +145,15 @@ func (w *Window) Destroy() {
 // Update swaps buffers and polls events.
 func (w *Window) Update() {
 	mainthread.Call(func() {
-		wi, hi := w.window.GetSize()
-		w.bounds = w.bounds.ResizedMin(pixel.V(float64(wi), float64(hi)))
+		_, _, oldW, oldH := intBounds(w.bounds)
+		newW, newH := w.window.GetSize()
+		w.bounds = w.bounds.ResizedMin(w.bounds.Size() + pixel.V(
+			float64(newW-oldW),
+			float64(newH-oldH),
+		))
 	})
 
-	w.canvas.SetBounds(w.Bounds())
+	w.canvas.SetBounds(w.bounds)
 
 	mainthread.Call(func() {
 		w.begin()
-- 
GitLab