Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(23)

Side by Side Diff: content/browser/accessibility/browser_accessibility_cocoa.mm

Issue 559343002: Add AX attribute conversion for input type (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Add AX attribute conversion for input type Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <execinfo.h> 5 #include <execinfo.h>
6 6
7 #import "content/browser/accessibility/browser_accessibility_cocoa.h" 7 #import "content/browser/accessibility/browser_accessibility_cocoa.h"
8 8
9 #include <map> 9 #include <map>
10 10
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
105 { @"AXAccessKey", @"accessKey" }, 105 { @"AXAccessKey", @"accessKey" },
106 { @"AXARIAAtomic", @"ariaAtomic" }, 106 { @"AXARIAAtomic", @"ariaAtomic" },
107 { @"AXARIABusy", @"ariaBusy" }, 107 { @"AXARIABusy", @"ariaBusy" },
108 { @"AXARIALive", @"ariaLive" }, 108 { @"AXARIALive", @"ariaLive" },
109 { @"AXARIARelevant", @"ariaRelevant" }, 109 { @"AXARIARelevant", @"ariaRelevant" },
110 { @"AXInvalid", @"invalid" }, 110 { @"AXInvalid", @"invalid" },
111 { @"AXLoaded", @"loaded" }, 111 { @"AXLoaded", @"loaded" },
112 { @"AXLoadingProgress", @"loadingProgress" }, 112 { @"AXLoadingProgress", @"loadingProgress" },
113 { @"AXRequired", @"required" }, 113 { @"AXRequired", @"required" },
114 { @"AXVisited", @"visited" }, 114 { @"AXVisited", @"visited" },
115 { @"AXTextInputType", @"textInputType" },
dmazzoni 2014/09/26 15:29:16 I can't find AXTextInputType documented anywhere.
je_julie(Not used) 2014/09/28 14:57:25 OK. I'll not add textinput type for mac for now.
115 }; 116 };
116 117
117 NSMutableDictionary* dict = [[NSMutableDictionary alloc] init]; 118 NSMutableDictionary* dict = [[NSMutableDictionary alloc] init];
118 const size_t numAttributes = sizeof(attributeToMethodNameContainer) / 119 const size_t numAttributes = sizeof(attributeToMethodNameContainer) /
119 sizeof(attributeToMethodNameContainer[0]); 120 sizeof(attributeToMethodNameContainer[0]);
120 for (size_t i = 0; i < numAttributes; ++i) { 121 for (size_t i = 0; i < numAttributes; ++i) {
121 [dict setObject:attributeToMethodNameContainer[i].methodName 122 [dict setObject:attributeToMethodNameContainer[i].methodName
122 forKey:attributeToMethodNameContainer[i].attribute]; 123 forKey:attributeToMethodNameContainer[i].attribute];
123 } 124 }
124 attributeToMethodNameMap = dict; 125 attributeToMethodNameMap = dict;
(...skipping 752 matching lines...) Expand 10 before | Expand all | Expand 10 after
877 878
878 - (NSArray*)visibleRows { 879 - (NSArray*)visibleRows {
879 return [self rows]; 880 return [self rows];
880 } 881 }
881 882
882 - (NSNumber*)visited { 883 - (NSNumber*)visited {
883 return [NSNumber numberWithBool: 884 return [NSNumber numberWithBool:
884 GetState(browserAccessibility_, ui::AX_STATE_VISITED)]; 885 GetState(browserAccessibility_, ui::AX_STATE_VISITED)];
885 } 886 }
886 887
888 - (NSString*)textInputType {
889 return NSStringForStringAttribute(
890 browserAccessibility_, ui::AX_ATTR_TEXT_INPUT_TYPE);
891 }
892
887 - (id)window { 893 - (id)window {
888 if (!browserAccessibility_) 894 if (!browserAccessibility_)
889 return nil; 895 return nil;
890 896
891 BrowserAccessibilityManagerMac* manager = 897 BrowserAccessibilityManagerMac* manager =
892 static_cast<BrowserAccessibilityManagerMac*>( 898 static_cast<BrowserAccessibilityManagerMac*>(
893 browserAccessibility_->manager()); 899 browserAccessibility_->manager());
894 return [manager->parent_view() window]; 900 return [manager->parent_view() window];
895 } 901 }
896 902
(...skipping 315 matching lines...) Expand 10 before | Expand all | Expand 10 after
1212 } else if ([role isEqualToString:NSAccessibilityCellRole]) { 1218 } else if ([role isEqualToString:NSAccessibilityCellRole]) {
1213 [ret addObjectsFromArray:[NSArray arrayWithObjects: 1219 [ret addObjectsFromArray:[NSArray arrayWithObjects:
1214 NSAccessibilityColumnIndexRangeAttribute, 1220 NSAccessibilityColumnIndexRangeAttribute,
1215 NSAccessibilityRowIndexRangeAttribute, 1221 NSAccessibilityRowIndexRangeAttribute,
1216 nil]]; 1222 nil]];
1217 } else if ([role isEqualToString:@"AXWebArea"]) { 1223 } else if ([role isEqualToString:@"AXWebArea"]) {
1218 [ret addObjectsFromArray:[NSArray arrayWithObjects: 1224 [ret addObjectsFromArray:[NSArray arrayWithObjects:
1219 @"AXLoaded", 1225 @"AXLoaded",
1220 @"AXLoadingProgress", 1226 @"AXLoadingProgress",
1221 nil]]; 1227 nil]];
1222 } else if ([role isEqualToString:NSAccessibilityTextFieldRole] || 1228 } else if ([role isEqualToString:NSAccessibilityTextFieldRole]) {
1223 [role isEqualToString:NSAccessibilityTextAreaRole]) {
1224 [ret addObjectsFromArray:[NSArray arrayWithObjects: 1229 [ret addObjectsFromArray:[NSArray arrayWithObjects:
1225 NSAccessibilityInsertionPointLineNumberAttribute, 1230 NSAccessibilityInsertionPointLineNumberAttribute,
1226 NSAccessibilityNumberOfCharactersAttribute, 1231 NSAccessibilityNumberOfCharactersAttribute,
1232 NSAccessibilitySelectedTextAttribute,
1233 NSAccessibilitySelectedTextRangeAttribute,
1234 NSAccessibilityVisibleCharacterRangeAttribute,
1235 @"AXTextInputType",
1236 nil]];
1237 } else if ([role isEqualToString:NSAccessibilityTextAreaRole]) {
1238 [ret addObjectsFromArray:[NSArray arrayWithObjects:
1239 NSAccessibilityInsertionPointLineNumberAttribute,
1240 NSAccessibilityNumberOfCharactersAttribute,
1227 NSAccessibilitySelectedTextAttribute, 1241 NSAccessibilitySelectedTextAttribute,
1228 NSAccessibilitySelectedTextRangeAttribute, 1242 NSAccessibilitySelectedTextRangeAttribute,
1229 NSAccessibilityVisibleCharacterRangeAttribute, 1243 NSAccessibilityVisibleCharacterRangeAttribute,
1230 nil]]; 1244 nil]];
1231 } else if ([role isEqualToString:NSAccessibilityTabGroupRole]) { 1245 } else if ([role isEqualToString:NSAccessibilityTabGroupRole]) {
1232 [ret addObject:NSAccessibilityTabsAttribute]; 1246 [ret addObject:NSAccessibilityTabsAttribute];
1233 } else if ([role isEqualToString:NSAccessibilityProgressIndicatorRole] || 1247 } else if ([role isEqualToString:NSAccessibilityProgressIndicatorRole] ||
1234 [role isEqualToString:NSAccessibilitySliderRole] || 1248 [role isEqualToString:NSAccessibilitySliderRole] ||
1235 [role isEqualToString:NSAccessibilityScrollBarRole]) { 1249 [role isEqualToString:NSAccessibilityScrollBarRole]) {
1236 [ret addObjectsFromArray:[NSArray arrayWithObjects: 1250 [ret addObjectsFromArray:[NSArray arrayWithObjects:
(...skipping 214 matching lines...) Expand 10 before | Expand all | Expand 10 after
1451 return [super hash]; 1465 return [super hash];
1452 return browserAccessibility_->GetId(); 1466 return browserAccessibility_->GetId();
1453 } 1467 }
1454 1468
1455 - (BOOL)accessibilityShouldUseUniqueId { 1469 - (BOOL)accessibilityShouldUseUniqueId {
1456 return YES; 1470 return YES;
1457 } 1471 }
1458 1472
1459 @end 1473 @end
1460 1474
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698