# Copyright (C) 2010-2022 Apple Inc. All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # 1. Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # 2. Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # # THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE # DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR # ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. messages -> WebPageProxy { # UI messages CreateNewPage(struct WebKit::FrameInfoData originatingFrameInfoData, WebKit::WebPageProxyIdentifier originatingPageID, WebCore::ResourceRequest request, struct WebCore::WindowFeatures windowFeatures, struct WebKit::NavigationActionData navigationActionData) -> (std::optional newPageID, std::optional newPageParameters) Synchronous ShowPage() ClosePage() RunJavaScriptAlert(WebCore::FrameIdentifier frameID, struct WebKit::FrameInfoData frameInfo, String message) -> () Synchronous RunJavaScriptConfirm(WebCore::FrameIdentifier frameID, struct WebKit::FrameInfoData frameInfo, String message) -> (bool result) Synchronous RunJavaScriptPrompt(WebCore::FrameIdentifier frameID, struct WebKit::FrameInfoData frameInfo, String message, String defaultValue) -> (String result) Synchronous MouseDidMoveOverElement(struct WebKit::WebHitTestResultData hitTestResultData, uint32_t modifiers, WebKit::UserData userData) #if ENABLE(WEBGL) WebGLPolicyForURL(URL url) -> (enum:uint8_t WebCore::WebGLLoadPolicy loadPolicy) Synchronous ResolveWebGLPolicyForURL(URL url) -> (enum:uint8_t WebCore::WebGLLoadPolicy loadPolicy) Synchronous #endif // ENABLE(WEBGL) DidChangeViewportProperties(struct WebCore::ViewportAttributes attributes) DidReceiveEvent(uint32_t type, bool handled) SetCursor(WebCore::Cursor cursor) SetCursorHiddenUntilMouseMoves(bool hiddenUntilMouseMoves) SetStatusText(String statusText) SetFocus(bool focused) TakeFocus(uint8_t direction) FocusFromServiceWorker() -> () FocusedFrameChanged(std::optional frameID) SetRenderTreeSize(uint64_t treeSize) SetToolbarsAreVisible(bool toolbarsAreVisible) GetToolbarsAreVisible() -> (bool toolbarsAreVisible) Synchronous SetMenuBarIsVisible(bool menuBarIsVisible) GetMenuBarIsVisible() -> (bool menuBarIsVisible) Synchronous SetStatusBarIsVisible(bool statusBarIsVisible) GetStatusBarIsVisible() -> (bool statusBarIsVisible) Synchronous SetIsResizable(bool isResizable) SetWindowFrame(WebCore::FloatRect windowFrame) GetWindowFrame() -> (WebCore::FloatRect windowFrame) Synchronous ScreenToRootView(WebCore::IntPoint screenPoint) -> (WebCore::IntPoint windowPoint) Synchronous RootViewToScreen(WebCore::IntRect rect) -> (WebCore::IntRect screenFrame) Synchronous AccessibilityScreenToRootView(WebCore::IntPoint screenPoint) -> (WebCore::IntPoint windowPoint) Synchronous RootViewToAccessibilityScreen(WebCore::IntRect rect) -> (WebCore::IntRect screenFrame) Synchronous #if PLATFORM(COCOA) || PLATFORM(GTK) ShowValidationMessage(WebCore::IntRect anchorRect, String message) HideValidationMessage() #endif RunBeforeUnloadConfirmPanel(WebCore::FrameIdentifier frameID, struct WebKit::FrameInfoData frameInfo, String message) -> (bool shouldClose) Synchronous PageDidScroll(WebCore::IntPoint scrollPosition) SetHasActiveAnimatedScrolls(bool hasActiveAnimatedScrolls) RunOpenPanel(WebCore::FrameIdentifier frameID, struct WebKit::FrameInfoData frameInfo, struct WebCore::FileChooserSettings parameters) ShowShareSheet(struct WebCore::ShareDataWithParsedURL shareData) -> (bool granted) ShowContactPicker(struct WebCore::ContactsRequestData requestData) -> (std::optional> info) PrintFrame(WebCore::FrameIdentifier frameID, String title, WebCore::FloatSize pdfFirstPageSize) -> () Synchronous RunModal() NotifyScrollerThumbIsVisibleInRect(WebCore::IntRect scrollerThumb) RecommendedScrollbarStyleDidChange(int32_t newStyle) DidChangeScrollbarsForMainFrame(bool hasHorizontalScrollbar, bool hasVerticalScrollbar) DidChangeScrollOffsetPinningForMainFrame(WebCore::RectEdges pinnedState) DidChangePageCount(unsigned pageCount) ThemeColorChanged(WebCore::Color themeColor) PageExtendedBackgroundColorDidChange(WebCore::Color backgroundColor) SampledPageTopColorChanged(WebCore::Color sampledPageTopColor) SetCanShortCircuitHorizontalWheelEvents(bool canShortCircuitHorizontalWheelEvents) DidChangeContentSize(WebCore::IntSize newSize) DidChangeIntrinsicContentSize(WebCore::IntSize newIntrinsicContentSize) #if ENABLE(INPUT_TYPE_COLOR) ShowColorPicker(WebCore::Color initialColor, WebCore::IntRect elementRect, Vector suggestions); SetColorPickerColor(WebCore::Color color); EndColorPicker(); #endif #if ENABLE(DATALIST_ELEMENT) ShowDataListSuggestions(struct WebCore::DataListSuggestionInformation suggestionInformation); HandleKeydownInDataList(String key); EndDataListSuggestions(); #endif #if ENABLE(DATE_AND_TIME_INPUT_TYPES) ShowDateTimePicker(struct WebCore::DateTimeChooserParameters params); EndDateTimePicker(); #endif # Policy messages DecidePolicyForResponse(WebCore::FrameIdentifier frameID, struct WebKit::FrameInfoData frameInfo, WebCore::PolicyCheckIdentifier policyCheckIdentifier, uint64_t navigationID, WebCore::ResourceResponse response, WebCore::ResourceRequest request, bool canShowMIMEType, String downloadAttribute, bool wasAllowedByInjectedBundle, uint64_t listenerID, WebKit::UserData userData) DecidePolicyForNavigationActionAsync(WebCore::FrameIdentifier frameID, struct WebKit::FrameInfoData frameInfo, WebCore::PolicyCheckIdentifier policyCheckIdentifier, uint64_t navigationID, struct WebKit::NavigationActionData navigationActionData, struct WebKit::FrameInfoData originatingFrameInfoData, std::optional originatingPageID, WebCore::ResourceRequest originalRequest, WebCore::ResourceRequest request, IPC::FormDataReference requestBody, WebCore::ResourceResponse redirectResponse, WebKit::UserData userData, uint64_t listenerID) DecidePolicyForNavigationActionSync(WebCore::FrameIdentifier frameID, bool isMainFrame, struct WebKit::FrameInfoData frameInfo, WebCore::PolicyCheckIdentifier policyCheckIdentifier, uint64_t navigationID, struct WebKit::NavigationActionData navigationActionData, struct WebKit::FrameInfoData originatingFrameInfoData, std::optional originatingPageID, WebCore::ResourceRequest originalRequest, WebCore::ResourceRequest request, IPC::FormDataReference requestBody, WebCore::ResourceResponse redirectResponse, WebKit::UserData userData) -> (struct WebKit::PolicyDecision PolicyDecision) Synchronous DecidePolicyForNewWindowAction(WebCore::FrameIdentifier frameID, struct WebKit::FrameInfoData frameInfo, WebCore::PolicyCheckIdentifier policyCheckIdentifier, struct WebKit::NavigationActionData navigationActionData, WebCore::ResourceRequest request, String frameName, uint64_t listenerID, WebKit::UserData userData) UnableToImplementPolicy(WebCore::FrameIdentifier frameID, WebCore::ResourceError error, WebKit::UserData userData) # Progress messages DidChangeProgress(double value) DidFinishProgress() DidStartProgress() SetNetworkRequestsInProgress(bool networkRequestsInProgress) # Frame lifetime messages DidCreateMainFrame(WebCore::FrameIdentifier frameID) DidCreateSubframe(WebCore::FrameIdentifier frameID) DidCreateWindow(WebCore::FrameIdentifier frameID, struct WebCore::GlobalWindowIdentifier windowIdentifier) # Frame load messages DidStartProvisionalLoadForFrame(WebCore::FrameIdentifier frameID, struct WebKit::FrameInfoData frameInfo, WebCore::ResourceRequest request, uint64_t navigationID, URL url, URL unreachableURL, WebKit::UserData userData) DidReceiveServerRedirectForProvisionalLoadForFrame(WebCore::FrameIdentifier frameID, uint64_t navigationID, WebCore::ResourceRequest request, WebKit::UserData userData) WillPerformClientRedirectForFrame(WebCore::FrameIdentifier frameID, String url, double delay, enum:bool WebCore::LockBackForwardList lockBackForwardList) DidCancelClientRedirectForFrame(WebCore::FrameIdentifier frameID) DidChangeProvisionalURLForFrame(WebCore::FrameIdentifier frameID, uint64_t navigationID, URL url) DidFailProvisionalLoadForFrame(WebCore::FrameIdentifier frameID, struct WebKit::FrameInfoData frameInfo, WebCore::ResourceRequest request, uint64_t navigationID, String provisionalURL, WebCore::ResourceError error, enum:bool WebCore::WillContinueLoading willContinueLoading, WebKit::UserData userData) DidCommitLoadForFrame(WebCore::FrameIdentifier frameID, struct WebKit::FrameInfoData frameInfo, WebCore::ResourceRequest request, uint64_t navigationID, String mimeType, bool hasCustomContentProvider, enum:uint8_t WebCore::FrameLoadType loadType, WebCore::CertificateInfo certificateInfo, bool usedLegacyTLS, bool containsPluginDocument, std::optional forcedHasInsecureContent, enum:uint8_t WebCore::MouseEventPolicy mouseEventPolicy, WebKit::UserData userData) DidFailLoadForFrame(WebCore::FrameIdentifier frameID, struct WebKit::FrameInfoData frameInfo, WebCore::ResourceRequest request, uint64_t navigationID, WebCore::ResourceError error, WebKit::UserData userData) DidFinishDocumentLoadForFrame(WebCore::FrameIdentifier frameID, uint64_t navigationID, WebKit::UserData userData) DidFinishLoadForFrame(WebCore::FrameIdentifier frameID, struct WebKit::FrameInfoData frameInfo, WebCore::ResourceRequest request, uint64_t navigationID, WebKit::UserData userData) DidFirstLayoutForFrame(WebCore::FrameIdentifier frameID, WebKit::UserData userData) DidFirstVisuallyNonEmptyLayoutForFrame(WebCore::FrameIdentifier frameID, WebKit::UserData userData) DidReachLayoutMilestone(OptionSet layoutMilestones) DidReceiveTitleForFrame(WebCore::FrameIdentifier frameID, String title, WebKit::UserData userData) DidDisplayInsecureContentForFrame(WebCore::FrameIdentifier frameID, WebKit::UserData userData) DidRunInsecureContentForFrame(WebCore::FrameIdentifier frameID, WebKit::UserData userData) DidDetectXSSForFrame(WebCore::FrameIdentifier frameID, WebKit::UserData userData) DidSameDocumentNavigationForFrame(WebCore::FrameIdentifier frameID, uint64_t navigationID, uint32_t type, URL url, WebKit::UserData userData) DidChangeMainDocument(WebCore::FrameIdentifier frameID) DidExplicitOpenForFrame(WebCore::FrameIdentifier frameID, URL url, String mimeType) DidDestroyNavigation(uint64_t navigationID) MainFramePluginHandlesPageScaleGestureDidChange(bool mainFramePluginHandlesPageScaleGesture) # History client messages. DidNavigateWithNavigationData(struct WebKit::WebNavigationDataStore store, WebCore::FrameIdentifier frameID) DidPerformClientRedirect(String sourceURLString, String destinationURLString, WebCore::FrameIdentifier frameID) DidPerformServerRedirect(String sourceURLString, String destinationURLString, WebCore::FrameIdentifier frameID) DidUpdateHistoryTitle(String title, String url, WebCore::FrameIdentifier frameID) # Custom representations DidFinishLoadingDataForCustomContentProvider(String suggestedFilename, IPC::DataReference data) # Forms messages WillSubmitForm(WebCore::FrameIdentifier frameID, WebCore::FrameIdentifier sourceFrameID, Vector> textFieldValues, WebKit::FormSubmitListenerIdentifier listenerID, WebKit::UserData userData) #if PLATFORM(IOS_FAMILY) InterpretKeyEvent(struct WebKit::EditorState state, bool isCharEvent) -> (bool handled) Synchronous DidReceivePositionInformation(struct WebKit::InteractionInformationAtPosition information) SaveImageToLibrary(WebKit::SharedMemory::IPCHandle handle, String authorizationToken) ShowPlaybackTargetPicker(bool hasVideo, WebCore::IntRect elementRect, enum:uint8_t WebCore::RouteSharingPolicy policy, String routingContextUID) CommitPotentialTapFailed() DidNotHandleTapAsClick(WebCore::IntPoint point) DidCompleteSyntheticClick() DisableDoubleTapGesturesDuringTapIfNecessary(WebKit::TapIdentifier requestID) HandleSmartMagnificationInformationForPotentialTap(WebKit::TapIdentifier requestID, WebCore::FloatRect renderRect, bool fitEntireRect, double viewportMinimumScale, double viewportMaximumScale, bool nodeIsRootLevel) #endif #if ENABLE(DATA_DETECTION) SetDataDetectionResult(struct WebKit::DataDetectionResult dataDetectionResult) HandleClickForDataDetectionResult(struct WebCore::DataDetectorElementInfo info, WebCore::IntPoint location) #endif PageScaleFactorDidChange(double scaleFactor) PluginScaleFactorDidChange(double zoomFactor) PluginZoomFactorDidChange(double zoomFactor) #if PLATFORM(GTK) || PLATFORM(WPE) # Support for connecting the Accessibility worlds of the UI and the Web processes BindAccessibilityTree(String plugID) SetInputMethodState(std::optional state); #endif # BackForward messages BackForwardAddItem(struct WebKit::BackForwardListItemState itemState) BackForwardGoToItem(struct WebCore::BackForwardItemIdentifier itemID) -> (struct WebKit::WebBackForwardListCounts counts) Synchronous BackForwardItemAtIndex(int32_t itemIndex) -> (std::optional itemID) Synchronous BackForwardListCounts() -> (struct WebKit::WebBackForwardListCounts counts) Synchronous BackForwardClear() WillGoToBackForwardListItem(struct WebCore::BackForwardItemIdentifier itemID, bool inBackForwardCache) # Undo/Redo messages RegisterEditCommandForUndo(uint64_t commandID, String label) ClearAllEditCommands() RegisterInsertionUndoGrouping() CanUndoRedo(enum:bool WebKit::UndoOrRedo undoOrRedo) -> (bool result) Synchronous ExecuteUndoRedo(enum:bool WebKit::UndoOrRedo undoOrRedo) -> () Synchronous # Diagnostic messages logging LogDiagnosticMessageFromWebProcess(String message, String description, enum:bool WebCore::ShouldSample shouldSample) LogDiagnosticMessageWithResultFromWebProcess(String message, String description, uint32_t result, enum:bool WebCore::ShouldSample shouldSample) LogDiagnosticMessageWithValueFromWebProcess(String message, String description, double value, unsigned significantFigures, enum:bool WebCore::ShouldSample shouldSample) LogDiagnosticMessageWithEnhancedPrivacyFromWebProcess(String message, String description, enum:bool WebCore::ShouldSample shouldSample) LogDiagnosticMessageWithValueDictionaryFromWebProcess(String message, String description, WebCore::DiagnosticLoggingClient::ValueDictionary value, enum:bool WebCore::ShouldSample shouldSample) LogDiagnosticMessageWithDomainFromWebProcess(String message, WebCore::DiagnosticLoggingDomain domain) # Performance logging LogScrollingEvent(uint32_t eventType, MonotonicTime timestamp, uint64_t data) # Editor notifications EditorStateChanged(struct WebKit::EditorState editorState) -> () CompositionWasCanceled() SetHasHadSelectionChangesFromUserInteraction(bool hasHadUserSelectionChanges) #if ENABLE(IMAGE_ANALYSIS) RequestTextRecognition(URL imageURL, WebKit::ShareableBitmap::Handle imageData, String source, String target) -> (struct WebCore::TextRecognitionResult result) #endif #if HAVE(TRANSLATION_UI_SERVICES) && ENABLE(CONTEXT_MENUS) HandleContextMenuTranslation(struct WebCore::TranslationContextMenuInfo info) #endif #if ENABLE(MEDIA_CONTROLS_CONTEXT_MENUS) && USE(UICONTEXTMENU) ShowMediaControlsContextMenu(WebCore::FloatRect targetFrame, Vector items) -> (WebCore::MediaControlsContextMenuItem::ID selectedItemID) #endif // ENABLE(MEDIA_CONTROLS_CONTEXT_MENUS) && USE(UICONTEXTMENU) #if HAVE(TOUCH_BAR) SetIsTouchBarUpdateSupressedForHiddenContentEditable(bool isTouchBarUpdateSupressed) SetIsNeverRichlyEditableForTouchBar(bool isNeverRichlyEditable) #endif RequestDOMPasteAccess(enum:uint8_t WebCore::DOMPasteAccessCategory pasteAccessCategory, WebCore::IntRect elementRect, String originIdentifier) -> (enum:uint8_t WebCore::DOMPasteAccessResponse response) Synchronous # Find messages DidCountStringMatches(String string, uint32_t matchCount) SetTextIndicator(struct WebCore::TextIndicatorData indicator, uint64_t lifetime) ClearTextIndicator() DidFindString(String string, Vector matchRect, uint32_t matchCount, int32_t matchIndex, bool didWrapAround) DidFailToFindString(String string) DidFindStringMatches(String string, Vector> matches, int32_t firstIndexAfterSelection) DidGetImageForFindMatch(struct WebCore::ImageBufferBackend::Parameters parameters, WebKit::ShareableBitmap::Handle contentImageHandle, uint32_t matchIndex) # PopupMenu messages ShowPopupMenu(WebCore::IntRect rect, uint64_t textDirection, Vector items, int32_t selectedIndex, struct WebKit::PlatformPopupMenuData data) HidePopupMenu() #if ENABLE(CONTEXT_MENUS) ShowContextMenu(WebKit::ContextMenuContextData contextMenuContextData, WebKit::UserData userData) #endif #if ENABLE(SERVICE_WORKER) DidFinishServiceWorkerPageRegistration(bool success) #endif # Database messages ExceededDatabaseQuota(WebCore::FrameIdentifier frameID, String originIdentifier, String databaseName, String databaseDisplayName, uint64_t currentQuota, uint64_t currentOriginUsage, uint64_t currentDatabaseUsage, uint64_t expectedUsage) -> (uint64_t newQuota) Synchronous # Application cache messages ReachedApplicationCacheOriginQuota(String originIdentifier, uint64_t currentQuota, uint64_t totalBytesNeeded) -> (uint64_t newQuota) Synchronous # Geolocation messages RequestGeolocationPermissionForFrame(WebKit::GeolocationIdentifier geolocationID, struct WebKit::FrameInfoData frameInfo) RevokeGeolocationAuthorizationToken(String authorizationToken); #if ENABLE(MEDIA_STREAM) # MediaSteam messages RequestUserMediaPermissionForFrame(WebCore::UserMediaRequestIdentifier userMediaID, WebCore::FrameIdentifier frameID, struct WebCore::SecurityOriginData userMediaDocumentOriginIdentifier, struct WebCore::SecurityOriginData topLevelDocumentOriginIdentifier, struct WebCore::MediaStreamRequest request) EnumerateMediaDevicesForFrame(WebCore::FrameIdentifier frameID, struct WebCore::SecurityOriginData userMediaDocumentOriginIdentifier, struct WebCore::SecurityOriginData topLevelDocumentOriginIdentifier) -> (Vector devices, String mediaDeviceIdentifierHashSalt) BeginMonitoringCaptureDevices() #endif #if ENABLE(ENCRYPTED_MEDIA) RequestMediaKeySystemPermissionForFrame(WebCore::MediaKeySystemRequestIdentifier mediaKeySystemID, WebCore::FrameIdentifier frameID, struct WebCore::SecurityOriginData topLevelDocumentOriginIdentifier, String keySystem) #endif # Notification messages RequestNotificationPermission(String originIdentifier) -> (bool allowed) # Spelling and grammar messages #if USE(UNIFIED_TEXT_CHECKING) CheckTextOfParagraph(String text, OptionSet checkingTypes, int32_t insertionPoint) -> (Vector results) Synchronous #endif CheckSpellingOfString(String text) -> (int32_t misspellingLocation, int32_t misspellingLength) Synchronous CheckGrammarOfString(String text) -> (Vector results, int32_t badGrammarLocation, int32_t badGrammarLength) Synchronous SpellingUIIsShowing() -> (bool isShowing) Synchronous UpdateSpellingUIWithMisspelledWord(String misspelledWord) UpdateSpellingUIWithGrammarString(String badGrammarPhrase, struct WebCore::GrammarDetail grammarDetail) GetGuessesForWord(String word, String context, int32_t insertionPoint) -> (Vector guesses) Synchronous LearnWord(String word) IgnoreWord(String word) RequestCheckingOfString(WebKit::TextCheckerRequestID requestID, WebCore::TextCheckingRequestData request, int32_t insertionPoint) # Drag and drop messages #if ENABLE(DRAG_SUPPORT) DidPerformDragControllerAction(std::optional dragOperation, enum:uint8_t WebCore::DragHandlingMethod dragHandlingMethod, bool mouseIsOverFileInput, unsigned numberOfItemsToBeAccepted, WebCore::IntRect insertionRect, WebCore::IntRect editableElementRect) DidEndDragging(); #endif #if PLATFORM(COCOA) && ENABLE(DRAG_SUPPORT) StartDrag(struct WebCore::DragItem dragItem, WebKit::ShareableBitmap::Handle dragImage) SetPromisedDataForImage(String pasteboardName, WebKit::SharedMemory::IPCHandle imageHandle, String filename, String extension, String title, String url, String visibleURL, WebKit::SharedMemory::IPCHandle archiveHandle, String originIdentifier) #endif #if PLATFORM(GTK) && ENABLE(DRAG_SUPPORT) StartDrag(WebCore::SelectionData selectionData, OptionSet dragOperationMask, WebKit::ShareableBitmap::Handle dragImage, WebCore::IntPoint dragImageHotspot) #endif #if ENABLE(DRAG_SUPPORT) DidPerformDragOperation(bool handled) #endif #if PLATFORM(IOS_FAMILY) && ENABLE(DRAG_SUPPORT) DidHandleDragStartRequest(bool started) DidHandleAdditionalDragItemsRequest(bool added) WillReceiveEditDragSnapshot() DidReceiveEditDragSnapshot(std::optional textIndicator) #endif #if PLATFORM(COCOA) # Dictionary support. DidPerformDictionaryLookup(struct WebCore::DictionaryPopupInfo dictionaryPopupInfo) # Keyboard input support messages ExecuteSavedCommandBySelector(String selector) -> (bool handled) Synchronous # Remote accessibility messages RegisterWebProcessAccessibilityToken(IPC::DataReference data) # Speech messages GetIsSpeaking() -> (bool isSpeaking) Synchronous Speak(String string) StopSpeaking() MakeFirstResponder() AssistiveTechnologyMakeFirstResponder() # Spotlight SearchWithSpotlight(String string) SearchTheWeb(String string) #endif #if HAVE(TOUCH_BAR) TouchBarMenuDataChanged(WebKit::TouchBarMenuData touchBarMenuData) TouchBarMenuItemDataAdded(struct WebKit::TouchBarMenuItemData touchBarMenuItemData) TouchBarMenuItemDataRemoved(struct WebKit::TouchBarMenuItemData touchBarMenuItemData) #endif #if USE(APPKIT) SubstitutionsPanelIsShowing() -> (bool isShowing) Synchronous #endif #if USE(AUTOMATIC_TEXT_REPLACEMENT) toggleSmartInsertDelete() toggleAutomaticQuoteSubstitution() toggleAutomaticLinkDetection() toggleAutomaticDashSubstitution() toggleAutomaticTextReplacement() #endif #if PLATFORM(MAC) # Autocorrection messages ShowCorrectionPanel(int32_t panelType, WebCore::FloatRect boundingBoxOfReplacedString, String replacedString, String replacementString, Vector alternativeReplacementStrings) DismissCorrectionPanel(int32_t reason) DismissCorrectionPanelSoon(int32_t reason) -> (String result) Synchronous RecordAutocorrectionResponse(int32_t response, String replacedString, String replacementString); SetEditableElementIsFocused(bool editableElementIsFocused) HandleAcceptsFirstMouse(bool acceptsFirstMouse) #endif DidUpdateRenderingAfterCommittingLoad() #if USE(DICTATION_ALTERNATIVES) ShowDictationAlternativeUI(WebCore::FloatRect boundingBoxOfDictatedText, WebCore::DictationContext dictationContext) RemoveDictationAlternatives(WebCore::DictationContext dictationContext) DictationAlternatives(WebCore::DictationContext dictationContext) -> (Vector alternatives) Synchronous #endif BeginTextRecognitionForVideoInElementFullScreen(WebCore::MediaPlayerIdentifier identifier, WebCore::FloatRect videoBounds) CancelTextRecognitionForVideoInElementFullScreen() #if PLATFORM(IOS_FAMILY) CouldNotRestorePageState() RestorePageState(std::optional scrollPosition, WebCore::FloatPoint scrollOrigin, WebCore::RectEdges obscuredInsetsOnSave, double scale) RestorePageCenterAndScale(std::optional unobscuredCenter, double scale) DidGetTapHighlightGeometries(WebKit::TapIdentifier requestID, WebCore::Color color, Vector geometries, WebCore::IntSize topLeftRadius, WebCore::IntSize topRightRadius, WebCore::IntSize bottomLeftRadius, WebCore::IntSize bottomRightRadius, bool nodeHasBuiltInClickHandling) ElementDidFocus(struct WebKit::FocusedElementInformation information, bool userIsInteracting, bool blurPreviousNode, OptionSet activityStateChanges, WebKit::UserData userData) ElementDidBlur() UpdateInputContextAfterBlurringAndRefocusingElement() FocusedElementDidChangeInputMode(enum:uint8_t WebCore::InputMode mode) ScrollingNodeScrollWillStartScroll(uint64_t nodeID) ScrollingNodeScrollDidEndScroll(uint64_t nodeID) ShowInspectorHighlight(struct WebCore::InspectorOverlay::Highlight highlight) HideInspectorHighlight() ShowInspectorIndication() HideInspectorIndication() EnableInspectorNodeSearch() DisableInspectorNodeSearch() UpdateStringForFind(String findString) HandleAutocorrectionContext(struct WebKit::WebAutocorrectionContext context) ShowDataDetectorsUIForPositionInformation(struct WebKit::InteractionInformationAtPosition information) #endif DidChangeInspectorFrontendCount(uint64_t count) CreateInspectorTarget(String targetId, enum:uint8_t Inspector::InspectorTargetType type) DestroyInspectorTarget(String targetId) SendMessageToInspectorFrontend(String targetId, String message) # Search popup menus SaveRecentSearches(String name, Vector searchItems) LoadRecentSearches(String name) -> (Vector result) Synchronous #if ENABLE(PDFKIT_PLUGIN) && !ENABLE(UI_PROCESS_PDF_HUD) SavePDFToFileInDownloadsFolder(String suggestedFilename, URL originatingURL, IPC::DataReference data) SavePDFToTemporaryFolderAndOpenWithNativeApplication(String suggestedFilename, struct WebKit::FrameInfoData sourceFrameInfo, IPC::DataReference data, String pdfUUID) OpenPDFFromTemporaryFolderWithNativeApplication(struct WebKit::FrameInfoData sourceFrameInfo, String pdfUUID) #endif #if ENABLE(PDFKIT_PLUGIN) ShowPDFContextMenu(struct WebKit::PDFContextMenu contextMenu, WebKit::PDFPluginIdentifier identifier) -> (std::optional selectedItem) Synchronous #endif DidUpdateActivityState() #if ENABLE(WEB_CRYPTO) WrapCryptoKey(Vector key) -> (bool succeeded, Vector wrappedKey) Synchronous UnwrapCryptoKey(Vector wrappedKey) -> (bool succeeded, Vector key) Synchronous #endif #if ENABLE(TELEPHONE_NUMBER_DETECTION) #if PLATFORM(MAC) ShowTelephoneNumberMenu(String telephoneNumber, WebCore::IntPoint point, WebCore::IntRect rect) #endif #endif #if USE(QUICK_LOOK) DidStartLoadForQuickLookDocumentInMainFrame(String fileName, String uti) DidFinishLoadForQuickLookDocumentInMainFrame(WebKit::ShareableResource::Handle resource) RequestPasswordForQuickLookDocumentInMainFrame(String fileName) -> (String password) #endif #if ENABLE(CONTENT_FILTERING) ContentFilterDidBlockLoadForFrame(WebCore::ContentFilterUnblockHandler unblockHandler, WebCore::FrameIdentifier frameID) #endif IsPlayingMediaDidChange(OptionSet state) HandleAutoplayEvent(enum:uint8_t WebCore::AutoplayEvent event, OptionSet flags) #if PLATFORM(MAC) DidPerformImmediateActionHitTest(struct WebKit::WebHitTestResultData result, bool contentPreventsDefault, WebKit::UserData userData) #endif HandleMessage(String messageName, WebKit::UserData messageBody) WantsConnection HandleSynchronousMessage(String messageName, WebKit::UserData messageBody) -> (WebKit::UserData returnData) Synchronous WantsConnection HandleAutoFillButtonClick(WebKit::UserData userData) DidResignInputElementStrongPasswordAppearance(WebKit::UserData userData) #if ENABLE(CONTENT_EXTENSIONS) ContentRuleListNotification(URL url, struct WebCore::ContentRuleListResults results) #endif #if ENABLE(WIRELESS_PLAYBACK_TARGET) && !PLATFORM(IOS_FAMILY) AddPlaybackTargetPickerClient(WebCore::PlaybackTargetClientContextIdentifier contextId) RemovePlaybackTargetPickerClient(WebCore::PlaybackTargetClientContextIdentifier contextId) ShowPlaybackTargetPicker(WebCore::PlaybackTargetClientContextIdentifier contextId, WebCore::FloatRect pickerLocation, bool hasVideo) PlaybackTargetPickerClientStateDidChange(WebCore::PlaybackTargetClientContextIdentifier contextId, OptionSet mediaState) SetMockMediaPlaybackTargetPickerEnabled(bool enabled) SetMockMediaPlaybackTargetPickerState(String name, enum:uint8_t WebCore::MediaPlaybackTargetContext::MockState pickerState) MockMediaPlaybackTargetPickerDismissPopup() #endif #if ENABLE(VIDEO_PRESENTATION_MODE) SetMockVideoPresentationModeEnabled(bool enabled) #endif #if ENABLE(POINTER_LOCK) RequestPointerLock() RequestPointerUnlock() #endif DidFailToSuspendAfterProcessSwap() DidSuspendAfterProcessSwap() ImageOrMediaDocumentSizeChanged(WebCore::IntSize newSize) UseFixedLayoutDidChange(bool useFixedLayout) FixedLayoutSizeDidChange(WebCore::IntSize fixedLayoutSize) #if ENABLE(VIDEO) && USE(GSTREAMER) RequestInstallMissingMediaPlugins(String details, String description) #endif DidRestoreScrollPosition() RequestScrollToRect(WebCore::FloatRect targetRect, WebCore::FloatPoint origin) GetLoadDecisionForIcon(struct WebCore::LinkIcon icon, WebKit::CallbackID callbackID) #if PLATFORM(MAC) DidHandleAcceptedCandidate() #endif SetIsUsingHighPerformanceWebGL(bool isUsingHighPerformanceWebGL) StartURLSchemeTask(struct WebKit::URLSchemeTaskParameters parameters) StopURLSchemeTask(WebKit::WebURLSchemeHandlerIdentifier handlerIdentifier, WebCore::ResourceLoaderIdentifier taskIdentifier) LoadSynchronousURLSchemeTask(struct WebKit::URLSchemeTaskParameters parameters) -> (WebCore::ResourceResponse response, WebCore::ResourceError error, Vector data) Synchronous #if ENABLE(DEVICE_ORIENTATION) ShouldAllowDeviceOrientationAndMotionAccess(WebCore::FrameIdentifier frameID, struct WebKit::FrameInfoData frameInfo, bool mayPrompt) -> (enum:uint8_t WebCore::DeviceOrientationOrMotionPermissionState permissionState) #endif #if ENABLE(ATTACHMENT_ELEMENT) RegisterAttachmentIdentifierFromData(String identifier, String contentType, String preferredFileName, IPC::SharedBufferReference data) RegisterAttachmentIdentifierFromFilePath(String identifier, String contentType, String filePath) RegisterAttachmentIdentifier(String identifier) RegisterAttachmentsFromSerializedData(Vector data) CloneAttachmentData(String fromIdentifier, String toIdentifier) DidInsertAttachmentWithIdentifier(String identifier, String source, bool hasEnclosingImage) DidRemoveAttachmentWithIdentifier(String identifier) SerializedAttachmentDataForIdentifiers(Vector identifiers) -> (Vector seralizedData) Synchronous #if PLATFORM(IOS_FAMILY) WritePromisedAttachmentToPasteboard(struct WebCore::PromisedAttachmentInfo info, String authorizationToken) #endif RequestAttachmentIcon(String identifier, String contentType, String path, String title, WebCore::FloatSize size) #endif #if ENABLE(APP_HIGHLIGHTS) StoreAppHighlight(struct WebCore::AppHighlight info) #endif SignedPublicKeyAndChallengeString(unsigned keySizeIndex, String challengeString, URL url) -> (String result) Synchronous #if ENABLE(SPEECH_SYNTHESIS) SpeechSynthesisVoiceList() -> (Vector voiceList) Synchronous SpeechSynthesisSpeak(String text, String lang, float volume, float rate, float pitch, MonotonicTime startTime, String voiceURI, String voiceName, String voiceLang, bool localService, bool defaultVoice) -> () SpeechSynthesisSetFinishedCallback() -> () SpeechSynthesisCancel() SpeechSynthesisPause() -> () SpeechSynthesisResume() -> () SpeechSynthesisResetState() #endif #if ENABLE(UI_PROCESS_PDF_HUD) CreatePDFHUD(WebKit::PDFPluginIdentifier identifier, WebCore::IntRect boundingBox) UpdatePDFHUDLocation(WebKit::PDFPluginIdentifier identifier, WebCore::IntRect boundingBox) RemovePDFHUD(WebKit::PDFPluginIdentifier identifier) #endif ConfigureLoggingChannel(String channelName, enum:uint8_t WTFLogChannelState state, enum:uint8_t WTFLogLevel level) #if PLATFORM(GTK) ShowEmojiPicker(WebCore::IntRect caretRect) -> (String result) #endif #if HAVE(VISIBILITY_PROPAGATION_VIEW) DidCreateContextInWebProcessForVisibilityPropagation(WebKit::LayerHostingContextID contextID); #endif #if ENABLE(WEB_AUTHN) SetMockWebAuthenticationConfiguration(struct WebCore::MockWebAuthenticationConfiguration configuration); #endif #if PLATFORM(GTK) || PLATFORM(WPE) SendMessageToWebView(struct WebKit::UserMessage userMessage) SendMessageToWebViewWithReply(struct WebKit::UserMessage userMessage) -> (struct WebKit::UserMessage replyMessage) #endif DidFindTextManipulationItems(Vector items) #if ENABLE(MEDIA_USAGE) AddMediaUsageManagerSession(WebCore::MediaSessionIdentifier identifier, String bundleIdentifier, URL pageURL); UpdateMediaUsageManagerSessionState(WebCore::MediaSessionIdentifier identifier, struct WebCore::MediaUsageInfo info); RemoveMediaUsageManagerSession(WebCore::MediaSessionIdentifier identifier); #endif SetHasExecutedAppBoundBehaviorBeforeNavigation() #if PLATFORM(MAC) ChangeUniversalAccessZoomFocus(WebCore::IntRect viewRect, WebCore::IntRect caretRect) #endif #if ENABLE(ARKIT_INLINE_PREVIEW_IOS) TakeModelElementFullscreen(struct WebKit::ModelIdentifier modelIdentifier) ModelElementSetInteractionEnabled(struct WebKit::ModelIdentifier modelIdentifier, bool isInteractionEnabled) #endif #if ENABLE(ARKIT_INLINE_PREVIEW_MAC) ModelElementCreateRemotePreview(String uuid, WebCore::FloatSize size) -> (Expected, WebCore::ResourceError> result) ModelElementLoadRemotePreview(String uuid, URL url) -> (std::optional error) ModelElementDestroyRemotePreview(String uuid) ModelElementSizeDidChange(String uuid, WebCore::FloatSize size) -> (Expected result) HandleMouseDownForModelElement(String uuid, WebCore::LayoutPoint flippedLocationInElement, MonotonicTime timestamp) HandleMouseMoveForModelElement(String uuid, WebCore::LayoutPoint flippedLocationInElement, MonotonicTime timestamp) HandleMouseUpForModelElement(String uuid, WebCore::LayoutPoint flippedLocationInElement, MonotonicTime timestamp) ModelInlinePreviewUUIDs() -> (Vector uuids) #endif #if ENABLE(ARKIT_INLINE_PREVIEW) ModelElementGetCamera(struct WebKit::ModelIdentifier modelIdentifier) -> (Expected result) ModelElementSetCamera(struct WebKit::ModelIdentifier modelIdentifier, struct WebCore::HTMLModelElementCamera camera) -> (bool success) ModelElementIsPlayingAnimation(struct WebKit::ModelIdentifier modelIdentifier) -> (Expected result) ModelElementSetAnimationIsPlaying(struct WebKit::ModelIdentifier modelIdentifier, bool isPlaying) -> (bool success) ModelElementIsLoopingAnimation(struct WebKit::ModelIdentifier modelIdentifier) -> (Expected result) ModelElementSetIsLoopingAnimation(struct WebKit::ModelIdentifier modelIdentifier, bool isLooping) -> (bool success) ModelElementAnimationDuration(struct WebKit::ModelIdentifier modelIdentifier) -> (Expected result) ModelElementAnimationCurrentTime(struct WebKit::ModelIdentifier modelIdentifier) -> (Expected result) ModelElementSetAnimationCurrentTime(struct WebKit::ModelIdentifier modelIdentifier, Seconds currentTime) -> (bool success) ModelElementHasAudio(struct WebKit::ModelIdentifier modelIdentifier) -> (Expected result) ModelElementIsMuted(struct WebKit::ModelIdentifier modelIdentifier) -> (Expected result) ModelElementSetIsMuted(struct WebKit::ModelIdentifier modelIdentifier, bool isMuted) -> (bool success) #endif QueryPermission(struct WebCore::ClientOrigin origin, struct WebCore::PermissionDescriptor descriptor) -> (std::optional state, bool shouldCache) #if ENABLE(APPLE_PAY_AMS_UI) StartApplePayAMSUISession(URL originatingURL, struct WebCore::ApplePayAMSUIRequest request) -> (std::optional result) AbortApplePayAMSUISession() #endif RequestCookieConsent() -> (enum:uint8_t WebCore::CookieConsentDecisionResult result) ClassifyModalContainerControls(Vector texts) -> (Vector types) DecidePolicyForModalContainer(OptionSet types) -> (enum:uint8_t WebCore::ModalContainerDecision decision) }