Files
MicrosoftIris/UIX/Microsoft/Iris/Accessibility/RootAccessibleProxy.cs
T

54 lines
1.7 KiB
C#
Raw Normal View History

2022-03-03 08:14:05 -06:00
// Decompiled with JetBrains decompiler
// Type: Microsoft.Iris.Accessibility.RootAccessibleProxy
// Assembly: UIX, Version=4.8.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
// MVID: A56C6C9D-B7F6-46A9-8BDE-B3D9B8D60B11
// Assembly location: C:\Program Files\Zune\UIX.dll
using Accessibility;
using Microsoft.Iris.Session;
using Microsoft.Iris.UI;
using System.Runtime.InteropServices;
namespace Microsoft.Iris.Accessibility
{
[ComVisible(true)]
public class RootAccessibleProxy : AccessibleProxy
{
private IAccessible _clientBridge;
internal RootAccessibleProxy(UIClass ui, Accessible data)
: base(ui, data)
{
}
internal override IAccessible Parent => (IAccessible)_clientBridge.accParent;
internal override IAccessible Navigate(AccNavDirs navDir)
{
IAccessible accessible = null;
switch (navDir)
{
case AccNavDirs.Up:
case AccNavDirs.Down:
case AccNavDirs.Left:
case AccNavDirs.Right:
case AccNavDirs.Next:
case AccNavDirs.Previous:
accessible = (IAccessible)_clientBridge.accNavigate((int)navDir, 0);
break;
case AccNavDirs.FirstChild:
case AccNavDirs.LastChild:
accessible = base.Navigate(navDir);
break;
}
return accessible;
}
internal override string Name => UIApplication.ApplicationName;
internal IAccessible ClientBridge => _clientBridge;
internal void AttachClientBridge(IAccessible clientBridge) => _clientBridge = clientBridge;
}
}