summaryrefslogtreecommitdiff
path: root/redo/controls_darwin.m
diff options
context:
space:
mode:
Diffstat (limited to 'redo/controls_darwin.m')
-rw-r--r--redo/controls_darwin.m7
1 files changed, 7 insertions, 0 deletions
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)