| 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 "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 232 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 243 | 243 |
| 244 static AtkStateSet* browser_accessibility_ref_state_set(AtkObject* atk_object) { | 244 static AtkStateSet* browser_accessibility_ref_state_set(AtkObject* atk_object) { |
| 245 BrowserAccessibilityGtk* obj = ToBrowserAccessibilityGtk(atk_object); | 245 BrowserAccessibilityGtk* obj = ToBrowserAccessibilityGtk(atk_object); |
| 246 if (!obj) | 246 if (!obj) |
| 247 return NULL; | 247 return NULL; |
| 248 AtkStateSet* state_set = | 248 AtkStateSet* state_set = |
| 249 ATK_OBJECT_CLASS(browser_accessibility_parent_class)-> | 249 ATK_OBJECT_CLASS(browser_accessibility_parent_class)-> |
| 250 ref_state_set(atk_object); | 250 ref_state_set(atk_object); |
| 251 int32 state = obj->state(); | 251 int32 state = obj->state(); |
| 252 | 252 |
| 253 if (state & (1 << AccessibilityNodeData::STATE_FOCUSABLE)) | 253 if (state & (1 << WebKit::WebAXStateFocusable)) |
| 254 atk_state_set_add_state(state_set, ATK_STATE_FOCUSABLE); | 254 atk_state_set_add_state(state_set, ATK_STATE_FOCUSABLE); |
| 255 if (obj->manager()->GetFocus(NULL) == obj) | 255 if (obj->manager()->GetFocus(NULL) == obj) |
| 256 atk_state_set_add_state(state_set, ATK_STATE_FOCUSED); | 256 atk_state_set_add_state(state_set, ATK_STATE_FOCUSED); |
| 257 if (!(state & (1 << AccessibilityNodeData::STATE_UNAVAILABLE))) | 257 if (state & (1 << WebKit::WebAXStateEnabled)) |
| 258 atk_state_set_add_state(state_set, ATK_STATE_ENABLED); | 258 atk_state_set_add_state(state_set, ATK_STATE_ENABLED); |
| 259 | 259 |
| 260 return state_set; | 260 return state_set; |
| 261 } | 261 } |
| 262 | 262 |
| 263 static AtkRelationSet* browser_accessibility_ref_relation_set( | 263 static AtkRelationSet* browser_accessibility_ref_relation_set( |
| 264 AtkObject* atk_object) { | 264 AtkObject* atk_object) { |
| 265 AtkRelationSet* relation_set = | 265 AtkRelationSet* relation_set = |
| 266 ATK_OBJECT_CLASS(browser_accessibility_parent_class) | 266 ATK_OBJECT_CLASS(browser_accessibility_parent_class) |
| 267 ->ref_relation_set(atk_object); | 267 ->ref_relation_set(atk_object); |
| (...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 352 ATK_VALUE_INTERFACE, | 352 ATK_VALUE_INTERFACE, |
| 353 }; | 353 }; |
| 354 | 354 |
| 355 static int GetInterfaceMaskFromObject(BrowserAccessibilityGtk* obj) { | 355 static int GetInterfaceMaskFromObject(BrowserAccessibilityGtk* obj) { |
| 356 int interface_mask = 0; | 356 int interface_mask = 0; |
| 357 | 357 |
| 358 // Component interface is always supported. | 358 // Component interface is always supported. |
| 359 interface_mask |= 1 << ATK_COMPONENT_INTERFACE; | 359 interface_mask |= 1 << ATK_COMPONENT_INTERFACE; |
| 360 | 360 |
| 361 int role = obj->role(); | 361 int role = obj->role(); |
| 362 if (role == AccessibilityNodeData::ROLE_PROGRESS_INDICATOR || | 362 if (role == WebKit::WebAXRoleProgressIndicator || |
| 363 role == AccessibilityNodeData::ROLE_SCROLLBAR || | 363 role == WebKit::WebAXRoleScrollBar || |
| 364 role == AccessibilityNodeData::ROLE_SLIDER) { | 364 role == WebKit::WebAXRoleSlider) { |
| 365 interface_mask |= 1 << ATK_VALUE_INTERFACE; | 365 interface_mask |= 1 << ATK_VALUE_INTERFACE; |
| 366 } | 366 } |
| 367 | 367 |
| 368 return interface_mask; | 368 return interface_mask; |
| 369 } | 369 } |
| 370 | 370 |
| 371 static GType GetAccessibilityTypeFromObject(BrowserAccessibilityGtk* obj) { | 371 static GType GetAccessibilityTypeFromObject(BrowserAccessibilityGtk* obj) { |
| 372 static const GTypeInfo type_info = { | 372 static const GTypeInfo type_info = { |
| 373 sizeof(BrowserAccessibilityAtkClass), | 373 sizeof(BrowserAccessibilityAtkClass), |
| 374 (GBaseInitFunc) 0, | 374 (GBaseInitFunc) 0, |
| (...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 464 } | 464 } |
| 465 } | 465 } |
| 466 } | 466 } |
| 467 | 467 |
| 468 bool BrowserAccessibilityGtk::IsNative() const { | 468 bool BrowserAccessibilityGtk::IsNative() const { |
| 469 return true; | 469 return true; |
| 470 } | 470 } |
| 471 | 471 |
| 472 void BrowserAccessibilityGtk::InitRoleAndState() { | 472 void BrowserAccessibilityGtk::InitRoleAndState() { |
| 473 switch(role_) { | 473 switch(role_) { |
| 474 case AccessibilityNodeData::ROLE_DOCUMENT: | 474 case WebKit::WebAXRoleDocument: |
| 475 case AccessibilityNodeData::ROLE_ROOT_WEB_AREA: | 475 case WebKit::WebAXRoleRootWebArea: |
| 476 case AccessibilityNodeData::ROLE_WEB_AREA: | 476 case WebKit::WebAXRoleWebArea: |
| 477 atk_role_ = ATK_ROLE_DOCUMENT_WEB; | 477 atk_role_ = ATK_ROLE_DOCUMENT_WEB; |
| 478 break; | 478 break; |
| 479 case AccessibilityNodeData::ROLE_GROUP: | 479 case WebKit::WebAXRoleGroup: |
| 480 case AccessibilityNodeData::ROLE_DIV: | 480 case WebKit::WebAXRoleDiv: |
| 481 atk_role_ = ATK_ROLE_SECTION; | 481 atk_role_ = ATK_ROLE_SECTION; |
| 482 break; | 482 break; |
| 483 case AccessibilityNodeData::ROLE_BUTTON: | 483 case WebKit::WebAXRoleButton: |
| 484 atk_role_ = ATK_ROLE_PUSH_BUTTON; | 484 atk_role_ = ATK_ROLE_PUSH_BUTTON; |
| 485 break; | 485 break; |
| 486 case AccessibilityNodeData::ROLE_CHECKBOX: | 486 case WebKit::WebAXRoleCheckBox: |
| 487 atk_role_ = ATK_ROLE_CHECK_BOX; | 487 atk_role_ = ATK_ROLE_CHECK_BOX; |
| 488 break; | 488 break; |
| 489 case AccessibilityNodeData::ROLE_COMBO_BOX: | 489 case WebKit::WebAXRoleComboBox: |
| 490 atk_role_ = ATK_ROLE_COMBO_BOX; | 490 atk_role_ = ATK_ROLE_COMBO_BOX; |
| 491 break; | 491 break; |
| 492 case AccessibilityNodeData::ROLE_LINK: | 492 case WebKit::WebAXRoleLink: |
| 493 atk_role_ = ATK_ROLE_LINK; | 493 atk_role_ = ATK_ROLE_LINK; |
| 494 break; | 494 break; |
| 495 case AccessibilityNodeData::ROLE_RADIO_BUTTON: | 495 case WebKit::WebAXRoleRadioButton: |
| 496 atk_role_ = ATK_ROLE_RADIO_BUTTON; | 496 atk_role_ = ATK_ROLE_RADIO_BUTTON; |
| 497 break; | 497 break; |
| 498 case AccessibilityNodeData::ROLE_STATIC_TEXT: | 498 case WebKit::WebAXRoleStaticText: |
| 499 atk_role_ = ATK_ROLE_TEXT; | 499 atk_role_ = ATK_ROLE_TEXT; |
| 500 break; | 500 break; |
| 501 case AccessibilityNodeData::ROLE_TEXTAREA: | 501 case WebKit::WebAXRoleTextArea: |
| 502 atk_role_ = ATK_ROLE_ENTRY; | 502 atk_role_ = ATK_ROLE_ENTRY; |
| 503 break; | 503 break; |
| 504 case AccessibilityNodeData::ROLE_TEXT_FIELD: | 504 case WebKit::WebAXRoleTextField: |
| 505 atk_role_ = ATK_ROLE_ENTRY; | 505 atk_role_ = ATK_ROLE_ENTRY; |
| 506 break; | 506 break; |
| 507 case AccessibilityNodeData::ROLE_WEBCORE_LINK: | |
| 508 atk_role_ = ATK_ROLE_LINK; | |
| 509 break; | |
| 510 default: | 507 default: |
| 511 atk_role_ = ATK_ROLE_UNKNOWN; | 508 atk_role_ = ATK_ROLE_UNKNOWN; |
| 512 break; | 509 break; |
| 513 } | 510 } |
| 514 } | 511 } |
| 515 | 512 |
| 516 } // namespace content | 513 } // namespace content |
| OLD | NEW |