Upstream version 9.38.198.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / Source / core / testing / Internals.idl
index daec6fd..675dfbc 100644 (file)
@@ -32,7 +32,7 @@
 
     GCObservation observeGC(any observed);
 
-    [RaisesException] DOMString elementRenderTreeAsText(Element element);
+    [RaisesException, TypeChecking=Interface] DOMString elementRenderTreeAsText(Element element);
     boolean isPreloaded(DOMString url);
     boolean isLoadingFromMemoryCache(DOMString url);
 
     [RaisesException] DOMString styleResolverStatsReport();
     [RaisesException] DOMString styleResolverStatsTotalsReport();
 
-    [RaisesException] boolean isSharingStyle(Element element1, Element element2);
+    [TypeChecking=Interface] boolean isSharingStyle(Element element1, Element element2);
 
-    [RaisesException] CSSStyleDeclaration computedStyleIncludingVisitedInfo(Node node);
+    [TypeChecking=Interface] CSSStyleDeclaration computedStyleIncludingVisitedInfo(Node node);
 
-    [RaisesException] ShadowRoot shadowRoot(Element host);
-    [RaisesException] ShadowRoot youngestShadowRoot(Element host);
-    [RaisesException] ShadowRoot oldestShadowRoot(Element host);
-    [RaisesException] ShadowRoot youngerShadowRoot(Node root);
+    [TypeChecking=Interface] ShadowRoot shadowRoot(Element host);
+    [TypeChecking=Interface] ShadowRoot youngestShadowRoot(Element host);
+    [TypeChecking=Interface] ShadowRoot oldestShadowRoot(Element host);
+    [RaisesException, TypeChecking=Interface] ShadowRoot youngerShadowRoot(Node root);
 
-    [RaisesException] DOMString shadowRootType(Node root);
+    [RaisesException, TypeChecking=Interface] DOMString shadowRootType(Node root);
     [RaisesException] boolean hasShadowInsertionPoint(Node root);
     [RaisesException] boolean hasContentElement(Node root);
-    [RaisesException] unsigned long countElementShadow(Node Root);
-    [RaisesException] DOMString shadowPseudoId(Element element);
-    [RaisesException] void setShadowPseudoId(Element element, DOMString id);
-    [RaisesException] boolean isValidContentSelect(Element contentElement);
-    [RaisesException] Node treeScopeRootNode(Node node);
-    [RaisesException] Node parentTreeScope(Node node);
-    [RaisesException] boolean hasSelectorForIdInShadow(Element host, DOMString id);
-    [RaisesException] boolean hasSelectorForClassInShadow(Element host, DOMString className);
-    [RaisesException] boolean hasSelectorForAttributeInShadow(Element host, DOMString attributeName);
-    [RaisesException] boolean hasSelectorForPseudoClassInShadow(Element host, DOMString pseudoClass);
-    [RaisesException] unsigned short compareTreeScopePosition(Node treeScope1, Node treeScope2);
+    [RaisesException, TypeChecking=Interface] unsigned long countElementShadow(Node Root);
+    [TypeChecking=Interface] DOMString shadowPseudoId(Element element);
+    [TypeChecking=Interface] void setShadowPseudoId(Element element, DOMString id);
+    [RaisesException, TypeChecking=Interface] boolean isValidContentSelect(Element contentElement);
+    [TypeChecking=Interface] Node treeScopeRootNode(Node node);
+    [TypeChecking=Interface] Node parentTreeScope(Node node);
+    [RaisesException, TypeChecking=Interface] boolean hasSelectorForIdInShadow(Element host, DOMString id);
+    [RaisesException, TypeChecking=Interface] boolean hasSelectorForClassInShadow(Element host, DOMString className);
+    [RaisesException, TypeChecking=Interface] boolean hasSelectorForAttributeInShadow(Element host, DOMString attributeName);
+    [RaisesException, TypeChecking=Interface] boolean hasSelectorForPseudoClassInShadow(Element host, DOMString pseudoClass);
+    [RaisesException, TypeChecking=Interface] unsigned short compareTreeScopePosition(Node treeScope1, Node treeScope2);
     [RaisesException] unsigned long updateStyleAndReturnAffectedElementCount();
     [RaisesException] unsigned long needsLayoutCount();
+    [RaisesException] unsigned long hitTestCount(Document document);
 
     // CSS Animation and Transition testing.
-    unsigned long numberOfActiveAnimations();
     [RaisesException] void pauseAnimations(double pauseTime);
 
