Merge pull request #401 from irihitech/dialog

Introduce IsTopLevel to OverlayDialogHost
This commit is contained in:
Dong Bin
2024-09-12 18:55:59 +08:00
committed by GitHub
3 changed files with 4 additions and 3 deletions

View File

@@ -71,7 +71,7 @@
LeftContent="{Binding $parent[u:UrsaWindow].LeftContent}" LeftContent="{Binding $parent[u:UrsaWindow].LeftContent}"
RightContent="{Binding $parent[u:UrsaWindow].RightContent}" /> RightContent="{Binding $parent[u:UrsaWindow].RightContent}" />
<VisualLayerManager> <VisualLayerManager>
<u:OverlayDialogHost IsModalStatusReporter="True" /> <u:OverlayDialogHost IsTopLevel="True" IsModalStatusReporter="True" />
</VisualLayerManager> </VisualLayerManager>
</VisualLayerManager.ChromeOverlayLayer> </VisualLayerManager.ChromeOverlayLayer>
<Panel> <Panel>

View File

@@ -72,7 +72,7 @@ public partial class OverlayDialogHost
{ {
if (e.Source is DialogControlBase item) if (e.Source is DialogControlBase item)
{ {
if (item.IsFullScreen) if (IsTopLevel && item.IsFullScreen)
{ {
var top = TopLevel.GetTopLevel(item); var top = TopLevel.GetTopLevel(item);
if (top is Window w) if (top is Window w)

View File

@@ -56,6 +56,7 @@ public partial class OverlayDialogHost: Canvas
} }
public bool IsAnimationDisabled { get; set; } public bool IsAnimationDisabled { get; set; }
public bool IsTopLevel { get; set; }
static OverlayDialogHost() static OverlayDialogHost()
{ {
@@ -114,7 +115,7 @@ public partial class OverlayDialogHost: Canvas
{ {
rec.AddHandler(PointerReleasedEvent, ClickMaskToCloseDialog); rec.AddHandler(PointerReleasedEvent, ClickMaskToCloseDialog);
} }
else else if(IsTopLevel)
{ {
rec.AddHandler(PointerPressedEvent, DragMaskToMoveWindow); rec.AddHandler(PointerPressedEvent, DragMaskToMoveWindow);
} }