mirror of
https://github.com/gnustep/libs-gui.git
synced 2025-04-25 05:01:00 +00:00
Attempt to fix flushing
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@4185 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
6847940a3e
commit
2168e360cf
1 changed files with 6 additions and 6 deletions
|
@ -207,26 +207,26 @@ struct NSWindow_struct
|
||||||
{
|
{
|
||||||
NSRect rect;
|
NSRect rect;
|
||||||
struct NSWindow_struct *window;
|
struct NSWindow_struct *window;
|
||||||
|
|
||||||
[focus_stack addObject: aView];
|
[focus_stack addObject: aView];
|
||||||
window = (struct NSWindow_struct *)[aView window];
|
window = (struct NSWindow_struct *)[aView window];
|
||||||
/* Add aView's visible Rect to its Window's area to be flushed */
|
/* Add aView's visible Rect to its Window's area to be flushed */
|
||||||
rect = [[aView _matrixToWindow] rectInMatrixSpace: [aView visibleRect]];
|
rect = [aView convertRect: [aView visibleRect] toView: nil];
|
||||||
window->rectBeingDrawn = NSUnionRect(window->rectBeingDrawn, rect);
|
window->rectBeingDrawn = NSUnionRect(window->rectBeingDrawn, rect);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void) unlockFocusView: (NSView*)aView
|
- (void) unlockFocusView: (NSView*)aView
|
||||||
{
|
{
|
||||||
NSRect rect;
|
|
||||||
struct NSWindow_struct *window;
|
struct NSWindow_struct *window;
|
||||||
NSView *v = [focus_stack lastObject];
|
NSView *v = [focus_stack lastObject];
|
||||||
|
|
||||||
NSAssert(v == aView, NSInvalidArgumentException);
|
NSAssert(v == aView, NSInvalidArgumentException);
|
||||||
/* Set Window's flush rect so our view is properly flushed */
|
/* Set Window's flush rect so our view is properly flushed */
|
||||||
window = (struct NSWindow_struct *)[aView window];
|
window = (struct NSWindow_struct *)[aView window];
|
||||||
rect = [self windowRectInDeviceSpace: window->rectBeingDrawn];
|
window->rectNeedingFlush = NSUnionRect(window->rectNeedingFlush,
|
||||||
window->rectNeedingFlush = NSUnionRect(window->rectNeedingFlush, rect);
|
window->rectBeingDrawn);
|
||||||
window->rectBeingDrawn = NSZeroRect;
|
window->rectBeingDrawn = NSZeroRect;
|
||||||
|
window->needs_flush = YES;
|
||||||
[focus_stack removeLastObject];
|
[focus_stack removeLastObject];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue