| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 "chrome/browser/renderer_host/render_widget_host_view_win.h" | 5 #include "chrome/browser/renderer_host/render_widget_host_view_win.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 | 8 |
| 9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
| 10 #include "base/i18n/rtl.h" | 10 #include "base/i18n/rtl.h" |
| (...skipping 1426 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1437 handled = FALSE; | 1437 handled = FALSE; |
| 1438 render_widget_host_->OnMouseActivate(); | 1438 render_widget_host_->OnMouseActivate(); |
| 1439 return MA_ACTIVATE; | 1439 return MA_ACTIVATE; |
| 1440 } | 1440 } |
| 1441 | 1441 |
| 1442 void RenderWidgetHostViewWin::OnAccessibilityNotifications( | 1442 void RenderWidgetHostViewWin::OnAccessibilityNotifications( |
| 1443 const std::vector<ViewHostMsg_AccessibilityNotification_Params>& params) { | 1443 const std::vector<ViewHostMsg_AccessibilityNotification_Params>& params) { |
| 1444 if (!browser_accessibility_manager_.get()) { | 1444 if (!browser_accessibility_manager_.get()) { |
| 1445 // Use empty document to process notifications | 1445 // Use empty document to process notifications |
| 1446 webkit_glue::WebAccessibility empty_document; | 1446 webkit_glue::WebAccessibility empty_document; |
| 1447 empty_document.role = WebAccessibility::ROLE_DOCUMENT; | 1447 // Renderer id's always start at 1000 as determined by webkit. Boot strap |
| 1448 // our ability to reuse BrowserAccessibility instances. |
| 1449 empty_document.id = 1000; |
| 1450 empty_document.role = WebAccessibility::ROLE_WEB_AREA; |
| 1448 empty_document.state = 0; | 1451 empty_document.state = 0; |
| 1449 browser_accessibility_manager_.reset( | 1452 browser_accessibility_manager_.reset( |
| 1450 BrowserAccessibilityManager::Create(m_hWnd, empty_document, this)); | 1453 BrowserAccessibilityManager::Create(m_hWnd, empty_document, this)); |
| 1451 } | 1454 } |
| 1452 | 1455 |
| 1453 browser_accessibility_manager_->OnAccessibilityNotifications(params); | 1456 browser_accessibility_manager_->OnAccessibilityNotifications(params); |
| 1454 } | 1457 } |
| 1455 | 1458 |
| 1456 void RenderWidgetHostViewWin::Observe(int type, | 1459 void RenderWidgetHostViewWin::Observe(int type, |
| 1457 const NotificationSource& source, | 1460 const NotificationSource& source, |
| (...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1619 | 1622 |
| 1620 IAccessible* RenderWidgetHostViewWin::GetIAccessible() { | 1623 IAccessible* RenderWidgetHostViewWin::GetIAccessible() { |
| 1621 if (render_widget_host_ && !render_widget_host_->renderer_accessible()) { | 1624 if (render_widget_host_ && !render_widget_host_->renderer_accessible()) { |
| 1622 // Attempt to detect screen readers by sending an event with our custom id. | 1625 // Attempt to detect screen readers by sending an event with our custom id. |
| 1623 NotifyWinEvent(EVENT_SYSTEM_ALERT, m_hWnd, kIdCustom, CHILDID_SELF); | 1626 NotifyWinEvent(EVENT_SYSTEM_ALERT, m_hWnd, kIdCustom, CHILDID_SELF); |
| 1624 } | 1627 } |
| 1625 | 1628 |
| 1626 if (!browser_accessibility_manager_.get()) { | 1629 if (!browser_accessibility_manager_.get()) { |
| 1627 // Return busy document tree while renderer accessibility tree loads. | 1630 // Return busy document tree while renderer accessibility tree loads. |
| 1628 webkit_glue::WebAccessibility loading_tree; | 1631 webkit_glue::WebAccessibility loading_tree; |
| 1629 loading_tree.role = WebAccessibility::ROLE_DOCUMENT; | 1632 loading_tree.id = 1000; |
| 1633 loading_tree.role = WebAccessibility::ROLE_WEB_AREA; |
| 1630 loading_tree.state = (1 << WebAccessibility::STATE_BUSY); | 1634 loading_tree.state = (1 << WebAccessibility::STATE_BUSY); |
| 1631 browser_accessibility_manager_.reset( | 1635 browser_accessibility_manager_.reset( |
| 1632 BrowserAccessibilityManager::Create(m_hWnd, loading_tree, this)); | 1636 BrowserAccessibilityManager::Create(m_hWnd, loading_tree, this)); |
| 1633 } | 1637 } |
| 1634 | 1638 |
| 1635 return browser_accessibility_manager_->GetRoot()->toBrowserAccessibilityWin(); | 1639 return browser_accessibility_manager_->GetRoot()->toBrowserAccessibilityWin(); |
| 1636 } | 1640 } |
| 1637 | 1641 |
| 1638 LRESULT RenderWidgetHostViewWin::OnGetObject(UINT message, WPARAM wparam, | 1642 LRESULT RenderWidgetHostViewWin::OnGetObject(UINT message, WPARAM wparam, |
| 1639 LPARAM lparam, BOOL& handled) { | 1643 LPARAM lparam, BOOL& handled) { |
| (...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1817 DWORD ex_style) { | 1821 DWORD ex_style) { |
| 1818 parent_hwnd_ = parent_hwnd; | 1822 parent_hwnd_ = parent_hwnd; |
| 1819 Create(parent_hwnd_, NULL, NULL, WS_POPUP, ex_style); | 1823 Create(parent_hwnd_, NULL, NULL, WS_POPUP, ex_style); |
| 1820 MoveWindow(pos.x(), pos.y(), pos.width(), pos.height(), TRUE); | 1824 MoveWindow(pos.x(), pos.y(), pos.width(), pos.height(), TRUE); |
| 1821 // To show tooltip on popup window.(e.g. title in <select>) | 1825 // To show tooltip on popup window.(e.g. title in <select>) |
| 1822 // Popups default to showing, which means |DidBecomeSelected()| isn't invoked. | 1826 // Popups default to showing, which means |DidBecomeSelected()| isn't invoked. |
| 1823 // Ensure the tooltip is created otherwise tooltips are never shown. | 1827 // Ensure the tooltip is created otherwise tooltips are never shown. |
| 1824 EnsureTooltip(); | 1828 EnsureTooltip(); |
| 1825 ShowWindow(IsActivatable() ? SW_SHOW : SW_SHOWNA); | 1829 ShowWindow(IsActivatable() ? SW_SHOW : SW_SHOWNA); |
| 1826 } | 1830 } |
| OLD | NEW |