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

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

Issue 1162263008: Exposes datetime attribute. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: re-upload due to browser_accessibility_cocoa.mm Created 5 years, 6 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 605 matching lines...) Expand 10 before | Expand all | Expand 10 after
616 return nil; 616 return nil;
617 } 617 }
618 } 618 }
619 619
620 - (id)disclosedRows { 620 - (id)disclosedRows {
621 // The rows that are considered inside this row. 621 // The rows that are considered inside this row.
622 return nil; 622 return nil;
623 } 623 }
624 624
625 - (NSString*)dropeffect { 625 - (NSString*)dropeffect {
626 return NSStringForStringAttribute( 626 std::string dropEffect;
627 browserAccessibility_, ui::AX_ATTR_DROPEFFECT); 627 if (browserAccessibility_->GetHtmlAttribute("aria-dropeffect", &dropEffect))
628 return base::SysUTF8ToNSString(dropEffect);
629
630 return nil;
628 } 631 }
629 632
630 - (NSNumber*)enabled { 633 - (NSNumber*)enabled {
631 return [NSNumber numberWithBool: 634 return [NSNumber numberWithBool:
632 GetState(browserAccessibility_, ui::AX_STATE_ENABLED)]; 635 GetState(browserAccessibility_, ui::AX_STATE_ENABLED)];
633 } 636 }
634 637
635 - (NSNumber*)expanded { 638 - (NSNumber*)expanded {
636 return [NSNumber numberWithBool: 639 return [NSNumber numberWithBool:
637 GetState(browserAccessibility_, ui::AX_STATE_EXPANDED)]; 640 GetState(browserAccessibility_, ui::AX_STATE_EXPANDED)];
638 } 641 }
639 642
640 - (NSNumber*)focused { 643 - (NSNumber*)focused {
641 BrowserAccessibilityManager* manager = browserAccessibility_->manager(); 644 BrowserAccessibilityManager* manager = browserAccessibility_->manager();
642 NSNumber* ret = [NSNumber numberWithBool: 645 NSNumber* ret = [NSNumber numberWithBool:
643 manager->GetFocus(NULL) == browserAccessibility_]; 646 manager->GetFocus(NULL) == browserAccessibility_];
644 return ret; 647 return ret;
645 } 648 }
646 649
647 - (NSNumber*)grabbed { 650 - (NSNumber*)grabbed {
648 bool boolValue = browserAccessibility_->GetBoolAttribute(ui::AX_ATTR_GRABBED); 651 std::string grabbed;
649 return [NSNumber numberWithBool:boolValue]; 652 if (browserAccessibility_->GetHtmlAttribute("aria-grabbed", &grabbed) &&
653 grabbed == "true")
654 return [NSNumber numberWithBool:YES];
655
656 return [NSNumber numberWithBool:NO];
650 } 657 }
651 658
652 - (id)header { 659 - (id)header {
653 int headerElementId = -1; 660 int headerElementId = -1;
654 if ([self internalRole] == ui::AX_ROLE_TABLE || 661 if ([self internalRole] == ui::AX_ROLE_TABLE ||
655 [self internalRole] == ui::AX_ROLE_GRID) { 662 [self internalRole] == ui::AX_ROLE_GRID) {
656 browserAccessibility_->GetIntAttribute( 663 browserAccessibility_->GetIntAttribute(
657 ui::AX_ATTR_TABLE_HEADER_ID, &headerElementId); 664 ui::AX_ATTR_TABLE_HEADER_ID, &headerElementId);
658 } else if ([self internalRole] == ui::AX_ROLE_COLUMN) { 665 } else if ([self internalRole] == ui::AX_ROLE_COLUMN) {
659 browserAccessibility_->GetIntAttribute( 666 browserAccessibility_->GetIntAttribute(
(...skipping 1117 matching lines...) Expand 10 before | Expand all | Expand 10 after
1777 @"AXARIAAtomic", 1784 @"AXARIAAtomic",
1778 nil]]; 1785 nil]];
1779 } 1786 }
1780 if (browserAccessibility_->HasBoolAttribute( 1787 if (browserAccessibility_->HasBoolAttribute(
1781 ui::AX_ATTR_LIVE_BUSY)) { 1788 ui::AX_ATTR_LIVE_BUSY)) {
1782 [ret addObjectsFromArray:[NSArray arrayWithObjects: 1789 [ret addObjectsFromArray:[NSArray arrayWithObjects:
1783 @"AXARIABusy", 1790 @"AXARIABusy",
1784 nil]]; 1791 nil]];
1785 } 1792 }
1786 1793
1787 if (browserAccessibility_->HasStringAttribute( 1794 std::string dropEffect;
1788 ui::AX_ATTR_DROPEFFECT)) { 1795 if (browserAccessibility_->GetHtmlAttribute("aria-dropeffect", &dropEffect)) {
1789 [ret addObjectsFromArray:[NSArray arrayWithObjects: 1796 [ret addObjectsFromArray:[NSArray arrayWithObjects:
1790 @"AXDropEffects", 1797 @"AXDropEffects",
1791 nil]]; 1798 nil]];
1792 } 1799 }
1793 1800
1794 // Add aria-grabbed attribute only if it has true. 1801 std::string grabbed;
1795 if (browserAccessibility_->HasBoolAttribute(ui::AX_ATTR_GRABBED)) { 1802 if (browserAccessibility_->GetHtmlAttribute("aria-grabbed", &grabbed)) {
1796 [ret addObjectsFromArray:[NSArray arrayWithObjects: 1803 [ret addObjectsFromArray:[NSArray arrayWithObjects:
1797 @"AXGrabbed", 1804 @"AXGrabbed",
1798 nil]]; 1805 nil]];
1799 } 1806 }
1800 1807
1801 // Add expanded attribute only if it has expanded or collapsed state. 1808 // Add expanded attribute only if it has expanded or collapsed state.
1802 if (GetState(browserAccessibility_, ui::AX_STATE_EXPANDED) || 1809 if (GetState(browserAccessibility_, ui::AX_STATE_EXPANDED) ||
1803 GetState(browserAccessibility_, ui::AX_STATE_COLLAPSED)) { 1810 GetState(browserAccessibility_, ui::AX_STATE_COLLAPSED)) {
1804 [ret addObjectsFromArray:[NSArray arrayWithObjects: 1811 [ret addObjectsFromArray:[NSArray arrayWithObjects:
1805 NSAccessibilityExpandedAttribute, 1812 NSAccessibilityExpandedAttribute,
(...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after
1972 if (!browserAccessibility_) 1979 if (!browserAccessibility_)
1973 return [super hash]; 1980 return [super hash];
1974 return browserAccessibility_->GetId(); 1981 return browserAccessibility_->GetId();
1975 } 1982 }
1976 1983
1977 - (BOOL)accessibilityShouldUseUniqueId { 1984 - (BOOL)accessibilityShouldUseUniqueId {
1978 return YES; 1985 return YES;
1979 } 1986 }
1980 1987
1981 @end 1988 @end
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698