| OLD | NEW |
| 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 #include <stddef.h> | 6 #include <stddef.h> |
| 7 #include <stdint.h> | 7 #include <stdint.h> |
| 8 | 8 |
| 9 #import "content/browser/accessibility/browser_accessibility_cocoa.h" | 9 #import "content/browser/accessibility/browser_accessibility_cocoa.h" |
| 10 | 10 |
| 11 #include <map> | 11 #include <map> |
| 12 | 12 |
| 13 #include "base/mac/foundation_util.h" | 13 #include "base/mac/foundation_util.h" |
| 14 #include "base/mac/scoped_cftyperef.h" | 14 #include "base/mac/scoped_cftyperef.h" |
| 15 #include "base/strings/string16.h" | 15 #include "base/strings/string16.h" |
| 16 #include "base/strings/sys_string_conversions.h" | 16 #include "base/strings/sys_string_conversions.h" |
| 17 #include "base/strings/utf_string_conversions.h" | 17 #include "base/strings/utf_string_conversions.h" |
| 18 #include "content/app/strings/grit/content_strings.h" | 18 #include "content/app/strings/grit/content_strings.h" |
| 19 #include "content/browser/accessibility/browser_accessibility_mac.h" | 19 #include "content/browser/accessibility/browser_accessibility_mac.h" |
| 20 #include "content/browser/accessibility/browser_accessibility_manager.h" | 20 #include "content/browser/accessibility/browser_accessibility_manager.h" |
| 21 #include "content/browser/accessibility/browser_accessibility_manager_mac.h" | 21 #include "content/browser/accessibility/browser_accessibility_manager_mac.h" |
| 22 #include "content/browser/accessibility/one_shot_accessibility_tree_search.h" | 22 #include "content/browser/accessibility/one_shot_accessibility_tree_search.h" |
| 23 #include "content/public/common/content_client.h" | 23 #include "content/public/common/content_client.h" |
| 24 #include "third_party/skia/include/core/SkColor.h" |
| 24 #import "ui/accessibility/platform/ax_platform_node_mac.h" | 25 #import "ui/accessibility/platform/ax_platform_node_mac.h" |
| 25 | 26 |
| 26 using content::AXTreeIDRegistry; | 27 using content::AXTreeIDRegistry; |
| 27 using content::AccessibilityMatchPredicate; | 28 using content::AccessibilityMatchPredicate; |
| 28 using content::BrowserAccessibility; | 29 using content::BrowserAccessibility; |
| 29 using content::BrowserAccessibilityDelegate; | 30 using content::BrowserAccessibilityDelegate; |
| 30 using content::BrowserAccessibilityManager; | 31 using content::BrowserAccessibilityManager; |
| 31 using content::BrowserAccessibilityManagerMac; | 32 using content::BrowserAccessibilityManagerMac; |
| 32 using content::ContentClient; | 33 using content::ContentClient; |
| 33 using content::OneShotAccessibilityTreeSearch; | 34 using content::OneShotAccessibilityTreeSearch; |
| (...skipping 1678 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1712 } else if ([role isEqualToString:NSAccessibilityProgressIndicatorRole] || | 1713 } else if ([role isEqualToString:NSAccessibilityProgressIndicatorRole] || |
| 1713 [role isEqualToString:NSAccessibilitySliderRole] || | 1714 [role isEqualToString:NSAccessibilitySliderRole] || |
| 1714 [role isEqualToString:NSAccessibilityIncrementorRole] || | 1715 [role isEqualToString:NSAccessibilityIncrementorRole] || |
| 1715 [role isEqualToString:NSAccessibilityScrollBarRole]) { | 1716 [role isEqualToString:NSAccessibilityScrollBarRole]) { |
| 1716 float floatValue; | 1717 float floatValue; |
| 1717 if (browserAccessibility_->GetFloatAttribute( | 1718 if (browserAccessibility_->GetFloatAttribute( |
| 1718 ui::AX_ATTR_VALUE_FOR_RANGE, &floatValue)) { | 1719 ui::AX_ATTR_VALUE_FOR_RANGE, &floatValue)) { |
| 1719 return [NSNumber numberWithFloat:floatValue]; | 1720 return [NSNumber numberWithFloat:floatValue]; |
| 1720 } | 1721 } |
| 1721 } else if ([role isEqualToString:NSAccessibilityColorWellRole]) { | 1722 } else if ([role isEqualToString:NSAccessibilityColorWellRole]) { |
| 1722 int color = browserAccessibility_->GetIntAttribute( | 1723 unsigned int color = static_cast<unsigned int>( |
| 1723 ui::AX_ATTR_COLOR_VALUE); | 1724 browserAccessibility_->GetIntAttribute(ui::AX_ATTR_COLOR_VALUE)); |
| 1724 int red = (color >> 16) & 0xFF; | 1725 unsigned int red = SkColorGetR(color); |
| 1725 int green = (color >> 8) & 0xFF; | 1726 unsigned int green = SkColorGetG(color); |
| 1726 int blue = color & 0xFF; | 1727 unsigned int blue = SkColorGetB(color); |
| 1727 // This string matches the one returned by a native Mac color well. | 1728 // This string matches the one returned by a native Mac color well. |
| 1728 return [NSString stringWithFormat:@"rgb %7.5f %7.5f %7.5f 1", | 1729 return [NSString stringWithFormat:@"rgb %7.5f %7.5f %7.5f 1", |
| 1729 red / 255., green / 255., blue / 255.]; | 1730 red / 255., green / 255., blue / 255.]; |
| 1730 } | 1731 } |
| 1731 | 1732 |
| 1732 return base::SysUTF16ToNSString(browserAccessibility_->GetValue()); | 1733 return base::SysUTF16ToNSString(browserAccessibility_->GetValue()); |
| 1733 } | 1734 } |
| 1734 | 1735 |
| 1735 - (NSString*)valueDescription { | 1736 - (NSString*)valueDescription { |
| 1736 if (![self instanceActive]) | 1737 if (![self instanceActive]) |
| (...skipping 799 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2536 if (![self instanceActive]) | 2537 if (![self instanceActive]) |
| 2537 return [super hash]; | 2538 return [super hash]; |
| 2538 return browserAccessibility_->GetId(); | 2539 return browserAccessibility_->GetId(); |
| 2539 } | 2540 } |
| 2540 | 2541 |
| 2541 - (BOOL)accessibilityShouldUseUniqueId { | 2542 - (BOOL)accessibilityShouldUseUniqueId { |
| 2542 return YES; | 2543 return YES; |
| 2543 } | 2544 } |
| 2544 | 2545 |
| 2545 @end | 2546 @end |
| OLD | NEW |