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

Side by Side Diff: content/browser/accessibility/browser_accessibility_gtk.cc

Issue 21269002: Make AccessibilityNodeData more compact. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix win test Created 7 years, 4 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 | Annotate | Revision Log
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 "content/browser/accessibility/browser_accessibility_gtk.h" 5 #include "content/browser/accessibility/browser_accessibility_gtk.h"
6 6
7 #include <gtk/gtk.h> 7 #include <gtk/gtk.h>
8 8
9 #include "base/strings/utf_string_conversions.h" 9 #include "base/strings/utf_string_conversions.h"
10 #include "content/browser/accessibility/browser_accessibility_manager_gtk.h" 10 #include "content/browser/accessibility/browser_accessibility_manager_gtk.h"
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
171 if (!IS_BROWSER_ACCESSIBILITY(atk_object)) 171 if (!IS_BROWSER_ACCESSIBILITY(atk_object))
172 return NULL; 172 return NULL;
173 173
174 return ToBrowserAccessibilityGtk(BROWSER_ACCESSIBILITY(atk_object)); 174 return ToBrowserAccessibilityGtk(BROWSER_ACCESSIBILITY(atk_object));
175 } 175 }
176 176
177 static const gchar* browser_accessibility_get_name(AtkObject* atk_object) { 177 static const gchar* browser_accessibility_get_name(AtkObject* atk_object) {
178 BrowserAccessibilityGtk* obj = ToBrowserAccessibilityGtk(atk_object); 178 BrowserAccessibilityGtk* obj = ToBrowserAccessibilityGtk(atk_object);
179 if (!obj) 179 if (!obj)
180 return NULL; 180 return NULL;
181 return obj->atk_acc_name().c_str(); 181
182 return obj->GetStringAttribute(AccessibilityNodeData::ATTR_NAME).c_str();
182 } 183 }
183 184
184 static const gchar* browser_accessibility_get_description( 185 static const gchar* browser_accessibility_get_description(
185 AtkObject* atk_object) { 186 AtkObject* atk_object) {
186 BrowserAccessibilityGtk* obj = ToBrowserAccessibilityGtk(atk_object); 187 BrowserAccessibilityGtk* obj = ToBrowserAccessibilityGtk(atk_object);
187 if (!obj) 188 if (!obj)
188 return NULL; 189 return NULL;
189 return obj->atk_acc_description().c_str(); 190
191 return obj->GetStringAttribute(
192 AccessibilityNodeData::ATTR_DESCRIPTION).c_str();
190 } 193 }
191 194
192 static AtkObject* browser_accessibility_get_parent(AtkObject* atk_object) { 195 static AtkObject* browser_accessibility_get_parent(AtkObject* atk_object) {
193 BrowserAccessibilityGtk* obj = ToBrowserAccessibilityGtk(atk_object); 196 BrowserAccessibilityGtk* obj = ToBrowserAccessibilityGtk(atk_object);
194 if (!obj) 197 if (!obj)
195 return NULL; 198 return NULL;
196 if (obj->parent()) 199 if (obj->parent())
197 return obj->parent()->ToBrowserAccessibilityGtk()->GetAtkObject(); 200 return obj->parent()->ToBrowserAccessibilityGtk()->GetAtkObject();
198 201
199 BrowserAccessibilityManagerGtk* manager = 202 BrowserAccessibilityManagerGtk* manager =
(...skipping 260 matching lines...) Expand 10 before | Expand all | Expand 10 after
460 this->parent()->ToBrowserAccessibilityGtk()->GetAtkObject()); 463 this->parent()->ToBrowserAccessibilityGtk()->GetAtkObject());
461 } 464 }
462 } 465 }
463 } 466 }
464 467
465 bool BrowserAccessibilityGtk::IsNative() const { 468 bool BrowserAccessibilityGtk::IsNative() const {
466 return true; 469 return true;
467 } 470 }
468 471
469 void BrowserAccessibilityGtk::InitRoleAndState() { 472 void BrowserAccessibilityGtk::InitRoleAndState() {
470 atk_acc_name_ = UTF16ToUTF8(name());
471
472 string16 description;
473 GetStringAttribute(AccessibilityNodeData::ATTR_DESCRIPTION, &description);
474 atk_acc_description_ = UTF16ToUTF8(description);
475
476 switch(role_) { 473 switch(role_) {
477 case AccessibilityNodeData::ROLE_DOCUMENT: 474 case AccessibilityNodeData::ROLE_DOCUMENT:
478 case AccessibilityNodeData::ROLE_ROOT_WEB_AREA: 475 case AccessibilityNodeData::ROLE_ROOT_WEB_AREA:
479 case AccessibilityNodeData::ROLE_WEB_AREA: 476 case AccessibilityNodeData::ROLE_WEB_AREA:
480 atk_role_ = ATK_ROLE_DOCUMENT_WEB; 477 atk_role_ = ATK_ROLE_DOCUMENT_WEB;
481 break; 478 break;
482 case AccessibilityNodeData::ROLE_GROUP: 479 case AccessibilityNodeData::ROLE_GROUP:
483 case AccessibilityNodeData::ROLE_DIV: 480 case AccessibilityNodeData::ROLE_DIV:
484 atk_role_ = ATK_ROLE_SECTION; 481 atk_role_ = ATK_ROLE_SECTION;
485 break; 482 break;
(...skipping 24 matching lines...) Expand all
510 case AccessibilityNodeData::ROLE_WEBCORE_LINK: 507 case AccessibilityNodeData::ROLE_WEBCORE_LINK:
511 atk_role_ = ATK_ROLE_LINK; 508 atk_role_ = ATK_ROLE_LINK;
512 break; 509 break;
513 default: 510 default:
514 atk_role_ = ATK_ROLE_UNKNOWN; 511 atk_role_ = ATK_ROLE_UNKNOWN;
515 break; 512 break;
516 } 513 }
517 } 514 }
518 515
519 } // namespace content 516 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698