-    [RaisesException] Node nextSiblingByWalker(Node node);
-    [RaisesException] Node firstChildByWalker(Node node);
-    [RaisesException] Node lastChildByWalker(Node node);
-    [RaisesException] Node nextNodeByWalker(Node node);
-    [RaisesException] Node previousNodeByWalker(Node node);
+    [TypeChecking=Interface] Node nextSiblingByWalker(Node node);
+    [TypeChecking=Interface] Node firstChildByWalker(Node node);
+    [TypeChecking=Interface] Node lastChildByWalker(Node node);
+    [TypeChecking=Interface] Node nextNodeByWalker(Node node);
+    [TypeChecking=Interface] Node previousNodeByWalker(Node node);
 
     DOMString visiblePlaceholder(Element element);
 
-    void selectColorInColorChooser(Element element, DOMString colorValue);
+    [TypeChecking=Interface] void selectColorInColorChooser(Element element, DOMString colorValue);
 
     // If the argument is omitted, the top-level document is used.
     boolean hasAutofocusRequest(optional Document document);
 
     [RaisesException] ClientRect absoluteCaretBounds();
 
-    [RaisesException] ClientRect boundingBox(Element element);
+    [TypeChecking=Interface] ClientRect boundingBox(Element element);
 
-    [RaisesException] unsigned long markerCountForNode(Node node, DOMString markerType);
-    [RaisesException] unsigned long activeMarkerCountForNode(Node node);
-    [RaisesException] Range markerRangeForNode(Node node, DOMString markerType, unsigned long index);
-    [RaisesException] DOMString markerDescriptionForNode(Node node, DOMString markerType, unsigned long index);
-    void addTextMatchMarker(Range range, boolean isActive);
-    [RaisesException] void setMarkersActive(Node node, unsigned long startOffset, unsigned long endOffset, boolean active);
-    [RaisesException] void setMarkedTextMatchesAreHighlighted(Document document, boolean highlight);
+    [RaisesException, TypeChecking=Interface] unsigned long markerCountForNode(Node node, DOMString markerType);
+    [TypeChecking=Interface] unsigned long activeMarkerCountForNode(Node node);
+    [RaisesException, TypeChecking=Interface] Range markerRangeForNode(Node node, DOMString markerType, unsigned long index);
+    [RaisesException, TypeChecking=Interface] DOMString markerDescriptionForNode(Node node, DOMString markerType, unsigned long index);
+    [TypeChecking=Interface] void addTextMatchMarker(Range range, boolean isActive);
+    [TypeChecking=Interface] void setMarkersActive(Node node, unsigned long startOffset, unsigned long endOffset, boolean active);
+    void setMarkedTextMatchesAreHighlighted(Document document, boolean highlight);
 
-    [RaisesException] void setScrollViewPosition(Document document, long x, long y);
+    [RaisesException, TypeChecking=Interface] void setScrollViewPosition(Document document, long x, long y);
 
-    [RaisesException] DOMString viewportAsText(Document document,
-                                               float devicePixelRatio,
-                                               long availableWidth,
-                                               long availableHeight);
+    [RaisesException, TypeChecking=Interface] DOMString viewportAsText(Document document,
+                                                                       float devicePixelRatio,
+                                                                       long availableWidth,
+                                                                       long availableHeight);
 
-    [RaisesException] boolean wasLastChangeUserEdit(Element textField);
-    [RaisesException] boolean elementShouldAutoComplete(Element inputElement);
-    [RaisesException] DOMString suggestedValue(Element inputElement);
-    [RaisesException] void setSuggestedValue(Element inputElement, DOMString value);
-    [RaisesException] void setEditingValue(Element inputElement, DOMString value);
-    [RaisesException] void setAutofilled(Element inputElement, boolean enabled);
+    [RaisesException, TypeChecking=Interface] boolean wasLastChangeUserEdit(Element textField);
+    [RaisesException, TypeChecking=Interface] boolean elementShouldAutoComplete(Element inputElement);
+    [RaisesException, TypeChecking=Interface] DOMString suggestedValue(Element inputElement);
+    [RaisesException, TypeChecking=Interface] void setSuggestedValue(Element inputElement, DOMString value);
+    [RaisesException, TypeChecking=Interface] void setEditingValue(Element inputElement, DOMString value);
+    [RaisesException, TypeChecking=Interface] void setAutofilled(Element inputElement, boolean enabled);
 
