commit fb243a134de240cfafd3eb9db4545d0db5f01638
parent c51c29052ee4a356d345424249024c67c2ec05ae
Author: Russ Cox <rsc@swtch.com>
Date: Thu, 14 Jan 2010 13:47:19 -0800
devdraw: handle kEventWindowDrawContent
makes windows redraw properly when moved
between screens when monitors get shuffled around
R=
CC=
http://codereview.appspot.com/189076
Diffstat:
1 file changed, 8 insertions(+), 0 deletions(-)
diff --git a/src/cmd/devdraw/osx-screen-carbon.m b/src/cmd/devdraw/osx-screen-carbon.m
@@ -381,6 +381,7 @@ _screeninit(void)
const EventTypeSpec cmds[] = {
{ kEventClassWindow, kEventWindowClosed },
{ kEventClassWindow, kEventWindowBoundsChanged },
+ { kEventClassWindow, kEventWindowDrawContent },
{ kEventClassCommand, kEventCommandProcess },
{ kEventClassWindow, kEventWindowActivated },
{ kEventClassWindow, kEventWindowDeactivated },
@@ -519,6 +520,13 @@ eventhandler(EventHandlerCallRef next, EventRef event, void *arg)
eresized(1);
break;
+ case kEventWindowDrawContent:;
+ // The update says what rectangle needs drawing,
+ // but just draw everything.
+ Rectangle r = Rect(0, 0, Dx(osx.screenr), Dy(osx.screenr));
+ _flushmemscreen(r);
+ break;
+
case kEventWindowActivated:
if(!osx.collapsed)
activated(1);