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

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

Issue 2799443002: Implemented ARIA colindex, rowindex, colcount and rowcount for Chromevox. (Closed)
Patch Set: Fixed Blink test.# with '#' will be ignored, and an empty message aborts the commit. Created 3 years, 8 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 #import "content/browser/accessibility/browser_accessibility_cocoa.h" 5 #import "content/browser/accessibility/browser_accessibility_cocoa.h"
6 6
7 #include <execinfo.h> 7 #include <execinfo.h>
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 #include <string.h> 10 #include <string.h>
(...skipping 643 matching lines...) Expand 10 before | Expand all | Expand 10 after
654 if (![self instanceActive]) 654 if (![self instanceActive])
655 return nil; 655 return nil;
656 return [NSNumber numberWithBool: 656 return [NSNumber numberWithBool:
657 GetState(browserAccessibility_, ui::AX_STATE_BUSY)]; 657 GetState(browserAccessibility_, ui::AX_STATE_BUSY)];
658 } 658 }
659 659
660 - (NSNumber*)ariaColumnCount { 660 - (NSNumber*)ariaColumnCount {
661 if (!browserAccessibility_->IsTableLikeRole()) 661 if (!browserAccessibility_->IsTableLikeRole())
662 return nil; 662 return nil;
663 int count = -1; 663 int count = -1;
664 if (!browserAccessibility_->GetIntAttribute( 664 if (!browserAccessibility_->GetIntAttribute(ui::AX_ATTR_ARIA_COLUMN_COUNT,
665 ui::AX_ATTR_ARIA_COL_COUNT, &count)) 665 &count)) {
666 return nil; 666 return nil;
667 }
667 return [NSNumber numberWithInt:count]; 668 return [NSNumber numberWithInt:count];
668 } 669 }
669 670
670 - (NSNumber*)ariaColumnIndex { 671 - (NSNumber*)ariaColumnIndex {
671 if (!browserAccessibility_->IsCellOrTableHeaderRole()) 672 if (!browserAccessibility_->IsCellOrTableHeaderRole())
672 return nil; 673 return nil;
673 int index = -1; 674 int index = -1;
674 if (!browserAccessibility_->GetIntAttribute( 675 if (!browserAccessibility_->GetIntAttribute(
675 ui::AX_ATTR_ARIA_COL_INDEX, &index)) 676 ui::AX_ATTR_ARIA_CELL_COLUMN_INDEX, &index)) {
676 return nil; 677 return nil;
678 }
677 return [NSNumber numberWithInt:index]; 679 return [NSNumber numberWithInt:index];
678 } 680 }
679 681
680 - (NSString*)ariaLive { 682 - (NSString*)ariaLive {
681 if (![self instanceActive]) 683 if (![self instanceActive])
682 return nil; 684 return nil;
683 return NSStringForStringAttribute( 685 return NSStringForStringAttribute(
684 browserAccessibility_, ui::AX_ATTR_LIVE_STATUS); 686 browserAccessibility_, ui::AX_ATTR_LIVE_STATUS);
685 } 687 }
686 688
687 - (NSNumber*)ariaPosInSet { 689 - (NSNumber*)ariaPosInSet {
688 if (![self instanceActive]) 690 if (![self instanceActive])
689 return nil; 691 return nil;
690 return [NSNumber numberWithInt: 692 return [NSNumber numberWithInt:
691 browserAccessibility_->GetIntAttribute(ui::AX_ATTR_POS_IN_SET)]; 693 browserAccessibility_->GetIntAttribute(ui::AX_ATTR_POS_IN_SET)];
692 } 694 }
693 695
694 - (NSString*)ariaRelevant { 696 - (NSString*)ariaRelevant {
695 if (![self instanceActive]) 697 if (![self instanceActive])
696 return nil; 698 return nil;
697 return NSStringForStringAttribute(browserAccessibility_, 699 return NSStringForStringAttribute(browserAccessibility_,
698 ui::AX_ATTR_LIVE_RELEVANT); 700 ui::AX_ATTR_LIVE_RELEVANT);
699 } 701 }
700 702
701 - (NSNumber*)ariaRowCount { 703 - (NSNumber*)ariaRowCount {
702 if (!browserAccessibility_->IsTableLikeRole()) 704 if (!browserAccessibility_->IsTableLikeRole())
703 return nil; 705 return nil;
704 int count = -1; 706 int count = -1;
705 if (!browserAccessibility_->GetIntAttribute( 707 if (!browserAccessibility_->GetIntAttribute(ui::AX_ATTR_ARIA_ROW_COUNT,
706 ui::AX_ATTR_ARIA_ROW_COUNT, &count)) 708 &count)) {
707 return nil; 709 return nil;
710 }
708 return [NSNumber numberWithInt:count]; 711 return [NSNumber numberWithInt:count];
709 } 712 }
710 713
711 - (NSNumber*)ariaRowIndex { 714 - (NSNumber*)ariaRowIndex {
712 if (!browserAccessibility_->IsCellOrTableHeaderRole()) 715 if (!browserAccessibility_->IsCellOrTableHeaderRole())
713 return nil; 716 return nil;
714 int index = -1; 717 int index = -1;
715 if (!browserAccessibility_->GetIntAttribute( 718 if (!browserAccessibility_->GetIntAttribute(ui::AX_ATTR_ARIA_CELL_ROW_INDEX,
716 ui::AX_ATTR_ARIA_ROW_INDEX, &index)) 719 &index)) {
717 return nil; 720 return nil;
721 }
718 return [NSNumber numberWithInt:index]; 722 return [NSNumber numberWithInt:index];
719 } 723 }
720 724
721 - (NSNumber*)ariaSetSize { 725 - (NSNumber*)ariaSetSize {
722 if (![self instanceActive]) 726 if (![self instanceActive])
723 return nil; 727 return nil;
724 return [NSNumber numberWithInt: 728 return [NSNumber numberWithInt:
725 browserAccessibility_->GetIntAttribute(ui::AX_ATTR_SET_SIZE)]; 729 browserAccessibility_->GetIntAttribute(ui::AX_ATTR_SET_SIZE)];
726 } 730 }
727 731
(...skipping 2168 matching lines...) Expand 10 before | Expand all | Expand 10 after
2896 } 2900 }
2897 2901
2898 - (BOOL)accessibilityNotifiesWhenDestroyed { 2902 - (BOOL)accessibilityNotifiesWhenDestroyed {
2899 // Indicate that BrowserAccessibilityCocoa will post a notification when it's 2903 // Indicate that BrowserAccessibilityCocoa will post a notification when it's
2900 // destroyed (see -detach). This allows VoiceOver to do some internal things 2904 // destroyed (see -detach). This allows VoiceOver to do some internal things
2901 // more efficiently. 2905 // more efficiently.
2902 return YES; 2906 return YES;
2903 } 2907 }
2904 2908
2905 @end 2909 @end
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698