-    [RaisesException] void scrollElementToRect(Element element, long x, long y, long w, long h);
+    [RaisesException, TypeChecking=Interface] void scrollElementToRect(Element element, long x, long y, long w, long h);
 
-    [RaisesException] Range rangeFromLocationAndLength(Element scope, long rangeLocation, long rangeLength);
-    [RaisesException] unsigned long locationFromRange(Element scope, Range range);
-    [RaisesException] unsigned long lengthFromRange(Element scope, Range range);
-    [RaisesException] DOMString rangeAsText(Range range);
+    [TypeChecking=Interface] Range rangeFromLocationAndLength(Element scope, long rangeLocation, long rangeLength);
+    [TypeChecking=Interface] unsigned long locationFromRange(Element scope, Range range);
+    [TypeChecking=Interface] unsigned long lengthFromRange(Element scope, Range range);
+    [TypeChecking=Interface] DOMString rangeAsText(Range range);
 
-    [RaisesException] WebKitPoint touchPositionAdjustedToBestClickableNode(long x, long y, long width, long height, Document document);
-    [RaisesException] Node touchNodeAdjustedToBestClickableNode(long x, long y, long width, long height, Document document);
-    [RaisesException] WebKitPoint touchPositionAdjustedToBestContextMenuNode(long x, long y, long width, long height, Document document);
-    [RaisesException] Node touchNodeAdjustedToBestContextMenuNode(long x, long y, long width, long height, Document document);
-    [RaisesException] ClientRect bestZoomableAreaForTouchPoint(long x, long y, long width, long height, Document document);
+    [RaisesException, TypeChecking=Interface] WebKitPoint touchPositionAdjustedToBestClickableNode(long x, long y, long width, long height, Document document);
+    [RaisesException, TypeChecking=Interface] Node touchNodeAdjustedToBestClickableNode(long x, long y, long width, long height, Document document);
+    [RaisesException, TypeChecking=Interface] WebKitPoint touchPositionAdjustedToBestContextMenuNode(long x, long y, long width, long height, Document document);
+    [RaisesException, TypeChecking=Interface] Node touchNodeAdjustedToBestContextMenuNode(long x, long y, long width, long height, Document document);
+    [RaisesException, TypeChecking=Interface] ClientRect bestZoomableAreaForTouchPoint(long x, long y, long width, long height, Document document);
 
     [RaisesException] long lastSpellCheckRequestSequence(Document document);
     [RaisesException] long lastSpellCheckProcessedSequence(Document document);
     sequence<DOMString> userPreferredLanguages();
     void setUserPreferredLanguages(sequence<DOMString> languages);
 
-    [RaisesException] unsigned long activeDOMObjectCount(Document document);
-    [RaisesException] unsigned long wheelEventHandlerCount(Document document);
-    [RaisesException] unsigned long scrollEventHandlerCount(Document document);
-    [RaisesException] unsigned long touchEventHandlerCount(Document document);
-    [RaisesException] LayerRectList touchEventTargetLayerRects(Document document);
+    [TypeChecking=Interface] unsigned long activeDOMObjectCount(Document document);
+    [TypeChecking=Interface] unsigned long wheelEventHandlerCount(Document document);
+    [TypeChecking=Interface] unsigned long scrollEventHandlerCount(Document document);
+    [TypeChecking=Interface] unsigned long touchEventHandlerCount(Document document);
+    [RaisesException, TypeChecking=Interface] LayerRectList touchEventTargetLayerRects(Document document);
 
 
-    [RaisesException] NodeList nodesFromRect(Document document, long x, long y,
+    [RaisesException, TypeChecking=Interface] NodeList nodesFromRect(Document document, long x, long y,
         unsigned long topPadding, unsigned long rightPadding, unsigned long bottomPadding, unsigned long leftPadding,
-        boolean ignoreClipping, boolean allowShadowContent, boolean allowChildFrameContent);
+        boolean ignoreClipping, boolean allowChildFrameContent);
 
     void emitInspectorDidBeginFrame(optional long frameId);
     void emitInspectorDidCancelFrame();
 
-    [RaisesException] boolean hasSpellingMarker(Document document, long from, long length);
-    [RaisesException] boolean hasGrammarMarker(Document document, long from, long length);
-    [RaisesException] void setContinuousSpellCheckingEnabled(boolean enabled);
+    [TypeChecking=Interface] boolean hasSpellingMarker(Document document, long from, long length);
+    [TypeChecking=Interface] boolean hasGrammarMarker(Document document, long from, long length);
+    void setContinuousSpellCheckingEnabled(boolean enabled);
 
