From e9c6d96d2da8311969870335850bd88ec899e813 Mon Sep 17 00:00:00 2001 From: Pietro Gagliardi Date: Tue, 22 Jul 2014 17:45:29 -0400 Subject: Added provisions for proper window redraw on Window.SetParent() and implemented them on Mac OS X; still untested. --- redo/controls_darwin.m | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'redo/controls_darwin.m') diff --git a/redo/controls_darwin.m b/redo/controls_darwin.m index e1cdb8f..5233129 100644 --- a/redo/controls_darwin.m +++ b/redo/controls_darwin.m @@ -11,8 +11,13 @@ void unparent(id control) { + NSWindow *old; + [toNSView(control) retain]; // save from being freed when released by the removal selector below + old = [toNSView(control) window]; [toNSView(control) removeFromSuperview]; + // redraw since we changed controls + windowRedraw((id) old); } void parent(id control, id parentid, BOOL floating) @@ -20,6 +25,8 @@ void parent(id control, id parentid, BOOL floating) [[toNSWindow(parentid) contentView] addSubview:toNSView(control)]; if (floating) // previously unparented [toNSView(control) release]; + // redraw since we changed controls + windowRedraw(parentid); } static inline void setStandardControlFont(id control) -- cgit v1.2.3