| 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/browser/frame_host/render_frame_host_impl.h" | 5 #include "content/browser/frame_host/render_frame_host_impl.h" | 
| 6 | 6 | 
| 7 #include <algorithm> | 7 #include <algorithm> | 
| 8 #include <utility> | 8 #include <utility> | 
| 9 | 9 | 
| 10 #include "base/bind.h" | 10 #include "base/bind.h" | 
| (...skipping 2925 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 2936 | 2936 | 
| 2937 void RenderFrameHostImpl::DeleteSurroundingTextInCodePoints(int before, | 2937 void RenderFrameHostImpl::DeleteSurroundingTextInCodePoints(int before, | 
| 2938                                                             int after) { | 2938                                                             int after) { | 
| 2939   Send(new InputMsg_DeleteSurroundingTextInCodePoints(routing_id_, before, | 2939   Send(new InputMsg_DeleteSurroundingTextInCodePoints(routing_id_, before, | 
| 2940                                                       after)); | 2940                                                       after)); | 
| 2941 } | 2941 } | 
| 2942 | 2942 | 
| 2943 void RenderFrameHostImpl::JavaScriptDialogClosed( | 2943 void RenderFrameHostImpl::JavaScriptDialogClosed( | 
| 2944     IPC::Message* reply_msg, | 2944     IPC::Message* reply_msg, | 
| 2945     bool success, | 2945     bool success, | 
| 2946     const base::string16& user_input, | 2946     const base::string16& user_input) { | 
| 2947     bool dialog_was_suppressed) { |  | 
| 2948   GetProcess()->SetIgnoreInputEvents(false); | 2947   GetProcess()->SetIgnoreInputEvents(false); | 
| 2949 | 2948 | 
| 2950   SendJavaScriptDialogReply(reply_msg, success, user_input); | 2949   SendJavaScriptDialogReply(reply_msg, success, user_input); | 
| 2951 | 2950 | 
| 2952   // If executing as part of beforeunload event handling, there may have been | 2951   // If executing as part of beforeunload event handling, there may have been | 
| 2953   // timers stopped in this frame or a frame up in the frame hierarchy. Restart | 2952   // timers stopped in this frame or a frame up in the frame hierarchy. Restart | 
| 2954   // any timers that were stopped in OnRunBeforeUnloadConfirm(). | 2953   // any timers that were stopped in OnRunBeforeUnloadConfirm(). | 
| 2955   for (RenderFrameHostImpl* frame = this; frame; frame = frame->GetParent()) { | 2954   for (RenderFrameHostImpl* frame = this; frame; frame = frame->GetParent()) { | 
| 2956     if (frame->is_waiting_for_beforeunload_ack_) { | 2955     if (frame->is_waiting_for_beforeunload_ack_ && | 
| 2957       // If we are waiting for a beforeunload ack and the user has suppressed | 2956         frame->beforeunload_timeout_) { | 
| 2958       // messages, kill the tab immediately. A page that's spamming is | 2957       frame->beforeunload_timeout_->Start( | 
| 2959       // presumably malicious, so there's no point in continuing to run its | 2958           TimeDelta::FromMilliseconds(RenderViewHostImpl::kUnloadTimeoutMS)); | 
| 2960       // script and dragging out the process. |  | 
| 2961       if (dialog_was_suppressed) { |  | 
| 2962         frame->SimulateBeforeUnloadAck(); |  | 
| 2963       } else if (frame->beforeunload_timeout_) { |  | 
| 2964         frame->beforeunload_timeout_->Start( |  | 
| 2965             TimeDelta::FromMilliseconds(RenderViewHostImpl::kUnloadTimeoutMS)); |  | 
| 2966       } |  | 
| 2967     } | 2959     } | 
| 2968   } | 2960   } | 
| 2969 } | 2961 } | 
| 2970 | 2962 | 
| 2971 void RenderFrameHostImpl::SendJavaScriptDialogReply( | 2963 void RenderFrameHostImpl::SendJavaScriptDialogReply( | 
| 2972     IPC::Message* reply_msg, | 2964     IPC::Message* reply_msg, | 
| 2973     bool success, | 2965     bool success, | 
| 2974     const base::string16& user_input) { | 2966     const base::string16& user_input) { | 
| 2975   FrameHostMsg_RunJavaScriptDialog::WriteReplyParams(reply_msg, success, | 2967   FrameHostMsg_RunJavaScriptDialog::WriteReplyParams(reply_msg, success, | 
| 2976                                                      user_input); | 2968                                                      user_input); | 
| (...skipping 879 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 3856 } | 3848 } | 
| 3857 | 3849 | 
| 3858 void RenderFrameHostImpl::ForwardGetInterfaceToRenderFrame( | 3850 void RenderFrameHostImpl::ForwardGetInterfaceToRenderFrame( | 
| 3859     const std::string& interface_name, | 3851     const std::string& interface_name, | 
| 3860     mojo::ScopedMessagePipeHandle pipe) { | 3852     mojo::ScopedMessagePipeHandle pipe) { | 
| 3861   GetRemoteInterfaces()->GetInterface(interface_name, std::move(pipe)); | 3853   GetRemoteInterfaces()->GetInterface(interface_name, std::move(pipe)); | 
| 3862 } | 3854 } | 
| 3863 #endif | 3855 #endif | 
| 3864 | 3856 | 
| 3865 }  // namespace content | 3857 }  // namespace content | 
| OLD | NEW | 
|---|