-    [RaisesException] boolean isOverwriteModeEnabled(Document document);
-    [RaisesException] void toggleOverwriteModeEnabled(Document document);
+    [TypeChecking=Interface] boolean isOverwriteModeEnabled(Document document);
+    [TypeChecking=Interface] void toggleOverwriteModeEnabled(Document document);
 
-    [RaisesException] unsigned long numberOfScrollableAreas(Document document);
+    [TypeChecking=Interface] unsigned long numberOfScrollableAreas(Document document);
 
-    [RaisesException] boolean isPageBoxVisible(Document document, long pageNumber);
+    [TypeChecking=Interface] boolean isPageBoxVisible(Document document, long pageNumber);
 
     readonly attribute InternalSettings settings;
     readonly attribute InternalProfilers profilers;
     const unsigned short LAYER_TREE_INCLUDES_PAINTING_PHASES = 4;
     const unsigned short LAYER_TREE_INCLUDES_ROOT_LAYER = 8;
     const unsigned short LAYER_TREE_INCLUDES_CLIP_AND_SCROLL_PARENTS = 16;
-    [RaisesException] DOMString layerTreeAsText(Document document, optional unsigned short flags);
-    [RaisesException] DOMString elementLayerTreeAsText(Element element, optional unsigned short flags);
+    [RaisesException, TypeChecking=Interface] DOMString layerTreeAsText(Document document, optional unsigned short flags);
+    [RaisesException, TypeChecking=Interface] DOMString elementLayerTreeAsText(Element element, optional unsigned short flags);
 
-    [RaisesException] boolean scrollsWithRespectTo(Element element1, Element element2);
-    [RaisesException] boolean isUnclippedDescendant(Element element);
+    [RaisesException, TypeChecking=Interface] boolean scrollsWithRespectTo(Element element1, Element element2);
+    [RaisesException, TypeChecking=Interface] boolean isUnclippedDescendant(Element element);
 
-    [RaisesException] DOMString scrollingStateTreeAsText(Document document);
-    [RaisesException] DOMString mainThreadScrollingReasons(Document document);
-    [RaisesException] ClientRectList nonFastScrollableRects(Document document);
+    [TypeChecking=Interface] DOMString scrollingStateTreeAsText(Document document);
+    [RaisesException, TypeChecking=Interface] DOMString mainThreadScrollingReasons(Document document);
+    [RaisesException, TypeChecking=Interface] ClientRectList nonFastScrollableRects(Document document);
 
-    [RaisesException] DOMString repaintRectsAsText(Document document);
-    [RaisesException] ClientRectList repaintRects(Element element);
-
-    [RaisesException] void garbageCollectDocumentResources(Document document);
+    [TypeChecking=Interface] void garbageCollectDocumentResources(Document document);
     void evictAllResources();
 
-    void allowRoundingHacks();
-
     unsigned long numberOfLiveNodes();
     unsigned long numberOfLiveDocuments();
     DOMString dumpRefCountedInstanceCounts();
 
     [RaisesException] void setDeviceScaleFactor(float scaleFactor);
 
-    [RaisesException] void setIsCursorVisible(Document document, boolean isVisible);
-
-    void webkitWillEnterFullScreenForElement(Document document, Element element);
-    void webkitDidEnterFullScreenForElement(Document document, Element element);
-    void webkitWillExitFullScreenForElement(Document document, Element element);
-    void webkitDidExitFullScreenForElement(Document document, Element element);
+    [RaisesException, TypeChecking=Interface] void setIsCursorVisible(Document document, boolean isVisible);
 
     void mediaPlayerRequestFullscreen(HTMLMediaElement mediaElement);
+    double effectiveMediaVolume(HTMLMediaElement mediaElement);
 
     void registerURLSchemeAsBypassingContentSecurityPolicy(DOMString scheme);
     void removeURLSchemeRegisteredAsBypassingContentSecurityPolicy(DOMString scheme);
 
-    MallocStatistics mallocStatistics();
     TypeConversions typeConversions();
 
+    // This is enabled only in Debug builds.
+    // This is because we want to avoid putting the byte stream of testing private scripts
+    // into the binary of Release builds.
+    PrivateScriptTest privateScriptTest();
+
     DOMString[] getReferencedFilePaths();
 
     // These functions both reset the tracked repaint rects. They are inteded to be used in the following order:
     //  startTrackingRepaints, repaintRectsAsText, stopTrackingRepaints.
