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

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

Issue 5751002: Hook up AXVisited attribute. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 10 years 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 "chrome/browser/accessibility/browser_accessibility_cocoa.h" 7 #import "chrome/browser/accessibility/browser_accessibility_cocoa.h"
8 8
9 #include "app/l10n_util_mac.h" 9 #include "app/l10n_util_mac.h"
10 #include "base/string16.h" 10 #include "base/string16.h"
(...skipping 226 matching lines...) Expand 10 before | Expand all | Expand 10 after
237 } 237 }
238 if ([attribute isEqualToString:NSAccessibilityFocusedAttribute]) { 238 if ([attribute isEqualToString:NSAccessibilityFocusedAttribute]) {
239 NSNumber* ret = [NSNumber numberWithBool: 239 NSNumber* ret = [NSNumber numberWithBool:
240 GetState(browserAccessibility_, WebAccessibility::STATE_FOCUSED)]; 240 GetState(browserAccessibility_, WebAccessibility::STATE_FOCUSED)];
241 return ret; 241 return ret;
242 } 242 }
243 if ([attribute isEqualToString:NSAccessibilityEnabledAttribute]) { 243 if ([attribute isEqualToString:NSAccessibilityEnabledAttribute]) {
244 return [NSNumber numberWithBool: 244 return [NSNumber numberWithBool:
245 !GetState(browserAccessibility_, WebAccessibility::STATE_UNAVAILABLE)]; 245 !GetState(browserAccessibility_, WebAccessibility::STATE_UNAVAILABLE)];
246 } 246 }
247 if ([attribute isEqualToString:@"AXVisited"]) {
248 return [NSNumber numberWithBool:
249 GetState(browserAccessibility_, WebAccessibility::STATE_TRAVERSED)];
250 }
247 251
248 // AXWebArea attributes. 252 // AXWebArea attributes.
249 if ([attribute isEqualToString:@"AXLoaded"]) 253 if ([attribute isEqualToString:@"AXLoaded"])
250 return [NSNumber numberWithBool:YES]; 254 return [NSNumber numberWithBool:YES];
251 if ([attribute isEqualToString:@"AXURL"]) { 255 if ([attribute isEqualToString:@"AXURL"]) {
252 return NSStringForWebAccessibilityAttribute( 256 return NSStringForWebAccessibilityAttribute(
253 browserAccessibility_->attributes(), 257 browserAccessibility_->attributes(),
254 WebAccessibility::ATTR_DOC_URL); 258 WebAccessibility::ATTR_DOC_URL);
255 } 259 }
256 260
257 // TODO(dtseng): provide complete implementations for the following.
258 if ([attribute isEqualToString:@"AXVisited"])
259 return [NSNumber numberWithBool:NO];
260
261 // Text related attributes. 261 // Text related attributes.
262 if ([attribute isEqualToString: 262 if ([attribute isEqualToString:
263 NSAccessibilityNumberOfCharactersAttribute]) { 263 NSAccessibilityNumberOfCharactersAttribute]) {
264 return [NSNumber numberWithInt:browserAccessibility_->value().length()]; 264 return [NSNumber numberWithInt:browserAccessibility_->value().length()];
265 } 265 }
266 if ([attribute isEqualToString: 266 if ([attribute isEqualToString:
267 NSAccessibilityVisibleCharacterRangeAttribute]) { 267 NSAccessibilityVisibleCharacterRangeAttribute]) {
268 return [NSValue valueWithRange: 268 return [NSValue valueWithRange:
269 NSMakeRange(0, browserAccessibility_->value().length())]; 269 NSMakeRange(0, browserAccessibility_->value().length())];
270 } 270 }
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
352 NSAccessibilityHelpAttribute, 352 NSAccessibilityHelpAttribute,
353 NSAccessibilityParentAttribute, 353 NSAccessibilityParentAttribute,
354 NSAccessibilityPositionAttribute, 354 NSAccessibilityPositionAttribute,
355 NSAccessibilityRoleAttribute, 355 NSAccessibilityRoleAttribute,
356 NSAccessibilityRoleDescriptionAttribute, 356 NSAccessibilityRoleDescriptionAttribute,
357 NSAccessibilitySizeAttribute, 357 NSAccessibilitySizeAttribute,
358 NSAccessibilityTitleAttribute, 358 NSAccessibilityTitleAttribute,
359 NSAccessibilityTopLevelUIElementAttribute, 359 NSAccessibilityTopLevelUIElementAttribute,
360 NSAccessibilityValueAttribute, 360 NSAccessibilityValueAttribute,
361 NSAccessibilityWindowAttribute, 361 NSAccessibilityWindowAttribute,
362 @"AXURL",
Chris Guillory 2010/12/09 22:04:02 Does this URL expect the href value for a link?
363 @"AXVisited",
362 nil]]; 364 nil]];
363 365
364 // Specific role attributes. 366 // Specific role attributes.
365 if ([self role] == @"AXWebArea") { 367 if ([self role] == @"AXWebArea") {
366 [ret addObjectsFromArray:[NSArray arrayWithObjects: 368 [ret addObjectsFromArray:[NSArray arrayWithObjects:
367 @"AXLoaded", 369 @"AXLoaded",
368 @"AXURL",
369 @"AXVisited",
370 nil]]; 370 nil]];
371 } 371 }
372 372
373 if ([self role] == NSAccessibilityTextFieldRole) { 373 if ([self role] == NSAccessibilityTextFieldRole) {
374 [ret addObjectsFromArray:[NSArray arrayWithObjects: 374 [ret addObjectsFromArray:[NSArray arrayWithObjects:
375 NSAccessibilityInsertionPointLineNumberAttribute, 375 NSAccessibilityInsertionPointLineNumberAttribute,
376 NSAccessibilityNumberOfCharactersAttribute, 376 NSAccessibilityNumberOfCharactersAttribute,
377 NSAccessibilitySelectedTextAttribute, 377 NSAccessibilitySelectedTextAttribute,
378 NSAccessibilitySelectedTextRangeAttribute, 378 NSAccessibilitySelectedTextRangeAttribute,
379 NSAccessibilityVisibleCharacterRangeAttribute, 379 NSAccessibilityVisibleCharacterRangeAttribute,
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
473 473
474 - (NSUInteger)hash { 474 - (NSUInteger)hash {
475 // Potentially called during dealloc. 475 // Potentially called during dealloc.
476 if (!browserAccessibility_) 476 if (!browserAccessibility_)
477 return [super hash]; 477 return [super hash];
478 return browserAccessibility_->renderer_id(); 478 return browserAccessibility_->renderer_id();
479 } 479 }
480 480
481 @end 481 @end
482 482
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698