Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 #import "ui/accessibility/platform/ax_platform_node_mac.h" | 5 #import "ui/accessibility/platform/ax_platform_node_mac.h" |
| 6 | 6 |
| 7 #import <Cocoa/Cocoa.h> | 7 #import <Cocoa/Cocoa.h> |
| 8 #include <stddef.h> | 8 #include <stddef.h> |
| 9 | 9 |
| 10 #include "base/macros.h" | 10 #include "base/macros.h" |
| (...skipping 347 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 358 if ([attributeName isEqualToString:NSAccessibilitySelectedAttribute] || | 358 if ([attributeName isEqualToString:NSAccessibilitySelectedAttribute] || |
| 359 [attributeName | 359 [attributeName |
| 360 isEqualToString:NSAccessibilitySelectedChildrenAttribute] || | 360 isEqualToString:NSAccessibilitySelectedChildrenAttribute] || |
| 361 [attributeName | 361 [attributeName |
| 362 isEqualToString:NSAccessibilitySelectedTextRangeAttribute] || | 362 isEqualToString:NSAccessibilitySelectedTextRangeAttribute] || |
| 363 [attributeName | 363 [attributeName |
| 364 isEqualToString:NSAccessibilityVisibleCharacterRangeAttribute]) { | 364 isEqualToString:NSAccessibilityVisibleCharacterRangeAttribute]) { |
| 365 return NO; | 365 return NO; |
| 366 } | 366 } |
| 367 | 367 |
| 368 if ([attributeName isEqualToString:NSAccessibilityValueAttribute]) | 368 if ([attributeName isEqualToString:NSAccessibilityValueAttribute] || |
| 369 [attributeName isEqualToString:NSAccessibilitySelectedTextAttribute]) | |
| 369 return node_->GetDelegate()->CanSetStringValue(); | 370 return node_->GetDelegate()->CanSetStringValue(); |
| 370 // TODO(patricialor): Implement and merge with conditional for value above. | |
| 371 if ([attributeName isEqualToString:NSAccessibilitySelectedTextAttribute]) | |
| 372 return NO; | |
| 373 | 371 |
| 374 if ([attributeName isEqualToString:NSAccessibilityFocusedAttribute]) { | 372 if ([attributeName isEqualToString:NSAccessibilityFocusedAttribute]) { |
| 375 if (ui::AXViewState::IsFlagSet(node_->GetData().state, | 373 if (ui::AXViewState::IsFlagSet(node_->GetData().state, |
| 376 ui::AX_STATE_FOCUSABLE)) | 374 ui::AX_STATE_FOCUSABLE)) |
| 377 return NO; | 375 return NO; |
| 378 } | 376 } |
| 379 | 377 |
| 380 // TODO(patricialor): Add callbacks for updating the above attributes except | 378 // TODO(patricialor): Add callbacks for updating the above attributes except |
| 381 // NSAccessibilityValueAttribute and return YES. | 379 // NSAccessibilityValueAttribute and return YES. |
| 382 return NO; | 380 return NO; |
| 383 } | 381 } |
| 384 | 382 |
| 385 - (void)accessibilitySetValue:(id)value forAttribute:(NSString*)attribute { | 383 - (void)accessibilitySetValue:(id)value forAttribute:(NSString*)attribute { |
| 386 if ([attribute isEqualToString:NSAccessibilityValueAttribute] && | 384 if ([attribute isEqualToString:NSAccessibilityValueAttribute] && |
| 387 [value isKindOfClass:[NSString class]]) | 385 [value isKindOfClass:[NSString class]]) |
| 388 node_->GetDelegate()->SetStringValue(base::SysNSStringToUTF16(value)); | 386 node_->GetDelegate()->SetStringValue(base::SysNSStringToUTF16(value)); |
| 387 if ([attribute isEqualToString:NSAccessibilitySelectedTextAttribute] && | |
|
tapted
2016/09/27 07:16:30
else if (or alter to support the `bool` replace ar
Patti Lor
2016/10/20 04:19:34
Done.
| |
| 388 [value isKindOfClass:[NSString class]]) | |
| 389 node_->GetDelegate()->ReplaceSelectedText(base::SysNSStringToUTF16(value)); | |
| 389 | 390 |
| 390 // TODO(patricialor): Plumb through all the other writable attributes as | 391 // TODO(patricialor): Plumb through all the other writable attributes as |
| 391 // specified in accessibilityIsAttributeSettable. | 392 // specified in accessibilityIsAttributeSettable. |
| 392 } | 393 } |
| 393 | 394 |
| 394 - (id)accessibilityAttributeValue:(NSString*)attribute { | 395 - (id)accessibilityAttributeValue:(NSString*)attribute { |
| 395 SEL selector = NSSelectorFromString(attribute); | 396 SEL selector = NSSelectorFromString(attribute); |
| 396 if ([self respondsToSelector:selector]) | 397 if ([self respondsToSelector:selector]) |
| 397 return [self performSelector:selector]; | 398 return [self performSelector:selector]; |
| 398 return nil; | 399 return nil; |
| (...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 570 } | 571 } |
| 571 NotifyMacEvent(target, event_type); | 572 NotifyMacEvent(target, event_type); |
| 572 } | 573 } |
| 573 | 574 |
| 574 int AXPlatformNodeMac::GetIndexInParent() { | 575 int AXPlatformNodeMac::GetIndexInParent() { |
| 575 // TODO(dmazzoni): implement this. http://crbug.com/396137 | 576 // TODO(dmazzoni): implement this. http://crbug.com/396137 |
| 576 return -1; | 577 return -1; |
| 577 } | 578 } |
| 578 | 579 |
| 579 } // namespace ui | 580 } // namespace ui |
| OLD | NEW |