diff --git a/demo/Ursa.Demo/Pages/DialogDemo.axaml b/demo/Ursa.Demo/Pages/DialogDemo.axaml index 7981a93..8ff3534 100644 --- a/demo/Ursa.Demo/Pages/DialogDemo.axaml +++ b/demo/Ursa.Demo/Pages/DialogDemo.axaml @@ -34,6 +34,12 @@ IsVisible="{Binding !#overlay.IsChecked}" OffContent="Regular" OnContent="Modal" /> + + ( - vm); + vm, + options: new DialogOptions + { + ShowInTaskBar = ShowInTaskBar + }); Date = vm.Date; } else { Dialog.ShowCustom( - vm); + vm, + options: new DialogOptions + { + ShowInTaskBar = ShowInTaskBar + }); } } else diff --git a/src/Ursa/Controls/Dialog/Dialog.cs b/src/Ursa/Controls/Dialog/Dialog.cs index aa459d8..655259d 100644 --- a/src/Ursa/Controls/Dialog/Dialog.cs +++ b/src/Ursa/Controls/Dialog/Dialog.cs @@ -1,9 +1,6 @@ using Avalonia; using Avalonia.Controls; using Avalonia.Controls.ApplicationLifetimes; -using Avalonia.Controls.Shapes; -using Avalonia.Media; -using Ursa.Common; namespace Ursa.Controls; @@ -34,6 +31,7 @@ public static class Dialog } else { + window.Icon = owner.Icon; window.Show(owner); } } @@ -60,6 +58,7 @@ public static class Dialog } else { + window.Icon = owner.Icon; window.Show(owner); } } @@ -84,11 +83,16 @@ public static class Dialog }; ConfigureDefaultDialogWindow(window, options); owner ??= GetMainWindow(); + window.Icon = owner!.Icon; if (owner is null) { window.Show(); return Task.FromResult(DialogResult.None); } + else + { + window.Icon = owner.Icon; + } return window.ShowDialog(owner); } @@ -114,6 +118,10 @@ public static class Dialog window.Show(); return Task.FromResult(DialogResult.None); } + else + { + window.Icon = owner.Icon; + } return window.ShowDialog(owner); } @@ -143,6 +151,10 @@ public static class Dialog window.Show(); return Task.FromResult(default(TResult)); } + else + { + window.Icon = owner.Icon; + } return window.ShowDialog(owner); } @@ -170,6 +182,11 @@ public static class Dialog window.Show(); return Task.FromResult(default(TResult)); } + else + { + + window.Icon = owner.Icon; + } return window.ShowDialog(owner); } @@ -197,6 +214,7 @@ public static class Dialog window.WindowStartupLocation = options.StartupLocation; window.Title = options.Title; window.IsCloseButtonVisible = options.IsCloseButtonVisible; + window.ShowInTaskbar = options.ShowInTaskBar; if (options.StartupLocation == WindowStartupLocation.Manual) { if (options.Position is not null) @@ -222,6 +240,7 @@ public static class Dialog window.Title = options.Title; window.Buttons = options.Button; window.Mode = options.Mode; + window.ShowInTaskbar = options.ShowInTaskBar; if (options.StartupLocation == WindowStartupLocation.Manual) { if (options.Position is not null) diff --git a/src/Ursa/Controls/Dialog/Options/DialogOptions.cs b/src/Ursa/Controls/Dialog/Options/DialogOptions.cs index f7c3408..e743077 100644 --- a/src/Ursa/Controls/Dialog/Options/DialogOptions.cs +++ b/src/Ursa/Controls/Dialog/Options/DialogOptions.cs @@ -26,4 +26,6 @@ public class DialogOptions public DialogButton Button { get; set; } = DialogButton.OKCancel; public bool IsCloseButtonVisible { get; set; } = true; + + public bool ShowInTaskBar { get; set; } = true; } \ No newline at end of file