[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] emacs-26 defd53a 2/2: Set accessibility subroles for child
From: |
Alan Third |
Subject: |
[Emacs-diffs] emacs-26 defd53a 2/2: Set accessibility subroles for child frame (bug#31324) |
Date: |
Sun, 3 Jun 2018 04:44:02 -0400 (EDT) |
branch: emacs-26
commit defd53a56c709b8b8c736f0ab3b594490216d300
Author: Alan Third <address@hidden>
Commit: Alan Third <address@hidden>
Set accessibility subroles for child frame (bug#31324)
; Depends on patch in bug#31440.
* src/nsterm.m (x_set_parent_frame): Set subrole depending on whether
frame is a child or not.
---
src/nsterm.m | 16 +++++++++++++++-
1 file changed, 15 insertions(+), 1 deletion(-)
diff --git a/src/nsterm.m b/src/nsterm.m
index df88334..e4a9b01 100644
--- a/src/nsterm.m
+++ b/src/nsterm.m
@@ -1962,7 +1962,15 @@ x_set_parent_frame (struct frame *f, Lisp_Object
new_value, Lisp_Object old_valu
child = [FRAME_NS_VIEW (f) window];
if ([child parentWindow] != nil)
- [[child parentWindow] removeChildWindow:child];
+ {
+ [[child parentWindow] removeChildWindow:child];
+#if defined (NS_IMPL_COCOA) && MAC_OS_X_VERSION_MAX_ALLOWED >= 101000
+#if MAC_OS_X_VERSION_MIN_REQUIRED < 101000
+ if ([child respondsToSelector:@selector(setAccessibilitySubrole:)]
+#endif
+ [child
setAccessibilitySubrole:NSAccessibilityStandardWindowSubrole];
+#endif
+ }
if (!NILP (new_value))
{
@@ -1970,6 +1978,12 @@ x_set_parent_frame (struct frame *f, Lisp_Object
new_value, Lisp_Object old_valu
[parent addChildWindow: child
ordered: NSWindowAbove];
+#if defined (NS_IMPL_COCOA) && MAC_OS_X_VERSION_MAX_ALLOWED >= 101000
+#if MAC_OS_X_VERSION_MIN_REQUIRED < 101000
+ if ([child respondsToSelector:@selector(setAccessibilitySubrole:)]
+#endif
+ [child
setAccessibilitySubrole:NSAccessibilityFloatingWindowSubrole];
+#endif
}
unblock_input ();