The problem is that when this sheet is dismissed and pulled back up,
the entire window group slides up ~20 or so pixels as well. This
happens every time the sheet is hid & build up so that after time
the main window group has slid all the way up the screen. This
worked fine on Tiger, Panther, and Jaguar. It only behaves like this
on Leopard.
I think what's happening here is that you position the sheet parent
(the toolbar-class window) initially underneath the menubar, which
means that when the sheet is displayed, the sheet parent is moved
downwards below the menubar so that the sheet won't be obscured by the
menubar. When the sheet closes, the Window Manager moves the sheet
parent back to its original position. However, because the sheet
parent window is in a window group with the MoveTogether attribute
that also contains your backdrop window, the backdrop window moves
too, along with the sheet parent.
I think this is actually correct behavior, and that the behavior in
earlier systems was wrong. Consider this case: you have a document
window with an open drawer. The document window is partially
offscreen. You open a sheet on the document window. The document and
the drawer should both move onscreen to allow the sheet to be fully
visible, and then when the sheet closes, both the document and the
drawer should move back to their original position. The document is
like your parent window, and the drawer is like your backdrop. Both
should move together.
I do think there's a bug here, but the bug is that the backdrop window
should be moving down when the sheet is originally opened, along with
the sheet parent window. If that happened, then the backdrop window
would move back to its original position when the sheet closed, and
wouldn't eventually move off the top of the screen. You might not want
the backdrop window to move at all, but at least the behavior would be
consistent.
I think the best way for you to fix this would be to temporarily
remove the MoveTogether attribute from your window group when calling
ShowSheetWindow and HideSheetWindow. Since you don't ever want the
backdrop window to move together with the sheet parent window, this
gives the Window Manager the right info about what behavior you desire.
-eric
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Carbon-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/carbon-dev/email@hidden