| Index: ui/views/accessibility/native_view_accessibility_win.cc
|
| diff --git a/ui/views/accessibility/native_view_accessibility_win.cc b/ui/views/accessibility/native_view_accessibility_win.cc
|
| index a0367fe1f1e32fa930a4799b3149ea597cd05e84..279c99d3d29061ef20511ede0a825f11bfc68dd6 100644
|
| --- a/ui/views/accessibility/native_view_accessibility_win.cc
|
| +++ b/ui/views/accessibility/native_view_accessibility_win.cc
|
| @@ -582,8 +582,8 @@ STDMETHODIMP NativeViewAccessibilityWin::get_accState(
|
| return S_OK;
|
| }
|
|
|
| -STDMETHODIMP NativeViewAccessibilityWin::get_accValue(
|
| - VARIANT var_id, BSTR* value) {
|
| +STDMETHODIMP NativeViewAccessibilityWin::get_accValue(VARIANT var_id,
|
| + BSTR* value) {
|
| if (!IsValidId(var_id) || !value)
|
| return E_INVALIDARG;
|
|
|
| @@ -607,6 +607,24 @@ STDMETHODIMP NativeViewAccessibilityWin::get_accValue(
|
| return S_OK;
|
| }
|
|
|
| +STDMETHODIMP NativeViewAccessibilityWin::put_accValue(VARIANT var_id,
|
| + BSTR new_value) {
|
| + if (!IsValidId(var_id) || !new_value)
|
| + return E_INVALIDARG;
|
| +
|
| + if (!view_)
|
| + return E_FAIL;
|
| +
|
| + // Return an error if the view can't set the value.
|
| + ui::AccessibleViewState state;
|
| + view_->GetAccessibleState(&state);
|
| + if (state.set_value_callback.is_null())
|
| + return E_FAIL;
|
| +
|
| + state.set_value_callback.Run(new_value);
|
| + return S_OK;
|
| +}
|
| +
|
| // IAccessible functions not supported.
|
|
|
| STDMETHODIMP NativeViewAccessibilityWin::get_accSelection(VARIANT* selected) {
|
| @@ -644,12 +662,6 @@ STDMETHODIMP NativeViewAccessibilityWin::put_accName(
|
| return E_NOTIMPL;
|
| }
|
|
|
| -STDMETHODIMP NativeViewAccessibilityWin::put_accValue(
|
| - VARIANT var_id, BSTR put_val) {
|
| - // Deprecated.
|
| - return E_NOTIMPL;
|
| -}
|
| -
|
| //
|
| // IAccessible2
|
| //
|
|
|