summaryrefslogtreecommitdiff
path: root/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h')
-rw-r--r--Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h381
1 files changed, 221 insertions, 160 deletions
diff --git a/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h b/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h
index 417268b12..a2d5e7cc4 100644
--- a/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h
+++ b/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2010, 2011, 2012 Apple Inc. All rights reserved.
+ * Copyright (C) 2010-2017 Apple Inc. All rights reserved.
* Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
*
* Redistribution and use in source and binary forms, with or without
@@ -24,199 +24,205 @@
* THE POSSIBILITY OF SUCH DAMAGE.
*/
-#ifndef WebChromeClient_h
-#define WebChromeClient_h
+#pragma once
#include <WebCore/ChromeClient.h>
-#include <WebCore/ViewportArguments.h>
-#include <wtf/text/WTFString.h>
namespace WebKit {
class WebFrame;
class WebPage;
-class WebChromeClient : public WebCore::ChromeClient {
+class WebChromeClient final : public WebCore::ChromeClient {
public:
- WebChromeClient(WebPage* page)
- : m_cachedMainFrameHasHorizontalScrollbar(false)
- , m_cachedMainFrameHasVerticalScrollbar(false)
- , m_page(page)
- {
- }
-
- WebPage* page() const { return m_page; }
+ WebChromeClient(WebPage&);
- virtual void* webView() const { return 0; }
+ WebPage& page() const { return m_page; }
private:
- virtual void chromeDestroyed() override;
+ ~WebChromeClient();
+
+ void chromeDestroyed() final;
- virtual void setWindowRect(const WebCore::FloatRect&) override;
- virtual WebCore::FloatRect windowRect() override;
+ void setWindowRect(const WebCore::FloatRect&) final;
+ WebCore::FloatRect windowRect() final;
- virtual WebCore::FloatRect pageRect() override;
+ WebCore::FloatRect pageRect() final;
- virtual void focus() override;
- virtual void unfocus() override;
+ void focus() final;
+ void unfocus() final;
- virtual bool canTakeFocus(WebCore::FocusDirection) override;
- virtual void takeFocus(WebCore::FocusDirection) override;
+ bool canTakeFocus(WebCore::FocusDirection) final;
+ void takeFocus(WebCore::FocusDirection) final;
- virtual void focusedElementChanged(WebCore::Element*) override;
- virtual void focusedFrameChanged(WebCore::Frame*) override;
+ void focusedElementChanged(WebCore::Element*) final;
+ void focusedFrameChanged(WebCore::Frame*) final;
// The Frame pointer provides the ChromeClient with context about which
// Frame wants to create the new Page. Also, the newly created window
// should not be shown to the user until the ChromeClient of the newly
// created Page has its show method called.
- virtual WebCore::Page* createWindow(WebCore::Frame*, const WebCore::FrameLoadRequest&, const WebCore::WindowFeatures&, const WebCore::NavigationAction&) override;
- virtual void show() override;
+ WebCore::Page* createWindow(WebCore::Frame&, const WebCore::FrameLoadRequest&, const WebCore::WindowFeatures&, const WebCore::NavigationAction&) final;
+ void show() final;
- virtual bool canRunModal() override;
- virtual void runModal() override;
+ bool canRunModal() final;
+ void runModal() final;
+
+ void reportProcessCPUTime(int64_t, WebCore::ActivityStateForCPUSampling) final;
- virtual void setToolbarsVisible(bool) override;
- virtual bool toolbarsVisible() override;
+ void setToolbarsVisible(bool) final;
+ bool toolbarsVisible() final;
- virtual void setStatusbarVisible(bool) override;
- virtual bool statusbarVisible() override;
+ void setStatusbarVisible(bool) final;
+ bool statusbarVisible() final;
- virtual void setScrollbarsVisible(bool) override;
- virtual bool scrollbarsVisible() override;
+ void setScrollbarsVisible(bool) final;
+ bool scrollbarsVisible() final;
- virtual void setMenubarVisible(bool) override;
- virtual bool menubarVisible() override;
+ void setMenubarVisible(bool) final;
+ bool menubarVisible() final;
- virtual void setResizable(bool) override;
+ void setResizable(bool) final;
- virtual void addMessageToConsole(WebCore::MessageSource, WebCore::MessageLevel, const String& message, unsigned lineNumber, unsigned columnNumber, const String& sourceID) override;
+ void addMessageToConsole(JSC::MessageSource, JSC::MessageLevel, const String& message, unsigned lineNumber, unsigned columnNumber, const String& sourceID) final;
- virtual bool canRunBeforeUnloadConfirmPanel() override;
- virtual bool runBeforeUnloadConfirmPanel(const String& message, WebCore::Frame*) override;
+ bool canRunBeforeUnloadConfirmPanel() final;
+ bool runBeforeUnloadConfirmPanel(const String& message, WebCore::Frame&) final;
- virtual void closeWindowSoon() override;
+ void closeWindowSoon() final;
- virtual void runJavaScriptAlert(WebCore::Frame*, const String&) override;
- virtual bool runJavaScriptConfirm(WebCore::Frame*, const String&) override;
- virtual bool runJavaScriptPrompt(WebCore::Frame*, const String& message, const String& defaultValue, String& result) override;
- virtual void setStatusbarText(const String&) override;
- virtual bool shouldInterruptJavaScript() override;
+ void runJavaScriptAlert(WebCore::Frame&, const String&) final;
+ bool runJavaScriptConfirm(WebCore::Frame&, const String&) final;
+ bool runJavaScriptPrompt(WebCore::Frame&, const String& message, const String& defaultValue, String& result) final;
+ void setStatusbarText(const String&) final;
- virtual WebCore::KeyboardUIMode keyboardUIMode() override;
+ WebCore::KeyboardUIMode keyboardUIMode() final;
- virtual WebCore::IntRect windowResizerRect() const override;
-
- // HostWindow member function overrides.
- virtual void invalidateRootView(const WebCore::IntRect&, bool) override;
- virtual void invalidateContentsAndRootView(const WebCore::IntRect&, bool) override;
- virtual void invalidateContentsForSlowScroll(const WebCore::IntRect&, bool) override;
- virtual void scroll(const WebCore::IntSize& scrollDelta, const WebCore::IntRect& scrollRect, const WebCore::IntRect& clipRect) override;
-#if USE(TILED_BACKING_STORE)
- virtual void delegatedScrollRequested(const WebCore::IntPoint& scrollOffset) override;
+ // HostWindow member function finals.
+ void invalidateRootView(const WebCore::IntRect&) final;
+ void invalidateContentsAndRootView(const WebCore::IntRect&) final;
+ void invalidateContentsForSlowScroll(const WebCore::IntRect&) final;
+ void scroll(const WebCore::IntSize& scrollDelta, const WebCore::IntRect& scrollRect, const WebCore::IntRect& clipRect) final;
+
+#if USE(COORDINATED_GRAPHICS)
+ void delegatedScrollRequested(const WebCore::IntPoint& scrollOffset) final;
#endif
- virtual WebCore::IntPoint screenToRootView(const WebCore::IntPoint&) const override;
- virtual WebCore::IntRect rootViewToScreen(const WebCore::IntRect&) const override;
- virtual PlatformPageClient platformPageClient() const override;
- virtual void contentsSizeChanged(WebCore::Frame*, const WebCore::IntSize&) const override;
- virtual void scrollRectIntoView(const WebCore::IntRect&) const override; // Currently only Mac has a non empty implementation.
- virtual bool shouldUnavailablePluginMessageBeButton(WebCore::RenderEmbeddedObject::PluginUnavailabilityReason) const override;
- virtual void unavailablePluginButtonClicked(WebCore::Element*, WebCore::RenderEmbeddedObject::PluginUnavailabilityReason) const override;
+ WebCore::IntPoint screenToRootView(const WebCore::IntPoint&) const final;
+ WebCore::IntRect rootViewToScreen(const WebCore::IntRect&) const final;
- virtual void scrollbarsModeDidChange() const override;
- virtual void mouseDidMoveOverElement(const WebCore::HitTestResult&, unsigned modifierFlags) override;
-
- virtual void setToolTip(const String&, WebCore::TextDirection) override;
-
- virtual void print(WebCore::Frame*) override;
-
-#if ENABLE(SQL_DATABASE)
- virtual void exceededDatabaseQuota(WebCore::Frame*, const String& databaseName, WebCore::DatabaseDetails) override;
+#if PLATFORM(IOS)
+ WebCore::IntPoint accessibilityScreenToRootView(const WebCore::IntPoint&) const final;
+ WebCore::IntRect rootViewToAccessibilityScreen(const WebCore::IntRect&) const final;
#endif
- virtual void reachedMaxAppCacheSize(int64_t spaceNeeded) override;
- virtual void reachedApplicationCacheOriginQuota(WebCore::SecurityOrigin*, int64_t spaceNeeded) override;
+ PlatformPageClient platformPageClient() const final;
+ void contentsSizeChanged(WebCore::Frame&, const WebCore::IntSize&) const final;
+ void scrollRectIntoView(const WebCore::IntRect&) const final; // Currently only Mac has a non empty implementation.
+
+ bool shouldUnavailablePluginMessageBeButton(WebCore::RenderEmbeddedObject::PluginUnavailabilityReason) const final;
+ void unavailablePluginButtonClicked(WebCore::Element&, WebCore::RenderEmbeddedObject::PluginUnavailabilityReason) const final;
+
+ void scrollbarsModeDidChange() const final;
+ void mouseDidMoveOverElement(const WebCore::HitTestResult&, unsigned modifierFlags) final;
+
+ void setToolTip(const String&, WebCore::TextDirection) final;
+
+ void print(WebCore::Frame&) final;
+
+ void exceededDatabaseQuota(WebCore::Frame&, const String& databaseName, WebCore::DatabaseDetails) final;
+
+ void reachedMaxAppCacheSize(int64_t spaceNeeded) final;
+ void reachedApplicationCacheOriginQuota(WebCore::SecurityOrigin&, int64_t spaceNeeded) final;
#if ENABLE(DASHBOARD_SUPPORT)
- virtual void annotatedRegionsChanged() override;
+ void annotatedRegionsChanged() final;
#endif
- virtual void populateVisitedLinks() override;
-
- virtual WebCore::FloatRect customHighlightRect(WebCore::Node*, const WTF::AtomicString& type, const WebCore::FloatRect& lineRect) override;
- virtual void paintCustomHighlight(WebCore::Node*, const AtomicString& type, const WebCore::FloatRect& boxRect, const WebCore::FloatRect& lineRect,
- bool behindText, bool entireLine) override;
-
- virtual bool shouldReplaceWithGeneratedFileForUpload(const String& path, String& generatedFilename) override;
- virtual String generateReplacementFile(const String& path) override;
+ bool shouldReplaceWithGeneratedFileForUpload(const String& path, String& generatedFilename) final;
+ String generateReplacementFile(const String& path) final;
#if ENABLE(INPUT_TYPE_COLOR)
- virtual PassOwnPtr<WebCore::ColorChooser> createColorChooser(WebCore::ColorChooserClient*, const WebCore::Color&) override;
+ std::unique_ptr<WebCore::ColorChooser> createColorChooser(WebCore::ColorChooserClient&, const WebCore::Color&) final;
#endif
#if ENABLE(IOS_TOUCH_EVENTS)
- virtual void didPreventDefaultForEvent() override;
+ void didPreventDefaultForEvent() final;
#endif
#if PLATFORM(IOS)
- virtual void didReceiveMobileDocType() override;
- virtual void setNeedsScrollNotifications(WebCore::Frame*, bool) override;
- virtual void observedContentChange(WebCore::Frame*) override;
- virtual void clearContentChangeObservers(WebCore::Frame*) override;
- virtual void notifyRevealedSelectionByScrollingFrame(WebCore::Frame*) override;
- virtual bool isStopping() override;
-
- virtual void didLayout(LayoutType = NormalLayout) override;
- virtual void didStartOverflowScroll() override;
- virtual void didEndOverflowScroll() override;
+ void didReceiveMobileDocType(bool) final;
+ void setNeedsScrollNotifications(WebCore::Frame&, bool) final;
+ void observedContentChange(WebCore::Frame&) final;
+ void clearContentChangeObservers(WebCore::Frame&) final;
+ void notifyRevealedSelectionByScrollingFrame(WebCore::Frame&) final;
+ bool isStopping() final;
+
+ void didLayout(LayoutType = NormalLayout) final;
+ void didStartOverflowScroll() final;
+ void didEndOverflowScroll() final;
+ bool hasStablePageScaleFactor() const final;
// FIXME: See <rdar://problem/5975559>
- virtual void suppressFormNotifications() override;
- virtual void restoreFormNotifications() override;
+ void suppressFormNotifications() final;
+ void restoreFormNotifications() final;
+
+ void addOrUpdateScrollingLayer(WebCore::Node*, PlatformLayer* scrollingLayer, PlatformLayer* contentsLayer, const WebCore::IntSize& scrollSize, bool allowHorizontalScrollbar, bool allowVerticalScrollbar) final;
+ void removeScrollingLayer(WebCore::Node*, PlatformLayer* scrollingLayer, PlatformLayer* contentsLayer) final;
- virtual void addOrUpdateScrollingLayer(WebCore::Node*, PlatformLayer* scrollingLayer, PlatformLayer* contentsLayer, const WebCore::IntSize& scrollSize, bool allowHorizontalScrollbar, bool allowVerticalScrollbar) override;
- virtual void removeScrollingLayer(WebCore::Node*, PlatformLayer* scrollingLayer, PlatformLayer* contentsLayer) override;
+ void webAppOrientationsUpdated() final;
+ void showPlaybackTargetPicker(bool hasVideo) final;
- virtual void webAppOrientationsUpdated() override;
+ Seconds eventThrottlingDelay() final;
#endif
- virtual void runOpenPanel(WebCore::Frame*, PassRefPtr<WebCore::FileChooser>) override;
- virtual void loadIconForFiles(const Vector<String>&, WebCore::FileIconLoader*) override;
+#if ENABLE(ORIENTATION_EVENTS)
+ int deviceOrientation() const final;
+#endif
+
+ void runOpenPanel(WebCore::Frame&, WebCore::FileChooser&) final;
+ void loadIconForFiles(const Vector<String>&, WebCore::FileIconLoader&) final;
#if !PLATFORM(IOS)
- virtual void setCursor(const WebCore::Cursor&) override;
- virtual void setCursorHiddenUntilMouseMoves(bool) override;
+ void setCursor(const WebCore::Cursor&) final;
+ void setCursorHiddenUntilMouseMoves(bool) final;
#endif
-#if ENABLE(REQUEST_ANIMATION_FRAME) && !USE(REQUEST_ANIMATION_FRAME_TIMER)
- virtual void scheduleAnimation() override;
+
+#if !USE(REQUEST_ANIMATION_FRAME_TIMER)
+ void scheduleAnimation() final;
+#endif
+
+#if ENABLE(POINTER_LOCK)
+ bool requestPointerLock() final;
+ void requestPointerUnlock() final;
#endif
- // Notification that the given form element has changed. This function
- // will be called frequently, so handling should be very fast.
- virtual void formStateDidChange(const WebCore::Node*) override;
+ void didAssociateFormControls(const Vector<RefPtr<WebCore::Element>>&) final;
+ bool shouldNotifyOnFormChanges() final;
- virtual void didAssociateFormControls(const Vector<RefPtr<WebCore::Element>>&) override;
- virtual bool shouldNotifyOnFormChanges() override;
+ bool selectItemWritingDirectionIsNatural() final;
+ bool selectItemAlignmentFollowsMenuWritingDirection() final;
+ bool hasOpenedPopup() const final;
+ RefPtr<WebCore::PopupMenu> createPopupMenu(WebCore::PopupMenuClient&) const final;
+ RefPtr<WebCore::SearchPopupMenu> createSearchPopupMenu(WebCore::PopupMenuClient&) const final;
- virtual bool selectItemWritingDirectionIsNatural() override;
- virtual bool selectItemAlignmentFollowsMenuWritingDirection() override;
- virtual bool hasOpenedPopup() const override;
- virtual PassRefPtr<WebCore::PopupMenu> createPopupMenu(WebCore::PopupMenuClient*) const override;
- virtual PassRefPtr<WebCore::SearchPopupMenu> createSearchPopupMenu(WebCore::PopupMenuClient*) const override;
+ WebCore::GraphicsLayerFactory* graphicsLayerFactory() const final;
+ void attachRootGraphicsLayer(WebCore::Frame&, WebCore::GraphicsLayer*) final;
+ void attachViewOverlayGraphicsLayer(WebCore::Frame&, WebCore::GraphicsLayer*) final;
+ void setNeedsOneShotDrawingSynchronization() final;
+ void scheduleCompositingLayerFlush() final;
+ bool adjustLayerFlushThrottling(WebCore::LayerFlushThrottleState::Flags) final;
-#if USE(ACCELERATED_COMPOSITING)
- virtual WebCore::GraphicsLayerFactory* graphicsLayerFactory() const override;
- virtual void attachRootGraphicsLayer(WebCore::Frame*, WebCore::GraphicsLayer*) override;
- virtual void setNeedsOneShotDrawingSynchronization() override;
- virtual void scheduleCompositingLayerFlush() override;
+#if USE(REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR)
+ RefPtr<WebCore::DisplayRefreshMonitor> createDisplayRefreshMonitor(WebCore::PlatformDisplayID) const final;
+#endif
- virtual CompositingTriggerFlags allowedCompositingTriggers() const
+ CompositingTriggerFlags allowedCompositingTriggers() const final
{
return static_cast<CompositingTriggerFlags>(
ThreeDTransformTrigger |
VideoTrigger |
- PluginTrigger|
+ PluginTrigger|
CanvasTrigger |
#if PLATFORM(IOS)
AnimatedOpacityTrigger | // Allow opacity animations to trigger compositing mode for iPhone: <rdar://problem/7830677>
@@ -224,67 +230,122 @@ private:
AnimationTrigger);
}
- virtual bool layerTreeStateIsFrozen() const override;
-#endif
+ bool layerTreeStateIsFrozen() const final;
#if ENABLE(ASYNC_SCROLLING)
- virtual PassRefPtr<WebCore::ScrollingCoordinator> createScrollingCoordinator(WebCore::Page*) const override;
+ RefPtr<WebCore::ScrollingCoordinator> createScrollingCoordinator(WebCore::Page&) const final;
#endif
-#if ENABLE(TOUCH_EVENTS)
- virtual void needTouchEvents(bool) override;
+#if PLATFORM(IOS)
+ void elementDidRefocus(WebCore::Element&) final;
#endif
-#if PLATFORM(IOS)
- virtual void elementDidFocus(const WebCore::Node*) override;
- virtual void elementDidBlur(const WebCore::Node*) override;
+#if (PLATFORM(IOS) && HAVE(AVKIT)) || (PLATFORM(MAC) && ENABLE(VIDEO_PRESENTATION_MODE))
+ bool supportsVideoFullscreen(WebCore::HTMLMediaElementEnums::VideoFullscreenMode) final;
+ void setUpPlaybackControlsManager(WebCore::HTMLMediaElement&) final;
+ void clearPlaybackControlsManager() final;
+ void enterVideoFullscreenForVideoElement(WebCore::HTMLVideoElement&, WebCore::HTMLMediaElementEnums::VideoFullscreenMode) final;
+ void exitVideoFullscreenForVideoElement(WebCore::HTMLVideoElement&) final;
+#endif
+
+#if PLATFORM(MAC) && ENABLE(VIDEO_PRESENTATION_MODE)
+ void exitVideoFullscreenToModeWithoutAnimation(WebCore::HTMLVideoElement&, WebCore::HTMLMediaElementEnums::VideoFullscreenMode) final;
#endif
#if ENABLE(FULLSCREEN_API)
- virtual bool supportsFullScreenForElement(const WebCore::Element*, bool withKeyboard) override;
- virtual void enterFullScreenForElement(WebCore::Element*) override;
- virtual void exitFullScreenForElement(WebCore::Element*) override;
+ bool supportsFullScreenForElement(const WebCore::Element&, bool withKeyboard) final;
+ void enterFullScreenForElement(WebCore::Element&) final;
+ void exitFullScreenForElement(WebCore::Element*) final;
#endif
-#if PLATFORM(MAC)
- virtual void makeFirstResponder() override;
+#if PLATFORM(COCOA)
+ void elementDidFocus(WebCore::Element&) final;
+ void elementDidBlur(WebCore::Element&) final;
+
+ void makeFirstResponder() final;
#endif
- virtual void enableSuddenTermination() override;
- virtual void disableSuddenTermination() override;
-
- virtual void dispatchViewportPropertiesDidChange(const WebCore::ViewportArguments&) const override;
+ void enableSuddenTermination() final;
+ void disableSuddenTermination() final;
+
+#if PLATFORM(IOS)
+ WebCore::FloatSize screenSize() const final;
+ WebCore::FloatSize availableScreenSize() const final;
+#endif
+
+ void dispatchViewportPropertiesDidChange(const WebCore::ViewportArguments&) const final;
+
+ void notifyScrollerThumbIsVisibleInRect(const WebCore::IntRect&) final;
+ void recommendedScrollbarStyleDidChange(WebCore::ScrollbarStyle newStyle) final;
- virtual void notifyScrollerThumbIsVisibleInRect(const WebCore::IntRect&) override;
- virtual void recommendedScrollbarStyleDidChange(int32_t newStyle) override;
+ std::optional<WebCore::ScrollbarOverlayStyle> preferredScrollbarOverlayStyle() final;
- virtual WebCore::Color underlayColor() const override;
+ WebCore::Color underlayColor() const final;
+
+ void pageExtendedBackgroundColorDidChange(WebCore::Color) const final;
- virtual void numWheelEventHandlersChanged(unsigned) override;
+ void wheelEventHandlersChanged(bool) final;
+
+ String plugInStartLabelTitle(const String& mimeType) const final;
+ String plugInStartLabelSubtitle(const String& mimeType) const final;
+ String plugInExtraStyleSheet() const final;
+ String plugInExtraScript() const final;
+
+ void didAddHeaderLayer(WebCore::GraphicsLayer&) final;
+ void didAddFooterLayer(WebCore::GraphicsLayer&) final;
- virtual void logDiagnosticMessage(const String& message, const String& description, const String& success) override;
+ bool shouldUseTiledBackingForFrameView(const WebCore::FrameView&) const final;
- virtual String plugInStartLabelTitle(const String& mimeType) const override;
- virtual String plugInStartLabelSubtitle(const String& mimeType) const override;
- virtual String plugInExtraStyleSheet() const override;
- virtual String plugInExtraScript() const override;
+ void isPlayingMediaDidChange(WebCore::MediaProducer::MediaStateFlags, uint64_t) final;
+ void didPlayMediaPreventedFromPlayingWithoutUserGesture() final;
- virtual void didAddHeaderLayer(WebCore::GraphicsLayer*) override;
- virtual void didAddFooterLayer(WebCore::GraphicsLayer*) override;
+#if ENABLE(MEDIA_SESSION)
+ void hasMediaSessionWithActiveMediaElementsDidChange(bool) final;
+ void mediaSessionMetadataDidChange(const WebCore::MediaSessionMetadata&) final;
+ void focusedContentMediaElementDidChange(uint64_t) final;
+#endif
+
+#if ENABLE(SUBTLE_CRYPTO)
+ bool wrapCryptoKey(const Vector<uint8_t>&, Vector<uint8_t>&) const final;
+ bool unwrapCryptoKey(const Vector<uint8_t>&, Vector<uint8_t>&) const final;
+#endif
+
+#if ENABLE(TELEPHONE_NUMBER_DETECTION) && PLATFORM(MAC)
+ void handleTelephoneNumberClick(const String& number, const WebCore::IntPoint&) final;
+#endif
+
+#if ENABLE(SERVICE_CONTROLS)
+ void handleSelectionServiceClick(WebCore::FrameSelection&, const Vector<String>& telephoneNumbers, const WebCore::IntPoint&) final;
+ bool hasRelevantSelectionServices(bool isTextOnly) const final;
+#endif
- virtual bool shouldUseTiledBackingForFrameView(const WebCore::FrameView*) const override;
+ bool shouldDispatchFakeMouseMoveEvents() const final;
- virtual void incrementActivePageCount() override;
- virtual void decrementActivePageCount() override;
+ void handleAutoFillButtonClick(WebCore::HTMLInputElement&) final;
+
+#if ENABLE(WIRELESS_PLAYBACK_TARGET) && !PLATFORM(IOS)
+ void addPlaybackTargetPickerClient(uint64_t /*contextId*/) final;
+ void removePlaybackTargetPickerClient(uint64_t /*contextId*/) final;
+ void showPlaybackTargetPicker(uint64_t contextId, const WebCore::IntPoint&, bool) final;
+ void playbackTargetPickerClientStateDidChange(uint64_t, WebCore::MediaProducer::MediaStateFlags) final;
+ void setMockMediaPlaybackTargetPickerEnabled(bool) final;
+ void setMockMediaPlaybackTargetPickerState(const String&, WebCore::MediaPlaybackTargetContext::State) final;
+#endif
+
+ void imageOrMediaDocumentSizeChanged(const WebCore::IntSize&) final;
+
+#if ENABLE(VIDEO) && USE(GSTREAMER)
+ void requestInstallMissingMediaPlugins(const String& /*details*/, const String& /*description*/, WebCore::MediaPlayerRequestInstallMissingPluginsCallback&) final;
+#endif
+
+ void didInvalidateDocumentMarkerRects() final;
String m_cachedToolTip;
mutable RefPtr<WebFrame> m_cachedFrameSetLargestFrame;
- mutable bool m_cachedMainFrameHasHorizontalScrollbar;
- mutable bool m_cachedMainFrameHasVerticalScrollbar;
+ mutable bool m_cachedMainFrameHasHorizontalScrollbar { false };
+ mutable bool m_cachedMainFrameHasVerticalScrollbar { false };
- WebPage* m_page;
+ WebPage& m_page;
};
} // namespace WebKit
-
-#endif // WebChromeClient_h