diff --git a/src/Avalonia.Base/Input/IAccessKeyHandler.cs b/src/Avalonia.Base/Input/IAccessKeyHandler.cs
index 93a50968e2..aaad93eb23 100644
--- a/src/Avalonia.Base/Input/IAccessKeyHandler.cs
+++ b/src/Avalonia.Base/Input/IAccessKeyHandler.cs
@@ -5,8 +5,7 @@ namespace Avalonia.Input
///
/// Defines the interface for classes that handle access keys for a window.
///
- [Unstable]
- public interface IAccessKeyHandler
+ internal interface IAccessKeyHandler
{
///
/// Gets or sets the window's main menu.
diff --git a/src/Avalonia.Base/Input/IInputRoot.cs b/src/Avalonia.Base/Input/IInputRoot.cs
index 0100b22ba7..d0921eea2d 100644
--- a/src/Avalonia.Base/Input/IInputRoot.cs
+++ b/src/Avalonia.Base/Input/IInputRoot.cs
@@ -8,11 +8,6 @@ namespace Avalonia.Input
[NotClientImplementable]
public interface IInputRoot : IInputElement
{
- ///
- /// Gets or sets the access key handler.
- ///
- IAccessKeyHandler AccessKeyHandler { get; }
-
///
/// Gets or sets the keyboard navigation handler.
///
diff --git a/src/Avalonia.Base/Input/IMainMenu.cs b/src/Avalonia.Base/Input/IMainMenu.cs
index 0010397c1a..cc1b88d4c3 100644
--- a/src/Avalonia.Base/Input/IMainMenu.cs
+++ b/src/Avalonia.Base/Input/IMainMenu.cs
@@ -1,15 +1,12 @@
using System;
using Avalonia.Interactivity;
-using Avalonia.Metadata;
-using Avalonia.VisualTree;
namespace Avalonia.Input
{
///
/// Defines the interface for a window's main menu.
///
- [NotClientImplementable]
- public interface IMainMenu
+ internal interface IMainMenu
{
///
/// Gets a value indicating whether the menu is open.
diff --git a/src/Avalonia.Controls/Menu.cs b/src/Avalonia.Controls/Menu.cs
index 4df423dee8..fe4d42c603 100644
--- a/src/Avalonia.Controls/Menu.cs
+++ b/src/Avalonia.Controls/Menu.cs
@@ -87,7 +87,7 @@ namespace Avalonia.Controls
{
base.OnAttachedToVisualTree(e);
- var inputRoot = e.Root as IInputRoot;
+ var inputRoot = e.Root as TopLevel;
if (inputRoot?.AccessKeyHandler != null)
{
diff --git a/src/Avalonia.Controls/MenuItemAccessKeyHandler.cs b/src/Avalonia.Controls/MenuItemAccessKeyHandler.cs
index 381f1799d4..e1e7779f17 100644
--- a/src/Avalonia.Controls/MenuItemAccessKeyHandler.cs
+++ b/src/Avalonia.Controls/MenuItemAccessKeyHandler.cs
@@ -9,7 +9,7 @@ namespace Avalonia.Controls
///
/// Handles access keys within a
///
- public class MenuItemAccessKeyHandler : IAccessKeyHandler
+ internal class MenuItemAccessKeyHandler : IAccessKeyHandler
{
///
/// The registered access keys.
diff --git a/src/Avalonia.Controls/Primitives/AccessText.cs b/src/Avalonia.Controls/Primitives/AccessText.cs
index c5dbc3000f..2e570e25c7 100644
--- a/src/Avalonia.Controls/Primitives/AccessText.cs
+++ b/src/Avalonia.Controls/Primitives/AccessText.cs
@@ -86,7 +86,7 @@ namespace Avalonia.Controls.Primitives
protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
{
base.OnAttachedToVisualTree(e);
- _accessKeys = (e.Root as IInputRoot)?.AccessKeyHandler;
+ _accessKeys = (e.Root as TopLevel)?.AccessKeyHandler;
if (_accessKeys != null && AccessKey != 0)
{
diff --git a/src/Avalonia.Controls/TopLevel.cs b/src/Avalonia.Controls/TopLevel.cs
index f655016769..474735d25b 100644
--- a/src/Avalonia.Controls/TopLevel.cs
+++ b/src/Avalonia.Controls/TopLevel.cs
@@ -386,7 +386,7 @@ namespace Avalonia.Controls
///
/// Gets the access key handler for the window.
///
- IAccessKeyHandler IInputRoot.AccessKeyHandler => _accessKeyHandler!;
+ internal IAccessKeyHandler AccessKeyHandler => _accessKeyHandler!;
///
/// Gets or sets the keyboard navigation handler for the window.
diff --git a/tests/Avalonia.UnitTests/TestRoot.cs b/tests/Avalonia.UnitTests/TestRoot.cs
index 8dabfe2197..80f0cf5406 100644
--- a/tests/Avalonia.UnitTests/TestRoot.cs
+++ b/tests/Avalonia.UnitTests/TestRoot.cs
@@ -51,8 +51,6 @@ namespace Avalonia.UnitTests
public IRenderer Renderer { get; set; }
- public IAccessKeyHandler AccessKeyHandler => null;
-
public IKeyboardNavigationHandler KeyboardNavigationHandler => null;
public IFocusManager FocusManager => AvaloniaLocator.Current.GetService();