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

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

Issue 116293005: Refactor content/ to use ui::AXNodeData instead of blink. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Update content/DEPS instead of subdirs Created 6 years, 11 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 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
98 return ToBrowserAccessibilityGtk(BROWSER_ACCESSIBILITY(atk_object)); 98 return ToBrowserAccessibilityGtk(BROWSER_ACCESSIBILITY(atk_object));
99 } 99 }
100 100
101 static void browser_accessibility_get_current_value( 101 static void browser_accessibility_get_current_value(
102 AtkValue* atk_object, GValue* value) { 102 AtkValue* atk_object, GValue* value) {
103 BrowserAccessibilityGtk* obj = ToBrowserAccessibilityGtk(atk_object); 103 BrowserAccessibilityGtk* obj = ToBrowserAccessibilityGtk(atk_object);
104 if (!obj) 104 if (!obj)
105 return; 105 return;
106 106
107 float float_val; 107 float float_val;
108 if (obj->GetFloatAttribute(AccessibilityNodeData::ATTR_VALUE_FOR_RANGE, 108 if (obj->GetFloatAttribute(ui::AX_ATTR_VALUE_FOR_RANGE,
109 &float_val)) { 109 &float_val)) {
110 memset(value, 0, sizeof(*value)); 110 memset(value, 0, sizeof(*value));
111 g_value_init(value, G_TYPE_FLOAT); 111 g_value_init(value, G_TYPE_FLOAT);
112 g_value_set_float(value, float_val); 112 g_value_set_float(value, float_val);
113 } 113 }
114 } 114 }
115 115
116 static void browser_accessibility_get_minimum_value( 116 static void browser_accessibility_get_minimum_value(
117 AtkValue* atk_object, GValue* value) { 117 AtkValue* atk_object, GValue* value) {
118 BrowserAccessibilityGtk* obj = ToBrowserAccessibilityGtk(atk_object); 118 BrowserAccessibilityGtk* obj = ToBrowserAccessibilityGtk(atk_object);
119 if (!obj) 119 if (!obj)
120 return; 120 return;
121 121
122 float float_val; 122 float float_val;
123 if (obj->GetFloatAttribute(AccessibilityNodeData::ATTR_MIN_VALUE_FOR_RANGE, 123 if (obj->GetFloatAttribute(ui::AX_ATTR_MIN_VALUE_FOR_RANGE,
124 &float_val)) { 124 &float_val)) {
125 memset(value, 0, sizeof(*value)); 125 memset(value, 0, sizeof(*value));
126 g_value_init(value, G_TYPE_FLOAT); 126 g_value_init(value, G_TYPE_FLOAT);
127 g_value_set_float(value, float_val); 127 g_value_set_float(value, float_val);
128 } 128 }
129 } 129 }
130 130
131 static void browser_accessibility_get_maximum_value( 131 static void browser_accessibility_get_maximum_value(
132 AtkValue* atk_object, GValue* value) { 132 AtkValue* atk_object, GValue* value) {
133 BrowserAccessibilityGtk* obj = ToBrowserAccessibilityGtk(atk_object); 133 BrowserAccessibilityGtk* obj = ToBrowserAccessibilityGtk(atk_object);
134 if (!obj) 134 if (!obj)
135 return; 135 return;
136 136
137 float float_val; 137 float float_val;
138 if (obj->GetFloatAttribute(AccessibilityNodeData::ATTR_MAX_VALUE_FOR_RANGE, 138 if (obj->GetFloatAttribute(ui::AX_ATTR_MAX_VALUE_FOR_RANGE,
139 &float_val)) { 139 &float_val)) {
140 memset(value, 0, sizeof(*value)); 140 memset(value, 0, sizeof(*value));
141 g_value_init(value, G_TYPE_FLOAT); 141 g_value_init(value, G_TYPE_FLOAT);
142 g_value_set_float(value, float_val); 142 g_value_set_float(value, float_val);
143 } 143 }
144 } 144 }
145 145
146 static void browser_accessibility_get_minimum_increment( 146 static void browser_accessibility_get_minimum_increment(
147 AtkValue* atk_object, GValue* value) { 147 AtkValue* atk_object, GValue* value) {
148 // TODO(dmazzoni): get the correct value from an <input type=range>. 148 // TODO(dmazzoni): get the correct value from an <input type=range>.
(...skipping 23 matching lines...) Expand all
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 181
182 return obj->GetStringAttribute(AccessibilityNodeData::ATTR_NAME).c_str(); 182 return obj->GetStringAttribute(ui::AX_ATTR_NAME).c_str();
183 } 183 }
184 184
185 static const gchar* browser_accessibility_get_description( 185 static const gchar* browser_accessibility_get_description(
186 AtkObject* atk_object) { 186 AtkObject* atk_object) {
187 BrowserAccessibilityGtk* obj = ToBrowserAccessibilityGtk(atk_object); 187 BrowserAccessibilityGtk* obj = ToBrowserAccessibilityGtk(atk_object);
188 if (!obj) 188 if (!obj)
189 return NULL; 189 return NULL;
190 190
191 return obj->GetStringAttribute( 191 return obj->GetStringAttribute(
192 AccessibilityNodeData::ATTR_DESCRIPTION).c_str(); 192 ui::AX_ATTR_DESCRIPTION).c_str();
193 } 193 }
194 194
195 static AtkObject* browser_accessibility_get_parent(AtkObject* atk_object) { 195 static AtkObject* browser_accessibility_get_parent(AtkObject* atk_object) {
196 BrowserAccessibilityGtk* obj = ToBrowserAccessibilityGtk(atk_object); 196 BrowserAccessibilityGtk* obj = ToBrowserAccessibilityGtk(atk_object);
197 if (!obj) 197 if (!obj)
198 return NULL; 198 return NULL;
199 if (obj->parent()) 199 if (obj->parent())
200 return obj->parent()->ToBrowserAccessibilityGtk()->GetAtkObject(); 200 return obj->parent()->ToBrowserAccessibilityGtk()->GetAtkObject();
201 201
202 BrowserAccessibilityManagerGtk* manager = 202 BrowserAccessibilityManagerGtk* manager =
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
248 248
249 static AtkStateSet* browser_accessibility_ref_state_set(AtkObject* atk_object) { 249 static AtkStateSet* browser_accessibility_ref_state_set(AtkObject* atk_object) {
250 BrowserAccessibilityGtk* obj = ToBrowserAccessibilityGtk(atk_object); 250 BrowserAccessibilityGtk* obj = ToBrowserAccessibilityGtk(atk_object);
251 if (!obj) 251 if (!obj)
252 return NULL; 252 return NULL;
253 AtkStateSet* state_set = 253 AtkStateSet* state_set =
254 ATK_OBJECT_CLASS(browser_accessibility_parent_class)-> 254 ATK_OBJECT_CLASS(browser_accessibility_parent_class)->
255 ref_state_set(atk_object); 255 ref_state_set(atk_object);
256 int32 state = obj->state(); 256 int32 state = obj->state();
257 257
258 if (state & (1 << blink::WebAXStateFocusable)) 258 if (state & (1 << ui::AX_STATE_FOCUSABLE))
259 atk_state_set_add_state(state_set, ATK_STATE_FOCUSABLE); 259 atk_state_set_add_state(state_set, ATK_STATE_FOCUSABLE);
260 if (obj->manager()->GetFocus(NULL) == obj) 260 if (obj->manager()->GetFocus(NULL) == obj)
261 atk_state_set_add_state(state_set, ATK_STATE_FOCUSED); 261 atk_state_set_add_state(state_set, ATK_STATE_FOCUSED);
262 if (state & (1 << blink::WebAXStateEnabled)) 262 if (state & (1 << blink::WebAXStateEnabled))
263 atk_state_set_add_state(state_set, ATK_STATE_ENABLED); 263 atk_state_set_add_state(state_set, ATK_STATE_ENABLED);
264 264
265 return state_set; 265 return state_set;
266 } 266 }
267 267
268 static AtkRelationSet* browser_accessibility_ref_relation_set( 268 static AtkRelationSet* browser_accessibility_ref_relation_set(
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
357 ATK_VALUE_INTERFACE, 357 ATK_VALUE_INTERFACE,
358 }; 358 };
359 359
360 static int GetInterfaceMaskFromObject(BrowserAccessibilityGtk* obj) { 360 static int GetInterfaceMaskFromObject(BrowserAccessibilityGtk* obj) {
361 int interface_mask = 0; 361 int interface_mask = 0;
362 362
363 // Component interface is always supported. 363 // Component interface is always supported.
364 interface_mask |= 1 << ATK_COMPONENT_INTERFACE; 364 interface_mask |= 1 << ATK_COMPONENT_INTERFACE;
365 365
366 int role = obj->role(); 366 int role = obj->role();
367 if (role == blink::WebAXRoleProgressIndicator || 367 if (role == ui::AX_ROLE_PROGRESS_INDICATOR ||
368 role == blink::WebAXRoleScrollBar || 368 role == ui::AX_ROLE_SCROLL_BAR ||
369 role == blink::WebAXRoleSlider) { 369 role == ui::AX_ROLE_SLIDER) {
370 interface_mask |= 1 << ATK_VALUE_INTERFACE; 370 interface_mask |= 1 << ATK_VALUE_INTERFACE;
371 } 371 }
372 372
373 return interface_mask; 373 return interface_mask;
374 } 374 }
375 375
376 static GType GetAccessibilityTypeFromObject(BrowserAccessibilityGtk* obj) { 376 static GType GetAccessibilityTypeFromObject(BrowserAccessibilityGtk* obj) {
377 static const GTypeInfo type_info = { 377 static const GTypeInfo type_info = {
378 sizeof(BrowserAccessibilityAtkClass), 378 sizeof(BrowserAccessibilityAtkClass),
379 (GBaseInitFunc) 0, 379 (GBaseInitFunc) 0,
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
469 } 469 }
470 } 470 }
471 } 471 }
472 472
473 bool BrowserAccessibilityGtk::IsNative() const { 473 bool BrowserAccessibilityGtk::IsNative() const {
474 return true; 474 return true;
475 } 475 }
476 476
477 void BrowserAccessibilityGtk::InitRoleAndState() { 477 void BrowserAccessibilityGtk::InitRoleAndState() {
478 switch(role()) { 478 switch(role()) {
479 case blink::WebAXRoleDocument: 479 case ui::AX_ROLE_DOCUMENT:
480 case blink::WebAXRoleRootWebArea: 480 case ui::AX_ROLE_ROOT_WEB_AREA:
481 case blink::WebAXRoleWebArea: 481 case ui::AX_ROLE_WEB_AREA:
482 atk_role_ = ATK_ROLE_DOCUMENT_WEB; 482 atk_role_ = ATK_ROLE_DOCUMENT_WEB;
483 break; 483 break;
484 case blink::WebAXRoleGroup: 484 case ui::AX_ROLE_GROUP:
485 case blink::WebAXRoleDiv: 485 case ui::AX_ROLE_DIV:
486 atk_role_ = ATK_ROLE_SECTION; 486 atk_role_ = ATK_ROLE_SECTION;
487 break; 487 break;
488 case blink::WebAXRoleButton: 488 case ui::AX_ROLE_BUTTON:
489 atk_role_ = ATK_ROLE_PUSH_BUTTON; 489 atk_role_ = ATK_ROLE_PUSH_BUTTON;
490 break; 490 break;
491 case blink::WebAXRoleCheckBox: 491 case ui::AX_ROLE_CHECK_BOX:
492 atk_role_ = ATK_ROLE_CHECK_BOX; 492 atk_role_ = ATK_ROLE_CHECK_BOX;
493 break; 493 break;
494 case blink::WebAXRoleComboBox: 494 case ui::AX_ROLE_COMBO_BOX:
495 atk_role_ = ATK_ROLE_COMBO_BOX; 495 atk_role_ = ATK_ROLE_COMBO_BOX;
496 break; 496 break;
497 case blink::WebAXRoleLink: 497 case ui::AX_ROLE_LINK:
498 atk_role_ = ATK_ROLE_LINK; 498 atk_role_ = ATK_ROLE_LINK;
499 break; 499 break;
500 case blink::WebAXRoleRadioButton: 500 case ui::AX_ROLE_RADIO_BUTTON:
501 atk_role_ = ATK_ROLE_RADIO_BUTTON; 501 atk_role_ = ATK_ROLE_RADIO_BUTTON;
502 break; 502 break;
503 case blink::WebAXRoleStaticText: 503 case ui::AX_ROLE_STATIC_TEXT:
504 atk_role_ = ATK_ROLE_TEXT; 504 atk_role_ = ATK_ROLE_TEXT;
505 break; 505 break;
506 case blink::WebAXRoleTextArea: 506 case ui::AX_ROLE_TEXT_AREA:
507 atk_role_ = ATK_ROLE_ENTRY; 507 atk_role_ = ATK_ROLE_ENTRY;
508 break; 508 break;
509 case blink::WebAXRoleTextField: 509 case ui::AX_ROLE_TEXT_FIELD:
510 atk_role_ = ATK_ROLE_ENTRY; 510 atk_role_ = ATK_ROLE_ENTRY;
511 break; 511 break;
512 default: 512 default:
513 atk_role_ = ATK_ROLE_UNKNOWN; 513 atk_role_ = ATK_ROLE_UNKNOWN;
514 break; 514 break;
515 } 515 }
516 } 516 }
517 517
518 } // namespace content 518 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698