Changeset 85925 in webkit
- Timestamp:
- May 6, 2011 12:27:25 AM (13 years ago)
- Location:
- trunk
- Files:
-
- 38 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r85924 r85925 1 2011-05-04 Philippe Normand <pnormand@igalia.com> 2 3 Reviewed by Dimitri Glazkov. 4 5 Implement LayoutTestController::pseudoShadowId() 6 https://bugs.webkit.org/show_bug.cgi?id=60034 7 8 * media/video-controls-transformed.html: Refactored to use the 9 pseudoShadowId() LayoutTestController method. 10 1 11 2011-05-06 MORITA Hajime <morrita@google.com> 2 12 -
trunk/LayoutTests/media/video-controls-transformed.html
r85015 r85925 20 20 if (window.eventSender) { 21 21 // Find the play button and click the middle of its bounding box. 22 // This approach hard-codes the construction order of the media 23 // controls, which is ugly, but sadly is also currently the only 24 // way to do it. 25 // http://bugs.webkit.org/show_bug.cgi?id=58584 is tracking fixing that. 26 var playButton = layoutTestController.shadowRoot(video).firstChild.firstChild.children[1]; 22 var playButton; 23 var controlsShadow = layoutTestController.shadowRoot(video).firstChild.firstChild; 24 for (child = controlsShadow.firstChild; child; child = child.nextSibling) { 25 if (layoutTestController.shadowPseudoId(child) == "-webkit-media-controls-play-button") { 26 playButton = child; 27 break; 28 } 29 } 30 27 31 if (!playButton) { 28 32 failTest("Failed to find play/pause button."); -
trunk/Source/WebKit/chromium/ChangeLog
r85919 r85925 1 2011-05-04 Philippe Normand <pnormand@igalia.com> 2 3 Reviewed by Dimitri Glazkov. 4 5 Implement LayoutTestController::pseudoShadowId() 6 https://bugs.webkit.org/show_bug.cgi?id=60034 7 8 * public/WebElement.h: 9 * src/WebElement.cpp: 10 (WebKit::WebElement::shadowPseudoId): 11 1 12 2011-05-05 John Abd-El-Malek <jam@chromium.org> 2 13 -
trunk/Source/WebKit/chromium/public/WebElement.h
r84472 r85925 63 63 WEBKIT_API WebNode ensureShadowRoot(); 64 64 WEBKIT_API void removeShadowRoot(); 65 WEBKIT_API WebString shadowPseudoId() const; 65 66 66 67 // Returns the language code specified for this element. This attribute -
trunk/Source/WebKit/chromium/src/WebElement.cpp
r85644 r85925 107 107 } 108 108 109 WebString WebElement::shadowPseudoId() const 110 { 111 return WebString(constUnwrap<Element>()->shadowPseudoId().string()); 112 } 113 109 114 WebString WebElement::computeInheritedLanguage() const 110 115 { -
trunk/Source/WebKit/gtk/ChangeLog
r85868 r85925 1 2011-05-04 Philippe Normand <pnormand@igalia.com> 2 3 Reviewed by Dimitri Glazkov. 4 5 Implement LayoutTestController::pseudoShadowId() 6 https://bugs.webkit.org/show_bug.cgi?id=60034 7 8 * WebCoreSupport/DumpRenderTreeSupportGtk.cpp: 9 (DumpRenderTreeSupportGtk::shadowPseudoId): 10 * WebCoreSupport/DumpRenderTreeSupportGtk.h: 11 1 12 2011-05-05 Bharathwaaj Srinivasan <bharathwaaj.s@gmail.com> 2 13 -
trunk/Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.cpp
r85644 r85925 417 417 } 418 418 419 CString DumpRenderTreeSupportGtk::shadowPseudoId(JSContextRef context, JSValueRef nodeObject) 420 { 421 JSC::ExecState* exec = toJS(context); 422 Element* element = toElement(toJS(exec, nodeObject)); 423 if (!element) 424 return CString(); 425 426 return element->shadowPseudoId().string().utf8(); 427 } 428 419 429 unsigned int DumpRenderTreeSupportGtk::numberOfActiveAnimations(WebKitWebFrame* frame) 420 430 { -
trunk/Source/WebKit/gtk/WebCoreSupport/DumpRenderTreeSupportGtk.h
r84637 r85925 82 82 static bool pauseSVGAnimation(WebKitWebFrame*, const char* animationId, double time, const char* elementId); 83 83 static WTF::CString markerTextForListItem(WebKitWebFrame*, JSContextRef, JSValueRef nodeObject); 84 static WTF::CString shadowPseudoId(JSContextRef, JSValueRef nodeObject); 84 85 static unsigned int numberOfActiveAnimations(WebKitWebFrame*); 85 86 static void suspendAnimations(WebKitWebFrame*); -
trunk/Source/WebKit/mac/ChangeLog
r85901 r85925 1 2011-05-04 Philippe Normand <pnormand@igalia.com> 2 3 Reviewed by Dimitri Glazkov. 4 5 Implement LayoutTestController::pseudoShadowId() 6 https://bugs.webkit.org/show_bug.cgi?id=60034 7 8 * DOM/WebDOMOperations.mm: 9 (-[DOMElement _shadowPseudoId]): 10 * DOM/WebDOMOperationsPrivate.h: 11 1 12 2011-05-05 Dan Bernstein <mitz@apple.com> 2 13 -
trunk/Source/WebKit/mac/DOM/WebDOMOperations.mm
r85644 r85925 76 76 } 77 77 78 - (NSString *)_shadowPseudoId 79 { 80 return core(self)->shadowPseudoId(); 81 } 82 78 83 - (JSValueRef)_shadowRoot:(JSContextRef)context 79 84 { -
trunk/Source/WebKit/mac/DOM/WebDOMOperationsPrivate.h
r84472 r85925 36 36 - (JSValueRef)_ensureShadowRoot:(JSContextRef)context; 37 37 - (void)_removeShadowRoot; 38 - (NSString *)_shadowPseudoId; 38 39 @end 39 40 -
trunk/Source/WebKit/qt/ChangeLog
r85870 r85925 1 2011-05-04 Philippe Normand <pnormand@igalia.com> 2 3 Reviewed by Dimitri Glazkov. 4 5 Implement LayoutTestController::pseudoShadowId() 6 https://bugs.webkit.org/show_bug.cgi?id=60034 7 8 * WebCoreSupport/DumpRenderTreeSupportQt.cpp: 9 (DumpRenderTreeSupportQt::shadowPseudoId): 10 * WebCoreSupport/DumpRenderTreeSupportQt.h: 11 1 12 2011-05-05 Prasanth Ullattil <prasanth.ullattil@nokia.com> 2 13 -
trunk/Source/WebKit/qt/WebCoreSupport/DumpRenderTreeSupportQt.cpp
r85851 r85925 1110 1110 } 1111 1111 1112 QString DumpRenderTreeSupportQt::shadowPseudoId(const QWebElement& element) 1113 { 1114 WebCore::Element* webElement = element.m_element; 1115 QString pseudoId; 1116 if (webElement) 1117 pseudoId = webElement->shadowPseudoId().string(); 1118 return pseudoId; 1119 } 1120 1112 1121 // Provide a backward compatibility with previously exported private symbols as of QtWebKit 4.6 release 1113 1122 -
trunk/Source/WebKit/qt/WebCoreSupport/DumpRenderTreeSupportQt.h
r84906 r85925 206 206 static QVariant ensureShadowRoot(const QWebElement&); 207 207 static void removeShadowRoot(const QWebElement&); 208 static QString shadowPseudoId(const QWebElement&); 208 209 }; 209 210 -
trunk/Source/WebKit/win/ChangeLog
r85864 r85925 1 2011-05-04 Philippe Normand <pnormand@igalia.com> 2 3 Reviewed by Dimitri Glazkov. 4 5 Implement LayoutTestController::pseudoShadowId() 6 https://bugs.webkit.org/show_bug.cgi?id=60034 7 8 * DOMCoreClasses.cpp: 9 (DOMElement::shadowPseudoId): 10 * DOMCoreClasses.h: 11 1 12 2011-05-05 Ryosuke Niwa <rniwa@webkit.org> 2 13 -
trunk/Source/WebKit/win/DOMCoreClasses.cpp
r84146 r85925 1161 1161 } 1162 1162 1163 HRESULT STDMETHODCALLTYPE DOMElement::shadowPseudoId( 1164 /* [retval][out] */ BSTR* result) 1165 { 1166 if (!result) 1167 return E_POINTER; 1168 1169 ASSERT(m_element); 1170 1171 *result = BString(m_element->shadowPseudoId().string()).release(); 1172 return S_OK; 1173 } 1174 1163 1175 // IDOMElementCSSInlineStyle -------------------------------------------------- 1164 1176 -
trunk/Source/WebKit/win/DOMCoreClasses.h
r63710 r85925 780 780 /* [retval][out] */ BSTR* markerText); 781 781 782 virtual HRESULT STDMETHODCALLTYPE shadowPseudoId( 783 /* [retval][out] */ BSTR* result); 784 782 785 // IDOMElementCSSInlineStyle 783 786 virtual HRESULT STDMETHODCALLTYPE style( -
trunk/Source/WebKit/win/Interfaces/DOMPrivate.idl
r63710 r85925 49 49 HRESULT renderedImage([out, retval] HBITMAP* image); 50 50 [local] HRESULT markerTextForListItem([out, retval] BSTR* markerText); 51 [local] HRESULT shadowPseudoId([out, retval] BSTR* result); 51 52 } 52 53 -
trunk/Source/WebKit/win/Interfaces/WebKit.idl
r85691 r85925 302 302 } 303 303 } 304 -
trunk/Source/WebKit2/ChangeLog
r85908 r85925 1 2011-05-05 Philippe Normand <pnormand@igalia.com> 2 3 Reviewed by Dimitri Glazkov. 4 5 Implement LayoutTestController::pseudoShadowId() 6 https://bugs.webkit.org/show_bug.cgi?id=60034 7 8 * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp: 9 (WKBundleNodeHandleShadowPseudoId): 10 * WebProcess/InjectedBundle/API/c/WKBundleNodeHandlePrivate.h: 11 * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp: 12 (WebKit::InjectedBundleNodeHandle::elementRemoveShadowRoot): 13 (WebKit::InjectedBundleNodeHandle::elementShadowPseudoId): 14 * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h: 15 1 16 2011-05-05 Sam Weinig <sam@webkit.org> 2 17 -
trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp
r84472 r85925 79 79 } 80 80 81 WKStringRef WKBundleNodeHandleShadowPseudoId(WKBundleNodeHandleRef elementHandleRef) 82 { 83 return toCopiedAPI(toImpl(elementHandleRef)->elementShadowPseudoId()); 84 } 85 81 86 void WKBundleNodeHandleSetHTMLInputElementValueForUser(WKBundleNodeHandleRef htmlInputElementHandleRef, WKStringRef valueRef) 82 87 { -
trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundleNodeHandlePrivate.h
r84472 r85925 50 50 WK_EXPORT WKBundleNodeHandleRef WKBundleNodeHandleCopyElementEnsureShadowRoot(WKBundleNodeHandleRef elementHandle); 51 51 WK_EXPORT void WKBundleNodeHandleRemoveShadowRoot(WKBundleNodeHandleRef elementHandle); 52 WK_EXPORT WKStringRef WKBundleNodeHandleShadowPseudoId(WKBundleNodeHandleRef elementHandle); 52 53 53 54 /* HTMLInputElement Specific Operations */ -
trunk/Source/WebKit2/WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp
r85644 r85925 191 191 } 192 192 193 String InjectedBundleNodeHandle::elementShadowPseudoId() 194 { 195 if (!m_node->isElementNode()) 196 return String(); 197 198 return static_cast<Element*>(m_node.get())->shadowPseudoId(); 199 } 200 193 201 PassRefPtr<WebFrame> InjectedBundleNodeHandle::documentFrame() 194 202 { -
trunk/Source/WebKit2/WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h
r84472 r85925 72 72 PassRefPtr<InjectedBundleNodeHandle> elementEnsureShadowRoot(); 73 73 void elementRemoveShadowRoot(); 74 String elementShadowPseudoId(); 74 75 75 76 PassRefPtr<WebFrame> documentFrame(); -
trunk/Tools/ChangeLog
r85922 r85925 1 2011-05-04 Philippe Normand <pnormand@igalia.com> 2 3 Reviewed by Dimitri Glazkov. 4 5 Implement LayoutTestController::pseudoShadowId() 6 https://bugs.webkit.org/show_bug.cgi?id=60034 7 8 shadowPseudoId support in the various LayoutTestController 9 implementations. 10 11 * DumpRenderTree/LayoutTestController.cpp: 12 (shadowPseudoIdCallback): 13 (LayoutTestController::staticFunctions): 14 * DumpRenderTree/LayoutTestController.h: 15 * DumpRenderTree/chromium/LayoutTestController.cpp: 16 (LayoutTestController::LayoutTestController): 17 (LayoutTestController::shadowPseudoId): 18 * DumpRenderTree/chromium/LayoutTestController.h: 19 * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: 20 (LayoutTestController::shadowPseudoId): 21 * DumpRenderTree/mac/LayoutTestControllerMac.mm: 22 (LayoutTestController::shadowPseudoId): 23 * DumpRenderTree/qt/LayoutTestControllerQt.cpp: 24 (LayoutTestController::shadowPseudoId): 25 * DumpRenderTree/qt/LayoutTestControllerQt.h: 26 * DumpRenderTree/win/LayoutTestControllerWin.cpp: 27 (LayoutTestController::shadowPseudoId): 28 * DumpRenderTree/wx/LayoutTestControllerWx.cpp: 29 (LayoutTestController::shadowPseudoId): 30 * WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl: 31 * WebKitTestRunner/InjectedBundle/LayoutTestController.cpp: 32 (WTR::LayoutTestController::shadowPseudoId): 33 * WebKitTestRunner/InjectedBundle/LayoutTestController.h: 34 1 35 2011-05-06 Adam Barth <abarth@webkit.org> 2 36 -
trunk/Tools/DumpRenderTree/LayoutTestController.cpp
r84472 r85925 2085 2085 LayoutTestController::setSerializeHTTPLoads(serialize); 2086 2086 return JSValueMakeUndefined(context); 2087 } 2088 2089 static JSValueRef shadowPseudoIdCallback(JSContextRef context, JSObjectRef thisObject, JSObjectRef, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception) 2090 { 2091 if (argumentCount < 1) 2092 return JSValueMakeUndefined(context); 2093 2094 LayoutTestController* controller = static_cast<LayoutTestController*>(JSObjectGetPrivate(thisObject)); 2095 2096 return JSValueMakeString(context, controller->shadowPseudoId(context, arguments[0]).get()); 2087 2097 } 2088 2098 … … 2331 2341 { "originsWithLocalStorage", originsWithLocalStorageCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete }, 2332 2342 { "setShouldPaintBrokenImage", setShouldPaintBrokenImageCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete }, 2343 { "shadowPseudoId", shadowPseudoIdCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete }, 2333 2344 { 0, 0, 0 } 2334 2345 }; -
trunk/Tools/DumpRenderTree/LayoutTestController.h
r84472 r85925 76 76 JSRetainPtr<JSStringRef> pageProperty(const char* propertyName, int pageNumber) const; 77 77 JSRetainPtr<JSStringRef> pageSizeAndMarginsInPixels(int pageNumber, int width, int height, int marginTop, int marginRight, int marginBottom, int marginLeft) const; 78 JSRetainPtr<JSStringRef> shadowPseudoId(JSContextRef, JSValueRef) const; 78 79 bool isPageBoxVisible(int pageNumber) const; 79 80 JSStringRef pathToLocalResource(JSContextRef, JSStringRef url); -
trunk/Tools/DumpRenderTree/chromium/LayoutTestController.cpp
r84749 r85925 177 177 bindMethod("setAsynchronousSpellCheckingEnabled", &LayoutTestController::setAsynchronousSpellCheckingEnabled); 178 178 bindMethod("shadowRoot", &LayoutTestController::shadowRoot); 179 bindMethod("shadowPseudoId", &LayoutTestController::shadowPseudoId); 179 180 bindMethod("showWebInspector", &LayoutTestController::showWebInspector); 180 181 bindMethod("simulateDesktopNotificationClick", &LayoutTestController::simulateDesktopNotificationClick); … … 709 710 710 711 element.removeShadowRoot(); 712 } 713 714 void LayoutTestController::shadowPseudoId(const CppArgumentList& arguments, CppVariant* result) 715 { 716 WebElement element; 717 if (!WebBindings::getElement(arguments[0].value.objectValue, &element)) 718 result->setNull(); 719 else 720 result->set(element.shadowPseudoId().utf8()); 711 721 } 712 722 -
trunk/Tools/DumpRenderTree/chromium/LayoutTestController.h
r84472 r85925 275 275 void ensureShadowRoot(const CppArgumentList&, CppVariant*); 276 276 void removeShadowRoot(const CppArgumentList&, CppVariant*); 277 void shadowPseudoId(const CppArgumentList&, CppVariant*); 277 278 278 279 // The fallback method is called when a nonexistent method is called on -
trunk/Tools/DumpRenderTree/gtk/LayoutTestControllerGtk.cpp
r84985 r85925 906 906 } 907 907 908 JSRetainPtr<JSStringRef> LayoutTestController::shadowPseudoId(JSContextRef context, JSValueRef nodeObject) const 909 { 910 CString id = DumpRenderTreeSupportGtk::shadowPseudoId(context, nodeObject); 911 if (id.isNull()) 912 return 0; 913 914 JSRetainPtr<JSStringRef> result(Adopt, JSStringCreateWithUTF8CString(id.data())); 915 return result; 916 } 917 908 918 void LayoutTestController::authenticateSession(JSStringRef, JSStringRef, JSStringRef) 909 919 { -
trunk/Tools/DumpRenderTree/mac/LayoutTestControllerMac.mm
r85036 r85925 280 280 } 281 281 282 JSRetainPtr<JSStringRef> LayoutTestController::shadowPseudoId(JSContextRef context, JSValueRef nodeObject) const 283 { 284 DOMElement *element = [DOMElement _DOMElementFromJSContext:context value:nodeObject]; 285 if (!element) 286 return JSRetainPtr<JSStringRef>(); 287 288 JSRetainPtr<JSStringRef> shadowId(Adopt, JSStringCreateWithCFString((CFStringRef)[element _shadowPseudoId])); 289 return shadowId; 290 } 291 282 292 int LayoutTestController::pageNumberForElementById(JSStringRef id, float pageWidthInPixels, float pageHeightInPixels) 283 293 { -
trunk/Tools/DumpRenderTree/qt/LayoutTestControllerQt.cpp
r85667 r85925 800 800 } 801 801 802 QString LayoutTestController::shadowPseudoId(const QWebElement& element) 803 { 804 return DumpRenderTreeSupportQt::shadowPseudoId(element); 805 } 806 802 807 int LayoutTestController::numberOfPendingGeolocationPermissionRequests() 803 808 { -
trunk/Tools/DumpRenderTree/qt/LayoutTestControllerQt.h
r84906 r85925 254 254 QVariant ensureShadowRoot(const QWebElement&); 255 255 void removeShadowRoot(const QWebElement&); 256 QString shadowPseudoId(const QWebElement&); 256 257 257 258 void evaluateScriptInIsolatedWorld(int worldID, const QString& script); -
trunk/Tools/DumpRenderTree/win/LayoutTestControllerWin.cpp
r84472 r85925 228 228 } 229 229 230 JSRetainPtr<JSStringRef> LayoutTestController::shadowPseudoId(JSContextRef context, JSValueRef nodeObject) const 231 { 232 COMPtr<IWebView> webView; 233 if (FAILED(frame->webView(&webView))) 234 return 0; 235 236 COMPtr<IWebViewPrivate> webViewPrivate(Query, webView); 237 if (!webViewPrivate) 238 return 0; 239 240 COMPtr<IDOMElement> element; 241 if (FAILED(webViewPrivate->elementFromJS(context, nodeObject, &element))) 242 return 0; 243 244 COMPtr<IDOMElementPrivate> elementPrivate(Query, element); 245 if (!elementPrivate) 246 return 0; 247 248 BSTR idBSTR = 0; 249 if (FAILED(elementPrivate->shadowPseudoId(&idBSTR))) 250 return 0; 251 252 JSRetainPtr<JSStringRef> id(Adopt, JSStringCreateWithBSTR(idBSTR)); 253 SysFreeString(idBSTR); 254 return id; 255 } 256 230 257 void LayoutTestController::waitForPolicyDelegate() 231 258 { -
trunk/Tools/DumpRenderTree/wx/LayoutTestControllerWx.cpp
r84743 r85925 509 509 } 510 510 511 JSRetainPtr<JSStringRef> LayoutTestController::shadowPseudoId(JSContextRef context, JSValueRef nodeObject) const 512 { 513 return 0; 514 } 515 511 516 JSValueRef LayoutTestController::computedStyleIncludingVisitedInfo(JSContextRef, JSValueRef) 512 517 { -
trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl
r85888 r85925 67 67 object ensureShadowRoot(in object element); 68 68 void removeShadowRoot(in object element); 69 DOMString shadowPseudoId(in object element); 69 70 70 71 // Repaint testing. -
trunk/Tools/WebKitTestRunner/InjectedBundle/LayoutTestController.cpp
r85888 r85925 424 424 } 425 425 426 JSRetainPtr<JSStringRef> LayoutTestController::shadowPseudoId(JSValueRef element) const 427 { 428 WKBundleFrameRef mainFrame = WKBundlePageGetMainFrame(InjectedBundle::shared().page()->page()); 429 JSContextRef context = WKBundleFrameGetJavaScriptContext(mainFrame); 430 431 if (!element || !JSValueIsObject(context, element)) 432 return 0; 433 434 WKRetainPtr<WKBundleNodeHandleRef> domElement = adoptWK(WKBundleNodeHandleCreate(context, const_cast<JSObjectRef>(element))); 435 if (!domElement) 436 return 0; 437 438 WKRetainPtr<WKStringRef> id(AdoptWK, WKBundleNodeHandleShadowPseudoId(domElement.get())); 439 if (WKStringIsEmpty(id.get())) 440 return 0; 441 return toJS(id); 442 } 443 426 444 void LayoutTestController::clearBackForwardList() 427 445 { -
trunk/Tools/WebKitTestRunner/InjectedBundle/LayoutTestController.h
r85888 r85925 96 96 JSValueRef ensureShadowRoot(JSValueRef element); 97 97 void removeShadowRoot(JSValueRef element); 98 JSRetainPtr<JSStringRef> shadowPseudoId(JSValueRef) const; 98 99 99 100 // Repaint testing.
Note: See TracChangeset
for help on using the changeset viewer.