feat: respect OffScreenMargin for elements in chrome layer.

This commit is contained in:
rabbitism
2024-10-18 19:32:43 +08:00
parent 7f2fb7c7f5
commit e043d9224f

View File

@@ -64,21 +64,23 @@
<Panel Margin="{TemplateBinding WindowDecorationMargin}" Background="Transparent" />
<VisualLayerManager Padding="{TemplateBinding OffScreenMargin, Mode=OneWay}">
<VisualLayerManager.ChromeOverlayLayer>
<u:TitleBar
Margin="{Binding $parent[u:UrsaWindow].TitleBarMargin}"
Content="{Binding $parent[u:UrsaWindow].TitleBarContent}"
IsTitleVisible="{Binding $parent[u:UrsaWindow].IsTitleBarVisible}"
LeftContent="{Binding $parent[u:UrsaWindow].LeftContent}"
RightContent="{Binding $parent[u:UrsaWindow].RightContent}" />
<VisualLayerManager>
<Panel>
<u:OverlayDialogHost IsModalStatusReporter="True" IsTopLevel="True" />
<u:WindowResizer
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
IsVisible="{Binding $parent[u:UrsaWindow].IsManagedResizerVisible}" />
</Panel>
</VisualLayerManager>
<Panel Margin="{Binding $parent[u:UrsaWindow].OffScreenMargin}">
<u:TitleBar
Margin="{Binding $parent[u:UrsaWindow].TitleBarMargin}"
Content="{Binding $parent[u:UrsaWindow].TitleBarContent}"
IsTitleVisible="{Binding $parent[u:UrsaWindow].IsTitleBarVisible}"
LeftContent="{Binding $parent[u:UrsaWindow].LeftContent}"
RightContent="{Binding $parent[u:UrsaWindow].RightContent}" />
<VisualLayerManager>
<Panel>
<u:OverlayDialogHost IsModalStatusReporter="True" IsTopLevel="True" />
<u:WindowResizer
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
IsVisible="{Binding $parent[u:UrsaWindow].IsManagedResizerVisible}" />
</Panel>
</VisualLayerManager>
</Panel>
</VisualLayerManager.ChromeOverlayLayer>
<Panel>
<ContentPresenter