Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(68)

Side by Side Diff: content/renderer/render_frame_proxy.cc

Issue 1489913003: Handle pointer-events: none in browser process hittesting. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: implement piman@'s suggestion Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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_proxy.h" 5 #include "content/renderer/render_frame_proxy.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8 #include <map> 8 #include <map>
9 #include <utility> 9 #include <utility>
10 10
(...skipping 176 matching lines...) Expand 10 before | Expand all | Expand 10 after
187 CHECK(result.second) << "Inserted a duplicate item."; 187 CHECK(result.second) << "Inserted a duplicate item.";
188 } 188 }
189 189
190 bool RenderFrameProxy::IsMainFrameDetachedFromTree() const { 190 bool RenderFrameProxy::IsMainFrameDetachedFromTree() const {
191 if (SiteIsolationPolicy::IsSwappedOutStateForbidden()) 191 if (SiteIsolationPolicy::IsSwappedOutStateForbidden())
192 return false; 192 return false;
193 return web_frame_->top() == web_frame_ && 193 return web_frame_->top() == web_frame_ &&
194 render_view_->webview()->mainFrame()->isWebLocalFrame(); 194 render_view_->webview()->mainFrame()->isWebLocalFrame();
195 } 195 }
196 196
197 void RenderFrameProxy::WillBeginCompositorFrame() {
198 if (ChildFrameCompositingHelper* compositing_helper =
199 compositing_helper_.get()) {
200 FrameHostMsg_HittestData_Params params;
201 params.surface_id = compositing_helper->surface_id();
202 params.ignored_for_hittest = web_frame_->ignoredForHittest();
203 render_widget_->QueueMessage(
204 new FrameHostMsg_HittestData(render_widget_->routing_id(), params),
205 MESSAGE_DELIVERY_POLICY_WITH_NEXT_SWAP);
piman 2016/01/16 01:25:36 You want MESSAGE_DELIVERY_POLICY_WITH_VISUAL_STATE
lfg 2016/01/18 21:35:20 Done. It doesn't matter here since they are replac
piman 2016/01/20 01:21:19 I'm not fully sure I understand the question... W
206 }
207 }
208
197 void RenderFrameProxy::DidCommitCompositorFrame() { 209 void RenderFrameProxy::DidCommitCompositorFrame() {
198 if (compositing_helper_.get()) 210 if (compositing_helper_.get())
199 compositing_helper_->DidCommitCompositorFrame(); 211 compositing_helper_->DidCommitCompositorFrame();
200 } 212 }
201 213
202 void RenderFrameProxy::SetReplicatedState(const FrameReplicationState& state) { 214 void RenderFrameProxy::SetReplicatedState(const FrameReplicationState& state) {
203 DCHECK(web_frame_); 215 DCHECK(web_frame_);
204 web_frame_->setReplicatedOrigin(state.origin); 216 web_frame_->setReplicatedOrigin(state.origin);
205 web_frame_->setReplicatedSandboxFlags(state.sandbox_flags); 217 web_frame_->setReplicatedSandboxFlags(state.sandbox_flags);
206 web_frame_->setReplicatedName(blink::WebString::fromUTF8(state.name)); 218 web_frame_->setReplicatedName(blink::WebString::fromUTF8(state.name));
(...skipping 276 matching lines...) Expand 10 before | Expand all | Expand 10 after
483 blink::WebLocalFrame* source) { 495 blink::WebLocalFrame* source) {
484 int source_routing_id = RenderFrameImpl::FromWebFrame(source)->GetRoutingID(); 496 int source_routing_id = RenderFrameImpl::FromWebFrame(source)->GetRoutingID();
485 Send(new FrameHostMsg_AdvanceFocus(routing_id_, type, source_routing_id)); 497 Send(new FrameHostMsg_AdvanceFocus(routing_id_, type, source_routing_id));
486 } 498 }
487 499
488 void RenderFrameProxy::frameFocused() { 500 void RenderFrameProxy::frameFocused() {
489 Send(new FrameHostMsg_FrameFocused(routing_id_)); 501 Send(new FrameHostMsg_FrameFocused(routing_id_));
490 } 502 }
491 503
492 } // namespace 504 } // namespace
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698