Commit 64704bef authored by Ken Thomases's avatar Ken Thomases Committed by Alexandre Julliard

winemac: Fix z-ordering between two child (owned) windows of the same parent (owner).

The window being ordered was first put in the correct place and then was moved to the other end of the children list by the loop that was intended to adjust the windows strictly between the window and the ancestor. Signed-off-by: 's avatarKen Thomases <ken@codeweavers.com> Signed-off-by: 's avatarAlexandre Julliard <julliard@winehq.org>
parent 2bebfa2f
...@@ -1590,6 +1590,8 @@ static CVReturn WineDisplayLinkCallback(CVDisplayLinkRef displayLink, const CVTi ...@@ -1590,6 +1590,8 @@ static CVReturn WineDisplayLinkCallback(CVDisplayLinkRef displayLink, const CVTi
[ancestor orderWindow:orderingMode relativeTo:[ancestorOfOther windowNumber]]; [ancestor orderWindow:orderingMode relativeTo:[ancestorOfOther windowNumber]];
} }
if (!ancestorOfOther || ancestor != self)
{
for (child = self; for (child = self;
(parent = (WineWindow*)child.parentWindow); (parent = (WineWindow*)child.parentWindow);
child = parent) child = parent)
...@@ -1599,6 +1601,7 @@ static CVReturn WineDisplayLinkCallback(CVDisplayLinkRef displayLink, const CVTi ...@@ -1599,6 +1601,7 @@ static CVReturn WineDisplayLinkCallback(CVDisplayLinkRef displayLink, const CVTi
if (parent == ancestor) if (parent == ancestor)
break; break;
} }
}
[self checkWineDisplayLink]; [self checkWineDisplayLink];
needAdjustWindowLevels = TRUE; needAdjustWindowLevels = TRUE;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment