| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "content/renderer/render_view_impl.h" | 5 #include "content/renderer/render_view_impl.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <cmath> | 8 #include <cmath> |
| 9 | 9 |
| 10 #include "base/auto_reset.h" | 10 #include "base/auto_reset.h" |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 60 #include "content/public/common/ssl_status.h" | 60 #include "content/public/common/ssl_status.h" |
| 61 #include "content/public/common/three_d_api_types.h" | 61 #include "content/public/common/three_d_api_types.h" |
| 62 #include "content/public/common/url_constants.h" | 62 #include "content/public/common/url_constants.h" |
| 63 #include "content/public/common/url_utils.h" | 63 #include "content/public/common/url_utils.h" |
| 64 #include "content/public/renderer/content_renderer_client.h" | 64 #include "content/public/renderer/content_renderer_client.h" |
| 65 #include "content/public/renderer/document_state.h" | 65 #include "content/public/renderer/document_state.h" |
| 66 #include "content/public/renderer/navigation_state.h" | 66 #include "content/public/renderer/navigation_state.h" |
| 67 #include "content/public/renderer/render_view_observer.h" | 67 #include "content/public/renderer/render_view_observer.h" |
| 68 #include "content/public/renderer/render_view_visitor.h" | 68 #include "content/public/renderer/render_view_visitor.h" |
| 69 #include "content/public/renderer/web_preferences.h" | 69 #include "content/public/renderer/web_preferences.h" |
| 70 #include "content/renderer/accessibility/renderer_accessibility.h" | |
| 71 #include "content/renderer/accessibility/renderer_accessibility_complete.h" | |
| 72 #include "content/renderer/accessibility/renderer_accessibility_focus_only.h" | |
| 73 #include "content/renderer/browser_plugin/browser_plugin.h" | 70 #include "content/renderer/browser_plugin/browser_plugin.h" |
| 74 #include "content/renderer/browser_plugin/browser_plugin_manager.h" | 71 #include "content/renderer/browser_plugin/browser_plugin_manager.h" |
| 75 #include "content/renderer/browser_plugin/browser_plugin_manager_impl.h" | 72 #include "content/renderer/browser_plugin/browser_plugin_manager_impl.h" |
| 76 #include "content/renderer/devtools/devtools_agent.h" | 73 #include "content/renderer/devtools/devtools_agent.h" |
| 77 #include "content/renderer/disambiguation_popup_helper.h" | 74 #include "content/renderer/disambiguation_popup_helper.h" |
| 78 #include "content/renderer/dom_storage/webstoragenamespace_impl.h" | 75 #include "content/renderer/dom_storage/webstoragenamespace_impl.h" |
| 79 #include "content/renderer/drop_data_builder.h" | 76 #include "content/renderer/drop_data_builder.h" |
| 80 #include "content/renderer/external_popup_menu.h" | 77 #include "content/renderer/external_popup_menu.h" |
| 81 #include "content/renderer/geolocation_dispatcher.h" | 78 #include "content/renderer/geolocation_dispatcher.h" |
| 82 #include "content/renderer/gpu/render_widget_compositor.h" | 79 #include "content/renderer/gpu/render_widget_compositor.h" |
| (...skipping 566 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 649 cached_is_main_frame_pinned_to_left_(false), | 646 cached_is_main_frame_pinned_to_left_(false), |
| 650 cached_is_main_frame_pinned_to_right_(false), | 647 cached_is_main_frame_pinned_to_right_(false), |
| 651 has_scrolled_focused_editable_node_into_rect_(false), | 648 has_scrolled_focused_editable_node_into_rect_(false), |
| 652 push_messaging_dispatcher_(NULL), | 649 push_messaging_dispatcher_(NULL), |
| 653 geolocation_dispatcher_(NULL), | 650 geolocation_dispatcher_(NULL), |
| 654 speech_recognition_dispatcher_(NULL), | 651 speech_recognition_dispatcher_(NULL), |
| 655 media_stream_dispatcher_(NULL), | 652 media_stream_dispatcher_(NULL), |
| 656 browser_plugin_manager_(NULL), | 653 browser_plugin_manager_(NULL), |
| 657 midi_dispatcher_(NULL), | 654 midi_dispatcher_(NULL), |
| 658 devtools_agent_(NULL), | 655 devtools_agent_(NULL), |
| 659 accessibility_mode_(AccessibilityModeOff), | |
| 660 renderer_accessibility_(NULL), | |
| 661 mouse_lock_dispatcher_(NULL), | 656 mouse_lock_dispatcher_(NULL), |
| 662 #if defined(OS_ANDROID) | 657 #if defined(OS_ANDROID) |
| 663 expected_content_intent_id_(0), | 658 expected_content_intent_id_(0), |
| 664 media_player_manager_(NULL), | 659 media_player_manager_(NULL), |
| 665 #endif | 660 #endif |
| 666 #if defined(OS_WIN) | 661 #if defined(OS_WIN) |
| 667 focused_plugin_id_(-1), | 662 focused_plugin_id_(-1), |
| 668 #endif | 663 #endif |
| 669 #if defined(ENABLE_PLUGINS) | 664 #if defined(ENABLE_PLUGINS) |
| 670 plugin_find_handler_(NULL), | 665 plugin_find_handler_(NULL), |
| (...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 788 // The next group of objects all implement RenderViewObserver, so are deleted | 783 // The next group of objects all implement RenderViewObserver, so are deleted |
| 789 // along with the RenderView automatically. | 784 // along with the RenderView automatically. |
| 790 devtools_agent_ = new DevToolsAgent(this); | 785 devtools_agent_ = new DevToolsAgent(this); |
| 791 if (RenderWidgetCompositor* rwc = compositor()) { | 786 if (RenderWidgetCompositor* rwc = compositor()) { |
| 792 webview()->devToolsAgent()->setLayerTreeId(rwc->GetLayerTreeId()); | 787 webview()->devToolsAgent()->setLayerTreeId(rwc->GetLayerTreeId()); |
| 793 } | 788 } |
| 794 mouse_lock_dispatcher_ = new RenderViewMouseLockDispatcher(this); | 789 mouse_lock_dispatcher_ = new RenderViewMouseLockDispatcher(this); |
| 795 | 790 |
| 796 history_controller_.reset(new HistoryController(this)); | 791 history_controller_.reset(new HistoryController(this)); |
| 797 | 792 |
| 798 // Create renderer_accessibility_ if needed. | |
| 799 OnSetAccessibilityMode(params->accessibility_mode); | |
| 800 | |
| 801 new IdleUserDetector(this); | 793 new IdleUserDetector(this); |
| 802 | 794 |
| 803 if (command_line.HasSwitch(switches::kDomAutomationController)) | 795 if (command_line.HasSwitch(switches::kDomAutomationController)) |
| 804 enabled_bindings_ |= BINDINGS_POLICY_DOM_AUTOMATION; | 796 enabled_bindings_ |= BINDINGS_POLICY_DOM_AUTOMATION; |
| 805 if (command_line.HasSwitch(switches::kStatsCollectionController)) | 797 if (command_line.HasSwitch(switches::kStatsCollectionController)) |
| 806 enabled_bindings_ |= BINDINGS_POLICY_STATS_COLLECTION; | 798 enabled_bindings_ |= BINDINGS_POLICY_STATS_COLLECTION; |
| 807 | 799 |
| 808 ProcessViewLayoutFlags(command_line); | 800 ProcessViewLayoutFlags(command_line); |
| 809 | 801 |
| 810 GetContentClient()->renderer()->RenderViewCreated(this); | 802 GetContentClient()->renderer()->RenderViewCreated(this); |
| (...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 904 int32 routing_id, | 896 int32 routing_id, |
| 905 int32 main_frame_routing_id, | 897 int32 main_frame_routing_id, |
| 906 int32 surface_id, | 898 int32 surface_id, |
| 907 int64 session_storage_namespace_id, | 899 int64 session_storage_namespace_id, |
| 908 const base::string16& frame_name, | 900 const base::string16& frame_name, |
| 909 bool is_renderer_created, | 901 bool is_renderer_created, |
| 910 bool swapped_out, | 902 bool swapped_out, |
| 911 bool hidden, | 903 bool hidden, |
| 912 bool never_visible, | 904 bool never_visible, |
| 913 int32 next_page_id, | 905 int32 next_page_id, |
| 914 const blink::WebScreenInfo& screen_info, | 906 const blink::WebScreenInfo& screen_info) { |
| 915 AccessibilityMode accessibility_mode) { | |
| 916 DCHECK(routing_id != MSG_ROUTING_NONE); | 907 DCHECK(routing_id != MSG_ROUTING_NONE); |
| 917 RenderViewImplParams params(opener_id, | 908 RenderViewImplParams params(opener_id, |
| 918 window_was_created_with_opener, | 909 window_was_created_with_opener, |
| 919 renderer_prefs, | 910 renderer_prefs, |
| 920 webkit_prefs, | 911 webkit_prefs, |
| 921 routing_id, | 912 routing_id, |
| 922 main_frame_routing_id, | 913 main_frame_routing_id, |
| 923 surface_id, | 914 surface_id, |
| 924 session_storage_namespace_id, | 915 session_storage_namespace_id, |
| 925 frame_name, | 916 frame_name, |
| 926 is_renderer_created, | 917 is_renderer_created, |
| 927 swapped_out, | 918 swapped_out, |
| 928 hidden, | 919 hidden, |
| 929 never_visible, | 920 never_visible, |
| 930 next_page_id, | 921 next_page_id, |
| 931 screen_info, | 922 screen_info); |
| 932 accessibility_mode); | |
| 933 RenderViewImpl* render_view = NULL; | 923 RenderViewImpl* render_view = NULL; |
| 934 if (g_create_render_view_impl) | 924 if (g_create_render_view_impl) |
| 935 render_view = g_create_render_view_impl(¶ms); | 925 render_view = g_create_render_view_impl(¶ms); |
| 936 else | 926 else |
| 937 render_view = new RenderViewImpl(¶ms); | 927 render_view = new RenderViewImpl(¶ms); |
| 938 | 928 |
| 939 render_view->Initialize(¶ms); | 929 render_view->Initialize(¶ms); |
| 940 return render_view; | 930 return render_view; |
| 941 } | 931 } |
| 942 | 932 |
| (...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1112 IPC_MESSAGE_HANDLER(ViewMsg_GetAllSavableResourceLinksForCurrentPage, | 1102 IPC_MESSAGE_HANDLER(ViewMsg_GetAllSavableResourceLinksForCurrentPage, |
| 1113 OnGetAllSavableResourceLinksForCurrentPage) | 1103 OnGetAllSavableResourceLinksForCurrentPage) |
| 1114 IPC_MESSAGE_HANDLER( | 1104 IPC_MESSAGE_HANDLER( |
| 1115 ViewMsg_GetSerializedHtmlDataForCurrentPageWithLocalLinks, | 1105 ViewMsg_GetSerializedHtmlDataForCurrentPageWithLocalLinks, |
| 1116 OnGetSerializedHtmlDataForCurrentPageWithLocalLinks) | 1106 OnGetSerializedHtmlDataForCurrentPageWithLocalLinks) |
| 1117 IPC_MESSAGE_HANDLER(ViewMsg_ShowContextMenu, OnShowContextMenu) | 1107 IPC_MESSAGE_HANDLER(ViewMsg_ShowContextMenu, OnShowContextMenu) |
| 1118 // TODO(viettrungluu): Move to a separate message filter. | 1108 // TODO(viettrungluu): Move to a separate message filter. |
| 1119 IPC_MESSAGE_HANDLER(ViewMsg_SetHistoryLengthAndPrune, | 1109 IPC_MESSAGE_HANDLER(ViewMsg_SetHistoryLengthAndPrune, |
| 1120 OnSetHistoryLengthAndPrune) | 1110 OnSetHistoryLengthAndPrune) |
| 1121 IPC_MESSAGE_HANDLER(ViewMsg_EnableViewSourceMode, OnEnableViewSourceMode) | 1111 IPC_MESSAGE_HANDLER(ViewMsg_EnableViewSourceMode, OnEnableViewSourceMode) |
| 1122 IPC_MESSAGE_HANDLER(ViewMsg_SetAccessibilityMode, OnSetAccessibilityMode) | |
| 1123 IPC_MESSAGE_HANDLER(ViewMsg_DisownOpener, OnDisownOpener) | 1112 IPC_MESSAGE_HANDLER(ViewMsg_DisownOpener, OnDisownOpener) |
| 1124 IPC_MESSAGE_HANDLER(ViewMsg_ReleaseDisambiguationPopupBitmap, | 1113 IPC_MESSAGE_HANDLER(ViewMsg_ReleaseDisambiguationPopupBitmap, |
| 1125 OnReleaseDisambiguationPopupBitmap) | 1114 OnReleaseDisambiguationPopupBitmap) |
| 1126 IPC_MESSAGE_HANDLER(ViewMsg_WindowSnapshotCompleted, | 1115 IPC_MESSAGE_HANDLER(ViewMsg_WindowSnapshotCompleted, |
| 1127 OnWindowSnapshotCompleted) | 1116 OnWindowSnapshotCompleted) |
| 1128 #if defined(OS_ANDROID) | 1117 #if defined(OS_ANDROID) |
| 1129 IPC_MESSAGE_HANDLER(InputMsg_ActivateNearestFindResult, | 1118 IPC_MESSAGE_HANDLER(InputMsg_ActivateNearestFindResult, |
| 1130 OnActivateNearestFindResult) | 1119 OnActivateNearestFindResult) |
| 1131 IPC_MESSAGE_HANDLER(ViewMsg_FindMatchRects, OnFindMatchRects) | 1120 IPC_MESSAGE_HANDLER(ViewMsg_FindMatchRects, OnFindMatchRects) |
| 1132 IPC_MESSAGE_HANDLER(ViewMsg_SelectPopupMenuItems, OnSelectPopupMenuItems) | 1121 IPC_MESSAGE_HANDLER(ViewMsg_SelectPopupMenuItems, OnSelectPopupMenuItems) |
| (...skipping 325 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1458 routing_id, | 1447 routing_id, |
| 1459 main_frame_routing_id, | 1448 main_frame_routing_id, |
| 1460 surface_id, | 1449 surface_id, |
| 1461 cloned_session_storage_namespace_id, | 1450 cloned_session_storage_namespace_id, |
| 1462 base::string16(), // WebCore will take care of setting the correct name. | 1451 base::string16(), // WebCore will take care of setting the correct name. |
| 1463 true, // is_renderer_created | 1452 true, // is_renderer_created |
| 1464 false, // swapped_out | 1453 false, // swapped_out |
| 1465 params.disposition == NEW_BACKGROUND_TAB, // hidden | 1454 params.disposition == NEW_BACKGROUND_TAB, // hidden |
| 1466 never_visible, | 1455 never_visible, |
| 1467 1, // next_page_id | 1456 1, // next_page_id |
| 1468 screen_info_, | 1457 screen_info_); |
| 1469 accessibility_mode_); | |
| 1470 view->opened_by_user_gesture_ = params.user_gesture; | 1458 view->opened_by_user_gesture_ = params.user_gesture; |
| 1471 | 1459 |
| 1472 // Record whether the creator frame is trying to suppress the opener field. | 1460 // Record whether the creator frame is trying to suppress the opener field. |
| 1473 view->opener_suppressed_ = params.opener_suppressed; | 1461 view->opener_suppressed_ = params.opener_suppressed; |
| 1474 | 1462 |
| 1475 return view->webview(); | 1463 return view->webview(); |
| 1476 } | 1464 } |
| 1477 | 1465 |
| 1478 WebWidget* RenderViewImpl::createPopupMenu(blink::WebPopupType popup_type) { | 1466 WebWidget* RenderViewImpl::createPopupMenu(blink::WebPopupType popup_type) { |
| 1479 RenderWidget* widget = | 1467 RenderWidget* widget = |
| (...skipping 287 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1767 void RenderViewImpl::focusPrevious() { | 1755 void RenderViewImpl::focusPrevious() { |
| 1768 Send(new ViewHostMsg_TakeFocus(routing_id_, true)); | 1756 Send(new ViewHostMsg_TakeFocus(routing_id_, true)); |
| 1769 } | 1757 } |
| 1770 | 1758 |
| 1771 void RenderViewImpl::focusedNodeChanged(const WebNode& node) { | 1759 void RenderViewImpl::focusedNodeChanged(const WebNode& node) { |
| 1772 has_scrolled_focused_editable_node_into_rect_ = false; | 1760 has_scrolled_focused_editable_node_into_rect_ = false; |
| 1773 | 1761 |
| 1774 Send(new ViewHostMsg_FocusedNodeChanged(routing_id_, IsEditableNode(node))); | 1762 Send(new ViewHostMsg_FocusedNodeChanged(routing_id_, IsEditableNode(node))); |
| 1775 | 1763 |
| 1776 FOR_EACH_OBSERVER(RenderViewObserver, observers_, FocusedNodeChanged(node)); | 1764 FOR_EACH_OBSERVER(RenderViewObserver, observers_, FocusedNodeChanged(node)); |
| 1765 |
| 1766 // TODO(dmazzoni): this should be part of RenderFrameObserver. |
| 1767 main_render_frame()->FocusedNodeChanged(node); |
| 1777 } | 1768 } |
| 1778 | 1769 |
| 1779 void RenderViewImpl::numberOfWheelEventHandlersChanged(unsigned num_handlers) { | 1770 void RenderViewImpl::numberOfWheelEventHandlersChanged(unsigned num_handlers) { |
| 1780 Send(new ViewHostMsg_DidChangeNumWheelEvents(routing_id_, num_handlers)); | 1771 Send(new ViewHostMsg_DidChangeNumWheelEvents(routing_id_, num_handlers)); |
| 1781 } | 1772 } |
| 1782 | 1773 |
| 1783 void RenderViewImpl::didUpdateLayout() { | 1774 void RenderViewImpl::didUpdateLayout() { |
| 1784 FOR_EACH_OBSERVER(RenderViewObserver, observers_, DidUpdateLayout()); | 1775 FOR_EACH_OBSERVER(RenderViewObserver, observers_, DidUpdateLayout()); |
| 1785 | 1776 |
| 1786 // We don't always want to set up a timer, only if we've been put in that | 1777 // We don't always want to set up a timer, only if we've been put in that |
| (...skipping 16 matching lines...) Expand all Loading... |
| 1803 int RenderViewImpl::historyBackListCount() { | 1794 int RenderViewImpl::historyBackListCount() { |
| 1804 return history_list_offset_ < 0 ? 0 : history_list_offset_; | 1795 return history_list_offset_ < 0 ? 0 : history_list_offset_; |
| 1805 } | 1796 } |
| 1806 | 1797 |
| 1807 int RenderViewImpl::historyForwardListCount() { | 1798 int RenderViewImpl::historyForwardListCount() { |
| 1808 return history_list_length_ - historyBackListCount() - 1; | 1799 return history_list_length_ - historyBackListCount() - 1; |
| 1809 } | 1800 } |
| 1810 | 1801 |
| 1811 void RenderViewImpl::postAccessibilityEvent( | 1802 void RenderViewImpl::postAccessibilityEvent( |
| 1812 const WebAXObject& obj, blink::WebAXEvent event) { | 1803 const WebAXObject& obj, blink::WebAXEvent event) { |
| 1813 if (renderer_accessibility_) { | 1804 main_render_frame()->HandleWebAccessibilityEvent(obj, event); |
| 1814 renderer_accessibility_->HandleWebAccessibilityEvent(obj, event); | |
| 1815 } | |
| 1816 } | 1805 } |
| 1817 | 1806 |
| 1818 void RenderViewImpl::didUpdateInspectorSetting(const WebString& key, | 1807 void RenderViewImpl::didUpdateInspectorSetting(const WebString& key, |
| 1819 const WebString& value) { | 1808 const WebString& value) { |
| 1820 Send(new ViewHostMsg_UpdateInspectorSetting(routing_id_, | 1809 Send(new ViewHostMsg_UpdateInspectorSetting(routing_id_, |
| 1821 key.utf8(), | 1810 key.utf8(), |
| 1822 value.utf8())); | 1811 value.utf8())); |
| 1823 } | 1812 } |
| 1824 | 1813 |
| 1825 // blink::WebWidgetClient ---------------------------------------------------- | 1814 // blink::WebWidgetClient ---------------------------------------------------- |
| (...skipping 1365 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3191 | 3180 |
| 3192 void RenderViewImpl::OnSetBackground(const SkBitmap& background) { | 3181 void RenderViewImpl::OnSetBackground(const SkBitmap& background) { |
| 3193 if (webview()) | 3182 if (webview()) |
| 3194 webview()->setIsTransparent(!background.empty()); | 3183 webview()->setIsTransparent(!background.empty()); |
| 3195 if (compositor_) | 3184 if (compositor_) |
| 3196 compositor_->setHasTransparentBackground(!background.empty()); | 3185 compositor_->setHasTransparentBackground(!background.empty()); |
| 3197 | 3186 |
| 3198 SetBackground(background); | 3187 SetBackground(background); |
| 3199 } | 3188 } |
| 3200 | 3189 |
| 3201 void RenderViewImpl::OnSetAccessibilityMode(AccessibilityMode new_mode) { | |
| 3202 if (accessibility_mode_ == new_mode) | |
| 3203 return; | |
| 3204 accessibility_mode_ = new_mode; | |
| 3205 if (renderer_accessibility_) { | |
| 3206 delete renderer_accessibility_; | |
| 3207 renderer_accessibility_ = NULL; | |
| 3208 } | |
| 3209 if (accessibility_mode_ == AccessibilityModeOff) | |
| 3210 return; | |
| 3211 | |
| 3212 if (accessibility_mode_ & AccessibilityModeFlagFullTree) | |
| 3213 renderer_accessibility_ = new RendererAccessibilityComplete(this); | |
| 3214 #if !defined(OS_ANDROID) | |
| 3215 else | |
| 3216 renderer_accessibility_ = new RendererAccessibilityFocusOnly(this); | |
| 3217 #endif | |
| 3218 } | |
| 3219 | |
| 3220 void RenderViewImpl::OnSetActive(bool active) { | 3190 void RenderViewImpl::OnSetActive(bool active) { |
| 3221 if (webview()) | 3191 if (webview()) |
| 3222 webview()->setIsActive(active); | 3192 webview()->setIsActive(active); |
| 3223 | 3193 |
| 3224 #if defined(ENABLE_PLUGINS) && defined(OS_MACOSX) | 3194 #if defined(ENABLE_PLUGINS) && defined(OS_MACOSX) |
| 3225 std::set<WebPluginDelegateProxy*>::iterator plugin_it; | 3195 std::set<WebPluginDelegateProxy*>::iterator plugin_it; |
| 3226 for (plugin_it = plugin_delegates_.begin(); | 3196 for (plugin_it = plugin_delegates_.begin(); |
| 3227 plugin_it != plugin_delegates_.end(); ++plugin_it) { | 3197 plugin_it != plugin_delegates_.end(); ++plugin_it) { |
| 3228 (*plugin_it)->SetWindowFocus(active); | 3198 (*plugin_it)->SetWindowFocus(active); |
| 3229 } | 3199 } |
| (...skipping 667 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3897 if (main_frame && main_frame->opener()) | 3867 if (main_frame && main_frame->opener()) |
| 3898 main_frame->setOpener(NULL); | 3868 main_frame->setOpener(NULL); |
| 3899 } | 3869 } |
| 3900 | 3870 |
| 3901 #if defined(OS_ANDROID) | 3871 #if defined(OS_ANDROID) |
| 3902 bool RenderViewImpl::didTapMultipleTargets( | 3872 bool RenderViewImpl::didTapMultipleTargets( |
| 3903 const blink::WebGestureEvent& event, | 3873 const blink::WebGestureEvent& event, |
| 3904 const WebVector<WebRect>& target_rects) { | 3874 const WebVector<WebRect>& target_rects) { |
| 3905 // Never show a disambiguation popup when accessibility is enabled, | 3875 // Never show a disambiguation popup when accessibility is enabled, |
| 3906 // as this interferes with "touch exploration". | 3876 // as this interferes with "touch exploration". |
| 3907 bool matchesAccessibilityModeComplete = | 3877 AccessibilityMode accessibility_mode = |
| 3908 (accessibility_mode_ & AccessibilityModeComplete) == | 3878 main_render_frame()->accessibility_mode(); |
| 3909 AccessibilityModeComplete; | 3879 bool matches_accessibility_mode_complete = |
| 3910 if (matchesAccessibilityModeComplete) | 3880 (accessibility_mode & AccessibilityModeComplete) == |
| 3881 AccessibilityModeComplete; |
| 3882 if (matches_accessibility_mode_complete) |
| 3911 return false; | 3883 return false; |
| 3912 | 3884 |
| 3913 gfx::Rect finger_rect( | 3885 gfx::Rect finger_rect( |
| 3914 event.x - event.data.tap.width / 2, event.y - event.data.tap.height / 2, | 3886 event.x - event.data.tap.width / 2, event.y - event.data.tap.height / 2, |
| 3915 event.data.tap.width, event.data.tap.height); | 3887 event.data.tap.width, event.data.tap.height); |
| 3916 gfx::Rect zoom_rect; | 3888 gfx::Rect zoom_rect; |
| 3917 float new_total_scale = | 3889 float new_total_scale = |
| 3918 DisambiguationPopupHelper::ComputeZoomAreaAndScaleFactor( | 3890 DisambiguationPopupHelper::ComputeZoomAreaAndScaleFactor( |
| 3919 finger_rect, target_rects, GetSize(), | 3891 finger_rect, target_rects, GetSize(), |
| 3920 gfx::Rect(webview()->mainFrame()->visibleContentRect()).size(), | 3892 gfx::Rect(webview()->mainFrame()->visibleContentRect()).size(), |
| (...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4065 std::vector<gfx::Size> sizes; | 4037 std::vector<gfx::Size> sizes; |
| 4066 ConvertToFaviconSizes(icon_urls[i].sizes(), &sizes); | 4038 ConvertToFaviconSizes(icon_urls[i].sizes(), &sizes); |
| 4067 if (!url.isEmpty()) | 4039 if (!url.isEmpty()) |
| 4068 urls.push_back( | 4040 urls.push_back( |
| 4069 FaviconURL(url, ToFaviconType(icon_urls[i].iconType()), sizes)); | 4041 FaviconURL(url, ToFaviconType(icon_urls[i].iconType()), sizes)); |
| 4070 } | 4042 } |
| 4071 SendUpdateFaviconURL(urls); | 4043 SendUpdateFaviconURL(urls); |
| 4072 } | 4044 } |
| 4073 | 4045 |
| 4074 } // namespace content | 4046 } // namespace content |
| OLD | NEW |