mirror of
https://github.com/gnustep/libs-gui.git
synced 2025-04-23 20:01:11 +00:00
Invalidate tracking rects when removed from view.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@27734 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
a6ac3414d3
commit
d611e97561
3 changed files with 10 additions and 2 deletions
|
@ -7,7 +7,10 @@
|
|||
or NSModalRunLoopMode we automatically set the flag before handling
|
||||
each event ... so unless the application explicitly turns it off,
|
||||
it's always done in these modes.
|
||||
Should fix #25384
|
||||
Might fix #25384
|
||||
* Source/NSView.m: Invalidate tracking rects when they are removed
|
||||
from the view.
|
||||
Might fix #25385
|
||||
|
||||
2009-01-29 Fred Kiefer <FredKiefer@gmx.de>
|
||||
|
||||
|
|
|
@ -340,6 +340,7 @@ static BOOL restoreMouseMoved;
|
|||
if (rect->owner == self)
|
||||
{
|
||||
RELEASE((GSTTProvider*)rect->user_data);
|
||||
rect->user_data = 0;
|
||||
[view removeTrackingRect: rect->tag];
|
||||
}
|
||||
}
|
||||
|
@ -357,6 +358,7 @@ static BOOL restoreMouseMoved;
|
|||
if (rect->tag == tag && rect->owner == self)
|
||||
{
|
||||
RELEASE((GSTTProvider*)rect->user_data);
|
||||
rect->user_data = 0;
|
||||
[view removeTrackingRect: tag];
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3299,9 +3299,12 @@ static NSView* findByTag(NSView *view, int aTag, unsigned *level)
|
|||
m = (GSTrackingRect*)[_tracking_rects objectAtIndex: i];
|
||||
if ([m tag] == tag)
|
||||
{
|
||||
[m invalidate];
|
||||
[_tracking_rects removeObjectAtIndex: i];
|
||||
if ([_tracking_rects count] == 0)
|
||||
_rFlags.has_trkrects = 0;
|
||||
{
|
||||
_rFlags.has_trkrects = 0;
|
||||
}
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue