# Copyright (C) 2010, 2011 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 -> WebPage { SetActive(bool active) SetFocused(bool focused) SetInitialFocus(bool forward, bool isKeyboardEventValid, WebKit::WebKeyboardEvent event) SetIsInWindow(bool isInWindow) SetDrawsBackground(bool drawsBackground) SetDrawsTransparentBackground(bool drawsTransparentBackground) ViewWillStartLiveResize() ViewWillEndLiveResize() #if ENABLE(TIZEN_ISF_PORT) KeyEvent(WebKit::NativeWebKeyboardEvent event) #endif #if !ENABLE(TIZEN_ISF_PORT) KeyEvent(WebKit::WebKeyboardEvent event) #endif KeyEventSyncForTesting(WebKit::WebKeyboardEvent event) -> (bool handled) MouseEvent(WebKit::WebMouseEvent event) MouseEventSyncForTesting(WebKit::WebMouseEvent event) -> (bool handled) WheelEventSyncForTesting(WebKit::WebWheelEvent event) -> (bool handled) #if ENABLE(TOUCH_EVENTS) TouchEvent(WebKit::WebTouchEvent event) TouchEventSyncForTesting(WebKit::WebTouchEvent event) -> (bool handled) #if ENABLE(TOUCH_EVENTS) && PLATFORM(QT) HighlightPotentialActivation(WebCore::IntPoint point, WebCore::IntSize area) #endif #if ENABLE(INPUT_TYPE_COLOR) DidEndColorChooser(); DidChooseColor(WebCore::Color color); #endif #if ENABLE(CONTEXT_MENUS) ContextMenuHidden() #endif ScrollBy(uint32_t scrollDirection, uint32_t scrollGranularity) CenterSelectionInVisibleArea() #if PLATFORM(EFL) && OS(TIZEN) ScrollMainFrameBy(WebCore::IntSize scrollOffset) ScrollMainFrameTo(WebCore::IntPoint scrollPosition) CreateSnapshot(WebCore::IntRect rects, float scaleFactor) -> (WebKit::ShareableBitmap::Handle snapshotHandle) RequestUpdateFormNavigation() MoveFocus(int newIndex) #if ENABLE(TIZEN_WEBKIT2_HIT_TEST) HitTestResultAtPoint(WebCore::IntPoint point, int hitTestMode) -> (WebKit::WebHitTestResult::Data hitTestResultData) #endif SuspendJavaScriptAndResources() ResumeJavaScriptAndResources() #endif #if ENABLE(TIZEN_SUPPORT_RSS_LINK_PARSING) GetRssItems(uint64_t callbackID) #endif #if ENABLE(TIZEN_WEB_STORAGE) GetStorageQuotaBytes(uint64_t callbackID) SetStorageQuotaBytes(uint32_t quota) #endif #if ENABLE(TIZEN_ORIENTATION_EVENTS) SendOrientationChangeEvent(int orientation) #endif #if ENABLE(TIZEN_WEBKIT2_THEME_SET) SetThemePath(WTF::String string) #endif GoBack(uint64_t backForwardItemID) GoForward(uint64_t backForwardItemID) GoToBackForwardItem(uint64_t backForwardItemID) TryRestoreScrollPosition() LoadHTMLString(WTF::String htmlString, WTF::String baseURL) LoadAlternateHTMLString(WTF::String htmlString, WTF::String baseURL, WTF::String unreachableURL); LoadPlainTextString(WTF::String string) LoadWebArchiveData(CoreIPC::DataReference webArchiveData) #if OS(TIZEN) LoadContentsbyMimeType(CoreIPC::DataReference contents, WTF::String mimeType, WTF::String encoding, WTF::String baseURL) #endif LoadURL(WTF::String url, WebKit::SandboxExtension::Handle sandboxExtensionHandle) LoadURLRequest(WebCore::ResourceRequest request, WebKit::SandboxExtension::Handle sandboxExtensionHandle) LinkClicked(WTF::String url, WebKit::WebMouseEvent event) Reload(bool reloadFromOrigin, WebKit::SandboxExtension::Handle sandboxExtensionHandle) StopLoading() #if PLATFORM(QT) ApplicationSchemeReply(WebKit::QtNetworkReplyData reply) RegisterApplicationScheme(WTF::String scheme) SetUserScripts(WTF::Vector script) #endif StopLoadingFrame(uint64_t frameID) RestoreSession(WebKit::SessionState state) RestoreSessionAndNavigateToCurrentItem(WebKit::SessionState state) DidRemoveBackForwardItem(uint64_t backForwardItemID) SetWillGoToBackForwardItemCallbackEnabled(bool willGoToBackForwardItemEnabled) DidReceivePolicyDecision(uint64_t frameID, uint64_t listenerID, uint32_t policyAction, uint64_t downloadID) ClearSelection() # Callbacks. GetContentsAsString(uint64_t callbackID) GetMainResourceDataOfFrame(uint64_t frameID, uint64_t callbackID) GetResourceDataFromFrame(uint64_t frameID, WTF::String resourceURL, uint64_t callbackID) GetRenderTreeExternalRepresentation(uint64_t callbackID) GetSelectionOrContentsAsString(uint64_t callbackID) GetSourceForFrame(uint64_t frameID, uint64_t callbackID) GetWebArchiveOfFrame(uint64_t frameID, uint64_t callbackID) RunJavaScriptInMainFrame(WTF::String script, uint64_t callbackID) ForceRepaint(uint64_t callbackID) #if PLATFORM(MAC) # Dictionary support. PerformDictionaryLookupAtLocation(WebCore::FloatPoint point) #endif PreferencesDidChange(WebKit::WebPreferencesStore store) SetUserAgent(WTF::String userAgent) SetCustomTextEncodingName(WTF::String encodingName) SuspendActiveDOMObjectsAndAnimations() ResumeActiveDOMObjectsAndAnimations() #if USE(TILED_BACKING_STORE) SetFixedVisibleContentRect(WebCore::IntRect rect) SetResizesToContentsUsingLayoutSize(WebCore::IntSize size) SetViewportSize(WebCore::IntSize size) #endif Close() TryClose() ValidateCommand(WTF::String name, uint64_t callbackID) ExecuteEditCommand(WTF::String name) #if OS(TIZEN) ExecuteEditCommandWithArgument(WTF::String name, WTF::String argument) #endif DidRemoveEditCommand(uint64_t commandID) ReapplyEditCommand(uint64_t commandID) UnapplyEditCommand(uint64_t commandID) SetPageAndTextZoomFactors(double pageZoomFactor, double textZoomFactor) SetPageZoomFactor(double zoomFactor) SetTextZoomFactor(double zoomFactor) WindowScreenDidChange(uint64_t displayID) ScalePage(double scale, WebCore::IntPoint origin) SetUseFixedLayout(bool fixed) SetFixedLayoutSize(WebCore::IntSize size) SetPaginationMode(uint32_t mode); SetPaginationBehavesLikeColumns(bool behavesLikeColumns); SetPageLength(double pageLength); SetGapBetweenPages(double gap); # Find. FindString(WTF::String string, uint32_t findOptions, unsigned maxMatchCount) HideFindUI() CountStringMatches(WTF::String string, uint32_t findOptions, unsigned maxMatchCount) #if ENABLE(DRAG_SUPPORT) # Drag and drop. #if ENABLE(DRAG_SUPPORT) && PLATFORM(WIN) PerformDragControllerAction(uint64_t action, WebCore::IntPoint clientPosition, WebCore::IntPoint globalPosition, uint64_t draggingSourceOperationMask, HashMap> dataMap, uint32_t flags) #endif #if ENABLE(DRAG_SUPPORT) && (PLATFORM(QT) || PLATFORM(GTK)) PerformDragControllerAction(uint64_t action, WebCore::DragData dragData) #endif #if ENABLE(DRAG_SUPPORT) && (!PLATFORM(WIN) && !PLATFORM(QT) && !PLATFORM(GTK)) PerformDragControllerAction(uint64_t action, WebCore::IntPoint clientPosition, WebCore::IntPoint globalPosition, uint64_t draggingSourceOperationMask, WTF::String dragStorageName, uint32_t flags, WebKit::SandboxExtension::Handle sandboxExtensionHandle, WebKit::SandboxExtension::HandleArray sandboxExtensionsForUpload) #endif #if ENABLE(DRAG_SUPPORT) DragEnded(WebCore::IntPoint clientPosition, WebCore::IntPoint globalPosition, uint64_t operation) #endif #endif # Popup menu. DidChangeSelectedIndexForActivePopupMenu(int32_t newIndex); SetTextForActivePopupMenu(int32_t index); #if PLATFORM(GTK) FailedToShowPopupMenu(); #endif #if ENABLE(CONTEXT_MENUS) # Context menu. #if ENABLE(CONTEXT_MENUS) DidSelectItemFromActiveContextMenu(WebKit::WebContextMenuItemData menuItem); #endif # Open panel. DidChooseFilesForOpenPanel(Vector fileURLs) DidCancelForOpenPanel() #if ENABLE(WEB_PROCESS_SANDBOX) ExtendSandboxForFileFromOpenPanel(WebKit::SandboxExtension::Handle sandboxExtensionHandle) #endif # Spelling and grammar. AdvanceToNextMisspelling(bool startBeforeSelection) ChangeSpellingToWord(WTF::String word) #if PLATFORM(MAC) UppercaseWord(); LowercaseWord(); CapitalizeWord(); SetSmartInsertDeleteEnabled(bool isSmartInsertDeleteEnabled); #endif #if ENABLE(GEOLOCATION) # Geolocation DidReceiveGeolocationPermissionDecision(uint64_t geolocationID, bool allowed) #endif # Notification DidReceiveNotificationPermissionDecision(uint64_t notificationID, bool allowed) #if ENABLE(TIZEN_MEDIA_STREAM) # UserMedia messages DidReceiveUserMediaPermissionDecision(uint64_t userMediaID, bool allowed) #endif SetWindowResizerSize(WebCore::IntSize intersectsView) # Printing. BeginPrinting(uint64_t frameID, WebKit::PrintInfo printInfo) EndPrinting(); ComputePagesForPrinting(uint64_t frameID, WebKit::PrintInfo printInfo, uint64_t callbackID) #if PLATFORM(MAC) || PLATFORM(WIN) DrawRectToPDF(uint64_t frameID, WebKit::PrintInfo printInfo, WebCore::IntRect rect, uint64_t callbackID) DrawPagesToPDF(uint64_t frameID, WebKit::PrintInfo printInfo, uint32_t first, uint32_t count, uint64_t callbackID) #endif #if PLATFORM(GTK) DrawPagesForPrinting(uint64_t frameID, WebKit::PrintInfo printInfo, uint64_t callbackID) #endif #if ENABLE(TIZEN_SUPPORT_WEBAPP_META_TAG) GetWebAppCapable(uint64_t callbackID) GetWebAppIconURL(uint64_t callbackID) #endif # Media SetMediaVolume(float volume) SetMemoryCacheMessagesEnabled(bool memoryCacheMessagesEnabled) // FIXME: This a dummy message, to avoid breaking the build for platforms that don't require // any synchronous messages, and should be removed when is fixed. Dummy() -> (bool dummyReturn) SetCanRunBeforeUnloadConfirmPanel(bool canRunBeforeUnloadConfirmPanel) SetCanRunModal(bool canRunModal) #if PLATFORM(QT) SetComposition(WTF::String text, WTF::Vector underlines, uint64_t selectionStart, uint64_t selectionEnd, uint64_t replacementRangeStart, uint64_t replacementRangeEnd) ConfirmComposition(WTF::String text, int64_t selectionStart, int64_t selectionLength) CancelComposition() #endif #if PLATFORM(MAC) # Complex text input support for plug-ins. SendComplexTextInputToPlugin(uint64_t pluginComplexTextInputIdentifier, String textInput) SetWindowIsVisible(bool windowIsVisible) WindowAndViewFramesChanged(WebCore::IntRect windowFrameInScreenCoordinates, WebCore::IntRect viewFrameInWindowCoordinates, WebCore::IntPoint accessibilityViewCoordinates) RegisterUIProcessAccessibilityTokens(CoreIPC::DataReference elemenToken, CoreIPC::DataReference windowToken) GetStringSelectionForPasteboard() -> (WTF::String stringValue) GetDataSelectionForPasteboard(WTF::String pasteboardType) -> (WebKit::SharedMemory::Handle handle, uint64_t size) ReadSelectionFromPasteboard(WTF::String pasteboardName) -> (bool result) # Text input. SetComposition(WTF::String text, WTF::Vector underlines, uint64_t selectionStart, uint64_t selectionEnd, uint64_t replacementRangeStart, uint64_t replacementRangeEnd) -> (WebKit::EditorState newState) ConfirmComposition() -> (WebKit::EditorState newState) CancelComposition() -> (WebKit::EditorState newState) InsertText(WTF::String text, uint64_t replacementRangeStart, uint64_t replacementRangeEnd) -> (bool handled, WebKit::EditorState newState) GetMarkedRange() -> (uint64_t location, uint64_t length) GetSelectedRange() -> (uint64_t location, uint64_t length) GetAttributedSubstringFromRange(uint64_t location, uint64_t length) -> (WebKit::AttributedString result) CharacterIndexForPoint(WebCore::IntPoint point) -> (uint64_t result) FirstRectForCharacterRange(uint64_t location, uint64_t length) -> (WebCore::IntRect resultRect) ExecuteKeypressCommands(Vector savedCommands) -> (bool handled, WebKit::EditorState newState) ShouldDelayWindowOrderingEvent(WebKit::WebMouseEvent event) -> (bool result) AcceptsFirstMouse(int eventNumber, WebKit::WebMouseEvent event) -> (bool result) #endif #if PLATFORM(WIN) // FIXME: Unify with Mac counterparts. ConfirmComposition(WTF::String compositionString) SetComposition(WTF::String compositionString, WTF::Vector underlines, uint64_t cursorPosition) FirstRectForCharacterInSelectedRange(uint64_t characterPosition) -> (WebCore::IntRect resultRect) GetSelectedText() -> (WTF::String text) GestureWillBegin(WebCore::IntPoint point) -> (bool canBeginPanning) GestureDidScroll(WebCore::IntSize size) GestureDidEnd() #endif #if PLATFORM(EFL) && OS(TIZEN) ConfirmComposition(WTF::String compositionString) SetComposition(WTF::String compositionString, WTF::Vector underlines, uint64_t cursorPosition) #if ENABLE(TIZEN_TEXT_CARET_HANDLING_WK2) SetCaretPosition(WebCore::IntPoint pos) GetCaretPosition() -> (WebCore::IntRect rect) #endif #if ENABLE(TIZEN_ISF_PORT) GetCursorOffsetPosition() -> (int offset) GetContentOfPosition() -> (String offset) DeleteSurroundingPosition() -> (bool result); #endif #endif #if PLATFORM(QT) || OS(TIZEN) FindZoomableAreaForPoint(WebCore::IntPoint point, WebCore::IntSize area) #endif #if PLATFORM(MAC) && !defined(BUILDING_ON_SNOW_LEOPARD) HandleAlternativeTextUIResult(String result) #endif #if ENABLE(PAGE_VISIBILITY_API) SetVisibilityState(int visibilityState, bool isInitialState); #endif #if ENABLE(TIZEN_INPUT_TAG_EXTENSION) SetFocusedInputElementValue(WTF::String inputValue) GetFocusedInputElementValue() -> (String inputValue) #endif #if ENABLE(TIZEN_DATALIST_ELEMENT) GetFocusedInputElementDataList() -> (Vector options) #endif #if ENABLE(TIZEN_RECORDING_SURFACE_SET) RecordingSurfaceSetEnableSet(bool enable) #endif #if ENABLE(TIZEN_WEBKIT2_TEXT_SELECTION) SelectClosestWord(uint64_t frameID, WebCore::IntPoint point, bool isStartedTextSelectionFromOutside) -> (bool result) SetLeftSelection(uint64_t frameID, WebCore::IntPoint point) -> (bool result) SetRightSelection(uint64_t frameID, WebCore::IntPoint point) -> (bool result) GetSelectionHandlers(uint64_t frameID) -> (bool result, WebCore::IntRect leftRect, WebCore::IntRect rightRect) GetSelectionText(uint64_t frameID) -> (String result) SelectionRangeClear(uint64_t frameID) -> (bool result) #endif #if ENABLE(TIZEN_WEBKIT_PASTEBOARD) SetDataToPasteboardWithType(WTF::String data, uint64_t type) #endif #if ENABLE(TIZEN_NPAPI) SuspendPlugin() ResumePlugin() #endif #if ENABLE(TIZEN_WEBKIT2_REMOTE_WEB_INSPECTOR) StartInspectorServer(uint32_t port) -> (uint32_t assignedPort) StopInspectorServer() -> (bool result) #endif #if ENABLE(TIZEN_CSS_OVERFLOW_SCROLL) ScrollOverflow(WebCore::FloatPoint point) -> (bool scrolled) SetPressedNodeAtPoint(WebCore::IntPoint point) -> (bool pressed) #endif #if ENABLE(TIZEN_FIX_PLUGIN_DOWNLOAD) ArePluginsEnabled() -> (bool enabled) #endif #if ENABLE(TIZEN_CUSTOM_HEADERS) AddCustomHeader(WTF::String name, WTF::String value) #endif #if ENABLE(TIZEN_MOBILE_WEB_PRINT) CreatePagesToPDF(WebCore::IntSize size, WTF::String fileName) #endif #if ENABLE(TIZEN_WEBKIT2_GET_TEXT_STYLE_FOR_SELECTION) GetTextStyleStateForSelection() #endif }