diff --git a/samples/NotificationFlyoutSample/SampleFlyout.xaml b/samples/NotificationFlyoutSample/SampleFlyout.xaml
index 81e26bc..4940eeb 100644
--- a/samples/NotificationFlyoutSample/SampleFlyout.xaml
+++ b/samples/NotificationFlyoutSample/SampleFlyout.xaml
@@ -4,9 +4,12 @@
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:controls="using:TheXamlGuy.NotificationFlyout.Uwp.UI.Controls"
Placement="Right">
-
+
diff --git a/samples/NotificationFlyoutSample/SampleFlyout.xaml.cs b/samples/NotificationFlyoutSample/SampleFlyout.xaml.cs
index 19da9a2..9fc124d 100644
--- a/samples/NotificationFlyoutSample/SampleFlyout.xaml.cs
+++ b/samples/NotificationFlyoutSample/SampleFlyout.xaml.cs
@@ -10,7 +10,7 @@ namespace NotificationFlyoutSample
}
private void OnCloseMenuFlyoutItemClick(object sender, RoutedEventArgs args)
- {
+ {
var app = GetApplication();
app.Exit();
}
diff --git a/src/TheXamlGuy.NotificationFlyout.Uwp.UI.Controls/NotificationFlyout/NotificationFlyout.cs b/src/TheXamlGuy.NotificationFlyout.Uwp.UI.Controls/NotificationFlyout/NotificationFlyout.cs
index 0c007f4..4edeaad 100644
--- a/src/TheXamlGuy.NotificationFlyout.Uwp.UI.Controls/NotificationFlyout/NotificationFlyout.cs
+++ b/src/TheXamlGuy.NotificationFlyout.Uwp.UI.Controls/NotificationFlyout/NotificationFlyout.cs
@@ -1,20 +1,17 @@
using System;
using TheXamlGuy.NotificationFlyout.Shared.UI;
using Windows.Foundation;
+using Windows.UI;
using Windows.UI.Xaml;
+using Windows.UI.Xaml.Controls;
+using Windows.UI.Xaml.Controls.Primitives;
using Windows.UI.Xaml.Markup;
using Windows.UI.Xaml.Media;
namespace TheXamlGuy.NotificationFlyout.Uwp.UI.Controls
{
- [ContentProperty(Name = "Content")]
- public class NotificationFlyout : DependencyObject
+ public class NotificationFlyout : ContentControl
{
- public static readonly DependencyProperty FlyoutPresenterStyleProperty =
- DependencyProperty.Register(nameof(FlyoutPresenterStyle),
- typeof(Style), typeof(NotificationFlyout),
- new PropertyMetadata(null));
-
public static readonly DependencyProperty IconSourceProperty =
DependencyProperty.Register(nameof(IconSource),
typeof(ImageSource), typeof(NotificationFlyout),
@@ -25,16 +22,6 @@ namespace TheXamlGuy.NotificationFlyout.Uwp.UI.Controls
typeof(ImageSource), typeof(NotificationFlyout),
new PropertyMetadata(null));
- public static readonly DependencyProperty RequestedThemeProperty =
- DependencyProperty.Register(nameof(RequestedTheme),
- typeof(ElementTheme), typeof(NotificationFlyout),
- new PropertyMetadata(ElementTheme.Default));
-
- public static DependencyProperty ContentProperty =
- DependencyProperty.Register(nameof(Content),
- typeof(UIElement), typeof(NotificationFlyout),
- new PropertyMetadata(null));
-
public static DependencyProperty ContextMenuProperty =
DependencyProperty.Register(nameof(ContextMenu),
typeof(NotificationFlyoutContextMenu), typeof(NotificationFlyout),
@@ -47,6 +34,8 @@ namespace TheXamlGuy.NotificationFlyout.Uwp.UI.Controls
private static INotificationFlyoutApplication _applicationInstance;
+ private Popup _popup;
+
public event EventHandler
-
-
-
-
-
\ No newline at end of file
diff --git a/src/TheXamlGuy.NotificationFlyout.Uwp.UI.Controls/TheXamlGuy.NotificationFlyout.Uwp.UI.Controls.csproj b/src/TheXamlGuy.NotificationFlyout.Uwp.UI.Controls/TheXamlGuy.NotificationFlyout.Uwp.UI.Controls.csproj
index fe853a1..cbba115 100644
--- a/src/TheXamlGuy.NotificationFlyout.Uwp.UI.Controls/TheXamlGuy.NotificationFlyout.Uwp.UI.Controls.csproj
+++ b/src/TheXamlGuy.NotificationFlyout.Uwp.UI.Controls/TheXamlGuy.NotificationFlyout.Uwp.UI.Controls.csproj
@@ -18,11 +18,7 @@
Designer
MSBuild:Compile
-
- Designer
- MSBuild:Compile
-
-
+
Designer
MSBuild:Compile
diff --git a/src/TheXamlGuy.NotificationFlyout.Uwp.UI.Controls/Themes/Generic.xaml b/src/TheXamlGuy.NotificationFlyout.Uwp.UI.Controls/Themes/Generic.xaml
index d1d0715..1aee53e 100644
--- a/src/TheXamlGuy.NotificationFlyout.Uwp.UI.Controls/Themes/Generic.xaml
+++ b/src/TheXamlGuy.NotificationFlyout.Uwp.UI.Controls/Themes/Generic.xaml
@@ -1,7 +1,5 @@
-
-
-
+
\ No newline at end of file
diff --git a/src/TheXamlGuy.NotificationFlyout.Wpf.UI.Controls/NotificationFlyout/NotificationFlyoutApplication.cs b/src/TheXamlGuy.NotificationFlyout.Wpf.UI.Controls/NotificationFlyout/NotificationFlyoutApplication.cs
index fdeacff..c5c0e0e 100644
--- a/src/TheXamlGuy.NotificationFlyout.Wpf.UI.Controls/NotificationFlyout/NotificationFlyoutApplication.cs
+++ b/src/TheXamlGuy.NotificationFlyout.Wpf.UI.Controls/NotificationFlyout/NotificationFlyoutApplication.cs
@@ -1,62 +1,188 @@
using TheXamlGuy.NotificationFlyout.Common.Helpers;
using System.Windows;
using System.Windows.Markup;
-using TheXamlGuy.NotificationFlyout.Shared.UI;
+using System;
+using Windows.UI.Xaml.Controls;
+using TheXamlGuy.NotificationFlyout.Uwp.UI.Controls;
+using TheXamlGuy.NotificationFlyout.Wpf.UI.Extensions;
+using System.Windows.Media.Imaging;
+using TheXamlGuy.NotificationFlyout.Common.Extensions;
namespace TheXamlGuy.NotificationFlyout.Wpf.UI.Controls
{
[ContentProperty(nameof(Flyout))]
- public class NotificationFlyoutApplication : DependencyObject, INotificationFlyoutApplication
+ public class NotificationFlyoutApplication : DependencyObject
{
public static DependencyProperty FlyoutProperty =
DependencyProperty.Register(nameof(Flyout),
typeof(Uwp.UI.Controls.NotificationFlyout), typeof(NotificationFlyoutApplication),
new PropertyMetadata(null, OnFlyoutPropertyChanged));
- private static NotificationFlyoutApplication _application;
- private NotificationFlyoutXamlHost _notificationFlyoutXamlHost;
+ private const string ShellTrayHandleName = "Shell_TrayWnd";
+ private TransparentXamlHost _notificationFlyoutXamlHost;
+ private NotificationIconHelper _notificationIconHelper;
+ private SystemPersonalisationHelper _systemPersonalisationHelper;
+ private TaskbarHelper _taskbarHelper;
public NotificationFlyoutApplication()
{
- _application = this;
- Uwp.UI.Controls.NotificationFlyout.SetApplication(this);
+ _notificationIconHelper = NotificationIconHelper.Create();
+ _notificationIconHelper.IconInvoked += OnIconInvoked;
+
+ _taskbarHelper = TaskbarHelper.Create();
+ _taskbarHelper.TaskbarChanged += OnTaskbarChanged;
+
+ _systemPersonalisationHelper = SystemPersonalisationHelper.Current;
+ _systemPersonalisationHelper.ThemeChanged += OnThemeChanged;
- WndProcListener.Current.Start();
PrepareFlyoutHost();
+ WndProcListener.Current.Start();
}
- public static INotificationFlyoutApplication Current => _application;
-
public Uwp.UI.Controls.NotificationFlyout Flyout
{
get => (Uwp.UI.Controls.NotificationFlyout)GetValue(FlyoutProperty);
set => SetValue(FlyoutProperty, value);
}
- public void Exit() => _notificationFlyoutXamlHost.Close();
-
- public void HideFlyout() => _notificationFlyoutXamlHost.HideFlyout();
-
- public void OpenAsWindow() where TUIElement : Windows.UI.Xaml.UIElement
- {
- var window = new XamlHost();
- window.Show();
- }
-
- public void ShowFlyout() => _notificationFlyoutXamlHost.ShowFlyout();
-
private static void OnFlyoutPropertyChanged(DependencyObject dependencyObject, DependencyPropertyChangedEventArgs dependencyPropertyChangedEventArgs)
{
var sender = dependencyObject as NotificationFlyoutApplication;
sender?.OnFlyoutPropertyChanged();
}
- private void OnFlyoutPropertyChanged() => _notificationFlyoutXamlHost.SetOwningFlyout(Flyout);
+ private void OnFlyoutPropertyChanged() => PrepareFlyout();
+
+ private void PrepareFlyout()
+ {
+ if (Flyout == null) return;
+ Flyout.IconSourceChanged += OnIconSourceChanged;
+
+ var content = _notificationFlyoutXamlHost.GetHostContent();
+ if (content != null)
+ {
+ content.Content = Flyout;
+ }
+
+ UpdateIcons();
+ }
+
+ private void OnIconInvoked(object sender, NotificationIconInvokedEventArgs args)
+ {
+ if (args.PointerButton == PointerButton.Left)
+ {
+ Flyout.Show();
+ }
+
+ if (args.PointerButton == PointerButton.Right)
+ {
+ }
+ }
+
+
+ private void OnIconSourceChanged(object sender, EventArgs args) => UpdateIcons();
+
+ private void OnNotificationFlyoutXamlHostClosed(object sender, EventArgs args)
+ {
+ _notificationIconHelper?.Dispose();
+ }
+
+ private void OnTaskbarChanged(object sender, EventArgs args) => SetFlyoutPlacement();
+
+ private void OnThemeChanged(object sender, SystemPersonalisationChangedEventArgs args)
+ {
+
+ }
private void PrepareFlyoutHost()
{
- _notificationFlyoutXamlHost = new NotificationFlyoutXamlHost();
+ _notificationFlyoutXamlHost = new TransparentXamlHost();
+ _notificationFlyoutXamlHost.Closed += OnNotificationFlyoutXamlHostClosed;
+
+ var taskbarState = _taskbarHelper.GetCurrentState();
+ _notificationFlyoutXamlHost.Left = taskbarState.Screen.WorkingArea.Left;
+ _notificationFlyoutXamlHost.Top = taskbarState.Screen.WorkingArea.Top;
+
_notificationFlyoutXamlHost.Show();
}
+
+ private void SetFlyoutPlacement()
+ {
+ var taskbarState = _taskbarHelper.GetCurrentState();
+
+ _notificationFlyoutXamlHost.Left = 0;
+ _notificationFlyoutXamlHost.Top = 0;
+
+ double left;
+ double top;
+
+ var dpiX = _notificationFlyoutXamlHost.DpiX();
+ var dpiY = _notificationFlyoutXamlHost.DpiY();
+
+ NotificationFlyoutTaskbarPlacement flyoutTaskBarPlacement;
+ switch (taskbarState.Placement)
+ {
+ case TaskbarPlacement.Left:
+ flyoutTaskBarPlacement = NotificationFlyoutTaskbarPlacement.Left;
+ top = taskbarState.Rect.Bottom / dpiX;
+ left = taskbarState.Rect.Right / dpiY;
+ break;
+
+ case TaskbarPlacement.Top:
+ flyoutTaskBarPlacement = NotificationFlyoutTaskbarPlacement.Top;
+ top = taskbarState.Rect.Bottom / dpiX;
+ left = (_notificationFlyoutXamlHost.FlowDirection == FlowDirection.RightToLeft ? taskbarState.Rect.Left : taskbarState.Rect.Right) / dpiY;
+ break;
+
+ case TaskbarPlacement.Right:
+ flyoutTaskBarPlacement = NotificationFlyoutTaskbarPlacement.Right;
+ top = taskbarState.Rect.Bottom / dpiX;
+ left = taskbarState.Rect.Left / dpiY;
+ break;
+
+ case TaskbarPlacement.Bottom:
+ flyoutTaskBarPlacement = NotificationFlyoutTaskbarPlacement.Bottom;
+ top = taskbarState.Rect.Top / dpiX;
+ left = (_notificationFlyoutXamlHost.FlowDirection == FlowDirection.RightToLeft ? taskbarState.Rect.Left : taskbarState.Rect.Right) / dpiY;
+ break;
+
+ default:
+ throw new ArgumentOutOfRangeException();
+ }
+
+ Flyout.SetPlacement(left, top, flyoutTaskBarPlacement);
+ }
+
+ private async void UpdateIcons()
+ {
+ if (Flyout == null) return;
+
+ var shellTrayHandle = WindowHelper.GetHandle(ShellTrayHandleName);
+ if (shellTrayHandle == null) return;
+
+ var dpi = WindowHelper.GetDpi(shellTrayHandle);
+
+ var desiredIconSource = _systemPersonalisationHelper.Theme == SystemTheme.Dark ? Flyout.IconSource : Flyout.LightIconSource;
+ if (desiredIconSource == null)
+ {
+ var fallbackIconSource = new BitmapImage(new Uri($"pack://application:,,,/{GetType().Namespace};component/Assets/notification-icon-{(_systemPersonalisationHelper.Theme == SystemTheme.Dark ? "default" : "light")}.ico"));
+ using var icon = fallbackIconSource.ConvertToIcon(dpi);
+ _notificationIconHelper.SetIcon(icon.Handle);
+ }
+ else
+ {
+ using var icon = await desiredIconSource.ConvertToIconAsync(dpi);
+ _notificationIconHelper.SetIcon(icon.Handle);
+ }
+ }
+
+ private void UpdateTheme()
+ {
+ //var content = GetHostContent();
+ //if (content != null)
+ //{
+ // content.UpdateTheme(_systemPersonalisationHelper.IsColorPrevalence);
+ //}
+ }
}
}
\ No newline at end of file
diff --git a/src/TheXamlGuy.NotificationFlyout.Wpf.UI.Controls/NotificationFlyout/NotificationFlyoutXamlHost.cs b/src/TheXamlGuy.NotificationFlyout.Wpf.UI.Controls/NotificationFlyout/NotificationFlyoutXamlHost.cs
deleted file mode 100644
index 4c79d67..0000000
--- a/src/TheXamlGuy.NotificationFlyout.Wpf.UI.Controls/NotificationFlyout/NotificationFlyoutXamlHost.cs
+++ /dev/null
@@ -1,282 +0,0 @@
-using TheXamlGuy.NotificationFlyout.Common.Extensions;
-using TheXamlGuy.NotificationFlyout.Common.Helpers;
-using TheXamlGuy.NotificationFlyout.Uwp.UI.Controls;
-using TheXamlGuy.NotificationFlyout.Wpf.UI.Extensions;
-using System;
-using System.Windows;
-using Windows.UI.Xaml.Controls.Primitives;
-using System.Windows.Media.Imaging;
-
-namespace TheXamlGuy.NotificationFlyout.Wpf.UI.Controls
-{
- internal class NotificationFlyoutXamlHost : TransparentXamlHost
- {
- private const string ShellTrayHandleName = "Shell_TrayWnd";
-
- private NotificationFlyoutContextMenuXamlHost _contextMenuXamlHost;
- private Uwp.UI.Controls.NotificationFlyout _flyout;
- private NotificationIconHelper _notificationIconHelper;
- private SystemPersonalisationHelper _systemPersonalisationHelper;
- private TaskbarHelper _taskbarHelper;
-
- internal void HideFlyout()
- {
- var flyoutHost = GetHostContent();
- if (flyoutHost != null)
- {
- flyoutHost.HideFlyout();
- }
- }
-
- internal void SetOwningFlyout(Uwp.UI.Controls.NotificationFlyout flyout)
- {
- if (_flyout != null)
- {
- _flyout.IconSourceChanged -= OnIconSourceChanged;
- _flyout.ContextMenuChanged -= OnContextMenuChanged;
- _flyout.PlacementChanged -= OnPlacementChanged;
- }
-
- _flyout = flyout;
- _flyout.IconSourceChanged += OnIconSourceChanged;
- _flyout.ContextMenuChanged += OnContextMenuChanged;
- _flyout.PlacementChanged += OnPlacementChanged;
-
- var content = GetHostContent();
- if (content != null)
- {
- content.SetOwningFlyout(_flyout);
- }
-
- UpdateIcons();
- UpdateContextMenu();
- }
-
- internal void ShowFlyout()
- {
- var content = GetHostContent();
- if (content != null)
- {
- var taskbarState = _taskbarHelper.GetCurrentState();
- var flyoutPlacement = FlyoutPlacementMode.Top;
-
- switch (_flyout.Placement)
- {
- case NotificationFlyoutPlacement.Auto:
- flyoutPlacement = taskbarState.Placement switch
- {
- TaskbarPlacement.Left => FlyoutPlacementMode.Right,
- TaskbarPlacement.Top => FlyoutPlacementMode.Bottom,
- TaskbarPlacement.Right => FlyoutPlacementMode.Left,
- TaskbarPlacement.Bottom => FlyoutPlacementMode.Top,
- _ => throw new ArgumentOutOfRangeException(),
- };
- break;
- }
-
- Activate();
- content.ShowFlyout(flyoutPlacement);
- }
- }
-
- protected override void OnClosed(EventArgs args)
- {
- _notificationIconHelper.Dispose();
-
- if (_contextMenuXamlHost == null) return;
- _contextMenuXamlHost.Close();
- }
-
- protected override void OnContentLoaded()
- {
- PrepareNotificationIcon();
- PrepareTaskbar();
- UpdatePlacement();
- UpdateTheme();
- }
-
- protected override void OnDeactivated(EventArgs args) => HideFlyout();
-
- private void OnContextMenuChanged(object sender, EventArgs args) => UpdateContextMenu();
-
- private void OnIconInvoked(object sender, NotificationIconInvokedEventArgs args)
- {
- if (args.PointerButton == PointerButton.Left)
- {
- ShowFlyout();
- }
-
- if (args.PointerButton == PointerButton.Right)
- {
- ShowContextMenuFlyout();
- }
- }
-
- private void OnIconSourceChanged(object sender, EventArgs args) => UpdateIcons();
-
- private void OnPlacementChanged(object sender, EventArgs args) => UpdatePlacement();
-
- private void OnTaskbarChanged(object sender, EventArgs args) => UpdatePlacement();
-
- private void OnThemeChanged(object sender, SystemPersonalisationChangedEventArgs args)
- {
- UpdateTheme();
- UpdateIcons();
- }
-
- private void UpdateContextMenu()
- {
- if (_contextMenuXamlHost != null)
- {
- _contextMenuXamlHost.Close();
- _contextMenuXamlHost = null;
- }
-
- var contextMenu = _flyout.ContextMenu;
- if (contextMenu == null) return;
-
- if (_contextMenuXamlHost == null)
- {
- _contextMenuXamlHost = new NotificationFlyoutContextMenuXamlHost();
- _contextMenuXamlHost.Show();
- }
-
- _contextMenuXamlHost.SetOwningFlyout(_flyout);
- }
-
- private void PrepareNotificationIcon()
- {
- _notificationIconHelper = NotificationIconHelper.Create();
- _notificationIconHelper.IconInvoked += OnIconInvoked;
-
- _systemPersonalisationHelper = SystemPersonalisationHelper.Current;
- _systemPersonalisationHelper.ThemeChanged += OnThemeChanged;
-
- UpdateIcons();
- }
-
- private void PrepareTaskbar()
- {
- _taskbarHelper = TaskbarHelper.Create();
- _taskbarHelper.TaskbarChanged += OnTaskbarChanged;
- }
-
- private void ShowContextMenuFlyout()
- {
- if (_contextMenuXamlHost == null) return;
- _contextMenuXamlHost.ShowContextMenuFlyout();
- }
-
- private async void UpdateIcons()
- {
- if (!IsLoaded) return;
- if (_flyout == null) return;
-
- var shellTrayHandle = WindowHelper.GetHandle(ShellTrayHandleName);
- if (shellTrayHandle == null) return;
-
- var dpi = WindowHelper.GetDpi(shellTrayHandle);
-
- var desiredIconSource = _systemPersonalisationHelper.Theme == SystemTheme.Dark ? _flyout.IconSource : _flyout.LightIconSource;
- if (desiredIconSource == null)
- {
- var fallbackIconSource = new BitmapImage(new Uri($"pack://application:,,,/{GetType().Namespace};component/Assets/notification-icon-{(_systemPersonalisationHelper.Theme == SystemTheme.Dark ? "default" : "light")}.ico"));
- using var icon = fallbackIconSource.ConvertToIcon(dpi);
- _notificationIconHelper.SetIcon(icon.Handle);
- }
- else
- {
- using var icon = await desiredIconSource.ConvertToIconAsync(dpi);
- _notificationIconHelper.SetIcon(icon.Handle);
- }
- }
-
- private void UpdateTheme()
- {
- var content = GetHostContent();
- if (content != null)
- {
- content.UpdateTheme(_systemPersonalisationHelper.IsColorPrevalence);
- }
- }
-
- private void UpdatePlacement()
- {
- if (!IsLoaded) return;
-
- var flyoutHost = GetHostContent();
- if (flyoutHost == null) return;
-
- var taskbarState = _taskbarHelper.GetCurrentState();
- Left = taskbarState.Screen.WorkingArea.Left;
- Top = taskbarState.Screen.WorkingArea.Top;
-
- var width = WindowSize * this.DpiX();
- var height = WindowSize * this.DpiY();
-
- double top = 0, left = 0;
-
- var taskbarRect = taskbarState.Rect;
- var taskBarPlacement = taskbarState.Placement;
- var presenterPlacement = NotificationFlyoutPresenterPlacement.Bottom;
-
- switch (_flyout.Placement)
- {
- case NotificationFlyoutPlacement.Auto:
- switch (taskBarPlacement)
- {
- case TaskbarPlacement.Left:
- presenterPlacement = NotificationFlyoutPresenterPlacement.Left;
- top = taskbarRect.Bottom - height;
- left = taskbarRect.Right;
- break;
-
- case TaskbarPlacement.Top:
- presenterPlacement = NotificationFlyoutPresenterPlacement.Top;
- top = taskbarRect.Bottom;
- left = FlowDirection == FlowDirection.RightToLeft ? taskbarRect.Left : taskbarRect.Right - width;
- break;
-
- case TaskbarPlacement.Right:
- presenterPlacement = NotificationFlyoutPresenterPlacement.Right;
- top = taskbarRect.Bottom - height;
- left = taskbarRect.Left - width;
- break;
-
- case TaskbarPlacement.Bottom:
- presenterPlacement = NotificationFlyoutPresenterPlacement.Bottom;
- top = taskbarRect.Top - height;
- left = FlowDirection == FlowDirection.RightToLeft ? taskbarRect.Left : taskbarRect.Right - width;
- break;
-
- default:
- throw new ArgumentOutOfRangeException();
- }
- break;
- case NotificationFlyoutPlacement.Right:
- presenterPlacement = NotificationFlyoutPresenterPlacement.FullRight;
- switch (taskBarPlacement)
- {
- case TaskbarPlacement.Left:
- case TaskbarPlacement.Top:
- case TaskbarPlacement.Right:
- left = taskbarState.Screen.Bounds.Width - width;
- top = taskbarState.Screen.Bounds.Height - height;
- break;
-
- case TaskbarPlacement.Bottom:
- top = taskbarRect.Top - height;
- left = FlowDirection == FlowDirection.RightToLeft ? taskbarRect.Left : taskbarRect.Right - width;
- break;
-
- default:
- throw new ArgumentOutOfRangeException();
- }
- break;
- }
-
- this.SetWindowPosition(top, left, height, width);
- flyoutHost.UpdatePlacement(presenterPlacement);
- }
- }
-}
\ No newline at end of file
diff --git a/src/TheXamlGuy.NotificationFlyout.Wpf.UI.Controls/XamlHost/TransparentXamlHost.cs b/src/TheXamlGuy.NotificationFlyout.Wpf.UI.Controls/XamlHost/TransparentXamlHost.cs
index c80666f..1b449f8 100644
--- a/src/TheXamlGuy.NotificationFlyout.Wpf.UI.Controls/XamlHost/TransparentXamlHost.cs
+++ b/src/TheXamlGuy.NotificationFlyout.Wpf.UI.Controls/XamlHost/TransparentXamlHost.cs
@@ -7,7 +7,7 @@ namespace TheXamlGuy.NotificationFlyout.Wpf.UI.Controls
{
internal class TransparentXamlHost : XamlHost where TXamlContent : Windows.UI.Xaml.UIElement
{
- internal const double WindowSize = 5;
+ internal const double WindowSize = 0;
public TransparentXamlHost()
{