Commit a6f0dbf7 authored by James Cook's avatar James Cook Committed by Commit Bot

Convert AXActionData.value from string16 to string

Accessibility values are typically UTF-8 strings.

This addresses a comment on:
https://chromium-review.googlesource.com/c/chromium/src/+/1118828

TBR=rmrossi@chromium.org

Bug: 851578
Test: bots
Change-Id: I05f5cf68d5731b3c22956d86da3a2e865cd8bf1d
Reviewed-on: https://chromium-review.googlesource.com/1121539Reviewed-by: default avatarTom Sepez <tsepez@chromium.org>
Reviewed-by: default avatarJames Cook <jamescook@chromium.org>
Reviewed-by: default avatarDominic Mazzoni <dmazzoni@chromium.org>
Commit-Queue: James Cook <jamescook@chromium.org>
Cr-Commit-Position: refs/heads/master@{#571959}
parent 96874db4
......@@ -444,7 +444,7 @@ AutomationInternalPerformActionFunction::ConvertToAXActionData(
params->opt_args.additional_properties,
&replace_selected_text_params));
action->action = ax::mojom::Action::kReplaceSelectedText;
action->value = base::UTF8ToUTF16(replace_selected_text_params.value);
action->value = replace_selected_text_params.value;
break;
}
case api::automation::ACTION_TYPE_SETVALUE: {
......@@ -453,7 +453,7 @@ AutomationInternalPerformActionFunction::ConvertToAXActionData(
api::automation_internal::SetValueParams::Populate(
params->opt_args.additional_properties, &set_value_params));
action->action = ax::mojom::Action::kSetValue;
action->value = base::UTF8ToUTF16(set_value_params.value);
action->value = set_value_params.value;
break;
}
// These actions are currently unused by any existing clients of
......
......@@ -944,7 +944,7 @@ bool OmniboxViewViews::HandleAccessibleAction(
return Textfield::HandleAccessibleAction(action_data);
if (action_data.action == ax::mojom::Action::kSetValue) {
SetUserText(action_data.value, true);
SetUserText(base::UTF8ToUTF16(action_data.value), true);
return true;
} else if (action_data.action == ax::mojom::Action::kReplaceSelectedText) {
model()->SetInputInProgress(true);
......@@ -952,7 +952,7 @@ bool OmniboxViewViews::HandleAccessibleAction(
SelectRange(saved_selection_for_focus_change_);
saved_selection_for_focus_change_ = gfx::Range::InvalidRange();
}
InsertOrReplaceText(action_data.value);
InsertOrReplaceText(base::UTF8ToUTF16(action_data.value));
TextChanged();
return true;
} else if (action_data.action == ax::mojom::Action::kSetSelection) {
......
......@@ -392,7 +392,7 @@ AutomationInternalPerformActionFunction::ConvertToAXActionData(
params->opt_args.additional_properties,
&replace_selected_text_params));
action->action = ax::mojom::Action::kReplaceSelectedText;
action->value = base::UTF8ToUTF16(replace_selected_text_params.value);
action->value = replace_selected_text_params.value;
break;
}
case api::automation::ACTION_TYPE_SETVALUE: {
......@@ -401,7 +401,7 @@ AutomationInternalPerformActionFunction::ConvertToAXActionData(
api::automation_internal::SetValueParams::Populate(
params->opt_args.additional_properties, &set_value_params));
action->action = ax::mojom::Action::kSetValue;
action->value = base::UTF8ToUTF16(set_value_params.value);
action->value = set_value_params.value;
break;
}
// These actions are currently unused by any existing clients of
......
......@@ -673,9 +673,8 @@ void BrowserAccessibilityManager::SetScrollOffset(
delegate_->AccessibilityPerformAction(action_data);
}
void BrowserAccessibilityManager::SetValue(
const BrowserAccessibility& node,
const base::string16& value) {
void BrowserAccessibilityManager::SetValue(const BrowserAccessibility& node,
const std::string& value) {
if (!delegate_)
return;
......
......@@ -8,6 +8,7 @@
#include <stdint.h>
#include <memory>
#include <string>
#include <vector>
#include "base/callback_forward.h"
......@@ -218,8 +219,7 @@ class CONTENT_EXPORT BrowserAccessibilityManager : public ui::AXEventGenerator {
void SetAccessibilityFocus(const BrowserAccessibility& node);
void SetFocus(const BrowserAccessibility& node);
void SetScrollOffset(const BrowserAccessibility& node, gfx::Point offset);
void SetValue(
const BrowserAccessibility& node, const base::string16& value);
void SetValue(const BrowserAccessibility& node, const std::string& value);
void SetSelection(
ui::AXRange<
BrowserAccessibilityPosition::AXPositionInstance::element_type>
......
......@@ -855,7 +855,7 @@ void WebContentsAccessibilityAndroid::SetTextFieldValue(
BrowserAccessibilityAndroid* node = GetAXFromUniqueID(unique_id);
if (node) {
node->manager()->SetValue(
*node, base::android::ConvertJavaStringToUTF16(env, value));
*node, base::android::ConvertJavaStringToUTF8(env, value));
}
}
......@@ -909,7 +909,7 @@ jboolean WebContentsAccessibilityAndroid::AdjustSlider(
value += (increment ? delta : -delta);
value = std::max(std::min(value, max), min);
if (value != original_value) {
node->manager()->SetValue(*node, base::NumberToString16(value));
node->manager()->SetValue(*node, base::NumberToString(value));
return true;
}
return false;
......
......@@ -652,7 +652,7 @@ void RenderAccessibilityImpl::OnPerformAction(
target.SetSequentialFocusNavigationStartingPoint();
break;
case ax::mojom::Action::kSetValue:
target.SetValue(blink::WebString::FromUTF16(data.value));
target.SetValue(blink::WebString::FromUTF8(data.value));
HandleAXEvent(target, ax::mojom::Event::kValueChanged);
break;
case ax::mojom::Action::kShowContextMenu:
......
......@@ -5,7 +5,6 @@
#ifndef UI_ACCESSIBILITY_AX_ACTION_DATA_H_
#define UI_ACCESSIBILITY_AX_ACTION_DATA_H_
#include "base/strings/string16.h"
#include "ui/accessibility/ax_enums.mojom.h"
#include "ui/accessibility/ax_export.h"
#include "ui/gfx/geometry/rect.h"
......@@ -63,8 +62,8 @@ struct AX_EXPORT AXActionData {
// The target point for the action.
gfx::Point target_point;
// The new value for a node, for the SET_VALUE action.
base::string16 value;
// The new value for a node, for the SET_VALUE action. UTF-8 encoded.
std::string value;
// The event to fire in response to a HIT_TEST action.
ax::mojom::Event hit_test_event_to_fire = ax::mojom::Event::kNone;
......
......@@ -4,7 +4,6 @@
module ax.mojom;
import "mojo/public/mojom/base/string16.mojom";
import "ui/accessibility/ax_enums.mojom";
import "ui/gfx/geometry/mojo/geometry.mojom";
......@@ -24,6 +23,6 @@ struct AXActionData {
int32 custom_action_id;
gfx.mojom.Rect target_rect;
gfx.mojom.Point target_point;
mojo_base.mojom.String16 value;
string value;
Event hit_test_event_to_fire;
};
......@@ -5,7 +5,6 @@
#ifndef UI_ACCESSIBILITY_MOJOM_AX_ACTION_DATA_MOJOM_TRAITS_H_
#define UI_ACCESSIBILITY_MOJOM_AX_ACTION_DATA_MOJOM_TRAITS_H_
#include "mojo/public/cpp/base/string16_mojom_traits.h"
#include "ui/accessibility/ax_action_data.h"
#include "ui/accessibility/mojom/ax_action_data.mojom-shared.h"
#include "ui/gfx/geometry/mojo/geometry_struct_traits.h"
......@@ -49,7 +48,7 @@ struct StructTraits<ax::mojom::AXActionDataDataView, ui::AXActionData> {
static gfx::Point target_point(const ui::AXActionData& a) {
return a.target_point;
}
static base::string16 value(const ui::AXActionData& a) { return a.value; }
static std::string value(const ui::AXActionData& a) { return a.value; }
static ax::mojom::Event hit_test_event_to_fire(const ui::AXActionData& a) {
return a.hit_test_event_to_fire;
}
......
......@@ -29,7 +29,7 @@ TEST(AXActionDataMojomTraitsTest, RoundTrip) {
input.custom_action_id = 9;
input.target_rect = gfx::Rect(10, 11, 12, 13);
input.target_point = gfx::Point(14, 15);
input.value = base::ASCIIToUTF16("value");
input.value = "value";
input.hit_test_event_to_fire = ax::mojom::Event::kFocus;
ui::AXActionData output;
......@@ -49,6 +49,6 @@ TEST(AXActionDataMojomTraitsTest, RoundTrip) {
EXPECT_EQ(output.custom_action_id, 9);
EXPECT_EQ(output.target_rect, gfx::Rect(10, 11, 12, 13));
EXPECT_EQ(output.target_point, gfx::Point(14, 15));
EXPECT_EQ(output.value, base::ASCIIToUTF16("value"));
EXPECT_EQ(output.value, "value");
EXPECT_EQ(output.hit_test_event_to_fire, ax::mojom::Event::kFocus);
}
......@@ -651,7 +651,7 @@ bool AlsoUseShowMenuActionForDefaultAction(const ui::AXNodeData& data) {
// Set type-specific information as necessary for actions set above.
if ([value isKindOfClass:[NSString class]]) {
data.value = base::SysNSStringToUTF16(value);
data.value = base::SysNSStringToUTF8(value);
} else if (data.action == ax::mojom::Action::kSetSelection &&
[value isKindOfClass:[NSValue class]]) {
NSRange range = [value rangeValue];
......
......@@ -952,7 +952,7 @@ STDMETHODIMP AXPlatformNodeWin::put_accValue(VARIANT var_id,
AXActionData data;
data.action = ax::mojom::Action::kSetValue;
data.value = new_value;
data.value = base::WideToUTF8(new_value);
if (target->delegate_->AccessibilityPerformAction(data))
return S_OK;
return E_FAIL;
......@@ -1496,7 +1496,7 @@ STDMETHODIMP AXPlatformNodeWin::SetValue(LPCWSTR value) {
AXActionData data;
data.action = ax::mojom::Action::kSetValue;
data.value = base::string16(value);
data.value = base::WideToUTF8(value);
if (delegate_->AccessibilityPerformAction(data))
return S_OK;
return E_FAIL;
......@@ -1527,7 +1527,7 @@ STDMETHODIMP AXPlatformNodeWin::get_Value(BSTR* result) {
STDMETHODIMP AXPlatformNodeWin::SetValue(double value) {
AXActionData data;
data.action = ax::mojom::Action::kSetValue;
data.value = base::NumberToString16(value);
data.value = base::NumberToString(value);
if (delegate_->AccessibilityPerformAction(data))
return S_OK;
return E_FAIL;
......
......@@ -1035,11 +1035,11 @@ bool Textfield::HandleAccessibleAction(const ui::AXActionData& action_data) {
return View::HandleAccessibleAction(action_data);
if (action_data.action == ax::mojom::Action::kSetValue) {
SetText(action_data.value);
SetText(base::UTF8ToUTF16(action_data.value));
ClearSelection();
return true;
} else if (action_data.action == ax::mojom::Action::kReplaceSelectedText) {
InsertOrReplaceText(action_data.value);
InsertOrReplaceText(base::UTF8ToUTF16(action_data.value));
ClearSelection();
return true;
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment