summaryrefslogtreecommitdiff
path: root/chromium/third_party/blink/renderer/core/exported/web_page_popup_impl.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/blink/renderer/core/exported/web_page_popup_impl.h')
-rw-r--r--chromium/third_party/blink/renderer/core/exported/web_page_popup_impl.h27
1 files changed, 17 insertions, 10 deletions
diff --git a/chromium/third_party/blink/renderer/core/exported/web_page_popup_impl.h b/chromium/third_party/blink/renderer/core/exported/web_page_popup_impl.h
index fbdb7bad95e..723cb08faba 100644
--- a/chromium/third_party/blink/renderer/core/exported/web_page_popup_impl.h
+++ b/chromium/third_party/blink/renderer/core/exported/web_page_popup_impl.h
@@ -55,6 +55,7 @@ class PagePopupClient;
class WebViewImpl;
class LocalDOMWindow;
class WidgetBase;
+class DOMRect;
class CORE_EXPORT WebPagePopupImpl final : public WebPagePopup,
public PageWidgetEventHandler,
@@ -98,12 +99,6 @@ class CORE_EXPORT WebPagePopupImpl final : public WebPagePopup,
LocalDOMWindow* Window();
- // WebWidget implementation.
- WebInputEventResult DispatchBufferedTouchEvents() override;
- void SetCompositorVisible(bool visible) override;
- void UpdateVisualState() override;
- void WillBeginCompositorFrame() override;
-
// WebPagePopup implementation.
gfx::Point PositionRelativeToOwner() override;
WebDocument GetDocument() override;
@@ -111,6 +106,7 @@ class CORE_EXPORT WebPagePopupImpl final : public WebPagePopup,
// PagePopup implementation.
void PostMessageToPopup(const String& message) override;
+ void Update() override;
// PageWidgetEventHandler implementation.
WebInputEventResult HandleKeyEvent(const WebKeyboardEvent&) override;
@@ -119,8 +115,11 @@ class CORE_EXPORT WebPagePopupImpl final : public WebPagePopup,
// WidgetBaseClient overrides:
void DispatchRafAlignedInput(base::TimeTicks frame_time) override;
void BeginMainFrame(base::TimeTicks last_frame_time) override;
+ void RequestNewLayerTreeFrameSink(
+ LayerTreeFrameSinkCallback callback) override;
void RecordTimeToFirstActivePaint(base::TimeDelta duration) override;
void SetSuppressFrameRequestsWorkaroundFor704763Only(bool) final;
+ WebInputEventResult DispatchBufferedTouchEvents() override;
// WebWidget implementation.
// NOTE: The WebWidget may still be used after requesting the popup to be
@@ -128,16 +127,23 @@ class CORE_EXPORT WebPagePopupImpl final : public WebPagePopup,
// immediately. So all methods (outside of initialization) that are part
// of the WebWidget need to check if close has already been initiated (they
// can do so by checking |page_|) and not crash! https://crbug.com/906340
- void SetCompositorHosts(cc::LayerTreeHost*, cc::AnimationHost*) override;
- void BeginFrame(base::TimeTicks last_frame_time) override;
+ void SetCompositorVisible(bool visible) override;
void UpdateLifecycle(WebLifecycleUpdate requested_update,
DocumentUpdateReason reason) override;
void Resize(const WebSize&) override;
- void Close() override;
+ void Close(scoped_refptr<base::SingleThreadTaskRunner> cleanup_runner,
+ base::OnceCallback<void()> cleanup_task) override;
WebInputEventResult HandleInputEvent(const WebCoalescedInputEvent&) override;
void SetFocus(bool) override;
WebURL GetURLForDebugTrace() override;
- WebHitTestResult HitTestResultAt(const gfx::Point&) override { return {}; }
+ WebHitTestResult HitTestResultAt(const gfx::PointF&) override { return {}; }
+ cc::LayerTreeHost* InitializeCompositing(
+ cc::TaskGraphRunner* task_graph_runner,
+ const cc::LayerTreeSettings& settings,
+ std::unique_ptr<cc::UkmRecorderFactory> ukm_recorder_factory) override;
+ scheduler::WebRenderWidgetSchedulingState* RendererWidgetSchedulingState()
+ override;
+ void SetCursor(const ui::Cursor& cursor) override;
// PageWidgetEventHandler functions
WebInputEventResult HandleCharEvent(const WebKeyboardEvent&) override;
@@ -184,6 +190,7 @@ class CORE_EXPORT WebPagePopupImpl final : public WebPagePopup,
base::TimeTicks raf_aligned_input_start_time_;
bool suppress_next_keypress_event_ = false;
+ Persistent<DOMRect> popup_owner_client_rect_;
// Base functionality all widgets have. This is a member as to avoid
// complicated inheritance structures.