From 64d5eb541eb28e1a7e81adca66a72155d16033b4 Mon Sep 17 00:00:00 2001 From: Pietro Gagliardi Date: Mon, 17 Mar 2014 21:09:03 -0400 Subject: Changed the new resizing code so that it uses the same allocated slice per window instead of making a new one to store all the resize requests each time. --- stdwndclass_windows.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'stdwndclass_windows.go') diff --git a/stdwndclass_windows.go b/stdwndclass_windows.go index 54cec7d..ea443de 100644 --- a/stdwndclass_windows.go +++ b/stdwndclass_windows.go @@ -53,8 +53,9 @@ func stdWndProc(s *sysData) func(hwnd _HWND, uMsg uint32, wParam _WPARAM, lParam panic("GetClientRect failed: " + err.Error()) } // top-left corner is (0,0) so no need for winheight - resizeList := s.resize(int(r.Left), int(r.Top), int(r.Right), int(r.Bottom)) - for _, s := range resizeList { + s.resizes = s.resizes[0:0] // set len to 0 without changing cap + s.resize(0, 0, width, height, &s.resizes) + for _, s := range s.resizes { err = s.sysData.setRect(s.x, s.y, s.width, s.height, 0) if err != nil { panic("child resize failed: " + err.Error()) -- cgit v1.2.3