| 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 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 91 #include "content/renderer/context_menu_params_builder.h" | 91 #include "content/renderer/context_menu_params_builder.h" |
| 92 #include "content/renderer/devtools/devtools_agent.h" | 92 #include "content/renderer/devtools/devtools_agent.h" |
| 93 #include "content/renderer/dom_automation_controller.h" | 93 #include "content/renderer/dom_automation_controller.h" |
| 94 #include "content/renderer/effective_connection_type_helper.h" | 94 #include "content/renderer/effective_connection_type_helper.h" |
| 95 #include "content/renderer/external_popup_menu.h" | 95 #include "content/renderer/external_popup_menu.h" |
| 96 #include "content/renderer/gpu/gpu_benchmarking_extension.h" | 96 #include "content/renderer/gpu/gpu_benchmarking_extension.h" |
| 97 #include "content/renderer/history_controller.h" | 97 #include "content/renderer/history_controller.h" |
| 98 #include "content/renderer/history_serialization.h" | 98 #include "content/renderer/history_serialization.h" |
| 99 #include "content/renderer/image_downloader/image_downloader_impl.h" | 99 #include "content/renderer/image_downloader/image_downloader_impl.h" |
| 100 #include "content/renderer/ime_event_guard.h" | 100 #include "content/renderer/ime_event_guard.h" |
| 101 #include "content/renderer/input/input_handler_manager.h" |
| 101 #include "content/renderer/internal_document_state_data.h" | 102 #include "content/renderer/internal_document_state_data.h" |
| 102 #include "content/renderer/manifest/manifest_manager.h" | 103 #include "content/renderer/manifest/manifest_manager.h" |
| 103 #include "content/renderer/media/audio_device_factory.h" | 104 #include "content/renderer/media/audio_device_factory.h" |
| 104 #include "content/renderer/media/media_permission_dispatcher.h" | 105 #include "content/renderer/media/media_permission_dispatcher.h" |
| 105 #include "content/renderer/media/media_stream_dispatcher.h" | 106 #include "content/renderer/media/media_stream_dispatcher.h" |
| 106 #include "content/renderer/media/media_stream_renderer_factory_impl.h" | 107 #include "content/renderer/media/media_stream_renderer_factory_impl.h" |
| 107 #include "content/renderer/media/midi_dispatcher.h" | 108 #include "content/renderer/media/midi_dispatcher.h" |
| 108 #include "content/renderer/media/render_media_log.h" | 109 #include "content/renderer/media/render_media_log.h" |
| 109 #include "content/renderer/media/renderer_webmediaplayer_delegate.h" | 110 #include "content/renderer/media/renderer_webmediaplayer_delegate.h" |
| 110 #include "content/renderer/media/user_media_client_impl.h" | 111 #include "content/renderer/media/user_media_client_impl.h" |
| (...skipping 1026 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1137 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, RenderFrameGone()); | 1138 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, RenderFrameGone()); |
| 1138 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, OnDestruct()); | 1139 FOR_EACH_OBSERVER(RenderFrameObserver, observers_, OnDestruct()); |
| 1139 | 1140 |
| 1140 base::trace_event::TraceLog::GetInstance()->RemoveProcessLabel(routing_id_); | 1141 base::trace_event::TraceLog::GetInstance()->RemoveProcessLabel(routing_id_); |
| 1141 | 1142 |
| 1142 #if defined(VIDEO_HOLE) | 1143 #if defined(VIDEO_HOLE) |
| 1143 if (contains_media_player_) | 1144 if (contains_media_player_) |
| 1144 render_view_->UnregisterVideoHoleFrame(this); | 1145 render_view_->UnregisterVideoHoleFrame(this); |
| 1145 #endif | 1146 #endif |
| 1146 | 1147 |
| 1148 // Unregister from InputHandlerManager. render_thread may be NULL in tests. |
| 1149 RenderThreadImpl* render_thread = RenderThreadImpl::current(); |
| 1150 InputHandlerManager* input_handler_manager = |
| 1151 render_thread ? render_thread->input_handler_manager() : nullptr; |
| 1152 if (input_handler_manager) |
| 1153 input_handler_manager->UnregisterRoutingID(GetRoutingID()); |
| 1154 |
| 1147 if (is_main_frame_) { | 1155 if (is_main_frame_) { |
| 1148 // Ensure the RenderView doesn't point to this object, once it is destroyed. | 1156 // Ensure the RenderView doesn't point to this object, once it is destroyed. |
| 1149 // TODO(nasko): Add a check that the |main_render_frame_| of |render_view_| | 1157 // TODO(nasko): Add a check that the |main_render_frame_| of |render_view_| |
| 1150 // is |this|, once the object is no longer leaked. | 1158 // is |this|, once the object is no longer leaked. |
| 1151 // See https://crbug.com/464764. | 1159 // See https://crbug.com/464764. |
| 1152 render_view_->main_render_frame_ = nullptr; | 1160 render_view_->main_render_frame_ = nullptr; |
| 1153 } | 1161 } |
| 1154 | 1162 |
| 1155 render_view_->UnregisterRenderFrame(this); | 1163 render_view_->UnregisterRenderFrame(this); |
| 1156 g_routing_id_frame_map.Get().erase(routing_id_); | 1164 g_routing_id_frame_map.Get().erase(routing_id_); |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1197 // DevToolsAgent is a RenderFrameObserver, and will destruct itself | 1205 // DevToolsAgent is a RenderFrameObserver, and will destruct itself |
| 1198 // when |this| is deleted. | 1206 // when |this| is deleted. |
| 1199 devtools_agent_ = new DevToolsAgent(this); | 1207 devtools_agent_ = new DevToolsAgent(this); |
| 1200 } | 1208 } |
| 1201 | 1209 |
| 1202 RegisterMojoServices(); | 1210 RegisterMojoServices(); |
| 1203 | 1211 |
| 1204 // We delay calling this until we have the WebFrame so that any observer or | 1212 // We delay calling this until we have the WebFrame so that any observer or |
| 1205 // embedder can call GetWebFrame on any RenderFrame. | 1213 // embedder can call GetWebFrame on any RenderFrame. |
| 1206 GetContentClient()->renderer()->RenderFrameCreated(this); | 1214 GetContentClient()->renderer()->RenderFrameCreated(this); |
| 1215 |
| 1216 RenderThreadImpl* render_thread = RenderThreadImpl::current(); |
| 1217 // render_thread may be NULL in tests. |
| 1218 InputHandlerManager* input_handler_manager = |
| 1219 render_thread ? render_thread->input_handler_manager() : nullptr; |
| 1220 if (input_handler_manager) { |
| 1221 DCHECK(render_view_->HasAddedInputHandler()); |
| 1222 input_handler_manager->RegisterRoutingID(GetRoutingID()); |
| 1223 } |
| 1207 } | 1224 } |
| 1208 | 1225 |
| 1209 void RenderFrameImpl::InitializeBlameContext(RenderFrameImpl* parent_frame) { | 1226 void RenderFrameImpl::InitializeBlameContext(RenderFrameImpl* parent_frame) { |
| 1210 DCHECK(!blame_context_); | 1227 DCHECK(!blame_context_); |
| 1211 blame_context_ = new FrameBlameContext(this, parent_frame); | 1228 blame_context_ = new FrameBlameContext(this, parent_frame); |
| 1212 blame_context_->Initialize(); | 1229 blame_context_->Initialize(); |
| 1213 } | 1230 } |
| 1214 | 1231 |
| 1215 RenderWidget* RenderFrameImpl::GetRenderWidget() { | 1232 RenderWidget* RenderFrameImpl::GetRenderWidget() { |
| 1216 RenderFrameImpl* local_root = | 1233 RenderFrameImpl* local_root = |
| (...skipping 257 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1474 OnAdjustSelectionByCharacterOffset) | 1491 OnAdjustSelectionByCharacterOffset) |
| 1475 IPC_MESSAGE_HANDLER(InputMsg_Unselect, OnUnselect) | 1492 IPC_MESSAGE_HANDLER(InputMsg_Unselect, OnUnselect) |
| 1476 IPC_MESSAGE_HANDLER(InputMsg_MoveRangeSelectionExtent, | 1493 IPC_MESSAGE_HANDLER(InputMsg_MoveRangeSelectionExtent, |
| 1477 OnMoveRangeSelectionExtent) | 1494 OnMoveRangeSelectionExtent) |
| 1478 IPC_MESSAGE_HANDLER(InputMsg_Replace, OnReplace) | 1495 IPC_MESSAGE_HANDLER(InputMsg_Replace, OnReplace) |
| 1479 IPC_MESSAGE_HANDLER(InputMsg_ReplaceMisspelling, OnReplaceMisspelling) | 1496 IPC_MESSAGE_HANDLER(InputMsg_ReplaceMisspelling, OnReplaceMisspelling) |
| 1480 IPC_MESSAGE_HANDLER(InputMsg_ExtendSelectionAndDelete, | 1497 IPC_MESSAGE_HANDLER(InputMsg_ExtendSelectionAndDelete, |
| 1481 OnExtendSelectionAndDelete) | 1498 OnExtendSelectionAndDelete) |
| 1482 IPC_MESSAGE_HANDLER(InputMsg_SetCompositionFromExistingText, | 1499 IPC_MESSAGE_HANDLER(InputMsg_SetCompositionFromExistingText, |
| 1483 OnSetCompositionFromExistingText) | 1500 OnSetCompositionFromExistingText) |
| 1501 IPC_MESSAGE_HANDLER(InputMsg_SetEditableSelectionOffsets, |
| 1502 OnSetEditableSelectionOffsets) |
| 1484 IPC_MESSAGE_HANDLER(InputMsg_ExecuteNoValueEditCommand, | 1503 IPC_MESSAGE_HANDLER(InputMsg_ExecuteNoValueEditCommand, |
| 1485 OnExecuteNoValueEditCommand) | 1504 OnExecuteNoValueEditCommand) |
| 1486 IPC_MESSAGE_HANDLER(FrameMsg_CSSInsertRequest, OnCSSInsertRequest) | 1505 IPC_MESSAGE_HANDLER(FrameMsg_CSSInsertRequest, OnCSSInsertRequest) |
| 1487 IPC_MESSAGE_HANDLER(FrameMsg_AddMessageToConsole, OnAddMessageToConsole) | 1506 IPC_MESSAGE_HANDLER(FrameMsg_AddMessageToConsole, OnAddMessageToConsole) |
| 1488 IPC_MESSAGE_HANDLER(FrameMsg_JavaScriptExecuteRequest, | 1507 IPC_MESSAGE_HANDLER(FrameMsg_JavaScriptExecuteRequest, |
| 1489 OnJavaScriptExecuteRequest) | 1508 OnJavaScriptExecuteRequest) |
| 1490 IPC_MESSAGE_HANDLER(FrameMsg_JavaScriptExecuteRequestForTests, | 1509 IPC_MESSAGE_HANDLER(FrameMsg_JavaScriptExecuteRequestForTests, |
| 1491 OnJavaScriptExecuteRequestForTests) | 1510 OnJavaScriptExecuteRequestForTests) |
| 1492 IPC_MESSAGE_HANDLER(FrameMsg_JavaScriptExecuteRequestInIsolatedWorld, | 1511 IPC_MESSAGE_HANDLER(FrameMsg_JavaScriptExecuteRequestInIsolatedWorld, |
| 1493 OnJavaScriptExecuteRequestInIsolatedWorld) | 1512 OnJavaScriptExecuteRequestInIsolatedWorld) |
| 1494 IPC_MESSAGE_HANDLER(FrameMsg_VisualStateRequest, | 1513 IPC_MESSAGE_HANDLER(FrameMsg_VisualStateRequest, |
| 1495 OnVisualStateRequest) | 1514 OnVisualStateRequest) |
| 1496 IPC_MESSAGE_HANDLER(FrameMsg_SetEditableSelectionOffsets, | |
| 1497 OnSetEditableSelectionOffsets) | |
| 1498 IPC_MESSAGE_HANDLER(FrameMsg_Reload, OnReload) | 1515 IPC_MESSAGE_HANDLER(FrameMsg_Reload, OnReload) |
| 1499 IPC_MESSAGE_HANDLER(FrameMsg_ReloadLoFiImages, OnReloadLoFiImages) | 1516 IPC_MESSAGE_HANDLER(FrameMsg_ReloadLoFiImages, OnReloadLoFiImages) |
| 1500 IPC_MESSAGE_HANDLER(FrameMsg_TextSurroundingSelectionRequest, | 1517 IPC_MESSAGE_HANDLER(FrameMsg_TextSurroundingSelectionRequest, |
| 1501 OnTextSurroundingSelectionRequest) | 1518 OnTextSurroundingSelectionRequest) |
| 1502 IPC_MESSAGE_HANDLER(FrameMsg_SetAccessibilityMode, | 1519 IPC_MESSAGE_HANDLER(FrameMsg_SetAccessibilityMode, |
| 1503 OnSetAccessibilityMode) | 1520 OnSetAccessibilityMode) |
| 1504 IPC_MESSAGE_HANDLER(AccessibilityMsg_SnapshotTree, | 1521 IPC_MESSAGE_HANDLER(AccessibilityMsg_SnapshotTree, |
| 1505 OnSnapshotAccessibilityTree) | 1522 OnSnapshotAccessibilityTree) |
| 1506 IPC_MESSAGE_HANDLER(FrameMsg_UpdateOpener, OnUpdateOpener) | 1523 IPC_MESSAGE_HANDLER(FrameMsg_UpdateOpener, OnUpdateOpener) |
| 1507 IPC_MESSAGE_HANDLER(FrameMsg_CommitNavigation, OnCommitNavigation) | 1524 IPC_MESSAGE_HANDLER(FrameMsg_CommitNavigation, OnCommitNavigation) |
| (...skipping 4710 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6218 // event target. Potentially a Pepper plugin will receive the event. | 6235 // event target. Potentially a Pepper plugin will receive the event. |
| 6219 // In order to tell whether a plugin gets the last mouse event and which it | 6236 // In order to tell whether a plugin gets the last mouse event and which it |
| 6220 // is, we set |pepper_last_mouse_event_target_| to null here. If a plugin gets | 6237 // is, we set |pepper_last_mouse_event_target_| to null here. If a plugin gets |
| 6221 // the event, it will notify us via DidReceiveMouseEvent() and set itself as | 6238 // the event, it will notify us via DidReceiveMouseEvent() and set itself as |
| 6222 // |pepper_last_mouse_event_target_|. | 6239 // |pepper_last_mouse_event_target_|. |
| 6223 pepper_last_mouse_event_target_ = nullptr; | 6240 pepper_last_mouse_event_target_ = nullptr; |
| 6224 #endif | 6241 #endif |
| 6225 } | 6242 } |
| 6226 | 6243 |
| 6227 } // namespace content | 6244 } // namespace content |
| OLD | NEW |