diff options
Diffstat (limited to 'WebCore/ChangeLog')
-rw-r--r-- | WebCore/ChangeLog | 5619 |
1 files changed, 5619 insertions, 0 deletions
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog index 85e6aa8..a107c10 100644 --- a/WebCore/ChangeLog +++ b/WebCore/ChangeLog @@ -1,3 +1,5622 @@ +2010-08-18 Andreas Kling <andreas.kling@nokia.com> + + Reviewed by Darin Adler. + + CanvasStyle method naming cleanup + https://bugs.webkit.org/show_bug.cgi?id=44184 + + Renamed the various create() overloads to reflect what they're + constructing the CanvasStyle from. + + The unused CanvasStyle::create(grayLevel) and accompanying constructor + were removed. + + Also renamed the isEquivalentColor overloads to isEquivalent{RGBA,CMYKA} + + * bindings/js/JSCanvasRenderingContext2DCustom.cpp: + (WebCore::toHTMLCanvasStyle): + * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp: + (WebCore::toCanvasStyle): + * html/canvas/CanvasRenderingContext2D.cpp: + (WebCore::CanvasRenderingContext2D::State::State): + (WebCore::CanvasRenderingContext2D::setStrokeColor): + (WebCore::CanvasRenderingContext2D::setFillColor): + * html/canvas/CanvasStyle.cpp: + (WebCore::CanvasStyle::createFromString): + (WebCore::CanvasStyle::createFromStringWithOverrideAlpha): + (WebCore::CanvasStyle::createFromGradient): + (WebCore::CanvasStyle::createFromPattern): + (WebCore::CanvasStyle::isEquivalentRGBA): + (WebCore::CanvasStyle::isEquivalentCMYKA): + * html/canvas/CanvasStyle.h: + (WebCore::CanvasStyle::createFromRGBA): + (WebCore::CanvasStyle::createFromGrayLevelWithAlpha): + (WebCore::CanvasStyle::createFromRGBAChannels): + (WebCore::CanvasStyle::createFromCMYKAChannels): + +2010-08-18 Girish Ramakrishnan <girish@forwardbias.in> + + Reviewed by Kenneth Rohde Christiansen. + + [Qt] Implement Maemo5 local rendering NPAPI extension. See + https://wiki.mozilla.org/Plugins:NokiaMaemoImageSurface for details. + + With the local rendering extension, Flash will paint into a 16-bit surface. + For wmode=transparent, Flash expects the surface to contain the contents + beneath it. As it is tricky to implement the content propagation across all + graphics systems, transparent Flash is not supported. We just fill the surface + with white and wmode=transparent behaves the same as wmode=opaque with a white + background. + + https://bugs.webkit.org/show_bug.cgi?id=44043 + + * WebCore.pro: + * plugins/PluginView.cpp: + (WebCore::PluginView::setValue): + (WebCore::PluginView::PluginView): + * plugins/PluginView.h: + * plugins/qt/PluginViewQt.cpp: + (WebCore::PluginView::updatePluginWidget): + (WebCore::PluginView::paintUsingImageSurfaceExtension): + (WebCore::PluginView::paint): + (WebCore::PluginView::platformGetValueStatic): + +2010-08-18 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r65603. + http://trac.webkit.org/changeset/65603 + https://bugs.webkit.org/show_bug.cgi?id=44179 + + 4 tests crash on Qt bot (Requested by Ossy on #webkit). + + * WebCore.pro: + * page/Geolocation.cpp: + (WebCore::Geolocation::handlePendingPermissionNotifiers): + +2010-08-18 Ryuan Choi <ryuan.choi@samsung.com> + + Unreviewed. Attempted build fix for EFL + + [EFL]REGRESSION(65530) need to fix build break + https://bugs.webkit.org/show_bug.cgi?id=44154 + + * CMakeListsEfl.txt: + +2010-08-18 Ilya Tikhonovsky <loislo@chromium.org> + + Unreviewed qt build fix. + + * WebCore.pri: + +2010-08-17 Ilya Tikhonovsky <loislo@chromium.org> + + Reviewed by Yury Semikhatsky. + + Web Inspector: replace hand written InspectorBackendStub.js with generated one. + New command-line flag was added to combine-javascript-resources. + It specifies the location of generated scripts. + https://bugs.webkit.org/show_bug.cgi?id=43791 + + * GNUmakefile.am: + * WebCore.gyp/WebCore.gyp: + * WebCore.gypi: + * WebCore.pri: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * combine-javascript-resources: + * inspector/CodeGeneratorInspector.pm: + * inspector/front-end/InspectorBackendStub.js: Removed. + * inspector/front-end/WebKit.qrc: + +2010-08-18 Andrey Kosyakov <caseq@chromium.org> + + Reviewed by Pavel Feldman. + + Web Inspector: extension panels do not occupy entire panel client area. + https://bugs.webkit.org/show_bug.cgi?id=44167 + + * inspector/front-end/ExtensionServer.js: + (WebInspector.ExtensionServer.prototype._onCreatePanel): + (WebInspector.ExtensionServer.prototype._createClientIframe): + +2010-08-18 Dirk Schulze <krit@webkit.org> + + Reviewed by Nikolas Zimmermann. + + Use SVGPathParser logic to traverse states of a Path + https://bugs.webkit.org/show_bug.cgi?id=44009 + + Move the getPathSegAtLength logic from SVGPathSegList into a new SVGPathConsumer + class: SVGPathTraversalStateBuilder. + This allows us to get a SVGPathSeg at a given length for SVGPathByteStreams and SVGPathSegLists. + It is also possible to use unaltered SVG path data, instead of just normalized path data. + This is the final preparation to provide normalized and unaltered SVGPathSegLists + on SVGPathElement. + + * Android.mk: + * CMakeLists.txt: + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * svg/SVGAllInOne.cpp: + * svg/SVGPathBuilder.h: + (WebCore::SVGPathBuilder::nextPathSegment): + (WebCore::SVGPathBuilder::quitEarlier): + * svg/SVGPathByteStreamBuilder.h: + (WebCore::SVGPathByteStreamBuilder::nextPathSegment): + (WebCore::SVGPathByteStreamBuilder::quitEarlier): + * svg/SVGPathConsumer.h: + * svg/SVGPathElement.cpp: + (WebCore::SVGPathElement::getPathSegAtLength): + * svg/SVGPathElement.h: + * svg/SVGPathElement.idl: + * svg/SVGPathParser.cpp: + (WebCore::SVGPathParser::parsePathDataFromSource): + * svg/SVGPathParserFactory.cpp: + (WebCore::globalSVGPathTraversalStateBuilder): + (WebCore::SVGPathParserFactory::getSVGPathSegAtLengthFromSVGPathSegList): + * svg/SVGPathParserFactory.h: + * svg/SVGPathSegList.cpp: + * svg/SVGPathSegList.h: + * svg/SVGPathSegListBuilder.h: + (WebCore::SVGPathSegListBuilder::nextPathSegment): + (WebCore::SVGPathSegListBuilder::quitEarlier): + * svg/SVGPathStringBuilder.h: + (WebCore::SVGPathStringBuilder::nextPathSegment): + (WebCore::SVGPathStringBuilder::quitEarlier): + * svg/SVGPathTraversalStateBuilder.cpp: Added. New Consumer for SVGPathParser. + (WebCore::SVGPathTraversalStateBuilder::SVGPathTraversalStateBuilder): + (WebCore::SVGPathTraversalStateBuilder::moveTo): + (WebCore::SVGPathTraversalStateBuilder::lineTo): + (WebCore::SVGPathTraversalStateBuilder::curveToCubic): + (WebCore::SVGPathTraversalStateBuilder::closePath): + (WebCore::SVGPathTraversalStateBuilder::setDesiredLength): + (WebCore::SVGPathTraversalStateBuilder::quitEarlier): + (WebCore::SVGPathTraversalStateBuilder::nextPathSegment): + (WebCore::SVGPathTraversalStateBuilder::pathSegmentIndex): + * svg/SVGPathTraversalStateBuilder.h: Added. + (WebCore::SVGPathTraversalStateBuilder::setCurrentTraversalState): + (WebCore::SVGPathTraversalStateBuilder::cleanup): + (WebCore::SVGPathTraversalStateBuilder::lineToHorizontal): + (WebCore::SVGPathTraversalStateBuilder::lineToVertical): + (WebCore::SVGPathTraversalStateBuilder::curveToCubicSmooth): + (WebCore::SVGPathTraversalStateBuilder::curveToQuadratic): + (WebCore::SVGPathTraversalStateBuilder::curveToQuadraticSmooth): + (WebCore::SVGPathTraversalStateBuilder::arcTo): + +2010-08-18 Mahesh Kulkarni <mahesh.kulkarni@nokia.com> + + Reviewed by Steve Block. + + [Qt] Request for permission before starting Geolocation service + https://bugs.webkit.org/show_bug.cgi?id=42027 + + Handles starting location acquisition when request is granted for ports using + "!CLIENT_BASED_GEOLOCATION and PREEMPT_GEOLOCATION_PERMISSION" policy + Only Qt port as of today uses the above combination. Enable + PREEMPT_GEOLOCATION_PERMISSION for qt port. + + Below tests cover these changes on platform using PREEMPT_GEOLOCATION_PERMISSION + - fast/dom/Geolocation/delayed-permission-allowed.html + - fast/dom/Geolocation/delayed-permission-denied.html + - fast/dom/Geolocation/delayed-permission-allowed-for-multiple-requests.html + - fast/dom/Geolocation/delayed-permission-denied-for-multiple-requests.html + + * WebCore.pro: + * page/Geolocation.cpp: + (WebCore::Geolocation::handlePendingPermissionNotifiers): + +2010-08-18 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r65595. + http://trac.webkit.org/changeset/65595 + https://bugs.webkit.org/show_bug.cgi?id=44161 + + qt build failed (Requested by loislo on #webkit). + + * GNUmakefile.am: + * WebCore.gyp/WebCore.gyp: + * WebCore.gypi: + * WebCore.pri: + * WebCore.pro: + * WebCore.vcproj/copyInspectorFiles.cmd: + * WebCore.xcodeproj/project.pbxproj: + * combine-javascript-resources: + * inspector/CodeGeneratorInspector.pm: + * inspector/front-end/InspectorBackendStub.js: Added. + (WebInspector.InspectorBackendStub): + (WebInspector.InspectorBackendStub.prototype._registerDelegate): + (WebInspector.InspectorBackendStub.prototype.sendMessageToBackend): + * inspector/front-end/InspectorBackendStub.qrc: Removed. + * inspector/front-end/WebKit.qrc: + +2010-08-18 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Yury Semikhatsky. + + Web Inspector: make objectId of string type instead of object. + https://bugs.webkit.org/show_bug.cgi?id=44160 + + * WebCore.xcodeproj/project.pbxproj: + * inspector/front-end/InjectedScript.js: + (injectedScriptConstructor.): + * inspector/front-end/InjectedScriptAccess.js: + (get InjectedScriptAccess.getForObjectId): + * inspector/front-end/RemoteObject.js: + (WebInspector.RemoteObject.prototype.getProperties): + (WebInspector.RemoteObject.prototype.setPropertyValue): + (WebInspector.RemoteObject.prototype.pushNodeToFrontend): + +2010-08-17 Ilya Tikhonovsky <loislo@chromium.org> + + Reviewed by Yury Semikhatsky. + + Web Inspector: replace hand written InspectorBackendStub.js by generated one. + New command-line flag was added to combine-javascript-resources. + It specifies the location of generated scripts. + https://bugs.webkit.org/show_bug.cgi?id=43791 + + * GNUmakefile.am: + * WebCore.gyp/WebCore.gyp: + * WebCore.gypi: + * WebCore.pri: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * combine-javascript-resources: + * inspector/CodeGeneratorInspector.pm: + * inspector/front-end/InspectorBackendStub.js: Removed. + * inspector/front-end/WebKit.qrc: + +2010-08-18 Shinichiro Hamaji <hamaji@chromium.org> + + Reviewed by Dimitri Glazkov. + + Printer font is different from screen font + https://bugs.webkit.org/show_bug.cgi?id=43340 + + Not testable because PNG output in layoutTestController.setPrinting + for chromium isn't implemented yet. + + * platform/graphics/FontDescription.h: Use screen font even for printing on Mac Chromium + (WebCore::FontDescription::setUsePrinterFont): + +2010-08-18 Renata Hodovan <reni@inf.u-szeged.hu> + + Reviewed by Dirk Schulze. + + Fix displaying problem of feTurbulence. + https://bugs.webkit.org/show_bug.cgi?id=44111 + + Change the order of calculating turbulenceFunctionResult + and clamping it. Furthermore remove the unnecessary rounding of m_seed. + Add a new test for checking the change of seed's value. + + Test: svg/W3C-SVG-1.1/filters-turb-02-f.svg + + * svg/graphics/filters/SVGFETurbulence.cpp: + (WebCore::FETurbulence::initPaint): + (WebCore::FETurbulence::calculateTurbulenceValueForPoint): + (WebCore::FETurbulence::apply): + +2010-08-17 Gavin Barraclough <barraclough@apple.com> + + Reviewed by Sam Weinig. + + Bug 44146 - Remove toDouble/toUInt32 methods from UString. + + These methods all implement JavaScript language specific behaviour, and as such + are not suited to being on a generic string object. They are also inefficient + and incorrectly used, refactor & cleanup. Uses of these methods really divide + out into two cases. + + ToNumber: + Uses of toDouble from JSString and from parseFloat are implementing ecma's + ToNumber conversion from strings (see ecma-262 9.3.1), so UString::toDouble + should largely just be moved out to a global jsToNumber function. ToNumber is + capable of recognizing either decimal or hexadecimal numbers, but parseFloat + should only recognize decimal values. This is currently handled by testing for + hexadecimal before calling toDouble, which should unnecessary - instead we can + just split out the two parts to the grammar into separate functions. Also, + strtod recognizes a set of literals (nan, inf, and infinity - all with any + capitalization) - which are not defined by any of the specs we are implementing. + To handle this we need to perform additional work in toDouble to convert the + unsupported cases of infinities back to NaNs. Instead we should simply remove + support for this literals from strtod. This should provide a more desirable + behaviour for all clients of strtod. + + Indexed properties: + Uses of the toStrictUInt32 methods are were all converting property names to + indices, and all uses of toUInt32 were incorrect; in all cases we should have + been calling toUInt32. This error results in some incorrect behaviour in the + DOM (accessing property "0 " of a NodeList should fail; it currently does not). + Move this method onto Identifier (our canonical property name), and make it + always perform a strict conversion. Add a layout test to check NodeList does + convert indexed property names correctly. + + Test: fast/dom/NodeList/nodelist-item-with-index.html + + * WebCore.xcodeproj/project.pbxproj: + * bindings/js/JSDOMWindowCustom.cpp: + (WebCore::JSDOMWindow::getOwnPropertySlot): + (WebCore::JSDOMWindow::getOwnPropertyDescriptor): + * bindings/js/JSHTMLAllCollectionCustom.cpp: + (WebCore::callHTMLAllCollection): + (WebCore::JSHTMLAllCollection::item): + * bindings/js/JSHTMLCollectionCustom.cpp: + (WebCore::callHTMLCollection): + (WebCore::JSHTMLCollection::item): + * bindings/js/JSNodeListCustom.cpp: + (WebCore::callNodeList): + * bindings/scripts/CodeGeneratorJS.pm: + * bridge/runtime_array.cpp: + (JSC::RuntimeArray::getOwnPropertySlot): + (JSC::RuntimeArray::getOwnPropertyDescriptor): + (JSC::RuntimeArray::put): + +2010-08-18 Adam Barth <abarth@webkit.org> + + Reviewed by Adele Peterson. + + Null dereference in DOMSelection::deleteFromDocument + https://bugs.webkit.org/show_bug.cgi?id=44153 + + deleteFromDocument checks selection->isNone() before calling + selection->selection().toNormalizedRange(), but toNormalizedRange() + notes that it needs to updateLayout(), which can make the selection + isNone() again. In that case, we crash on a NULL pointer in + deleteFromDocument. I don't know how to trigger that situation in a + test, but cross_fuzz was able to hit it, so we should fix it. + + * page/DOMSelection.cpp: + (WebCore::DOMSelection::deleteFromDocument): + +2010-08-17 Girish Ramakrishnan <girish@forwardbias.in> + + Reviewed by Antonio Gomes. + + [Qt] On Maemo5, there is no libgdk-x11-2.0.so symlink. Look for + libgdk-x11-2.0.so.0 instead on X11 and Maemo5. + + https://bugs.webkit.org/show_bug.cgi?id=44043 + + * plugins/qt/PluginViewQt.cpp: + (WebCore::getPluginDisplay): + +2010-08-17 Ariya Hidayat <ariya@sencha.com> + + Reviewed by Antonio Gomes. + + [Qt] Remove unused ContextShadowParameter class in GraphicsContextQt + https://bugs.webkit.org/show_bug.cgi?id=44142 + + The class is not needed anymore after r65425. + We know have dedicated ContextShadow in its own file. + + * platform/graphics/qt/GraphicsContextQt.cpp: + +2010-08-17 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> + + Reviewed by Darin Adler. + + Add NetworkingContext to avoid layer violations + https://bugs.webkit.org/show_bug.cgi?id=42292 + + Preparation: Just add the files to the build system. + + * GNUmakefile.am: Added new files. + * WebCore.gypi: Ditto. + * WebCore.pro: Ditto. + * WebCore.vcproj/WebCore.vcproj: Ditto. + * WebCore.xcodeproj/project.pbxproj: Ditto. + + * loader/FrameNetworkingContext.h: Added. + * platform/network/NetworkingContext.h: Added. + Placeholders with tentative code that might be changed when landing + the rest of it. + +2010-08-17 Mihai Parparita <mihaip@chromium.org> + + Reviewed by Darin Fisher. + + Back button after Google search result click broken + https://bugs.webkit.org/show_bug.cgi?id=44086 + + Test: fast/history/redirect-via-iframe.html + + isLoadingInAPISense doesn't quite map to onload (it also returns true + if frames are loading, even after the parent frame has fired its onload + handler). Instead, add a flag for the onload event being fired, and + use that. + + * loader/DocumentLoader.cpp: + (WebCore::DocumentLoader::DocumentLoader): + * loader/DocumentLoader.h: + (WebCore::DocumentLoader::handledOnloadEvents): + (WebCore::DocumentLoader::wasOnloadHandled): + * loader/FrameLoader.cpp: + (WebCore::FrameLoader::handledOnloadEvents): + * loader/RedirectScheduler.cpp: + (WebCore::RedirectScheduler::mustLockBackForwardList): + +2010-08-17 Steve Block <steveblock@google.com> + + Reviewed by Jeremy Orlow. + + Geolocation clearWatch() needs to protect against invalid IDs + https://bugs.webkit.org/show_bug.cgi?id=44096 + + If the ID passed to clearWatch() is invalid, we early-out. + + Test: fast/dom/Geolocation/clear-watch-invalid-id-crash.html + + * page/Geolocation.cpp: + (WebCore::Geolocation::Watchers::set): + (WebCore::Geolocation::Watchers::remove): + (WebCore::Geolocation::watchPosition): + (WebCore::Geolocation::clearWatch): + +2010-08-17 Stephen White <senorblanco@chromium.org> + + Reviewed by David Levin. + + Allow non-Skia ports to compile with ENABLE(ACCELERATED_2D_CANVAS). + https://bugs.webkit.org/show_bug.cgi?id=44130 + + No tests; if it compiles, it's good. + + * html/canvas/CanvasRenderingContext2D.cpp: + (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D): + Fix a warning (treated as error). + * platform/graphics/GraphicsContext.cpp: + (WebCore::GraphicsContext::setGraphicsContext3D): + (WebCore::GraphicsContext::syncSoftwareCanvas): + * platform/graphics/GraphicsContext.h: + Make setGraphicsContext3D() and syncSoftwareCanvas() stubbed out, + but still present in non-Skia ports. This allows Chrome Mac to + compile with ENABLE(ACCELERATED_2D_CANVAS) (although it isn't hooked + up yet, it should at least compile). + +2010-08-17 Brady Eidson <beidson@apple.com> + + Reviewed by Sam Weinig. + + Navigating back/forward during a modal dialog causes a crash when the modal dialog is dismissed. + <rdar://problem/8313579> and https://bugs.webkit.org/show_bug.cgi?id=44131 + + No new tests. (Especially since DRT doesn't spin inner run loops at all, it would be a significant + effort to give it the ability to perform the back/forward navigation in the background to reproduce + this bug) + + Manual tests in place of layout tests: + * manual-tests/back-forward-during-alert-1.html: Added. + * manual-tests/back-forward-during-alert-2.html: Added. + + * page/Page.cpp: + (WebCore::Page::goToItem): + +2010-08-17 Ojan Vafai <ojan@chromium.org> + + Reviewed by Tony Chang. + + selectionStart clobbered if textarea isn't focused + https://bugs.webkit.org/show_bug.cgi?id=43814 + + If a text control is blurred, setting selectionStart/end should use + the cached selection value, which is currently stored on the form + control element. + + Test: fast/forms/text-control-select-blurred.html + + * rendering/RenderTextControl.cpp: + (WebCore::RenderTextControl::setSelectionStart): + (WebCore::RenderTextControl::setSelectionEnd): + +2010-08-17 Dmitry Titov <dimich@chromium.org> + + Reviewed by David Levin. + + MessagePort.close() crashes if the owning context was destroyed. + https://bugs.webkit.org/show_bug.cgi?id=43140 + + Test: fast/events/message-port-context-destroyed.html + + * dom/MessagePort.cpp: + (WebCore::MessagePort::postMessage): + (WebCore::MessagePort::start): + (WebCore::MessagePort::close): + (WebCore::MessagePort::contextDestroyed): + Use isEntangled() method to gate various operations on MessagePort. This method also takes into account m_closed bit. + + * dom/ScriptExecutionContext.cpp: + (WebCore::ScriptExecutionContext::stopActiveDOMObjects): + (WebCore::ScriptExecutionContext::closeMessagePorts): + * dom/ScriptExecutionContext.h: + Add closeMessagePorts() method that closes message ports at the same moments when other ActiveDOMObjects are stopped. + +2010-08-17 Fady Samuel <fsamuel@chromium.org> + + Reviewed by David Hyatt. + + Updated table cell hit testing and painting to use binary search instead of linear scan. + + Improved Table Hit Testing and Painting Performance + https://bugs.webkit.org/show_bug.cgi?id=43933 + + Tests: fast/table/simple_paint.html + tables/hittesting/filltable-emptycells.html + tables/hittesting/filltable-levels.html + tables/hittesting/filltable-outline.html + tables/hittesting/filltable-rtl.html + tables/hittesting/filltable-stress.html + + * rendering/RenderTableSection.cpp: + (WebCore::RenderTableSection::paintObject): Dirty rect determined using binary search. + (WebCore::RenderTableSection::nodeAtPoint): Cell hit determined using binary search + +2010-08-17 Abhishek Arya <inferno@chromium.org> + + Reviewed by Dave Hyatt. + + Only destroy empty anonymous block when it is columns or column span block + in RenderBlock::removeChild. + https://bugs.webkit.org/show_bug.cgi?id=44035 + + Test: fast/block/basic/empty-anonymous-block-remove-crash.html + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::removeChild): + +2010-08-17 Darin Fisher <darin@chromium.org> + + Reviewed by Darin Adler. + + [Chromium] REGRESSION: Incorrect repaint on scrolling with position:fixed elements + https://bugs.webkit.org/show_bug.cgi?id=42949 + + This is a partial revert of http://trac.webkit.org/changeset/63907 + + * page/FrameView.cpp: + (WebCore::FrameView::scrollPositionChangedViaPlatformWidget): + (WebCore::FrameView::scrollPositionChanged): + * platform/ScrollView.cpp: + (WebCore::ScrollView::valueChanged): + +2010-08-17 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r65528. + http://trac.webkit.org/changeset/65528 + https://bugs.webkit.org/show_bug.cgi?id=44123 + + "Broke a bunch of canvas tests on Chrome win/linux." + (Requested by senorblanco on #webkit). + + * platform/graphics/skia/BitmapImageSingleFrameSkia.h: + (WebCore::BitmapImageSingleFrameSkia::BitmapImageSingleFrameSkia): + * platform/graphics/skia/ImageBufferSkia.cpp: + (WebCore::ImageBuffer::drawsUsingCopy): + (WebCore::ImageBuffer::copyImage): + (WebCore::ImageBuffer::draw): + (WebCore::ImageBuffer::drawPattern): + * platform/graphics/skia/ImageSkia.cpp: + (WebCore::BitmapImageSingleFrameSkia::create): + * platform/graphics/skia/NativeImageSkia.cpp: + * platform/graphics/skia/NativeImageSkia.h: + +2010-08-17 Martin Robinson <mrobinson@igalia.com> + + Reviewed by David Hyatt. + + [Cairo] Remove unnecessary full-surface copies from ImageCairo and GraphicsContextCairo + https://bugs.webkit.org/show_bug.cgi?id=44076 + + No new tests as functionality has not changed. + + * GNUmakefile.am: Added GRefPtrCairo to the sources list. + * platform/graphics/cairo/GRefPtrCairo.cpp: Added. + (WTF::refGPtr): Added specializations for cairo_t and cairo_surface_t. + (WTF::derefGPtr): + * platform/graphics/cairo/GRefPtrCairo.h: Added. + * platform/graphics/cairo/GraphicsContextCairo.cpp: + (WebCore::GraphicsContext::createPlatformShadow): Access the image surface directly + from the ImageBuffer instead of wrapping it in an Image. + * platform/graphics/cairo/ImageCairo.cpp: + (WebCore::Image::drawPattern): Create the temporary surface using cairo primitives + instead of through the platform-independent WebCore code. + +2010-08-17 Martin Robinson <mrobinson@igalia.com> + + [GTK] Clean up WebCore/platform/graphics/gtk/ImageGtk.cpp + https://bugs.webkit.org/show_bug.cgi?id=44069 + + No new tests as functionality has not changed. + + * GNUmakefile.am: Add WEBKITGTK_API_VERSION_STRING definition, which + allows WebCore to use this as well. + * platform/graphics/gtk/ImageGtk.cpp: + (getWebKitDataDirectory): Added this helper. + (WebCore::Image::loadPlatformResource): Use GOwnPtr for gchar pointers and + use the new getWebKitDataDirectory helper. + * platform/gtk/GOwnPtrGtk.cpp: Move the GtkIconInfo template specialization to this file. + (WTF::GtkIconInfo): Added this forward declaration. + * platform/gtk/GOwnPtrGtk.h: Declaration for new template specialization. + +2010-08-17 Stephen White <senorblanco@chromium.org> + + Reviewed by Darin Fisher. + + [CHROMIUM] Eliminate a memcpy() from the canvas.drawImage(canvas, ...) path. + This is the Skia followup to Dave Hyatt's patch in r65449. + https://bugs.webkit.org/show_bug.cgi?id=44115 + + Covered by canvas layout tests. + + * platform/graphics/skia/BitmapImageSingleFrameSkia.h: + Add a "copyPixels" argument to the create() static to indicate if + the caller wants the pixels to be copied or ref'ed. + * platform/graphics/skia/ImageBufferSkia.cpp: + (WebCore::ImageBuffer::drawsUsingCopy): + We don't use the always-copy path anymore, so return false. + (WebCore::ImageBuffer::copyImage): + Shouldn't get here anymore, so ASSERT_NOT_REACHED. + (WebCore::ImageBuffer::draw): + (WebCore::ImageBuffer::drawPattern): + Create a temporary BitampImageSingleFrameSkia wrapped around the + canvas's bitmap, and draw with it immediately. If drawing to our own + canvas, copy the pixels, otherwise just shallow copy. + * platform/graphics/skia/ImageSkia.cpp: + (WebCore::BitmapImageSingleFrameSkia::BitmapImageSingleFrameSkia): + Make the constructor take an SkBitmap to be wrapped. + (WebCore::BitmapImageSingleFrameSkia::create): + Implement the "copyPixels" flag: if true, do a deep copy, otherwise + do a shallow copy. + * platform/graphics/skia/NativeImageSkia.cpp: + (WebCore::NativeImageSkia::NativeImageSkia): + * platform/graphics/skia/NativeImageSkia.h: + Implement a new constructor that shallow-copies the given SkBitmap. + +2010-08-17 Jian Li <jianli@chromium.org> + + Reviewed by Darin Fisher. + + Move BlobRegistry interface and implementation to platform/network + https://bugs.webkit.org/show_bug.cgi?id=44116 + + Also move BlobData and BlobStorageData since they're part of BlobRegistry + implementation. + + * Android.mk: + * CMakeLists.txt: + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * platform/network/BlobData.cpp: Renamed from WebCore/platform/BlobData.cpp. + * platform/network/BlobData.h: Renamed from WebCore/platform/BlobData.h. + * platform/network/BlobRegistry.h: Renamed from WebCore/platform/BlobRegistry.h. + * platform/network/BlobRegistryImpl.cpp: Renamed from WebCore/html/BlobRegistryImpl.cpp. + * platform/network/BlobRegistryImpl.h: Renamed from WebCore/html/BlobRegistryImpl.h. + * platform/network/BlobStorageData.h: Renamed from WebCore/html/BlobStorageData.h. + +2010-08-17 Andreas Kling <andreas.kling@nokia.com> + + Reviewed by Ariya Hidayat. + + [Qt] Path: Fast approximation of stroke bounding rects + https://bugs.webkit.org/show_bug.cgi?id=44014 + + In canvas's stroke(), use QPainterPath::controlPointRect() to calculate + a slightly larger bounding rect in a fraction of the time. + + * html/canvas/CanvasRenderingContext2D.cpp: + (WebCore::CanvasRenderingContext2D::stroke): + +2010-08-17 Girish Ramakrishnan <girish@forwardbias.in> + + Reviewed by Kenneth Rohde Christiansen. + Set PluginQuirkRequiresDefaultScreenDepth for all Flash versions and not + just Flash 10. + + https://bugs.webkit.org/show_bug.cgi?id=44043 + + * plugins/PluginPackage.cpp: + (WebCore::PluginPackage::determineQuirks): + +2010-08-17 Jian Li <jianli@chromium.org> + + Reviewed by David Levin. + + Change FileStream implementation to prepare for blob resource handling. + https://bugs.webkit.org/show_bug.cgi?id=43985 + + Change FileStream to support synchronous usage only. All the asychronous + logics are moved to FileStreamProxy. Update the existing FileReader code + to adapt to this change. + + * html/FileReader.cpp: Account for FileStreamProxy changes. + (WebCore::FileReader::didStart): + (WebCore::FileReader::didGetSize): + (WebCore::FileReader::didOpen): + (WebCore::FileReader::didRead): + * html/FileReader.h: + * html/FileStream.cpp: Remove m_client and make all calls synchronous only. + (WebCore::FileStream::FileStream): + (WebCore::FileStream::start): + (WebCore::FileStream::stop): + (WebCore::FileStream::getSize): + (WebCore::FileStream::openForRead): + (WebCore::FileStream::openForWrite): + (WebCore::FileStream::close): + (WebCore::FileStream::read): + (WebCore::FileStream::write): + (WebCore::FileStream::truncate): + * html/FileStream.h: Add getSize() and make all calls synchronous by adding return values. + (WebCore::FileStream::create): + * html/FileStreamClient.h: Account for FileStreamProxy changes. + (WebCore::FileStreamClient::didRead): + (WebCore::FileStreamClient::didTruncate): + (WebCore::FileStreamClient::didOpen): + * html/FileStreamProxy.cpp: All the logics to handle asynchronous calls are wrapped here. + (WebCore::FileStreamProxy::FileStreamProxy): + (WebCore::FileStreamProxy::create): + (WebCore::FileStreamProxy::fileThread): + (WebCore::didStart): + (WebCore::FileStreamProxy::startOnFileThread): + (WebCore::FileStreamProxy::stop): + (WebCore::derefProxyOnContext): + (WebCore::FileStreamProxy::stopOnFileThread): + (WebCore::didGetSize): + (WebCore::FileStreamProxy::getSize): + (WebCore::FileStreamProxy::getSizeOnFileThread): + (WebCore::didOpen): + (WebCore::FileStreamProxy::openForRead): + (WebCore::FileStreamProxy::openForReadOnFileThread): + (WebCore::FileStreamProxy::openForWrite): + (WebCore::FileStreamProxy::openForWriteOnFileThread): + (WebCore::FileStreamProxy::close): + (WebCore::FileStreamProxy::closeOnFileThread): + (WebCore::didRead): + (WebCore::FileStreamProxy::read): + (WebCore::FileStreamProxy::readOnFileThread): + (WebCore::didWrite): + (WebCore::FileStreamProxy::write): + (WebCore::FileStreamProxy::writeOnFileThread): + (WebCore::didTruncate): + (WebCore::FileStreamProxy::truncate): + (WebCore::FileStreamProxy::truncateOnFileThread): + * html/FileStreamProxy.h: + * html/FileThreadTask.h: Change all methods to return void since return value is not needed now. + +2010-08-17 Dimitri Glazkov <dglazkov@chromium.org> + + Returned WebCore.xcodeproj to default settings after http://trac.webkit.org/changeset/65468/trunk/WebCore/WebCore.xcodeproj/project.pbxproj. + + * WebCore.xcodeproj/project.pbxproj: Removed developmentRegion = English line. + +2010-08-17 Dimitri Glazkov <dglazkov@chromium.org> + + Reviewed by Eric Seidel. + + Eliminate extra traversal of the tree when determining ability to lazy-attach a Node. + https://bugs.webkit.org/show_bug.cgi?id=43749 + + Land the actual change that I intended to land in http://trac.webkit.org/changeset/65508. + + Neither SVG nor inputs/counters shadow DOM are traveling down this path (they home-bake their attachment), + so the check for shadow tree existence isn't needed. + Gives a small, but consistent win in Dromaeo's DOM Modification test. + + * dom/Node.h: + (WebCore::Node::canLazyAttach): Changed to always return true. + +2010-08-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> + + Reviewed by Eric Carlson. + + Restore intrinsic size of video elements after loading poster + + The element might already have the instrinsic size of the video, in + which case we don't want to override it witht that of the image. + + * rendering/RenderVideo.cpp: call updateIntrinsicSize() to restore size + +2010-08-17 Mahesh Kulkarni <mahesh.kulkarni@nokia.com> + + Reviewed by Steve Block. + + Geolocation preemptive permissions policy is buggy + https://bugs.webkit.org/show_bug.cgi?id=42811 + + While waiting for permission, m_startRequestPermissionNotifier was + used to consider only one pending request. This patch implements a set + m_pendingForPermissionNotifiers to maintain set of pending requests. + When user grants/denies permission all listeners will be notified. + Also fixed issue with hasZeroTimeout() where startTimerIfNeeded() has + to start irrespective of permission state + + Tests: fast/dom/Geolocation/delayed-permission-allowed-for-multiple-requests.html + fast/dom/Geolocation/delayed-permission-denied-for-multiple-requests.html + + * WebCore.pro: + * page/Geolocation.cpp: + (WebCore::Geolocation::startRequest): + (WebCore::Geolocation::setIsAllowed): + (WebCore::Geolocation::startUpdating): + (WebCore::Geolocation::handlePendingPermissionNotifiers): + * page/Geolocation.h: + +2010-08-11 Jeremy Orlow <jorlow@chromium.org> + + Beginnings of IndexedDB persistance + IDBDatabase.description fleshed out + https://bugs.webkit.org/show_bug.cgi?id=43744 + + The beginnings of a SQLite backend for IndexedDB. Right now, only persists + meta-data for the database. The rest is coming in future patches. Adds + a manual test to verify persistance. + + Test: storage/indexeddb/database-description.html + + a manual test + + * Android.mk: + * CMakeLists.txt: + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * manual-tests/indexed-database.html: Added. + * page/SecurityOrigin.cpp: + (WebCore::SecurityOrigin::databaseIdentifier): + * platform/FileSystem.cpp: Added. + (WebCore::): + (WebCore::shouldEscapeUChar): + (WebCore::encodeForFileName): + * platform/FileSystem.h: + * storage/IDBDatabase.cpp: + (WebCore::IDBDatabase::IDBDatabase): + * storage/IDBDatabase.h: + (WebCore::IDBDatabase::description): + * storage/IDBDatabaseBackendImpl.cpp: + (WebCore::extractMetaData): + (WebCore::setMetaData): + (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl): + (WebCore::IDBDatabaseBackendImpl::setDescription): + * storage/IDBDatabaseBackendImpl.h: + (WebCore::IDBDatabaseBackendImpl::create): + * storage/IDBFactory.h: + * storage/IDBFactory.idl: + * storage/IDBFactoryBackendImpl.cpp: + (WebCore::IDBFactoryBackendImpl::IDBFactoryBackendImpl): + (WebCore::IDBFactoryBackendImpl::~IDBFactoryBackendImpl): + (WebCore::openSQLiteDatabase): + (WebCore::createTables): + (WebCore::IDBFactoryBackendImpl::open): + * storage/IDBFactoryBackendImpl.h: + (WebCore::IDBFactoryBackendImpl::create): + +2010-08-17 Dimitri Glazkov <dglazkov@chromium.org> + + Reviewed by Eric Seidel. + + Eliminate extra traversal of the tree when determining ability to lazy-attach a Node. + https://bugs.webkit.org/show_bug.cgi?id=43749 + + Neither SVG nor inputs/counters shadow DOM are traveling down this path (they home-bake their attachment), + so the check for shadow tree existence isn't needed. + + Gives a small, but consisten win in Dromaeo's DOM Modification test. + + * dom/Node.cpp: Removed canLazyAttach declaration. + * dom/Node.h: + (WebCore::Node::canLazyAttach): Changed to always return true. + +2010-08-17 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Yury Semikhatsky. + + Web Inspector: [CRASH] Console formatting crashes after cross-domain navigation. + https://bugs.webkit.org/show_bug.cgi?id=44103 + + * bindings/js/JSInjectedScriptHostCustom.cpp: + (WebCore::InjectedScriptHost::injectedScriptFor): + * bindings/v8/custom/V8InjectedScriptHostCustom.cpp: + (WebCore::InjectedScriptHost::injectedScriptFor): + * inspector/ConsoleMessage.cpp: + (WebCore::ConsoleMessage::addToFrontend): + +2010-08-17 Yury Semikhatsky <yurys@chromium.org> + + Reviewed by Pavel Feldman. + + Web Inspector: upstream Chromium debugger step tests + https://bugs.webkit.org/show_bug.cgi?id=44106 + + Tests: inspector/debugger-step-in.html + inspector/debugger-step-out.html + inspector/debugger-step-over.html + + * bindings/js/ScriptDebugServer.cpp: + (WebCore::ScriptDebugServer::returnEvent): check that debugger is still attached after continue to ensure + that current call frame is not 0. + +2010-08-17 Ademar de Souza Reis Jr <ademar.reis@openbossa.org> + + Reviewed by David Levin. + + Trivial fix removing the self-inclusion of a couple of header files. + + Self inclusion in Document.h and RenderTheme.h + https://bugs.webkit.org/show_bug.cgi?id=44065 + + * dom/Document.h: + * rendering/RenderTheme.h: + +2010-08-17 No'am Rosenthal <noam.rosenthal@nokia.com> + + Reviewed by Ariya Hidayat. + + [Qt] Move the accelerated compositing build flag to the right place + https://bugs.webkit.org/show_bug.cgi?id=43882 + + No new tests: build fix. + + * WebCore.pro: + +2010-08-17 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r65500. + http://trac.webkit.org/changeset/65500 + https://bugs.webkit.org/show_bug.cgi?id=44108 + + Qt bots failed to compile. (Requested by loislo on #webkit). + + * GNUmakefile.am: + * WebCore.gyp/WebCore.gyp: + * WebCore.gypi: + * WebCore.pri: + * WebCore.pro: + * WebCore.vcproj/copyInspectorFiles.cmd: + * WebCore.xcodeproj/project.pbxproj: + * combine-javascript-resources: + * inspector/CodeGeneratorInspector.pm: + * inspector/front-end/InspectorBackendStub.js: Added. + (WebInspector.InspectorBackendStub): + (WebInspector.InspectorBackendStub.prototype._registerDelegate): + (WebInspector.InspectorBackendStub.prototype.sendMessageToBackend): + * inspector/front-end/InspectorBackendStub.qrc: Removed. + * inspector/front-end/WebKit.qrc: + +2010-08-17 Ilya Tikhonovsky <loislo@chromium.org> + + Reviewed by Yury Semikhatsky. + + Web Inspector: replace hand written InspectorBackendStub.js by generated one. + New command-line flag was added to combine-javascript-resources. + It specifies the location of generated scripts. + https://bugs.webkit.org/show_bug.cgi?id=43791 + + * GNUmakefile.am: + * WebCore.gyp/WebCore.gyp: + * WebCore.gypi: + * WebCore.pri: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * combine-javascript-resources: + * inspector/CodeGeneratorInspector.pm: + * inspector/front-end/InspectorBackendStub.js: Removed. + * inspector/front-end/WebKit.qrc: + +2010-08-17 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Pavel Feldman. + + Web Inspector: get rid of node and scoped object-specific ids. + https://bugs.webkit.org/show_bug.cgi?id=44097 + + * inspector/front-end/ConsoleView.js: + * inspector/front-end/ElementsTreeOutline.js: + (WebInspector.ElementsTreeElement.prototype._createTooltipForNode): + * inspector/front-end/EventListenersSidebarPane.js: + * inspector/front-end/InjectedScript.js: + (injectedScriptConstructor.): + (injectedScriptConstructor): + * inspector/front-end/InjectedScriptAccess.js: + (InjectedScriptAccess): + (InjectedScriptAccess.getForNode): + (InjectedScriptAccess._installHandler.InjectedScriptAccess.prototype.methodName): + (InjectedScriptAccess._installHandler): + * inspector/front-end/PropertiesSidebarPane.js: + (WebInspector.PropertiesSidebarPane.prototype.update): + * inspector/front-end/RemoteObject.js: + (WebInspector.RemoteObjectId): + (WebInspector.RemoteObject.resolveNode): + * inspector/front-end/ScriptsPanel.js: + +2010-08-17 Xan Lopez <xlopez@igalia.com> + + Reviewed by Gustavo Noronha. + + [GTK] Fix wrapping of core Events in the bindings + https://bugs.webkit.org/show_bug.cgi?id=44095 + + Return the proper GObject type instead of hardcoding + WebKitDOMEvent for all Event types. + + * bindings/gobject/GObjectEventListener.cpp: + (WebCore::GObjectEventListener::handleEvent): + * bindings/gobject/WebKitDOMBinding.cpp: + (WebKit::kit): + +2010-08-17 Xan Lopez <xlopez@igalia.com> + + Reviewed by Gustavo Noronha. + + Revert supposed build-fix which was in fact reverting a previous + build fix which was correct (oh dear). + + * GNUmakefile.am: + +2010-08-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> + + Reviewed by Antonio Gomes. + + [Qt] Add media element support for preload=none + + * platform/graphics/qt/MediaPlayerPrivateQt.cpp: + * platform/graphics/qt/MediaPlayerPrivateQt.h: + +2010-08-17 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> + + Reviewed by Antonio Gomes. + + [Qt] Pre-roll media when loading media elements + + This ensures we get correct size-hints from QtMultimedia, as well as + the media states Buffering and Buffered instead of Loading and Loaded, + which we use to transition into MediaPlayer::HaveEnoughData. + + * platform/graphics/qt/MediaPlayerPrivateQt.cpp: + * platform/graphics/qt/MediaPlayerPrivateQt.h: + +2010-08-16 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + [Qt] Fix missing default controls for stand-alone media elements + + https://bugs.webkit.org/show_bug.cgi?id=35427 + + * css/mediaControlsQt.css: + +2010-08-17 Ariya Hidayat <ariya@sencha.com> + + Reviewed by Kenneth Rohde Christiansen. + + [Qt] Reduce the size of the shadow buffer to the clip region + https://bugs.webkit.org/show_bug.cgi?id=44091 + + Instead of allocating the buffer image (for the blur support) as big + as the rectangle which casts the shadow, we limit the size to the + current clip region. + + * platform/graphics/qt/ContextShadow.cpp: + (WebCore::ContextShadow::drawShadowRect): + +2010-08-17 Philippe Normand <pnormand@igalia.com> + + Reviewed by Martin Robinson. + + [GStreamer] media/invalid-media-url-crash.html fails + https://bugs.webkit.org/show_bug.cgi?id=42960 + + Implemented two ResourceHandleClient callbacks that need to notify + downstream GStreamer elements of errors while accessing the + resource. + + * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp: + (StreamingClient::wasBlocked): + (StreamingClient::cannotShowURL): + +2010-08-16 Gavin Barraclough <barraclough@apple.com> + + Rubber stamped by Sam Weinig + + Remove unnecessary includes from UString.h, add new includes as necessary. + + * dom/ScriptExecutionContext.h: + * loader/appcache/ApplicationCache.cpp: + +2010-08-16 Andreas Kling <andreas.kling@nokia.com> + + Reviewed by Darin Adler. + + CSS: Add fast-path for rgba() color parsing + https://bugs.webkit.org/show_bug.cgi?id=42965 + + Test: fast/canvas/rgba-parsing.html + + * css/CSSParser.cpp: + (WebCore::CSSParser::parseColor): Extended with support for rgba(). + (WebCore::parseAlphaValue): Added, parses an alpha value using + WTF::strtod() (if necessary) and clamps between 0 and 1. + (WebCore::isTenthAlpha): + +2010-08-16 Kinuko Yasuda <kinuko@chromium.org> + + Reviewed by Dumitru Daniliuc. + + Add idl and mock classes for FileSystem API's {File,Directory}Entry and related interfaces + https://bugs.webkit.org/show_bug.cgi?id=43993 + + Adding DirectoryEntry, DirectoryReader, EntriesCallback and FileEntry as defined in HTML5 FileSystem API. + http://dev.w3.org/2009/dap/file-system/file-dir-sys.html + + Also adding Makefile entries for idl and mock classes added in changeset 64414 (except for Android platforms). + + Tests will be added when we add underlying implementation. + + * CMakeLists.txt: + * DerivedSources.cpp: + * DerivedSources.make: + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.pri: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * storage/DOMFileSystem.cpp: + (WebCore::DOMFileSystem::root): + * storage/DOMFileSystem.h: + * storage/DOMFileSystem.idl: + * storage/DirectoryEntry.cpp: Added. + * storage/DirectoryEntry.h: Added. + * storage/DirectoryEntry.idl: Added. + * storage/DirectoryReader.cpp: Added. + * storage/DirectoryReader.h: Added. + * storage/DirectoryReader.idl: Added. + * storage/EntriesCallback.h: Added. + * storage/EntriesCallback.idl: Added. + * storage/EntryArray.cpp: Added. + * storage/EntryArray.h: Added. + * storage/EntryArray.idl: Added. + * storage/Entry.cpp: + (WebCore::Entry::Entry): + (WebCore::Entry::getMetadata): + (WebCore::Entry::moveTo): + (WebCore::Entry::copyTo): + (WebCore::Entry::remove): + (WebCore::Entry::getParent): + * storage/Entry.h: + (WebCore::Entry::isFile): + (WebCore::Entry::isDirectory): + * storage/Entry.idl: + * storage/FileEntry.cpp: Added. + * storage/FileEntry.h: Added. + * storage/FileEntry.idl: Added. + +2010-08-16 Andreas Kling <andreas.kling@nokia.com> + + Reviewed by Ariya Hidayat. + + [Qt] Path::closeSubpath() should only close the last subpath if it has >1 point + https://bugs.webkit.org/show_bug.cgi?id=44061 + + Spec link: + http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-closepath + + Test: fast/canvas/canvas-closePath-single-point.html + + * platform/graphics/Path.h: Add a Qt-only member to track the last subpath. + * platform/graphics/qt/PathQt.cpp: + (WebCore::Path::closeSubpath): Only close the last subpath if it + has more than 1 point. Otherwise behave as moveTo(first point in last subpath) + (WebCore::Path::Path): + (WebCore::Path::operator=): + (WebCore::Path::moveTo): + (WebCore::Path::transform): + +2010-08-16 Nate Chapin <japhet@chromium.org> + + Unreviewed, Chromium mac build fix (with help from jamesr). + + * platform/chromium/ScrollbarThemeChromiumMac.mm: + (WebCore::ScrollbarThemeChromiumMac::paint): + +2010-08-16 Gavin Barraclough <barraclough@apple.com> + + Reviewed by Sam Weinig + + Bug 44080 - String find/reverseFind methods need tidying up + These methods have a couple of problems with their interface, and implementation. + + These methods take and int index, and return an int - however this is problematic + since on 64-bit string indices may have a full 32-bit range. This spills out into + surrounding code, which unsafely casts string indices from unsigned to int. Code + checking the result of these methods check for a mix of "== -1", "< 0", and + "== notFound". Clean this up by changing these methods to take an unsigned + starting index, and return a size_t. with a failed match indicated by notFound. + reverseFind also has a special meaning for the starting index argument, in that a + negative index is interpreted as an offset back from the end of the string. Remove + this functionality, in the (1!) case where it is used we should just calculate the + offset by subtracting from the string's length. + + The implementation has a few problems too. The code is not in webkit style, in + using assorted abbreviations in variable names, and implementations of similar + find methods with differing argument types were unnecessarily inconsistent. When + find is passed const char* data the string would be handled as latin1 (zero + extended to UTF-16) for all characters but the first; this is sign extended. + Case-insensitive find is broken for unicode strings; the hashing optimization is + not unicode safe, and could result in false negatives. + + Unify UString find methods to match String. + + * css/CSSSelector.cpp: + (WebCore::CSSSelector::RareData::parseNth): + * css/CSSStyleDeclaration.cpp: + (WebCore::CSSStyleDeclaration::setProperty): + * css/CSSStyleSelector.cpp: + (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): + * dom/Document.cpp: + (WebCore::Document::getImageMap): + * editing/CompositeEditCommand.cpp: + (WebCore::CompositeEditCommand::inputText): + * editing/InsertTextCommand.cpp: + (WebCore::InsertTextCommand::input): + * editing/TextIterator.cpp: + (WebCore::TextIterator::handleTextBox): + * editing/TypingCommand.cpp: + (WebCore::TypingCommand::insertText): + * editing/markup.cpp: + (WebCore::fillContainerFromString): + (WebCore::createFragmentFromText): + * html/File.cpp: + (WebCore::File::Init): + * html/HTMLAnchorElement.cpp: + (WebCore::HTMLAnchorElement::setHost): + * html/HTMLEmbedElement.cpp: + (WebCore::HTMLEmbedElement::parseMappedAttribute): + * html/HTMLFormControlElement.cpp: + (WebCore::HTMLTextFormControlElement::isPlaceholderEmpty): + * html/HTMLObjectElement.cpp: + (WebCore::HTMLObjectElement::parseMappedAttribute): + * inspector/InspectorDOMAgent.cpp: + (WebCore::InspectorDOMAgent::performSearch): + * loader/CrossOriginPreflightResultCache.cpp: + (WebCore::parseAccessControlAllowList): + * loader/MainResourceLoader.cpp: + (WebCore::MainResourceLoader::substituteMIMETypeFromPluginDatabase): + * loader/appcache/ApplicationCacheStorage.cpp: + (WebCore::parseHeader): + (WebCore::parseHeaders): + * loader/icon/IconFetcher.cpp: + (WebCore::parseIconLink): + * page/DOMWindow.cpp: + (WebCore::DOMWindow::parseModalDialogFeatures): + * page/SecurityOrigin.cpp: + (WebCore::SecurityOrigin::createFromDatabaseIdentifier): + * page/UserContentURLPattern.cpp: + (WebCore::UserContentURLPattern::parse): + * page/XSSAuditor.cpp: + (WebCore::XSSAuditor::findInRequest): + * platform/ContentType.cpp: + (WebCore::ContentType::parameter): + (WebCore::ContentType::type): + * platform/KURL.cpp: + (WebCore::KURL::lastPathComponent): + (WebCore::KURL::setProtocol): + (WebCore::decodeURLEscapeSequences): + (WebCore::substituteBackslashes): + (WebCore::mimeTypeFromDataURL): + * platform/Length.cpp: + (WebCore::newCoordsArray): + (WebCore::newLengthArray): + * platform/LinkHash.cpp: + (WebCore::findSlashDotDotSlash): + (WebCore::findSlashSlash): + (WebCore::findSlashDotSlash): + (WebCore::cleanPath): + * platform/MIMETypeRegistry.cpp: + (WebCore::MIMETypeRegistry::getMIMETypeForPath): + * platform/SchemeRegistry.cpp: + (WebCore::SchemeRegistry::shouldTreatURLAsLocal): + * platform/graphics/MediaPlayer.cpp: + (WebCore::MediaPlayer::load): + * platform/mac/DragImageMac.mm: + (WebCore::createDragImageIconForCachedImage): + * platform/network/CredentialStorage.cpp: + (WebCore::protectionSpaceMapKeyFromURL): + (WebCore::findDefaultProtectionSpaceForURL): + * platform/network/HTTPParsers.cpp: + (WebCore::skipWhiteSpace): + (WebCore::skipToken): + (WebCore::parseHTTPRefresh): + (WebCore::filenameFromHTTPContentDisposition): + (WebCore::findCharsetInMediaType): + (WebCore::parseXSSProtectionHeader): + (WebCore::extractReasonPhraseFromHTTPStatusLine): + * platform/network/ResourceResponseBase.cpp: + (WebCore::ResourceResponseBase::isAttachment): + (WebCore::parseCacheHeader): + * rendering/RenderEmbeddedObject.cpp: + (WebCore::RenderEmbeddedObject::updateWidget): + * storage/Entry.cpp: + (WebCore::Entry::Entry): + * svg/SVGFont.cpp: + (WebCore::isCompatibleGlyph): + * svg/SVGURIReference.cpp: + (WebCore::SVGURIReference::getTarget): + * svg/animation/SVGSMILElement.cpp: + (WebCore::SVGSMILElement::parseClockValue): + (WebCore::SVGSMILElement::parseCondition): + * xml/XPathFunctions.cpp: + (WebCore::XPath::FunSubstringBefore::evaluate): + (WebCore::XPath::FunSubstringAfter::evaluate): + (WebCore::XPath::FunTranslate::evaluate): + (WebCore::XPath::FunLang::evaluate): + * xml/XPathParser.cpp: + (WebCore::XPath::Parser::expandQName): + +2010-08-16 Ryosuke Niwa <rniwa@webkit.org> + + Reviewed by Tony Chang. + + REGRESSION(r65208): editing/pasteboard/smart-paste-003.html and smart-paste-004.html crash on Windows Chromium + https://bugs.webkit.org/show_bug.cgi?id=44070 + + The crash was caused by start or end node being removed in pushDownInlineStyleAroundNode. + It made start and end orphaned, and caused s.node() to be detached from the document. + Fixed the crash by using nodes passed to pushDownInlineStyleAroundNode for start and end if the original + start and end are orphaned because pushDownInlineStyleAroundNode won't prune targetNode. + + Test: editing/pasteboard/smart-paste-003-trailing-whitespace.html + + * editing/ApplyStyleCommand.cpp: + (WebCore::ApplyStyleCommand::removeInlineStyle): + +2010-08-16 James Robinson <jamesr@chromium.org> + + Compile fix. Remove ANGLEWebKitBridge classes from Chromium build. They are unused. + + * WebCore.gypi: + +2010-08-16 Vincent Scheib <scheib@chromium.org> + + Reviewed by Dimitri Glazkov. + + Canvas2D does not support images larger than system's GPU max texture size + https://bugs.webkit.org/show_bug.cgi?id=43864 + + A new class "TilingData" has been created that provides logic for + splitting a large image into a series of smaller tiles. + + GLES2Texture and CLES2Canvas are modified to use the TilingData to + split images on texture upload and render one logical image as many smaller + images. + + TilingData is tested via unit tests in WebKit/chromium/tests/TilingDataTest.cpp + + * WebCore.gypi: + * platform/graphics/chromium/GLES2Canvas.cpp: + (WebCore::GLES2Canvas::drawTexturedRect): + (WebCore::GLES2Canvas::drawTexturedRectTile): + * platform/graphics/chromium/GLES2Canvas.h: + * platform/graphics/chromium/GLES2Texture.cpp: + (WebCore::GLES2Texture::GLES2Texture): + (WebCore::GLES2Texture::~GLES2Texture): + (WebCore::GLES2Texture::create): + (WebCore::copySubRect): + (WebCore::GLES2Texture::load): + (WebCore::GLES2Texture::bindTile): + * platform/graphics/chromium/GLES2Texture.h: + (WebCore::GLES2Texture::tiles): + * platform/graphics/chromium/TilingData.cpp: Added. + (WebCore::computeNumTiles): + (WebCore::TilingData::TilingData): + (WebCore::TilingData::tileXIndexFromSrcCoord): + (WebCore::TilingData::tileYIndexFromSrcCoord): + (WebCore::TilingData::tileBounds): + (WebCore::TilingData::tileBoundsWithBorder): + (WebCore::TilingData::tileBoundsNormalized): + (WebCore::TilingData::tilePositionX): + (WebCore::TilingData::tilePositionY): + (WebCore::TilingData::tileSizeX): + (WebCore::TilingData::tileSizeY): + (WebCore::TilingData::overlappedTileIndices): + (WebCore::TilingData::intersectDrawQuad): + * platform/graphics/chromium/TilingData.h: Added. + (WebCore::TilingData::maxTextureSize): + (WebCore::TilingData::totalSizeX): + (WebCore::TilingData::totalSizeY): + (WebCore::TilingData::numTiles): + (WebCore::TilingData::numTilesX): + (WebCore::TilingData::numTilesY): + (WebCore::TilingData::tileIndex): + (WebCore::TilingData::tileXIndex): + (WebCore::TilingData::tileYIndex): + (WebCore::TilingData::TilingData): + (WebCore::TilingData::assertTile): + * platform/graphics/skia/ImageSkia.cpp: + (WebCore::BitmapImage::draw): + * platform/graphics/skia/PlatformContextSkia.cpp: + (WebCore::PlatformContextSkia::uploadSoftwareToHardware): + +2010-08-16 David Hyatt <hyatt@apple.com> + + Reviewed by Anders Carlsson. + + https://bugs.webkit.org/show_bug.cgi?id=43507, stop ImageBuffer from copying its data when rendering after canvas changes happen. + + This patch renames ImageBuffer::image() to ImageBuffer::copyImage(). The new method always returns a new copy that is a current + snapshot of the ImageBuffer. + + To draw an ImageBuffer, you now use new GraphicsContext calls: drawImageBuffer. Platforms can then optimize these calls to draw + efficiently without having to copy the bits of the ImageBuffer into an Image. + + * WebCore.xcodeproj/project.pbxproj: + * css/CSSCanvasValue.cpp: + (WebCore::CSSCanvasValue::image): + * html/HTMLCanvasElement.cpp: + (WebCore::HTMLCanvasElement::willDraw): + (WebCore::HTMLCanvasElement::reset): + (WebCore::HTMLCanvasElement::paint): + (WebCore::HTMLCanvasElement::setSurfaceSize): + (WebCore::HTMLCanvasElement::copiedImage): + (WebCore::HTMLCanvasElement::clearCopiedImage): + * html/HTMLCanvasElement.h: + * html/canvas/CanvasPattern.cpp: + (WebCore::CanvasPattern::CanvasPattern): + * html/canvas/CanvasPattern.h: + (WebCore::CanvasPattern::create): + * html/canvas/CanvasRenderingContext2D.cpp: + (WebCore::CanvasRenderingContext2D::drawImage): + (WebCore::CanvasRenderingContext2D::createPattern): + (WebCore::CanvasRenderingContext2D::drawTextInternal): + * html/canvas/WebGLRenderingContext.cpp: + (WebCore::WebGLRenderingContext::paintRenderingResultsToCanvas): + (WebCore::WebGLRenderingContext::reshape): + (WebCore::WebGLRenderingContext::texImage2D): + (WebCore::WebGLRenderingContext::texSubImage2D): + * html/canvas/WebGLRenderingContext.h: + (WebCore::WebGLRenderingContext::paintsIntoCanvasBuffer): + * platform/graphics/GeneratedImage.cpp: + (WebCore::GeneratedImage::drawPattern): + * platform/graphics/GraphicsContext.cpp: + (WebCore::GraphicsContext::drawImageBuffer): + (WebCore::GraphicsContext::clipToImageBuffer): + * platform/graphics/GraphicsContext.h: + * platform/graphics/GraphicsContext3D.h: + (WebCore::GraphicsContext3D::paintsIntoCanvasBuffer): + * platform/graphics/Image.h: + * platform/graphics/ImageBuffer.h: + (WebCore::ImageBuffer::width): + (WebCore::ImageBuffer::height): + * platform/graphics/Pattern.cpp: + (WebCore::Pattern::Pattern): + * platform/graphics/Pattern.h: + (WebCore::Pattern::create): + * platform/graphics/cairo/GraphicsContextCairo.cpp: + * platform/graphics/cairo/ImageBufferCairo.cpp: + (WebCore::ImageBuffer::drawsUsingCopy): + (WebCore::ImageBuffer::copyImage): + (WebCore::ImageBuffer::clip): + (WebCore::ImageBuffer::draw): + (WebCore::ImageBuffer::drawPattern): + * platform/graphics/cg/GraphicsContextCG.cpp: + * platform/graphics/cg/ImageBufferCG.cpp: + (WebCore::ImageBuffer::ImageBuffer): + (WebCore::ImageBuffer::drawsUsingCopy): + (WebCore::ImageBuffer::copyImage): + (WebCore::ImageBuffer::draw): + (WebCore::ImageBuffer::drawPattern): + (WebCore::ImageBuffer::clip): + * platform/graphics/cg/ImageBufferData.h: + * platform/graphics/filters/FEColorMatrix.cpp: + (WebCore::FEColorMatrix::apply): + * platform/graphics/filters/FEComposite.cpp: + (WebCore::FEComposite::apply): + * platform/graphics/filters/SourceAlpha.cpp: + (WebCore::SourceAlpha::apply): + * platform/graphics/filters/SourceGraphic.cpp: + (WebCore::SourceGraphic::apply): + * platform/graphics/mac/GraphicsContext3DMac.mm: + * platform/graphics/qt/GraphicsContext3DQt.cpp: + * platform/graphics/qt/GraphicsContextQt.cpp: + * platform/graphics/qt/ImageBufferData.h: + * platform/graphics/qt/ImageBufferQt.cpp: + (WebCore::ImageBufferData::ImageBufferData): + (WebCore::ImageBuffer::drawsUsingCopy): + (WebCore::ImageBuffer::copyImage): + (WebCore::ImageBuffer::draw): + (WebCore::ImageBuffer::drawPattern): + (WebCore::ImageBuffer::clip): + * platform/graphics/skia/GraphicsContextSkia.cpp: + * platform/graphics/skia/ImageBufferSkia.cpp: + (WebCore::ImageBuffer::drawsUsingCopy): + (WebCore::ImageBuffer::copyImage): + (WebCore::ImageBuffer::clip): + (WebCore::): + * platform/graphics/wx/GraphicsContextWx.cpp: + * platform/graphics/wx/ImageBufferWx.cpp: + (WebCore::ImageBuffer::drawsUsingCopy): + (WebCore::ImageBuffer::copyImage): + (WebCore::ImageBuffer::clip): + (WebCore::ImageBuffer::draw): + (WebCore::ImageBuffer::drawPattern): + * platform/mac/ScrollbarThemeMac.mm: + (WebCore::ScrollbarThemeMac::paint): + * rendering/RenderBoxModelObject.cpp: + (WebCore::RenderBoxModelObject::paintFillLayerExtended): + * rendering/RenderSVGResourceClipper.cpp: + (WebCore::RenderSVGResourceClipper::applyClippingToContext): + * rendering/RenderSVGResourceFilter.cpp: + (WebCore::RenderSVGResourceFilter::postApplyResource): + * rendering/RenderSVGResourceGradient.cpp: + (WebCore::clipToTextMask): + * rendering/RenderSVGResourceMasker.cpp: + (WebCore::RenderSVGResourceMasker::applyResource): + * rendering/RenderSVGResourcePattern.cpp: + (WebCore::RenderSVGResourcePattern::buildPattern): + * rendering/RenderThemeMac.mm: + (WebCore::RenderThemeMac::paintProgressBar): + * svg/SVGFEImageElement.cpp: + (WebCore::SVGFEImageElement::build): + * svg/graphics/SVGImage.cpp: + (WebCore::SVGImage::nativeImageForCurrentFrame): + * svg/graphics/SVGImage.h: + * svg/graphics/filters/SVGFEMerge.cpp: + (WebCore::FEMerge::apply): + * svg/graphics/filters/SVGFEOffset.cpp: + (WebCore::FEOffset::apply): + * svg/graphics/filters/SVGFETile.cpp: + (WebCore::FETile::apply): + +2010-08-16 Paul Sawaya <psawaya@apple.com> + + Reviewed by Chris Marrin. + + Added shader validation via ANGLE + https://bugs.webkit.org/show_bug.cgi?id=42405 + + Added validation to WebGL via ANGLE + + * Configurations/WebCore.xcconfig: + * WebCore.gypi: + * WebCore.xcodeproj/project.pbxproj: + * platform/graphics/ANGLEWebKitBridge.cpp: Added. + (WebCore::ANGLEWebKitBridge::ANGLEWebKitBridge): + (WebCore::ANGLEWebKitBridge::~ANGLEWebKitBridge): + (WebCore::ANGLEWebKitBridge::validateShaderSource): + * platform/graphics/ANGLEWebKitBridge.h: Added. + (WebCore::): + (WebCore::ANGLEWebKitBridge::setResources): + * platform/graphics/GraphicsContext3D.h: + (WebCore::GraphicsContext3D::): + * platform/graphics/mac/GraphicsContext3DMac.mm: + (WebCore::GraphicsContext3D::GraphicsContext3D): + (WebCore::GraphicsContext3D::compileShader): + (WebCore::GraphicsContext3D::shaderSource): + (WebCore::GraphicsContext3D::getShaderiv): + (WebCore::GraphicsContext3D::getShaderInfoLog): + (WebCore::GraphicsContext3D::getShaderSource): + +2010-08-16 Kevin Ollivier <kevino@theolliviers.com> + + [wx] Build fix, do not build WebCore as a convenience library as this leads to + errors in the Win build w/export symbols and causes problems with DOM bindings + debugging in gdb. + + * wscript: Removed. + +2010-08-16 Ilya Tikhonovsky <loislo@chromium.org> + + Reviewed by Adam Roben. + + Current implementation of WebCore post-build step on windows platform is error prone. + It would be better to extract the script into external file. + https://bugs.webkit.org/show_bug.cgi?id=44058 + + * WebCore.vcproj/WebCore.vcproj: + * WebCore.vcproj/copyForwardingHeaders.cmd: Added. + * WebCore.vcproj/copyInspectorFiles.cmd: Added. + +2010-08-16 Kevin Ollivier <kevino@theolliviers.com> + + [wx] Fix typo in previous build fix. + + * platform/graphics/WOFFFileFormat.cpp: + +2010-08-16 Alex Milowski <alex@milowski.com> + + Reviewed by David Levin. + + Added the configuration of the MathML related files. + + * WebCore.gyp/WebCore.gyp: + * WebCore.gypi: + +2010-08-16 Pavel Feldman <pfeldman@chromium.org> + + Not reviewed: fix Leopard Release inspector tests. + + * inspector/front-end/inspector.js: + +2010-08-16 Marcus Bulach <bulach@chromium.org> + + Reviewed by Jeremy Orlow. + + Implements IDBKeyPath extractor. + https://bugs.webkit.org/show_bug.cgi?id=43276 + + Unit-test IDBKeyPathExtractorTest.cpp. + LayoutTests will arrive as IndexedDB infrastructure is fleshed out. + + * bindings/v8/IDBBindingUtilities.cpp: + (WebCore::getValueFrom): + (WebCore::createIDBKeyFromSerializedValueAndKeyPath): + * bindings/v8/IDBBindingUtilities.h: + +2010-08-13 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> + + Reviewed by Kenneth Rohde Christiansen and Martin Robinson. + + [GTK] GTK+ drawing idle starved + https://bugs.webkit.org/show_bug.cgi?id=43994 + + Tune down the priority of the shared timers to guarantee GTK+ has + an opportunity to redraw. + + * platform/gtk/SharedTimerGtk.cpp: + (WebCore::setSharedTimerFireTime): + +2010-08-16 Leandro Pereira <leandro@profusion.mobi> + + [EFL] Build fix after r65366. + + EFL port does not support automated tests yet. + + * CMakeLists.txt: Use if (VAR) instead of if (${VAR}) to check if + they're empty. + +2010-08-16 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Yury Semikhatsky. + + Web Inspector: Make InjectedScript proto-based. + https://bugs.webkit.org/show_bug.cgi?id=44028 + + * inspector/front-end/InjectedScript.js: + (injectedScriptConstructor): + (injectedScriptConstructor.): + +2010-08-16 Csaba Osztrogonác <ossy@webkit.org> + + Reviewed by Adam Roben. + + Fix warning in WebCore/plugins/win/PluginPackageWin.cpp + https://bugs.webkit.org/show_bug.cgi?id=43920 + + * plugins/win/PluginPackageWin.cpp: + (WebCore::PluginPackage::fetchInfo): + +2010-08-16 Pavel Feldman <pfeldman@chromium.org> + + Not reviewed. Touch inspector file to force frontend deployment. + + * inspector/InspectorController.cpp: + +2010-08-16 Kevin Ollivier <kevino@theolliviers.com> + + [wx] Build fix for non-Win ports on Windows. + + * platform/graphics/WOFFFileFormat.cpp: + +2010-08-16 Adam Langley <agl@chromium.org> + + Reviewed by Tony Chang. + + [chromium] Improve spacing support for complex text on Linux + + https://bugs.webkit.org/show_bug.cgi?id=39014 + + Previously, our complex text support ignored word-spacing, + justification and letter-spacing. This fixes the first two issues and + allows us to render Scribd's HTML5 documents much better. + + Test: fast/text/atsui-spacing-features.html + + * platform/graphics/chromium/FontLinux.cpp: + (WebCore::TextRunWalker::TextRunWalker): + (WebCore::TextRunWalker::setWordSpacingAdjustment): + (WebCore::TextRunWalker::setLetterSpacingAdjustment): + (WebCore::TextRunWalker::setPadding): + (WebCore::TextRunWalker::setGlyphXPositions): + (WebCore::TextRunWalker::isCodepointSpace): + (WebCore::Font::drawComplexText): + (WebCore::Font::floatWidthForComplexText): + (WebCore::Font::offsetForPositionForComplexText): + (WebCore::Font::selectionRectForComplexText): + +2010-08-16 Csaba Osztrogonác <ossy@webkit.org> + + Reviewed by Kenneth Rohde Christiansen. + + Fix warnings: unknown conversion type character 'l' in format + https://bugs.webkit.org/show_bug.cgi?id=43359 + + * loader/icon/IconDatabase.cpp: + (WebCore::IconDatabase::performURLImport): Replace %zu with %lu, because Windows doesn't understand z modifier. + (WebCore::IconDatabase::pruneUnretainedIcons): Use %I64i intsead of %lli on Windows. + * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp: + (WebCore::MediaPlayerPrivate::totalTimeChanged): Use %I64d intsead of %lld on Windows. + * platform/sql/SQLiteDatabase.cpp: + (WebCore::SQLiteDatabase::setMaximumSize): Use %I64i intsead of %lli on Windows. + * storage/DatabaseTracker.cpp: + (WebCore::DatabaseTracker::setQuota): Use %I64u intsead of %llu on Windows. + +2010-08-16 Csaba Osztrogonác <ossy@webkit.org> + + Reviewed by Kenneth Rohde Christiansen. + + Fix warnings: unknown conversion type character 'l' in format + https://bugs.webkit.org/show_bug.cgi?id=43359 + + * loader/FTPDirectoryParser.cpp: Use %I64u format specifier instead of %llu on Windows. + (WebCore::parseOneFTPLine): + +2010-08-16 Ariya Hidayat <ariya@sencha.com> + + Reviewed by Kenneth Rohde Christiansen. + + [Qt] Shadow blur for rectangle fill + https://bugs.webkit.org/show_bug.cgi?id=44025 + + The blur implementation follows the approximation of Gaussian blur + with three successive box blurs, working on the alpha channel only. + (see http://www.w3.org/TR/SVG/filters.html#feGaussianBlur). + + * WebCore.pro: Refer to ContexShadow.* files. + * platform/graphics/qt/ContextShadow.cpp: Added. + (WebCore::ContextShadow::ContextShadow): + (WebCore::ContextShadow::clear): + (WebCore::blurHorizontal): Box blurs in horizontal direction, working + on QImage (in-place). + (WebCore::shadowBlur): Main blur function which just calls the + above blurHorizontal function twice, once with transposed image + (equivalent as it would have done vertical box blurs). + (WebCore::ContextShadow::drawShadowRect): + * platform/graphics/qt/ContextShadow.h: Added. + (WebCore::ContextShadow::): + * platform/graphics/qt/GraphicsContextQt.cpp: + (WebCore::GraphicsContextPlatformPrivate::hasShadow): + (WebCore::GraphicsContext::restorePlatformState): + (WebCore::GraphicsContext::fillRect): Use ContextShadow for the shadow. + (WebCore::GraphicsContext::setPlatformShadow): + +2010-08-16 Andras Becsi <abecsi@webkit.org> + + Rubber-stamped by Gustavo Noronha Silva. + + [GTK] Build fix for MathML code generation. + + No new tests needed. + + * GNUmakefile.am: + +2010-08-16 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r65414. + http://trac.webkit.org/changeset/65414 + https://bugs.webkit.org/show_bug.cgi?id=44055 + + GTL & QT tests failing. (Requested by pfeldman on #webkit). + + * inspector/front-end/InjectedScript.js: + (injectedScriptConstructor): + (injectedScriptConstructor.): + +2010-08-16 Ariya Hidayat <ariya@sencha.com> + + Reviewed by Antonio Gomes. + + [Qt] Save and restore shadow state in GraphicsContextQt + https://bugs.webkit.org/show_bug.cgi?id=44031 + + This is needed after r65362. + Use a new class ContextShadowParameter to track and keep the shadow + state. We use this rather than using GraphicsContextState to allow + possible optimizations (right now only to determine the shadow type, + but in future it might cover things like cached scratch image, + persistent shader, etc). + + * platform/graphics/qt/GraphicsContextQt.cpp: + (WebCore::ContextShadowParameter::): + (WebCore::ContextShadowParameter::ContextShadowParameter): + (WebCore::ContextShadowParameter::clear): + (WebCore::GraphicsContextPlatformPrivate::hasShadow): + (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): + (WebCore::GraphicsContext::savePlatformState): + (WebCore::GraphicsContext::restorePlatformState): + (WebCore::GraphicsContext::drawRect): + (WebCore::GraphicsContext::drawLine): + (WebCore::GraphicsContext::strokeArc): + (WebCore::GraphicsContext::drawConvexPolygon): + (WebCore::GraphicsContext::fillPath): + (WebCore::GraphicsContext::strokePath): + (WebCore::GraphicsContext::fillRect): + (WebCore::GraphicsContext::fillRoundedRect): + (WebCore::GraphicsContext::setPlatformShadow): + (WebCore::GraphicsContext::clearPlatformShadow): + +2010-07-28 Marcus Bulach <bulach@chromium.org> + + Reviewed by Adam Barth. + + Implement IDBKeyPath parser. + https://bugs.webkit.org/show_bug.cgi?id=42976 + + IDBKeyPath is an internal class, exposed only for unit tests for now. + It'll allow indexed database implementation to traverse a given key path and obtain the corresponding properties + from a SerializedScriptValue. + + * WebCore.gypi: + * storage/IDBKeyPath.cpp: Added. + (WebCore::IDBKeyPath::create): + (WebCore::IDBKeyPath::IDBKeyPath): + (WebCore::IDBKeyPath::~IDBKeyPath): + (WebCore::IDBKeyPath::hasNext): + (WebCore::IDBKeyPath::next): + (WebCore::IDBKeyPath::identifier): + (WebCore::IDBKeyPath::hasIndex): + (WebCore::IDBKeyPath::indexValue): + (WebCore::IDBKeyPath::parserError): + (WebCore::IDBKeyPath::parse): + (WebCore::IDBKeyPath::Lexer::lex): + (WebCore::isSafeIdentifierStartCharacter): + (WebCore::isSafeIdentifierCharacter): + (WebCore::IDBKeyPath::Lexer::lexIdentifier): + (WebCore::IDBKeyPath::Lexer::lexNumber): + * storage/IDBKeyPath.h: Added. + (WebCore::IDBKeyPath::Token::Token): + (WebCore::IDBKeyPath::): + (WebCore::IDBKeyPath::Lexer::Lexer): + (WebCore::IDBKeyPath::Lexer::next): + (WebCore::IDBKeyPath::Lexer::currentToken): + +2010-08-13 Steve Block <steveblock@google.com> + + Reviewed by Alexey Proskuryakov. + + Geolocation requests in progress when the frame is disconnected should invoke the error callback + https://bugs.webkit.org/show_bug.cgi?id=43974 + + If requests are ongoing when the Frame is disconnected, we abort them with a fatal error. + To do this, when Geolocation::disconnectFrame() is called we call cancelAllRequests() to + set a fatal error on all ongoing requests. Once the requests have made their error + callbacks, they are deleted. Note that we check at callback time that the script + execution context for the callback is still valid, so it's safe to attempt these + callbacks even after the Geolocation object's Frame has gone. + + This requires a change to allow multiple calls to GeoNotifier::setFatalError(). + For repeated calls, we do not replace the existing error. This ensures that when + permission has been denied and the frame is then disconnected, the error callback + reports the permission error, as required by the spec. + + Tests: fast/dom/Geolocation/disconnected-frame.html + fast/dom/Geolocation/disconnected-frame-permission-denied.html + + * page/Geolocation.cpp: + (WebCore::Geolocation::GeoNotifier::setFatalError): + (WebCore::Geolocation::disconnectFrame): + (WebCore::Geolocation::startRequest): + (WebCore::Geolocation::cancelAllRequests): + * page/Geolocation.h: + +2010-08-16 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Joseph Pecoraro. + + Web Inspector: upstream frontend-side WebSocket transport. + https://bugs.webkit.org/show_bug.cgi?id=43970 + + Chromium already has an alternate WebSocket-based communication channel with + the backend. Upstreaming it in this change. We will agree on the URI + of the remote service as the protocol matures. + + * inspector/front-end/inspector.js: + (.WebInspector.socket.onmessage): + (.WebInspector.socket.onerror): + (.WebInspector.socket.onopen): + (WebInspector.loaded): + (WebInspector.doLoadedDone): + (WebInspector_syncDispatch): + +2010-08-16 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Yury Semikhatsky. + + Web Inspector: Make InjectedScript proto-based. + https://bugs.webkit.org/show_bug.cgi?id=44028 + + * inspector/front-end/InjectedScript.js: + (injectedScriptConstructor): + (injectedScriptConstructor.): + * inspector/front-end/inspector.js: + (WebInspector.loaded): + +2010-08-16 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Joseph Pecoraro. + + Web Inspector: [REGRESSION] console's clear command does not work. + https://bugs.webkit.org/show_bug.cgi?id=44027 + + Test: inspector/console-command-clear.html + + * inspector/Inspector.idl: + * inspector/InspectorBackend.cpp: + * inspector/InspectorBackend.h: + * inspector/InspectorController.cpp: + (WebCore::InspectorController::clearConsoleMessages): + * inspector/front-end/ConsoleView.js: + (WebInspector.ConsoleView.prototype.requestClearMessages): + * inspector/front-end/inspector.js: + (WebInspector.consoleMessagesCleared): + +2010-08-16 Jeremy Orlow <jorlow@chromium.org> + + Ugh, the #if ENABLE() was supposed to be added to Settings not GroupSettings. + + * page/GroupSettings.cpp: + (WebCore::GroupSettings::GroupSettings): + (WebCore::GroupSettings::setLocalStorageQuotaBytes): + * page/GroupSettings.h: + * page/Settings.cpp: + (WebCore::Settings::Settings): + * page/Settings.h: + +2010-08-16 Jeremy Orlow <jorlow@chromium.org> + + Last build fix? + + * page/PageGroup.cpp: + (WebCore::PageGroup::PageGroup): + +2010-08-16 Jeremy Orlow <jorlow@chromium.org> + + Ugh...another build fix. + + * page/GroupSettings.cpp: + (WebCore::GroupSettings::GroupSettings): + * page/GroupSettings.h: + +2010-08-16 Jeremy Orlow <jorlow@chromium.org> + + Build fix. + + * GNUmakefile.am: + +2010-08-16 Jeremy Orlow <jorlow@chromium.org> + + Build fix. + + * page/PageGroup.cpp: + (WebCore::PageGroup::localStorage): + +2010-08-13 Jeremy Orlow <jorlow@chromium.org> + + Some settings are linked to the PageGroup not the Page. Create a new class for those. + https://bugs.webkit.org/show_bug.cgi?id=43794 + + Since persistient storage is shared between pages, there's no way to modify + some settings related to it on a per page basis. As such, it's not technically + correct for these settings to be on the Page's settings. Create a new class + called GroupSettings, move group-wide local storage setting there (the other we + can't), and add a new setting for IndexedDB's path (which is prompting this change). + + No behavior has changed, so no tests. + + * Android.mk: + * CMakeLists.txt: + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * page/GroupSettings.cpp: Added. + (WebCore::GroupSettings::GroupSettings): + (WebCore::GroupSettings::setLocalStorageQuotaBytes): + (WebCore::GroupSettings::setLocalStorageDatabasePath): + (WebCore::GroupSettings::setIndexedDBDatabasePath): + * page/GroupSettings.h: Added. + (WebCore::GroupSettings::create): + (WebCore::GroupSettings::localStorageQuotaBytes): + (WebCore::GroupSettings::localStorageDatabasePath): + (WebCore::GroupSettings::indexedDBDatabasePath): + * page/PageGroup.cpp: + (WebCore::PageGroup::PageGroup): + (WebCore::PageGroup::localStorage): + * page/PageGroup.h: + (WebCore::PageGroup::groupSettings): + * page/Settings.cpp: + (WebCore::Settings::Settings): + (WebCore::Settings::setSessionStorageQuota): + * page/Settings.h: + +2010-08-16 Adam Barth <abarth@webkit.org> + + Reviewed by Alexey Proskuryakov. + + HTML5 fragment parsing doesn't load iframes + https://bugs.webkit.org/show_bug.cgi?id=44038 + + Previously, this code assumed that every source iframe was actually + attached to a render tree. It tried to "keep the iframe alive" as it + moved documents. However, if the iframe wasn't attached to begin with, + it was never "alive," so trying to keep a dead iframe alive lead to a + ... zombie iframe. + + Test: fast/frames/adopt-from-created-document.html + + * dom/Document.cpp: + (WebCore::Document::adoptNode): + +2010-08-13 MORITA Hajime <morrita@google.com> + + Reviewed by Tony Chang. + + https://bugs.webkit.org/show_bug.cgi?id=43778 + Dropping should fire textInput event + + This change: + - added TextEvent::m_isDrop to distinguish drop-initiated events. + - added to dispatch TextEvent from DragController before making a side effect + and cancel the side effect if the event prevents default + + Tests: editing/pasteboard/drop-text-events-sideeffect.html + editing/pasteboard/drop-text-events.html + + * dom/TextEvent.cpp: + (WebCore::TextEvent::createForDrop): Added. + (WebCore::TextEvent::TextEvent): + * dom/TextEvent.h: + (WebCore::TextEvent::isDrop): Added. + * editing/Editor.cpp: + (WebCore::Editor::handleTextEvent): + (WebCore::Editor::findEventTargetFrom): Extracted from findEventTargetFromSelection(). + (WebCore::Editor::findEventTargetFromSelection): + * editing/Editor.h: + * page/DragController.cpp: + (WebCore::DragController::dispatchTextInputEventFor): Added. + (WebCore::DragController::concludeEditDrag): Added an event dispatch path. + * page/DragController.h: + +2010-08-15 Ariya Hidayat <ariya@sencha.com> + + Unreviewed, rolling out r65393. + http://trac.webkit.org/changeset/65393 + https://bugs.webkit.org/show_bug.cgi?id=44031 + + Breaks some canvas tests. + + * platform/graphics/qt/GraphicsContextQt.cpp: + (WebCore::GraphicsContextPlatformPrivate::): + (WebCore::GraphicsContextPlatformPrivate::hasShadow): + (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): + (WebCore::GraphicsContext::savePlatformState): + (WebCore::GraphicsContext::restorePlatformState): + (WebCore::GraphicsContext::strokeArc): + (WebCore::GraphicsContext::drawConvexPolygon): + (WebCore::GraphicsContext::fillPath): + (WebCore::GraphicsContext::strokePath): + (WebCore::GraphicsContext::fillRect): + (WebCore::GraphicsContext::fillRoundedRect): + (WebCore::GraphicsContext::setPlatformShadow): + (WebCore::GraphicsContext::clearPlatformShadow): + +2010-08-15 Ariya Hidayat <ariya@sencha.com> + + Reviewed by Antonio Gomes. + + [Qt] Save and restore shadow state in GraphicsContextQt + https://bugs.webkit.org/show_bug.cgi?id=44031 + + This is needed after r65362. + Use a new class ContextShadowParameter to track and keep the shadow + state. We use this rather than using GraphicsContextState to allow + possible optimizations (right now only to determine the shadow type, + but in future it might cover things like cached scratch image, + persistent shader, etc). + + * platform/graphics/qt/GraphicsContextQt.cpp: + (WebCore::ContextShadowParameter::): + (WebCore::ContextShadowParameter::ContextShadowParameter): + (WebCore::ContextShadowParameter::clear): + (WebCore::GraphicsContextPlatformPrivate::hasShadow): + (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): + (WebCore::GraphicsContext::savePlatformState): + (WebCore::GraphicsContext::restorePlatformState): + (WebCore::GraphicsContext::drawRect): + (WebCore::GraphicsContext::drawLine): + (WebCore::GraphicsContext::strokeArc): + (WebCore::GraphicsContext::drawConvexPolygon): + (WebCore::GraphicsContext::fillPath): + (WebCore::GraphicsContext::strokePath): + (WebCore::GraphicsContext::fillRect): + (WebCore::GraphicsContext::fillRoundedRect): + (WebCore::GraphicsContext::setPlatformShadow): + (WebCore::GraphicsContext::clearPlatformShadow): + +2010-08-15 Ariya Hidayat <ariya@sencha.com> + + Reviewed by Antonio Gomes. + + [Qt] Border should not cast shadows + https://bugs.webkit.org/show_bug.cgi?id=44015 + + Shadows should be not casted except for brush fill (which is not what + drawLine and drawRect are supposed to do). + + * platform/graphics/qt/GraphicsContextQt.cpp: + (WebCore::GraphicsContext::drawRect): Remove shadow painting, + (WebCore::GraphicsContext::drawLine): ditto. + +2010-08-15 Ryuan Choi <ryuan.choi@samsung.com> + + Reviewed by Antonio Gomes. + + [EFL] Build error on r65378 + https://bugs.webkit.org/show_bug.cgi?id=44019 + + Change build script for HTMLEntityNames.json instead of HTMLEntityNames.gperf + + * CMakeLists.txt: + +2010-08-15 Kevin Ollivier <kevino@theolliviers.com> + + [wx] Build fix, add missing header. + + * platform/graphics/WOFFFileFormat.cpp: + +2010-08-15 Kevin Ollivier <kevino@theolliviers.com> + + [wx] Build fix, don't build PluginDataNone.cpp even on GTK as PluginDataWx.cpp compiles. + + * wscript: + +2010-08-15 Adam Barth <abarth@webkit.org> + + Reviewed by Eric Seidel. + + document.write() doesn't flush plain text + https://bugs.webkit.org/show_bug.cgi?id=8961 + + Originally I thought we should buffer the character tokens until we've + reached the end of the input stream, but that's not how the spec + handles things (it emits the character tokens one-by-one). + + Tests: fast/tokenizer/flush-characters-in-document-write-evil.html + fast/tokenizer/flush-characters-in-document-write.html + + * html/HTMLTokenizer.cpp: + (WebCore::HTMLTokenizer::emitEndOfFile): + (WebCore::HTMLTokenizer::nextToken): + (WebCore::HTMLTokenizer::haveBufferedCharacterToken): + - Renamed this function now that it's simplier. + * html/HTMLTokenizer.h: + +2010-08-15 Adam Barth <abarth@webkit.org> + + Reviewed by Eric Seidel. + + Don't try to replace a non-existent document after executing JavaScript URLs + https://bugs.webkit.org/show_bug.cgi?id=44024 + + Synchronous JavaScript execution is evil. Previously, the frame was + deleted after executing the JavaScript URL, so we'd get confused when + we tried to replace its document. + + Test: fast/frames/javascript-url-for-deleted-frame.html + + * bindings/ScriptControllerBase.cpp: + (WebCore::ScriptController::executeIfJavaScriptURL): + +2010-08-14 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r65374. + http://trac.webkit.org/changeset/65374 + https://bugs.webkit.org/show_bug.cgi?id=44018 + + broke a myriad of svg tests (Requested by kling on #webkit). + + * platform/graphics/qt/PathQt.cpp: + (WebCore::Path::strokeBoundingRect): + +2010-08-14 Eric Seidel <eric@webkit.org> + + Reviewed by Adam Barth. + + XSLTProcessor.transformToFragment should not pass contextElement to html/xml document parsers + https://bugs.webkit.org/show_bug.cgi?id=44017 + + This fixes two tests which otherwise would fail when the + HTML5 TreeBuilder is enabled for fragment parsing. + + This revealed a bug in HTMLTreeBuilder() which I fixed as well. + + * html/HTMLTreeBuilder.cpp: + (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): + * xml/XSLTProcessor.cpp: + (WebCore::createFragmentFromSource): + +2010-08-14 Andreas Kling <andreas.kling@nokia.com> + + Reviewed by Ariya Hidayat. + + [Qt] Path: Fast approximation of stroke bounding rects + https://bugs.webkit.org/show_bug.cgi?id=44014 + + * platform/graphics/qt/PathQt.cpp: + (WebCore::Path::strokeBoundingRect): Use QPainterPath::controlPointRect() + to calculate a slightly larger bounding rect in a fraction of the time. + +2010-08-14 Eric Seidel <eric@webkit.org> + + Reviewed by Adam Barth. + + Move innerHTML off of Range::createContextualFragment + https://bugs.webkit.org/show_bug.cgi?id=44011 + + This makes all the editing tests stop failing under the + HTML5 TreeBuilder. + + In a previous patch Adam disabled some of the (wrong) code + in createContextualFragment when in html5 treebuilder mode. + The problem is that the editing code depends on + createContextualFragment (as well as the Range DOM API), + so we have to leave this code in until we can figure + out if it's right or wrong behavior for the Range API. + + This patch moves innerHTML/outerHTML off of using + createContextualFragment and instead calls + DocumentFragment::parseHTML directly (which is much simpler). + + I expect Adam and I will end up turning on the HTML5 TreeBuilder + in the next couple days, and most of the if branches I added + here will go away for good. + + I renamed Element::createContextualFragment to + deprecatedCreateContextualFragment, to indicate that it's a + dead API. The editing code should move off of it and consider + using DocumentFragment::parseHTML instead. + + * dom/Element.cpp: + (WebCore::Element::deprecatedCreateContextualFragment): + * dom/Element.h: + * dom/Range.cpp: + (WebCore::Range::createContextualFragment): + * editing/markup.cpp: + (WebCore::createFragmentFromMarkup): + * html/HTMLElement.cpp: + (WebCore::useLegacyTreeBuilder): + (WebCore::HTMLElement::deprecatedCreateContextualFragment): + (WebCore::HTMLElement::setInnerHTML): + (WebCore::HTMLElement::setOuterHTML): + * html/HTMLElement.h: + +2010-08-14 Tasuku Suzuki <tasuku.suzuki@nokia.com> + + Reviewed by Antonio Gomes. + + [Qt] Fix compilation with QT_NO_LINEEDIT + https://bugs.webkit.org/show_bug.cgi?id=38324 + + * bridge/qt/qt_runtime.cpp: + (JSC::Bindings::convertValueToQVariant): + (JSC::Bindings::convertQVariantToValue): + +2010-08-14 Rob Buis <rwlbuis@gmail.com> + + Reviewed by Dirk Schulze. + + IE SVG empty path test fails + https://bugs.webkit.org/show_bug.cgi?id=44008 + + Change createLine to allow creating zero-length lines. This makes it possible + to have markers and line-caps applied to zero-length lines. + + Test: svg/custom/marker-empty-path.svg + + * platform/graphics/Path.cpp: + (WebCore::Path::createLine): + +2010-08-14 Patrick Gansterer <paroga@paroga.com> + + Reviewed by Kenneth Rohde Christiansen. + + [CMake] Move SQL files into a IF (ENABLE_DATABASE) section + https://bugs.webkit.org/show_bug.cgi?id=43979 + + * CMakeLists.txt: + +2010-08-14 Matthew Delaney <mdelaney@apple.com> + + Reviewed by Kenneth Rohde Christiansen. + + Canvas is not reset when setting canvas.width + https://bugs.webkit.org/show_bug.cgi?id=43341 + + * html/HTMLCanvasElement.cpp: + (WebCore::HTMLCanvasElement::reset): Moved the call to + hasCreatedImageBuffer up *before* the call to setSurface since setSurface + sets hasCreatedImageBuffer to false every time. + +2010-08-14 Patrick Gansterer <paroga@paroga.com> + + Reviewed by Kenneth Rohde Christiansen. + + [CMake] Set target properties only if available + https://bugs.webkit.org/show_bug.cgi?id=43978 + + * CMakeLists.txt: + +2010-08-14 Dirk Schulze <krit@webkit.org> + + Unreviewed sort of Xcode project file. + + * WebCore.xcodeproj/project.pbxproj: + +2010-08-14 Ariya Hidayat <ariya@sencha.com> + + Reviewed by Simon Hausmann and Kenneth Rohde Christiansen. + + [Qt] Refactor shadow state handling in GraphicsContextQt + https://bugs.webkit.org/show_bug.cgi?id=44006 + + * platform/graphics/qt/GraphicsContextQt.cpp: + (WebCore::GraphicsContextPlatformPrivate::): Added shadow states as + member variables. + (WebCore::GraphicsContextPlatformPrivate::hasShadow): Convenient + function to check whether there is shadow or not. + (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): + (WebCore::GraphicsContext::drawRect): Use shadow states instead of + calling getShadow. + (WebCore::GraphicsContext::drawLine): ditto. + (WebCore::GraphicsContext::strokeArc): ditto. + (WebCore::GraphicsContext::drawConvexPolygon): ditto. + (WebCore::GraphicsContext::fillPath): ditto. + (WebCore::GraphicsContext::strokePath): ditto. + (WebCore::GraphicsContext::fillRect): Removes the use of helper function + drawBorderlessRectShadow as the code already becomes a lot simpler. + (WebCore::GraphicsContext::fillRoundedRect): Removes the use of helper + function drawFilledShadowPath as the code already becomes a lot simpler. + (WebCore::GraphicsContext::setPlatformShadow): Store shadow states + and find out the shadow type (complexity) for future use. + (WebCore::GraphicsContext::clearPlatformShadow): Reset shadow states. + +2010-08-13 Adam Barth <abarth@webkit.org> + + Reviewed by Eric Seidel. + + Rename some concepts in HTML entity search to be more self-documenting + https://bugs.webkit.org/show_bug.cgi?id=44004 + + Start and end are now first and last, which lets us use some better + names for the statics in HTMLEntityTable. + + * html/HTMLEntityParser.cpp: + (WebCore::consumeHTMLEntity): + * html/HTMLEntitySearch.cpp: + (WebCore::HTMLEntitySearch::HTMLEntitySearch): + (WebCore::HTMLEntitySearch::findFirst): + (WebCore::HTMLEntitySearch::findLast): + (WebCore::HTMLEntitySearch::advance): + * html/HTMLEntitySearch.h: + (WebCore::HTMLEntitySearch::isEntityPrefix): + (WebCore::HTMLEntitySearch::mostRecentMatch): + (WebCore::HTMLEntitySearch::fail): + * html/HTMLEntityTable.h: + +2010-08-13 Adam Barth <abarth@webkit.org> + + Fix ASSERT in XML entity parsing. You can't advance the entity search + if you've already discovered that your string is not an entity. + + * html/HTMLEntityParser.cpp: + (WebCore::decodeNamedEntity): + +2010-08-13 Eric Seidel <eric@webkit.org> + + Unreviewed. Attempt at fixing Chromium build. + + Add support for MathML entities + https://bugs.webkit.org/show_bug.cgi?id=43949 + + * WebCore.gyp/WebCore.gyp: + - I have no clue if this is right or not. + +2010-08-13 Eric Seidel <eric@webkit.org> + + Unreviewed. Attempted build fix for Windows. + + Add support for MathML entities + https://bugs.webkit.org/show_bug.cgi?id=43949 + + * DerivedSources.cpp: + - Add HTMLEntityTable.cpp + +2010-08-09 Adam Barth <abarth@webkit.org> + + Reviewed by Eric Seidel. + + Add support for MathML entities + https://bugs.webkit.org/show_bug.cgi?id=43949 + + Implementing the HTML5 entity parsing algorithm require refactoring how + we search for entity names. Instead of using a perfect hash, we now + use a sorted list. As we advance through the input, we walk down a + binary search of the table looking for an entity. + + Using this data structure lets us keep track of whether the current + string is a prefix of an existing entity, which we need for the + algorithm. In a future patch, I plan to add some indices to the + table, which should let us narrow down the range of interesting entries + more quickly. + + The one nasty piece of the algorithm is if we walk too far down the + input and we need to back up to a previous match. In this patch, we + accomplish this by rewinding the input and consuming a known number of + characters to resync the source. + + * WebCore.xcodeproj/project.pbxproj: + * html/HTMLEntityParser.cpp: + (WebCore::consumeHTMLEntity): + * html/HTMLEntitySearch.cpp: Added. + (WebCore::): + (WebCore::HTMLEntitySearch::HTMLEntitySearch): + (WebCore::HTMLEntitySearch::compare): + (WebCore::HTMLEntitySearch::findStart): + (WebCore::HTMLEntitySearch::findEnd): + (WebCore::HTMLEntitySearch::advance): + * html/HTMLEntitySearch.h: Added. + (WebCore::HTMLEntitySearch::isEntityPrefix): + (WebCore::HTMLEntitySearch::currentValue): + (WebCore::HTMLEntitySearch::lastMatch): + (WebCore::HTMLEntitySearch::): + (WebCore::HTMLEntitySearch::fail): + * html/HTMLEntityTable.h: Added. + (WebCore::HTMLEntityTableEntry::lastCharacter): + +2010-08-13 Tony Gentilcore <tonyg@chromium.org> + + Reviewed by Eric Seidel. + + Refactor HTMLScriptRunner to allow deferred scripts to share code + https://bugs.webkit.org/show_bug.cgi?id=43736 + + No new tests because no functional change + + * html/HTMLScriptRunner.cpp: + (WebCore::HTMLScriptRunner::sourceFromPendingScript): Make const to enforce the idea that it doesn't change m_parsingBlockingScript. + (WebCore::HTMLScriptRunner::executeParsingBlockingScript): Rename to make it clear this deals with the parsing blocking script and refactor to use executePendingScriptAndDispatchEvent. + (WebCore::HTMLScriptRunner::executePendingScriptAndDispatchEvent): Factored out of executePendingScript, this can be used for executing any external script. + (WebCore::HTMLScriptRunner::executeScript): This can be used for executing any inline or external script. ASSERTs moved to the two calling points. + (WebCore::HTMLScriptRunner::executeParsingBlockingScripts): Moved method. + (WebCore::HTMLScriptRunner::requestParsingBlockingScript): Factored out requestPendingScript. + (WebCore::HTMLScriptRunner::requestPendingScript): Factored out from reqeustParsingBlockingScript. + (WebCore::HTMLScriptRunner::runScript): + * html/HTMLScriptRunner.h: + +2010-08-13 Gavin Barraclough <barraclough@apple.com> + + Windows build fix. + + * WebCore.xcodeproj/project.pbxproj: + * platform/win/SharedBufferWin.cpp: + +2010-08-13 Gavin Barraclough <barraclough@apple.com> + + Rubber stamped by Sam Weinig. + Switch String::/UString::ascii() to return a CString. + + * WebCore.xcodeproj/project.pbxproj: + * bridge/c/c_class.cpp: + (JSC::Bindings::CClass::methodsNamed): + (JSC::Bindings::CClass::fieldNamed): + * bridge/jni/jsc/JNIBridgeJSC.cpp: + (JavaField::valueFromInstance): + (JavaField::setValueToInstance): + * bridge/jni/jsc/JavaInstanceJSC.cpp: + (JavaInstance::invokeMethod): + * bridge/objc/objc_class.mm: + (JSC::Bindings::ObjcClass::methodsNamed): + (JSC::Bindings::ObjcClass::fieldNamed): + * bridge/objc/objc_instance.mm: + (ObjcInstance::setValueOfUndefinedField): + (ObjcInstance::getValueOfUndefinedField): + * loader/icon/IconRecord.cpp: + * platform/sql/SQLiteDatabase.cpp: + * platform/sql/SQLiteStatement.cpp: + * storage/SQLStatement.cpp: + +2010-08-13 Mihai Parparita <mihaip@chromium.org> + + Reviewed by Dimitri Glazkov. + + Session history should skip over JS redirects + https://bugs.webkit.org/show_bug.cgi?id=42861 + + Lock the back/forward list for location changes and form submits that + happen before the onload event fires that are not the result of user + gestures. + + Made form submission (at the ScheduledFormSubmission level) more similar + to ScheduledURLNavigation by having it call clientRedirected too, fixing + a long-standing FIXME. + + Test: fast/history/gesture-before-onload-location-href.html, + fast/history/gesture-before-onload-form-submit.html and updated + expectations for http/tests/history tests that used to fail. + + * loader/FormSubmission.cpp: + (WebCore::FormSubmission::requestURL): + (WebCore::FormSubmission::populateFrameLoadRequest): + * loader/FormSubmission.h: + * loader/RedirectScheduler.cpp: + (WebCore::ScheduledFormSubmission::ScheduledFormSubmission): + (WebCore::ScheduledFormSubmission::fire): + (WebCore::ScheduledFormSubmission::didStartTimer): + (WebCore::ScheduledFormSubmission::didStopTimer): + (WebCore::RedirectScheduler::scheduleRedirect): + (WebCore::RedirectScheduler::mustLockBackForwardList): + (WebCore::RedirectScheduler::scheduleLocationChange): + (WebCore::RedirectScheduler::scheduleFormSubmission): + * loader/RedirectScheduler.h: + +2010-08-13 Leandro Pereira <leandro@profusion.mobi> + + [EFL] Unreviewed build fix. + These changes were supposed to be landed on r65319, but due to some + svn-apply/commit-queue bug it wasn't fully applied. A bug was filed + by Patrick Gansterer (author of the changes in this commit): + https://bugs.webkit.org/show_bug.cgi?id=43981 + + * CMakeLists.txt: Update calls to GENERATE_GPERF and + GENERATE_GRAMMAR macros. + +2010-08-13 Chris Fleizach <cfleizach@apple.com> + + AX: isNativeCheckbox does not work as advertised + https://bugs.webkit.org/show_bug.cgi?id=43872 + + Re-adding this patch after it was erroneously rolled out. + + Test: platform/mac/accessibility/native-vs-nonnative-checkboxes.html + + * accessibility/AccessibilityRenderObject.cpp: + (WebCore::AccessibilityRenderObject::isInputImage): + (WebCore::AccessibilityRenderObject::isNativeCheckboxOrRadio): + * dom/InputElement.h: + * html/HTMLInputElement.h: + (WebCore::HTMLInputElement::isCheckbox): + +2010-08-13 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r65331. + http://trac.webkit.org/changeset/65331 + https://bugs.webkit.org/show_bug.cgi?id=43980 + + This patch breaks some shadow tests on Qt Linux release + (Requested by ariya on #webkit). + + * platform/graphics/qt/GraphicsContextQt.cpp: + (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): + (WebCore::GraphicsContext::drawRect): + (WebCore::GraphicsContext::drawLine): + (WebCore::GraphicsContext::strokeArc): + (WebCore::GraphicsContext::drawConvexPolygon): + (WebCore::drawFilledShadowPath): + (WebCore::GraphicsContext::fillPath): + (WebCore::GraphicsContext::strokePath): + (WebCore::drawBorderlessRectShadow): + (WebCore::GraphicsContext::fillRect): + (WebCore::GraphicsContext::fillRoundedRect): + (WebCore::GraphicsContext::setPlatformShadow): + (WebCore::GraphicsContext::clearPlatformShadow): + +2010-08-13 Kinuko Yasuda <kinuko@chromium.org> + + Reviewed by David Levin. + + Update run-bindings-tests expectations + https://bugs.webkit.org/show_bug.cgi?id=43944 + + The results have become out of sync after changeset 64552 and 65269. + + Test: WebKitTools/Scripts/run-bindings-tests + + * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp: + (webkit_dom_test_callback_callback_with_class1param): + (webkit_dom_test_callback_callback_with_class2param): + (webkit_dom_test_callback_callback_with_non_bool_return_type): + * bindings/scripts/test/GObject/WebKitDOMTestCallback.h: + * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: + (webkit_dom_test_obj_void_method_with_args): + (webkit_dom_test_obj_int_method_with_args): + (webkit_dom_test_obj_obj_method): + (webkit_dom_test_obj_obj_method_with_args): + (webkit_dom_test_obj_method_that_requires_all_args): + (webkit_dom_test_obj_method_that_requires_all_args_and_throws): + (webkit_dom_test_obj_serialized_value): + (webkit_dom_test_obj_idb_key): + (webkit_dom_test_obj_with_dynamic_frame_and_user_gesture): + (webkit_dom_test_obj_with_dynamic_frame_and_user_gesture_asad): + (webkit_dom_test_obj_with_script_state_obj): + (webkit_dom_test_obj_with_script_state_obj_exception): + (webkit_dom_test_obj_get_read_only_string_attr): + (webkit_dom_test_obj_get_read_only_test_obj_attr): + (webkit_dom_test_obj_get_string_attr): + (webkit_dom_test_obj_set_string_attr): + (webkit_dom_test_obj_get_test_obj_attr): + (webkit_dom_test_obj_set_test_obj_attr): + (webkit_dom_test_obj_get_xml_obj_attr): + (webkit_dom_test_obj_set_xml_obj_attr): + (webkit_dom_test_obj_get_reflected_string_attr): + (webkit_dom_test_obj_set_reflected_string_attr): + (webkit_dom_test_obj_get_reflected_url_attr): + (webkit_dom_test_obj_set_reflected_url_attr): + (webkit_dom_test_obj_get_reflected_non_empty_url_attr): + (webkit_dom_test_obj_set_reflected_non_empty_url_attr): + (webkit_dom_test_obj_get_reflected_custom_url_attr): + (webkit_dom_test_obj_set_reflected_custom_url_attr): + (webkit_dom_test_obj_get_reflected_custom_non_empty_url_attr): + (webkit_dom_test_obj_set_reflected_custom_non_empty_url_attr): + (webkit_dom_test_obj_get_string_attr_with_getter_exception): + (webkit_dom_test_obj_set_string_attr_with_getter_exception): + (webkit_dom_test_obj_get_string_attr_with_setter_exception): + (webkit_dom_test_obj_set_string_attr_with_setter_exception): + (webkit_dom_test_obj_get_script_string_attr): + (webkit_dom_test_obj_get_hash): + (webkit_dom_test_obj_class_init): + * bindings/scripts/test/GObject/WebKitDOMTestObj.h: + * bindings/scripts/test/JS/JSTestObj.cpp: + (WebCore::jsTestObjPrototypeFunctionOverloadedMethod): + +2010-08-13 Ariya Hidayat <ariya@sencha.com> + + Reviewed by Simon Hausmann. + + [Qt] Canvas and CSS: blur option in shadow not working + https://bugs.webkit.org/show_bug.cgi?id=34479 + + Patch 1: Refactor shadow states handling. + + * platform/graphics/qt/GraphicsContextQt.cpp: + (WebCore::GraphicsContextPlatformPrivate::): Added shadow states as + member variables. + (WebCore::GraphicsContextPlatformPrivate::hasShadow): Convenient + function to check whether there is shadow or not. + (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): + (WebCore::GraphicsContext::drawRect): Use shadow states instead of + calling getShadow. + (WebCore::GraphicsContext::drawLine): ditto. + (WebCore::GraphicsContext::strokeArc): ditto. + (WebCore::GraphicsContext::drawConvexPolygon): ditto. + (WebCore::GraphicsContext::fillPath): ditto. + (WebCore::GraphicsContext::strokePath): ditto. + (WebCore::GraphicsContext::fillRect): Removes the use of helper function + drawBorderlessRectShadow as the code already becomes a lot simpler. + (WebCore::GraphicsContext::fillRoundedRect): Removes the use of helper + function drawFilledShadowPath as the code already becomes a lot simpler. + (WebCore::GraphicsContext::setPlatformShadow): Store shadow states + and find out the shadow type (complexity) for future use. + (WebCore::GraphicsContext::clearPlatformShadow): Reset shadow states. + +2010-08-11 Zhenyao Mo <zmo@google.com> + + Reviewed by Dimitri Glazkov. + + Regression in linking of programs + https://bugs.webkit.org/show_bug.cgi?id=43820 + + Shaders and programs shouldn't be deleted until their attachments are removed, therefore, we need to track the attach/detach/useProgram. + + * html/canvas/WebGLObject.cpp: Track the object attachment count and whether it should really be deleted. + (WebCore::WebGLObject::WebGLObject): + (WebCore::WebGLObject::setObject): + (WebCore::WebGLObject::deleteObject): + * html/canvas/WebGLObject.h: Track the object attachment count and whether it should really be deleted. + (WebCore::WebGLObject::onAttached): + (WebCore::WebGLObject::onDetached): + (WebCore::WebGLObject::getAttachmentCount): + * html/canvas/WebGLProgram.cpp: Track the attached shaders. + (WebCore::WebGLProgram::WebGLProgram): + (WebCore::WebGLProgram::deleteObjectImpl): + (WebCore::WebGLProgram::getAttachedShader): + (WebCore::WebGLProgram::attachShader): + (WebCore::WebGLProgram::detachShader): + * html/canvas/WebGLProgram.h: Track the attached shaders. + * html/canvas/WebGLRenderingContext.cpp: + (WebCore::WebGLRenderingContext::attachShader): Track the attachment of a shader to a program. + (WebCore::WebGLRenderingContext::deleteProgram): Detach shaders. + (WebCore::WebGLRenderingContext::detachShader): Track the attachment of a shader to a program. + (WebCore::WebGLRenderingContext::validateWebGLObject): Also check if object == 0. + (WebCore::WebGLRenderingContext::linkProgram): Using the cached attached shaders instead of query from driver. + (WebCore::WebGLRenderingContext::useProgram): Track the attachment of a program to the current rendering pipeline. + +2010-08-13 Steve Block <steveblock@google.com> + + Reviewed by Alexey Proskuryakov. + + Geolocation activity started after frame has been disconnected can cause crash + https://bugs.webkit.org/show_bug.cgi?id=39879 + + New requests started after the Frame has been disconnected are ignored. We do + not invoke the error callback as this would allow buggy or malicious pages to + hose the CPU. Such a page could hold a reference to a Geolocation object from + a since closed Page and register new requests from the error callback to + create an infinite loop. + + Tests: fast/dom/Geolocation/disconnected-frame-already.html + + * page/Geolocation.cpp: + +2010-08-13 Satish Sampath <satish@chromium.org> + + Reviewed by Jeremy Orlow. + + Support for multiple speech enabled elements in same page. + https://bugs.webkit.org/show_bug.cgi?id=43922 + + * page/SpeechInput.cpp: Generates request ids as necessary when each speech enabled input element gets + created/destroyed and multiplexes the listener callbacks to the appropriate input element based on the request id. + (WebCore::SpeechInput::SpeechInput): + (WebCore::SpeechInput::~SpeechInput): + (WebCore::SpeechInput::registerListener): + (WebCore::SpeechInput::unregisterListener): + (WebCore::SpeechInput::didCompleteRecording): + (WebCore::SpeechInput::didCompleteRecognition): + (WebCore::SpeechInput::setRecognitionResult): + (WebCore::SpeechInput::startRecognition): + (WebCore::SpeechInput::stopRecording): + (WebCore::SpeechInput::cancelRecognition): + * page/SpeechInput.h: + * page/SpeechInputClient.h: Now requires a one time set for the WebCore::SpeechInputListener and + takes in a 'requestId' for all calls. + * page/SpeechInputListener.h: Now returns the above mentioned requestId in all the listener callbacks for + identifying which input element the event goes to. + * platform/mock/SpeechInputClientMock.cpp: + (WebCore::SpeechInputClientMock::SpeechInputClientMock): + (WebCore::SpeechInputClientMock::setListener): + (WebCore::SpeechInputClientMock::startRecognition): + (WebCore::SpeechInputClientMock::stopRecording): + (WebCore::SpeechInputClientMock::cancelRecognition): + (WebCore::SpeechInputClientMock::timerFired): + * platform/mock/SpeechInputClientMock.h: + * rendering/TextControlInnerElements.cpp: + (WebCore::InputFieldSpeechButtonElement::InputFieldSpeechButtonElement): + (WebCore::InputFieldSpeechButtonElement::~InputFieldSpeechButtonElement): + (WebCore::InputFieldSpeechButtonElement::defaultEventHandler): + (WebCore::InputFieldSpeechButtonElement::speechInput): + (WebCore::InputFieldSpeechButtonElement::didCompleteRecording): + (WebCore::InputFieldSpeechButtonElement::didCompleteRecognition): + (WebCore::InputFieldSpeechButtonElement::setRecognitionResult): + * rendering/TextControlInnerElements.h: + +2010-08-13 Eric Carlson <eric.carlson@apple.com> + + Reviewed by David Kilzer. + + HTMLMediaElement::prepareForLoad should cancel current plug-in proxy media player + https://bugs.webkit.org/show_bug.cgi?id=43923 + + * html/HTMLMediaElement.cpp: + (WebCore::HTMLMediaElement::prepareForLoad): Tell mediaPlayer to cancel the current load + if it already exists. + +2010-08-12 Stephen White <senorblanco@chromium.org> + + Reviewed by David Levin. + + [CHROMIUM] Use the BGRA format for canvas 2D accel upload and readbacks. + https://bugs.webkit.org/show_bug.cgi?id=43804 + + Use the BGRA format from GraphicsContext3D, if supported. Also keep a + texture around for uploads, rather than re-creating it each time. + + Covered by many layout tests (once we're running them). + + * platform/graphics/chromium/GLES2Texture.cpp: + (WebCore::convertFormat): + Move convertFormat() ahead of texture creation, so we can check for + BGRA support. + (WebCore::GLES2Texture::create): + Use convertFormat() to determine the correct format and types to use; + use the returned format also for internalFormat, since GLES2 insists + they match. + * platform/graphics/skia/PlatformContextSkia.cpp: + (WebCore::PlatformContextSkia::setGraphicsContext3D): + Clear the upload texture when a new context is set. + (WebCore::PlatformContextSkia::uploadSoftwareToHardware): + Use m_uploadTexture instead of creating a new one each time. + (WebCore::PlatformContextSkia::readbackHardwareToSoftware): + When the context supports it, use the BGRA format for readbacks + instead of swizzling. + * platform/graphics/skia/PlatformContextSkia.h: + Add m_uploadTexture for consecutive uploads. + +2010-08-13 Simon Hausmann <simon.hausmann@nokia.com> + + Reviewed by Ariya Hidayat. + + [Qt] Clean up mobile feature useage + https://bugs.webkit.org/show_bug.cgi?id=43968 + + * WebCore.pro: Replaced use of Nokia specific platform scopes with concrete + feature names. + +2010-08-13 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Yury Semikhatsky. + + Web Inspector: rename InspectorValue::push and set to + push{Value|Object|Array} and set{...}. + https://bugs.webkit.org/show_bug.cgi?id=43966 + + * bindings/js/ScriptProfile.cpp: + (WebCore::buildInspectorObjectFor): + * bindings/js/ScriptValue.cpp: + (WebCore::jsToInspectorValue): + * bindings/v8/ScriptCallStack.cpp: + (WebCore::ScriptCallStack::stackTrace): + * bindings/v8/ScriptProfile.cpp: + (WebCore::buildInspectorObjectFor): + * bindings/v8/ScriptValue.cpp: + (WebCore::v8ToInspectorValue): + * inspector/CodeGeneratorInspector.pm: + * inspector/ConsoleMessage.cpp: + (WebCore::ConsoleMessage::addToFrontend): + * inspector/Inspector.idl: + * inspector/InspectorApplicationCacheAgent.cpp: + (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCache): + (WebCore::InspectorApplicationCacheAgent::buildArrayForApplicationCacheResources): + * inspector/InspectorController.cpp: + (WebCore::InspectorController::buildArrayForCookies): + (WebCore::InspectorController::getDOMStorageEntries): + (WebCore::InspectorController::getProfileHeaders): + (WebCore::InspectorController::getProfile): + * inspector/InspectorDOMAgent.cpp: + (WebCore::InspectorDOMAgent::getEventListenersForNode): + (WebCore::InspectorDOMAgent::buildObjectForNode): + (WebCore::InspectorDOMAgent::buildArrayForContainerChildren): + (WebCore::InspectorDOMAgent::getStyles): + (WebCore::InspectorDOMAgent::getAllStyles): + (WebCore::InspectorDOMAgent::getRuleRanges): + (WebCore::InspectorDOMAgent::buildObjectForAttributeStyles): + (WebCore::InspectorDOMAgent::buildArrayForCSSRules): + (WebCore::InspectorDOMAgent::buildArrayForPseudoElements): + (WebCore::InspectorDOMAgent::buildObjectForStyle): + (WebCore::InspectorDOMAgent::populateObjectWithStyleProperties): + (WebCore::InspectorDOMAgent::buildArrayForDisabledStyleProperties): + (WebCore::InspectorDOMAgent::buildObjectForStyleSheet): + (WebCore::InspectorDOMAgent::buildObjectForRule): + * inspector/InspectorDebuggerAgent.cpp: + (WebCore::InspectorDebuggerAgent::saveBreakpoints): + * inspector/InspectorResource.cpp: + (WebCore::InspectorResource::updateScriptObject): + * inspector/InspectorStorageAgent.cpp: + (WebCore::): + (WebCore::InspectorStorageAgent::executeSQL): + * inspector/InspectorTimelineAgent.cpp: + (WebCore::InspectorTimelineAgent::pushGCEventRecords): + (WebCore::InspectorTimelineAgent::didInstallTimer): + (WebCore::InspectorTimelineAgent::didRemoveTimer): + (WebCore::InspectorTimelineAgent::didScheduleResourceRequest): + (WebCore::InspectorTimelineAgent::willSendResourceRequest): + (WebCore::InspectorTimelineAgent::didFinishLoadingResource): + (WebCore::InspectorTimelineAgent::didMarkTimeline): + (WebCore::InspectorTimelineAgent::addRecordToTimeline): + (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord): + * inspector/InspectorValues.cpp: + (WebCore::): + (WebCore::InspectorValue::asValue): + (WebCore::InspectorValue::asObject): + (WebCore::InspectorValue::asArray): + (WebCore::InspectorObject::asObject): + (WebCore::InspectorArray::asArray): + * inspector/InspectorValues.h: + (WebCore::InspectorObject::setBool): + (WebCore::InspectorObject::setNumber): + (WebCore::InspectorObject::setString): + (WebCore::InspectorObject::setValue): + (WebCore::InspectorObject::setObject): + (WebCore::InspectorObject::setArray): + (WebCore::InspectorArray::pushValue): + (WebCore::InspectorArray::pushObject): + (WebCore::InspectorArray::pushArray): + * inspector/ScriptBreakpoint.cpp: + (WebCore::ScriptBreakpoint::inspectorObjectFromSourceBreakpoints): + * inspector/TimelineRecordFactory.cpp: + (WebCore::TimelineRecordFactory::createGenericRecord): + +2010-08-13 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r65204. + http://trac.webkit.org/changeset/65204 + https://bugs.webkit.org/show_bug.cgi?id=43965 + + Caused a lot of test crashes in Chromium (Requested by yutak + on #webkit). + + * accessibility/AccessibilityRenderObject.cpp: + (WebCore::AccessibilityRenderObject::isInputImage): + (WebCore::AccessibilityRenderObject::isNativeCheckboxOrRadio): + * dom/InputElement.h: + * html/HTMLInputElement.h: + +2010-08-13 Anton Muhin <antonm@chromium.org> + + Reviewed by Nate Chapin. + + Reapplying http://trac.webkit.org/changeset/65284 after fixed include. + + [v8] Create callbacks for named access of elements from document object on fly. + https://bugs.webkit.org/show_bug.cgi?id=43725 + + That should speed up access to methods on document as there is no need to + consult with interceptor before invoking the method. + + This reapplies http://trac.webkit.org/changeset/60670 reverted with + http://trac.webkit.org/changeset/63845. The main difference is in treatment + of removed named elements: we don't remove an accessor any more, but leave it. + Therefore any accessor should be able to treat the case when there is no + expando property. + + * bindings/scripts/CodeGeneratorV8.pm: + * bindings/v8/ScriptController.cpp: + (WebCore::ScriptController::namedItemAdded): + (WebCore::ScriptController::namedItemRemoved): + * bindings/v8/V8DOMWindowShell.cpp: + (WebCore::checkDocumentWrapper): + (WebCore::V8DOMWindowShell::updateDocumentWrapperCache): + (WebCore::getter): + (WebCore::V8DOMWindowShell::namedItemAdded): + (WebCore::V8DOMWindowShell::namedItemRemoved): + * bindings/v8/V8DOMWindowShell.h: + * bindings/v8/V8DOMWrapper.cpp: + (WebCore::V8DOMWrapper::instantiateV8Object): + * bindings/v8/custom/V8HTMLDocumentCustom.cpp: + (WebCore::V8HTMLDocument::WrapInShadowObject): + (WebCore::V8HTMLDocument::GetNamedProperty): + (WebCore::V8HTMLDocument::allAccessorSetter): + (WebCore::toV8): + * html/HTMLDocument.cpp: + (WebCore::HTMLDocument::removeItemFromMap): + +2010-08-13 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Yury Semikhatsky. + + Web Inspector: remove openInInspectorWindow and evaluateAndStringify from InjectedScript. + https://bugs.webkit.org/show_bug.cgi?id=43854 + + * inspector/Inspector.idl: + * inspector/InspectorController.cpp: + (WebCore::InspectorController::openInInspectedWindow): + * inspector/InspectorController.h: + * inspector/front-end/ExtensionServer.js: + (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage.callback): + (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage): + * inspector/front-end/InjectedScript.js: + (injectedScriptConstructor): + * inspector/front-end/InjectedScriptAccess.js: + * inspector/front-end/InspectorBackendStub.js: + (WebInspector.InspectorBackendStub): + * inspector/front-end/ResourcesPanel.js: + (WebInspector.ResourceSidebarTreeElement.prototype.ondblclick): + +2010-08-13 Fumitoshi Ukai <ukai@chromium.org> + + Reviewed by Alexey Proskuryakov. + + flaky websocket/tests/frame-length-overflow.html + https://bugs.webkit.org/show_bug.cgi?id=43902 + + Add m_shouldDiscardReceivedData flag to indicate it will no longer + receive data from network. + + * websockets/WebSocketChannel.cpp: + (WebCore::WebSocketChannel::WebSocketChannel): + (WebCore::WebSocketChannel::didReceiveData): + (WebCore::WebSocketChannel::didFail): + (WebCore::WebSocketChannel::processBuffer): + - when frame length overflows, we couldn't process data any more. + clear buffer and mark m_shouldDiscardReceivedData true to make sure + it doesn't process the same buffer again. + * websockets/WebSocketChannel.h: + +2010-08-13 Dirk Schulze <krit@webkit.org> + + Reviewed by Nikolas Zimmermann. + + Use SVGPathByteStream to animate SVGPath + https://bugs.webkit.org/show_bug.cgi?id=43929 + + Use SVGPathByteStream to perform animations of Paths. SVGPathBlender blends + the starting point to the end point according to the current progress value. + Cleanup SVGPathSegList, by removing the unnecessary legacy blending code. + + No new tests because no functional changes. + + * Android.mk: + * CMakeLists.txt: + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * svg/SVGAllInOne.cpp: + * svg/SVGAnimateElement.cpp: + (WebCore::SVGAnimateElement::SVGAnimateElement): + (WebCore::SVGAnimateElement::calculateAnimatedValue): + (WebCore::SVGAnimateElement::calculateFromAndToValues): + (WebCore::SVGAnimateElement::resetToBaseValue): + (WebCore::SVGAnimateElement::applyResultsToTarget): + * svg/SVGAnimateElement.h: + * svg/SVGPathBlender.cpp: Added. + (WebCore::SVGPathBlender::SVGPathBlender): + (WebCore::SVGPathBlender::~SVGPathBlender): + (WebCore::SVGPathBlender::blendAnimatedFloat): + (WebCore::SVGPathBlender::blendAnimatedFloatPoint): + (WebCore::SVGPathBlender::blendMoveToSegment): + (WebCore::SVGPathBlender::blendLineToSegment): + (WebCore::SVGPathBlender::blendLineToHorizontalSegment): + (WebCore::SVGPathBlender::blendLineToVerticalSegment): + (WebCore::SVGPathBlender::blendCurveToCubicSegment): + (WebCore::SVGPathBlender::blendCurveToCubicSmoothSegment): + (WebCore::SVGPathBlender::blendCurveToQuadraticSegment): + (WebCore::SVGPathBlender::blendCurveToQuadraticSmoothSegment): + (WebCore::SVGPathBlender::blendArcToSegment): + (WebCore::SVGPathBlender::blendAnimatedPath): + (WebCore::SVGPathBlender::cleanup): + * svg/SVGPathBlender.h: Added. + * svg/SVGPathParserFactory.cpp: + (WebCore::globalSVGPathBlender): + (WebCore::SVGPathParserFactory::buildAnimatedSVGPathByteStream): + * svg/SVGPathParserFactory.h: + * svg/SVGPathSegList.cpp: + (WebCore::SVGPathSegList::getPathSegAtLength): + * svg/SVGPathSegList.h: + (WebCore::SVGPathSegList::create): + * svg/SVGPointList.cpp: + (WebCore::adjustAnimatedValue): + +2010-08-12 Nikolas Zimmermann <nzimmermann@rim.com> + + Reviewed by Dirk Schulze. + + Window size changes + resources on absolute sized content leads to pixelation + https://bugs.webkit.org/show_bug.cgi?id=43921 + + Avoid pixelation when using resources on absolute sized objects. Be sure to invalidate the used resources if window size changes. + Otherwhise masks etc. will be scaled up and pixelate. As nice side-effect, this fixes run-webkit-tests --singly svg/W3C-SVG-1.1, which + used to produce wrong results for the gradient tests, as the window size change from 800x600 for 480x360 (svg/W3C-SVG-1.1 specific DRT quirk) + didn't invalidate the resources. + + Renamed invalidateClient -> removeClientFromCache and invalidateClients -> removeAllClientsFromCache. + Add a boolean "markForInvalidation" parameter, that controls wheter the clients should be marked for repaint/boundaries invalidation/layout + or wheter we only want to notify the parents that the resource changed, to avoid doing unncessary work in SVGRenderSupport::layoutChildren. + + Test: svg/custom/absolute-sized-content-with-resources.xhtml + + * rendering/RenderSVGGradientStop.cpp: + (WebCore::RenderSVGGradientStop::styleDidChange): Don't do anything for StyleDifferenceEqual. + * rendering/RenderSVGImage.cpp: + (WebCore::RenderSVGImage::imageChanged): + * rendering/RenderSVGResource.cpp: + (WebCore::RenderSVGResource::markForLayoutAndParentResourceInvalidation): + * rendering/RenderSVGResource.h: + * rendering/RenderSVGResourceClipper.cpp: + (WebCore::RenderSVGResourceClipper::removeAllClientsFromCache): + (WebCore::RenderSVGResourceClipper::removeClientFromCache): + * rendering/RenderSVGResourceClipper.h: + * rendering/RenderSVGResourceContainer.cpp: + (WebCore::RenderSVGResourceContainer::layout): + (WebCore::RenderSVGResourceContainer::idChanged): + (WebCore::RenderSVGResourceContainer::markAllClientsForInvalidation): + (WebCore::RenderSVGResourceContainer::markClientForInvalidation): + * rendering/RenderSVGResourceContainer.h: + (WebCore::RenderSVGResourceContainer::): + * rendering/RenderSVGResourceFilter.cpp: + (WebCore::RenderSVGResourceFilter::removeAllClientsFromCache): + (WebCore::RenderSVGResourceFilter::removeClientFromCache): + (WebCore::RenderSVGResourceFilter::postApplyResource): + * rendering/RenderSVGResourceFilter.h: + * rendering/RenderSVGResourceGradient.cpp: + (WebCore::RenderSVGResourceGradient::removeAllClientsFromCache): + (WebCore::RenderSVGResourceGradient::removeClientFromCache): + (WebCore::RenderSVGResourceGradient::applyResource): + * rendering/RenderSVGResourceGradient.h: + * rendering/RenderSVGResourceMarker.cpp: + (WebCore::RenderSVGResourceMarker::layout): + (WebCore::RenderSVGResourceMarker::removeAllClientsFromCache): + (WebCore::RenderSVGResourceMarker::removeClientFromCache): + * rendering/RenderSVGResourceMarker.h: + * rendering/RenderSVGResourceMasker.cpp: + (WebCore::RenderSVGResourceMasker::removeAllClientsFromCache): + (WebCore::RenderSVGResourceMasker::removeClientFromCache): + * rendering/RenderSVGResourceMasker.h: + * rendering/RenderSVGResourcePattern.cpp: + (WebCore::RenderSVGResourcePattern::removeAllClientsFromCache): + (WebCore::RenderSVGResourcePattern::removeClientFromCache): + (WebCore::RenderSVGResourcePattern::applyResource): + * rendering/RenderSVGResourcePattern.h: + * rendering/RenderSVGResourceSolidColor.h: + (WebCore::RenderSVGResourceSolidColor::removeAllClientsFromCache): + (WebCore::RenderSVGResourceSolidColor::removeClientFromCache): + * rendering/SVGRenderSupport.cpp: + (WebCore::invalidateResourcesOfChildren): Add new helper funtion recursively invalidating resources of a sub render tree. + (WebCore::SVGRenderSupport::layoutChildren): Keep track of all objects that didn't need layout, as we still have to invalidate their resources, if window size changes. + * rendering/SVGResources.cpp: + (WebCore::SVGResources::removeClientFromCache): + (WebCore::SVGResources::resourceDestroyed): + * rendering/SVGResources.h: + * rendering/SVGResourcesCache.cpp: + (WebCore::SVGResourcesCache::clientLayoutChanged): + +2010-08-13 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Yury Semikhatsky. + + Chromium DevTools: [CRASH] Autocomplete on arrays causes crashes. + https://bugs.webkit.org/show_bug.cgi?id=43955 + + * bindings/v8/ScriptValue.cpp: + (WebCore::v8ToInspectorValue): + +2010-08-13 Gavin Barraclough <barraclough@apple.com> + + Reviewed by Sam Weinig + + Unify UString::UTF8String() & String::utf8() methods, + remove UString::cost() & make atArrayIndex a free function. + + * WebCore.xcodeproj/project.pbxproj: + * bindings/js/JSDOMWindowCustom.cpp: + (WebCore::JSDOMWindow::getOwnPropertySlot): + (WebCore::JSDOMWindow::getOwnPropertyDescriptor): + * bridge/NP_jsobject.cpp: + (_NPN_Enumerate): + * bridge/c/c_utility.cpp: + (JSC::Bindings::convertValueToNPVariant): + * bridge/jni/JNIBridge.cpp: + (JavaParameter::JavaParameter): + (JavaMethod::JavaMethod): + (JavaMethod::signature): + (JavaMethod::methodID): + * bridge/jni/JNIBridge.h: + (JSC::Bindings::JavaString::utf8): + (JSC::Bindings::JavaParameter::type): + (JSC::Bindings::JavaMethod::returnType): + * bridge/jni/jni_jsobject.mm: + (JavaJSObject::call): + (JavaJSObject::eval): + (JavaJSObject::getMember): + (JavaJSObject::setMember): + (JavaJSObject::removeMember): + (JavaJSObject::convertJObjectToValue): + * bridge/jni/jsc/JNIBridgeJSC.cpp: + (JavaField::JavaField): + (JavaField::valueFromInstance): + (JavaField::setValueToInstance): + * bridge/jni/jsc/JNIBridgeJSC.h: + (JSC::Bindings::JavaField::type): + * bridge/jni/jsc/JavaInstanceJSC.cpp: + (JavaInstance::invokeMethod): + * bridge/jni/jsc/JavaStringJSC.h: + (JSC::Bindings::JavaStringImpl::utf8): + * bridge/runtime_array.cpp: + (JSC::RuntimeArray::getOwnPropertySlot): + (JSC::RuntimeArray::getOwnPropertyDescriptor): + (JSC::RuntimeArray::put): + +2010-08-12 Yury Semikhatsky <yurys@chromium.org> + + Reviewed by Pavel Feldman. + + Web Inspector: allow interrupting long running JS to execute inspector command + https://bugs.webkit.org/show_bug.cgi?id=43900 + + * bindings/v8/ScriptDebugServer.cpp: + (WebCore::): + (WebCore::ScriptDebugServer::pause): + (WebCore::ScriptDebugServer::interruptAndRun): + (WebCore::ScriptDebugServer::runPendingTasks): + (WebCore::ScriptDebugServer::handleV8DebugEvent): + * bindings/v8/ScriptDebugServer.h: + (WebCore::ScriptDebugServer::Task::~Task): + +2010-08-12 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r65295. + http://trac.webkit.org/changeset/65295 + https://bugs.webkit.org/show_bug.cgi?id=43950 + + It broke 4 sputnik tests (Requested by Ossy on #webkit). + + * WebCore.xcodeproj/project.pbxproj: + * bindings/js/JSDOMWindowCustom.cpp: + (WebCore::JSDOMWindow::getOwnPropertySlot): + (WebCore::JSDOMWindow::getOwnPropertyDescriptor): + * bridge/NP_jsobject.cpp: + (_NPN_Enumerate): + * bridge/c/c_utility.cpp: + (JSC::Bindings::convertValueToNPVariant): + * bridge/jni/JNIBridge.cpp: + (JavaParameter::JavaParameter): + (JavaMethod::JavaMethod): + (JavaMethod::signature): + (JavaMethod::methodID): + * bridge/jni/JNIBridge.h: + (JSC::Bindings::JavaString::UTF8String): + (JSC::Bindings::JavaParameter::type): + (JSC::Bindings::JavaMethod::returnType): + * bridge/jni/jni_jsobject.mm: + (JavaJSObject::call): + (JavaJSObject::eval): + (JavaJSObject::getMember): + (JavaJSObject::setMember): + (JavaJSObject::removeMember): + (JavaJSObject::convertJObjectToValue): + * bridge/jni/jsc/JNIBridgeJSC.cpp: + (JavaField::JavaField): + (JavaField::valueFromInstance): + (JavaField::setValueToInstance): + * bridge/jni/jsc/JNIBridgeJSC.h: + (JSC::Bindings::JavaField::type): + * bridge/jni/jsc/JavaInstanceJSC.cpp: + (JavaInstance::invokeMethod): + * bridge/jni/jsc/JavaStringJSC.h: + (JSC::Bindings::JavaStringImpl::UTF8String): + * bridge/runtime_array.cpp: + (JSC::RuntimeArray::getOwnPropertySlot): + (JSC::RuntimeArray::getOwnPropertyDescriptor): + (JSC::RuntimeArray::put): + +2010-08-12 Pavel Feldman <pfeldman@chromium.org> + + Not reviewed. Fixed typo in inspector js. + Follow up to r65300. + + * inspector/front-end/inspector.js: + (WebInspector.log.isLogAvailable): + +2010-08-12 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Yury Semikhatsky. + + Web Inspector: Make getPrototypes return objects, not names. + https://bugs.webkit.org/show_bug.cgi?id=43934 + + * inspector/front-end/InjectedScript.js: + (injectedScriptConstructor): + (injectedScriptConstructor.): + * inspector/front-end/PropertiesSidebarPane.js: + (WebInspector.PropertiesSidebarPane.prototype.update.callback): + * inspector/front-end/inspector.js: + (WebInspector.log): + +2010-08-12 James Robinson <jamesr@chromium.org> + + Unreviewed, rolling out r65284 and r65288. Broke chromium compile. + https://bugs.webkit.org/show_bug.cgi?id=43725 + http://trac.webkit.org/changeset/65284 + http://trac.webkit.org/changeset/65288 + + * bindings/scripts/CodeGeneratorV8.pm: + * bindings/v8/ScriptController.cpp: + (WebCore::ScriptController::namedItemAdded): + (WebCore::ScriptController::namedItemRemoved): + * bindings/v8/V8DOMWindowShell.cpp: + (WebCore::V8DOMWindowShell::updateDocumentWrapperCache): + * bindings/v8/V8DOMWindowShell.h: + * bindings/v8/V8DOMWrapper.cpp: + (WebCore::V8DOMWrapper::instantiateV8Object): + * bindings/v8/custom/V8HTMLDocumentCustom.cpp: + (WebCore::V8HTMLDocument::namedPropertyDeleter): + (WebCore::V8HTMLDocument::namedPropertyGetter): + (WebCore::V8HTMLDocument::indexedPropertyGetter): + (WebCore::V8HTMLDocument::allAccessorSetter): + (WebCore::toV8): + * html/HTMLDocument.cpp: + (WebCore::HTMLDocument::removeItemFromMap): + +2010-08-12 Gavin Barraclough <barraclough@apple.com> + + Reviewed by Sam Weinig + + Unify UString::UTF8String() & String::utf8() methods, + remove UString::cost() & make atArrayIndex a free function. + + * WebCore.xcodeproj/project.pbxproj: + * bindings/js/JSDOMWindowCustom.cpp: + (WebCore::JSDOMWindow::getOwnPropertySlot): + (WebCore::JSDOMWindow::getOwnPropertyDescriptor): + * bridge/NP_jsobject.cpp: + (_NPN_Enumerate): + * bridge/c/c_utility.cpp: + (JSC::Bindings::convertValueToNPVariant): + * bridge/jni/JNIBridge.cpp: + (JavaParameter::JavaParameter): + (JavaMethod::JavaMethod): + (JavaMethod::signature): + (JavaMethod::methodID): + * bridge/jni/JNIBridge.h: + (JSC::Bindings::JavaString::utf8): + (JSC::Bindings::JavaParameter::type): + (JSC::Bindings::JavaMethod::returnType): + * bridge/jni/jni_jsobject.mm: + (JavaJSObject::call): + (JavaJSObject::eval): + (JavaJSObject::getMember): + (JavaJSObject::setMember): + (JavaJSObject::removeMember): + (JavaJSObject::convertJObjectToValue): + * bridge/jni/jsc/JNIBridgeJSC.cpp: + (JavaField::JavaField): + (JavaField::valueFromInstance): + (JavaField::setValueToInstance): + * bridge/jni/jsc/JNIBridgeJSC.h: + (JSC::Bindings::JavaField::type): + * bridge/jni/jsc/JavaInstanceJSC.cpp: + (JavaInstance::invokeMethod): + * bridge/jni/jsc/JavaStringJSC.h: + (JSC::Bindings::JavaStringImpl::utf8): + * bridge/runtime_array.cpp: + (JSC::RuntimeArray::getOwnPropertySlot): + (JSC::RuntimeArray::getOwnPropertyDescriptor): + (JSC::RuntimeArray::put): + +2010-08-12 Gavin Barraclough <barraclough@apple.com> + + Speculative build fix for chromium bindings (someone added the old include style!). + + * bindings/v8/V8DOMWindowShell.h: + +2010-08-12 MORITA Hajime <morrita@google.com> + + Reviewed by Tony Chang. + + [Refactoring] TextEvent class has to many flags + https://bugs.webkit.org/show_bug.cgi?id=43893 + + Turned TextEvent::m_isLineBreak, TextEvent::m_isBacktab, TextEvent::m_isPaste + into single TextEvent::m_inputType enumeration. + + No functional change. No new tests. + + * dom/TextEvent.cpp: + (WebCore::TextEvent::selectInputType): + (WebCore::TextEvent::create): + (WebCore::TextEvent::createForPlainTextPaste): + (WebCore::TextEvent::createForFragmentPaste): + (WebCore::TextEvent::TextEvent): + * dom/TextEvent.h: + (WebCore::TextEvent::): + (WebCore::TextEvent::isLineBreak): + (WebCore::TextEvent::isBackTab): + (WebCore::TextEvent::isPaste): + * page/EventHandler.cpp: + (WebCore::EventHandler::handleTextInputEvent): + +2010-08-12 Kenneth Russell <kbr@google.com> + + Reviewed by David Levin. + + Delete obsolete CanvasNumberArray + https://bugs.webkit.org/show_bug.cgi?id=38619 + + Deleted unreferenced code. Built WebKit and Chromium to test. + + * Android.derived.jscbindings.mk: + * Android.derived.v8bindings.mk: + * Android.jscbindings.mk: + * Android.mk: + * bindings/js/JSCanvasNumberArrayCustom.cpp: Removed. + * html/canvas/CanvasNumberArray.cpp: Removed. + * html/canvas/CanvasNumberArray.h: Removed. + * html/canvas/CanvasNumberArray.idl: Removed. + +2010-08-12 Anton Muhin <antonm@chromium.org> + + Reviewed by Nate Chapin. + + [v8] Create callbacks for named access of elements from document object on fly. + https://bugs.webkit.org/show_bug.cgi?id=43725 + + That should speed up access to methods on document as there is no need to + consult with interceptor before invoking the method. + + This reapplies http://trac.webkit.org/changeset/60670 reverted with + http://trac.webkit.org/changeset/63845. The main difference is in treatment + of removed named elements: we don't remove an accessor any more, but leave it. + Therefore any accessor should be able to treat the case when there is no + expando property. + + * bindings/scripts/CodeGeneratorV8.pm: + * bindings/v8/ScriptController.cpp: + (WebCore::ScriptController::namedItemAdded): + (WebCore::ScriptController::namedItemRemoved): + * bindings/v8/V8DOMWindowShell.cpp: + (WebCore::checkDocumentWrapper): + (WebCore::V8DOMWindowShell::updateDocumentWrapperCache): + (WebCore::getter): + (WebCore::V8DOMWindowShell::namedItemAdded): + (WebCore::V8DOMWindowShell::namedItemRemoved): + * bindings/v8/V8DOMWindowShell.h: + * bindings/v8/V8DOMWrapper.cpp: + (WebCore::V8DOMWrapper::instantiateV8Object): + * bindings/v8/custom/V8HTMLDocumentCustom.cpp: + (WebCore::V8HTMLDocument::WrapInShadowObject): + (WebCore::V8HTMLDocument::GetNamedProperty): + (WebCore::V8HTMLDocument::allAccessorSetter): + (WebCore::toV8): + * html/HTMLDocument.cpp: + (WebCore::HTMLDocument::removeItemFromMap): + +2010-08-12 Dimitri Glazkov <dglazkov@chromium.org> + + Reviewed by Adam Barth. + + Ensure that parser doesn't attach children that have been removed by JavaScript event handlers. + https://bugs.webkit.org/show_bug.cgi?id=43813 + + This patch re-fixes bug 40742 in a way that keeps allowing HTMLLinkElement + to lazy-attach. + + * html/HTMLConstructionSite.cpp: + (WebCore::HTMLConstructionSite::attach): Added parent check. + * html/HTMLLinkElement.cpp: Basically undoes changes introduced by r61424. + * html/HTMLLinkElement.h: Ditto. + +2010-08-12 Justin Schuh <jschuh@chromium.org> + + Reviewed by Dumitru Daniliuc. + + Clear PluginData's page pointer on page refresh + https://bugs.webkit.org/show_bug.cgi?id=43888 + + Test: plugins/access-after-page-destroyed.html + + * page/Page.cpp: + (WebCore::Page::refreshPlugins): + +2010-08-12 Zhenyao Mo <zmo@google.com> + + Reviewed by Dimitri Glazkov. + + getParameter(STENCIL_VALUE_MASK) (and others) returns the wrong value + https://bugs.webkit.org/show_bug.cgi?id=31842 + + * html/canvas/WebGLRenderingContext.cpp: + (WebCore::WebGLRenderingContext::getUnsignedLongParameter): Casting from int to unsigned long correctly. + +2010-08-12 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Joseph Pecoraro. + + Web Inspector: mimic FireBug's array detection. + https://bugs.webkit.org/show_bug.cgi?id=30974 + + * inspector/front-end/InjectedScript.js: + (injectedScriptConstructor): + +2010-08-12 Zhenyao Mo <zmo@google.com> + + Reviewed by Dimitri Glazkov. + + regression in generateMipmap + https://bugs.webkit.org/show_bug.cgi?id=43873 + + * html/canvas/WebGLTexture.cpp: + (WebCore::WebGLTexture::generateMipmapLevelInfo): should set m_needToUseBlackTexture to false if generateMipmapLevelInfo runs through successfully. + +2010-08-12 Ariya Hidayat <ariya@sencha.com> + + Reviewed by David Hyatt. + + [Qt] Split TransparencyLayer into its own header file. + https://bugs.webkit.org/show_bug.cgi?id=43935 + + * WebCore.pro: Include TransparencyLayer.h. + * platform/graphics/qt/GraphicsContextQt.cpp: + * platform/graphics/qt/TransparencyLayer.h: Added. + (WebCore::TransparencyLayer::TransparencyLayer): + (WebCore::TransparencyLayer::operator=): + +2010-08-12 François Sausset <sausset@gmail.com> + + Reviewed by Beth Dakin. + + Horizontal padding should be 0 on mrow elements. + https://bugs.webkit.org/show_bug.cgi?id=43908 + + Updated tests in /mathml + + * css/mathml.css: + (mrow, mfenced): + (mfenced): + +2010-08-12 Aaron Boodman <aa@chromium.org> + + Reviewed by David Hyatt. + + Make the cascade level of "user" styles configurable + https://bugs.webkit.org/show_bug.cgi?id=43457 + + * WebCore.exp.in: + * css/CSSStyleSelector.cpp: + (WebCore::CSSStyleSelector::CSSStyleSelector): + * dom/Document.cpp: + (WebCore::Document::pageGroupUserSheets): + * page/PageGroup.cpp: + (WebCore::PageGroup::addUserStyleSheetToWorld): + * page/PageGroup.h: + * page/UserStyleSheet.h: + (WebCore::UserStyleSheet::): + (WebCore::UserStyleSheet::UserStyleSheet): + (WebCore::UserStyleSheet::level): + +2010-08-12 Jian Li <jianli@chromium.org> + + Fix qt build break. + + * html/ThreadableBlobRegistry.cpp: + (WebCore::postTaskToMainThread): + +2010-08-12 Jian Li <jianli@chromium.org> + + Reviewed by David Levin. + + Add ThreadableBlobRegistry to support calling BlobRegistry methods in + main thread. + https://bugs.webkit.org/show_bug.cgi?id=43874 + + * Android.mk: + * CMakeLists.txt: + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * dom/ScriptExecutionContext.cpp: + (WebCore::ScriptExecutionContext::~ScriptExecutionContext): + (WebCore::ScriptExecutionContext::addBlob): + (WebCore::ScriptExecutionContext::removeBlob): + (WebCore::ScriptExecutionContext::createPublicBlobURL): + (WebCore::ScriptExecutionContext::revokePublicBlobURL): + * dom/ScriptExecutionContext.h: + * html/Blob.cpp: + (WebCore::Blob::Blob): + (WebCore::Blob::~Blob): + (WebCore::Blob::contextDestroyed): + * html/Blob.h: + * html/BlobRegistryImpl.cpp: + (WebCore::BlobRegistryImpl::registerBlobURL): + (WebCore::BlobRegistryImpl::unregisterBlobURL): + (WebCore::BlobRegistryImpl::getBlobDataFromURL): + * html/ThreadableBlobRegistry.cpp: Added. + * html/ThreadableBlobRegistry.h: Added. + +2010-08-12 Csaba Osztrogonác <ossy@webkit.org> + + Reviewed by Darin Adler. + + generate-bindings.pl should generate warning free code + https://bugs.webkit.org/show_bug.cgi?id=43353 + + * bindings/scripts/CodeGeneratorJS.pm: Suggested parentheses added around && within || + +2010-08-11 Ryosuke Niwa <rniwa@webkit.org> + + Reviewed by Kent Tamura. + + merge MarkupAccumulator and MarkupAccumulatorWrapper + https://bugs.webkit.org/show_bug.cgi?id=43834 + + Removed MarkupAccumulator and added serializeNodesWithNamespaces to use MarkupAccumulatorWrapper + in both versions of createMarkup. Accumulation of nodes done manually in serializeNodes is + now done by MarkupAccumulatorWrapper as done in the original MarkupAccumulator. + + No new tests added since this is a cleanup. + + * editing/markup.cpp: + (WebCore::MarkupAccumulatorWrapper::MarkupAccumulatorWrapper): Takes vector of nodes and set it to m_nodes. + (WebCore::MarkupAccumulatorWrapper::insertOpenTag): Adds node to m_nodes. + (WebCore::MarkupAccumulatorWrapper::wrapWithNode): Adds node to m_nodes. + (WebCore::serializeNodes): Adding node to nodes is moved into MarkupAccumulatorWrapper. + (WebCore::createMarkup): Instantiates MarkupAccumulatorWrapper. + (WebCore::serializeNodesWithNamespaces): Renamed from MarkupAccumulator::appendMarkup. + +2010-08-12 Dirk Schulze <krit@webkit.org> + + Unreviewed sort of Xcode project file. + + * WebCore.xcodeproj/project.pbxproj: + +2010-08-12 Ben Murdoch <benm@google.com> + + Reviewed by Pavel Feldman. + + InspectorController.h missing InspectorObject forward declaration + https://bugs.webkit.org/show_bug.cgi?id=43913 + + Build fix so no new tests. + + * inspector/InspectorController.h: Adds the necessary forward declaration. + +2010-08-12 Hui Huang <hui.2.huang@nokia.com> + + Reviewed by Eric Seidel. + + m_windowRect is not updated because parent of PluginView is not + set when updatePluginWidget is called. plugin gets wrong window + size on setwindow. + https://bugs.webkit.org/show_bug.cgi?id=43635 + + * plugins/symbian/PluginViewSymbian.cpp: + (WebCore::PluginView::setParent): + +2010-08-12 Pavel Feldman <pfeldman@chromium.org> + + Not reviewed, re-apply r65241 and 65243. + + Web Inspector: brush up object proxies, introduce remote object model. + https://bugs.webkit.org/show_bug.cgi?id=43847 + + * WebCore.gypi: + * WebCore.vcproj/WebCore.vcproj: + * inspector/front-end/AuditRules.js: + (WebInspector.AuditRules.CssInHeadRule.prototype.doRun): + (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun): + * inspector/front-end/ConsoleView.js: + (WebInspector.ConsoleView.prototype.doEvalInWindow): + (WebInspector.ConsoleView.prototype._enterKeyPressed.printResult): + (WebInspector.ConsoleView.prototype._enterKeyPressed): + (WebInspector.ConsoleView.prototype._format): + (WebInspector.ConsoleView.prototype._formatarray): + (WebInspector.ConsoleView.prototype._formatAsArrayEntry): + (WebInspector.ConsoleMessage.prototype._format): + (WebInspector.ConsoleCommandResult): + * inspector/front-end/DOMAgent.js: + (WebInspector.DOMNode): + * inspector/front-end/ElementsPanel.js: + (WebInspector.ElementsPanel.prototype.performSearch): + * inspector/front-end/ElementsTreeOutline.js: + (WebInspector.ElementsTreeElement.prototype._createTooltipForNode): + * inspector/front-end/EventListenersSidebarPane.js: + (): + * inspector/front-end/InjectedScript.js: + (injectedScriptConstructor): + (injectedScriptConstructor.): + * inspector/front-end/ObjectPropertiesSection.js: + (WebInspector.ObjectPropertiesSection.prototype.update): + (WebInspector.ObjectPropertiesSection.prototype.updateProperties): + (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate): + (WebInspector.ObjectPropertyTreeElement.prototype.update): + (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression): + * inspector/front-end/ObjectProxy.js: Removed. + * inspector/front-end/PropertiesSidebarPane.js: + (WebInspector.PropertiesSidebarPane.prototype.update.callback): + * inspector/front-end/RemoteObject.js: Added. + (WebInspector.RemoteObjectId): + (WebInspector.RemoteObject): + (WebInspector.RemoteObject.fromPrimitiveValue): + (WebInspector.RemoteObject.fromNode): + (WebInspector.RemoteObject.fromPayload): + (WebInspector.RemoteObject.type): + (WebInspector.RemoteObject.prototype.get objectId): + (WebInspector.RemoteObject.prototype.get type): + (WebInspector.RemoteObject.prototype.get description): + (WebInspector.RemoteObject.prototype.get hasChildren): + (WebInspector.RemoteObject.prototype.isError): + (WebInspector.RemoteObject.prototype.getPropertyValueDescriptions): + (WebInspector.RemoteObject.prototype.getOwnProperties): + (WebInspector.RemoteObject.prototype.getProperties.remoteObjectBinder): + (WebInspector.RemoteObjectProperty): + * inspector/front-end/ScopeChainSidebarPane.js: + (WebInspector.ScopeChainSidebarPane.prototype.update): + * inspector/front-end/ScriptsPanel.js: + (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame.updatingCallbackWrapper): + (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame): + (WebInspector.ScriptsPanel.prototype.doEvalInCallFrame): + * inspector/front-end/SourceFrame.js: + (WebInspector.SourceFrame.prototype._showPopup.evaluateCallback): + (WebInspector.SourceFrame.prototype._showPopup): + (WebInspector.SourceFrame.prototype._evalSelectionInCallFrame): + * inspector/front-end/WatchExpressionsSidebarPane.js: + (WebInspector.WatchExpressionsSection.prototype.update): + (WebInspector.WatchExpressionTreeElement.prototype.update): + * inspector/front-end/WebKit.qrc: + * inspector/front-end/inspector.html: + * inspector/front-end/inspector.js: + (WebInspector.log.logMessage): + (WebInspector.log): + * inspector/front-end/utilities.js: + (): + +2010-08-11 Stephen White <senorblanco@chromium.org> + + Reviewed by David Levin. + + Add support for BGRA pixel format to GraphicsContext3D. + https://bugs.webkit.org/show_bug.cgi?id=43858 + + Although this has been standard in desktop GL since 1.2, it's an + extension in GL ES 2.0, so a query function is provided to check + for support. Since they differ on semantics (GL ES 2.0 requires + TexImage2D()'s format and internalFormat to match, while desktop GL + will not accept BGRA as an internalFormat), the stub implementation + returns false until these quirks have been implemented and tested on + each port. + + * platform/graphics/GraphicsContext3D.cpp: + (WebCore::GraphicsContext3D::supportsBGRA): + Add implementation for non-chromium platforms which returns false. + * platform/graphics/GraphicsContext3D.h: + (WebCore::GraphicsContext3D::): + Add query function (supportsBGRA()) and the BGRA_EXT token. + +2010-08-12 Pavel Feldman <pfeldman@chromium.org> + + Not reviewed. Rolling out r65241 and 65243 for breaking inspector tests. + +2010-08-12 Pavel Feldman <pfeldman@chromium.org> + + Not reviewed. Adding the file missing in r65241. + + * inspector/front-end/RemoteObject.js: Added. + (WebInspector.RemoteObjectId): + (WebInspector.RemoteObject): + (WebInspector.RemoteObject.fromPrimitiveValue): + (WebInspector.RemoteObject.fromNode): + (WebInspector.RemoteObject.fromPayload): + (WebInspector.RemoteObject.type): + (WebInspector.RemoteObject.prototype.get objectId): + (WebInspector.RemoteObject.prototype.get type): + (WebInspector.RemoteObject.prototype.get description): + (WebInspector.RemoteObject.prototype.get hasChildren): + (WebInspector.RemoteObject.prototype.isError): + (WebInspector.RemoteObject.prototype.getPropertyValueDescriptions): + (WebInspector.RemoteObject.prototype.getOwnProperties): + (WebInspector.RemoteObject.prototype.getProperties.remoteObjectBinder): + (WebInspector.RemoteObjectProperty): + +2010-08-12 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Yury Semikhatsky. + + Web Inspector: brush up object proxies, introduce remote object model. + https://bugs.webkit.org/show_bug.cgi?id=43847 + + * WebCore.gypi: + * WebCore.vcproj/WebCore.vcproj: + * inspector/front-end/AuditRules.js: + (WebInspector.AuditRules.CssInHeadRule.prototype.doRun): + (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun): + * inspector/front-end/ConsoleView.js: + (WebInspector.ConsoleView.prototype.doEvalInWindow): + (WebInspector.ConsoleView.prototype._enterKeyPressed.printResult): + (WebInspector.ConsoleView.prototype._enterKeyPressed): + (WebInspector.ConsoleView.prototype._format): + (WebInspector.ConsoleView.prototype._formatnode): + (WebInspector.ConsoleView.prototype._formatarray): + (WebInspector.ConsoleView.prototype._formatAsArrayEntry): + (WebInspector.ConsoleMessage.prototype._format): + (WebInspector.ConsoleCommandResult): + * inspector/front-end/DOMAgent.js: + (WebInspector.DOMNode): + * inspector/front-end/ElementsTreeOutline.js: + (WebInspector.ElementsTreeElement.prototype._createTooltipForNode): + * inspector/front-end/EventListenersSidebarPane.js: + * inspector/front-end/InjectedScript.js: + (injectedScriptConstructor): + (injectedScriptConstructor.): + * inspector/front-end/ObjectPropertiesSection.js: + (WebInspector.ObjectPropertiesSection.prototype.update): + (WebInspector.ObjectPropertiesSection.prototype.updateProperties): + (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate): + (WebInspector.ObjectPropertyTreeElement.prototype.update): + (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression): + * inspector/front-end/ObjectProxy.js: Removed. + * inspector/front-end/PropertiesSidebarPane.js: + (WebInspector.PropertiesSidebarPane.prototype.update.callback): + * inspector/front-end/RemoteObject.js: Added. + (WebInspector.RemoteObjectId): + (WebInspector.RemoteObject): + (WebInspector.RemoteObject.fromPrimitiveValue): + (WebInspector.RemoteObject.fromErrorMessage): + (WebInspector.RemoteObject.fromNode): + (WebInspector.RemoteObject.fromPayload): + (WebInspector.RemoteObject.type): + (WebInspector.RemoteObject.prototype.get objectId): + (WebInspector.RemoteObject.prototype.get type): + (WebInspector.RemoteObject.prototype.get description): + (WebInspector.RemoteObject.prototype.get hasChildren): + (WebInspector.RemoteObject.prototype.isError): + (WebInspector.RemoteObject.prototype.getPropertyValueDescriptions): + (WebInspector.RemoteObject.prototype.getOwnProperties): + (WebInspector.RemoteObject.prototype.getProperties.remoteObjectBinder): + (WebInspector.RemoteObjectProperty): + * inspector/front-end/ScopeChainSidebarPane.js: + (WebInspector.ScopeChainSidebarPane.prototype.update): + * inspector/front-end/ScriptsPanel.js: + (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame.updatingCallbackWrapper): + (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame): + (WebInspector.ScriptsPanel.prototype.doEvalInCallFrame): + * inspector/front-end/SourceFrame.js: + (WebInspector.SourceFrame.prototype._showPopup.evaluateCallback): + (WebInspector.SourceFrame.prototype._showPopup): + (WebInspector.SourceFrame.prototype._evalSelectionInCallFrame): + * inspector/front-end/WatchExpressionsSidebarPane.js: + (WebInspector.WatchExpressionsSection.prototype.update): + (WebInspector.WatchExpressionTreeElement.prototype.update): + * inspector/front-end/WebKit.qrc: + * inspector/front-end/inspector.html: + * inspector/front-end/inspector.js: + (WebInspector.log.logMessage): + (WebInspector.log): + * inspector/front-end/utilities.js: + +2010-08-12 Ben Murdoch <benm@google.com> + + Reviewed by Steve Block. + + V8 code generator does not add V8BindingMacros.h include in all places it is needed + https://bugs.webkit.org/show_bug.cgi?id=43907 + + Adds the V8BindingMacros.h header before using the STRING_TO_V8PARAMETER_EXCEPTION_BLOCK + macro. + + Build fix so no new tests. + + * bindings/scripts/CodeGeneratorV8.pm: include the header at the right time. + +2010-08-12 Jeremy Orlow <jorlow@chromium.org> + + Revert for now + https://bugs.webkit.org/show_bug.cgi?id=43794 + + * Android.mk: + * CMakeLists.txt: + * GNUmakefile.am: + * WebCore.exp.in: + * WebCore.gypi: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * page/GroupSettings.cpp: Removed. + * page/GroupSettings.h: Removed. + * page/PageGroup.cpp: + (WebCore::PageGroup::PageGroup): + (WebCore::PageGroup::localStorage): + * page/PageGroup.h: + * page/Settings.cpp: + (WebCore::Settings::Settings): + (WebCore::Settings::setLocalStorageQuota): + (WebCore::Settings::setLocalStorageDatabasePath): + * page/Settings.h: + (WebCore::Settings::localStorageQuota): + (WebCore::Settings::localStorageDatabasePath): + +2010-08-12 Nikolas Zimmermann <nzimmermann@rim.com> + + Not reviewed. Follow up to Jeremys fix, just remove the context parameter, it's not needed anymore. + + * rendering/RenderSVGResourceGradient.cpp: + (WebCore::createMaskAndSwapContextForTextGradient): + * rendering/RenderSVGResourceMasker.cpp: + (WebCore::RenderSVGResourceMasker::applyResource): + * rendering/SVGImageBufferTools.cpp: + (WebCore::SVGImageBufferTools::createImageBuffer): + * rendering/SVGImageBufferTools.h: + +2010-08-12 Jeremy Orlow <jorlow@chromium.org> + + Build fix. + + * rendering/SVGImageBufferTools.cpp: + (WebCore::SVGImageBufferTools::createImageBuffer): + +2010-08-12 Nikolas Zimmermann <nzimmermann@rim.com> + + Reviewed by Dirk Schulze. + + SVG masking performance very slow + https://bugs.webkit.org/show_bug.cgi?id=43622 + + Create ImageBuffers only as large as the final rendered size on screen. Only gradient on text on CG handled this correctly so far. + Refactored the code into a new SVGImageBufferTools class, and use the code from RenderSVGResourceMasker -> makes the IE9 demo SVG dice usable. + Clippers, Patterns and Filters remain to be converted. + + Test: svg/zoom/page/zoom-mask-with-percentages.svg + + * Android.mk: Add SVGImageBufferTools.* to build. + * CMakeLists.txt: Ditto. + * GNUmakefile.am: Ditto. + * WebCore.gypi: Ditto. + * WebCore.pro: Ditto. + * WebCore.xcodeproj/project.pbxproj: Ditto. + * rendering/RenderSVGAllInOne.cpp: Ditto. + * rendering/RenderSVGResourceGradient.cpp: Refactored CG gradient specific "create image buffer in absolute coordinates" code into SVGImageBufferTools class. + (WebCore::createMaskAndSwapContextForTextGradient): + (WebCore::clipToTextMask): + (WebCore::RenderSVGResourceGradient::applyResource): + * rendering/RenderSVGResourceMasker.cpp: Use new SVGImageBufferTools class, to avoid pixelation when zooming and to create image buffers as big as the final rendered size on screen, not more. + (WebCore::RenderSVGResourceMasker::invalidateClients): + (WebCore::RenderSVGResourceMasker::applyResource): + (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage): + (WebCore::RenderSVGResourceMasker::calculateMaskContentRepaintRect): + (WebCore::RenderSVGResourceMasker::resourceBoundingBox): + * rendering/RenderSVGResourceMasker.h: + * rendering/SVGImageBufferTools.cpp: Added. + (WebCore::SVGImageBufferTools::absoluteTransformFromContext): + (WebCore::SVGImageBufferTools::createImageBuffer): + (WebCore::SVGImageBufferTools::clipToImageBuffer): + * rendering/SVGImageBufferTools.h: Added. + (WebCore::SVGImageBufferTools::SVGImageBufferTools): + (WebCore::SVGImageBufferTools::~SVGImageBufferTools): + +2010-08-10 Jeremy Orlow <jorlow@chromium.org> + + Reviewed by Adam Barth. + + Some settings are linked to the PageGroup not the Page. Create a new class for those. + https://bugs.webkit.org/show_bug.cgi?id=43794 + + Since persistient storage is shared between pages, there's no way to modify + some settings related to it on a per page basis. As such, it's not technically + correct for these settings to be on the Page's settings. Create a new class + called GroupSettings, move the 2 group-wide local storage settings there, and + add a new setting for IndexedDB's path (which is prompting this change). + + No behavior has changed, so no tests. + + * Android.mk: + * CMakeLists.txt: + * GNUmakefile.am: + * WebCore.exp.in: + * WebCore.gypi: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * page/PageGroup.cpp: + (WebCore::PageGroup::PageGroup): + (WebCore::PageGroup::localStorage): + * page/PageGroup.h: + (WebCore::PageGroup::groupSettings): + * page/Settings.cpp: + (WebCore::Settings::Settings): + (WebCore::Settings::setSessionStorageQuota): + * page/Settings.h: + +2010-08-12 Benjamin Poulain <benjamin.poulain@nokia.com> + + Reviewed by Simon Hausmann. + + [Qt] Decode images directly to QPixmap + https://bugs.webkit.org/show_bug.cgi?id=40797 + + Use the new API of Qt 4.7 to decode data from the image + reader directly to QPixmap. + + This allow us to use JDCT_IFAST when decoding jpeg images + to pixmap, and to decode animated GIF images, while still + using in-place conversion of color space. + + * platform/graphics/qt/ImageDecoderQt.cpp: + (WebCore::ImageDecoderQt::setData): + (WebCore::ImageDecoderQt::internalHandleCurrentImage): + +2010-07-14 Marcus Bulach <bulach@chromium.org> + + Reviewed by darin@apple.com. + + Removes DontCheckEnums from some IDLs and fixes the corresponding enums. + https://bugs.webkit.org/show_bug.cgi?id=42278 + + This is a follow-up to https://bugs.webkit.org/show_bug.cgi?id=42250: it fixes some IDL/.h and enables generating compile-time checks for enums. + + Tests: idls should generate valid code. + + * dom/Node.h: + (WebCore::Node::): + * dom/Node.idl: + * dom/OverflowEvent.h: + (WebCore::OverflowEvent::): + * dom/OverflowEvent.idl: + * html/FileReader.cpp: + (WebCore::FileReader::readyState): + * html/FileReader.h: + (WebCore::FileReader::): + * html/FileReader.idl: + +2010-08-12 Alejandro G. Castro <alex@igalia.com> + + Reviewed by David Levin. + + The #if clause enabling a feature should avoid the all includes of + the feature + https://bugs.webkit.org/show_bug.cgi?id=43866 + + Modified the position of the guard to avoid including all the + headers if the feature controlling the guard is not enabled. + + * dom/make_names.pl: + +2010-08-12 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r65221. + http://trac.webkit.org/changeset/65221 + https://bugs.webkit.org/show_bug.cgi?id=43896 + + Broke snow leopard build. (Requested by dave_levin on + #webkit). + + * platform/graphics/GraphicsContext3D.cpp: + * platform/graphics/GraphicsContext3D.h: + (WebCore::GraphicsContext3D::): + +2010-08-11 Stephen White <senorblanco@chromium.org> + + Reviewed by David Levin. + + Add support for BGRA pixel format to GraphicsContext3D. + https://bugs.webkit.org/show_bug.cgi?id=43858 + + Although this has been standard in desktop GL since 1.2, it's an + extension in GL ES 2.0, so a query function is provided to check + for support. Since they differ on semantics (GL ES 2.0 requires + TexImage2D()'s format and internalFormat to match, while desktop GL + will not accept BGRA as an internalFormat), the stub implementation + returns false until these quirks have been implemented and tested on + each port. + + * platform/graphics/GraphicsContext3D.cpp: + (WebCore::GraphicsContext3D::supportsBGRA): + Add implementation for non-chromium platforms which returns false. + * platform/graphics/GraphicsContext3D.h: + (WebCore::GraphicsContext3D::): + Add query function (supportsBGRA()) and the BGRA_EXT token. + +2010-08-11 Satish Sampath <satish@chromium.org> + + Reviewed by Kent Tamura. + + Handle clicks and recognition events for the speech input button + https://bugs.webkit.org/show_bug.cgi?id=43857 + + * rendering/RenderInputSpeech.cpp: + (WebCore::RenderInputSpeech::paintInputFieldSpeechButton): Selects the image based on current state. + * rendering/TextControlInnerElements.cpp: + (WebCore::InputFieldSpeechButtonElement::InputFieldSpeechButtonElement): + (WebCore::InputFieldSpeechButtonElement::defaultEventHandler): + (WebCore::InputFieldSpeechButtonElement::set_state): Switch to a new state and update the UI. + (WebCore::InputFieldSpeechButtonElement::didCompleteRecording): + (WebCore::InputFieldSpeechButtonElement::didCompleteRecognition): + * rendering/TextControlInnerElements.h: + (WebCore::InputFieldSpeechButtonElement::): + (WebCore::InputFieldSpeechButtonElement::state): + +2010-08-11 Fumitoshi Ukai <ukai@chromium.org> + + Reviewed by Alexey Proskuryakov. + + REGRESSION(65135): format specifier warnings + https://bugs.webkit.org/show_bug.cgi?id=43876 + + * websockets/WebSocketChannel.cpp: + (WebCore::WebSocketChannel::appendToBuffer): cast size_t to unsigned long for %lu. + (WebCore::WebSocketChannel::processBuffer): cast size_t to unsigned long for %lu. + +2010-08-11 Kevin Ollivier <kevino@theolliviers.com> + + [wx] Build fix, don't generate WebDOMEventTarget.h/.cpp as we use the ones in bindings/cpp. + + * DerivedSources.make: + +2010-08-11 Tony Gentilcore <tonyg@chromium.org> + + Reviewed by Adam Barth. + + Make PendingScript copyable so that it can be stored in containers + https://bugs.webkit.org/show_bug.cgi?id=43875 + + This will be useful for storing PendingScripts in a Vector or Deque for + async and defer scripts. + + No new tests because no functional changes. + + * dom/PendingScript.h: + (WebCore::PendingScript::PendingScript): + (WebCore::PendingScript::operator=): + +2010-08-11 Victoria Kirst <vrk@google.com> + + Reviewed by David Levin. + + Fixing a regression in the UI for Mac default audio/video controls. + https://bugs.webkit.org/show_bug.cgi?id=43750 + + * rendering/RenderThemeChromiumMac.h: + * rendering/RenderThemeChromiumMac.mm: + (WebCore::RenderThemeChromiumMac::paintMediaVolumeSliderContainer): + (WebCore::RenderThemeChromiumMac::paintMediaSliderThumb): + (WebCore::RenderThemeChromiumMac::volumeSliderOffsetFromMuteButton): + +2010-08-11 Adam Barth <abarth@webkit.org> + + Reviewed by Eric Seidel. + + HTML TreeBuilder hits ASSERT in fragment case with insertAdjacentHTML and colgroup + https://bugs.webkit.org/show_bug.cgi?id=43758 + + This patch conditionalizes some LegacyHTMLTreeBuilder-specific code in + HTMLElement::createContextualFragment that interferes with the new + HTMLTreeBuilder. Doing that exposes the above ASSERT, which I've fixed + in this patch too. Fixing that ASSERT involved a small refactoring in + ExternalCharacterTokenBuffer. + + * html/HTMLElement.cpp: + (WebCore::HTMLElement::createContextualFragment): + * html/HTMLTreeBuilder.cpp: + (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::skipLeadingWhitespace): + (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeLeadingWhitespace): + (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeLeadingNonWhitespace): + (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::skipLeading): + (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeLeading): + (WebCore::HTMLTreeBuilder::processCharacterBuffer): + +2010-08-11 Adam Barth <abarth@webkit.org> + + Reviewed by Eric Seidel. + + Conditionalize wrong fragment parsing code to pass more HTML5lib tests + https://bugs.webkit.org/show_bug.cgi?id=43877 + + This code exists to support the LegacyHTMLTreeBuilder. Unfortunately, + it causes problems for the new HTMLTreeBuilder (which is more + self-contained). + + * dom/Element.cpp: + (WebCore::Element::createContextualFragment): + +2010-08-11 Ryosuke Niwa <rniwa@webkit.org> + + Reviewed by Tony Chang. + + Can't unbold text in div in font-weight span + https://bugs.webkit.org/show_bug.cgi?id=26871 + + The bug was caused by removeInlineStyle not being able to include styled inline nodes around the start. + Solved this problem by pushing down all inline styles instead of just text-decorations. + This approach allows removeInlineStyle to remove styled ancestors properly and generates compact markups. + + Test: editing/style/push-down-inline-styles.html + + * editing/ApplyStyleCommand.cpp: + (WebCore::ApplyStyleCommand::removeCSSStyle): No longer removes attributes or node when mode == RemoveNone. + (WebCore::ApplyStyleCommand::highestAncestorWithConflictingInlineStyle): Calls shouldRemoveInlineStyleFromElement + to determine the highest ancestor whose style needs to be pushed down. + (WebCore::ApplyStyleCommand::extractInlineStyleToPushDown): Renamed from extractTextDecorationStyle. + Extracts all inline CSS properties specified instead of just text decorations. + (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown): Renamed from applyTextDecorationStyle. + Applies inline styles using addInlineStyleIfNeeded or adds inline CSS values. + (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): Renamed from pushDownTextDecorationStyleAroundNode. + (WebCore::ApplyStyleCommand::removeInlineStyle): Calls pushDownTextDecorationStyleAroundNode. + * editing/ApplyStyleCommand.h: + * editing/DeleteSelectionCommand.cpp: + (WebCore::DeleteSelectionCommand::mergeParagraphs): Prevents moveParagraph from preserving + the style of an empty paragraph when merged with the previous paragraph because we don't use that style anyways. + +2010-08-11 Julien Chaffraix <jchaffraix@codeaurora.org> + + Reviewed by Ariya Hidayat. + + Remove dead code in CSSStyleSelector. + https://bugs.webkit.org/show_bug.cgi?id=43805 + + * css/CSSStyleSelector.cpp: Remove some debugging code that + was compiled out. + +2010-08-11 Chris Fleizach <cfleizach@apple.com> + + Reviewed by Beth Dakin. + + AX: isNativeCheckbox does not work as advertised + https://bugs.webkit.org/show_bug.cgi?id=43872 + + Test: platform/mac/accessibility/native-vs-nonnative-checkboxes.html + + * accessibility/AccessibilityRenderObject.cpp: + (WebCore::AccessibilityRenderObject::isInputImage): + Only say it's an input image if its role has not been overriden + (WebCore::AccessibilityRenderObject::isNativeCheckboxOrRadio): + * dom/InputElement.h: + Add methods to query if it's a checkbox or radio button type element. + * html/HTMLInputElement.h: + (WebCore::HTMLInputElement::isCheckbox): + +2010-08-11 Kenneth Russell <kbr@google.com> + + Reviewed by David Levin. + + Remove obsolete WebGLArray type names + https://bugs.webkit.org/show_bug.cgi?id=43885 + + Deleted aliases to obsolete WebGLArray type names. Updated + affected layout tests, synchronizing them with the versions in the + Khronos repository where appropriate. Ran all layout tests. + + * bindings/js/JSDOMWindowCustom.cpp: + * page/DOMWindow.idl: + +2010-08-11 Steve Block <steveblock@google.com> + + Reviewed by David Levin. + + [chromium] Geolocation breaks the compile if ENABLE_GEOLOCATION is set to 0 + https://bugs.webkit.org/show_bug.cgi?id=43753 + + This change guards the entire contents of the V8 custom bindings files + with ENABLE(GEOLOCATION) to match JSC. + + No new tests, build fix only. + + * bindings/v8/custom/V8CustomPositionCallback.cpp: + * bindings/v8/custom/V8CustomPositionErrorCallback.cpp: + * bindings/v8/custom/V8GeolocationCustom.cpp: + +2010-08-11 Kwang Yul Seo <skyul@company100.net> + + Reviewed by David Levin. + + Include <wtf/UnusedParam.h> in GraphicsContextSkia.cpp + https://bugs.webkit.org/show_bug.cgi?id=43843 + + wtf/UnusedParam.h must be included because UNUSED_PARAM macro is used. + + * platform/graphics/skia/GraphicsContextSkia.cpp: + +2010-08-11 Nico Weber <thakis@chromium.org> + + Reviewed by David Levin. + + [chromium/mac]: Fix colors in compositing mode + https://bugs.webkit.org/show_bug.cgi?id=43823 + + The textures are drawn by opengl, which doesn't do any color space + correction -- it assumes everything is in the device color space + already. Hence, when drawing into the memory that will be uploaded + as opengl texture, use the device color space. + + * platform/graphics/chromium/ImageLayerChromium.cpp: + (WebCore::ImageLayerChromium::updateTextureContents): + * platform/graphics/chromium/LayerChromium.cpp: + (WebCore::LayerChromium::updateTextureContents): + * platform/graphics/chromium/LayerRendererChromium.cpp: + (WebCore::LayerRendererChromium::setRootLayerCanvasSize): + +2010-08-11 Kenneth Russell <kbr@google.com> + + Reviewed by Dimitri Glazkov. + + Remove obsolete texImage2D and texSubImage2D entry points + https://bugs.webkit.org/show_bug.cgi?id=40320 + + No new tests; covered by existing WebGL tests. + + * html/canvas/WebGLRenderingContext.cpp: + * html/canvas/WebGLRenderingContext.h: + * html/canvas/WebGLRenderingContext.idl: + +2010-08-11 Gavin Barraclough <barraclough@apple.com> + + Windows build fix. + + * platform/win/BString.cpp: + (WebCore::BString::BString): + +2010-08-11 Gavin Barraclough <barraclough@apple.com> + + Qt build fix II. + + * WebCore.xcodeproj/project.pbxproj: + * bridge/qt/qt_runtime.cpp: + (JSC::Bindings::convertValueToQVariant): + +2010-08-11 Gavin Barraclough <barraclough@apple.com> + + Qt build fix. + + * WebCore.xcodeproj/project.pbxproj: + * bridge/qt/qt_runtime.cpp: + (JSC::Bindings::convertValueToQVariant): + +2010-08-11 Steve Block <steveblock@google.com> + + Reviewed by Jeremy Orlow. + + Need EmptyDeviceOrientationClient and EmptyDeviceMotionClient for use with SVGImage + https://bugs.webkit.org/show_bug.cgi?id=43848 + + Tested by existing DeviceOrientation tests. + + * loader/EmptyClients.h: + (WebCore::EmptyDeviceMotionClient::setController): + (WebCore::EmptyDeviceMotionClient::startUpdating): + (WebCore::EmptyDeviceMotionClient::stopUpdating): + (WebCore::EmptyDeviceMotionClient::currentDeviceMotion): + (WebCore::EmptyDeviceOrientationClient::setController): + (WebCore::EmptyDeviceOrientationClient::startUpdating): + (WebCore::EmptyDeviceOrientationClient::stopUpdating): + (WebCore::EmptyDeviceOrientationClient::lastOrientation): + * svg/graphics/SVGImage.cpp: + (WebCore::SVGImage::dataChanged): + +2010-08-11 Rob Buis <rwlbuis@gmail.com> + + Reviewed by Dan Bernstein. + + https://bugs.webkit.org/show_bug.cgi?id=42042 + An empty value for xml:lang isn't considered + + Revert last line change of my patch ; it happens to + behave correctly and same as before, but makes the + use case of empty values unneededly slower. + + No new tests. (No change in behavior) + + * css/CSSStyleSelector.cpp: + (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): + +2010-08-11 Kevin Ollivier <kevino@theolliviers.com> + + [wx, WebDOM] Build fix. Fix callback params and WebCore::String -> WTF::String fixes. + + * bindings/cpp/WebDOMCustomVoidCallback.cpp: Added. + (WebDOMCustomVoidCallback::WebDOMCustomVoidCallback): + (WebDOMCustomVoidCallback::~WebDOMCustomVoidCallback): + (WebDOMCustomVoidCallback::handleEvent): + (toWebCore): + * bindings/cpp/WebDOMCustomVoidCallback.h: Added. + (WebDOMCustomVoidCallback::create): + * bindings/cpp/WebDOMHTMLDocumentCustom.cpp: + (documentWrite): + * bindings/cpp/WebDOMString.cpp: + (WebDOMString::equals): + * bindings/scripts/CodeGeneratorCPP.pm: + * bindings/scripts/test/CPP/WebDOMTestCallback.cpp: + (WebDOMTestCallback::callbackWithClass1Param): + (WebDOMTestCallback::callbackWithClass2Param): + (WebDOMTestCallback::callbackWithNonBoolReturnType): + * bindings/scripts/test/CPP/WebDOMTestObj.cpp: + * bindings/scripts/test/V8/V8TestInterface.h: + * bindings/scripts/test/V8/V8TestObj.h: + * wscript: + +2010-08-11 Gavin Barraclough <barraclough@apple.com> + + Rubber stamps by Darin Adler & Sam Weinig. + + Bug 43867 - Some UString cleanup + + Change JSC::UString data(), size(), and from(), to characters(), length(), and number() to match WTF::String. + Move string concatenation methods to a new header to simplify down UString.h. Remove is8Bit(). + + * WebCore.xcodeproj/project.pbxproj: + * bindings/js/JSCSSStyleDeclarationCustom.cpp: + (WebCore::hasCSSPropertyNamePrefix): + (WebCore::cssPropertyName): + * bindings/js/JSLocationCustom.cpp: + (WebCore::JSLocation::setPort): + * bindings/js/ScriptDebugServer.cpp: + (WebCore::ScriptDebugServer::dispatchDidParseSource): + * bindings/js/ScriptString.h: + (WebCore::ScriptString::size): + * bindings/js/ScriptValue.cpp: + (WebCore::jsToInspectorValue): + * bindings/objc/WebScriptObject.mm: + (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]): + * bridge/jni/jni_jsobject.mm: + (JavaJSObject::convertValueToJObject): + * bridge/jni/jsc/JNIUtilityPrivate.cpp: + (JSC::Bindings::convertArrayInstanceToJavaArray): + (JSC::Bindings::convertValueToJValue): + * bridge/objc/objc_runtime.mm: + (JSC::Bindings::callObjCFallbackObject): + +2010-08-10 David Hyatt <hyatt@apple.com> + + Reviewed by Dan Bernstein. + + https://bugs.webkit.org/show_bug.cgi?id=43806, add ability to paginate screen content. + + Add a new boolean to Document to indicate that content should be paginated. This is checked when doing page breaks + and in a couple of other cases. + + * dom/Document.cpp: + (WebCore::Document::Document): + * dom/Document.h: + (WebCore::Document::paginatedForScreen): + (WebCore::Document::setPaginatedForScreen): + (WebCore::Document::paginated): + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::paintChildren): + (WebCore::RenderBlock::calcColumnWidth): + * rendering/RenderBox.cpp: + (WebCore::RenderBox::calcHeight): + * rendering/RenderView.cpp: + (WebCore::RenderView::paint): + +2010-08-11 Adam Barth <abarth@webkit.org> + + Windows build fix. Turns out we need to unconditionally include + HTMLEntityNames.cpp now that LegacyHTMLDocumentParser doesn't exist. + + * html/HTMLEntityParser.cpp: + +2010-08-11 Eric Carlson <eric.carlson@apple.com> + + Reviewed by Darin Adler. + + Inserting a <source> element should immediately set networkState to NETWORK_NO_SOURCE. + https://bugs.webkit.org/show_bug.cgi?id=42897 + + A <source> element inserted as a child of a media element with a networkState of NETWORK_EMPTY + should cause the networkState to immediately change to NETWORK_NO_SOURCE. + + * WebCore.xcodeproj/project.pbxproj: + * html/HTMLMediaElement.cpp: + (WebCore::HTMLMediaElement::HTMLMediaElement): Remove unused variable m_processingLoad. + (WebCore::HTMLMediaElement::prepareForLoad): Set m_networkState to NETWORK_NO_SOURCE. + (WebCore::HTMLMediaElement::loadInternal): Remove unused variable m_processingLoad. + (WebCore::HTMLMediaElement::selectMediaResource): No need to change m_networkState, it was done in prepareForLoad. + * html/HTMLMediaElement.h: + + * html/HTMLSourceElement.cpp: + (WebCore::HTMLSourceElement::insertedIntoTree): Renamed from insertedIntoDocument because we want + to do this setup whether or not the parent media element is in the document. + * html/HTMLSourceElement.h: + +2010-08-11 Adam Barth <abarth@webkit.org> + + Rubber-stamped by Eric Seidel. + + Delete LegacyHTMLDocumentParser and LegacyPreloadScanner + https://bugs.webkit.org/show_bug.cgi?id=43836 + + These classes are bit-rotting disturbingly quickly. We removed the + last dependencies on these classes and so we can remove them. + + We might need to preserve some of their particular quirks to handle + some legacy applications, but our current thinking is to do that with + individual settings that affect the new parser. + + * Android.mk: + * CMakeLists.txt: + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * dom/Document.cpp: + * dom/DocumentFragment.cpp: + (WebCore::DocumentFragment::parseHTML): + * dom/DocumentParser.h: + * dom/XMLDocumentParserLibxml2.cpp: + * dom/XMLDocumentParserQt.cpp: + * html/HTMLConstructionSite.cpp: + * html/HTMLDocument.cpp: + (WebCore::HTMLDocument::createParser): + * html/HTMLEntityParser.cpp: + (WebCore::decodeNamedEntity): + * html/HTMLEntityParser.h: + * html/HTMLFormControlElement.cpp: + * html/HTMLTreeBuilder.cpp: + * html/HTMLViewSourceDocument.cpp: + (WebCore::HTMLViewSourceDocument::createParser): + * html/LegacyHTMLDocumentParser.cpp: Removed. + * html/LegacyHTMLDocumentParser.h: Removed. + * html/LegacyHTMLTreeBuilder.cpp: + * html/LegacyPreloadScanner.cpp: Removed. + * html/LegacyPreloadScanner.h: Removed. + * loader/FTPDirectoryDocument.cpp: + (WebCore::FTPDirectoryDocumentParser::FTPDirectoryDocumentParser): + (WebCore::FTPDirectoryDocumentParser::appendEntry): + (WebCore::FTPDirectoryDocumentParser::createTDForFilename): + (WebCore::processFilesizeString): + (WebCore::wasLastDayOfMonth): + (WebCore::processFileDateString): + (WebCore::FTPDirectoryDocumentParser::parseAndAppendOneLine): + (WebCore::FTPDirectoryDocumentParser::loadDocumentTemplate): + (WebCore::FTPDirectoryDocumentParser::createBasicDocument): + (WebCore::FTPDirectoryDocumentParser::append): + (WebCore::FTPDirectoryDocumentParser::finish): + * page/XSSAuditor.cpp: + (WebCore::XSSAuditor::decodeHTMLEntities): + * page/XSSAuditor.h: + * platform/text/SegmentedString.cpp: + (WebCore::SegmentedString::prepend): + +2010-08-11 Chris Jerdonek <cjerdonek@webkit.org> + + Reviewed by Adam Barth. + + Refactored FrameLoader::createWindow() out of the FrameLoader class + since FrameLoader should not be responsible for creating windows. + + https://bugs.webkit.org/show_bug.cgi?id=39156 + + No new functionality, so no new tests. + + * bindings/generic/BindingDOMWindow.h: + (WebCore::::createWindow): + - Updated the call to FrameLoader's createWindow(). + * bindings/js/JSDOMWindowCustom.cpp: + (WebCore::createWindow): + - Updated the call to FrameLoader's createWindow(). + * loader/FrameLoader.cpp: + (WebCore::createWindowFromFrameLoader): + - Made FrameLoader::createWindow() non-member, non-friend and changed it + to accept Frame* parameters instead of FrameLoader*. + * loader/FrameLoader.h: + - Updated the header file to reflect the above change to FrameLoader.cpp. + +2010-08-11 Ilya Tikhonovsky <loislo@chromium.org> + + Reviewed by Pavel Feldman. + + WebInspector: small refactoring for CodeGeneratorInspector. + all "notify" methods are generating in InspectorFrontend + the other methods are generating in InspectorBackend. + https://bugs.webkit.org/show_bug.cgi?id=43849 + + * inspector/CodeGeneratorInspector.pm: + +2010-08-11 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> + + Reviewed by Xan Lopez. + + [GTK] Misc improvements to the scrolling code + https://bugs.webkit.org/show_bug.cgi?id=41926 + + Refactor code that uses deprecated ways of dealing with the + adjustments to use the GtkVersioning infrastructure. + + * GNUmakefile.am: + * platform/gtk/GtkVersioning.cpp: Added. + * platform/gtk/GtkVersioning.h: + * platform/gtk/ScrollViewGtk.cpp: + * platform/gtk/ScrollbarGtk.cpp: + (ScrollbarGtk::detachAdjustment): + (ScrollbarGtk::updateThumbPosition): + (ScrollbarGtk::updateThumbProportion): + +2010-08-11 Nate Chapin <japhet@chromium.org> + + Chromium mac build fix (variables weren't being initialized). + + * platform/graphics/filters/FEGaussianBlur.cpp: + (WebCore::FEGaussianBlur::apply): Initalize dxLeft, dxRight, dyLeft, dyRight. + +2010-08-11 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Yury Semikhatsky. + + Web Inspector: apply correct fix to storage panel status bar buttons. + + https://bugs.webkit.org/show_bug.cgi?id=43846 + + * inspector/front-end/DatabaseTableView.js: + (WebInspector.DatabaseTableView.prototype.get statusBarItems): + * inspector/front-end/StoragePanel.js: + (WebInspector.StoragePanel.prototype._genericViewSetup): + +2010-08-11 Kevin Ollivier <kevino@theolliviers.com> + + Reviewed by Adam Barth. + + Override operator= for C++ DOM binding classes with private structs + and update C++ DOM bindings test results. + https://bugs.webkit.org/show_bug.cgi?id=43735 + + * bindings/cpp/WebDOMEventTarget.cpp: + (WebDOMEventTarget::operator=): + * bindings/cpp/WebDOMEventTarget.h: + * bindings/scripts/CodeGeneratorCPP.pm: + * bindings/scripts/test/CPP/WebDOMTestCallback.cpp: + (WebDOMTestCallback::operator=): + * bindings/scripts/test/CPP/WebDOMTestCallback.h: + * bindings/scripts/test/CPP/WebDOMTestInterface.cpp: + (WebDOMTestInterface::operator=): + * bindings/scripts/test/CPP/WebDOMTestInterface.h: + * bindings/scripts/test/CPP/WebDOMTestObj.cpp: + (WebDOMTestObj::operator=): + * bindings/scripts/test/CPP/WebDOMTestObj.h: + +2010-08-11 Julie Parent <jparent@chromium.org> + + Reviewed by Justin Garcia. + + Crash in replaceSelectionCommand with RTL text. + https://bugs.webkit.org/show_bug.cgi?id=41485 + + For text with mixed directionality, sort the text boxes before + computing gaps, since that code assumes the boxes are in order. + + Test: editing/execCommand/insert-image-on-top-of-directional-text.html + + * editing/CompositeEditCommand.cpp: + (WebCore::CompositeEditCommand::deleteInsignificantText): Sort boxes + like we do in TextIterator before computing gaps. + * editing/TextIterator.cpp: + (WebCore::TextIterator::handleTextNode): Use new compareByStart + rather than compareBoxStart. No functional change. + * rendering/InlineTextBox.h: + (WebCore::InlineTextBox::compareByStart): Moved compareBoxStart + from TextIterator here so it can be used in multiple places. + +2010-08-11 Fumitoshi Ukai <ukai@chromium.org> + + Unreviewed build fix of Leopard Intel Debug (Build) + + * websockets/WebSocketChannel.cpp: + (WebCore::WebSocketChannel::processBuffer): use %lu, instead of %ul + +2010-08-11 Alejandro G. Castro <alex@igalia.com> + + Reviewed by Dirk Schulze. + + Fixes to the gaussian blur algorithm + https://bugs.webkit.org/show_bug.cgi?id=41605 + + Added the recomendations of SVG regarding the kernel size + calculation for the approximation of the gaussian + blur. http://www.w3.org/TR/SVG/filters.html#feGaussianBlurElement. + Modified also some variable names to clarify algorithm, reviewed + the situation where both standard deviations are 0. + + * platform/graphics/filters/FEGaussianBlur.cpp: + (WebCore::FEGaussianBlur::FEGaussianBlur): + (WebCore::FEGaussianBlur::stdDeviationX): + (WebCore::FEGaussianBlur::setStdDeviationX): + (WebCore::FEGaussianBlur::stdDeviationY): + (WebCore::FEGaussianBlur::setStdDeviationY): + (WebCore::boxBlur): + (WebCore::FEGaussianBlur::kernelPosition): Added the SVG kernel + position recomendation. + (WebCore::FEGaussianBlur::apply): + (WebCore::FEGaussianBlur::externalRepresentation): + * platform/graphics/filters/FEGaussianBlur.h: + +2010-08-11 Kristian Monsen <kristianm@google.com> + + Reviewed by Steve Block. + + Compile fix for Android, added include for <wtf/text/Cstring.h, this + did not get included in Android. + https://bugs.webkit.org/show_bug.cgi?id=41517 + + Build fix only, no new tests. + + * page/PrintContext.cpp: + +2010-08-11 Fumitoshi Ukai <ukai@chromium.org> + + Reviewed by Alexey Proskuryakov. + + Fix length calculation to be more robust. + https://bugs.webkit.org/show_bug.cgi?id=43777 + + Test: websocket/tests/frame-length-overflow.html + + * websockets/WebSocketChannel.cpp: + (WebCore::WebSocketChannel::appendToBuffer): len is size_t. + - add sanity check for integer wraps. + (WebCore::WebSocketChannel::skipBuffer): len is size_t. + (WebCore::WebSocketChannel::processBuffer): length is size_t. + - add sanity check for integer wraps. + * websockets/WebSocketChannel.h: change m_bufferSize and len to size_t. + +2010-08-10 Eric Seidel <eric@webkit.org> + + Reviewed by Adam Barth. + + Fix three ASSERTs hit with the HTML5 TreeBuilder in fragment mode + https://bugs.webkit.org/show_bug.cgi?id=43762 + + In fixing the insertAdjacentHTML I had to make small changes to + the error logic, which ended up bringing us closer to HTML5. + + Test: fast/dom/HTMLElement/insertAdjacentHTML-errors.html + + * html/HTMLConstructionSite.cpp: + (WebCore::HTMLConstructionSite::attach): + - This ASSERT was just wrong, the child should not be attached + in the case the parent is not attached. + * html/HTMLElement.cpp: + (WebCore::contextElementForInsertion): + - This is part of HTML5, needed to know what to call the + HTML or XML parsers with. The previous code always passed + "this" which is wrong in the case of beforeBegin or afterEnd insertion. + (WebCore::HTMLElement::insertAdjacentHTML): + - Use the right contextElement now that we know how to compute it. + * html/HTMLTreeBuilder.cpp: + (WebCore::HTMLTreeBuilder::processEndTagForInCell): + - This ASSERT is direct from the spec, but it's wrong, so I've filed a spec bug. + +2010-08-11 Adam Barth <abarth@webkit.org> + + Attempt to fix Windows build. + + * platform/win/COMPtr.h: + (WTF::): + +2010-08-11 Adam Barth <abarth@webkit.org> + + Reviewed by Eric Seidel. + + Port view-source to new parser + https://bugs.webkit.org/show_bug.cgi?id=43746 + + This patch switches the view-source mode for frames over to using the + new HTML parsing infrastructure. This patch is an architectural change + to how we parser view source documents. + + Previously, the LegacyHTMLDocumentParser would output a "guide string" + that consided of the inter-attribute whitespace and various "control" + characters. The HTMLViewSourceDocument would then interpret this guide + string to approximately reconstruct the source of the original document + and colorize various syntatic constructs. + + Unfortunately, that approach is inherently low-fidelity. It's not + really feasible to reconstruct the input document from the token + stream. The old view source mode also had a number of hacks in the old + parser (e.g., to turn of decoding of HTML entities). + + Instead of trying to reconstruct the original document from the token + stream, we use the segmentation information given by the tokens to + colorize the input document itself. Each token now caries information + about where in the input stream it came from and where various + subcomponents (e.g., attribute names and values) are located. This + approach is higher fidelity because we use this segmentation + information to colorize the original input instead of attempting to + reconstruct the original input. + + * Android.mk: + * CMakeLists.txt: + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * html/HTMLDocumentParser.cpp: + * html/HTMLToken.h: + (WebCore::HTMLToken::clear): + (WebCore::HTMLToken::startIndex): + (WebCore::HTMLToken::length): + (WebCore::HTMLToken::end): + * html/HTMLViewSourceDocument.cpp: + (WebCore::HTMLViewSourceDocument::createParser): + (WebCore::HTMLViewSourceDocument::addSource): + (WebCore::HTMLViewSourceDocument::processDoctypeToken): + (WebCore::HTMLViewSourceDocument::processTagToken): + (WebCore::HTMLViewSourceDocument::processCommentToken): + (WebCore::HTMLViewSourceDocument::processCharacterToken): + (WebCore::HTMLViewSourceDocument::addRange): + * html/HTMLViewSourceDocument.h: + * html/HTMLViewSourceParser.cpp: Added. + (WebCore::HTMLViewSourceParser::~HTMLViewSourceParser): + (WebCore::HTMLViewSourceParser::insert): + (WebCore::HTMLViewSourceParser::pumpTokenizer): + (WebCore::HTMLViewSourceParser::append): + (WebCore::HTMLViewSourceParser::sourceForToken): + (WebCore::HTMLViewSourceParser::updateTokenizerState): + (WebCore::HTMLViewSourceParser::finish): + (WebCore::HTMLViewSourceParser::finishWasCalled): + * html/HTMLViewSourceParser.h: Added. + (WebCore::HTMLViewSourceParser::HTMLViewSourceParser): + (WebCore::HTMLViewSourceParser::document): + * html/LegacyHTMLDocumentParser.cpp: + (WebCore::LegacyHTMLDocumentParser::processToken): + (WebCore::LegacyHTMLDocumentParser::processDoctypeToken): + +2010-08-11 Yoshiki Hayashi <yhayashi@google.com> + + Reviewed by Shinichiro Hamaji. + + Make form controls, textarea, legend and datagrid treat width: + auto as specified in stretching vertical flexbox. Otherwise it's + treated as intrinsic as before. + https://bugs.webkit.org/show_bug.cgi?id=17918 + + Test: fast/flexbox/vertical-box-form-controls.html + + * css/CSSStyleSelector.cpp: + (WebCore::CSSStyleSelector::adjustRenderStyle): + * rendering/RenderBox.cpp: + (WebCore::RenderBox::sizesToIntrinsicWidth): + +2010-08-10 Darin Adler <darin@apple.com> + + Reviewed by Sam Weinig. + + Add leakRef and clear to all RefPtr variants + https://bugs.webkit.org/show_bug.cgi?id=42389 + + * platform/win/COMPtr.h: Changed all uses of "template <...>" to instead do + "template<...>". Defined many of the inlined functions outside the class + definition, to avoid style checker warnings about multiple statements on + a single line and for slightly better clarity of the class definition itself. + Renamed releaseRef to leakRef. Added a releaseRef that calls leakRef so we + don't have to rename all callers at once. Added a clear function. Changed + the hash table code so it doesn't need to call releaseRef, and so it uses + the hash table deleted value hooks already present within the class. + +2010-08-10 Ariya Hidayat <ariya@sencha.com> + + [Qt] Fix build warning: remove reference to html/BlobRegistryImp.h + + * WebCore.pro: + +2010-08-10 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=43803 + <rdar://problem/6988023> Only the last Korean character can be shown if font style is enabled while typing (43803) + + Test: platform/mac/editing/input/bold-node.html + + * editing/Editor.cpp: (WebCore::Editor::setComposition): It is not clear to me what the + "baseNode == extentNode" check is about in this function , but let's try to make it more + likely that it passes. + +2010-08-10 Hayato Ito <hayato@chromium.org> + + Reviewed by Kent Tamura. + + Make CSSSelector::specificity() non-recursive. + https://bugs.webkit.org/show_bug.cgi?id=43784 + + This change is one of the required changes to fix the following master bug: + https://bugs.webkit.org/show_bug.cgi?id=42806 + + No functional change, thus no tests. + + * css/CSSSelector.cpp: + (WebCore::CSSSelector::specificity): + (WebCore::CSSSelector::specificityForOneSelector): + (WebCore::CSSSelector::specificityForPage): + * css/CSSSelector.h: + +2010-08-10 Matthew Delaney <mdelaney@apple.com> + + Reviewed by Darin Adler. + + 2d.path.clip.empty.html test is failing + https://bugs.webkit.org/show_bug.cgi?id=43161 + + * platform/graphics/cg/GraphicsContextCG.cpp: + (WebCore::GraphicsContext::clip): + Catching the empty path case from being sent directly to + CGContextClip - which would ignore it. Instead, using + CGContextClip with a CGRectZero to achieve the desired + behavior of reducing the clipping region to nothing. + +2010-08-10 Gyuyoung Kim <gyuyoung.kim@samsung.com> + + Reviewed by Antonio Gomes. + + [EFL] Add video files to enable video in WebKit EFL + https://bugs.webkit.org/show_bug.cgi?id=43790 + + Add files regarding html5 video to CMakeList.txt for WebKit Efl. + But, this patch is not run html5 video on WebKit EFL yet. + + * CMakeLists.txt: Add files related to html5video. + * platform/efl/LocalizedStringsEfl.cpp: Add functions for html5 video. + (WebCore::localizedMediaControlElementString): + (WebCore::localizedMediaControlElementHelpText): + (WebCore::localizedMediaTimeDescription): + * platform/graphics/MediaPlayer.cpp: + (WebCore::installedMediaEngines): Disable MediaPlayerPrivate::r + egisterMediaEngine for WebKit EFL. + +2010-08-10 Patrick Gansterer <paroga@paroga.com> + + Reviewed by Nikolas Zimmermann. + + Add a toRenderSVGImage function + https://bugs.webkit.org/show_bug.cgi?id=43789 + + Add a function for casting to RenderSVGImage and use it. + + * rendering/RenderSVGImage.h: + (WebCore::toRenderSVGImage): + * rendering/RenderTreeAsText.cpp: + (WebCore::write): + * rendering/SVGRenderTreeAsText.cpp: + (WebCore::writeSVGImage): + * rendering/SVGRenderTreeAsText.h: + * svg/SVGImageElement.cpp: + (WebCore::SVGImageElement::attach): + +2010-08-10 Adam Barth <abarth@webkit.org> + + Reviewed by Eric Seidel. + + Clients of HTMLTokenizer should be able to see where characters went in the token + https://bugs.webkit.org/show_bug.cgi?id=43766 + + When viewing the source of a document, we want to colorize different + parts of the input depending on how they were tokenized. In this + patch, we expose the internal segmentation of a token by recording the + start and end offsets for each attribute name and each attribute value. + + * html/HTMLToken.h: + (WebCore::HTMLToken::addNewAttribute): + (WebCore::HTMLToken::beginAttributeName): + (WebCore::HTMLToken::endAttributeName): + (WebCore::HTMLToken::beginAttributeValue): + (WebCore::HTMLToken::endAttributeValue): + (WebCore::HTMLToken::appendToAttributeName): + (WebCore::HTMLToken::appendToAttributeValue): + (WebCore::AtomicHTMLToken::AtomicHTMLToken): + * html/HTMLTokenizer.cpp: + (WebCore::HTMLTokenizer::nextToken): + +2010-08-10 Dumitru Daniliuc <dumi@chromium.org> + + Reviewed by David Levin. + + Do not post a sync task to the DB thread if it's terminating. + https://bugs.webkit.org/show_bug.cgi?id=43676 + + * bindings/generic/ActiveDOMCallback.cpp: The context can + sometimes be NULL. Check if it's NULL instead of asserting that + it's not. + (WebCore::ActiveDOMCallback::ActiveDOMCallback): + * dom/ActiveDOMObject.cpp: + (WebCore::ActiveDOMObject::ActiveDOMObject): + + * storage/Database.cpp: Do not post a sync task to the DB thread + if the DB thread is terminating. Also, when a task is destroyed, + ASSERT that it was completed, or that it had no synchronizer. + (WebCore::Database::openAndVerifyVersion): + (WebCore::Database::markAsDeletedAndClose): + (WebCore::Database::tableNames): + * storage/DatabaseTask.cpp: + (WebCore::DatabaseTaskSynchronizer::DatabaseTaskSynchronizer): + (WebCore::DatabaseTask::~DatabaseTask): + (WebCore::DatabaseTask::performTask): + * storage/DatabaseTask.h: + (WebCore::DatabaseTaskSynchronizer::hasCheckedForTermination): + (WebCore::DatabaseTaskSynchronizer::setHasCheckedForTermination): + (WebCore::DatabaseTask::hasSynchronizer): + (WebCore::DatabaseTask::hasCheckedForTermination): + * storage/DatabaseThread.cpp: + (WebCore::DatabaseThread::terminationRequested): + (WebCore::DatabaseThread::scheduleTask): + (WebCore::DatabaseThread::scheduleImmediateTask): + * storage/DatabaseThread.h: + +2010-08-10 Gavin Barraclough <barraclough@apple.com> + + Qt build fix. + + * bridge/qt/qt_runtime.cpp: + (JSC::Bindings::convertValueToQVariant): + +2010-08-10 Jian Li <jianli@chromium.org> + + Fix more build break. + + * bindings/v8/SerializedScriptValue.cpp: + (WebCore::ZigZag::Reader::readBlob): + (WebCore::ZigZag::Reader::readFile): + * dom/ScriptExecutionContext.cpp: + (WebCore::ScriptExecutionContext::~ScriptExecutionContext): + (WebCore::ScriptExecutionContext::revokeBlobURL): + * dom/ScriptExecutionContext.h: + * html/Blob.cpp: + (WebCore::Blob::slice): + +2010-08-10 Gavin Barraclough <barraclough@apple.com> + + Rubber stamped by Sam Weinig + + Bug 43817 - Remove UString::Rep + UString::Rep has for a long time been replaced by UStringImpl (Rep + remaining as a typedef). UStringImpl has since been removed too + (unified with StringImpl). Remove Rep, rename rep() to impl() and + m_rep to m_impl. Also add impl() method to Identifier, and rename + its UString member from _ustring to m_string. + + * bindings/js/JSDOMBinding.cpp: + (WebCore::findAtomicString): + * bindings/js/JSDOMBinding.h: + (WebCore::ustringToString): + (WebCore::identifierToString): + (WebCore::ustringToAtomicString): + (WebCore::identifierToAtomicString): + * bindings/js/SerializedScriptValue.h: + (WebCore::SerializedScriptValueData::SerializedScriptValueData): + * bridge/IdentifierRep.cpp: + (WebCore::IdentifierRep::get): + * bridge/c/c_class.cpp: + (JSC::Bindings::CClass::methodsNamed): + (JSC::Bindings::CClass::fieldNamed): + * bridge/jni/jsc/JavaClassJSC.cpp: + (JavaClass::JavaClass): + (JavaClass::methodsNamed): + (JavaClass::fieldNamed): + * bridge/jni/jsc/JavaStringJSC.h: + (JSC::Bindings::JavaStringImpl::~JavaStringImpl): + (JSC::Bindings::JavaStringImpl::init): + (JSC::Bindings::JavaStringImpl::UTF8String): + (JSC::Bindings::JavaStringImpl::uchars): + (JSC::Bindings::JavaStringImpl::length): + (JSC::Bindings::JavaStringImpl::uString): + * bridge/jsc/BridgeJSC.h: + +2010-08-10 Jian Li <jianli@chromium.org> + + Fix qt build break. + + * html/BlobRegistryImpl.cpp: + * html/BlobRegistryImpl.h: + * html/BlobURL.cpp: + * html/BlobURL.h: + * platform/BlobRegistry.h: + +2010-08-10 Jian Li <jianli@chromium.org> + + Reviewed by David Levin. + + Add the support to register the blob data. + https://bugs.webkit.org/show_bug.cgi?id=43600 + + This is the first step towards adding Blob URL support. The blob has + an internal URL (used by FileReader) and public URLs (used by Blob.url). + The URL and its associated data are managed by BlobRegistry interface. + + This patch does not remove the usage of BlobItem. It will be removed + when all the blob data support is hooked up and the new tests will be + added then. + + * CMakeLists.txt: + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * bindings/js/SerializedScriptValue.cpp: + (WebCore::SerializedBlob::create): + (WebCore::SerializedBlob::url): + (WebCore::SerializedBlob::type): + (WebCore::SerializedBlob::size): + (WebCore::SerializedBlob::SerializedBlob): + (WebCore::SerializedFile::create): + (WebCore::SerializedFile::path): + (WebCore::SerializedFile::url): + (WebCore::SerializedFile::type): + (WebCore::SerializedFile::SerializedFile): + (WebCore::SerializedFileList::item): + (WebCore::SerializedFileList::SerializedFileList): + (WebCore::SerializedScriptValueData::SerializedScriptValueData): + (WebCore::SharedSerializedData::asBlob): + (WebCore::SharedSerializedData::asFile): + (WebCore::SerializingTreeWalker::convertIfTerminal): + (WebCore::DeserializingTreeWalker::convertIfTerminal): + (WebCore::TeardownTreeWalker::convertIfTerminal): + * bindings/js/SerializedScriptValue.h: + (WebCore::SerializedScriptValueData::): + (WebCore::SerializedScriptValueData::asString): + (WebCore::SerializedScriptValueData::asBlob): + (WebCore::SerializedScriptValueData::asFile): + * bindings/v8/SerializedScriptValue.cpp: + (WebCore::ZigZag::Writer::writeBlob): + (WebCore::ZigZag::Writer::writeFile): + (WebCore::ZigZag::Writer::writeFileList): + (WebCore::ZigZag::Writer::doWriteUintHelper): + (WebCore::ZigZag::Writer::doWriteUint32): + (WebCore::ZigZag::Writer::doWriteUint64): + (WebCore::ZigZag::Serializer::writeBlob): + (WebCore::ZigZag::Serializer::writeFile): + (WebCore::ZigZag::Reader::readBlob): + (WebCore::ZigZag::Reader::readFile): + (WebCore::ZigZag::Reader::readFileList): + (WebCore::ZigZag::Reader::doReadUintHelper): + (WebCore::ZigZag::Reader::doReadUint32): + (WebCore::ZigZag::Reader::doReadUint64): + * dom/ScriptExecutionContext.cpp: + (WebCore::ScriptExecutionContext::~ScriptExecutionContext): + (WebCore::ScriptExecutionContext::trackBlobURL): + (WebCore::ScriptExecutionContext::revokeBlobURL): + * dom/ScriptExecutionContext.h: + * html/Blob.cpp: + (WebCore::Blob::Blob): + (WebCore::Blob::~Blob): + (WebCore::Blob::createPublicURL): + * html/Blob.h: + (WebCore::Blob::create): + (WebCore::Blob::url): + * html/BlobRegistryImpl.cpp: Added. + * html/BlobRegistryImpl.h: Added. + * html/BlobStorageData.h: Added. + * html/BlobURL.cpp: Added. + * html/BlobURL.h: Added. + * html/File.cpp: + (WebCore::File::File): + * html/File.h: + (WebCore::File::create): + * platform/BlobData.cpp: Added. + * platform/BlobData.h: Added. + * platform/BlobRegistry.h: Added. + +2010-08-10 Adam Barth <abarth@webkit.org> + + Reviewed by Eric Seidel. + + SegmentedString should keep track of how many characters it consumes + https://bugs.webkit.org/show_bug.cgi?id=43765 + + The easiest way to keep track of how many characters we've consumed + would be to increment a counter every time we advance, but that's too + slow. Instead, we keep track lazily and update our summary durning the + slow case of advance (which is sufficiently rare). + + There's some subtly to how this works w.r.t. "unconsuming" characters + by pushing them back on the front of the segmented string. This isn't + really a "right answer" here because the notion of unconsuming input + isn't present in the API. This patch makes some assumptions about how + clients of this class use its API. In a future patch, we might want to + rename some of the method names to make this more explicit. + + * platform/text/SegmentedString.cpp: + (WebCore::SegmentedString::operator=): + (WebCore::SegmentedString::append): + (WebCore::SegmentedString::prepend): + (WebCore::SegmentedString::advanceSubstring): + * platform/text/SegmentedString.h: + (WebCore::SegmentedSubstring::numberOfCharactersConsumed): + (WebCore::SegmentedString::SegmentedString): + (WebCore::SegmentedString::numberOfCharactersConsumed): + +2010-08-10 Gavin Barraclough <barraclough@apple.com> + + Rubber stamped by Sam Weinig. + + Bug 43816 - Remove UStringImpl + The class was actually removed a long time ago, replaced by StringImpl. + UStringImpl is just a typedef onto StringImpl. Remove this. + + * WebCore.xcodeproj/project.pbxproj: + * bindings/js/JSDOMBinding.cpp: + (WebCore::findAtomicString): + +2010-08-09 Stephen White <senorblanco@chromium.org> + + Reviewed by David Levin. + + Prefer the medium-quality (bilinear) image resampling for 2D canvas on + Chromium. + https://bugs.webkit.org/show_bug.cgi?id=43646 + + This is what the accelerated path is going to do, + so do it in the software path as well. + + * html/HTMLCanvasElement.cpp: + (WebCore::HTMLCanvasElement::createImageBuffer): + * platform/graphics/GraphicsContext.h: + +2010-08-10 Chris Fleizach <cfleizach@apple.com> + + Reviewed by Dave Hyatt. + + Removing an element from an anonymous block causes crash + https://bugs.webkit.org/show_bug.cgi?id=42309 + + There was a case where a continuation was added as a child, but if you asked + that child who is your parent, it would return the wrong answer. + + The specific scenario was when a sibling of an element who was the start of a + continuation was present. Retrieving the parent object had then follow the sibling + chain and then follow the originating continuation chain. + + Test: accessibility/removed-anonymous-block-child-causes-crash.html + + * accessibility/AccessibilityRenderObject.cpp: + (WebCore::AccessibilityRenderObject::nextSibling): + Fix erroneous comment + (WebCore::nextContinuation): + (WebCore::AccessibilityRenderObject::renderParentObject): + Handle unhandled continuation case. + (WebCore::AccessibilityRenderObject::addChildren): + ASSERT that the parentObject() is the same when adding a new child. + +2010-08-10 Abhishek Arya <inferno@chromium.org> + + Reviewed by David Hyatt. + + Take checks for ruby base existence out of the ASSERTs. + https://bugs.webkit.org/show_bug.cgi?id=43795 + + Test: fast/ruby/ruby-remove-no-base.html + + * rendering/RenderRubyRun.cpp: + (WebCore::RenderRubyRun::addChild): + (WebCore::RenderRubyRun::removeChild): + +2010-08-06 Zhenyao Mo <zmo@google.com> + + Reviewed by Dimitri Glazkov. + + texture functions should gen INVALID_OPERATION if no texture is bound + https://bugs.webkit.org/show_bug.cgi?id=42907 + + * html/canvas/WebGLRenderingContext.cpp: + (WebCore::WebGLRenderingContext::copyTexImage2D): Check if a texture is bound to target. + (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto. + (WebCore::WebGLRenderingContext::generateMipmap): Ditto. + (WebCore::WebGLRenderingContext::getTexParameter): Ditto. + (WebCore::WebGLRenderingContext::texImage2DBase): Ditto. + (WebCore::WebGLRenderingContext::texParameter): Ditto. + (WebCore::WebGLRenderingContext::texSubImage2DBase): Ditto. + (WebCore::WebGLRenderingContext::validateTextureBinding): Check if target is valid and if a texture is bound to it. + * html/canvas/WebGLRenderingContext.h: Declare validateTextureBinding(). + +2010-08-10 Patrick Gansterer <paroga@paroga.com> + + Reviewed by Sam Weinig. + + [WINCE] Implement Path::currentPoint() + https://bugs.webkit.org/show_bug.cgi?id=42927 + + * platform/graphics/wince/PathWince.cpp: + (WebCore::Path::currentPoint): + +2010-08-10 Ariya Hidayat <ariya@sencha.com> + + [Qt] Warning fix, remove reference to platform/text/StringImpl.h + + * WebCore.pro: + +2010-08-10 Alice Liu <alice.liu@apple.com> + + Chromium build fix attempt. not reviewed + + * platform/text/TextBoundaries.cpp: use correct stringimplh include + +2010-08-10 Jian Li <jianli@chromium.org> + + Chromium build fix. + + * platform/graphics/chromium/FontPlatformDataChromiumWin.h: + * platform/graphics/chromium/FontPlatformDataLinux.cpp: + +2010-08-10 Johnny Ding <jnd@chromium.org> + + Reviewed by Adam Barth. + + Change the ScriptController::processingUserGesture to static method + and use dynamic(JSC binding)/entered(V8 binding) frame to check the user gesture. + https://bugs.webkit.org/show_bug.cgi?id=42827. + + Test: fast/events/popup-blocked-from-iframe-script.html + + * WebCore.order: + * bindings/js/JSDOMBinding.cpp: + (WebCore::processingUserGesture): + * bindings/js/JSDOMBinding.h: + * bindings/js/JSDOMWindowCustom.cpp: + (WebCore::JSDOMWindow::setLocation): + (WebCore::createWindow): + (WebCore::domWindowAllowPopUp): + (WebCore::JSDOMWindow::open): + (WebCore::JSDOMWindow::showModalDialog): + * bindings/js/JSDocumentCustom.cpp: + (WebCore::JSDocument::setLocation): + * bindings/js/JSLocationCustom.cpp: + (WebCore::navigateIfAllowed): + (WebCore::JSLocation::reload): + * bindings/js/ScriptController.cpp: + (WebCore::ScriptController::processingUserGesture): + * bindings/js/ScriptController.h: + * bindings/scripts/CodeGeneratorJS.pm: + * bindings/scripts/test/JS/JSTestObj.cpp: + (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGesture): + (WebCore::jsTestObjPrototypeFunctionWithDynamicFrameAndUserGestureASAD): + * bindings/v8/ScriptController.cpp: + (WebCore::ScriptController::processingUserGesture): + (WebCore::ScriptController::anyPageIsProcessingUserGesture): + * bindings/v8/ScriptController.h: + * bindings/v8/specialization/V8BindingState.cpp: + (WebCore::::processingUserGesture): + * loader/FrameLoader.cpp: + (WebCore::FrameLoader::isProcessingUserGesture): + +2010-08-10 Gavin Barraclough <barraclough@apple.com> + + Chromium build fix + + * platform/graphics/chromium/FontPlatformDataLinux.h: + +2010-08-10 Gavin Barraclough <barraclough@apple.com> + + Rubber stamped by Sam Weinig. + + Bug 43786 - Move AtomicStringHash from WebCore to WTF + Also remove deprecated string headers from WebCore/platform/text. + + * ForwardingHeaders/wtf/text/AtomicStringHash.h: Added. + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: + * bindings/cpp/WebDOMHTMLCollectionCustom.cpp: + * bindings/js/JSCSSStyleDeclarationCustom.cpp: + * bindings/js/JSClipboardCustom.cpp: + * bindings/js/JSDOMApplicationCacheCustom.cpp: + * bindings/js/JSDOMMimeTypeArrayCustom.cpp: + * bindings/js/JSDOMPluginArrayCustom.cpp: + * bindings/js/JSDOMPluginCustom.cpp: + * bindings/js/JSDOMStringMapCustom.cpp: + * bindings/js/JSDOMWindowCustom.cpp: + * bindings/js/JSDataGridColumnListCustom.cpp: + * bindings/js/JSHTMLAllCollectionCustom.cpp: + * bindings/js/JSHTMLCollectionCustom.cpp: + * bindings/js/JSMessagePortCustom.cpp: + * bindings/js/JSNodeListCustom.cpp: + * bindings/scripts/CodeGeneratorCPP.pm: + * bindings/scripts/CodeGeneratorJS.pm: + * bindings/scripts/CodeGeneratorV8.pm: + * bindings/scripts/test/CPP/WebDOMTestCallback.cpp: + * bindings/scripts/test/CPP/WebDOMTestObj.cpp: + * bindings/scripts/test/V8/V8TestInterface.h: + * bindings/scripts/test/V8/V8TestObj.h: + * bindings/v8/ScriptDebugServer.h: + * bindings/v8/V8Binding.cpp: + * bindings/v8/V8Binding.h: + * bridge/jni/v8/JavaClassV8.h: + * css/CSSFontFaceSource.h: + * css/CSSFontSelector.cpp: + * css/CSSFontSelector.h: + * css/CSSNamespace.h: + * css/CSSParser.cpp: + * css/CSSParser.h: + * css/CSSParserValues.h: + * css/CSSStyleSelector.h: + * css/CSSVariablesDeclaration.h: + * css/MediaFeatureNames.h: + * css/MediaQueryExp.h: + * css/WebKitCSSKeyframesRule.h: + * dom/CustomEvent.h: + * dom/Document.cpp: + * dom/Event.cpp: + * dom/Event.h: + * dom/EventNames.h: + * dom/EventTarget.h: + * dom/InputElement.h: + * dom/MessagePort.cpp: + * dom/MessagePort.h: + * dom/NameNodeList.h: + * dom/NodeRareData.h: + * dom/QualifiedName.h: + * dom/ScriptElement.cpp: + * dom/SpaceSplitString.h: + * dom/TagNodeList.h: + * dom/XMLDocumentParser.h: + * editing/EditorCommand.cpp: + * history/mac/HistoryItemMac.mm: + * html/BlobBuilder.cpp: + * html/DataGridColumn.h: + * html/DataGridColumnList.cpp: + * html/HTMLDocument.h: + * html/HTMLInputElement.cpp: + * html/HTMLTokenizer.cpp: + * html/HTMLTokenizer.h: + * html/LegacyPreloadScanner.cpp: + * html/LegacyPreloadScanner.h: + * inspector/InspectorCSSStore.h: + * inspector/InspectorController.h: + * inspector/InspectorDOMAgent.cpp: + * inspector/InspectorDOMAgent.h: + * inspector/InspectorDebuggerAgent.h: + * inspector/InspectorValues.h: + * loader/Cache.h: + * loader/CrossOriginAccessControl.cpp: + * loader/CrossOriginPreflightResultCache.h: + * loader/DocLoader.h: + * loader/ImageLoader.h: + * loader/appcache/ApplicationCache.h: + * loader/appcache/ApplicationCacheStorage.h: + * loader/appcache/DOMApplicationCache.h: + * loader/icon/IconDatabase.h: + * loader/icon/IconRecord.h: + * loader/loader.h: + * notifications/Notification.h: + * page/FrameTree.h: + * page/Page.cpp: + * page/PageGroup.h: + * page/SecurityOrigin.h: + * page/Settings.h: + * page/WindowFeatures.cpp: + * page/animation/AnimationBase.h: + * page/animation/AnimationControllerPrivate.h: + * page/animation/CompositeAnimation.h: + * platform/Cookie.h: + * platform/KURL.cpp: + * platform/KURLGoogle.cpp: + * platform/KURLHash.h: + * platform/Length.cpp: + * platform/LinkHash.cpp: + * platform/LinkHash.h: + * platform/MIMETypeRegistry.cpp: + * platform/MIMETypeRegistry.h: + * platform/SchemeRegistry.h: + * platform/ThreadGlobalData.cpp: + * platform/ThreadGlobalData.h: + * platform/cf/BinaryPropertyList.cpp: + * platform/chromium/SearchPopupMenuChromium.cpp: + * platform/efl/ClipboardEfl.cpp: + * platform/efl/CookieJarEfl.cpp: + * platform/efl/PlatformKeyboardEventEfl.cpp: + * platform/graphics/FontCache.cpp: + * platform/graphics/FontFamily.h: + * platform/graphics/MediaPlayer.h: + * platform/graphics/cg/ImageSourceCGWin.cpp: + * platform/graphics/chromium/FontCacheChromiumWin.cpp: + * platform/graphics/chromium/FontCacheLinux.cpp: + * platform/graphics/chromium/FontUtilsChromiumWin.cpp: + * platform/graphics/chromium/LayerChromium.h: + * platform/graphics/filters/Filter.h: + * platform/graphics/mac/FontPlatformData.h: + * platform/graphics/mac/GraphicsLayerCA.h: + * platform/graphics/qt/FontCacheQt.cpp: + * platform/graphics/win/FontCacheWin.cpp: + * platform/graphics/win/FontPlatformDataCGWin.cpp: + * platform/graphics/win/FontPlatformDataCairoWin.cpp: + * platform/graphics/win/FontPlatformDataWin.cpp: + * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: + * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp: + * platform/graphics/win/WKCACFLayer.h: + * platform/graphics/wince/FontPlatformData.cpp: + * platform/graphics/wx/FontPlatformData.h: + * platform/gtk/ClipboardGtk.cpp: + * platform/gtk/DataObjectGtk.h: + * platform/haiku/ClipboardHaiku.cpp: + * platform/haiku/CookieJarHaiku.cpp: + * platform/haiku/SearchPopupMenuHaiku.cpp: + * platform/mac/SearchPopupMenuMac.mm: + * platform/mac/ThreadCheck.mm: + * platform/network/CredentialStorage.cpp: + * platform/network/HTTPHeaderMap.h: + * platform/network/cf/DNSCFNet.cpp: + * platform/network/curl/CookieJarCurl.cpp: + * platform/qt/ClipboardQt.cpp: + * platform/text/AtomicString.h: Removed. + * platform/text/AtomicStringHash.h: Removed. + * platform/text/AtomicStringImpl.h: Removed. + * platform/text/AtomicStringKeyedMRUCache.h: + * platform/text/StringBuilder.cpp: + * platform/text/StringHash.h: Removed. + * platform/text/StringImpl.h: Removed. + * platform/text/TextCodecLatin1.cpp: + * platform/text/TextCodecUTF16.cpp: + * platform/text/TextCodecUserDefined.cpp: + * platform/text/cf/HyphenationCF.cpp: + * platform/text/cf/StringImplCF.cpp: + * platform/text/mac/HyphenationMac.mm: + * platform/text/mac/StringImplMac.mm: + * platform/text/transcoder/FontTranscoder.h: + * platform/text/wince/TextCodecWinCE.cpp: + * platform/win/BString.cpp: + * platform/win/ClipboardWin.cpp: + * platform/win/SearchPopupMenuWin.cpp: + * platform/wince/SearchPopupMenuWince.cpp: + * platform/wx/ClipboardWx.cpp: + * plugins/DOMMimeTypeArray.cpp: + * plugins/DOMPlugin.cpp: + * plugins/DOMPluginArray.cpp: + * plugins/PluginDatabase.h: + * plugins/PluginPackage.h: + * plugins/PluginStream.h: + * rendering/RenderApplet.h: + * rendering/RenderText.cpp: + * rendering/style/BindingURI.h: + * rendering/style/ContentData.cpp: + * rendering/style/CounterContent.h: + * rendering/style/CounterDirectives.h: + * rendering/style/KeyframeList.h: + * rendering/style/StyleRareInheritedData.h: + * storage/AbstractDatabase.cpp: + * storage/DatabaseAuthorizer.h: + * storage/DatabaseTracker.h: + * storage/IDBDatabaseBackendImpl.h: + * storage/IDBFactoryBackendImpl.h: + * storage/IDBObjectStoreBackendImpl.h: + * storage/OriginQuotaManager.h: + * storage/OriginUsageRecord.h: + * storage/SQLTransactionCoordinator.h: + * storage/StorageAreaSync.h: + * storage/StorageMap.h: + * storage/StorageNamespaceImpl.cpp: + * storage/chromium/QuotaTracker.h: + * svg/SVGAltGlyphElement.h: + * svg/SVGDocumentExtensions.cpp: + * svg/SVGDocumentExtensions.h: + * svg/SVGFitToViewBox.cpp: + * svg/SVGLangSpace.h: + * svg/animation/SMILTimeContainer.h: + * svg/graphics/filters/SVGFilterBuilder.h: + * websockets/WebSocket.h: + * websockets/WebSocketChannel.cpp: + * websockets/WebSocketHandshake.cpp: + * websockets/WebSocketHandshakeResponse.cpp: + * wml/WMLPageState.h: + * workers/AbstractWorker.h: + * workers/DefaultSharedWorkerRepository.h: + * workers/Worker.h: + * workers/WorkerContext.h: + * xml/XMLHttpRequest.h: + * xml/XMLHttpRequestUpload.cpp: + * xml/XMLHttpRequestUpload.h: + * xml/XPathExpressionNode.h: + * xml/XPathNamespace.h: + * xml/XPathParser.cpp: + * xml/XSLTProcessor.h: + +2010-08-10 Pavel Feldman <pfeldman@chromium.org> + + Not reviewed. Adding changes that escaped from r65072. + + Web Inspector: move database processing to native layer. + https://bugs.webkit.org/show_bug.cgi?id=43788 + + * inspector/front-end/InspectorBackendStub.js: + (WebInspector.InspectorBackendStub): + * inspector/front-end/StoragePanel.js: + (WebInspector.StoragePanel.prototype._genericViewSetup): + +2010-08-10 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> + + Reviewed by Xan Lopez. + + [GTK] Inputs of type 'search' have weird looking checkboxes instead of search/clear icons + https://bugs.webkit.org/show_bug.cgi?id=43760 + + Draw appropriate GTK+ stock images for search/clear icons in search entries. + + * platform/gtk/RenderThemeGtk.cpp: + (WebCore::RenderThemeGtk::paintSearchFieldResultsButton): + (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration): + (WebCore::RenderThemeGtk::paintSearchFieldCancelButton): + +2010-08-10 Pavel Feldman <pfeldman@chromium.org> + + Not reviewed. Qt build fix, follow up for r65072. + + * inspector/InspectorController.cpp: + (WebCore::InspectorController::releaseFrontendLifetimeAgents): + 2010-08-10 Pavel Feldman <pfeldman@chromium.org> Reviewed by Yury Semikhatsky. |