loislo@chromium.org [Sun, 15 May 2011 16:57:55 +0000 (16:57 +0000)]
2011-05-15 Ilya Tikhonovsky <loislo@chromium.org>
Reviewed by Yury Semikhatsky.
Web Inspector: chromium renderer crash at eval in console.
https://bugs.webkit.org/show_bug.cgi?id=60616
Renderer of inspected page is crashing when modal dialog
has been opened via console eval and page is reloaded.
Test: inspector/console/console-long-eval-crash.html
* inspector/CodeGeneratorInspector.pm:
* inspector/InspectorController.cpp:
(WebCore::InspectorController::connectFrontend):
(WebCore::InspectorController::dispatchMessageFromFrontend):
* inspector/InspectorController.h:
2011-05-15 Ilya Tikhonovsky <loislo@chromium.org>
Reviewed by Yury Semikhatsky.
Web Inspector: chromium renderer crash at eval in console.
https://bugs.webkit.org/show_bug.cgi?id=60616
Renderer of inspected page is crashing when modal dialog
has been opened via console eval and page is reloaded.
* inspector/console/console-long-eval-crash-expected.txt: Added.
* inspector/console/console-long-eval-crash.html: Added.
* platform/gtk/Skipped:
* platform/mac-wk2/Skipped:
* platform/qt-wk2/Skipped:
* platform/win/Skipped:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86507
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric.carlson@apple.com [Sun, 15 May 2011 16:18:03 +0000 (16:18 +0000)]
2011-05-15 Eric Carlson <eric.carlson@apple.com>
Reviewed by Maciej Stachowiak.
Use new AVAssetReferenceRestrictions to prevent cross site media references
https://bugs.webkit.org/show_bug.cgi?id=60791
<rdar://problem/
9374202>
Test: http/tests/media/video-cross-site.html
* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL): Set restriction
to prevent cross-domain references from being followed.
2011-05-15 Eric Carlson <eric.carlson@apple.com>
Reviewed by Maciej Stachowiak.
Use new AVAssetReferenceRestrictions to prevent cross site media references
https://bugs.webkit.org/show_bug.cgi?id=60791
<rdar://problem/
9374202>
Add test for cross-domain QuickTime reference movie and test.
* http/tests/media/resources/cross-site-reference.mov: Added.
* http/tests/media/video-cross-site-expected.txt: Added.
* http/tests/media/video-cross-site.html: Added.
* platform/chromium/test_expectations.txt: Skipped, QuickTime reference movies not supported.
* platform/gtk/Skipped: Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86506
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Sun, 15 May 2011 14:07:35 +0000 (14:07 +0000)]
2011-05-15 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r86504.
http://trac.webkit.org/changeset/86504
https://bugs.webkit.org/show_bug.cgi?id=60853
"Broke Qt EventSender in editing/selection tests" (Requested
by mwenge on #webkit).
* platform/qt/Skipped:
* platform/qt/http/tests/plugins/plugin-document-has-focus-expected.txt: Removed.
2011-05-15 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r86504.
http://trac.webkit.org/changeset/86504
https://bugs.webkit.org/show_bug.cgi?id=60853
"Broke Qt EventSender in editing/selection tests" (Requested
by mwenge on #webkit).
* WebCoreSupport/DumpRenderTreeSupportQt.cpp:
* WebCoreSupport/DumpRenderTreeSupportQt.h:
2011-05-15 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r86504.
http://trac.webkit.org/changeset/86504
https://bugs.webkit.org/show_bug.cgi?id=60853
"Broke Qt EventSender in editing/selection tests" (Requested
by mwenge on #webkit).
* DumpRenderTree/qt/DumpRenderTreeQt.cpp:
(WebCore::WebPage::WebPage):
(WebCore::DumpRenderTree::DumpRenderTree):
(WebCore::DumpRenderTree::resetToConsistentStateBeforeTesting):
(WebCore::DumpRenderTree::initJSObjects):
* DumpRenderTree/qt/DumpRenderTreeQt.h:
(WebCore::DumpRenderTree::eventSender):
* DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp:
(webkit_test_plugin_new_instance):
(webkit_test_plugin_set_window):
(webkit_test_plugin_handle_event):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86505
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
robert@webkit.org [Sun, 15 May 2011 13:49:23 +0000 (13:49 +0000)]
2011-05-12 Robert Hogan <robert@webkit.org>
Reviewed by Benjamin Poulain.
[Qt] fix http/tests/plugins/plugin-document-has-focus.html
For some reason the platform-independent expected result has
no newline at the end of the file. The unix test plugin also
reports the event from a different line. These are harmless
differences, so create platform-specific result.
Note that nearly every platform skips this test at the moment.
https://bugs.webkit.org/show_bug.cgi?id=60722
* platform/qt/Skipped:
* platform/qt/http/tests/plugins/plugin-document-has-focus-expected.txt: Added.
2011-05-12 Robert Hogan <robert@webkit.org>
Reviewed by Benjamin Poulain.
[Qt] fix http/tests/plugins/plugin-document-has-focus.html
https://bugs.webkit.org/show_bug.cgi?id=60722
QWebPage::setView() will display the browser window, so
implement a private version that does just enough to
satisfy EventSender's requirement to install an event
filter on a page's web view.
* WebCoreSupport/DumpRenderTreeSupportQt.cpp:
(DumpRenderTreeSupportQt::setView):
* WebCoreSupport/DumpRenderTreeSupportQt.h:
2011-05-12 Robert Hogan <robert@webkit.org>
Reviewed by Benjamin Poulain.
[Qt] fix http/tests/plugins/plugin-document-has-focus.html
The support for this test added to the unix test plugin here
may allow other platforms to pass it (nearly everyone
skips it). On Qt it required a bit of trickiness with
the page's EventSender object to get it working fully though,
so only unskipping Qt here.
https://bugs.webkit.org/show_bug.cgi?id=60722
* DumpRenderTree/qt/DumpRenderTreeQt.cpp:
(WebCore::WebPage::WebPage):
(WebCore::WebPage::eventSender):
(WebCore::DumpRenderTree::DumpRenderTree):
(WebCore::DumpRenderTree::initJSObjects):
(WebCore::DumpRenderTree::createWindow):
* DumpRenderTree/qt/DumpRenderTreeQt.h:
* DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp:
(webkit_test_plugin_new_instance):
(webkit_test_plugin_set_window):
(webkit_test_plugin_handle_event):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86504
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Sun, 15 May 2011 11:40:00 +0000 (11:40 +0000)]
2011-05-15 Arno Renevier <arno@renevier.net>
Reviewed by Darin Adler.
remove unecessary includes from Source/WebCore/html/HTMLFrameElementBase.cpp
https://bugs.webkit.org/show_bug.cgi?id=60775
No new tests. This change only impacts compilation.
* html/HTMLFrameElementBase.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86503
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kevino@webkit.org [Sun, 15 May 2011 06:41:56 +0000 (06:41 +0000)]
Reviewed by Kevin Ollivier.
[wx] Fix strokeArc and fillRoundedRect drawing, and add clipPath support.
https://bugs.webkit.org/show_bug.cgi?id=60847
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86502
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric.carlson@apple.com [Sun, 15 May 2011 05:39:36 +0000 (05:39 +0000)]
2011-05-14 Eric Carlson <eric.carlson@apple.com>
Reviewed by Dan Bernstein.
HTTP video-on-demand streams frequently have live stream UI
https://bugs.webkit.org/show_bug.cgi?id=60849
<rdar://problem/
9440502>
No new tests, we don't currently have tests for http live streams. Changes verified manually.
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::mediaPlayerDurationChanged): Reset the media controls so
a duration change which identifies a format will be picked up.
(WebCore::HTMLMediaElement::mediaPlayerCharacteristicChanged): New, reset media controls
so they can be reconfigured for the media file characteristics.
* html/HTMLMediaElement.h:
* platform/graphics/MediaPlayer.cpp:
(WebCore::MediaPlayer::characteristicChanged): New, pass through to the element.
* platform/graphics/MediaPlayer.h:
(WebCore::MediaPlayerClient::mediaPlayerCharacteristicChanged):
* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
(WebCore::MediaPlayerPrivateAVFoundation::setHasVideo): Call characteristicChanged when
setting changes.
(WebCore::MediaPlayerPrivateAVFoundation::setHasAudio): Ditto.
(WebCore::MediaPlayerPrivateAVFoundation::setHasClosedCaptions): Ditto.
(WebCore::MediaPlayerPrivateAVFoundation::loadedTimeRangesChanged): Move the duration
change notification logic to invalidateCachedDuration.
(WebCore::MediaPlayerPrivateAVFoundation::invalidateCachedDuration): New, invalidate
the cached duration and notify the element when it changes.
(WebCore::MediaPlayerPrivateAVFoundation::dispatchNotification): Call invalidateCachedDuration
for the DurationChanged notification.
* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h: Define DurationChanged.
* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::platformDuration): Don't check asset or
item duration until they have been loaded.
(WebCore::itemKVOProperties): Listen for duration change.
(-[WebCoreAVFMovieObserver observeValueForKeyPath:ofObject:change:context:]): Deal with
duration change notification.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86501
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
inferno@chromium.org [Sun, 15 May 2011 01:51:14 +0000 (01:51 +0000)]
2011-05-14 Abhishek Arya <inferno@chromium.org>
Reviewed by Dan Bernstein.
Tests that we do not crash when trying to parse an invalid font family
value of 'inherit' or 'initial' in a font face rule.
https://bugs.webkit.org/show_bug.cgi?id=60837
* fast/css/invalid-font-family-in-font-face-crash-expected.txt: Added.
* fast/css/invalid-font-family-in-font-face-crash.html: Added.
2011-05-14 Abhishek Arya <inferno@chromium.org>
Reviewed by Dan Bernstein.
As per spec, only allow one font family name in a font face rule.
Other things like initial value, inherited value or multiple names
are discarded.
https://bugs.webkit.org/show_bug.cgi?id=60837
Test: fast/css/invalid-font-family-in-font-face-crash.html
* css/CSSParser.cpp:
(WebCore::CSSParser::createFontFaceRule):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86500
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver@apple.com [Sat, 14 May 2011 22:10:01 +0000 (22:10 +0000)]
2011-05-13 Oliver Hunt <oliver@apple.com>
Reviewed by Geoffrey Garen.
Make GC validation more aggressive
https://bugs.webkit.org/show_bug.cgi?id=60802
This patch makes the checks performed under GC_VALIDATION
much more aggressive, and adds the checks to more places
in order to allow us to catch GC bugs much closer to the
point of failure.
* JavaScriptCore.exp:
* JavaScriptCore.xcodeproj/project.pbxproj:
* debugger/DebuggerActivation.cpp:
(JSC::DebuggerActivation::visitChildren):
* heap/MarkedBlock.cpp:
(JSC::MarkedBlock::MarkedBlock):
* heap/MarkedSpace.cpp:
* runtime/Arguments.cpp:
(JSC::Arguments::visitChildren):
* runtime/Executable.cpp:
(JSC::EvalExecutable::visitChildren):
(JSC::ProgramExecutable::visitChildren):
(JSC::FunctionExecutable::visitChildren):
* runtime/Executable.h:
* runtime/GetterSetter.cpp:
(JSC::GetterSetter::visitChildren):
* runtime/GetterSetter.h:
* runtime/JSAPIValueWrapper.h:
(JSC::JSAPIValueWrapper::createStructure):
(JSC::JSAPIValueWrapper::JSAPIValueWrapper):
* runtime/JSActivation.cpp:
(JSC::JSActivation::visitChildren):
* runtime/JSArray.cpp:
(JSC::JSArray::visitChildren):
* runtime/JSCell.cpp:
(JSC::slowValidateCell):
* runtime/JSCell.h:
(JSC::JSCell::JSCell::unvalidatedStructure):
(JSC::JSCell::JSCell::JSCell):
* runtime/JSFunction.cpp:
(JSC::JSFunction::visitChildren):
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::visitChildren):
(JSC::slowValidateCell):
* runtime/JSONObject.h:
* runtime/JSObject.cpp:
(JSC::JSObject::visitChildren):
* runtime/JSPropertyNameIterator.cpp:
(JSC::JSPropertyNameIterator::visitChildren):
* runtime/JSPropertyNameIterator.h:
* runtime/JSStaticScopeObject.cpp:
(JSC::JSStaticScopeObject::visitChildren):
* runtime/JSString.h:
(JSC::RopeBuilder::JSString):
* runtime/JSWrapperObject.cpp:
(JSC::JSWrapperObject::visitChildren):
* runtime/NativeErrorConstructor.cpp:
(JSC::NativeErrorConstructor::visitChildren):
* runtime/PropertyMapHashTable.h:
(JSC::PropertyMapEntry::PropertyMapEntry):
* runtime/RegExpObject.cpp:
(JSC::RegExpObject::visitChildren):
* runtime/ScopeChain.cpp:
(JSC::ScopeChainNode::visitChildren):
* runtime/ScopeChain.h:
(JSC::ScopeChainNode::ScopeChainNode):
* runtime/Structure.cpp:
(JSC::Structure::Structure):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::visitChildren):
* runtime/Structure.h:
(JSC::JSCell::classInfo):
* runtime/StructureChain.cpp:
(JSC::StructureChain::visitChildren):
* runtime/StructureChain.h:
* runtime/WriteBarrier.h:
(JSC::validateCell):
(JSC::JSCell):
(JSC::JSGlobalObject):
(JSC::WriteBarrierBase::set):
(JSC::WriteBarrierBase::setMayBeNull):
(JSC::WriteBarrierBase::setEarlyValue):
(JSC::WriteBarrierBase::get):
(JSC::WriteBarrierBase::operator*):
(JSC::WriteBarrierBase::operator->):
(JSC::WriteBarrierBase::unvalidatedGet):
(JSC::WriteBarrier::WriteBarrier):
* wtf/Assertions.h:
2011-05-13 Oliver Hunt <oliver@apple.com>
Reviewed by Geoffrey Garen.
Make GC validation more aggressive
https://bugs.webkit.org/show_bug.cgi?id=60802
This makes GC_VALIDATION much more aggressive in webcore,
adding logic to every visitChildren method to ensure that
the structure still has correct flags.
Additionally every function generated for the dom bindings
makes use of the new GC_VALIDATION object assertions to further
ensure that the object appears to be sensible.
* bindings/js/JSAttrCustom.cpp:
(WebCore::JSAttr::visitChildren):
* bindings/js/JSAudioContextCustom.cpp:
(WebCore::JSAudioContext::visitChildren):
* bindings/js/JSCSSRuleCustom.cpp:
(WebCore::JSCSSRule::visitChildren):
* bindings/js/JSCSSStyleDeclarationCustom.cpp:
(WebCore::JSCSSStyleDeclaration::visitChildren):
* bindings/js/JSCanvasRenderingContextCustom.cpp:
(WebCore::JSCanvasRenderingContext::visitChildren):
* bindings/js/JSDOMGlobalObject.cpp:
(WebCore::JSDOMGlobalObject::visitChildren):
(WebCore::JSDOMGlobalObject::setInjectedScript):
* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::visitChildren):
* bindings/js/JSDOMWindowShell.cpp:
(WebCore::JSDOMWindowShell::visitChildren):
* bindings/js/JSEventListener.cpp:
(WebCore::JSEventListener::JSEventListener):
* bindings/js/JSEventListener.h:
(WebCore::JSEventListener::jsFunction):
* bindings/js/JSJavaScriptAudioNodeCustom.cpp:
(WebCore::JSJavaScriptAudioNode::visitChildren):
* bindings/js/JSMessageChannelCustom.cpp:
(WebCore::JSMessageChannel::visitChildren):
* bindings/js/JSMessagePortCustom.cpp:
(WebCore::JSMessagePort::visitChildren):
* bindings/js/JSNamedNodeMapCustom.cpp:
(WebCore::JSNamedNodeMap::visitChildren):
* bindings/js/JSNodeCustom.cpp:
(WebCore::JSNode::visitChildren):
* bindings/js/JSNodeFilterCustom.cpp:
(WebCore::JSNodeFilter::visitChildren):
* bindings/js/JSNodeIteratorCustom.cpp:
(WebCore::JSNodeIterator::visitChildren):
* bindings/js/JSSVGElementInstanceCustom.cpp:
(WebCore::JSSVGElementInstance::visitChildren):
* bindings/js/JSSharedWorkerCustom.cpp:
(WebCore::JSSharedWorker::visitChildren):
* bindings/js/JSStyleSheetCustom.cpp:
(WebCore::JSStyleSheet::visitChildren):
* bindings/js/JSTreeWalkerCustom.cpp:
(WebCore::JSTreeWalker::visitChildren):
* bindings/js/JSWebGLRenderingContextCustom.cpp:
(WebCore::JSWebGLRenderingContext::visitChildren):
* bindings/js/JSWorkerContextCustom.cpp:
(WebCore::JSWorkerContext::visitChildren):
* bindings/js/JSXMLHttpRequestCustom.cpp:
(WebCore::JSXMLHttpRequest::visitChildren):
* bindings/js/JSXPathResultCustom.cpp:
(WebCore::JSXPathResult::visitChildren):
* bindings/scripts/CodeGeneratorJS.pm:
2011-05-13 Oliver Hunt <oliver@apple.com>
Reviewed by Geoffrey Garen.
Make GC validation more aggressive
https://bugs.webkit.org/show_bug.cgi?id=60802
Add GC_VALIDATION calls to all the JSNPObject methods.
* WebProcess/Plugins/Netscape/JSNPObject.cpp:
(WebKit::JSNPObject::invalidate):
(WebKit::JSNPObject::callMethod):
(WebKit::JSNPObject::callObject):
(WebKit::JSNPObject::callConstructor):
(WebKit::JSNPObject::getCallData):
(WebKit::JSNPObject::getConstructData):
(WebKit::JSNPObject::getOwnPropertySlot):
(WebKit::JSNPObject::getOwnPropertyDescriptor):
(WebKit::JSNPObject::put):
(WebKit::JSNPObject::getOwnPropertyNames):
(WebKit::JSNPObject::propertyGetter):
(WebKit::JSNPObject::methodGetter):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86499
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver@apple.com [Sat, 14 May 2011 21:44:33 +0000 (21:44 +0000)]
2011-05-14 Oliver Hunt <oliver@apple.com>
Reviewed by Anders Carlsson.
Make Qt bindings GC safe
https://bugs.webkit.org/show_bug.cgi?id=60841
Trying to do cache management by using "this" as a key from a GC
object's destructor leads to a violation of GC semantics. Make
the qt bindings use a Weak<> handle for finalization.
* bridge/qt/qt_runtime.cpp:
(JSC::Bindings::QtRuntimeMethod::QtRuntimeMethod):
(JSC::Bindings::QtRuntimeMethod::~QtRuntimeMethod):
* bridge/qt/qt_runtime.h:
(JSC::Bindings::QtRuntimeMethodData::finalize):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86498
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Sat, 14 May 2011 21:23:25 +0000 (21:23 +0000)]
2011-05-14 Alexey Proskuryakov <ap@apple.com>
Reviewed by Sam Weinig.
WebKit2: Smart cut&paste is broken
https://bugs.webkit.org/show_bug.cgi?id=60840
<rdar://problem/
9439927>
* UIProcess/mac/TextCheckerMac.mm: (WebKit::TextChecker::isSmartInsertDeleteEnabled):
Match WK1 - this default defaults to YES if not present.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86497
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
atwilson@chromium.org [Sat, 14 May 2011 20:48:05 +0000 (20:48 +0000)]
Unreviewed chromium expectations change.
* platform/chromium/test_expectations.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86496
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Sat, 14 May 2011 20:41:58 +0000 (20:41 +0000)]
WKView does not draw after forced repaint before the first update
https://bugs.webkit.org/show_bug.cgi?id=60845
Reviewed by Alice Liu.
* UIProcess/DrawingAreaProxy.h:
(WebKit::DrawingAreaProxy::waitForBackingStoreUpdateOnNextPaint): Added.
* UIProcess/DrawingAreaProxyImpl.cpp:
(WebKit::DrawingAreaProxyImpl::waitForBackingStoreUpdateOnNextPaint): Set m_hasReceivedFirstUpdate
to true, ensuring that paint() will wait for an update if needed.
* UIProcess/DrawingAreaProxyImpl.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::forceRepaint): Call DrawingAreaProxy::waitForBackingStoreUpdateOnNextPaint().
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86495
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Sat, 14 May 2011 20:00:04 +0000 (20:00 +0000)]
2011-05-14 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Document the WantsMozillaUserAgent quirk and make it Windows specific
https://bugs.webkit.org/show_bug.cgi?id=60843
* Shared/Plugins/PluginQuirks.h:
* WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
(WebKit::NetscapePlugin::userAgent):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86494
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abarth@webkit.org [Sat, 14 May 2011 18:40:23 +0000 (18:40 +0000)]
2011-05-14 Arno Renevier <arno@renevier.net>
Reviewed by Martin Robinson.
make run-gtk-tests executable
https://bugs.webkit.org/show_bug.cgi?id=59278
* Scripts/run-gtk-tests:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86493
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Sat, 14 May 2011 18:10:14 +0000 (18:10 +0000)]
2011-05-14 Ryosuke Niwa <rniwa@webkit.org>
Reviewed by Eric Seidel.
Make canHaveChildrenForEditing more efficient
https://bugs.webkit.org/show_bug.cgi?id=53564
Improved the performance (1-2% in release and 20% in debug) by adding virtual member function
canContainRangeEndPoint to Node. It returns true whenever the associated node can have be a container
node for a position.
As of this revision, canContainRangeEndPoint returns true on Document, DocumentFragment, Text nodes
and any elements except:
HTML: applet, br, embed, frame, frameset, hr (unless has children), img, input, keygen,
meter, object (unless uses fallback content), output, progress, select, and textarea.
No new tests are added since this change cannot be tested directly.
* dom/Document.h:
(WebCore::Document::canContainRangeEndPoint): Added; returns false.
* dom/DocumentFragment.h:
(WebCore::DocumentFragment::canContainRangeEndPoint): Added; returns true.
* dom/Element.h:
(WebCore::Element::canContainRangeEndPoint): Ditto.
* dom/Node.h:
(WebCore::Node::canContainRangeEndPoint): Added; returns false.
* dom/Text.h:
(WebCore::Text::canContainRangeEndPoint): Added; returns true.
* editing/htmlediting.cpp: Removed editingIgnoresContent and canHaveChildrenForEditing.
* editing/htmlediting.h:
(WebCore::editingIgnoresContent): Moved from htmlediting.cpp; made it inline.
(WebCore::canHaveChildrenForEditing): Ditto.
* html/HTMLBRElement.h:
(WebCore::HTMLBRElement::canContainRangeEndPoint): Added; returns false.
* html/HTMLButtonElement.h:
(WebCore::HTMLDataGridElement::canContainRangeEndPoint): Ditto.
* html/HTMLFormControlElement.h:
(WebCore::HTMLFormControlElementWithState::canContainRangeEndPoint): Ditto.
* html/HTMLFrameElementBase.h:
(WebCore::HTMLFrameElementBase::canContainRangeEndPoint): Ditto.
* html/HTMLImageElement.h:
(WebCore::HTMLImageElement::canContainRangeEndPoint): Ditto.
* html/HTMLMeterElement.h:
(WebCore::HTMLMeterElement::canContainRangeEndPoint): Ditto.
* html/HTMLOutputElement.h:
(WebCore::HTMLOutputElement::canContainRangeEndPoint): Ditto.
* html/HTMLPlugInElement.h:
(WebCore::HTMLPlugInElement::canContainRangeEndPoint): Ditto.
* html/HTMLProgressElement.h:
(WebCore::HTMLProgressElement::canContainRangeEndPoint): Ditto.
* html/HTMLHRElement.h:
(WebCore::HTMLHRElement::canContainRangeEndPoint): Added; returns true iff it has children.
* html/HTMLObjectElement.h:
(WebCore::HTMLObjectElement::canContainRangeEndPoint): Added; returns true iff it uses fallback
content.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86491
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Sat, 14 May 2011 18:10:08 +0000 (18:10 +0000)]
* platform/qt/Skipped:
Add plugins/get-url-notify-with-url-that-fails-to-load.html to the skipped list.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86490
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Sat, 14 May 2011 18:06:28 +0000 (18:06 +0000)]
2011-05-14 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
Consolidate plug-in creation parameters to a single struct
https://bugs.webkit.org/show_bug.cgi?id=60839
* PluginProcess/PluginControllerProxy.cpp:
(WebKit::PluginControllerProxy::create):
(WebKit::PluginControllerProxy::PluginControllerProxy):
* PluginProcess/PluginControllerProxy.h:
* PluginProcess/PluginCreationParameters.cpp: Added.
(WebKit::PluginCreationParameters::PluginCreationParameters):
(WebKit::PluginCreationParameters::encode):
(WebKit::PluginCreationParameters::decode):
* PluginProcess/PluginCreationParameters.h: Added.
* PluginProcess/WebProcessConnection.cpp:
(WebKit::WebProcessConnection::createPlugin):
* PluginProcess/WebProcessConnection.h:
* PluginProcess/WebProcessConnection.messages.in:
* Scripts/webkit2/messages.py:
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/Plugins/PluginProxy.cpp:
(WebKit::PluginProxy::initialize):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86489
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jer.noble@apple.com [Sat, 14 May 2011 17:29:14 +0000 (17:29 +0000)]
2011-05-14 Jeremy Noble <jer.noble@apple.com>
Reviewed by Darin Adler.
Exiting full screen causes <video> element inline controls to become visible
https://bugs.webkit.org/show_bug.cgi?id=60142
* fullscreen/video-controls-override-expected.txt: Added.
* fullscreen/video-controls-override.html: Added.
2011-05-14 Jeremy Noble <jer.noble@apple.com>
Reviewed by Darin Adler.
Exiting full screen causes <video> element inline controls to become visible
https://bugs.webkit.org/show_bug.cgi?id=60142
Create a queue of elements who must be targeted with webkitfullscreenchange events. Instead of dispatching
a single event with whatever the current value of m_fullScreenElement is (which may have been cleared, or
changed since the timer was asked to fire), dispatch one event for each entry in the queue.
Test: fullscreen/video-controls-override.html
* dom/Document.cpp:
(WebCore::Document::webkitDidEnterFullScreenForElement): Push current full screen element onto the
webkitfullscreenchange event delay queue.
(WebCore::Document::webkitDidExitFullScreenForElement): Ditto.
(WebCore::Document::fullScreenElementRemoved): Ditto.
(WebCore::Document::fullScreenChangeDelayTimerFired): Empty the queue, dispatching a
webkitfullscreenchange event for each entry.
* dom/Document.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86488
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Sat, 14 May 2011 16:31:11 +0000 (16:31 +0000)]
2011-05-14 Anders Carlsson <andersca@apple.com>
Reviewed by Kevin Decker.
NPP_URLNotify is not called if a URL passed to NPN_GetURLNotify fails to load
https://bugs.webkit.org/show_bug.cgi?id=60823
<rdar://problem/
9430386>
Add test that calls NPN_GetURLNotify on a URL that can't be loaded, and checks if NPP_URLNotify is called.
* DumpRenderTree/DumpRenderTree.gypi:
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* DumpRenderTree/TestNetscapePlugIn/Tests/GetURLNotifyWithURLThatFailsToLoad.cpp: Added.
(GetURLNotifyWithURLThatFailsToLoad::GetURLNotifyWithURLThatFailsToLoad):
(GetURLNotifyWithURLThatFailsToLoad::NPP_New):
(GetURLNotifyWithURLThatFailsToLoad::NPP_URLNotify):
* DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePlugin.vcproj:
* DumpRenderTree/qt/TestNetscapePlugin/TestNetscapePlugin.pro:
* GNUmakefile.am:
2011-05-14 Anders Carlsson <andersca@apple.com>
Reviewed by Kevin Decker.
NPP_URLNotify is not called if a URL passed to NPN_GetURLNotify fails to load
https://bugs.webkit.org/show_bug.cgi?id=60823
<rdar://problem/
9430386>
Add test.
* platform/gtk/Skipped:
Add test to Skipped list since it apparently crashes.
* plugins/get-url-notify-with-url-that-fails-to-load-expected.txt: Added.
* plugins/get-url-notify-with-url-that-fails-to-load.html: Added.
2011-05-14 Anders Carlsson <andersca@apple.com>
Reviewed by Kevin Decker.
NPP_URLNotify is not called if a URL passed to NPN_GetURLNotify fails to load
https://bugs.webkit.org/show_bug.cgi?id=60823
<rdar://problem/
9430386>
If a plug-in stream fails to load before it's been started, we won't destroy the stream.
* WebProcess/Plugins/Netscape/NetscapePluginStream.cpp:
(WebKit::NetscapePluginStream::stop):
Call notifyAndDestroyStream which will call NPP_URLNotify if necessary, and also destroy the stream.
(WebKit::NetscapePluginStream::notifyAndDestroyStream):
Pass the request URL to NPP_URLNotify, matching other browsers.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86487
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jer.noble@apple.com [Sat, 14 May 2011 16:17:18 +0000 (16:17 +0000)]
2011-05-14 Jer Noble <jer.noble@apple.com>
Reviewed by Simon Fraser.
Flashing window frame and graphical glitches after exiting full screen mode.
https://bugs.webkit.org/show_bug.cgi?id=60825
A layer-backed WebView throws an exception when moved from a layer-backed parent view
to a non-layer-backed one, so make the WebView a child of the content view, instead of
the animation view. There is an unrelated fix in beganExitFullScreen, which was calling
finishedExitFullScreenAnimation: instead of finishedEnterFullScreenAnimation: when
notifications come out of order.
* UIProcess/mac/WKFullScreenWindowController.mm:
(-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]): Add the _webView
to the full screen window's content view, instead of the _animationView.
(-[WKFullScreenWindowController beganExitFullScreenAnimation]): Call
finishedEnterFullScreenAnimation: instead of finishedExitFullScreenAnimation:.
(-[WKFullScreenWindowController enterAcceleratedCompositingMode:WebKit::]): Add the
_layerHostingView to the contentView, instead of the animationView.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86486
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
paroga@webkit.org [Sat, 14 May 2011 14:56:24 +0000 (14:56 +0000)]
2011-05-14 Patrick Gansterer <paroga@webkit.org>
Reviewed by Andreas Kling.
Buildfix for SharedTimerWx.cpp
https://bugs.webkit.org/show_bug.cgi?id=60829
* platform/wx/SharedTimerWx.cpp:
(WebCore::WebKitTimer::WebKitTimer):
We can't call the constructor of a base class in the body of the constructor.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86485
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
paroga@webkit.org [Sat, 14 May 2011 09:39:46 +0000 (09:39 +0000)]
2011-05-14 Patrick Gansterer <paroga@webkit.org>
Unreviewed WinCE build fix for r86477.
Remove the global namespace prefix from GlobalLock/GlobalUnlock.
* platform/win/ClipboardUtilitiesWin.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86484
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Sat, 14 May 2011 08:48:19 +0000 (08:48 +0000)]
[Qt]fast/events/remove-target-in-mouseup* tests fail
https://bugs.webkit.org/show_bug.cgi?id=60833
[Qt][GTK] plugins/get-url-with-javascript-url.html fails
https://bugs.webkit.org/show_bug.cgi?id=60834
* platform/qt/Skipped: Add failing tests.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86483
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Sat, 14 May 2011 08:02:32 +0000 (08:02 +0000)]
Unreviewed, rolling out r86469 and r86471, because they made hundreds tests crash on Qt.
Make GC validation more aggressive
https://bugs.webkit.org/show_bug.cgi?id=60802
Source/JavaScriptCore:
* JavaScriptCore.exp:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* JavaScriptCore.xcodeproj/project.pbxproj:
* debugger/DebuggerActivation.cpp:
(JSC::DebuggerActivation::visitChildren):
* heap/MarkedBlock.cpp:
(JSC::MarkedBlock::MarkedBlock):
* heap/MarkedSpace.cpp:
* runtime/Arguments.cpp:
(JSC::Arguments::visitChildren):
* runtime/Executable.cpp:
(JSC::EvalExecutable::visitChildren):
(JSC::ProgramExecutable::visitChildren):
(JSC::FunctionExecutable::visitChildren):
* runtime/Executable.h:
(JSC::ProgramExecutable::createStructure):
(JSC::FunctionExecutable::createStructure):
* runtime/GetterSetter.cpp:
(JSC::GetterSetter::visitChildren):
* runtime/GetterSetter.h:
(JSC::GetterSetter::createStructure):
* runtime/JSAPIValueWrapper.h:
(JSC::JSAPIValueWrapper::createStructure):
* runtime/JSActivation.cpp:
(JSC::JSActivation::visitChildren):
* runtime/JSArray.cpp:
(JSC::JSArray::visitChildren):
* runtime/JSCell.cpp:
* runtime/JSCell.h:
(JSC::JSCell::JSCell::JSCell):
* runtime/JSFunction.cpp:
(JSC::JSFunction::visitChildren):
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::visitChildren):
* runtime/JSONObject.h:
(JSC::JSONObject::createStructure):
* runtime/JSObject.cpp:
(JSC::JSObject::visitChildren):
* runtime/JSPropertyNameIterator.cpp:
(JSC::JSPropertyNameIterator::visitChildren):
* runtime/JSPropertyNameIterator.h:
* runtime/JSStaticScopeObject.cpp:
(JSC::JSStaticScopeObject::visitChildren):
* runtime/JSString.h:
(JSC::RopeBuilder::createStructure):
* runtime/JSWrapperObject.cpp:
(JSC::JSWrapperObject::visitChildren):
* runtime/NativeErrorConstructor.cpp:
(JSC::NativeErrorConstructor::visitChildren):
* runtime/PropertyMapHashTable.h:
(JSC::PropertyMapEntry::PropertyMapEntry):
* runtime/RegExpObject.cpp:
(JSC::RegExpObject::visitChildren):
* runtime/ScopeChain.cpp:
(JSC::ScopeChainNode::visitChildren):
* runtime/ScopeChain.h:
(JSC::ScopeChainNode::ScopeChainNode):
* runtime/Structure.cpp:
(JSC::Structure::Structure):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::visitChildren):
* runtime/Structure.h:
(JSC::Structure::createStructure):
(JSC::JSCell::classInfo):
* runtime/StructureChain.cpp:
(JSC::StructureChain::visitChildren):
* runtime/StructureChain.h:
* runtime/WriteBarrier.h:
(JSC::WriteBarrierBase::set):
(JSC::WriteBarrierBase::get):
(JSC::WriteBarrierBase::operator*):
(JSC::WriteBarrierBase::operator->):
(JSC::WriteBarrier::WriteBarrier):
* wtf/Assertions.h:
Source/WebCore:
* bindings/js/JSAttrCustom.cpp:
(WebCore::JSAttr::visitChildren):
* bindings/js/JSAudioContextCustom.cpp:
(WebCore::JSAudioContext::visitChildren):
* bindings/js/JSCSSRuleCustom.cpp:
(WebCore::JSCSSRule::visitChildren):
* bindings/js/JSCSSStyleDeclarationCustom.cpp:
(WebCore::JSCSSStyleDeclaration::visitChildren):
* bindings/js/JSCanvasRenderingContextCustom.cpp:
(WebCore::JSCanvasRenderingContext::visitChildren):
* bindings/js/JSDOMGlobalObject.cpp:
(WebCore::JSDOMGlobalObject::visitChildren):
(WebCore::JSDOMGlobalObject::setInjectedScript):
* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::visitChildren):
* bindings/js/JSDOMWindowShell.cpp:
(WebCore::JSDOMWindowShell::visitChildren):
* bindings/js/JSEventListener.cpp:
(WebCore::JSEventListener::JSEventListener):
* bindings/js/JSEventListener.h:
(WebCore::JSEventListener::jsFunction):
* bindings/js/JSJavaScriptAudioNodeCustom.cpp:
(WebCore::JSJavaScriptAudioNode::visitChildren):
* bindings/js/JSMessageChannelCustom.cpp:
(WebCore::JSMessageChannel::visitChildren):
* bindings/js/JSMessagePortCustom.cpp:
(WebCore::JSMessagePort::visitChildren):
* bindings/js/JSNamedNodeMapCustom.cpp:
(WebCore::JSNamedNodeMap::visitChildren):
* bindings/js/JSNodeCustom.cpp:
(WebCore::JSNode::visitChildren):
* bindings/js/JSNodeFilterCustom.cpp:
(WebCore::JSNodeFilter::visitChildren):
* bindings/js/JSNodeIteratorCustom.cpp:
(WebCore::JSNodeIterator::visitChildren):
* bindings/js/JSSVGElementInstanceCustom.cpp:
(WebCore::JSSVGElementInstance::visitChildren):
* bindings/js/JSSharedWorkerCustom.cpp:
(WebCore::JSSharedWorker::visitChildren):
* bindings/js/JSStyleSheetCustom.cpp:
(WebCore::JSStyleSheet::visitChildren):
* bindings/js/JSTreeWalkerCustom.cpp:
(WebCore::JSTreeWalker::visitChildren):
* bindings/js/JSWebGLRenderingContextCustom.cpp:
(WebCore::JSWebGLRenderingContext::visitChildren):
* bindings/js/JSWorkerContextCustom.cpp:
(WebCore::JSWorkerContext::visitChildren):
* bindings/js/JSXMLHttpRequestCustom.cpp:
(WebCore::JSXMLHttpRequest::visitChildren):
* bindings/js/JSXPathResultCustom.cpp:
(WebCore::JSXPathResult::visitChildren):
* bindings/scripts/CodeGeneratorJS.pm:
Source/WebKit2:
* WebProcess/Plugins/Netscape/JSNPObject.cpp:
(WebKit::JSNPObject::invalidate):
(WebKit::JSNPObject::callMethod):
(WebKit::JSNPObject::callObject):
(WebKit::JSNPObject::callConstructor):
(WebKit::JSNPObject::getCallData):
(WebKit::JSNPObject::getConstructData):
(WebKit::JSNPObject::getOwnPropertySlot):
(WebKit::JSNPObject::getOwnPropertyDescriptor):
(WebKit::JSNPObject::put):
(WebKit::JSNPObject::getOwnPropertyNames):
(WebKit::JSNPObject::propertyGetter):
(WebKit::JSNPObject::methodGetter):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86482
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Sat, 14 May 2011 07:24:39 +0000 (07:24 +0000)]
Unreviewed, rolling out r86476.
http://trac.webkit.org/changeset/86476
https://bugs.webkit.org/show_bug.cgi?id=60832
Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-05-14
It made plugins/get-url-notify-with-url-that-fails-to-
load.html crash on GTK (Requested by Ossy on #webkit).
Source/WebKit2:
* WebProcess/Plugins/Netscape/NetscapePluginStream.cpp:
(WebKit::NetscapePluginStream::stop):
(WebKit::NetscapePluginStream::notifyAndDestroyStream):
Tools:
* DumpRenderTree/DumpRenderTree.gypi:
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* DumpRenderTree/TestNetscapePlugIn/Tests/GetURLNotifyWithURLThatFailsToLoad.cpp: Removed.
* DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePlugin.vcproj:
* DumpRenderTree/qt/TestNetscapePlugin/TestNetscapePlugin.pro:
* GNUmakefile.am:
LayoutTests:
* plugins/get-url-notify-with-url-that-fails-to-load-expected.txt: Removed.
* plugins/get-url-notify-with-url-that-fails-to-load.html: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86481
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
gyuyoung.kim@samsung.com [Sat, 14 May 2011 05:22:41 +0000 (05:22 +0000)]
2011-05-13 Gyuyoung Kim <gyuyoung.kim@samsung.com>
Unreviewed. Fix style error.
* ewk/ewk_history.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86480
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Sat, 14 May 2011 04:20:04 +0000 (04:20 +0000)]
2011-05-13 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
HTML5 Application Cache Update Failures on Page Refresh
https://bugs.webkit.org/show_bug.cgi?id=60598
<rdar://problem/
9418639>
* http/tests/appcache/interrupted-update-expected.txt: Added.
* http/tests/appcache/interrupted-update.html: Added.
* http/tests/appcache/resources/interrupted-update.manifest: Added.
* http/tests/appcache/main-resource-redirect.html:
* http/tests/appcache/non-html.xhtml:
Now that we dispatch an error even when aborting a load due to navigation, error event
handler was getting called after notifyDone().
2011-05-13 Alexey Proskuryakov <ap@apple.com>
Reviewed by Darin Adler.
HTML5 Application Cache Update Failures on Page Refresh
https://bugs.webkit.org/show_bug.cgi?id=60598
<rdar://problem/
9418639>
Test: http/tests/appcache/interrupted-update.html
The reason was two-fold:
1) Cache group state wasn't fully reset after a failed cache update (or an initial load).
2) The cache group is not deleted until after after the navigation (from autorelease pool),
so the failed and sorry old version was picked up by cache selection algorithm.
The latter is more of a surprising behavior than a problem in itself. Keeping an appcache in
memory for reload is generally a good thing for performance.
* loader/appcache/ApplicationCacheGroup.cpp:
(WebCore::ApplicationCacheGroup::stopLoading): Added a FIXME about half-baked state resetting
code that sent me looking for a wrong fix originally.
(WebCore::ApplicationCacheGroup::stopLoadingInFrame): Stopped load is an update failure like
any other, so we should call cacheUpdateFailed(), which knows how to reset state.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86478
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
enrica@apple.com [Sat, 14 May 2011 01:18:58 +0000 (01:18 +0000)]
REGRESSION (WK2): Can't drag and drop a link or image from Safari to Desktop
https://bugs.webkit.org/show_bug.cgi?id=60819
<rdar://problem/
9370689>
Reviewed by Darin Adler and Brian Weinstein.
Source/WebCore:
To support drag-and-drop to the desktop and other windows applications,
we need to support the fileDescriptor and fileContentZero clipboard formats.
This patch adds the support for serializing these types across the process boundary.
It also fixes a regression introduced by r70914, that was causing the content of the
shortcut files to be corrupted. Using ascii() to convert from String to CString was
causing '\n' and '\r' to be replaced with '?'.
* platform/DragData.h:
* platform/win/ClipboardUtilitiesWin.cpp:
(WebCore::fileDescriptorFormat): Moved from ClipboardWin.cpp.
(WebCore::fileContentFormatZero): Moved from ClipboardWin.cpp.
(WebCore::getFileDescriptorData): Serialize FileDescriptor type.
(WebCore::getFileContentData): Serialize FileContent type.
(WebCore::setFileDescriptorData): Deserialize FileDescriptor type.
(WebCore::setFileContentData): Deserialize FileContent type.
(WebCore::setCFData): Added missing initialization of the tymed field
that was causing the cfHDrop format not to be deserialized correctly.
* platform/win/ClipboardUtilitiesWin.h:
* platform/win/ClipboardWin.cpp:
(WebCore::createGlobalHDropContent): Changed ascii() to latin1().
(WebCore::ClipboardWin::writeURL):
* platform/win/DragDataWin.cpp:
(WebCore::DragData::getDragFileDescriptorData):
(WebCore::DragData::getDragFileContentData):
Source/WebKit2:
To support drag-and-drop to the desktop and other windows applications,
we need to support the fileDescriptor and fileContentZero clipboard formats.
This patch adds the support for serializing these types across the process boundary.
* Platform/CoreIPC/Arguments.h: Added support for messages with 10 arguments.
(CoreIPC::Arguments10::Arguments10):
(CoreIPC::Arguments10::encode):
(CoreIPC::Arguments10::decode):
(CoreIPC::In):
(CoreIPC::Out):
* Platform/CoreIPC/HandleMessage.h:
(CoreIPC::callMemberFunction): Added support for memebers with 10 arguments.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::startDragDrop):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* WebProcess/WebCoreSupport/win/WebDragClientWin.cpp:
(WebKit::WebDragClient::startDrag):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86477
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Sat, 14 May 2011 01:05:13 +0000 (01:05 +0000)]
2011-05-13 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
NPP_URLNotify is not called if a URL passed to NPN_GetURLNotify fails to load
https://bugs.webkit.org/show_bug.cgi?id=60823
<rdar://problem/
9430386>
Add test that calls NPN_GetURLNotify on a URL that can't be loaded, and checks if NPP_URLNotify is called.
* DumpRenderTree/DumpRenderTree.gypi:
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* DumpRenderTree/TestNetscapePlugIn/Tests/GetURLNotifyWithURLThatFailsToLoad.cpp: Added.
(GetURLNotifyWithURLThatFailsToLoad::GetURLNotifyWithURLThatFailsToLoad):
(GetURLNotifyWithURLThatFailsToLoad::NPP_New):
(GetURLNotifyWithURLThatFailsToLoad::NPP_URLNotify):
* DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePlugin.vcproj:
* DumpRenderTree/qt/TestNetscapePlugin/TestNetscapePlugin.pro:
* GNUmakefile.am:
2011-05-13 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
NPP_URLNotify is not called if a URL passed to NPN_GetURLNotify fails to load
https://bugs.webkit.org/show_bug.cgi?id=60823
<rdar://problem/
9430386>
Add test.
* plugins/get-url-notify-with-url-that-fails-to-load-expected.txt: Added.
* plugins/get-url-notify-with-url-that-fails-to-load.html: Added.
2011-05-13 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
NPP_URLNotify is not called if a URL passed to NPN_GetURLNotify fails to load
https://bugs.webkit.org/show_bug.cgi?id=60823
<rdar://problem/
9430386>
If a plug-in stream fails to load before it's been started, we won't destroy the stream.
* WebProcess/Plugins/Netscape/NetscapePluginStream.cpp:
(WebKit::NetscapePluginStream::stop):
Call notifyAndDestroyStream which will call NPP_URLNotify if necessary, and also destroy the stream.
(WebKit::NetscapePluginStream::notifyAndDestroyStream):
Pass the request URL to NPP_URLNotify, matching other browsers.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86476
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dcheng@chromium.org [Sat, 14 May 2011 00:55:52 +0000 (00:55 +0000)]
2011-05-13 Daniel Cheng <dcheng@chromium.org>
Fix the build.
Add includes that the builders are suddenly complaining about...
* page/DragState.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86475
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
atwilson@chromium.org [Sat, 14 May 2011 00:24:39 +0000 (00:24 +0000)]
Disable failing test on chromium. Unreviewed.
* platform/chromium/test_expectations.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86474
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
msaboff@apple.com [Sat, 14 May 2011 00:03:18 +0000 (00:03 +0000)]
2011-05-13 Michael Saboff <msaboff@apple.com>
Reviewed by Geoffrey Garen.
Backing store may not get discarded due to stopped timer
https://bugs.webkit.org/show_bug.cgi?id=60816
Changed the backing store timer to restart if it has been stopped.
The evaluation is done when the view's state is changed.
This change appears to be worth ~3MB (one backing store worth)
during memory tests.
* UIProcess/DrawingAreaProxyImpl.cpp:
(WebKit::DrawingAreaProxyImpl::discardBackingStoreSoon):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::viewStateDidChange):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86473
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dcheng@chromium.org [Fri, 13 May 2011 23:31:49 +0000 (23:31 +0000)]
2011-05-13 Daniel Cheng <dcheng@chromium.org>
Reviewed by Tony Chang.
Improve drag start logic
https://bugs.webkit.org/show_bug.cgi?id=59409
Add a new test to test drag start edge cases on Mac (because of a non-zero text drag delay)
as well as rebase an existing test.
* fast/css/user-drag-none.html: Text nodes are no longer draggable.
* platform/mac/editing/pasteboard/drag-selections-to-contenteditable-expected.txt: Added.
* platform/mac/editing/pasteboard/drag-selections-to-contenteditable.html: Added.
2011-05-13 Daniel Cheng <dcheng@chromium.org>
Reviewed by Tony Chang.
Improve drag start logic
https://bugs.webkit.org/show_bug.cgi?id=59409
Rewrite and simplify the dragging logic to better match IE, Firefox, and the behavior
defined in the spec. Among other things:
- draggableNode() no longer returns text nodes when dragging anchors.
- When starting a drag over an image in a selection, prefer to drag the selection.
- Several redundant hit tests have been removed.
- Minor refactoring to make the logic easier to follow.
Test: platform/mac/editing/pasteboard/drag-selections-to-contenteditable.html
* WebCore.xcodeproj/project.pbxproj:
* page/DragController.cpp:
(WebCore::DragController::draggableNode):
(WebCore::DragController::startDrag):
* page/DragController.h:
* page/DragState.h:
(WebCore::DragState::shouldDispatchEvents):
* page/EventHandler.cpp:
(WebCore::EventHandler::EventHandler):
(WebCore::EventHandler::eventMayStartDrag):
(WebCore::EventHandler::updateDragSourceActionsAllowed):
(WebCore::EventHandler::updateDragAndDrop):
(WebCore::EventHandler::cancelDragAndDrop):
(WebCore::EventHandler::dragHysteresisExceeded):
(WebCore::EventHandler::dragSourceEndedAt):
(WebCore::ExactlyOneBitSet):
(WebCore::EventHandler::handleDrag):
* page/EventHandler.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86472
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver@apple.com [Fri, 13 May 2011 23:16:09 +0000 (23:16 +0000)]
Build fix.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86471
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver@apple.com [Fri, 13 May 2011 23:07:09 +0000 (23:07 +0000)]
2011-05-13 Oliver Hunt <oliver@apple.com>
Reviewed by Geoffrey Garen.
Make GC validation more aggressive
https://bugs.webkit.org/show_bug.cgi?id=60802
This patch makes the checks performed under GC_VALIDATION
much more aggressive, and adds the checks to more places
in order to allow us to catch GC bugs much closer to the
point of failure.
* JavaScriptCore.exp:
* JavaScriptCore.xcodeproj/project.pbxproj:
* debugger/DebuggerActivation.cpp:
(JSC::DebuggerActivation::visitChildren):
* heap/MarkedBlock.cpp:
(JSC::MarkedBlock::MarkedBlock):
* heap/MarkedSpace.cpp:
* runtime/Arguments.cpp:
(JSC::Arguments::visitChildren):
* runtime/Executable.cpp:
(JSC::EvalExecutable::visitChildren):
(JSC::ProgramExecutable::visitChildren):
(JSC::FunctionExecutable::visitChildren):
* runtime/Executable.h:
* runtime/GetterSetter.cpp:
(JSC::GetterSetter::visitChildren):
* runtime/GetterSetter.h:
* runtime/JSAPIValueWrapper.h:
(JSC::JSAPIValueWrapper::createStructure):
(JSC::JSAPIValueWrapper::JSAPIValueWrapper):
* runtime/JSActivation.cpp:
(JSC::JSActivation::visitChildren):
* runtime/JSArray.cpp:
(JSC::JSArray::visitChildren):
* runtime/JSCell.cpp:
(JSC::slowValidateCell):
* runtime/JSCell.h:
(JSC::JSCell::JSCell::unvalidatedStructure):
(JSC::JSCell::JSCell::JSCell):
* runtime/JSFunction.cpp:
(JSC::JSFunction::visitChildren):
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::visitChildren):
(JSC::slowValidateCell):
* runtime/JSONObject.h:
* runtime/JSObject.cpp:
(JSC::JSObject::visitChildren):
* runtime/JSPropertyNameIterator.cpp:
(JSC::JSPropertyNameIterator::visitChildren):
* runtime/JSPropertyNameIterator.h:
* runtime/JSStaticScopeObject.cpp:
(JSC::JSStaticScopeObject::visitChildren):
* runtime/JSString.h:
(JSC::RopeBuilder::JSString):
* runtime/JSWrapperObject.cpp:
(JSC::JSWrapperObject::visitChildren):
* runtime/NativeErrorConstructor.cpp:
(JSC::NativeErrorConstructor::visitChildren):
* runtime/PropertyMapHashTable.h:
(JSC::PropertyMapEntry::PropertyMapEntry):
* runtime/RegExpObject.cpp:
(JSC::RegExpObject::visitChildren):
* runtime/ScopeChain.cpp:
(JSC::ScopeChainNode::visitChildren):
* runtime/ScopeChain.h:
(JSC::ScopeChainNode::ScopeChainNode):
* runtime/Structure.cpp:
(JSC::Structure::Structure):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::visitChildren):
* runtime/Structure.h:
(JSC::JSCell::classInfo):
* runtime/StructureChain.cpp:
(JSC::StructureChain::visitChildren):
* runtime/StructureChain.h:
* runtime/WriteBarrier.h:
(JSC::validateCell):
(JSC::JSCell):
(JSC::JSGlobalObject):
(JSC::WriteBarrierBase::set):
(JSC::WriteBarrierBase::setMayBeNull):
(JSC::WriteBarrierBase::setEarlyValue):
(JSC::WriteBarrierBase::get):
(JSC::WriteBarrierBase::operator*):
(JSC::WriteBarrierBase::operator->):
(JSC::WriteBarrierBase::unvalidatedGet):
(JSC::WriteBarrier::WriteBarrier):
* wtf/Assertions.h:
2011-05-13 Oliver Hunt <oliver@apple.com>
Reviewed by Geoffrey Garen.
Make GC validation more aggressive
https://bugs.webkit.org/show_bug.cgi?id=60802
This makes GC_VALIDATION much more aggressive in webcore,
adding logic to every visitChildren method to ensure that
the structure still has correct flags.
Additionally every function generated for the dom bindings
makes use of the new GC_VALIDATION object assertions to further
ensure that the object appears to be sensible.
* bindings/js/JSAttrCustom.cpp:
(WebCore::JSAttr::visitChildren):
* bindings/js/JSAudioContextCustom.cpp:
(WebCore::JSAudioContext::visitChildren):
* bindings/js/JSCSSRuleCustom.cpp:
(WebCore::JSCSSRule::visitChildren):
* bindings/js/JSCSSStyleDeclarationCustom.cpp:
(WebCore::JSCSSStyleDeclaration::visitChildren):
* bindings/js/JSCanvasRenderingContextCustom.cpp:
(WebCore::JSCanvasRenderingContext::visitChildren):
* bindings/js/JSDOMGlobalObject.cpp:
(WebCore::JSDOMGlobalObject::visitChildren):
(WebCore::JSDOMGlobalObject::setInjectedScript):
* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::visitChildren):
* bindings/js/JSDOMWindowShell.cpp:
(WebCore::JSDOMWindowShell::visitChildren):
* bindings/js/JSEventListener.cpp:
(WebCore::JSEventListener::JSEventListener):
* bindings/js/JSEventListener.h:
(WebCore::JSEventListener::jsFunction):
* bindings/js/JSJavaScriptAudioNodeCustom.cpp:
(WebCore::JSJavaScriptAudioNode::visitChildren):
* bindings/js/JSMessageChannelCustom.cpp:
(WebCore::JSMessageChannel::visitChildren):
* bindings/js/JSMessagePortCustom.cpp:
(WebCore::JSMessagePort::visitChildren):
* bindings/js/JSNamedNodeMapCustom.cpp:
(WebCore::JSNamedNodeMap::visitChildren):
* bindings/js/JSNodeCustom.cpp:
(WebCore::JSNode::visitChildren):
* bindings/js/JSNodeFilterCustom.cpp:
(WebCore::JSNodeFilter::visitChildren):
* bindings/js/JSNodeIteratorCustom.cpp:
(WebCore::JSNodeIterator::visitChildren):
* bindings/js/JSSVGElementInstanceCustom.cpp:
(WebCore::JSSVGElementInstance::visitChildren):
* bindings/js/JSSharedWorkerCustom.cpp:
(WebCore::JSSharedWorker::visitChildren):
* bindings/js/JSStyleSheetCustom.cpp:
(WebCore::JSStyleSheet::visitChildren):
* bindings/js/JSTreeWalkerCustom.cpp:
(WebCore::JSTreeWalker::visitChildren):
* bindings/js/JSWebGLRenderingContextCustom.cpp:
(WebCore::JSWebGLRenderingContext::visitChildren):
* bindings/js/JSWorkerContextCustom.cpp:
(WebCore::JSWorkerContext::visitChildren):
* bindings/js/JSXMLHttpRequestCustom.cpp:
(WebCore::JSXMLHttpRequest::visitChildren):
* bindings/js/JSXPathResultCustom.cpp:
(WebCore::JSXPathResult::visitChildren):
* bindings/scripts/CodeGeneratorJS.pm:
2011-05-13 Oliver Hunt <oliver@apple.com>
Reviewed by Geoffrey Garen.
Make GC validation more aggressive
https://bugs.webkit.org/show_bug.cgi?id=60802
Add GC_VALIDATION calls to all the JSNPObject methods.
* WebProcess/Plugins/Netscape/JSNPObject.cpp:
(WebKit::JSNPObject::invalidate):
(WebKit::JSNPObject::callMethod):
(WebKit::JSNPObject::callObject):
(WebKit::JSNPObject::callConstructor):
(WebKit::JSNPObject::getCallData):
(WebKit::JSNPObject::getConstructData):
(WebKit::JSNPObject::getOwnPropertySlot):
(WebKit::JSNPObject::getOwnPropertyDescriptor):
(WebKit::JSNPObject::put):
(WebKit::JSNPObject::getOwnPropertyNames):
(WebKit::JSNPObject::propertyGetter):
(WebKit::JSNPObject::methodGetter):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86469
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Fri, 13 May 2011 22:56:52 +0000 (22:56 +0000)]
Build fix.
* DumpRenderTree/TestNetscapePlugIn/Tests/GetURLWithJavaScriptURL.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86468
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Fri, 13 May 2011 22:37:36 +0000 (22:37 +0000)]
2011-05-13 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
NPN_GetURL with a javascript: URL doesn't send back the result in the stream
https://bugs.webkit.org/show_bug.cgi?id=60810
In NetscapePluginStream::sendJavaScriptStream, we were incorrectly passing the result URL
to the stream, instead of the result. Also, store the request URL in the NetscapePluginStream object
to avoid sending it over the wire.
* PluginProcess/PluginControllerProxy.cpp:
(WebKit::PluginControllerProxy::didEvaluateJavaScript):
* PluginProcess/PluginControllerProxy.h:
* PluginProcess/PluginControllerProxy.messages.in:
* WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
(WebKit::NetscapePlugin::loadURL):
(WebKit::NetscapePlugin::didEvaluateJavaScript):
(WebKit::NetscapePlugin::manualStreamDidReceiveResponse):
* WebProcess/Plugins/Netscape/NetscapePlugin.h:
* WebProcess/Plugins/Netscape/NetscapePluginStream.cpp:
(WebKit::NetscapePluginStream::NetscapePluginStream):
(WebKit::NetscapePluginStream::sendJavaScriptStream):
* WebProcess/Plugins/Netscape/NetscapePluginStream.h:
(WebKit::NetscapePluginStream::create):
* WebProcess/Plugins/Plugin.h:
* WebProcess/Plugins/PluginProxy.cpp:
(WebKit::PluginProxy::didEvaluateJavaScript):
* WebProcess/Plugins/PluginProxy.h:
* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::performJavaScriptURLRequest):
2011-05-13 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
NPN_GetURL with a javascript: URL doesn't send back the result in the stream
https://bugs.webkit.org/show_bug.cgi?id=60810
Add a test that calls NPN_GetURL on a javascript: URL and checks that it gets back the expected result.
* plugins/get-url-with-javascript-url-expected.txt: Added.
* plugins/get-url-with-javascript-url.html: Added.
2011-05-13 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
NPN_GetURL with a javascript: URL doesn't send back the result in the stream
https://bugs.webkit.org/show_bug.cgi?id=60810
Add a test that calls NPN_GetURL on a javascript: URL and checks that it gets back the expected result.
* DumpRenderTree/DumpRenderTree.gypi:
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePlugin.vcproj:
* DumpRenderTree/qt/TestNetscapePlugin/TestNetscapePlugin.pro:
* GNUmakefile.am:
Add files.
* DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:
* DumpRenderTree/TestNetscapePlugIn/PluginTest.h:
Add new NPN and NPP wrappers and sort them according to the order they appear in npfunctions.h
* DumpRenderTree/TestNetscapePlugIn/Tests/GetURLWithJavaScriptURL.cpp: Added.
(GetURLWithJavaScriptURL::GetURLWithJavaScriptURL):
(GetURLWithJavaScriptURL::NPP_New):
(GetURLWithJavaScriptURL::NPP_NewStream):
(GetURLWithJavaScriptURL::NPP_DestroyStream):
(GetURLWithJavaScriptURL::NPP_WriteReady):
(GetURLWithJavaScriptURL::NPP_Write):
* DumpRenderTree/TestNetscapePlugIn/main.cpp:
(NPP_NewStream):
(NPP_WriteReady):
(NPP_Write):
(NPP_URLNotify):
call the PluginTest NPP wrappers.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86467
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 13 May 2011 22:32:20 +0000 (22:32 +0000)]
2011-05-13 Mark Pilgrim <pilgrim@chromium.org>
Reviewed by Tony Chang.
Port Mozilla's IndexedDB tests: remove objectstore
https://bugs.webkit.org/show_bug.cgi?id=60768
This test creates an objectstore, populates it with 100 records,
deletes the objectstore, and checks that the objectStoreNames array
is updated properly at each step.
* storage/indexeddb/mozilla/remove-objectstore-expected.txt: Added.
* storage/indexeddb/mozilla/remove-objectstore.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86466
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
atwilson@chromium.org [Fri, 13 May 2011 22:30:35 +0000 (22:30 +0000)]
Removed chromium border-fit-lines.html suppression as it seems to pass now. Unreviewed.
* platform/chromium/test_expectations.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86465
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 13 May 2011 22:09:19 +0000 (22:09 +0000)]
2011-05-13 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r86447.
http://trac.webkit.org/changeset/86447
https://bugs.webkit.org/show_bug.cgi?id=60809
"Broke some uses of EventSender object on Qt" (Requested by
mwenge on #webkit).
* platform/qt/Skipped:
* platform/qt/http/tests/plugins/plugin-document-has-focus-expected.txt: Removed.
2011-05-13 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r86447.
http://trac.webkit.org/changeset/86447
https://bugs.webkit.org/show_bug.cgi?id=60809
"Broke some uses of EventSender object on Qt" (Requested by
mwenge on #webkit).
* WebCoreSupport/DumpRenderTreeSupportQt.cpp:
* WebCoreSupport/DumpRenderTreeSupportQt.h:
2011-05-13 Sheriff Bot <webkit.review.bot@gmail.com>
Unreviewed, rolling out r86447.
http://trac.webkit.org/changeset/86447
https://bugs.webkit.org/show_bug.cgi?id=60809
"Broke some uses of EventSender object on Qt" (Requested by
mwenge on #webkit).
* DumpRenderTree/qt/DumpRenderTreeQt.cpp:
(WebCore::WebPage::WebPage):
(WebCore::DumpRenderTree::DumpRenderTree):
(WebCore::DumpRenderTree::initJSObjects):
(WebCore::DumpRenderTree::createWindow):
* DumpRenderTree/qt/DumpRenderTreeQt.h:
(WebCore::DumpRenderTree::eventSender):
* DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp:
(webkit_test_plugin_new_instance):
(webkit_test_plugin_set_window):
(webkit_test_plugin_handle_event):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86464
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mnaganov@chromium.org [Fri, 13 May 2011 22:00:05 +0000 (22:00 +0000)]
2011-05-13 Mikhail Naganov <mnaganov@chromium.org>
Web Inspector: Unreviewed image glyph position fix in CSS after r85588.
* inspector/front-end/heapProfiler.css:
(.heapshot-help-status-bar-item .glyph):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86463
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abarth@webkit.org [Fri, 13 May 2011 21:44:11 +0000 (21:44 +0000)]
2011-05-13 Adam Barth <abarth@webkit.org>
Reviewed by Eric Seidel.
iframe sandbox doesn't properly block popups
https://bugs.webkit.org/show_bug.cgi?id=60784
Test that we block popup windows from inside sandbox.
* http/tests/security/no-popup-from-sandbox-expected.txt: Added.
* http/tests/security/no-popup-from-sandbox-top-expected.txt: Added.
* http/tests/security/no-popup-from-sandbox-top.html: Added.
* http/tests/security/no-popup-from-sandbox.html: Added.
2011-05-13 Adam Barth <abarth@webkit.org>
Reviewed by Eric Seidel.
iframe sandbox doesn't properly block popups
https://bugs.webkit.org/show_bug.cgi?id=60784
Previously, we weren't implementing this requirement from the spec:
"This flag also prevents content from creating new auxiliary browsing
contexts, e.g. using the target attribute or the window.open() method."
Tests: http/tests/security/no-popup-from-sandbox-top.html
http/tests/security/no-popup-from-sandbox.html
* loader/PolicyChecker.cpp:
(WebCore::PolicyChecker::checkNewWindowPolicy):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86462
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Fri, 13 May 2011 21:35:06 +0000 (21:35 +0000)]
2011-05-13 Ryosuke Niwa <rniwa@webkit.org>
Reviewed by Darin Adler.
click event shouldn't fire when the target is ever removed in mouseup
https://bugs.webkit.org/show_bug.cgi?id=60600
Added tests to ensure WebKit does not fire click event when the target node
is removed in mouseup event.
* fast/events/remove-target-in-mouseup-deep-expected.txt: Added.
* fast/events/remove-target-in-mouseup-deep.html: Added.
* fast/events/remove-target-in-mouseup-expected.txt: Added.
* fast/events/remove-target-in-mouseup-insertback-expected.txt: Added.
* fast/events/remove-target-in-mouseup-insertback.html: Added.
* fast/events/remove-target-in-mouseup-twice-expected.txt: Added.
* fast/events/remove-target-in-mouseup-twice.html: Added.
* fast/events/remove-target-in-mouseup.html: Added.
2011-05-13 Ryosuke Niwa <rniwa@webkit.org>
Reviewed by Darin Adler.
click event shouldn't fire when the target is ever removed in mouseup
https://bugs.webkit.org/show_bug.cgi?id=60600
Fixed the bug by invalidating m_clickNode when it or one of its ancestors has been removed
from the document. New behavior matches Internet Explorer and Firefox.
Tests: fast/events/remove-target-in-mouseup-deep.html
fast/events/remove-target-in-mouseup-insertback.html
fast/events/remove-target-in-mouseup-twice.html
fast/events/remove-target-in-mouseup.html
* dom/Document.cpp:
(WebCore::Document::nodeChildrenWillBeRemoved): Calls EventHandler::nodeWillBeRemoved.
(WebCore::Document::nodeWillBeRemoved): Calls EventHandler::nodeWillBeRemoved.
* page/EventHandler.cpp:
(WebCore::EventHandler::nodeWillBeRemoved): Added; invalidates m_clickNode when m_clickNode
or one of its ancestor is removed from the document.
* page/EventHandler.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86461
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Fri, 13 May 2011 20:59:57 +0000 (20:59 +0000)]
Reviewed by Joseph Pecoraro.
Hide appcache status bar items
https://bugs.webkit.org/show_bug.cgi?id=60799
We have a number of non-trivial bugs that make these more misleading than helpful to developers.
* inspector/front-end/ApplicationCacheItemsView.js: (WebInspector.ApplicationCacheItemsView):
Just hide the items for now. Removing all support code would be complicated, and not helpful.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86460
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jeffm@apple.com [Fri, 13 May 2011 20:46:18 +0000 (20:46 +0000)]
2011-05-13 Jeff Miller <jeffm@apple.com>
Reviewed by Darin Adler.
Make some page() member functions const
https://bugs.webkit.org/show_bug.cgi?id=60794
* UIProcess/ChunkedUpdateDrawingAreaProxy.h: Make page() const.
* UIProcess/WebFrameProxy.h:
(WebKit::WebFrameProxy::page): Make page() const.
* UIProcess/WebInspectorProxy.h:
(WebKit::WebInspectorProxy::page): Make page() const.
* UIProcess/gtk/ChunkedUpdateDrawingAreaProxyGtk.cpp:
(WebKit::ChunkedUpdateDrawingAreaProxy::page): Make page() const.
* UIProcess/mac/ChunkedUpdateDrawingAreaProxyMac.mm:
(WebKit::ChunkedUpdateDrawingAreaProxy::page): Make page() const.
* UIProcess/qt/ChunkedUpdateDrawingAreaProxyQt.cpp:
(WebKit::ChunkedUpdateDrawingAreaProxy::page): Make page() const.
* UIProcess/win/ChunkedUpdateDrawingAreaProxyWin.cpp:
(WebKit::ChunkedUpdateDrawingAreaProxy::page): Make page() const.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86459
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abarth@webkit.org [Fri, 13 May 2011 20:40:23 +0000 (20:40 +0000)]
2011-05-13 Adam Barth <abarth@webkit.org>
Reviewed by Eric Seidel.
indexedDB is visible inside iframe sandbox
https://bugs.webkit.org/show_bug.cgi?id=60785
* http/tests/security/no-indexeddb-from-sandbox-expected.txt: Added.
* http/tests/security/no-indexeddb-from-sandbox.html: Added.
2011-05-13 Adam Barth <abarth@webkit.org>
Reviewed by Eric Seidel.
indexedDB is visible inside iframe sandbox
https://bugs.webkit.org/show_bug.cgi?id=60785
We're supposed to return a null indexedDB factory when inside an iframe
sandbox.
Test: http/tests/security/no-indexeddb-from-sandbox.html
* page/DOMWindow.cpp:
(WebCore::DOMWindow::webkitIndexedDB):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86458
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 13 May 2011 20:22:58 +0000 (20:22 +0000)]
2011-05-13 Mark Pilgrim <pilgrim@chromium.org>
Reviewed by Tony Chang.
Port Mozilla's IndexedDB tests: indexes with keys and key ranges
https://bugs.webkit.org/show_bug.cgi?id=60733
This megatest creates an object store with several rows of data,
creates indexes on each key, then iterates each index in a variety
of ways (keys, key ranges, etc).
* storage/indexeddb/mozilla/indexes-expected.txt: Added.
* storage/indexeddb/mozilla/indexes.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86457
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Fri, 13 May 2011 19:54:33 +0000 (19:54 +0000)]
Load plugins in the order they're found
Fixes <http://webkit.org/b/60788> <rdar://problem/
9435787> REGRESSION (r69790): WebKit2
doesn't prefer plugins in the additional plugins directory
Reviewed by Anders Carlsson.
* UIProcess/Plugins/PluginInfoStore.cpp:
(WebKit::addFromVector):
Changed to use a ListHashSet instead of a HashSet to store the plugin paths.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86456
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Fri, 13 May 2011 19:54:03 +0000 (19:54 +0000)]
Fix manual tests that got broken by the move of WebCore into Source
* manual-tests/plugins/object-clipping.html:
* manual-tests/pointer-events.html:
* manual-tests/video-waiting-seeking.html:
Updated some paths.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86455
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 13 May 2011 19:48:16 +0000 (19:48 +0000)]
2011-05-13 Nat Duca <nduca@chromium.org>
Reviewed by James Robinson.
[chromium] compositing tests are failing
https://bugs.webkit.org/show_bug.cgi?id=60738
Remove supression for previously failing compositor tests.
* platform/chromium/test_expectations.txt:
2011-05-13 Nat Duca <nduca@chromium.org>
Reviewed by James Robinson.
[chromium] compositing tests are failing
https://bugs.webkit.org/show_bug.cgi?id=60738
Bind texture before setting its filtering state.
* platform/graphics/chromium/LayerTilerChromium.cpp:
(WebCore::LayerTilerChromium::updateFromPixels):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86454
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Fri, 13 May 2011 19:40:41 +0000 (19:40 +0000)]
Reviewed by Dan Bernstein.
https://bugs.webkit.org/show_bug.cgi?id=60787
Add some assertions to ApplicationCacheGroup
* loader/appcache/ApplicationCacheGroup.cpp:
(WebCore::ApplicationCacheGroup::finishedLoadingMainResource): Check that count doesn't underflow.
(WebCore::ApplicationCacheGroup::failedLoadingMainResource): Ditto.
(WebCore::ApplicationCacheGroup::stopLoading): Check that we are the handle's client before
resetting it.
(WebCore::ApplicationCacheGroup::update): Check that there isn't a stale current handle or
resource hanging around.
(WebCore::ApplicationCacheGroup::didFail): Check that the handle is either manifest or current one.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86453
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 13 May 2011 19:28:53 +0000 (19:28 +0000)]
2011-05-13 Tao Bai <michaelbai@chromium.org>
Reviewed by Darin Fisher.
Handle the touch icon.
https://bugs.webkit.org/show_bug.cgi?id=60247
Added WebIconURL for the corresponding IconURL.
Added method iconURLs() to specify the type of icon need to return.
The favIconURL() is deprecated and will be removed later.
* WebKit.gyp:
* features.gypi:
* public/WebFrame.h:
* public/WebFrameClient.h:
(WebKit::WebFrameClient::didChangeIcons):
* public/WebIconURL.h: Added.
(WebKit::WebIconURL::WebIconURL):
(WebKit::WebIconURL::iconType):
(WebKit::WebIconURL::iconURL):
* src/AssertMatchingEnums.cpp:
* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::dispatchDidChangeIcons):
* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::favIconURL):
* src/WebFrameImpl.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86452
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Fri, 13 May 2011 19:09:09 +0000 (19:09 +0000)]
2011-05-13 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
Prune #includes from FrameView.h (Part 2)
https://bugs.webkit.org/show_bug.cgi?id=60748
- Update files that were depending on FrameView.h #including Frame.h or
Page.h.
* src/AutoFillPopupMenuClient.cpp:
* src/PlatformBridge.cpp:
* src/WebPopupMenuImpl.cpp:
2011-05-13 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
Prune #includes from FrameView.h (Part 2)
https://bugs.webkit.org/show_bug.cgi?id=60748
- Update files that were depending on FrameView.h #including Frame.h or
Page.h.
* Api/qgraphicswebview.cpp:
* WebCoreSupport/ChromeClientQt.cpp:
2011-05-13 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
Prune #includes from FrameView.h (Part 2)
https://bugs.webkit.org/show_bug.cgi?id=60748
- Update files that were depending on FrameView.h #including Frame.h or
Page.h.
* WebCoreSupport/GtkAdjustmentWatcher.cpp:
2011-05-13 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
Prune #includes from FrameView.h (Part 2)
https://bugs.webkit.org/show_bug.cgi?id=60748
- Update files that were depending on FrameView.h #including Frame.h or
Page.h.
* WebCoreSupport/WebChromeClient.cpp:
* WebCoreSupport/WebDragClient.cpp:
* WebCoreSupport/WebFrameLoaderClient.cpp:
* WebFrame.cpp:
(WebFrame::setPrinting):
* WebView.cpp:
2011-05-13 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
Prune #includes from FrameView.h (Part 2)
https://bugs.webkit.org/show_bug.cgi?id=60748
- Update files that were depending on FrameView.h #including Frame.h or
Page.h.
* WebView/WebClipView.mm:
* WebView/WebHTMLView.mm:
(-[WebHTMLView layoutToMinimumPageWidth:height:maximumPageWidth:adjustingViewSize:]):
2011-05-13 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
Prune #includes from FrameView.h (Part 2)
https://bugs.webkit.org/show_bug.cgi?id=60748
- Replace #includes in FrameView.h of Frame.h and Page.h
with Color.h, wtf/text/WTFString.h, and the new AdjustViewSizeOrNot.h
- Update files that were depending on FrameView.h #including Frame.h or
Page.h.
* GNUmakefile.list.am:
* WebCore.exp.in:
* WebCore.pro:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* accessibility/AccessibilityRenderObject.cpp:
* accessibility/AccessibilityScrollView.cpp:
* accessibility/chromium/AXObjectCacheChromium.cpp:
* accessibility/mac/AccessibilityObjectWrapper.mm:
* css/MediaQueryMatcher.cpp:
* dom/Range.cpp:
* editing/SpellingCorrectionController.cpp:
* history/CachedFrame.cpp:
* html/HTMLBodyElement.cpp:
* html/canvas/WebGLRenderingContext.cpp:
* html/parser/HTMLParserScheduler.cpp:
* page/AdjustViewSizeOrNot.h: Added.
* page/EditorClient.h:
* page/Frame.h:
* page/FrameView.cpp:
(WebCore::FrameView::forceLayoutForPagination):
* page/FrameView.h:
* page/PrintContext.cpp:
(WebCore::PrintContext::begin):
(WebCore::PrintContext::end):
* page/chromium/FrameChromium.cpp:
* page/win/FrameCGWin.cpp:
* page/win/FrameWin.cpp:
* platform/efl/PopupMenuEfl.cpp:
* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
* platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
* platform/graphics/qt/MediaPlayerPrivateQt.cpp:
* platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
* platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
* platform/gtk/WidgetGtk.cpp:
* plugins/IFrameShimSupport.cpp:
* rendering/RenderBlock.cpp:
* rendering/RenderBoxModelObject.cpp:
* rendering/RenderFrameBase.cpp:
* rendering/RenderIFrame.cpp:
* rendering/RenderMenuList.cpp:
* rendering/RenderTextControlSingleLine.cpp:
* rendering/RenderWidget.cpp:
* svg/SVGSVGElement.cpp:
2011-05-13 Sam Weinig <sam@webkit.org>
Reviewed by Anders Carlsson.
Prune #includes from FrameView.h (Part 2)
https://bugs.webkit.org/show_bug.cgi?id=60748
- Update files that were depending on FrameView.h #including Frame.h or
Page.h.
* WebProcess/Plugins/PluginView.cpp:
* WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:
* WebProcess/WebPage/WebContextMenu.cpp:
* WebProcess/WebPage/mac/AccessibilityWebPageObject.mm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86451
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
atwilson@chromium.org [Fri, 13 May 2011 18:21:29 +0000 (18:21 +0000)]
Suppress crasher in chromium. Unreviewed.
* platform/chromium/test_expectations.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86450
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
leviw@chromium.org [Fri, 13 May 2011 18:21:12 +0000 (18:21 +0000)]
2011-05-13 Levi Weintraub <leviw@chromium.org>
Reviewed by Eric Seidel.
Switch paintCollapsedBorder to use IntRect
https://bugs.webkit.org/show_bug.cgi?id=60739
Updating the last offending paint function that takes four ints
instead of an IntRect.
No new tests as this is simple refactoring.
* rendering/RenderTableCell.cpp:
(WebCore::RenderTableCell::paint):
(WebCore::RenderTableCell::paintCollapsedBorder):
* rendering/RenderTableCell.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86449
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
inferno@chromium.org [Fri, 13 May 2011 18:17:12 +0000 (18:17 +0000)]
2011-05-13 Abhishek Arya <inferno@chromium.org>
Reviewed by Dave Hyatt.
Regression(r75823): Revert initialization back to the first RenderBlock
in the parent chain.
https://bugs.webkit.org/show_bug.cgi?id=60780
Test: fast/block/float/float-not-removed-crash.html
* rendering/RenderBox.cpp:
(WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists):
In r75823, I forgot to initialize parentBlock, when the original code
did and Hyatt did mention in c#5. Now, initializing parentBlock to the
first RenderBlock in the parent chain.
2011-05-13 Abhishek Arya <inferno@chromium.org>
Reviewed by Dave Hyatt.
Tests that we do not crash when trying to access a deleted float.
https://bugs.webkit.org/show_bug.cgi?id=60780
* fast/block/float/float-not-removed-crash-expected.txt: Added.
* fast/block/float/float-not-removed-crash.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86448
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
robert@webkit.org [Fri, 13 May 2011 18:11:58 +0000 (18:11 +0000)]
2011-05-13 Robert Hogan <robert@webkit.org>
Reviewed by Benjamin Poulain.
[Qt] fix http/tests/plugins/plugin-document-has-focus.html
For some reason the platform-independent expected result has
no newline at the end of the file. The unix test plugin also
reports the event from a different line. These are harmless
differences, so create platform-specific result.
Note that nearly every platform skips this test at the moment.
https://bugs.webkit.org/show_bug.cgi?id=60722
* platform/qt/Skipped:
* platform/qt/http/tests/plugins/plugin-document-has-focus-expected.txt: Added.
2011-05-13 Robert Hogan <robert@webkit.org>
Reviewed by Benjamin Poulain.
[Qt] fix http/tests/plugins/plugin-document-has-focus.html
https://bugs.webkit.org/show_bug.cgi?id=60722
QWebPage::setView() will display the browser window, so
implement a private version that does just enough to
satisfy EventSender's requirement to install an event
filter on a page's web view.
* WebCoreSupport/DumpRenderTreeSupportQt.cpp:
(DumpRenderTreeSupportQt::setView):
* WebCoreSupport/DumpRenderTreeSupportQt.h:
2011-05-13 Robert Hogan <robert@webkit.org>
Reviewed by Benjamin Poulain.
[Qt] fix http/tests/plugins/plugin-document-has-focus.html
The support for this test added to the unix test plugin here
may allow other platforms to pass it (nearly everyone
skips it). On Qt it required a bit of trickiness with
the page's EventSender object to get it working fully though,
so only unskipping Qt here.
https://bugs.webkit.org/show_bug.cgi?id=60722
* DumpRenderTree/qt/DumpRenderTreeQt.cpp:
(WebCore::WebPage::WebPage):
(WebCore::WebPage::eventSender):
(WebCore::DumpRenderTree::DumpRenderTree):
(WebCore::DumpRenderTree::initJSObjects):
(WebCore::DumpRenderTree::createWindow):
* DumpRenderTree/qt/DumpRenderTreeQt.h:
* DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp:
(webkit_test_plugin_new_instance):
(webkit_test_plugin_set_window):
(webkit_test_plugin_handle_event):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86447
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
podivilov@chromium.org [Fri, 13 May 2011 18:00:13 +0000 (18:00 +0000)]
2011-05-05 Pavel Podivilov <podivilov@chromium.org>
Reviewed by Yury Semikhatsky.
Web Inspector: TextEditor should support editing a range.
https://bugs.webkit.org/show_bug.cgi?id=59688
* inspector/front-end/TextViewer.js:
(WebInspector.TextEditorChunkedPanel.prototype.makeLineAChunk):
(WebInspector.TextEditorChunkedPanel.prototype._splitChunkOnALine):
(WebInspector.TextEditorMainPanel.prototype.setEditableRange):
(WebInspector.TextEditorMainPanel.prototype.clearEditableRange):
(WebInspector.TextEditorMainPanel.prototype._splitChunkOnALine):
(WebInspector.TextEditorMainPanel.prototype._applyDomUpdates):
(WebInspector.TextEditorMainChunk):
(WebInspector.TextEditorMainChunk.prototype.set expanded):
(WebInspector.TextEditorMainChunk.prototype.set readOnly):
(WebInspector.TextEditorMainChunk.prototype.get readOnly):
(WebInspector.TextEditorMainChunk.prototype._updateElementReadOnlyState):
* inspector/front-end/textViewer.css:
(.text-editor-read-only):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86446
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Fri, 13 May 2011 17:36:57 +0000 (17:36 +0000)]
Exclude the Leopard NRWT bot from the core builder set
Fixes <http://webkit.org/b/60392> Leopard Intel Release (NRWT) shouldn't be a core builder
Reviewed by Darin Adler.
* Scripts/webkitpy/common/net/buildbot/buildbot.py:
(BuildBot.__init__): Tighten up the Leopard regexp to only allow the non-NRWT Leopard bots
in the core builder set.
* Scripts/webkitpy/common/net/buildbot/buildbot_unittest.py:
(BuildBotTest.test_builder_name_regexps): Updated to match the current set of builders and
regexps.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86445
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Fri, 13 May 2011 17:36:41 +0000 (17:36 +0000)]
Group all the NRWT bots together
This also gets the new NRWT bots out of the middle of Apple's bots. Since these new NRWT
bots are experimental, it seems best not to clutter up the non-experimental bots with
experimental ones.
Fixes <http://webkit.org/b/60769> New "(NRWT)" bots are right in the middle of Apple's bots
on build.webkit.org
Reviewed by Dan Bernstein.
* BuildSlaveSupport/build.webkit.org-config/config.json: Moved the "(NRWT)" bots next to the
Chromium testers, which also use new-run-webkit-tests.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86444
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
podivilov@chromium.org [Fri, 13 May 2011 17:25:57 +0000 (17:25 +0000)]
2011-05-05 Pavel Podivilov <podivilov@chromium.org>
Reviewed by Yury Semikhatsky.
Web Inspector: fix source mapping for formatted scripts.
https://bugs.webkit.org/show_bug.cgi?id=60263
* inspector/debugger/resources/obfuscated.js:
(formatted1):
(formatted2):
* inspector/debugger/script-formatter.html:
2011-05-05 Pavel Podivilov <podivilov@chromium.org>
Reviewed by Yury Semikhatsky.
Web Inspector: fix source mapping for formatted scripts.
https://bugs.webkit.org/show_bug.cgi?id=60263
Source mapping is broken for script chunks that are already formatted at the beginning
and at the end of the script (see script-formatter.html).
* inspector/front-end/ScriptFormatter.js:
(WebInspector.ScriptFormatter.prototype._didFormatContent):
(WebInspector.FormattedSourceMapping):
(WebInspector.FormattedSourceMapping.prototype.originalToFormatted):
(WebInspector.FormattedSourceMapping.prototype.formattedToOriginal):
(WebInspector.FormattedSourceMapping.prototype._convertPosition):
* inspector/front-end/ScriptFormatterWorker.js:
(onmessage):
(HTMLScriptFormatter.prototype.format):
* inspector/front-end/SourceFile.js:
(WebInspector.FormattedSourceFile.prototype._didRequestContent):
(WebInspector.SourceMappingForFormattedSourceFile):
(WebInspector.SourceMappingForFormattedSourceFile.prototype.scriptLocationToSourceLine):
(WebInspector.SourceMappingForFormattedSourceFile.prototype.sourceLineToScriptLocation):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86443
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Fri, 13 May 2011 17:24:55 +0000 (17:24 +0000)]
Tell ScrollView's child Widgets that their frame rects have changed when its own frame rect changes
r79167 moved some code from setFrameRect to setBoundsSize, including a call to
frameRectsChanged. This was done because positionScrollbarLayers, which is called by
frameRectsChanged, only needs to be called when the bounds change, not when the frame rect
changes. But the recursive calls inside frameRectsChanged *do* need to be called when the
frame rect changes.
This patch moves the positionScrollbarLayers call out of frameRectsChanged, since it needs
to be called at different times from frameRectsChanged. Then it restores the
frameRectsChanged call to setFrameRect, which fixes the bug.
Test: platform/win/plugins/iframe-inside-overflow.html
Fixes <http://webkit.org/b/60194> <rdar://problem/
9383760> REGRESSION (r79167): Windowed
plugins in Google Reader don't move when the article list is scrolled
Reviewed by Dan Bernstein.
Source/WebCore:
* platform/ScrollView.cpp:
(WebCore::ScrollView::updateScrollbars): Added a positionScrollbarLayers call here now that
frameRectsChanged doesn't call it for us. Also added a FIXME because it seems strange to
call frameRectsChanged here when our frame rect hasn't changed.
(WebCore::ScrollView::setFrameRect): Added back the frameRectsChanged call that was removed
in r79167.
(WebCore::ScrollView::setBoundsSize): Replaced a frameRectsChanged call with a call to
positionScrollbarLayers. We were only calling frameRectsChanged here in order to get
positionScrollbarLayers to be called.
(WebCore::ScrollView::frameRectsChanged): Removed the call to positionScrollbarLayers. All
callers of frameRectsChanged have been updated to call positionScrollbarLayers if needed.
Tools:
Add a plugin test that dumps the plugin window's rect
* DumpRenderTree/TestNetscapePlugIn/Tests/win/DumpWindowRect.cpp: Added.
(DumpWindowRect::DumpWindowRect): Just call up to the base class.
(DumpWindowRect::performWindowGeometryTest): Find our window rect relative to the test
harness window and log it.
* DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePlugin.vcproj: Added DumpWindowRect.
LayoutTests:
Add a test for windowed plugins inside iframes inside scrolled overflow areas
* platform/win/plugins/iframe-inside-overflow-expected.txt: Added.
* platform/win/plugins/iframe-inside-overflow.html: Added.
(loaded): Scrolls the div and tells the plugin to start its test (which will cause its
window rect to be logged).
* platform/win/plugins/resources/dump-window-rect-iframe.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86442
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Fri, 13 May 2011 17:24:02 +0000 (17:24 +0000)]
Move code required for most tests of plugin window geometry into a base class
WebKit2's asynchronous plugin window positioning makes testing window geometry tricky. By
having all the trickiness in a shared base class, writing new window geometry tests will be
much easier.
Fixes <http://webkit.org/b/60776> It's hard to write tests that check plugin window geometry
Reviewed by Anders Carlsson.
* DumpRenderTree/TestNetscapePlugIn/Tests/win/WindowRegionIsSetToClipRect.cpp:
(WindowRegionIsSetToClipRect::WindowRegionIsSetToClipRect): Changed to inherit from the new
WindowGeometryTest base class. Most of the code from this class was moved to the new base
class.
(WindowRegionIsSetToClipRect::performWindowGeometryTest): Renamed from checkWindowRegion.
This is called by the base class when it is safe to check the window's geometry. Note that
the m_didCheckWindowRegion logic was removed completely; it has never been needed and was
just vestigial code from an earlier version of this test.
* DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePlugin.vcproj: Added new
WindowGeometryTest class.
* DumpRenderTree/TestNetscapePlugIn/win/WindowGeometryTest.cpp: Added. Code came from
WindowRegionIsSetToClipRect.
(WindowGeometryTest::finishTest): This is the only change from WindowRegionIsSetToClipRect.
We now call the new virtual performWindowGeometryTest function instead of checkWindowRegion.
Subclasses can implement that function to perform their own tests.
* DumpRenderTree/TestNetscapePlugIn/win/WindowGeometryTest.h: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86441
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
robert@webkit.org [Fri, 13 May 2011 16:58:21 +0000 (16:58 +0000)]
2011-05-02 Robert Hogan <robert@webkit.org>
Reviewed by Eric Seidel.
Make fast/dom/object-embed-plugin-scripting.html compatible with non-Mac ports
https://bugs.webkit.org/show_bug.cgi?id=59930
* fast/dom/resources/articles.m4a: Removed.
* platform/chromium/test_expectations.txt: Unskip object-embed-plugin-scripting.html on Linux
* platform/qt/Skipped: Unskip object-embed-plugin-scripting.html
* plugins/object-embed-plugin-scripting-expected.txt: Renamed from LayoutTests/fast/dom/object-embed-plugin-scripting-expected.txt.
* plugins/object-embed-plugin-scripting.html: Renamed from LayoutTests/fast/dom/object-embed-plugin-scripting.html.
* plugins/resources/apple.gif: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86440
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
brettw@chromium.org [Fri, 13 May 2011 16:56:08 +0000 (16:56 +0000)]
2011-05-13 Brett Wilson <brettw@chromium.org>
Reviewed by Adam Barth.
Don't destroy a null FcPattern when failing to do a FontConfig match.
This crashes, and there's nothing FcDestroy could do with a null
pointer even if it didn't crash.
https://bugs.webkit.org/show_bug.cgi?id=60777
* src/gtk/WebFontInfo.cpp:
(WebKit::WebFontInfo::renderStyleForStrike):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86439
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jocelyn.turcotte@nokia.com [Fri, 13 May 2011 16:55:26 +0000 (16:55 +0000)]
[Qt] Fix build on MSVC.
Reviewed by nobody, build fix.
qobject_cast<> requires the class to be exported on MSVC,
removing it since the code that needs it is commented out for
the same reason.
* tests/qdeclarativewebview/tst_qdeclarativewebview.cpp:
(tst_QDeclarativeWebView::elementAreaAt):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86438
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jocelyn.turcotte@nokia.com [Fri, 13 May 2011 16:54:20 +0000 (16:54 +0000)]
[Qt] Fix build on MSVC by only enabling tst_MIMESniffing on linux.
Reviewed by nobody, build fix.
* tests/tests.pro:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86437
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrobinson@webkit.org [Fri, 13 May 2011 16:00:35 +0000 (16:00 +0000)]
2011-05-13 Martin Robinson <mrobinson@igalia.com>
Reviewed by Eric Seidel.
[GTK] Share the GTK+ key binding code between WebKit1 and WebKit2
https://bugs.webkit.org/show_bug.cgi?id=59765
Move the keybinding code form WebKit1/WebKit2 to this utility class. This code is
almost directly moved from the WebKit layer.
No new tests. This is covered by the editing tests.
* GNUmakefile.list.am:
* platform/gtk/KeyBindingTranslator.cpp: Added.
(WebCore::backspaceCallback):Added.
(WebCore::selectAllCallback):Added.
(WebCore::cutClipboardCallback):Added.
(WebCore::copyClipboardCallback):Added.
(WebCore::pasteClipboardCallback):Added.
(WebCore::toggleOverwriteCallback):Added.
(WebCore::popupMenuCallback):Added.
(WebCore::showHelpCallback):Added.
(WebCore::deleteFromCursorCallback):Added.
(WebCore::moveCursorCallback):Added.
(WebCore::KeyBindingTranslator::KeyBindingTranslator):Added.
(WebCore::KeyBindingTranslator::getEditorCommandsForKeyEvent):Added.
* platform/gtk/KeyBindingTranslator.h: Added.
(WebCore::KeyBindingTranslator::addPendingEditorCommand):Added.
2011-05-13 Martin Robinson <mrobinson@igalia.com>
Reviewed by Eric Seidel.
[GTK] Share the GTK+ key binding code between WebKit1 and WebKit2
https://bugs.webkit.org/show_bug.cgi?id=59765
Use the new KeyBindingTranslator class from WebCore/platform/gtk. With this utility
class we can now share the code with WebKit2.
* WebCoreSupport/EditorClientGtk.cpp:
(WebKit::EditorClient::executePendingEditorCommands): Updated to reflect the fact that
the command vector now contains WTF::string.
(WebKit::EditorClient::handleKeyboardEvent): Use the new helper utility class.
(WebKit::EditorClient::EditorClient):
* WebCoreSupport/EditorClientGtk.h: Remove unnecessary member. Add the utility class.
2011-05-13 Martin Robinson <mrobinson@igalia.com>
Reviewed by Eric Seidel.
[GTK] Share the GTK+ key binding code between WebKit1 and WebKit2
https://bugs.webkit.org/show_bug.cgi?id=59765
Use the new KeyBindingTranslator class from WebCore/platform/gtk. With this utility
class we can now share the code with WebKit2.
* UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::PageClientImpl): No longer need to initialize keybinding code.
(WebKit::PageClientImpl::getEditorCommandsForKeyEvent): Use the new utility class.
* UIProcess/API/gtk/PageClientImpl.h: Remove unnecessary members. Add utility class member.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86436
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
antonm@chromium.org [Fri, 13 May 2011 16:00:09 +0000 (16:00 +0000)]
2011-05-13 Steve VanDeBogart <vandebo@chromium.org>
Unreviewed.
Update expectations for GPU tests that use shadows after fix (Skia rev 1297).
https://bugs.webkit.org/show_bug.cgi?id=60742
* platform/chromium/test_expectations.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86435
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zherczeg@webkit.org [Fri, 13 May 2011 15:26:45 +0000 (15:26 +0000)]
2011-05-13 Zoltan Herczeg <zherczeg@webkit.org>
Reviewed by Csaba Osztrogonác.
Missing 2nd #EOF if WebProcess is killed.
https://bugs.webkit.org/show_bug.cgi?id=60761
If the WebProcess is killed, only one #EOF is yielded
by WebKitTestRunner. However, run-webkit-test wait for
a second #EOF, which signals the finishing of pixel dump.
Since this never happens, run-webkit-test waits forever.
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::dump):
(WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
* WebKitTestRunner/TestInvocation.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86434
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zecke@webkit.org [Fri, 13 May 2011 15:09:20 +0000 (15:09 +0000)]
[android] Forward declare types for PlatformWidget and DragImage
https://bugs.webkit.org/show_bug.cgi?id=59890
This is fixing the compilation of files that include Widget.h or
DragImage.h.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86433
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zecke@webkit.org [Fri, 13 May 2011 15:09:03 +0000 (15:09 +0000)]
[android] OS(ANDROID) does not imply PLATFORM(ANDROID)
https://bugs.webkit.org/show_bug.cgi?id=59888
It is possible to build QtWebKit and others for OS(ANDROID). Let
the buildsystem decide which platform is to be build.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86432
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Fri, 13 May 2011 14:59:36 +0000 (14:59 +0000)]
[Qt] Unreviewed fix after r86357, r86374, r86376. Skip failing tests.
* platform/qt-wk2/Skipped: Add 4 failing tests.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86431
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
podivilov@chromium.org [Fri, 13 May 2011 14:56:24 +0000 (14:56 +0000)]
2011-05-06 Pavel Podivilov <podivilov@chromium.org>
Reviewed by Yury Semikhatsky.
Web Inspector: fix incremental html highlight.
https://bugs.webkit.org/show_bug.cgi?id=60163
SourceTokenizers for html, js, and css are declared to be stateless. However they store some state in
various ways (like using _internalJavaScriptTokenizer field in html tokenizer, or modifying "static"
initialCondition object via condition link). This all worked because of another bug in tokenizers registry
that always returned new tokenizer object.
For incremental highlighting, we need to be able to stringify tokenizers state and then restore the
state from string. That's why we need tokenizers to be truly stateless.
* inspector/front-end/DOMSyntaxHighlighter.js:
(WebInspector.DOMSyntaxHighlighter.prototype.syntaxHighlightNode):
* inspector/front-end/SourceCSSTokenizer.js:
(WebInspector.SourceCSSTokenizer):
(WebInspector.SourceCSSTokenizer.prototype.createInitialCondition):
* inspector/front-end/SourceCSSTokenizer.re2js:
* inspector/front-end/SourceHTMLTokenizer.js:
(WebInspector.SourceHTMLTokenizer):
(WebInspector.SourceHTMLTokenizer.prototype.createInitialCondition):
(WebInspector.SourceHTMLTokenizer.prototype.set line):
(WebInspector.SourceHTMLTokenizer.prototype.get _internalJavaScriptTokenizer):
(WebInspector.SourceHTMLTokenizer.prototype.get _internalCSSTokenizer):
(WebInspector.SourceHTMLTokenizer.prototype.scriptStarted):
(WebInspector.SourceHTMLTokenizer.prototype.styleSheetStarted):
(WebInspector.SourceHTMLTokenizer.prototype.nextToken):
* inspector/front-end/SourceHTMLTokenizer.re2js:
* inspector/front-end/SourceJavaScriptTokenizer.js:
(WebInspector.SourceJavaScriptTokenizer):
(WebInspector.SourceJavaScriptTokenizer.prototype.createInitialCondition):
* inspector/front-end/SourceJavaScriptTokenizer.re2js:
* inspector/front-end/SourceTokenizer.js:
(WebInspector.SourceTokenizer.Registry.prototype.getTokenizer):
* inspector/front-end/TextEditorHighlighter.js:
(WebInspector.TextEditorHighlighter.prototype._highlightLines):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86430
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Fri, 13 May 2011 14:48:21 +0000 (14:48 +0000)]
[NRWT] chromium-linux tests shouldn't run on other platforms
https://bugs.webkit.org/show_bug.cgi?id=60162
Patch by Kristóf Kosztyó <Kosztyo.Kristof@stud.u-szeged.hu> on 2011-05-13
Reviewed by Csaba Osztrogonác.
Remove _tests_for_other_platforms defs because r82753
implemented it properly in the baseclass in webkit.py.
* Scripts/webkitpy/layout_tests/port/gtk.py:
* Scripts/webkitpy/layout_tests/port/qt.py:
* Scripts/webkitpy/layout_tests/port/win.py:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86429
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aroben@apple.com [Fri, 13 May 2011 14:38:00 +0000 (14:38 +0000)]
Build fix after r86418
* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.h:
Made the destructor public so that this class can be used with
[Pass]OwnPtr.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86428
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Fri, 13 May 2011 14:32:57 +0000 (14:32 +0000)]
[Qt] Unreviewed fix after r86357, r86374, r86376. Skip failing tests.
* platform/qt-wk2/Skipped:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86427
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Fri, 13 May 2011 14:00:36 +0000 (14:00 +0000)]
[Qt] Unreviewed fix after r86357, r86374, r86376. Skip failing tests.
* platform/qt-arm/Skipped:
* platform/qt-mac/Skipped:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86426
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hans@chromium.org [Fri, 13 May 2011 13:29:58 +0000 (13:29 +0000)]
2011-05-11 Hans Wennborg <hans@chromium.org>
Reviewed by Tony Gentilcore.
IndexedDB: Fix integer comparison bug in LevelDB coding routines
https://bugs.webkit.org/show_bug.cgi?id=60623
Fix the code for comparing two int64_t variables.
Also remove faulty line in ObjectStoreNamesKey::encode which was
uncovered by the unit test in this patch.
Very hard to cover with layout tests; covered by unit test.
* storage/IDBLevelDBCoding.cpp:
(WebCore::IDBLevelDBCoding::compareInts):
(WebCore::IDBLevelDBCoding::KeyPrefix::compare):
(WebCore::IDBLevelDBCoding::DatabaseFreeListKey::compare):
(WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::compare):
(WebCore::IDBLevelDBCoding::IndexMetaDataKey::compare):
(WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::compare):
(WebCore::IDBLevelDBCoding::IndexFreeListKey::compare):
(WebCore::IDBLevelDBCoding::ObjectStoreNamesKey::encode):
(WebCore::IDBLevelDBCoding::IndexNamesKey::compare):
(WebCore::IDBLevelDBCoding::IndexDataKey::compare):
2011-05-11 Hans Wennborg <hans@chromium.org>
Reviewed by Tony Gentilcore.
IndexedDB: Fix integer comparison bug in LevelDB coding routines
https://bugs.webkit.org/show_bug.cgi?id=60623
Unit test for comparison of encoded keys.
* tests/IDBLevelDBCodingTest.cpp:
(IDBLevelDBCoding::TEST):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86425
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 13 May 2011 12:08:59 +0000 (12:08 +0000)]
2011-05-13 Andrew Wason <rectalogic@rectalogic.com>
Reviewed by Darin Adler.
GraphicsContext3DQt.cpp fails to compile
https://bugs.webkit.org/show_bug.cgi?id=60740
* platform/graphics/qt/GraphicsContext3DQt.cpp:
(WebCore::GraphicsContext3D::GraphicsContext3D):
Change order of initializers.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86424
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
antonm@chromium.org [Fri, 13 May 2011 10:34:14 +0000 (10:34 +0000)]
2011-02-08 Anton Muhin <antonm@chromium.org>
Reviewed by Adam Barth and Alexey Proskuryakov.
Propagate security origin of parent document into HTML documents created with DOMImplementation
https://bugs.webkit.org/show_bug.cgi?id=53611
This restores invariant that JS wrappers residing in the same JS context should come
from the same security origin.
Absence of regressions is covered by the current tests. Different security origin of
DOMImplementation is difficult to check with layout tests as DOMImplementation
resides in the same JS context as parent document and therefore there are no security origin checks.
This is observable however in C++.
* Android.jscbindings.mk:
* CMakeLists.txt:
* WebCore.gypi:
* WebCore.pro:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* bindings/v8/V8GCController.cpp:
(WebCore::NodeGrouperVisitor::visitDOMWrapper):
* dom/DOMImplementation.cpp:
(WebCore::DOMImplementation::DOMImplementation):
(WebCore::DOMImplementation::createDocument):
* dom/DOMImplementation.h:
(WebCore::DOMImplementation::create):
(WebCore::DOMImplementation::documentDestroyed):
(WebCore::DOMImplementation::parentDocument):
* dom/DOMImplementation.idl:
* dom/Document.cpp:
(WebCore::Document::~Document):
(WebCore::Document::implementation):
* dom/Document.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86423
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hans@chromium.org [Fri, 13 May 2011 10:21:02 +0000 (10:21 +0000)]
2011-05-05 Hans Wennborg <hans@chromium.org>
Reviewed by Steve Block.
IndexedDB: Transaction rollback prevented by open SQLite statement
https://bugs.webkit.org/show_bug.cgi?id=60032
Add test for veryfing that transaction roll-back works, even with a
previously opened cursor still around.
* storage/indexeddb/transaction-rollback-expected.txt: Added.
* storage/indexeddb/transaction-rollback.html: Added.
2011-05-05 Hans Wennborg <hans@chromium.org>
Reviewed by Steve Block.
IndexedDB: Transaction rollback prevented by open SQLite statement
https://bugs.webkit.org/show_bug.cgi?id=60032
Let the IDBTransactionbackendImpl keep track of all open cursors, and
"close" them (i.e. finalizing the underlying SQLiteStatement) before
committing or rolling back the transaction. This fixes the problem
with opened cursors preventing transaction rollback.
Test: storage/indexeddb/transaction-rollback.html
* storage/IDBBackingStore.h:
* storage/IDBCursorBackendImpl.cpp:
(WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):
(WebCore::IDBCursorBackendImpl::~IDBCursorBackendImpl):
(WebCore::IDBCursorBackendImpl::close):
* storage/IDBCursorBackendImpl.h:
* storage/IDBLevelDBBackingStore.cpp:
* storage/IDBSQLiteBackingStore.cpp:
* storage/IDBTransactionBackendImpl.cpp:
(WebCore::IDBTransactionBackendImpl::abort):
(WebCore::IDBTransactionBackendImpl::registerOpenCursor):
(WebCore::IDBTransactionBackendImpl::unregisterOpenCursor):
(WebCore::IDBTransactionBackendImpl::commit):
(WebCore::IDBTransactionBackendImpl::closeOpenCursors):
* storage/IDBTransactionBackendImpl.h:
* storage/IDBTransactionBackendInterface.h:
(WebCore::IDBTransactionBackendInterface::registerOpenCursor):
(WebCore::IDBTransactionBackendInterface::unregisterOpenCursor):
2011-05-05 Hans Wennborg <hans@chromium.org>
Reviewed by Steve Block.
IndexedDB: Transaction rollback prevented by open SQLite statement
https://bugs.webkit.org/show_bug.cgi?id=60032
Implement two new methods in IDBTransactionBackendInterface.
* src/IDBTransactionBackendProxy.cpp:
(WebKit::IDBTransactionBackendProxy::registerOpenCursor):
(WebKit::IDBTransactionBackendProxy::unregisterOpenCursor):
* src/IDBTransactionBackendProxy.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86422
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
gyuyoung.kim@samsung.com [Fri, 13 May 2011 09:56:16 +0000 (09:56 +0000)]
2011-05-13 Gyuyoung Kim <gyuyoung.kim@samsung.com>
Reviewed by Kenneth Rohde Christiansen.
[EFL] Move ewk_view_dpi_get() to ewk_util.cpp
https://bugs.webkit.org/show_bug.cgi?id=60753
Move ewk_view_dpi_get() to ewk_util.cpp
* ewk/ewk_private.h:
* ewk/ewk_util.cpp:
(ewk_util_dpi_get):
* ewk/ewk_view.cpp:
(_ewk_view_viewport_attributes_compute):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86421
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sergio@webkit.org [Fri, 13 May 2011 08:39:44 +0000 (08:39 +0000)]
2011-05-13 Sergio Villar Senin <svillar@igalia.com>
Unreviewed, new GTK+ test expectations after r86352.
* platform/gtk/svg/custom/stroke-opacity-update-expected.png: Added.
* platform/gtk/svg/custom/stroke-opacity-update-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86420
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sergio@webkit.org [Fri, 13 May 2011 08:29:29 +0000 (08:29 +0000)]
2011-05-13 Sergio Villar Senin <svillar@igalia.com>
Unreviewed, new GTK+ test expectations.
* platform/gtk/fast/borders/outline-alpha-block-expected.png:
* platform/gtk/fast/borders/outline-alpha-block-expected.txt:
* platform/gtk/fast/borders/outline-alpha-inline-expected.png:
* platform/gtk/fast/borders/outline-alpha-inline-expected.txt:
* platform/gtk/svg/custom/fill-opacity-update-expected.png:
* platform/gtk/svg/custom/fill-opacity-update-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86419
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
paroga@webkit.org [Fri, 13 May 2011 07:37:50 +0000 (07:37 +0000)]
2011-05-13 Patrick Gansterer <paroga@webkit.org>
Reviewed by Adam Barth.
Enable OwnPtr strict mode in MediaPlayer
https://bugs.webkit.org/show_bug.cgi?id=59466
Let the CreateMediaEnginePlayer function return a PassOwnPtr instead of a raw pointer.
Also fix the templete argument of OwnPtr for the m_private member variable.
* platform/graphics/MediaPlayer.cpp:
(WebCore::MediaPlayer::MediaPlayer):
(WebCore::MediaPlayer::loadWithNextMediaEngine):
* platform/graphics/MediaPlayer.h:
* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.h:
* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::create):
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::create):
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
* platform/graphics/mac/MediaPlayerPrivateQTKit.h:
* platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
(WebCore::MediaPlayerPrivateQTKit::create):
* platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
(WebCore::MediaPlayerPrivatePhonon::create):
* platform/graphics/qt/MediaPlayerPrivatePhonon.h:
* platform/graphics/qt/MediaPlayerPrivateQt.cpp:
(WebCore::MediaPlayerPrivateQt::create):
* platform/graphics/qt/MediaPlayerPrivateQt.h:
* platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::create):
* platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
* platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
(WebCore::MediaPlayerPrivate::create):
* platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
* platform/graphics/wince/MediaPlayerPrivateWinCE.h:
2011-05-13 Patrick Gansterer <paroga@webkit.org>
Reviewed by Adam Barth.
Enable OwnPtr strict mode in MediaPlayer
https://bugs.webkit.org/show_bug.cgi?id=59466
Let the CreateMediaEnginePlayer function return a PassOwnPtr instead of a raw pointer.
Also fix the templete argument of OwnPtr for the m_private member variable.
* src/WebMediaPlayerClientImpl.cpp:
(WebKit::WebMediaPlayerClientImpl::create):
* src/WebMediaPlayerClientImpl.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86418
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Fri, 13 May 2011 07:20:02 +0000 (07:20 +0000)]
2011-05-13 Alexey Proskuryakov <ap@apple.com>
Unreviewed test changes.
Web Inspector: Show Error Messages for Application Cache Errors
https://bugs.webkit.org/show_bug.cgi?id=41642
* http/tests/appcache/404-resource-expected.txt:
* http/tests/appcache/manifest-redirect-expected.txt:
* http/tests/appcache/origin-quota-expected.txt:
* http/tests/appcache/resource-redirect-2-expected.txt:
* http/tests/appcache/resource-redirect-expected.txt:
* http/tests/appcache/wrong-content-type-expected.txt:
* http/tests/appcache/wrong-signature-2-expected.txt:
* http/tests/appcache/wrong-signature-expected.txt:
2011-05-13 Alexey Proskuryakov <ap@apple.com>
Reviewed by Pavel Feldman.
Web Inspector: Show Error Messages for Application Cache Errors
https://bugs.webkit.org/show_bug.cgi?id=41642
* loader/appcache/ApplicationCacheGroup.cpp:
(WebCore::ApplicationCacheGroup::didReceiveResponse):
(WebCore::ApplicationCacheGroup::didFail):
(WebCore::ApplicationCacheGroup::didReceiveManifestResponse):
(WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
(WebCore::ApplicationCacheGroup::cacheUpdateFailedDueToOriginQuota):
Added console error logging.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86417
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
psolanki@apple.com [Fri, 13 May 2011 06:23:10 +0000 (06:23 +0000)]
2011-05-12 Pratik Solanki <psolanki@apple.com>
Reviewed by Antti Koivisto.
Part of WebCore should use CFNetwork-based loader on Mac
https://bugs.webkit.org/show_bug.cgi?id=51836
Fixes for warnings and other minor cleanups when we enable USE_CFNETWORK on Mac.
* platform/network/cf/ResourceErrorCF.cpp:
(WebCore::ResourceError::cfStreamError):
* platform/network/cf/ResourceHandleCFNet.cpp:
(WebCore::allowsAnyHTTPSCertificateHosts):
(WebCore::clientCerts):
(WebCore::willSendRequest):
(WebCore::didReceiveResponse):
(WebCore::didReceiveData):
(WebCore::didSendBodyData):
(WebCore::shouldUseCredentialStorageCallback):
(WebCore::didFinishLoading):
(WebCore::didFail):
(WebCore::didReceiveChallenge):
(WebCore::makeFinalRequest):
(WebCore::ResourceHandle::willLoadFromCache):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86416
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
psolanki@apple.com [Fri, 13 May 2011 06:16:01 +0000 (06:16 +0000)]
2011-05-12 Pratik Solanki <psolanki@apple.com>
Reviewed by Antti Koivisto.
Part of WebCore should use CFNetwork-based loader on Mac
https://bugs.webkit.org/show_bug.cgi?id=51836
Implement ResourceHandle::schedule()/unschedule() based on CF for Mac.
* WebCore.exp.in:
* platform/cf/SchedulePair.h:
* platform/mac/SchedulePairMac.mm:
* platform/network/cf/ResourceHandleCFNet.cpp:
(WebCore::ResourceHandle::schedule):
(WebCore::ResourceHandle::unschedule):
2011-05-12 Pratik Solanki <psolanki@apple.com>
Reviewed by Antti Koivisto.
Part of WebCore should use CFNetwork-based loader on Mac
https://bugs.webkit.org/show_bug.cgi?id=51836
Use CFRunLoop when using CFNetwork.
* WebView/WebView.mm:
(-[WebView scheduleInRunLoop:forMode:]):
(-[WebView unscheduleFromRunLoop:forMode:]):
2011-05-12 Pratik Solanki <psolanki@apple.com>
Reviewed by Antti Koivisto.
Part of WebCore should use CFNetwork-based loader on Mac
https://bugs.webkit.org/show_bug.cgi?id=51836
Use CFRunLoop when using CFNetwork.
* WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::platformInitialize):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86415
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
psolanki@apple.com [Fri, 13 May 2011 05:37:59 +0000 (05:37 +0000)]
2011-05-12 Pratik Solanki <psolanki@apple.com>
Reviewed by Antti Koivisto.
Part of WebCore should use CFNetwork-based loader on Mac
https://bugs.webkit.org/show_bug.cgi?id=51836
Implement mac specific Authentication functions when using CFNetwork.
* WebCore.exp.in:
* WebCore.xcodeproj/project.pbxproj:
* platform/network/ResourceHandle.h:
* platform/network/cf/AuthenticationCF.cpp:
(WebCore::AuthenticationChallenge::authenticationClient):
(WebCore::createCF):
(WebCore::core):
* platform/network/cf/AuthenticationCF.h:
* platform/network/cf/AuthenticationChallenge.h:
* platform/network/mac/AuthenticationMac.mm:
(WebCore::core):
(WebCore::mac):
* platform/network/mac/CredentialStorageMac.mm:
2011-05-12 Pratik Solanki <psolanki@apple.com>
Reviewed by Antti Koivisto.
Part of WebCore should use CFNetwork-based loader on Mac
https://bugs.webkit.org/show_bug.cgi?id=51836
Include AuthenticationCF.h header file.
* Misc/WebDownload.mm:
* Plugins/WebBaseNetscapePluginView.mm:
* WebCoreSupport/WebFrameLoaderClient.mm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86414
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 13 May 2011 05:25:47 +0000 (05:25 +0000)]
2011-05-12 Ben Wells <benwells@chromium.org>
Reviewed by Simon Fraser.
RGBA colors in outlines show overpainting at the corners
https://bugs.webkit.org/show_bug.cgi?id=58999
Converted the new tests to be text tests with pixel results
(using dumpAsText(true)).
Updated test_expectations comments to be more helpful and accurate and split
new expectations into two groups for skia / chromium-mac as chromium-mac can be
rebaselined now.
* fast/borders/outline-alpha-block-expected.txt: Added.
* fast/borders/outline-alpha-block.html:
* fast/borders/outline-alpha-inline-expected.txt: Added.
* fast/borders/outline-alpha-inline.html:
* platform/chromium/test_expectations.txt:
* platform/mac/fast/borders/outline-alpha-block-expected.txt: Removed.
* platform/mac/fast/borders/outline-alpha-inline-expected.txt: Removed.
2011-05-12 Ben Wells <benwells@chromium.org>
Reviewed by Simon Fraser.
RGBA colors in outlines show overpainting at the corners
https://bugs.webkit.org/show_bug.cgi?id=58999
Added FIXMEs near temporary $if !USE(SKIA)s, referencing bug 60342.
* rendering/RenderInline.cpp:
(WebCore::RenderInline::paintOutline):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::paintOutline):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86413
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 13 May 2011 04:59:15 +0000 (04:59 +0000)]
2011-05-12 Ryuan Choi <ryuan.choi@samsung.com>
Reviewed by Antonio Gomes.
[EFL] Remove unused option of EWeblauncher
https://bugs.webkit.org/show_bug.cgi?id=60747
Remove sudo-workaround option.
This option is not used and make other option wrong.
* EWebLauncher/main.c:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86412
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
lforschler@apple.com [Fri, 13 May 2011 04:45:43 +0000 (04:45 +0000)]
2011-05-12 Lucas Forschler <lforschler@apple.com>
Reviewed by Stephanie Lewis.
Fix config.json to address missing WK2 builder/tester config.
Fix naming of machines (xserve not macpro)
* BuildSlaveSupport/build.webkit.org-config/config.json:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86411
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abarth@webkit.org [Fri, 13 May 2011 03:13:11 +0000 (03:13 +0000)]
2011-05-12 Adam Barth <abarth@webkit.org>
Reviewed by Eric Seidel.
[Chromium] Add a WebSetting to control DNS prefetch
https://bugs.webkit.org/show_bug.cgi?id=60736
DNS prefetch got disabled in Chrome accidentially in
http://trac.webkit.org/changeset/74041. This patch adds a WebSettings
API so we can enable it again.
* public/WebSettings.h:
* src/WebSettingsImpl.cpp:
(WebKit::WebSettingsImpl::setDNSPrefetchingEnabled):
* src/WebSettingsImpl.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86410
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
weinig@apple.com [Fri, 13 May 2011 02:11:46 +0000 (02:11 +0000)]
2011-05-12 Sam Weinig <sam@webkit.org>
Reviewed by Gavin Barraclough.
WebProcess sandbox denies file:/// accesses after you navigate to a nonexistent file
<rdar://problem/
9427752>
https://bugs.webkit.org/show_bug.cgi?id=60745
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::SandboxExtensionTracker::didStartProvisionalLoad):
Don't attempt to re-use a non-existent committed sandbox extension. This can
happen when the previous load was file: url, but did not require an extension,
such as an error page.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86409
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 13 May 2011 01:52:42 +0000 (01:52 +0000)]
2011-05-12 David Grogan <dgrogan@chromium.org>
Reviewed by Darin Adler.
make layout tests in storage/domstorage/events more deterministic
https://bugs.webkit.org/show_bug.cgi?id=60299
Instead of counting the number of storage events fired between two
setTimeout(0) events, specify the number of events to wait for and wait up to
1 second for them.
* storage/domstorage/events/resources/eventTestHarness.js:
(runAfterNStorageEvents):
(countStorageEvents.onTimeout):
(countStorageEvents):
(testStorages.allDone):
* storage/domstorage/events/script-tests/basic-body-attribute.js:
(step1):
(step2):
(step3):
(step4):
(step5):
* storage/domstorage/events/script-tests/basic-setattribute.js:
(step1):
(step2):
(step3):
(step4):
(step5):
* storage/domstorage/events/script-tests/basic.js:
(test):
(step1):
(step2):
(step3):
(step4):
(step5):
* storage/domstorage/events/script-tests/case-sensitive.js:
(test):
(step1):
(step2):
* storage/domstorage/events/script-tests/documentURI.js:
(test):
(step1):
(step2):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86408
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele@apple.com [Fri, 13 May 2011 01:50:51 +0000 (01:50 +0000)]
Fix for <rdar://problem/
9253454> Solar Walk For Mac: Info window is blank (HTML5 parser)
https://bugs.webkit.org/show_bug.cgi?id=60685
Reviewed by Darin Adler and Adam Barth.
Source/WebCore:
Detect the Solar Walk application so we can add targeted parser quirks.
* WebCore.exp.in:
* platform/RuntimeApplicationChecks.cpp: (WebCore::applicationIsSolarWalk):
* platform/RuntimeApplicationChecks.h:
Source/WebKit:
* WebKit.xcodeproj/project.pbxproj: Added Misc/SolarWalkQuirksUserScript.js and copy it to Resources during the build phase.
Source/WebKit/mac:
Solar Walk uses a self closing title tag, so to match the behavior of the old parser,
we use a UserScript to write the contents of the title element to the end of the document so it can be re-parsed.
* Misc/SolarWalkQuirksUserScript.js: Added.
* WebView/WebView.mm:
(needsSolarWalkQuirksScript):
(leakSolarWalkQuirksUserScriptContents):
(-[WebView _injectSolarWalkQuirksScript]):
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86407
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jpu@apple.com [Fri, 13 May 2011 01:19:03 +0000 (01:19 +0000)]
2011-05-12 Jia Pu <jpu@apple.com>
Reviewed by Darin Adler.
Regression caused by changeset 86281
https://bugs.webkit.org/show_bug.cgi?id=60712
Changed wording in some tests to reflect AppKit UI change.
* manual-tests/autocorrection/delete-to-end-of-word-to-show-reversion.html:
* manual-tests/autocorrection/move-to-end-of-word-to-show-reversion.html:
2011-05-12 Jia Pu <jpu@apple.com>
Reviewed by Darin Adler.
Regression caused by changeset 86281
https://bugs.webkit.org/show_bug.cgi?id=60712
<rdar://problem/
9427970>
Removed the condition variable. [NSSpellChecker dismissCorrectionIndicatorForView:] is blocking.
So handleAcceptedReplacement() triggered by dismissInternal() will return before dismissInternal()
returns. So we don't need to use the condition to coordinate between these two function. In fact,
all callbacks are delivered on main thread. We don't really need any locking here.
Since now we don't have distinction between dismiss() and dismissSoon(). dismissSoon() has
been removed.
* WebCoreSupport/CorrectionPanel.h:
* WebCoreSupport/CorrectionPanel.mm:
(CorrectionPanel::CorrectionPanel):
(CorrectionPanel::show):
(CorrectionPanel::dismiss):
(CorrectionPanel::dismissInternal):
(CorrectionPanel::handleAcceptedReplacement):
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::dismissCorrectionPanelSoon):
2011-05-12 Jia Pu <jpu@apple.com>
Reviewed by Darin Adler.
Regression caused by changeset 86281
https://bugs.webkit.org/show_bug.cgi?id=60712
<rdar://problem/
9427970>
Removed the condition variable. [NSSpellChecker dismissCorrectionIndicatorForView:] is blocking.
So handleAcceptedReplacement() triggered by dismissInternal() will return before dismissInternal()
returns. So we don't need to use the condition to coordinate between these two function. In fact,
all callbacks are delivered on main thread. We don't really need any locking here.
Since now we don't have distinction between dismiss() and dismissSoon(). dismissSoon() has
been removed.
* UIProcess/API/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::dismissCorrectionPanelSoon):
* UIProcess/mac/CorrectionPanel.h:
* UIProcess/mac/CorrectionPanel.mm:
(WebKit::CorrectionPanel::CorrectionPanel):
(WebKit::CorrectionPanel::show):
(WebKit::CorrectionPanel::dismiss):
(WebKit::CorrectionPanel::dismissInternal):
(WebKit::CorrectionPanel::handleAcceptedReplacement):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86406
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dbates@webkit.org [Fri, 13 May 2011 00:25:01 +0000 (00:25 +0000)]
2011-05-12 Daniel Bates <dbates@rim.com>
Attempt to fix the build after changeset 86391<http://trac.webkit.org/changeset/86391>
(https://bugs.webkit.org/show_bug.cgi?id=60681).
* page/PluginHalter.cpp:
(WebCore::PluginHalter::PluginHalter): Substitute m_client for client in ASSERT_ARG since client is now of type PassOwnPtr
so it becomes 0 when assigned to another variable.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@86404
268f45cc-cd09-0410-ab3c-
d52691b4dbfc