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

Side by Side Diff: third_party/WebKit/Source/web/WebPagePopupImpl.cpp

Issue 2626133002: Candidate fix for PointerEvent-OOPIF combination not working. (Closed)
Patch Set: Undo whitespace change to render_widget.cc Created 3 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 /* 1 /*
2 * Copyright (C) 2012 Google Inc. All rights reserved. 2 * Copyright (C) 2012 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after
194 if (m_popup->m_layerTreeView) 194 if (m_popup->m_layerTreeView)
195 m_popup->m_layerTreeView->setHaveScrollEventHandlers(hasEventHandlers); 195 m_popup->m_layerTreeView->setHaveScrollEventHandlers(hasEventHandlers);
196 } 196 }
197 197
198 bool hasScrollEventHandlers() const override { 198 bool hasScrollEventHandlers() const override {
199 if (m_popup->m_layerTreeView) 199 if (m_popup->m_layerTreeView)
200 return m_popup->m_layerTreeView->haveScrollEventHandlers(); 200 return m_popup->m_layerTreeView->haveScrollEventHandlers();
201 return false; 201 return false;
202 } 202 }
203 203
204 void setTouchAction(TouchAction touchAction) override { 204 void setTouchAction(LocalFrame* frame, TouchAction touchAction) override {
205 if (WebViewClient* client = m_popup->m_webView->client()) 205 DCHECK(frame);
206 WebLocalFrameImpl* webFrame = WebLocalFrameImpl::fromFrame(frame);
207 WebFrameWidgetBase* widget = webFrame->localRoot()->frameWidget();
208 if (!widget)
209 return;
210
211 if (WebWidgetClient* client = widget->client())
206 client->setTouchAction(static_cast<WebTouchAction>(touchAction)); 212 client->setTouchAction(static_cast<WebTouchAction>(touchAction));
207 } 213 }
208 214
209 void attachRootGraphicsLayer(GraphicsLayer* graphicsLayer, 215 void attachRootGraphicsLayer(GraphicsLayer* graphicsLayer,
210 LocalFrame* localRoot) override { 216 LocalFrame* localRoot) override {
211 m_popup->setRootGraphicsLayer(graphicsLayer); 217 m_popup->setRootGraphicsLayer(graphicsLayer);
212 } 218 }
213 219
214 void postAccessibilityNotification( 220 void postAccessibilityNotification(
215 AXObject* obj, 221 AXObject* obj,
(...skipping 376 matching lines...) Expand 10 before | Expand all | Expand 10 after
592 // A WebPagePopupImpl instance usually has two references. 598 // A WebPagePopupImpl instance usually has two references.
593 // - One owned by the instance itself. It represents the visible widget. 599 // - One owned by the instance itself. It represents the visible widget.
594 // - One owned by a WebViewImpl. It's released when the WebViewImpl ask the 600 // - One owned by a WebViewImpl. It's released when the WebViewImpl ask the
595 // WebPagePopupImpl to close. 601 // WebPagePopupImpl to close.
596 // We need them because the closing operation is asynchronous and the widget 602 // We need them because the closing operation is asynchronous and the widget
597 // can be closed while the WebViewImpl is unaware of it. 603 // can be closed while the WebViewImpl is unaware of it.
598 return adoptRef(new WebPagePopupImpl(client)).leakRef(); 604 return adoptRef(new WebPagePopupImpl(client)).leakRef();
599 } 605 }
600 606
601 } // namespace blink 607 } // namespace blink
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/web/ChromeClientImpl.cpp ('k') | third_party/WebKit/Source/web/tests/TouchActionTest.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698