diff options
3 files changed, 19 insertions, 16 deletions
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AtkCocoaHelper/AtkCocoaHelperMac.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AtkCocoaHelper/AtkCocoaHelperMac.cs index 6dedc4b8d9..bcdbbe7101 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AtkCocoaHelper/AtkCocoaHelperMac.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AtkCocoaHelper/AtkCocoaHelperMac.cs @@ -523,6 +523,19 @@ namespace MonoDevelop.Components.AtkCocoaHelper nsa.AccessibilityLinkedUIElements = newLinkedElements; } + + public static void MakeAccessibilityAnnouncement (this Atk.Object o, string message) + { + if (o == null) + return; + var nsObject = AtkCocoaMacExtensions.GetNSAccessibilityElement (o) as NSObject; + if (nsObject == null) + return; + var dictionary = + new NSDictionary (NSAccessibilityNotificationUserInfoKeys.AnnouncementKey, new NSString (message), + NSAccessibilityNotificationUserInfoKeys.PriorityKey, NSAccessibilityPriorityLevel.High); + NSAccessibility.PostNotification (nsObject, NSAccessibilityNotifications.AnnouncementRequestedNotification, dictionary); + } } public class AccessibilityElementProxy : IAccessibilityElementProxy diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AtkCocoaHelper/AtkCocoaHelperNoOp.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AtkCocoaHelper/AtkCocoaHelperNoOp.cs index 6843a55a72..bc2fc262f3 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AtkCocoaHelper/AtkCocoaHelperNoOp.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.AtkCocoaHelper/AtkCocoaHelperNoOp.cs @@ -153,6 +153,10 @@ namespace MonoDevelop.Components.AtkCocoaHelper public static void AddLinkedUIElement (this Atk.Object o, params Atk.Object [] linked) { } + + public static void MakeAccessibilityAnnouncement (this Atk.Object o, string message) + { + } } public class AccessibilityElementProxy : IAccessibilityElementProxy diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/GtkNewProjectDialogBackend.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/GtkNewProjectDialogBackend.cs index f8be581b11..e7c07455b0 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/GtkNewProjectDialogBackend.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/GtkNewProjectDialogBackend.cs @@ -83,24 +83,10 @@ namespace MonoDevelop.Ide.Projects {
var projectTemplate = controller.SelectedTemplate; var messageText = GettextCatalog.GetString (hasError ? "{0} creation fail" : "{0} successfully created",
- projectTemplate.Name); - ShowAccessibityNotification (messageText);
+ projectTemplate.Name);
+ this.Accessible.MakeAccessibilityAnnouncement (messageText); }
- void ShowAccessibityNotification (string message)
- {
- var accessibleObject = this.Accessible;
- if (accessibleObject == null)
- return;
- var nsObject = AtkCocoaMacExtensions.GetNSAccessibilityElement (accessibleObject) as NSObject;
- if (nsObject == null)
- return;
- var dictionary =
- new NSDictionary (NSAccessibilityNotificationUserInfoKeys.AnnouncementKey, new NSString (message),
- NSAccessibilityNotificationUserInfoKeys.PriorityKey, NSAccessibilityPriorityLevel.High);
- NSAccessibility.PostNotification (nsObject, NSAccessibilityNotifications.AnnouncementRequestedNotification, dictionary);
- }
-
public void ShowDialog ()
{
MessageService.ShowCustomDialog (this);
|