| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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_frame_impl.h" | 5 #include "content/renderer/render_frame_impl.h" |
| 6 | 6 |
| 7 #include <map> | 7 #include <map> |
| 8 #include <string> | 8 #include <string> |
| 9 #include <utility> | 9 #include <utility> |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 89 #include "content/renderer/context_menu_params_builder.h" | 89 #include "content/renderer/context_menu_params_builder.h" |
| 90 #include "content/renderer/devtools/devtools_agent.h" | 90 #include "content/renderer/devtools/devtools_agent.h" |
| 91 #include "content/renderer/dom_automation_controller.h" | 91 #include "content/renderer/dom_automation_controller.h" |
| 92 #include "content/renderer/effective_connection_type_helper.h" | 92 #include "content/renderer/effective_connection_type_helper.h" |
| 93 #include "content/renderer/external_popup_menu.h" | 93 #include "content/renderer/external_popup_menu.h" |
| 94 #include "content/renderer/gpu/gpu_benchmarking_extension.h" | 94 #include "content/renderer/gpu/gpu_benchmarking_extension.h" |
| 95 #include "content/renderer/history_controller.h" | 95 #include "content/renderer/history_controller.h" |
| 96 #include "content/renderer/history_serialization.h" | 96 #include "content/renderer/history_serialization.h" |
| 97 #include "content/renderer/image_downloader/image_downloader_impl.h" | 97 #include "content/renderer/image_downloader/image_downloader_impl.h" |
| 98 #include "content/renderer/ime_event_guard.h" | 98 #include "content/renderer/ime_event_guard.h" |
| 99 #include "content/renderer/input/input_handler_manager.h" |
| 99 #include "content/renderer/internal_document_state_data.h" | 100 #include "content/renderer/internal_document_state_data.h" |
| 100 #include "content/renderer/manifest/manifest_manager.h" | 101 #include "content/renderer/manifest/manifest_manager.h" |
| 101 #include "content/renderer/media/audio_device_factory.h" | 102 #include "content/renderer/media/audio_device_factory.h" |
| 102 #include "content/renderer/media/media_permission_dispatcher.h" | 103 #include "content/renderer/media/media_permission_dispatcher.h" |
| 103 #include "content/renderer/media/media_stream_dispatcher.h" | 104 #include "content/renderer/media/media_stream_dispatcher.h" |
| 104 #include "content/renderer/media/media_stream_renderer_factory_impl.h" | 105 #include "content/renderer/media/media_stream_renderer_factory_impl.h" |
| 105 #include "content/renderer/media/midi_dispatcher.h" | 106 #include "content/renderer/media/midi_dispatcher.h" |
| 106 #include "content/renderer/media/render_media_log.h" | 107 #include "content/renderer/media/render_media_log.h" |
| 107 #include "content/renderer/media/renderer_webmediaplayer_delegate.h" | 108 #include "content/renderer/media/renderer_webmediaplayer_delegate.h" |
| 108 #include "content/renderer/media/user_media_client_impl.h" | 109 #include "content/renderer/media/user_media_client_impl.h" |
| (...skipping 1008 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1117 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, RenderFrameGone()); | 1118 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, RenderFrameGone()); |
| 1118 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, OnDestruct()); | 1119 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, OnDestruct()); |
| 1119 | 1120 |
| 1120 base::trace_event::TraceLog::GetInstance()->RemoveProcessLabel(routing_id_); | 1121 base::trace_event::TraceLog::GetInstance()->RemoveProcessLabel(routing_id_); |
| 1121 | 1122 |
| 1122 #if defined(VIDEO_HOLE) | 1123 #if defined(VIDEO_HOLE) |
| 1123 if (contains_media_player_) | 1124 if (contains_media_player_) |
| 1124 render_view_->UnregisterVideoHoleFrame(this); | 1125 render_view_->UnregisterVideoHoleFrame(this); |
| 1125 #endif | 1126 #endif |
| 1126 | 1127 |
| 1128 // Unregister from InputHandlerManager. render_thread may be NULL in tests. |
| 1129 RenderThreadImpl* render_thread = RenderThreadImpl::current(); |
| 1130 InputHandlerManager* input_handler_manager = |
| 1131 render_thread ? render_thread->input_handler_manager() : nullptr; |
| 1132 if (input_handler_manager) |
| 1133 input_handler_manager->UnregisterRoutingID(GetRoutingID()); |
| 1134 |
| 1127 if (is_main_frame_) { | 1135 if (is_main_frame_) { |
| 1128 // Ensure the RenderView doesn't point to this object, once it is destroyed. | 1136 // Ensure the RenderView doesn't point to this object, once it is destroyed. |
| 1129 // TODO(nasko): Add a check that the |main_render_frame_| of |render_view_| | 1137 // TODO(nasko): Add a check that the |main_render_frame_| of |render_view_| |
| 1130 // is |this|, once the object is no longer leaked. | 1138 // is |this|, once the object is no longer leaked. |
| 1131 // See https://crbug.com/464764. | 1139 // See https://crbug.com/464764. |
| 1132 render_view_->main_render_frame_ = nullptr; | 1140 render_view_->main_render_frame_ = nullptr; |
| 1133 } | 1141 } |
| 1134 | 1142 |
| 1135 render_view_->UnregisterRenderFrame(this); | 1143 render_view_->UnregisterRenderFrame(this); |
| 1136 g_routing_id_frame_map.Get().erase(routing_id_); | 1144 g_routing_id_frame_map.Get().erase(routing_id_); |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1177 // DevToolsAgent is a RenderFrameObserver, and will destruct itself | 1185 // DevToolsAgent is a RenderFrameObserver, and will destruct itself |
| 1178 // when |this| is deleted. | 1186 // when |this| is deleted. |
| 1179 devtools_agent_ = new DevToolsAgent(this); | 1187 devtools_agent_ = new DevToolsAgent(this); |
| 1180 } | 1188 } |
| 1181 | 1189 |
| 1182 RegisterMojoServices(); | 1190 RegisterMojoServices(); |
| 1183 | 1191 |
| 1184 // We delay calling this until we have the WebFrame so that any observer or | 1192 // We delay calling this until we have the WebFrame so that any observer or |
| 1185 // embedder can call GetWebFrame on any RenderFrame. | 1193 // embedder can call GetWebFrame on any RenderFrame. |
| 1186 GetContentClient()->renderer()->RenderFrameCreated(this); | 1194 GetContentClient()->renderer()->RenderFrameCreated(this); |
| 1195 |
| 1196 RenderThreadImpl* render_thread = RenderThreadImpl::current(); |
| 1197 // render_thread may be NULL in tests. |
| 1198 InputHandlerManager* input_handler_manager = |
| 1199 render_thread ? render_thread->input_handler_manager() : nullptr; |
| 1200 if (input_handler_manager) { |
| 1201 DCHECK(render_view_->HasAddedInputHandler()); |
| 1202 input_handler_manager->RegisterRoutingID(GetRoutingID()); |
| 1203 } |
| 1187 } | 1204 } |
| 1188 | 1205 |
| 1189 void RenderFrameImpl::InitializeBlameContext(RenderFrameImpl* parent_frame) { | 1206 void RenderFrameImpl::InitializeBlameContext(RenderFrameImpl* parent_frame) { |
| 1190 DCHECK(!blame_context_); | 1207 DCHECK(!blame_context_); |
| 1191 blame_context_ = new FrameBlameContext(this, parent_frame); | 1208 blame_context_ = new FrameBlameContext(this, parent_frame); |
| 1192 blame_context_->Initialize(); | 1209 blame_context_->Initialize(); |
| 1193 } | 1210 } |
| 1194 | 1211 |
| 1195 RenderWidget* RenderFrameImpl::GetRenderWidget() { | 1212 RenderWidget* RenderFrameImpl::GetRenderWidget() { |
| 1196 RenderFrameImpl* local_root = | 1213 RenderFrameImpl* local_root = |
| (...skipping 257 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1454 OnAdjustSelectionByCharacterOffset) | 1471 OnAdjustSelectionByCharacterOffset) |
| 1455 IPC_MESSAGE_HANDLER(InputMsg_Unselect, OnUnselect) | 1472 IPC_MESSAGE_HANDLER(InputMsg_Unselect, OnUnselect) |
| 1456 IPC_MESSAGE_HANDLER(InputMsg_MoveRangeSelectionExtent, | 1473 IPC_MESSAGE_HANDLER(InputMsg_MoveRangeSelectionExtent, |
| 1457 OnMoveRangeSelectionExtent) | 1474 OnMoveRangeSelectionExtent) |
| 1458 IPC_MESSAGE_HANDLER(InputMsg_Replace, OnReplace) | 1475 IPC_MESSAGE_HANDLER(InputMsg_Replace, OnReplace) |
| 1459 IPC_MESSAGE_HANDLER(InputMsg_ReplaceMisspelling, OnReplaceMisspelling) | 1476 IPC_MESSAGE_HANDLER(InputMsg_ReplaceMisspelling, OnReplaceMisspelling) |
| 1460 IPC_MESSAGE_HANDLER(InputMsg_ExtendSelectionAndDelete, | 1477 IPC_MESSAGE_HANDLER(InputMsg_ExtendSelectionAndDelete, |
| 1461 OnExtendSelectionAndDelete) | 1478 OnExtendSelectionAndDelete) |
| 1462 IPC_MESSAGE_HANDLER(InputMsg_SetCompositionFromExistingText, | 1479 IPC_MESSAGE_HANDLER(InputMsg_SetCompositionFromExistingText, |
| 1463 OnSetCompositionFromExistingText) | 1480 OnSetCompositionFromExistingText) |
| 1481 IPC_MESSAGE_HANDLER(InputMsg_SetEditableSelectionOffsets, |
| 1482 OnSetEditableSelectionOffsets) |
| 1464 IPC_MESSAGE_HANDLER(InputMsg_ExecuteNoValueEditCommand, | 1483 IPC_MESSAGE_HANDLER(InputMsg_ExecuteNoValueEditCommand, |
| 1465 OnExecuteNoValueEditCommand) | 1484 OnExecuteNoValueEditCommand) |
| 1466 IPC_MESSAGE_HANDLER(FrameMsg_CSSInsertRequest, OnCSSInsertRequest) | 1485 IPC_MESSAGE_HANDLER(FrameMsg_CSSInsertRequest, OnCSSInsertRequest) |
| 1467 IPC_MESSAGE_HANDLER(FrameMsg_AddMessageToConsole, OnAddMessageToConsole) | 1486 IPC_MESSAGE_HANDLER(FrameMsg_AddMessageToConsole, OnAddMessageToConsole) |
| 1468 IPC_MESSAGE_HANDLER(FrameMsg_JavaScriptExecuteRequest, | 1487 IPC_MESSAGE_HANDLER(FrameMsg_JavaScriptExecuteRequest, |
| 1469 OnJavaScriptExecuteRequest) | 1488 OnJavaScriptExecuteRequest) |
| 1470 IPC_MESSAGE_HANDLER(FrameMsg_JavaScriptExecuteRequestForTests, | 1489 IPC_MESSAGE_HANDLER(FrameMsg_JavaScriptExecuteRequestForTests, |
| 1471 OnJavaScriptExecuteRequestForTests) | 1490 OnJavaScriptExecuteRequestForTests) |
| 1472 IPC_MESSAGE_HANDLER(FrameMsg_JavaScriptExecuteRequestInIsolatedWorld, | 1491 IPC_MESSAGE_HANDLER(FrameMsg_JavaScriptExecuteRequestInIsolatedWorld, |
| 1473 OnJavaScriptExecuteRequestInIsolatedWorld) | 1492 OnJavaScriptExecuteRequestInIsolatedWorld) |
| 1474 IPC_MESSAGE_HANDLER(FrameMsg_VisualStateRequest, | 1493 IPC_MESSAGE_HANDLER(FrameMsg_VisualStateRequest, |
| 1475 OnVisualStateRequest) | 1494 OnVisualStateRequest) |
| 1476 IPC_MESSAGE_HANDLER(FrameMsg_SetEditableSelectionOffsets, | |
| 1477 OnSetEditableSelectionOffsets) | |
| 1478 IPC_MESSAGE_HANDLER(FrameMsg_Reload, OnReload) | 1495 IPC_MESSAGE_HANDLER(FrameMsg_Reload, OnReload) |
| 1479 IPC_MESSAGE_HANDLER(FrameMsg_ReloadLoFiImages, OnReloadLoFiImages) | 1496 IPC_MESSAGE_HANDLER(FrameMsg_ReloadLoFiImages, OnReloadLoFiImages) |
| 1480 IPC_MESSAGE_HANDLER(FrameMsg_TextSurroundingSelectionRequest, | 1497 IPC_MESSAGE_HANDLER(FrameMsg_TextSurroundingSelectionRequest, |
| 1481 OnTextSurroundingSelectionRequest) | 1498 OnTextSurroundingSelectionRequest) |
| 1482 IPC_MESSAGE_HANDLER(FrameMsg_SetAccessibilityMode, | 1499 IPC_MESSAGE_HANDLER(FrameMsg_SetAccessibilityMode, |
| 1483 OnSetAccessibilityMode) | 1500 OnSetAccessibilityMode) |
| 1484 IPC_MESSAGE_HANDLER(AccessibilityMsg_SnapshotTree, | 1501 IPC_MESSAGE_HANDLER(AccessibilityMsg_SnapshotTree, |
| 1485 OnSnapshotAccessibilityTree) | 1502 OnSnapshotAccessibilityTree) |
| 1486 IPC_MESSAGE_HANDLER(FrameMsg_UpdateOpener, OnUpdateOpener) | 1503 IPC_MESSAGE_HANDLER(FrameMsg_UpdateOpener, OnUpdateOpener) |
| 1487 IPC_MESSAGE_HANDLER(FrameMsg_CommitNavigation, OnCommitNavigation) | 1504 IPC_MESSAGE_HANDLER(FrameMsg_CommitNavigation, OnCommitNavigation) |
| (...skipping 4616 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6104 // event target. Potentially a Pepper plugin will receive the event. | 6121 // event target. Potentially a Pepper plugin will receive the event. |
| 6105 // In order to tell whether a plugin gets the last mouse event and which it | 6122 // In order to tell whether a plugin gets the last mouse event and which it |
| 6106 // is, we set |pepper_last_mouse_event_target_| to null here. If a plugin gets | 6123 // is, we set |pepper_last_mouse_event_target_| to null here. If a plugin gets |
| 6107 // the event, it will notify us via DidReceiveMouseEvent() and set itself as | 6124 // the event, it will notify us via DidReceiveMouseEvent() and set itself as |
| 6108 // |pepper_last_mouse_event_target_|. | 6125 // |pepper_last_mouse_event_target_|. |
| 6109 pepper_last_mouse_event_target_ = nullptr; | 6126 pepper_last_mouse_event_target_ = nullptr; |
| 6110 #endif | 6127 #endif |
| 6111 } | 6128 } |
| 6112 | 6129 |
| 6113 } // namespace content | 6130 } // namespace content |
| OLD | NEW |