| Index: content/browser/accessibility/browser_accessibility_com_win.cc
|
| diff --git a/content/browser/accessibility/browser_accessibility_com_win.cc b/content/browser/accessibility/browser_accessibility_com_win.cc
|
| index 8ec9e981b9f157a48844fd71d957dab25cbeaf93..a5dd1aec868dff88d7ef5f1dfb4f83fb00ee606b 100644
|
| --- a/content/browser/accessibility/browser_accessibility_com_win.cc
|
| +++ b/content/browser/accessibility/browser_accessibility_com_win.cc
|
| @@ -685,50 +685,7 @@ STDMETHODIMP BrowserAccessibilityComWin::get_accSelection(VARIANT* selected) {
|
| if (!owner())
|
| return E_FAIL;
|
|
|
| - if (owner()->GetRole() != ui::AX_ROLE_LIST_BOX)
|
| - return E_NOTIMPL;
|
| -
|
| - unsigned long selected_count = 0;
|
| - for (size_t i = 0; i < owner()->InternalChildCount(); ++i) {
|
| - if (owner()->InternalGetChild(i)->HasState(ui::AX_STATE_SELECTED))
|
| - ++selected_count;
|
| - }
|
| -
|
| - if (selected_count == 0) {
|
| - selected->vt = VT_EMPTY;
|
| - return S_OK;
|
| - }
|
| -
|
| - if (selected_count == 1) {
|
| - for (size_t i = 0; i < owner()->InternalChildCount(); ++i) {
|
| - if (owner()->InternalGetChild(i)->HasState(ui::AX_STATE_SELECTED)) {
|
| - selected->vt = VT_DISPATCH;
|
| - selected->pdispVal =
|
| - ToBrowserAccessibilityComWin(owner()->InternalGetChild(i))
|
| - ->NewReference();
|
| - return S_OK;
|
| - }
|
| - }
|
| - }
|
| -
|
| - // Multiple items are selected.
|
| - base::win::EnumVariant* enum_variant =
|
| - new base::win::EnumVariant(selected_count);
|
| - enum_variant->AddRef();
|
| - unsigned long index = 0;
|
| - for (size_t i = 0; i < owner()->InternalChildCount(); ++i) {
|
| - if (owner()->InternalGetChild(i)->HasState(ui::AX_STATE_SELECTED)) {
|
| - enum_variant->ItemAt(index)->vt = VT_DISPATCH;
|
| - enum_variant->ItemAt(index)->pdispVal =
|
| - ToBrowserAccessibilityComWin(owner()->InternalGetChild(i))
|
| - ->NewReference();
|
| - ++index;
|
| - }
|
| - }
|
| - selected->vt = VT_UNKNOWN;
|
| - selected->punkVal = static_cast<IUnknown*>(
|
| - static_cast<base::win::IUnknownImpl*>(enum_variant));
|
| - return S_OK;
|
| + return AXPlatformNodeWin::get_accSelection(selected);
|
| }
|
|
|
| STDMETHODIMP BrowserAccessibilityComWin::accSelect(LONG flags_sel,
|
|
|