Mercurial > dwindows
comparison mac/dw.m @ 2031:c4fc33d70a8e
Mac: Removed delayed setNeedsDisplay:YES to fix the incorrect dwtest file
rendering. This is working without proble on Catalina... need to retest on
Mojave and perhaps reimplement the delay only for Mojave.
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Fri, 15 Nov 2019 03:31:17 +0000 |
parents | 3f265cd5b069 |
children | 5ca399fb2d6f |
comparison
equal
deleted
inserted
replaced
2030:2cbbbc850b8d | 2031:c4fc33d70a8e |
---|---|
1119 -(NSMenu *)menuForEvent:(NSEvent *)theEvent { _event_handler(self, theEvent, 3); return nil; } | 1119 -(NSMenu *)menuForEvent:(NSEvent *)theEvent { _event_handler(self, theEvent, 3); return nil; } |
1120 -(void)rightMouseUp:(NSEvent *)theEvent { _event_handler(self, theEvent, 4); } | 1120 -(void)rightMouseUp:(NSEvent *)theEvent { _event_handler(self, theEvent, 4); } |
1121 -(void)otherMouseDown:(NSEvent *)theEvent { _event_handler(self, theEvent, 3); } | 1121 -(void)otherMouseDown:(NSEvent *)theEvent { _event_handler(self, theEvent, 3); } |
1122 -(void)otherMouseUp:(NSEvent *)theEvent { _event_handler(self, theEvent, 4); } | 1122 -(void)otherMouseUp:(NSEvent *)theEvent { _event_handler(self, theEvent, 4); } |
1123 -(void)mouseDragged:(NSEvent *)theEvent { _event_handler(self, theEvent, 5); } | 1123 -(void)mouseDragged:(NSEvent *)theEvent { _event_handler(self, theEvent, 5); } |
1124 -(void)delayedNeedsDisplay { [self setNeedsDisplay:YES]; } | |
1125 -(void)drawRect:(NSRect)rect { | 1124 -(void)drawRect:(NSRect)rect { |
1126 _event_handler(self, nil, 7); | 1125 _event_handler(self, nil, 7); |
1127 #ifdef BUILDING_FOR_MOJAVE | 1126 #ifdef BUILDING_FOR_MOJAVE |
1128 if (cachedDrawingRep) | 1127 if (cachedDrawingRep) |
1129 { | 1128 { |
1130 [cachedDrawingRep drawInRect:self.bounds]; | 1129 [cachedDrawingRep drawInRect:self.bounds]; |
1131 [_DWDirtyDrawables removeObject:self]; | 1130 [_DWDirtyDrawables removeObject:self]; |
1132 [self performSelector:@selector(delayedNeedsDisplay) withObject:nil afterDelay:0]; | 1131 [self setNeedsDisplay:YES]; |
1133 } | 1132 } |
1134 #endif | 1133 #endif |
1135 } | 1134 } |
1136 -(void)keyDown:(NSEvent *)theEvent { _event_handler(self, theEvent, 2); } | 1135 -(void)keyDown:(NSEvent *)theEvent { _event_handler(self, theEvent, 2); } |
1137 -(BOOL)isFlipped { return YES; } | 1136 -(BOOL)isFlipped { return YES; } |
1294 #ifdef BUILDING_FOR_MOJAVE | 1293 #ifdef BUILDING_FOR_MOJAVE |
1295 NSEnumerator *enumerator = [_DWDirtyDrawables objectEnumerator]; | 1294 NSEnumerator *enumerator = [_DWDirtyDrawables objectEnumerator]; |
1296 DWRender *rend; | 1295 DWRender *rend; |
1297 | 1296 |
1298 while (rend = [enumerator nextObject]) | 1297 while (rend = [enumerator nextObject]) |
1299 rend.needsDisplay = YES; | 1298 [rend setNeedsDisplay:YES]; |
1300 [_DWDirtyDrawables removeAllObjects]; | 1299 [_DWDirtyDrawables removeAllObjects]; |
1301 #else | 1300 #else |
1302 if(_DWLastDrawable) | 1301 if(_DWLastDrawable) |
1303 { | 1302 { |
1304 id object = _DWLastDrawable; | 1303 id object = _DWLastDrawable; |