-    [RaisesException] void startTrackingRepaints(Document document);
-    [RaisesException] void stopTrackingRepaints(Document document);
+    [RaisesException, TypeChecking=Interface] void startTrackingRepaints(Document document);
+    [RaisesException, TypeChecking=Interface] void stopTrackingRepaints(Document document);
 
     // |node| should be Document, HTMLIFrameElement, or unspecified.
     // If |node| is an HTMLIFrameElement, it assumes node.contentDocument is
     // specified without security checks. Unspecified means this document.
     [RaisesException] void updateLayoutIgnorePendingStylesheetsAndRunPostLayoutTasks(optional Node node);
 
-    [RaisesException] void forceFullRepaint(Document document);
+    [RaisesException, TypeChecking=Interface] void forceFullRepaint(Document document);
 
     // Returns a list of draggable/non-draggable regions in the document.
-    [RaisesException] ClientRectList draggableRegions(Document document);
-    [RaisesException] ClientRectList nonDraggableRegions(Document document);
+    [RaisesException, TypeChecking=Interface] ClientRectList draggableRegions(Document document);
+    [RaisesException, TypeChecking=Interface] ClientRectList nonDraggableRegions(Document document);
 
     // Returns a string with information about the mouse cursor used at the specified client location.
-    [RaisesException] DOMString getCurrentCursorInfo(Document document);
+    [RaisesException, TypeChecking=Interface] DOMString getCurrentCursorInfo(Document document);
 
-    [RaisesException] DOMString markerTextForListItem(Element element);
+    [TypeChecking=Interface] DOMString markerTextForListItem(Element element);
 
-    [RaisesException] DOMString baseURL(Document document);
+    [TypeChecking=Interface] DOMString baseURL(Document document);
 
     SerializedScriptValue deserializeBuffer(ArrayBuffer buffer);
     ArrayBuffer serializeObject(SerializedScriptValue obj);
 
     void forceReload(boolean endToEnd);
 
-    [RaisesException] DOMString getImageSourceURL(Element element);
+    [TypeChecking=Interface] DOMString getImageSourceURL(Element element);
 
-    boolean isSelectPopupVisible(Node node);
+    [TypeChecking=Interface] boolean isSelectPopupVisible(Node node);
+    boolean selectPopupItemStyleIsRtl(Node select, long itemIndex);
+    long selectPopupItemStyleFontHeight(Node select, long itemIndex);
 
     [RaisesException] ClientRect selectionBounds();
 
     boolean loseSharedGraphicsContext3D();
 
-    [RaisesException] void forceCompositingUpdate(Document document);
+    [RaisesException, TypeChecking=Interface] void forceCompositingUpdate(Document document);
 
     void setZoomFactor(float factor);
 
-    [RaisesException] void setShouldRevealPassword(Element element, boolean reveal);
+    [RaisesException, TypeChecking=Interface] void setShouldRevealPassword(Element element, boolean reveal);
 
-    [CallWith=ScriptState] Promise createPromise();
     [CallWith=ScriptState] Promise createResolvedPromise(any value);
     [CallWith=ScriptState] Promise createRejectedPromise(any reason);
-    [CallWith=ExecutionContext] Promise addOneToPromise(Promise promise);
+    [CallWith=ScriptState] Promise addOneToPromise(Promise promise);
+    [CallWith=ScriptState, RaisesException] Promise promiseCheck(long arg1, boolean arg2, Dictionary arg3, DOMString arg4, DOMString[] arg5);
+    [CallWith=ScriptState] Promise promiseCheckWithoutExceptionState(Dictionary arg1, DOMString arg2, DOMString... variadic);
+    [CallWith=ScriptState] Promise promiseCheckRange([EnforceRange] octet arg1);
 
     void setValueForUser(Element element, DOMString value);
 
 
     void setFocused(boolean focused);
 
-    [RaisesException] boolean ignoreLayoutWithPendingStylesheets(Document document);
+    [TypeChecking=Interface] boolean ignoreLayoutWithPendingStylesheets(Document document);
 
     // These functions are for testing NetInfo. You must call setNetworkStateNotifierTestOnly(true)
     // before calling setNetworkConnectionInfo.
     void setNetworkStateNotifierTestOnly(boolean testOnly);
     [RaisesException] void setNetworkConnectionInfo(DOMString type);
+
+    // This function is for testing HitRegions on Canvas2D.
+    unsigned long countHitRegions(CanvasRenderingContext2D context);
+
+    DOMString serializeNavigationMarkup();
+    void hideAllTransitionElements();
 };