Open kekekeks opened 4 years ago
win32:
[x] are shown on top of the parent (GWL_OWNER, WM_TRANSIENT_FOR hint [NSWindow addChildWindow], wl_surface_set_transient)
[x] minimized when parent window gets minimized
[x] can get minimized individually on platforms that support it (i. e. not on OSX)
[x] restored when parent window gets restored
[x] when parent window is closed get closed as well
[x] when parent window is closing also get a Closing event and can prevent their own close as well as the parent window close (works transitively for entire chain). When child window agrees to be closed, it gets closed immediately.
Dialog windows:
As a "post-mortem" of #3833
Child windows:
GWL_OWNER
,WM_TRANSIENT_FOR
hint[NSWindow addChildWindow]
,wl_surface_set_transient
)Closing
event and can prevent their own close as well as the parent window close (works transitively for entire chain). When child window agrees to be closed, it gets closed immediately.Dialog windows:
API changes:
Owner
property becomes readonly.Show(Window parent)
overload gets added, it marks the window as a child of the parentShowDialog(IWindowImpl parent)
overload gets removedInternal implementation notes:
IWindowImpl::ShowDialog
gets removed completelyIWindowImpl
gets new members: