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

Unified Diff: content/browser/accessibility/browser_accessibility_android.cc

Issue 2808383004: Refactor and send voice interaction structure (Closed)
Patch Set: fix window build 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 side-by-side diff with in-line comments
Download patch
Index: content/browser/accessibility/browser_accessibility_android.cc
diff --git a/content/browser/accessibility/browser_accessibility_android.cc b/content/browser/accessibility/browser_accessibility_android.cc
index a74f0082ad154bb8084827df6173b0fbcdca38ac..52d65365a84a931632cde9c0ca2676e0aadd7ccc 100644
--- a/content/browser/accessibility/browser_accessibility_android.cc
+++ b/content/browser/accessibility/browser_accessibility_android.cc
@@ -15,11 +15,10 @@
#include "content/public/common/content_client.h"
#include "third_party/skia/include/core/SkColor.h"
#include "ui/accessibility/platform/ax_android_constants.h"
+#include "ui/accessibility/platform/ax_snapshot_node_android_platform.h"
namespace {
-const base::char16 kSecurePasswordBullet = 0x2022;
-
// These are enums from android.text.InputType in Java:
enum {
ANDROID_TEXT_INPUTTYPE_TYPE_NULL = 0,
@@ -81,7 +80,7 @@ base::string16 BrowserAccessibilityAndroid::GetValue() const {
bool should_expose = static_cast<BrowserAccessibilityManagerAndroid*>(
manager())->ShouldExposePasswordText();
if (!should_expose) {
- value = base::string16(value.size(), kSecurePasswordBullet);
+ value = base::string16(value.size(), ui::kSecurePasswordBullet);
}
}
@@ -245,8 +244,7 @@ bool BrowserAccessibilityAndroid::IsHierarchical() const {
}
bool BrowserAccessibilityAndroid::IsLink() const {
- return (GetRole() == ui::AX_ROLE_LINK ||
- GetRole() == ui::AX_ROLE_IMAGE_MAP_LINK);
+ return ui::AXSnapshotNodeAndroid::AXRoleIsLink(GetRole());
}
bool BrowserAccessibilityAndroid::IsMultiLine() const {
@@ -328,80 +326,8 @@ bool BrowserAccessibilityAndroid::CanOpenPopup() const {
}
const char* BrowserAccessibilityAndroid::GetClassName() const {
- const char* class_name = NULL;
-
- switch (GetRole()) {
- case ui::AX_ROLE_SEARCH_BOX:
- case ui::AX_ROLE_SPIN_BUTTON:
- case ui::AX_ROLE_TEXT_FIELD:
- class_name = ui::kAXEditTextClassname;
- break;
- case ui::AX_ROLE_SLIDER:
- class_name = ui::kAXSeekBarClassname;
- break;
- case ui::AX_ROLE_COLOR_WELL:
- case ui::AX_ROLE_COMBO_BOX:
- case ui::AX_ROLE_DATE:
- case ui::AX_ROLE_POP_UP_BUTTON:
- case ui::AX_ROLE_INPUT_TIME:
- class_name = ui::kAXSpinnerClassname;
- break;
- case ui::AX_ROLE_BUTTON:
- case ui::AX_ROLE_MENU_BUTTON:
- class_name = ui::kAXButtonClassname;
- break;
- case ui::AX_ROLE_CHECK_BOX:
- case ui::AX_ROLE_SWITCH:
- class_name = ui::kAXCheckBoxClassname;
- break;
- case ui::AX_ROLE_RADIO_BUTTON:
- class_name = ui::kAXRadioButtonClassname;
- break;
- case ui::AX_ROLE_TOGGLE_BUTTON:
- class_name = ui::kAXToggleButtonClassname;
- break;
- case ui::AX_ROLE_CANVAS:
- case ui::AX_ROLE_IMAGE:
- case ui::AX_ROLE_SVG_ROOT:
- class_name = ui::kAXImageClassname;
- break;
- case ui::AX_ROLE_METER:
- case ui::AX_ROLE_PROGRESS_INDICATOR:
- class_name = ui::kAXProgressBarClassname;
- break;
- case ui::AX_ROLE_TAB_LIST:
- class_name = ui::kAXTabWidgetClassname;
- break;
- case ui::AX_ROLE_GRID:
- case ui::AX_ROLE_TREE_GRID:
- case ui::AX_ROLE_TABLE:
- class_name = ui::kAXGridViewClassname;
- break;
- case ui::AX_ROLE_LIST:
- case ui::AX_ROLE_LIST_BOX:
- case ui::AX_ROLE_DESCRIPTION_LIST:
- class_name = ui::kAXListViewClassname;
- break;
- case ui::AX_ROLE_DIALOG:
- class_name = ui::kAXDialogClassname;
- break;
- case ui::AX_ROLE_ROOT_WEB_AREA:
- if (PlatformGetParent() == nullptr)
- class_name = ui::kAXWebViewClassname;
- else
- class_name = ui::kAXViewClassname;
- break;
- case ui::AX_ROLE_MENU_ITEM:
- case ui::AX_ROLE_MENU_ITEM_CHECK_BOX:
- case ui::AX_ROLE_MENU_ITEM_RADIO:
- class_name = ui::kAXMenuItemClassname;
- break;
- default:
- class_name = ui::kAXViewClassname;
- break;
- }
-
- return class_name;
+ return ui::AXSnapshotNodeAndroid::AXRoleToAndroidClassName(
+ GetRole(), PlatformGetParent() != nullptr);
}
base::string16 BrowserAccessibilityAndroid::GetText() const {
@@ -484,22 +410,7 @@ base::string16 BrowserAccessibilityAndroid::GetText() const {
if (text.empty() && (IsLink() || GetRole() == ui::AX_ROLE_IMAGE)) {
base::string16 url = GetString16Attribute(ui::AX_ATTR_URL);
- // Given a url like http://foo.com/bar/baz.png, just return the
- // base text, e.g., "baz".
- int trailing_slashes = 0;
- while (url.size() - trailing_slashes > 0 &&
- url[url.size() - trailing_slashes - 1] == '/') {
- trailing_slashes++;
- }
- if (trailing_slashes)
- url = url.substr(0, url.size() - trailing_slashes);
- size_t slash_index = url.rfind('/');
- if (slash_index != std::string::npos)
- url = url.substr(slash_index + 1);
- size_t dot_index = url.rfind('.');
- if (dot_index != std::string::npos)
- url = url.substr(0, dot_index);
- text = url;
+ text = ui::AXSnapshotNodeAndroid::AXUrlBaseText(url);
}
return text;
« no previous file with comments | « components/arc/common/voice_interaction_arc_home.mojom ('k') | content/browser/web_contents/web_contents_android.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698