diff --git a/samples/ControlCatalog/MainView.xaml b/samples/ControlCatalog/MainView.xaml
index 7f5a191519..ec198c6bba 100644
--- a/samples/ControlCatalog/MainView.xaml
+++ b/samples/ControlCatalog/MainView.xaml
@@ -19,6 +19,9 @@
+
+
+
diff --git a/samples/ControlCatalog/MainView.xaml.cs b/samples/ControlCatalog/MainView.xaml.cs
index 7133ddaa6a..7001eb41ea 100644
--- a/samples/ControlCatalog/MainView.xaml.cs
+++ b/samples/ControlCatalog/MainView.xaml.cs
@@ -2,10 +2,10 @@ using System;
using System.Collections;
using Avalonia;
using Avalonia.Controls;
+using Avalonia.Controls.ApplicationLifetimes;
using Avalonia.Markup.Xaml;
using Avalonia.Media;
using Avalonia.Media.Immutable;
-using Avalonia.Platform;
using Avalonia.Themes.Fluent;
using ControlCatalog.Models;
using ControlCatalog.Pages;
@@ -20,7 +20,7 @@ namespace ControlCatalog
var sideBar = this.Get("Sidebar");
- if (AvaloniaLocator.Current?.GetService()?.GetRuntimeInfo().IsDesktop == true)
+ if (Application.Current?.ApplicationLifetime is IClassicDesktopStyleApplicationLifetime)
{
var tabItems = (sideBar.Items as IList);
tabItems?.Add(new TabItem()
@@ -28,7 +28,6 @@ namespace ControlCatalog
Header = "Screens",
Content = new ScreenPage()
});
-
}
var themes = this.Get("Themes");
diff --git a/samples/ControlCatalog/Pages/AdornerLayerPage.xaml b/samples/ControlCatalog/Pages/AdornerLayerPage.xaml
new file mode 100644
index 0000000000..598844d695
--- /dev/null
+++ b/samples/ControlCatalog/Pages/AdornerLayerPage.xaml
@@ -0,0 +1,66 @@
+
+
+
+
+ Rotation
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/samples/ControlCatalog/Pages/AdornerLayerPage.xaml.cs b/samples/ControlCatalog/Pages/AdornerLayerPage.xaml.cs
new file mode 100644
index 0000000000..0cf4a6633c
--- /dev/null
+++ b/samples/ControlCatalog/Pages/AdornerLayerPage.xaml.cs
@@ -0,0 +1,48 @@
+using Avalonia.Controls;
+using Avalonia.Controls.Primitives;
+using Avalonia.Interactivity;
+using Avalonia.Markup.Xaml;
+
+namespace ControlCatalog.Pages
+{
+ public class AdornerLayerPage : UserControl
+ {
+ private Control? _adorner;
+
+ public AdornerLayerPage()
+ {
+ this.InitializeComponent();
+ }
+
+ private void InitializeComponent()
+ {
+ AvaloniaXamlLoader.Load(this);
+ }
+
+ private void RemoveAdorner_OnClick(object? sender, RoutedEventArgs e)
+ {
+ var adornerButton = this.FindControl