diff options
Diffstat (limited to 'WebCore/ChangeLog')
-rw-r--r-- | WebCore/ChangeLog | 6298 |
1 files changed, 6298 insertions, 0 deletions
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog index c6bf40b..e0a4f29 100644 --- a/WebCore/ChangeLog +++ b/WebCore/ChangeLog @@ -1,3 +1,6301 @@ +2010-05-17 MORITA Hajime <morrita@google.com> + + Reviewed by Kent Tamura. + + [Chromium] Windows: Speed of indeterminate progress bar should be constant + https://bugs.webkit.org/show_bug.cgi?id=39211 + + No new tests, animation effect can be confirmed only manually. + + * rendering/RenderThemeChromiumWin.cpp: + (WebCore::RenderThemeChromiumWin::animationDurationForProgressBar): + (WebCore::RenderThemeChromiumWin::paintProgressBar): + +2010-05-17 Drew Wilson <atwilson@chromium.org> + + Unreviewed build fix for Qt and Chromium. + + https://bugs.webkit.org/show_bug.cgi?id=39147 + + * page/Frame.h: Now includes CSSMutableStyleDeclaration.h. + +2010-05-17 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Darin Adler. + + Remove unused member member from Document + https://bugs.webkit.org/show_bug.cgi?id=39251 + + Remove m_associatedHistoryItems from Document; it is never used. + + * dom/Document.h: + +2010-05-17 Darin Adler <darin@apple.com> + + Fix Qt build. + + * page/Frame.cpp: + (WebCore::Frame::setTypingStyle): Move back to make non-inline. + * page/Frame.h: Removed inline version of setTypingStyle. + +2010-05-14 Darin Adler <darin@apple.com> + + Reviewed by Brady Eidson. + + Frame has many trivial member functions that should be inlined + https://bugs.webkit.org/show_bug.cgi?id=39147 + + * WebCore.base.exp: Export the functions that are now inlined. + + * page/Frame.cpp: + (WebCore::Frame::removeEditingStyleFromBodyElement): + Removed the body of this function. + + * page/Frame.h: + (WebCore::Frame::init): Moved here from .cpp. + (WebCore::Frame::loader): Ditto. + (WebCore::Frame::redirectScheduler): Ditto. + (WebCore::Frame::view): Ditto. + (WebCore::Frame::script): Ditto. + (WebCore::Frame::document): Ditto. + (WebCore::Frame::selection): Ditto. + (WebCore::Frame::editor): Ditto. + (WebCore::Frame::animation): Ditto. + (WebCore::Frame::mark): Ditto. + (WebCore::Frame::setMark): Ditto. + (WebCore::Frame::zoomFactor): Ditto. + (WebCore::Frame::jsStatusBarText): Ditto. + (WebCore::Frame::jsDefaultStatusBarText): Ditto. + (WebCore::Frame::needsReapplyStyles): Ditto. + (WebCore::Frame::typingStyle): Ditto. + (WebCore::Frame::setTypingStyle): Ditto. + (WebCore::Frame::clearTypingStyle): Ditto. + (WebCore::Frame::ownerElement): Ditto. + (WebCore::Frame::isDisconnected): Ditto. + (WebCore::Frame::setIsDisconnected): Ditto. + (WebCore::Frame::excludeFromTextSearch): Ditto. + (WebCore::Frame::setExcludeFromTextSearch): Ditto. + (WebCore::Frame::inViewSourceMode): Ditto. + (WebCore::Frame::setInViewSourceMode): Ditto. + (WebCore::Frame::markedTextMatchesAreHighlighted): Ditto. + (WebCore::Frame::tree): Ditto. + (WebCore::Frame::page): Ditto. + (WebCore::Frame::detachFromPage): Ditto. + (WebCore::Frame::eventHandler): Ditto. + (WebCore::Frame::shouldClose): Ditto. + +2010-05-17 Anders Carlsson <andersca@apple.com> + + Reviewed by Sam Weinig. + + https://bugs.webkit.org/show_bug.cgi?id=39247 + <rdar://problem/7994707> + Move rarely used data members to the rare structures, thus saving memory. + + Move rarely used member variables from StyleInheritedData and StyleVisualData to + StyleRareInheritedData and StyleRareNonInheritedData, namely: + + indent, cursorData, m_effectiveZoom, widows and orphans move from StyleInheritedData to StyleRareInheritedData. + m_counterIncrement and m_counterReset move from StyleVisualData to StyleRareNonInheritedData. + + * rendering/style/RenderStyle.cpp: + (WebCore::RenderStyle::diff): + (WebCore::RenderStyle::addCursor): + (WebCore::RenderStyle::setCursorList): + (WebCore::RenderStyle::clearCursorList): + * rendering/style/RenderStyle.h: + (WebCore::InheritedFlags::textIndent): + (WebCore::InheritedFlags::effectiveZoom): + (WebCore::InheritedFlags::counterIncrement): + (WebCore::InheritedFlags::counterReset): + (WebCore::InheritedFlags::cursors): + (WebCore::InheritedFlags::widows): + (WebCore::InheritedFlags::orphans): + (WebCore::InheritedFlags::setTextIndent): + (WebCore::InheritedFlags::setEffectiveZoom): + (WebCore::InheritedFlags::setCounterIncrement): + (WebCore::InheritedFlags::setCounterReset): + (WebCore::InheritedFlags::setWidows): + (WebCore::InheritedFlags::setOrphans): + * rendering/style/StyleInheritedData.cpp: + (WebCore::StyleInheritedData::StyleInheritedData): + (WebCore::StyleInheritedData::operator==): + * rendering/style/StyleInheritedData.h: + * rendering/style/StyleRareInheritedData.cpp: + (WebCore::StyleRareInheritedData::StyleRareInheritedData): + (WebCore::cursorDataEquivalent): + (WebCore::StyleRareInheritedData::operator==): + * rendering/style/StyleRareInheritedData.h: + * rendering/style/StyleRareNonInheritedData.cpp: + (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): + (WebCore::StyleRareNonInheritedData::operator==): + * rendering/style/StyleRareNonInheritedData.h: + * rendering/style/StyleVisualData.cpp: + (WebCore::StyleVisualData::StyleVisualData): + * rendering/style/StyleVisualData.h: + (WebCore::StyleVisualData::operator==): + +2010-05-17 Robert Hogan <robert@webkit.org> + + Rubber-stamped by Eric Seidel. + + Fix --no-svg build. + + I have no idea where the SVG-dependent include of this file is hidden, but + it is probably better to include it explicitly anyway like V8WorkerContextCustom.cpp. + + * bindings/js/JSWorkerContextCustom.cpp: + +2010-05-17 David Hyatt <hyatt@apple.com> + + Reviewed by Dan Bernstein. + + https://bugs.webkit.org/show_bug.cgi?id=39231 + + Fix failures in the RTL portion of fast/multicol/layers-in-multicol.html. Make sure block children of RTL blocks are positioned using + the reduced column width instead of the total content width. + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::determineHorizontalPosition): + (WebCore::RenderBlock::nodeAtPoint): + (WebCore::RenderBlock::hitTestContents): + (WebCore::RenderBlock::adjustForColumns): + +2010-05-17 Jakob Petsovits <jpetsovits@rim.com> + + Reviewed by George Staikos. + + [OpenVG] Add support for decoding and drawing images + https://bugs.webkit.org/show_bug.cgi?id=36072 + + OpenVG has a maximum image size (how large is + specific to the OpenVG implementation), so this + requires us to store them as separate image tiles. + + Image decoding and initial drawing code by + Adam Treat <atreat@rim.com>. Image decoder + downsampling support by Yong Li <yoli@rim.com>. + + * platform/graphics/ImageSource.h: + * platform/graphics/openvg/ImageOpenVG.cpp: Added. + (WebCore::FrameData::clear): + (WebCore::BitmapImage::BitmapImage): + (WebCore::BitmapImage::checkForSolidColor): + (WebCore::BitmapImage::initPlatformData): + (WebCore::BitmapImage::invalidatePlatformData): + (WebCore::adjustSourceRectForDownSampling): + (WebCore::BitmapImage::draw): + (WebCore::Image::drawPattern): + (WebCore::Image::loadPlatformResource): + * platform/graphics/openvg/PainterOpenVG.cpp: + (WebCore::PainterOpenVG::drawImage): + (WebCore::PainterOpenVG::asNewNativeImage): + * platform/graphics/openvg/PainterOpenVG.h: + * platform/graphics/openvg/TiledImageOpenVG.cpp: Added. + (WebCore::TiledImageOpenVG::TiledImageOpenVG): + (WebCore::TiledImageOpenVG::operator=): + (WebCore::TiledImageOpenVG::~TiledImageOpenVG): + (WebCore::TiledImageOpenVG::numTiles): + (WebCore::TiledImageOpenVG::numColumns): + (WebCore::TiledImageOpenVG::numRows): + (WebCore::TiledImageOpenVG::setTile): + (WebCore::TiledImageOpenVG::tilesInRect): + (WebCore::TiledImageOpenVG::tile): + (WebCore::TiledImageOpenVG::tileRect): + (WebCore::TiledImageOpenVG::detachTiles): + (WebCore::TiledImageOpenVG::destroyTiles): + * platform/graphics/openvg/TiledImageOpenVG.h: Added. + (WebCore::TiledImageOpenVG::size): + (WebCore::TiledImageOpenVG::maxTileSize): + * platform/graphics/openvg/VGUtils.cpp: + (WebCore::VGUtils::bytesForImage): + (WebCore::VGUtils::bytesForImageScanline): + (WebCore::VGUtils::imageFormatBitsPerPixel): + (WebCore::VGUtils::endianAwareImageFormat): + * platform/graphics/openvg/VGUtils.h: + * platform/image-decoders/openvg/ImageDecoderOpenVG.cpp: Added. + (WebCore::RGBA32Buffer::asNewNativeImage): + +2010-05-17 Yaar Schnitman <yaar@chromium.org> + + Reviewed by Darin Adler. + + Fix JSC's generation of 'Optional' arguments. When a single 'Optional' extended attribute precedes multiple method arguments, all of these arguments are optional as a group (either all or non must be specified). This fix, which makes JSC compliant with V8 and with the Web IDL specs, is pretty harmless, since Optional is currently not being used anywhere in JSC, but it blocks further work on overloads. + https://bugs.webkit.org/show_bug.cgi?id=39227 + + * bindings/scripts/CodeGeneratorJS.pm: + * bindings/scripts/test/JS/JSTestObj.cpp: + (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs): + +2010-05-16 Sam Weinig <sam@webkit.org> + + Reviewed by Adam Barth. + + https://bugs.webkit.org/show_bug.cgi?id=39192 + Remove unused PERFECT_HASH code CodeGeneratorJS. + + * bindings/scripts/CodeGeneratorJS.pm: + +2010-05-17 Jeremy Moskovich <jeremy@chromium.org> + + Reviewed by Jeremy Orlow. + + Remove debug code that was introduced to help narrow down the + source of a crash. + https://bugs.webkit.org/show_bug.cgi?id=36426 + + No change in behavior, so no new tests. + + * loader/FrameLoader.cpp: + (WebCore::FrameLoader::finishedLoadingDocument): + +2010-05-17 Andreas Kling <andreas.kling@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + Bring CanvasRenderingContext2D's createImageData() in line with HTML5 spec + Added createImageData(ImageData) which returns a new ImageData with the same size as the one passed. + Changed createImageData(width, height) to use the absolute values of width and height. + + https://bugs.webkit.org/show_bug.cgi?id=39189 + + Spec link: + http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-createimagedata + + Test: fast/canvas/canvas-createImageData.html + + * bindings/js/JSCanvasRenderingContext2DCustom.cpp: + (WebCore::JSCanvasRenderingContext2D::createImageData): + * html/canvas/CanvasRenderingContext2D.cpp: + (WebCore::CanvasRenderingContext2D::createImageData): + * html/canvas/CanvasRenderingContext2D.h: + * html/canvas/CanvasRenderingContext2D.idl: + +2010-05-17 Antti Koivisto <koivisto@iki.fi> + + This was missing from previous commit. + + * platform/qt/QWebPageClient.h: + (QWebPageClient::graphicsItemVisibleRect): + +2010-05-17 Antti Koivisto <koivisto@iki.fi> + + Reviewed by Kenneth Rohde Christiansen. + + https://bugs.webkit.org/show_bug.cgi?id=39218 + [Qt] Tiled backing store tiles sometimes flicker when exiting a zoom animation + + Tiles sometimes flicker when exiting a zoom animation. This happens as a result + of the visible rectangle being momentarily out of sync. + + Instead of updating the visible rect by explicitly setting it, pull it through + the client and recompute in the WebKit level. + + * page/ChromeClient.h: + (WebCore::ChromeClient::visibleRectForTiledBackingStore): + * page/Frame.cpp: + (WebCore::Frame::tiledBackingStoreVisibleRect): + * page/Frame.h: + * platform/graphics/TiledBackingStore.cpp: + (WebCore::TiledBackingStore::checkVisibleRectChanged): + (WebCore::TiledBackingStore::createTiles): + * platform/graphics/TiledBackingStore.h: + * platform/graphics/TiledBackingStoreClient.h: + +2010-05-15 Adam Roben <aroben@apple.com> + + Periodically try to reset a lost IDirect3DDevice9 until we succeed + + This is how MSDN says we must respond to a lost device (see + <http://msdn.microsoft.com/en-us/library/bb174714(v=VS.85).aspx>). + + Only testable by a manual test, unfortunately. + + Fixes <rdar://problem/7986906> <http://webkit.org/b/39139> Pages that + use hardware acceleration don't repaint after waking computer from + sleep + + Reviewed by John Sullivan. + + * manual-tests/no-repaint-after-wake-from-sleep.html: Added. This is + the Poster Circle demo from webkit.org/blog, but with instructions for + putting the computer to sleep and waking it up again. + + * platform/graphics/win/WKCACFLayerRenderer.cpp: + (WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer): Initialize new + member that tells us whether we need to try to reset the device before + rendering. + (WebCore::WKCACFLayerRenderer::resize): Changed to tell resetDevice + the reason why the device needs to be reset (which is because the + window's size has changed). + (WebCore::WKCACFLayerRenderer::render): Before we do anything else, + check if we need to reset the device before rendering. If we do, try + to reset it. If that fails, bail out and set a timer to try again + later. If we discover that the device is lost when calling + IDirect3DDevice9::Present and resetting the device fails, bail out and + set a timer to try again later. + (WebCore::WKCACFLayerRenderer::resetDevice): Changed to return a + boolean indicating whether resetting succeeded or not. Added a + ResetReason parameter so callers can specify whey the device needs to + be reset. Before trying to do anything, we call + IDirect3DDevice9::TestCooperativeLevel to find out whether the device + can be reset currently. If it can't, we set a flag to tell ourselves + that the device must be reset before we next render, and indicate to + the caller that the reset failed. If we thought the device was lost + but it turns out not to be, we don't have to do anything and can tell + the caller that the reset succeeded. Otherwise we go ahead and reset + the device as before, and indicate to the caller that the reset + succeeded. + + * platform/graphics/win/WKCACFLayerRenderer.h: Changed resetDevice to + return a boolean and take a ResetReason parameter. Added a comment + about when and why this function should be called. And added + m_mustResetLostDeviceBeforeRendering. + +2010-05-15 Adam Roben <aroben@apple.com> + + Call CARenderOGLPurge whenever we call IDirect3DDevice9::Reset + + MSDN says that all resoures allocated with D3DPOOL_DEFAULT must be + destroyed before calling IDirect3DDevice9::Reset. The only way to + guarantee this with Core Animation is to call CARenderOGLPurge. + + Unfortunately this isn't testable at the moment, as we don't use any + features of Core Animation (e.g., mask layers) that actually make this + required. But it seems like a good idea to fix the code now so that + if/when we do start using those features we won't run into problems. + + Fixes <http://webkit.org/b/39159> WKCACFLayerRenderer::resetDevice + might fail due to failing to destroy all D3DPOOL_DEFAULT resources + + Reviewed by John Sullivan. + + * platform/graphics/win/WKCACFLayerRenderer.cpp: + (WebCore::WKCACFLayerRenderer::render): Moved the call to + CARenderOGLPurge from here... + (WebCore::WKCACFLayerRenderer::resetDevice): ...to here, so that it + will be called whenever we reset the device (e.g., when resizing the + window). + +2010-05-17 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> + + Rubber-stamped by Xan Lopez. + + Build fix. Remove bashism from build system. + + * GNUmakefile.am: + +2010-05-17 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r59483. + http://trac.webkit.org/changeset/59483 + https://bugs.webkit.org/show_bug.cgi?id=39215 + + "page_cycler_intl1 regression on Linux" (Requested by yurys on + #webkit). + + * platform/chromium/ChromiumBridge.h: + * platform/graphics/chromium/FontCacheLinux.cpp: + (WebCore::FontCache::getFontDataForCharacters): + +2010-05-17 Kenneth Rohde Christiansen <kenneth@webkit.org> + + Reviewed by Laszlo Gombos. + + REGRESSION(59563): [Qt] JSValue QtClass::fallbackObject can be optimized + + Patch declared a variable index, which shadowed an earlier declared + variable. + + * bridge/qt/qt_class.cpp: + (JSC::Bindings::QtClass::fallbackObject): + +2010-05-14 Andrei Popescu <andreip@google.com> + + Reviewed by Jeremy Orlow. + + IDBRequest is not a proper ActiveDomObject + https://bugs.webkit.org/show_bug.cgi?id=39001 + + Add IDBRequest interface to the IsActiveDomType + routine of the CodeGeneratorV8.pm. + + Rename IDBRequest::m_stopped to m_suspended and reset + the flag when resume() is called. + + No new tests, Indexed Database isn't yet testable. + + * bindings/scripts/CodeGeneratorV8.pm: + * storage/IDBRequest.cpp: + (WebCore::IDBRequest::suspend): + (WebCore::IDBRequest::resume): + (WebCore::IDBRequest::timerFired): + (WebCore::IDBRequest::onEventCommon): + * storage/IDBRequest.h: + +2010-05-17 Xan Lopez <xlopez@igalia.com> + + Do not include the indexed database headers if the feature is not + enabled. Should fix the build in GTK+. + + * bindings/js/JSEventCustom.cpp: + +2010-05-17 Xan Lopez <xlopez@igalia.com> + + Try to fix GTK+ build. + + * GNUmakefile.am: + +2010-05-14 Jeremy Orlow <jorlow@chromium.org> + + Reviewed by Nate Chapin. + + Finish up IndexedDB events + https://bugs.webkit.org/show_bug.cgi?id=39117 + + Implement the indexed database event interfaces as proposed by Mozilla. + Refactor the run time type detection code that was in IDBRequest into its own + class named IDBAny. Use this new class within the new event classes and + IDBResults. + + Test: storage/indexeddb/basics.html + + * DerivedSources.cpp: + * DerivedSources.make: + * GNUmakefile.am: + * WebCore.gyp/WebCore.gyp: + * WebCore.gypi: + * WebCore.pri: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * bindings/js/JSEventCustom.cpp: + (WebCore::toJS): + * bindings/js/JSEventTarget.cpp: + (WebCore::toJS): + * bindings/js/JSIDBAnyCustom.cpp: Added. + (WebCore::toJS): + * bindings/js/JSIDBRequestCustom.cpp: Removed. + * bindings/v8/custom/V8EventCustom.cpp: + (WebCore::toV8): + * bindings/v8/custom/V8IDBAnyCustom.cpp: Added. + (WebCore::toV8): + * bindings/v8/custom/V8IDBRequestCustom.cpp: Removed. + * dom/Event.cpp: + (WebCore::Event::isIDBErrorEvent): + (WebCore::Event::isIDBSuccessEvent): + * dom/Event.h: + * storage/IDBAny.cpp: Added. + (WebCore::IDBAny::create): + (WebCore::IDBAny::IDBAny): + (WebCore::IDBAny::~IDBAny): + (WebCore::IDBAny::idbDatabaseRequest): + (WebCore::IDBAny::indexedDatabaseRequest): + (WebCore::IDBAny::serializedScriptValue): + (WebCore::IDBAny::set): + * storage/IDBAny.h: Added. + (WebCore::IDBAny::): + (WebCore::IDBAny::type): + * storage/IDBAny.idl: Added. + * storage/IDBErrorEvent.cpp: Added. + (WebCore::IDBErrorEvent::create): + (WebCore::IDBErrorEvent::IDBErrorEvent): + (WebCore::IDBErrorEvent::~IDBErrorEvent): + * storage/IDBErrorEvent.h: Added. + (WebCore::IDBErrorEvent::code): + (WebCore::IDBErrorEvent::message): + (WebCore::IDBErrorEvent::isIDBErrorEvent): + * storage/IDBErrorEvent.idl: Added. + * storage/IDBEvent.cpp: Added. + (WebCore::IDBEvent::IDBEvent): + (WebCore::IDBEvent::~IDBEvent): + (WebCore::IDBEvent::source): + * storage/IDBEvent.h: Added. + * storage/IDBEvent.idl: Added. + * storage/IDBRequest.cpp: + (WebCore::IDBRequest::IDBRequest): + (WebCore::IDBRequest::onSuccess): + (WebCore::IDBRequest::timerFired): + (WebCore::IDBRequest::onEventCommon): + * storage/IDBRequest.h: + (WebCore::IDBRequest::create): + (WebCore::IDBRequest::result): + * storage/IDBRequest.idl: + * storage/IDBSuccessEvent.cpp: Added. + (WebCore::IDBSuccessEvent::create): + (WebCore::IDBSuccessEvent::IDBSuccessEvent): + (WebCore::IDBSuccessEvent::~IDBSuccessEvent): + (WebCore::IDBSuccessEvent::result): + * storage/IDBSuccessEvent.h: Added. + (WebCore::IDBSuccessEvent::isIDBSuccessEvent): + * storage/IDBSuccessEvent.idl: Added. + * storage/IndexedDatabaseImpl.cpp: + (WebCore::IndexedDatabaseImpl::open): + * storage/IndexedDatabaseRequest.cpp: + (WebCore::IndexedDatabaseRequest::IndexedDatabaseRequest): + (WebCore::IndexedDatabaseRequest::open): + * storage/IndexedDatabaseRequest.h: + +2010-05-16 Chris Jerdonek <cjerdonek@webkit.org> + + Unreviewed. + + Removed the stray equals sign from the reviewer's name in the + "Reviewed by" line of the ChangeLog entry for r59596: + + http://trac.webkit.org/changeset/59596 + +2010-05-16 Chris Jerdonek <cjerdonek@webkit.org> + + Reviewed by Adam Barth. + + Refactored FrameLoader::changeLocation() and urlSelected() to share more code. + + https://bugs.webkit.org/show_bug.cgi?id=38827 + + No change in behavior, so no new tests. + + * bindings/ScriptControllerBase.cpp: + (WebCore::ScriptController::executeIfJavaScriptURL): + - Changed a parameter from boolean to the ShouldReplaceDocumentIfJavaScriptURL enum. + * bindings/js/ScriptController.h: + - Changed a parameter from boolean to the ShouldReplaceDocumentIfJavaScriptURL enum. + * bindings/v8/ScriptController.h: + - Changed a parameter from boolean to the ShouldReplaceDocumentIfJavaScriptURL enum. + * loader/FrameLoader.cpp: + (WebCore::FrameLoader::changeLocation): + - Changed to call the new private overload of urlSelected(). + (WebCore::FrameLoader::urlSelected): + - Added a private overload of urlSelected(). + - Changed the public urlSelected() to call the private overload. + (WebCore::FrameLoader::submitForm): + * loader/FrameLoader.h: + - Added a private overload of urlSelected(). + * loader/FrameLoaderTypes.h: + - Added a ShouldReplaceDocumentIfJavaScriptURL enum. + +2010-05-16 Daniel Bates <dbates@rim.com> + + Reviewed by David Hyatt. + + https://bugs.webkit.org/show_bug.cgi?id=39196 + + Rollout changeset 59274 <http://trac.webkit.org/changeset/59274>. + + Prepared on behalf of David Hyatt. + + "Not worth the memory use." Just roll this out. + + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * editing/visible_units.cpp: + (WebCore::previousLinePosition): + (WebCore::nextLinePosition): + * rendering/EllipsisBox.cpp: + (WebCore::EllipsisBox::paint): + (WebCore::EllipsisBox::selectionRect): + (WebCore::EllipsisBox::paintSelection): + (WebCore::EllipsisBox::nodeAtPoint): + * rendering/EllipsisBox.h: + (WebCore::EllipsisBox::EllipsisBox): + (WebCore::EllipsisBox::height): + * rendering/InlineBox.cpp: + (WebCore::InlineBox::height): + (WebCore::InlineBox::adjustPosition): + (WebCore::InlineBox::canAccommodateEllipsis): + * rendering/InlineBox.h: + (WebCore::InlineBox::InlineBox): + (WebCore::InlineBox::isInlineBox): + (WebCore::InlineBox::hasVirtualHeight): + (WebCore::InlineBox::setHasVirtualHeight): + (WebCore::InlineBox::virtualHeight): + (WebCore::InlineBox::setWidth): + (WebCore::InlineBox::width): + (WebCore::InlineBox::setX): + (WebCore::InlineBox::x): + (WebCore::InlineBox::setY): + (WebCore::InlineBox::y): + (WebCore::InlineBox::baselinePosition): + (WebCore::InlineBox::lineHeight): + * rendering/InlineFlowBox.cpp: + (WebCore::InlineFlowBox::placeBoxesVertically): + (WebCore::InlineFlowBox::computeVerticalOverflow): + (WebCore::InlineFlowBox::nodeAtPoint): + (WebCore::InlineFlowBox::paintBoxDecorations): + (WebCore::InlineFlowBox::paintMask): + (WebCore::InlineFlowBox::paintTextDecorations): + * rendering/InlineFlowBox.h: + (WebCore::InlineFlowBox::visibleOverflowRect): + (WebCore::InlineFlowBox::topLayoutOverflow): + (WebCore::InlineFlowBox::bottomLayoutOverflow): + (WebCore::InlineFlowBox::leftLayoutOverflow): + (WebCore::InlineFlowBox::rightLayoutOverflow): + (WebCore::InlineFlowBox::layoutOverflowRect): + (WebCore::InlineFlowBox::topVisualOverflow): + (WebCore::InlineFlowBox::bottomVisualOverflow): + (WebCore::InlineFlowBox::leftVisualOverflow): + (WebCore::InlineFlowBox::rightVisualOverflow): + (WebCore::InlineFlowBox::visualOverflowRect): + (WebCore::InlineFlowBox::setHorizontalOverflowPositions): + (WebCore::InlineFlowBox::setVerticalOverflowPositions): + * rendering/InlineTextBox.cpp: + (WebCore::InlineTextBox::selectionRect): + (WebCore::InlineTextBox::placeEllipsisBox): + (WebCore::InlineTextBox::nodeAtPoint): + (WebCore::InlineTextBox::paint): + (WebCore::InlineTextBox::paintSelection): + (WebCore::InlineTextBox::paintCompositionBackground): + (WebCore::InlineTextBox::paintDecoration): + (WebCore::InlineTextBox::paintSpellingOrGrammarMarker): + (WebCore::InlineTextBox::paintTextMatchMarker): + (WebCore::InlineTextBox::computeRectForReplacementMarker): + (WebCore::InlineTextBox::paintCompositionUnderline): + (WebCore::InlineTextBox::offsetForPosition): + (WebCore::InlineTextBox::positionForOffset): + * rendering/InlineTextBox.h: + (WebCore::InlineTextBox::setSpaceAdd): + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::positionForPointWithInlineChildren): + * rendering/RenderBlockLineLayout.cpp: + (WebCore::RenderBlock::computeVerticalPositionsForLine): + (WebCore::RenderBlock::layoutInlineChildren): + * rendering/RenderSVGInline.cpp: + (WebCore::RenderSVGInline::createInlineFlowBox): + * rendering/RenderSVGInlineText.cpp: + (WebCore::RenderSVGInlineText::createTextBox): + * rendering/RenderSVGText.cpp: + (WebCore::RenderSVGText::createRootInlineBox): + * rendering/RenderText.cpp: + (WebCore::RenderText::positionForPoint): + (WebCore::RenderText::firstRunX): + (WebCore::RenderText::firstRunY): + * rendering/RenderTreeAsText.cpp: + (WebCore::writeTextRun): + * rendering/RootInlineBox.cpp: + (WebCore::RootInlineBox::placeEllipsis): + (WebCore::RootInlineBox::addHighlightOverflow): + (WebCore::RootInlineBox::closestLeafChildForXPos): + * rendering/SVGInlineFlowBox.h: + (WebCore::SVGInlineFlowBox::SVGInlineFlowBox): + (WebCore::SVGInlineFlowBox::virtualHeight): + (WebCore::SVGInlineFlowBox::setHeight): + * rendering/SVGInlineTextBox.h: + (WebCore::SVGInlineTextBox::virtualHeight): + (WebCore::SVGInlineTextBox::setHeight): + (WebCore::SVGInlineTextBox::selectionTop): + (WebCore::SVGInlineTextBox::selectionHeight): + * rendering/SVGRootInlineBox.h: + (WebCore::SVGRootInlineBox::SVGRootInlineBox): + (WebCore::SVGRootInlineBox::virtualHeight): + (WebCore::SVGRootInlineBox::setHeight): + * rendering/TrailingFloatsRootInlineBox.h: Added. + (WebCore::TrailingFloatsRootInlineBox::TrailingFloatsRootInlineBox): + (WebCore::TrailingFloatsRootInlineBox::virtualHeight): + +2010-05-13 Tony Chang <tony@chromium.org> + + Reviewed by Darin Adler. + + REGRESSION: Crash by pasting to a textarea with white-space:nowrap + https://bugs.webkit.org/show_bug.cgi?id=38992 + + Test: editing/pasteboard/paste-plaintext-nowrap.html + + * editing/InsertParagraphSeparatorCommand.cpp: + (WebCore::highestVisuallyEquivalentDivBelowRoot): + (WebCore::InsertParagraphSeparatorCommand::doApply): + +2010-05-16 David Hyatt <hyatt@apple.com> + + Reviewed by Dan Bernstein. + + https://bugs.webkit.org/show_bug.cgi?id=39194 + + Fix all of the multi-column painting and hit testing functions to properly account for RTL directionality. + + Added fast/multicol/column-count-with-rules.html + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::paintColumnRules): + (WebCore::RenderBlock::paintColumnContents): + (WebCore::RenderBlock::hitTestColumns): + (WebCore::RenderBlock::adjustRectForColumns): + +2010-05-16 Dan Bernstein <mitz@apple.com> + + Reviewed by Dave Hyatt. + + Fix SVG test failures after r59588. + + Updated SVG InlineBox virtual method overrides to match HTML ones. Removed + SVGInlineFlowBox::verticallyAlignBoxes() since InlineFlowBox no longer declares + verticallyAlignBoxes(). + + * rendering/SVGInlineFlowBox.cpp: + (WebCore::SVGInlineFlowBox::placeBoxesHorizontally): + * rendering/SVGInlineFlowBox.h: + * rendering/SVGRootInlineBox.cpp: + (WebCore::SVGRootInlineBox::placeBoxesHorizontally): + (WebCore::SVGRootInlineBox::verticallyAlignBoxes): + * rendering/SVGRootInlineBox.h: + +2010-05-16 Dan Bernstein <mitz@apple.com> + + Reviewed by Darin Adler. + + Move transient glyph overflow and fallback font data from a global to the stack + https://bugs.webkit.org/show_bug.cgi?id=39050 + + * rendering/InlineFlowBox.cpp: + (WebCore::InlineFlowBox::placeBoxesHorizontally): Added a GlyphOverflowAndFallbackFontsMap + parameter. Read glyph overflow from the map. + (WebCore::InlineFlowBox::computeLogicalBoxHeights): Added a GlyphOverflowAndFallbackFontsMap + parameter. Read fallback fonts from the map. + (WebCore::InlineFlowBox::computeVerticalOverflow): Added a GlyphOverflowAndFallbackFontsMap + parameter. Read glyph overflow from the map. + * rendering/InlineFlowBox.h: + * rendering/InlineTextBox.cpp: Removed setFallbackFonts(), fallbackFonts(), setGlyphOverflow(), + and glyphOverflow(). Removed s_glyphOverflowAndFallbackFontsMap. + * rendering/InlineTextBox.h: + * rendering/RenderBlock.h: + * rendering/RenderBlockLineLayout.cpp: + (WebCore::RenderBlock::computeHorizontalPositionsForLine): Added a GlyphOverflowAndFallbackFontsMap + parameter. Write fallback fonts and glyph overflow into the map. + (WebCore::RenderBlock::computeVerticalPositionsForLine): Added a GlyphOverflowAndFallbackFontsMap + parameter. Pass it down to verticallyAlignBoxes(). + (WebCore::RenderBlock::layoutInlineChildren): Create a GlyphOverflowAndFallbackFontsMap on the + stack and pass it down to computeHorizontalPositionsForLine(), computeVerticalPositionsForLine(), + and verticallyAlignBoxes(). + * rendering/RootInlineBox.cpp: + (WebCore::RootInlineBox::verticallyAlignBoxes): Added a GlyphOverflowAndFallbackFontsMap parameter. + Pass it down to computeLogicalBoxHeights() and computeVerticalOverflow(). + * rendering/RootInlineBox.h: + * rendering/SVGRootInlineBox.cpp: + (WebCore::SVGRootInlineBox::layoutInlineBoxes): Updated. + +2010-05-12 Tony Chang <tony@chromium.org> + + Reviewed by Darin Adler. + + Spellcheck disabling does not disable context menu + https://bugs.webkit.org/show_bug.cgi?id=25639 + + Test: editing/spelling/context-menu-suggestions.html + + * platform/ContextMenu.cpp: + (WebCore::ContextMenu::populate): + +2010-05-16 Sam Weinig <sam@webkit.org> + + Reviewed by Dan Bernstein. + + https://bugs.webkit.org/show_bug.cgi?id=39190 + Shave a word off of GlyphPageTreeNode + <rdar://problem/7990428> + + * platform/graphics/GlyphPageTreeNode.h: + (WebCore::GlyphPageTreeNode::GlyphPageTreeNode): + +2010-05-16 Andreas Kling <andreas.kling@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + Properly handle invalid arguments to CanvasRenderingContext2D's getImageData() and putImageData(). + Both should throw NOT_SUPPORTED_ERR when called with nonfinite arguments. + getImageData() should throw INDEX_SIZE_ERR if either width or height is 0. + + https://bugs.webkit.org/show_bug.cgi?id=39175 + + Spec link: + http://www.whatwg.org/specs/web-apps/current-work/#pixel-manipulation + + Test: fast/canvas/canvas-getImageData-invalid.html + + * html/canvas/CanvasRenderingContext2D.cpp: + (WebCore::CanvasRenderingContext2D::createImageData): + (WebCore::CanvasRenderingContext2D::getImageData): + (WebCore::CanvasRenderingContext2D::putImageData): + +2010-05-16 Andreas Kling <andreas.kling@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + Canvas's toDataURL() should be case insensitive wrt the mimeType argument. + https://bugs.webkit.org/show_bug.cgi?id=39153 + + Spec link: + http://www.whatwg.org/specs/web-apps/current-work/#dom-canvas-todataurl + + Test: fast/canvas/canvas-toDataURL-case-insensitive-mimetype.html + + * dom/CanvasSurface.cpp: + (WebCore::CanvasSurface::toDataURL): + +2010-05-16 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Anders Carlsson. + + Shrink SimpleFontData + https://bugs.webkit.org/show_bug.cgi?id=39179 + + Change SimpleFontData to have a pointer to the m_glyphToBoundsMap, + and to allocate this lazily. This reduces the size of the class from + 5632 to 1536 bytes. + + * platform/graphics/SimpleFontData.h: + (WebCore::SimpleFontData::boundsForGlyph): + +2010-05-15 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Maciej Stachowiak. + + Reduce the size of CachedResource + https://bugs.webkit.org/show_bug.cgi?id=39171 + + Make protected data members of CachedResource private, to allow for + easier rearrangement, and hide the fact that enums are in bitfields. + + Rearrange the data members of CachedResource to save 32 bytes per instance + in 64-bit. Also modernized the constructor code. + + * loader/CachedCSSStyleSheet.cpp: + (WebCore::CachedCSSStyleSheet::didAddClient): + (WebCore::CachedCSSStyleSheet::data): + (WebCore::CachedCSSStyleSheet::checkNotify): + (WebCore::CachedCSSStyleSheet::error): + * loader/CachedFont.cpp: + (WebCore::CachedFont::load): + (WebCore::CachedFont::didAddClient): + (WebCore::CachedFont::data): + (WebCore::CachedFont::ensureCustomFontData): + (WebCore::CachedFont::ensureSVGFontData): + (WebCore::CachedFont::checkNotify): + (WebCore::CachedFont::error): + * loader/CachedImage.cpp: + (WebCore::CachedImage::CachedImage): + (WebCore::CachedImage::load): + (WebCore::CachedImage::didAddClient): + (WebCore::CachedImage::allClientsRemoved): + (WebCore::CachedImage::image): + (WebCore::CachedImage::data): + (WebCore::CachedImage::error): + (WebCore::CachedImage::checkNotify): + (WebCore::CachedImage::destroyDecodedData): + * loader/CachedImage.h: + (WebCore::CachedImage::stillNeedsLoad): + * loader/CachedResource.cpp: + (WebCore::CachedResource::CachedResource): + * loader/CachedResource.h: + (WebCore::CachedResource::type): + (WebCore::CachedResource::preloadResult): + (WebCore::CachedResource::status): + (WebCore::CachedResource::setStatus): + (WebCore::CachedResource::isLoaded): + (WebCore::CachedResource::isLoading): + (WebCore::CachedResource::setErrorOccurred): + * loader/CachedScript.cpp: + (WebCore::CachedScript::didAddClient): + (WebCore::CachedScript::data): + (WebCore::CachedScript::checkNotify): + (WebCore::CachedScript::error): + * loader/CachedXSLStyleSheet.cpp: + (WebCore::CachedXSLStyleSheet::didAddClient): + (WebCore::CachedXSLStyleSheet::data): + (WebCore::CachedXSLStyleSheet::checkNotify): + (WebCore::CachedXSLStyleSheet::error): + +2010-05-16 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r59574. + http://trac.webkit.org/changeset/59574 + https://bugs.webkit.org/show_bug.cgi?id=39176 + + Supposedly broke cr-win, but the errors seems somewhat + unrelated (Requested by abarth on #webkit). + + * platform/network/chromium/ResourceResponse.h: + (WebCore::ResourceResponse::ResourceResponse): + (WebCore::ResourceResponse::setSecurityInfo): + (WebCore::ResourceResponse::isContentFiltered): + (WebCore::ResourceResponse::setIsContentFiltered): + (WebCore::ResourceResponse::setAppCacheID): + (WebCore::ResourceResponse::setAppCacheManifestURL): + (WebCore::ResourceResponse::setWasFetchedViaSPDY): + (WebCore::ResourceResponse::setIsMultipartPayload): + (WebCore::ResourceResponse::setResponseTime): + +2010-05-16 Dan Bernstein <mitz@apple.com> + + Reviewed by Darin Adler. + + Scalar types allocated on the heap due to misuse of DEFINE_STATIC_LOCAL + https://bugs.webkit.org/show_bug.cgi?id=39086 + + Use global variables directly. + + * bindings/v8/ScriptCallStack.cpp: + (WebCore::ScriptCallStack::createUtilityContext): + * platform/ScrollView.cpp: + (WebCore::ScrollView::wheelEvent): + * platform/graphics/mac/ComplexTextController.cpp: + (WebCore::shouldUseATSUIAPI): + +2010-05-16 Andreas Kling <andreas.kling@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + Canvas's getContext() must return null when called with an invalid/unsupported parameter. + (HTML5 spec 4.8.11): http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#dom-canvas-getcontext + + https://bugs.webkit.org/show_bug.cgi?id=39150 + + Test: fast/canvas/canvas-getContext-invalid.html + + * bindings/js/JSHTMLCanvasElementCustom.cpp: + (WebCore::JSHTMLCanvasElement::getContext): + * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp: + (WebCore::V8HTMLCanvasElement::getContextCallback): + +2010-05-15 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r59565. + http://trac.webkit.org/changeset/59565 + https://bugs.webkit.org/show_bug.cgi?id=39173 + + Broke GTK (Requested by abarth on #webkit). + + * dom/CanvasSurface.cpp: + (WebCore::CanvasSurface::toDataURL): + +2010-05-15 Andreas Kling <andreas.kling@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + Canvas's toDataURL() should be case insensitive wrt the mimeType argument. + https://bugs.webkit.org/show_bug.cgi?id=39153 + + Spec link: + http://www.whatwg.org/specs/web-apps/current-work/#dom-canvas-todataurl + + Test: fast/canvas/canvas-toDataURL-case-insensitive-mimetype.html + + * dom/CanvasSurface.cpp: + (WebCore::CanvasSurface::toDataURL): + +2010-05-15 Anders Bakken <agbakken@gmail.com> + + Reviewed by Kenneth Rohde Christiansen. + + QObject::objectName() returns a QString and QtField::name() + creates a temporary QByteArray object and returns constData() from it. + This is not safe. + + This patch changes the signature of the function to return a + QByteArray instead of const char *. + + https://bugs.webkit.org/show_bug.cgi?id=39010 + + * bridge/qt/qt_instance.cpp: + (JSC::Bindings::QtInstance::getPropertyNames): + (JSC::Bindings::QtField::name): + * bridge/qt/qt_runtime.h: + +2010-05-15 Anders Bakken <agbakken@gmail.com> + + Reviewed by Kenneth Rohde Christiansen. + + Don't unnecessarily copy data when searching for methods in QtClass. + + [Qt] JSValue QtClass::fallbackObject can be optimized + https://bugs.webkit.org/show_bug.cgi?id=37684 + + * bridge/qt/qt_class.cpp: + (JSC::Bindings::QtClass::fallbackObject): + +2010-05-15 Anders Bakken <agbakken@gmail.com> + + Reviewed by Kenneth Rohde Christiansen. + + Identifier::ascii() is not threadsafe and shouldn't be used for + converting to and from QString/QByteArray. + + https://bugs.webkit.org/show_bug.cgi?id=39009 + + * bridge/qt/qt_class.cpp: + (JSC::Bindings::QtClass::fallbackObject): + (JSC::Bindings::QtClass::fieldNamed): + +2010-05-15 Chang Shu <chang.shu@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + Based on the spec and Philip Taylor's test suite, createImageData() should throw + an INDEX_SIZE_ERR exception if either the sw or sh arguments are zero. + The link to the spec: + http://philip.html5.org/tests/canvas/suite/tests/spec.html#testrefs.2d.imageData.getcreate.zero + + https://bugs.webkit.org/show_bug.cgi?id=39166 + + The complete test suite is in the process of checking in. + https://bugs.webkit.org/show_bug.cgi?id=20553 + + * html/canvas/CanvasRenderingContext2D.cpp: + (WebCore::CanvasRenderingContext2D::createImageData): + +2010-05-15 Adam Barth <abarth@webkit.org> + + Reviewed by Darin Adler. + + XMLHttpRequest.getResponseHeader doesn't need to be custom + https://bugs.webkit.org/show_bug.cgi?id=39125 + + I don't see any reason this method needs to be custom. No new tests + because there's no behavior change. + + * bindings/js/JSXMLHttpRequestCustom.cpp: + * bindings/v8/custom/V8XMLHttpRequestCustom.cpp: + * xml/XMLHttpRequest.idl: + +2010-05-15 Adam Barth <abarth@webkit.org> + + Reviewed by Darin Adler. + + XMLHttpRequest.setRequestHeader shouldn't be custom + https://bugs.webkit.org/show_bug.cgi?id=39124 + + I don't see any reason why this method needs to be custom. No tests + because no behavior change. + + * bindings/js/JSXMLHttpRequestCustom.cpp: + * bindings/scripts/CodeGeneratorJS.pm: + * bindings/scripts/CodeGeneratorV8.pm: + * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: + (webkit_dom_test_obj_method_that_requires_all_args): + (webkit_dom_test_obj_method_that_requires_all_args_and_throws): + * bindings/scripts/test/GObject/WebKitDOMTestObj.h: + * bindings/scripts/test/JS/JSTestObj.cpp: + (WebCore::): + (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgs): + (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows): + * bindings/scripts/test/JS/JSTestObj.h: + * bindings/scripts/test/ObjC/DOMTestObj.h: + * bindings/scripts/test/ObjC/DOMTestObj.mm: + (-[DOMTestObj methodThatRequiresAllArgs:objArg:]): + (-[DOMTestObj methodThatRequiresAllArgsAndThrows:objArg:]): + * bindings/scripts/test/TestObj.idl: + * bindings/scripts/test/V8/V8TestObj.cpp: + (WebCore::TestObjInternal::methodThatRequiresAllArgsCallback): + (WebCore::TestObjInternal::methodThatRequiresAllArgsAndThrowsCallback): + (WebCore::ConfigureV8TestObjTemplate): + * bindings/v8/custom/V8XMLHttpRequestCustom.cpp: + * xml/XMLHttpRequest.idl: + +2010-05-14 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=39048 + <rdar://problem/7978384> REGRESSION (r55802): XML errors on Google maps ("Entity 'nbsp' not + defined") with JavaScript disabled + + Google Maps goes into mobile mode if JavaScript is disabled for some reason, and sends XHTML + content with XHTML Mobile DOCTYPE. We want to handle it whether XHTMLMP is enabled or not. + + Test: fast/doctypes/xhtml-with-xhtmlmp-doctype.xhtml + + * dom/XMLTokenizerLibxml2.cpp: (WebCore::externalSubsetHandler): Restore pre-55802 behavior + for builds that don't have XHTMLMP enabled. Given that r55802 negated the condition without + breaking XHTMLMP, this line is actually always needed. + +2010-05-15 Vangelis Kokkevis <vangelis@chromium.org> + + Reviewed by Darin Fisher. + + Fixing LayerChromium hierarchy updates where due to mixed ownership + handling, sublayer updates didn't always properly update parent-to-child + and child-to-parent pointers in sync. + https://bugs.webkit.org/show_bug.cgi?id=39138 + + * platform/graphics/chromium/LayerChromium.cpp: + (WebCore::LayerChromium::~LayerChromium): + (WebCore::LayerChromium::setNeedsCommit): Typo fix. + (WebCore::LayerChromium::insertSublayer): + (WebCore::LayerChromium::removeFromSuperlayer): + (WebCore::LayerChromium::removeSublayer): + (WebCore::LayerChromium::replaceSublayer): + (WebCore::LayerChromium::removeAllSublayers): + (WebCore::LayerChromium::setSublayers): + * platform/graphics/chromium/LayerChromium.h: + (WebCore::LayerChromium::setSuperlayer): + +2010-05-15 Andrey Kosyakov <caseq@chromium.org> + + Reviewed by Timothy Hatcher. + + Got rid of absolute positioning in favor of flex boxes where possible. + Added shadow for help window. + Changed window style names to more comprehensible. + https://bugs.webkit.org/show_bug.cgi?id=39120 + + * inspector/front-end/HelpScreen.js: + (WebInspector.HelpScreen): + * inspector/front-end/helpScreen.css: + (.help-window-outer): + (body.attached .help-window-outer): + (.help-window-main): + (body.attached .help-window-main): + (.help-window-caption): + (body.attached .help-window-caption): + (.help-window-title): + (.help-scrollable): + (.help-close-button): + (body.platform-mac .help-close-button): + (body:not(.platform-mac) .help-close-button): + +2010-05-15 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r59549. + http://trac.webkit.org/changeset/59549 + https://bugs.webkit.org/show_bug.cgi?id=39167 + + Broke Chromium build (Requested by abarth on #webkit). + + * bindings/scripts/CodeGeneratorV8.pm: + * storage/IDBRequest.cpp: + (WebCore::IDBRequest::suspend): + (WebCore::IDBRequest::resume): + (WebCore::IDBRequest::timerFired): + (WebCore::IDBRequest::onEventCommon): + * storage/IDBRequest.h: + +2010-05-15 Vangelis Kokkevis <vangelis@chromium.org> + + Reviewed by Darin Fisher. + + Adding code path for composited layers (LayerChromium) containing only + an Image element. + https://bugs.webkit.org/show_bug.cgi?id=39142 + + No new tests, covered under the existing tests for composited layers. + + * platform/graphics/chromium/GraphicsLayerChromium.cpp: + (WebCore::GraphicsLayerChromium::setContentsToImage): + (WebCore::GraphicsLayerChromium::updateContentsImage): + * platform/graphics/chromium/GraphicsLayerChromium.h: + * platform/graphics/chromium/LayerChromium.cpp: + (WebCore::LayerChromium::LayerChromium): + (WebCore::LayerChromium::setContents): + * platform/graphics/chromium/LayerChromium.h: + (WebCore::LayerChromium::contents): + +2010-05-15 Andrei Popescu <andreip@google.com> + + Reviewed by Jeremy Orlow. + + IDBRequest is not a proper ActiveDomObject + https://bugs.webkit.org/show_bug.cgi?id=39001 + + Add IDBRequest interface to the IsActiveDomType + routine of the CodeGeneratorV8.pm. + + Rename IDBRequest::m_stopped to m_suspended and reset + the flag when resume() is called. + + No new tests, Indexed Database isn't yet testable. + + * bindings/scripts/CodeGeneratorV8.pm: + * storage/IDBRequest.cpp: + (WebCore::IDBRequest::suspend): + (WebCore::IDBRequest::resume): + (WebCore::IDBRequest::timerFired): + (WebCore::IDBRequest::onEventCommon): + * storage/IDBRequest.h: + +2010-05-15 Andrei Bucur <abucur@adobe.com> + + Reviewed by Gustavo Noronha Silva. + + Functions using the cairo_pattern_t object returned by + Pattern::createPlatformPattern sould destroy it after the painting + operation. Failing to do so causes memory leaks. + + Test: No test was added because the patch adds no new functionality. + It just completes the normal life cycle of a cairo_pattern_t object. + + * platform/graphics/cairo/FontCairo.cpp: + (WebCore::Font::drawGlyphs): + * platform/graphics/cairo/GraphicsContextCairo.cpp: + (WebCore::setPlatformFill): + (WebCore::setPlatformStroke): + +2010-05-15 Yael Aharon <yael.aharon@nokia.com> + + Reviewed by Kent Tamura. + + Initial support for HTMLMeterElement + https://bugs.webkit.org/show_bug.cgi?id=38140 + + This patch adds support for HTMLMeterElement, including default rendering + of the meter element. That is because some platforms do not have a native gauge. + The feature is turned on only for the Qt platform. + + Tests: fast/dom/HTMLMeterElement/meter-element.html + fast/dom/HTMLMeterElement/set-meter-properties.html + + * DerivedSources.cpp: + * DerivedSources.make: + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.pri: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * css/CSSPrimitiveValueMappings.h: + (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): + * css/CSSValueKeywords.in: + * css/html.css: + (meter): + (meter::-webkit-meter): + * html/HTMLAttributeNames.in: + * html/HTMLElement.cpp: + (WebCore::inlineTagList): + * html/HTMLElementsAllInOne.cpp: + * html/HTMLMeterElement.cpp: Added. + (WebCore::HTMLMeterElement::HTMLMeterElement): + (WebCore::HTMLMeterElement::create): + (WebCore::HTMLMeterElement::createRenderer): + (WebCore::HTMLMeterElement::formControlType): + (WebCore::HTMLMeterElement::parseMappedAttribute): + (WebCore::HTMLMeterElement::min): + (WebCore::HTMLMeterElement::setMin): + (WebCore::HTMLMeterElement::max): + (WebCore::HTMLMeterElement::setMax): + (WebCore::HTMLMeterElement::value): + (WebCore::HTMLMeterElement::setValue): + (WebCore::HTMLMeterElement::low): + (WebCore::HTMLMeterElement::setLow): + (WebCore::HTMLMeterElement::high): + (WebCore::HTMLMeterElement::setHigh): + (WebCore::HTMLMeterElement::optimum): + (WebCore::HTMLMeterElement::setOptimum): + * html/HTMLMeterElement.h: Added. + (WebCore::HTMLMeterElement::recalcWillValidate): + * html/HTMLMeterElement.idl: Added. + * html/HTMLTagNames.in: + * page/DOMWindow.idl: + * platform/ThemeTypes.h: + * rendering/RenderMeter.cpp: Added. + (WebCore::RenderMeter::RenderMeter): + (WebCore::RenderMeter::layout): + (WebCore::RenderMeter::updateFromElement): + * rendering/RenderMeter.h: Added. + (WebCore::RenderMeter::renderName): + (WebCore::RenderMeter::isMeter): + (WebCore::toRenderMeter): + * rendering/RenderObject.h: + (WebCore::RenderObject::isMeter): + * rendering/RenderTheme.cpp: + (WebCore::RenderTheme::adjustStyle): + (WebCore::RenderTheme::paint): + (WebCore::RenderTheme::paintBorderOnly): + (WebCore::RenderTheme::paintDecorations): + (WebCore::RenderTheme::adjustMeterStyle): + (WebCore::RenderTheme::paintMeter): + * rendering/RenderTheme.h: + +2010-05-15 Eric Uhrhane <ericu@chromium.org> + + Reviewed by Dmitry Titov. + + Add bindings for async DB API in Workers. + https://bugs.webkit.org/show_bug.cgi?id=34992 + + Tests: storage/change-version-handle-reuse-worker.html + storage/execute-sql-args-worker.html + + * bindings/js/JSWorkerContextCustom.cpp: Add openDatabase binding. + (WebCore::JSWorkerContext::openDatabase): + + * bindings/v8/custom/V8WorkerContextCustom.cpp: Add openDatabase stub; Chromium will need work both in V8 and in the browser process before we can turn this on there. + (WebCore::V8WorkerContext::openDatabaseCallback): + + Add NoStaticTables flags to all objects now shared with workers. + * storage/Database.idl: + * storage/SQLError.idl: + * storage/SQLResultSet.idl: + * storage/SQLResultSetRowList.idl: + * storage/SQLTransaction.idl: + + * workers/WorkerContext.h: Add databaseExceededQuota. + * workers/WorkerContext.cpp: + (WebCore::WorkerContext::databaseExceededQuota): Add stub implementation for testing; you just get 5MB for now. + (WebCore::WorkerContext::openDatabase): Remove invalid assertion. + + Add the IDL for the call to openDatabase. + * workers/WorkerContext.idl: + +2010-05-15 Leandro Pereira <leandro@profusion.mobi> + + Reviewed by Adam Treat. + + [EFL] Add build system for the EFL port. + http://webkit.org/b/37945 + + * CMakeLists.txt: Added. + * CMakeListsEfl.txt: Added. + * config.h: Add conditional to look for cmakeconfig.h. + +2010-05-15 Adam Barth <abarth@webkit.org> + + Reviewed by Darin Adler. + + Clipboard.setData doesn't need to be custom + https://bugs.webkit.org/show_bug.cgi?id=39133 + + The implementation of the custom binding for this function was a bit + different than its declaration in the IDL file. I've updated the IDL + to match the implementation, but we probably should check whether our + behavior is correct with respect to the specification. + + No tests because I've maintained our current behavior. + + * bindings/js/JSClipboardCustom.cpp: + * bindings/v8/custom/V8ClipboardCustom.cpp: + * dom/Clipboard.idl: + +2010-05-15 Yaar Schnitman <yaar@chromium.org> + + Reviewed by Adam Barth. + + V8 overload support ported to JSC. Unforking of overloaded declarations in WebGL & Canvas will be done in subsequent patches. + https://bugs.webkit.org/show_bug.cgi?id=38920 + + Note that JSTestCallback.cpp/h include minor irrelevant changes too since somebody forgot to update them after changing the JS generator. + + * bindings/scripts/CodeGenerator.pm: + * bindings/scripts/CodeGeneratorJS.pm: + * bindings/scripts/CodeGeneratorV8.pm: + * bindings/scripts/test/JS/JSTestCallback.cpp: + (WebCore::JSTestCallback::JSTestCallback): + (WebCore::JSTestCallback::~JSTestCallback): + * bindings/scripts/test/JS/JSTestCallback.h: + * bindings/scripts/test/JS/JSTestObj.cpp: + (WebCore::): + (WebCore::jsTestObjPrototypeFunctionOverloadedMethod1): + (WebCore::jsTestObjPrototypeFunctionOverloadedMethod2): + (WebCore::jsTestObjPrototypeFunctionOverloadedMethod3): + (WebCore::jsTestObjPrototypeFunctionOverloadedMethod4): + (WebCore::testObjPrototypeFunctionOverloadedMethod): + * bindings/scripts/test/JS/JSTestObj.h: + * bindings/scripts/test/TestObj.idl: + +2010-05-15 Joanmarie Diggs <joanmarie.diggs@gmail.com> + + Reviewed by Xan Lopez. + + https://bugs.webkit.org/show_bug.cgi?id=30500 + [Gtk] Find a way for WebKit to "announce" itself so that ATs can readily distinguish it from true Gtk/Gail + + The "announcement" is now made in the form of an object attribute + associated with the AtkObject. + + * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: + (webkit_accessible_get_attributes): + +2010-05-15 Adam Barth <abarth@webkit.org> + + Reviewed by Darin Adler. + + Show a console message when X-Frame-Options blocks a load + https://bugs.webkit.org/show_bug.cgi?id=39087 + + The blank page confuses people when X-Frame-Options blocks a load. The + console message should at least give them a hint as to what's going on. + + * dom/Document.cpp: + (WebCore::Document::processHttpEquiv): + +2010-05-15 Ilya Tikhonovsky <loislo@chromium.org> + + Reviewed by Geoffrey Garen. + + WebInspector: JSC Should provide heap size info for Timeline panel. + https://bugs.webkit.org/show_bug.cgi?id=38420 + + * GNUmakefile.am: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * bindings/js/ScriptGCEvent.cpp: Added. + (WebCore::ScriptGCEvent::getHeapSize): + * bindings/js/ScriptGCEvent.h: + +2010-05-15 Dave Tapuska <dtapuska@rim.com> + + Reviewed by Darin Adler. + + Fix alignment faults on ARMv5TE architectures. + + In debug mode the RenderAreaDebugHeader was 12 bytes which + caused an alignment failure for RenderObjects because they + would start on a 4 byte boundary. Align the RenderArenaDebugHeader + using the ARENA_ALIGN macro. + + In NDEBUG mode the RenderArena objects come from a pool which + has 4 byte alignment. Allow the alignment to be based on the + AllocAlignmentInteger. This define will be activated for ARMv5TE. + + https://bugs.webkit.org/show_bug.cgi?id=19946 + +2010-05-14 Adam Barth <abarth@webkit.org> + + Reviewed by Darin Adler. + + XMLHttpRequest.overrideMimeType doesn't need to be custom + https://bugs.webkit.org/show_bug.cgi?id=39127 + + I don't see any reason why this method should be custom. No tests + because no behavior change. + + * bindings/js/JSXMLHttpRequestCustom.cpp: + * bindings/v8/custom/V8XMLHttpRequestCustom.cpp: + * xml/XMLHttpRequest.idl: + +2010-05-14 Adele Peterson <adele@apple.com> + + Reviewed by Dave Hyatt. + + Fix for https://bugs.webkit.org/show_bug.cgi?id=39095 + <rdar://problem/7984158> REGRESSION (r53085): Infinite recursion in Position::getInlineBoxAndOffset when changing writing direction to right-to-left + + Test: editing/selection/applystyle-to-inline-inside-block.html + + * dom/Position.cpp: (WebCore::Position::getInlineBoxAndOffset): Now that this function correctly goes in and out of editable areas by calling + downstreamIgnoringEditingBoundaries and upstreamIgnoringEditingBoundaries for blocks (added in r58665), we no longer need a special case to + jump out to the parent when we hit an inline (which was added in r53085 when this issue was introduced). + +2010-05-14 Brian Weinstein <bweinstein@apple.com> + + Reviewed by Mark Rowe. + + Hopefully a last fix for the build. Call -mkdir instead of mkdir, so we don't bail if the mkdir call fails. Additionally, + use the %Env% syntax instead of $(Env), which is what we need if we are referring to Windows environment variables instead + of nmake variables. + + * WebCore.vcproj/WebCore.make: + +2010-05-14 Stephanie Lewis <slewis@apple.com> + + Rubber-stamped by Mark Rowe. + + Update order files. + + * WebCore.order: + +2010-05-14 David Hyatt <hyatt@apple.com> + + Reviewed by Simon Fraser. + + https://bugs.webkit.org/show_bug.cgi?id=39137 + + Make RenderLayers position properly inside multicolumn layout. + + (1) Create RenderLayers when column properties are specified. This allows descendant layers to easily + know they are inside a multicolumn layout when positioning. + + (2) Patch updateLayerPosition to offset the layer into the first column that contains the layer. Splitting + of a layer across columns still does not work, but the layer will now at least appear in the first column in + which it occurs. + + (3) Fix pagination bugs caused by the fact that visual overflow doesn't propagate up the line box tree when layers + are involved. Make sure to use lineTop and lineBottom in this case (it's not perfect, but it gets most cases + working properly). With this change elements like <video> will paginate properly and not get split across pages. + + (4) Make column repainting and layer positioning work with RTL columns by fixing adjustForColumns to + account for RTL. + + (5) Fix RTL pagination by making sure the column pagination rects are the content width of the whole block and not just + the width of one column. + + Added fast/multicol/layers-in-multicol.html + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::layoutColumns): + (WebCore::RenderBlock::adjustForColumns): + * rendering/RenderBox.h: + (WebCore::RenderBox::locationOffset): + * rendering/RenderBoxModelObject.h: + (WebCore::RenderBoxModelObject::requiresLayer): + * rendering/RenderLayer.cpp: + (WebCore::RenderLayer::updateLayerPosition): + (WebCore::RenderLayer::convertToLayerCoords): + (WebCore::RenderLayer::shouldBeNormalFlowOnly): + * rendering/RenderLineBoxList.cpp: + (WebCore::RenderLineBoxList::paint): + * rendering/RenderView.cpp: + (WebCore::RenderView::RenderView): + * rendering/RenderView.h: + (WebCore::RenderView::requiresLayer): + * rendering/style/RenderStyle.h: + (WebCore::InheritedFlags::specifiesColumns): + +2010-05-14 Leon Clarke <leonclarke@google.com> + + Reviewed by Steve Block. + + Refactor signature of tokenizeRelAttribute and the variables it refers to so that new features don't keep changing the signature, and make m_disabledState into an enum. + https://bugs.webkit.org/show_bug.cgi?id=38900 + + No new tests. Refactoring only. + + * html/HTMLLinkElement.cpp: + (WebCore::HTMLLinkElement::HTMLLinkElement): + (WebCore::HTMLLinkElement::setDisabledState): + (WebCore::HTMLLinkElement::parseMappedAttribute): + (WebCore::HTMLLinkElement::tokenizeRelAttribute): + (WebCore::HTMLLinkElement::process): + (WebCore::HTMLLinkElement::addSubresourceAttributeURLs): + * html/HTMLLinkElement.h: + (WebCore::HTMLLinkElement::RelAttribute::RelAttribute): + (WebCore::HTMLLinkElement::isAlternate): + (WebCore::HTMLLinkElement::isDisabled): + (WebCore::HTMLLinkElement::isEnabledViaScript): + (WebCore::HTMLLinkElement::isIcon): + (WebCore::HTMLLinkElement::): + * html/PreloadScanner.cpp: + (WebCore::PreloadScanner::processAttribute): + +2010-05-14 Noam Rosenthal <noam.rosenthal@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + [Qt] GraphicsLayer caches directly composited images + https://bugs.webkit.org/show_bug.cgi?id=38444 + + Directly-composited images and solid fills shouldn't be cached, as that cache + is never used (see GraphicsLayerQtImpl::paint). Cache is only relevant for HTML content, + but we were missing that test. + The fix makes sure we only cache HTML content. + + No new tests: this is a minor optimization. + + * platform/graphics/qt/GraphicsLayerQt.cpp: + (WebCore::GraphicsLayerQtImpl::flushChanges): + +2010-05-14 Brian Weinstein <bweinstein@apple.com> + + Reviewed by Mark Rowe. + + Build fix. Had the environment variables wrong for source and destination of the copy operation + that was added. + + * WebCore.vcproj/WebCore.make: + +2010-05-14 Adam Barth <abarth@webkit.org> + + Reviewed by Eric Seidel. + + Remove custom bindings for HTMLInputElement + https://bugs.webkit.org/show_bug.cgi?id=38344 + + Fix a bug in the TestObj.idl file and update expected results. This + was originally part of a larger change reviewed by Eric, but I'm + landing it separately to help me understand the more interesting bits + of the patch clearly. + + * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: + (webkit_dom_test_obj_get_attr_with_setter_exception): + (webkit_dom_test_obj_set_attr_with_setter_exception): + (webkit_dom_test_obj_set_attr_with_getter_exception): + (webkit_dom_test_obj_set_property): + (webkit_dom_test_obj_get_property): + * bindings/scripts/test/GObject/WebKitDOMTestObj.h: + * bindings/scripts/test/JS/JSTestObj.cpp: + (WebCore::jsTestObjAttrWithSetterException): + (WebCore::setJSTestObjAttrWithSetterException): + (WebCore::setJSTestObjAttrWithGetterException): + * bindings/scripts/test/ObjC/DOMTestObj.mm: + (-[DOMTestObj attrWithSetterException]): + (-[DOMTestObj setAttrWithSetterException:]): + (-[DOMTestObj setAttrWithGetterException:]): + * bindings/scripts/test/TestObj.idl: + * bindings/scripts/test/V8/V8TestObj.cpp: + (WebCore::TestObjInternal::attrWithSetterExceptionAttrGetter): + (WebCore::TestObjInternal::attrWithSetterExceptionAttrSetter): + (WebCore::TestObjInternal::attrWithGetterExceptionAttrSetter): + +2010-05-14 Kenneth Russell <kbr@google.com> + + Reviewed by Darin Adler. + + Rename WebGLArray types to TypedArray types + https://bugs.webkit.org/show_bug.cgi?id=39091 + + Extended functionality of do-webcore-rename script and used it to + rename the WebGLArray types to the TypedArray naming convention. + The only source files which were touched by hand, and which are + being manually reviewed, are: + WebCore/page/DOMWindow.idl + WebCore/bindings/generic/RuntimeEnabledFeatures.h (script's changes undone) + WebKit/WebCore/bindings/js/JSDOMWindowCustom.cpp + WebKit/WebCore/bindings/v8/custom/V8DOMWindowCustom.cpp + These only needed to be touched to update the aliases between the + WebGLArray and TypedArray names introduced in bug 39036. (It was + not feasible to have do-webcore-rename handle this as it would + introduce circular renamings.) These aliases will be removed in + roughly a month once existing WebGL content has been updated. + + No new tests; covered under existing WebGL tests. Updated + constructed-objects-prototypes and prototype-inheritance-2 tests. + Ran all layout tests in Safari and all WebGL tests in Chromium. + + * DerivedSources.make: + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.pri: + * WebCore.pro: + * WebCore.xcodeproj/project.pbxproj: + * bindings/js/JSArrayBufferConstructor.cpp: Copied from WebCore/bindings/js/JSWebGLArrayBufferConstructor.cpp. + (WebCore::): + (WebCore::JSArrayBufferConstructor::JSArrayBufferConstructor): + (WebCore::constructCanvasArrayBuffer): + (WebCore::JSArrayBufferConstructor::getConstructData): + * bindings/js/JSArrayBufferConstructor.h: Copied from WebCore/bindings/js/JSWebGLArrayBufferConstructor.h. + (WebCore::construct): + * bindings/js/JSArrayBufferViewCustom.cpp: Copied from WebCore/bindings/js/JSWebGLArrayCustom.cpp. + (WebCore::toJS): + (WebCore::JSArrayBufferView::slice): + * bindings/js/JSArrayBufferViewHelper.h: Copied from WebCore/bindings/js/JSWebGLArrayHelper.h. + * bindings/js/JSDOMWindowCustom.cpp: + (WebCore::JSDOMWindow::arrayBuffer): + (WebCore::JSDOMWindow::int8Array): + (WebCore::JSDOMWindow::uint8Array): + (WebCore::JSDOMWindow::int32Array): + (WebCore::JSDOMWindow::uint32Array): + (WebCore::JSDOMWindow::int16Array): + (WebCore::JSDOMWindow::uint16Array): + (WebCore::JSDOMWindow::floatArray): + (WebCore::JSDOMWindow::webGLArrayBuffer): + (WebCore::JSDOMWindow::webGLByteArray): + (WebCore::JSDOMWindow::webGLUnsignedByteArray): + (WebCore::JSDOMWindow::webGLIntArray): + (WebCore::JSDOMWindow::webGLUnsignedIntArray): + (WebCore::JSDOMWindow::webGLShortArray): + (WebCore::JSDOMWindow::webGLUnsignedShortArray): + (WebCore::JSDOMWindow::webGLFloatArray): + * bindings/js/JSFloatArrayConstructor.cpp: Copied from WebCore/bindings/js/JSWebGLFloatArrayConstructor.cpp. + (WebCore::): + (WebCore::JSFloatArrayConstructor::JSFloatArrayConstructor): + (WebCore::constructCanvasFloatArray): + (WebCore::JSFloatArrayConstructor::getConstructData): + * bindings/js/JSFloatArrayConstructor.h: Copied from WebCore/bindings/js/JSWebGLFloatArrayConstructor.h. + * bindings/js/JSFloatArrayCustom.cpp: Copied from WebCore/bindings/js/JSWebGLFloatArrayCustom.cpp. + (WebCore::JSFloatArray::indexSetter): + (WebCore::toJS): + (WebCore::JSFloatArray::set): + * bindings/js/JSInt16ArrayConstructor.cpp: Copied from WebCore/bindings/js/JSWebGLShortArrayConstructor.cpp. + (WebCore::): + (WebCore::JSInt16ArrayConstructor::JSInt16ArrayConstructor): + (WebCore::constructCanvasShortArray): + (WebCore::JSInt16ArrayConstructor::getConstructData): + * bindings/js/JSInt16ArrayConstructor.h: Copied from WebCore/bindings/js/JSWebGLShortArrayConstructor.h. + * bindings/js/JSInt16ArrayCustom.cpp: Copied from WebCore/bindings/js/JSWebGLShortArrayCustom.cpp. + (WebCore::JSInt16Array::indexSetter): + (WebCore::toJS): + (WebCore::JSInt16Array::set): + * bindings/js/JSInt32ArrayConstructor.cpp: Copied from WebCore/bindings/js/JSWebGLIntArrayConstructor.cpp. + (WebCore::): + (WebCore::JSInt32ArrayConstructor::JSInt32ArrayConstructor): + (WebCore::constructCanvasIntArray): + (WebCore::JSInt32ArrayConstructor::getConstructData): + * bindings/js/JSInt32ArrayConstructor.h: Copied from WebCore/bindings/js/JSWebGLIntArrayConstructor.h. + * bindings/js/JSInt32ArrayCustom.cpp: Copied from WebCore/bindings/js/JSWebGLIntArrayCustom.cpp. + (WebCore::JSInt32Array::indexSetter): + (WebCore::toJS): + (WebCore::JSInt32Array::set): + * bindings/js/JSInt8ArrayConstructor.cpp: Copied from WebCore/bindings/js/JSWebGLByteArrayConstructor.cpp. + (WebCore::): + (WebCore::JSInt8ArrayConstructor::JSInt8ArrayConstructor): + (WebCore::constructCanvasByteArray): + (WebCore::JSInt8ArrayConstructor::getConstructData): + * bindings/js/JSInt8ArrayConstructor.h: Copied from WebCore/bindings/js/JSWebGLByteArrayConstructor.h. + * bindings/js/JSInt8ArrayCustom.cpp: Copied from WebCore/bindings/js/JSWebGLByteArrayCustom.cpp. + (WebCore::JSInt8Array::indexSetter): + (WebCore::toJS): + (WebCore::JSInt8Array::set): + * bindings/js/JSUint16ArrayConstructor.cpp: Copied from WebCore/bindings/js/JSWebGLUnsignedShortArrayConstructor.cpp. + (WebCore::): + (WebCore::JSUint16ArrayConstructor::JSUint16ArrayConstructor): + (WebCore::constructCanvasUnsignedShortArray): + (WebCore::JSUint16ArrayConstructor::getConstructData): + * bindings/js/JSUint16ArrayConstructor.h: Copied from WebCore/bindings/js/JSWebGLUnsignedShortArrayConstructor.h. + * bindings/js/JSUint16ArrayCustom.cpp: Copied from WebCore/bindings/js/JSWebGLUnsignedShortArrayCustom.cpp. + (WebCore::JSUint16Array::indexSetter): + (WebCore::toJS): + (WebCore::JSUint16Array::set): + * bindings/js/JSUint32ArrayConstructor.cpp: Copied from WebCore/bindings/js/JSWebGLUnsignedIntArrayConstructor.cpp. + (WebCore::): + (WebCore::JSUint32ArrayConstructor::JSUint32ArrayConstructor): + (WebCore::constructCanvasUnsignedIntArray): + (WebCore::JSUint32ArrayConstructor::getConstructData): + * bindings/js/JSUint32ArrayConstructor.h: Copied from WebCore/bindings/js/JSWebGLUnsignedIntArrayConstructor.h. + * bindings/js/JSUint32ArrayCustom.cpp: Copied from WebCore/bindings/js/JSWebGLUnsignedIntArrayCustom.cpp. + (WebCore::JSUint32Array::indexSetter): + (WebCore::toJS): + (WebCore::JSUint32Array::set): + * bindings/js/JSUint8ArrayConstructor.cpp: Copied from WebCore/bindings/js/JSWebGLUnsignedByteArrayConstructor.cpp. + (WebCore::): + (WebCore::JSUint8ArrayConstructor::JSUint8ArrayConstructor): + (WebCore::constructCanvasUnsignedByteArray): + (WebCore::JSUint8ArrayConstructor::getConstructData): + * bindings/js/JSUint8ArrayConstructor.h: Copied from WebCore/bindings/js/JSWebGLUnsignedByteArrayConstructor.h. + * bindings/js/JSUint8ArrayCustom.cpp: Copied from WebCore/bindings/js/JSWebGLUnsignedByteArrayCustom.cpp. + (WebCore::JSUint8Array::indexSetter): + (WebCore::toJS): + (WebCore::JSUint8Array::set): + * bindings/js/JSWebGLArrayBufferConstructor.cpp: Removed. + * bindings/js/JSWebGLArrayBufferConstructor.h: Removed. + * bindings/js/JSWebGLArrayCustom.cpp: Removed. + * bindings/js/JSWebGLArrayHelper.h: Removed. + * bindings/js/JSWebGLByteArrayConstructor.cpp: Removed. + * bindings/js/JSWebGLByteArrayConstructor.h: Removed. + * bindings/js/JSWebGLByteArrayCustom.cpp: Removed. + * bindings/js/JSWebGLFloatArrayConstructor.cpp: Removed. + * bindings/js/JSWebGLFloatArrayConstructor.h: Removed. + * bindings/js/JSWebGLFloatArrayCustom.cpp: Removed. + * bindings/js/JSWebGLIntArrayConstructor.cpp: Removed. + * bindings/js/JSWebGLIntArrayConstructor.h: Removed. + * bindings/js/JSWebGLIntArrayCustom.cpp: Removed. + * bindings/js/JSWebGLRenderingContextCustom.cpp: + (WebCore::JSWebGLRenderingContext::bufferData): + (WebCore::JSWebGLRenderingContext::bufferSubData): + (WebCore::JSWebGLRenderingContext::texImage2D): + (WebCore::JSWebGLRenderingContext::texSubImage2D): + (WebCore::dataFunctionf): + (WebCore::dataFunctioni): + (WebCore::dataFunctionMatrix): + * bindings/js/JSWebGLShortArrayConstructor.cpp: Removed. + * bindings/js/JSWebGLShortArrayConstructor.h: Removed. + * bindings/js/JSWebGLShortArrayCustom.cpp: Removed. + * bindings/js/JSWebGLUnsignedByteArrayConstructor.cpp: Removed. + * bindings/js/JSWebGLUnsignedByteArrayConstructor.h: Removed. + * bindings/js/JSWebGLUnsignedByteArrayCustom.cpp: Removed. + * bindings/js/JSWebGLUnsignedIntArrayConstructor.cpp: Removed. + * bindings/js/JSWebGLUnsignedIntArrayConstructor.h: Removed. + * bindings/js/JSWebGLUnsignedIntArrayCustom.cpp: Removed. + * bindings/js/JSWebGLUnsignedShortArrayConstructor.cpp: Removed. + * bindings/js/JSWebGLUnsignedShortArrayConstructor.h: Removed. + * bindings/js/JSWebGLUnsignedShortArrayCustom.cpp: Removed. + * bindings/v8/V8DOMWrapper.cpp: + * bindings/v8/custom/V8ArrayBufferCustom.cpp: Copied from WebCore/bindings/v8/custom/V8WebGLArrayBufferCustom.cpp. + (WebCore::V8ArrayBuffer::constructorCallback): + * bindings/v8/custom/V8ArrayBufferViewCustom.cpp: Copied from WebCore/bindings/v8/custom/V8WebGLArrayCustom.cpp. + (WebCore::toV8): + (WebCore::V8ArrayBufferView::sliceCallback): + * bindings/v8/custom/V8ArrayBufferViewCustom.h: Copied from WebCore/bindings/v8/custom/V8WebGLArrayCustom.h. + (WebCore::constructWebGLArray): + * bindings/v8/custom/V8DOMWindowCustom.cpp: + (WebCore::V8DOMWindow::WebGLArrayBufferAccessorGetter): + (WebCore::V8DOMWindow::WebGLByteArrayAccessorGetter): + (WebCore::V8DOMWindow::WebGLUnsignedByteArrayAccessorGetter): + (WebCore::V8DOMWindow::WebGLShortArrayAccessorGetter): + (WebCore::V8DOMWindow::WebGLUnsignedShortArrayAccessorGetter): + (WebCore::V8DOMWindow::WebGLIntArrayAccessorGetter): + (WebCore::V8DOMWindow::WebGLUnsignedIntArrayAccessorGetter): + (WebCore::V8DOMWindow::WebGLFloatArrayAccessorGetter): + * bindings/v8/custom/V8FloatArrayCustom.cpp: Copied from WebCore/bindings/v8/custom/V8WebGLFloatArrayCustom.cpp. + (WebCore::V8FloatArray::constructorCallback): + (WebCore::V8FloatArray::setCallback): + (WebCore::toV8): + * bindings/v8/custom/V8Int16ArrayCustom.cpp: Copied from WebCore/bindings/v8/custom/V8WebGLShortArrayCustom.cpp. + (WebCore::V8Int16Array::constructorCallback): + (WebCore::V8Int16Array::setCallback): + (WebCore::toV8): + * bindings/v8/custom/V8Int32ArrayCustom.cpp: Copied from WebCore/bindings/v8/custom/V8WebGLIntArrayCustom.cpp. + (WebCore::V8Int32Array::constructorCallback): + (WebCore::V8Int32Array::setCallback): + (WebCore::toV8): + * bindings/v8/custom/V8Int8ArrayCustom.cpp: Copied from WebCore/bindings/v8/custom/V8WebGLByteArrayCustom.cpp. + (WebCore::V8Int8Array::constructorCallback): + (WebCore::V8Int8Array::setCallback): + (WebCore::toV8): + * bindings/v8/custom/V8Uint16ArrayCustom.cpp: Copied from WebCore/bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp. + (WebCore::V8Uint16Array::constructorCallback): + (WebCore::V8Uint16Array::setCallback): + (WebCore::toV8): + * bindings/v8/custom/V8Uint32ArrayCustom.cpp: Copied from WebCore/bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp. + (WebCore::V8Uint32Array::constructorCallback): + (WebCore::V8Uint32Array::setCallback): + (WebCore::toV8): + * bindings/v8/custom/V8Uint8ArrayCustom.cpp: Copied from WebCore/bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp. + (WebCore::V8Uint8Array::constructorCallback): + (WebCore::V8Uint8Array::setCallback): + (WebCore::toV8): + * bindings/v8/custom/V8WebGLArrayBufferCustom.cpp: Removed. + * bindings/v8/custom/V8WebGLArrayCustom.cpp: Removed. + * bindings/v8/custom/V8WebGLArrayCustom.h: Removed. + * bindings/v8/custom/V8WebGLByteArrayCustom.cpp: Removed. + * bindings/v8/custom/V8WebGLFloatArrayCustom.cpp: Removed. + * bindings/v8/custom/V8WebGLIntArrayCustom.cpp: Removed. + * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: + (WebCore::vertexAttribAndUniformHelperf): + (WebCore::uniformHelperi): + (WebCore::uniformMatrixHelper): + * bindings/v8/custom/V8WebGLShortArrayCustom.cpp: Removed. + * bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp: Removed. + * bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp: Removed. + * bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp: Removed. + * html/canvas/ArrayBuffer.cpp: Copied from WebCore/html/canvas/WebGLArrayBuffer.cpp. + (WebCore::ArrayBuffer::create): + (WebCore::ArrayBuffer::ArrayBuffer): + (WebCore::ArrayBuffer::data): + (WebCore::ArrayBuffer::byteLength): + (WebCore::ArrayBuffer::~ArrayBuffer): + (WebCore::ArrayBuffer::tryAllocate): + * html/canvas/ArrayBuffer.h: Copied from WebCore/html/canvas/WebGLArrayBuffer.h. + * html/canvas/ArrayBuffer.idl: Copied from WebCore/html/canvas/WebGLArrayBuffer.idl. + * html/canvas/ArrayBufferView.cpp: Copied from WebCore/html/canvas/WebGLArray.cpp. + (WebCore::ArrayBufferView::ArrayBufferView): + (WebCore::ArrayBufferView::~ArrayBufferView): + (WebCore::ArrayBufferView::setImpl): + (WebCore::ArrayBufferView::calculateOffsetAndLength): + * html/canvas/ArrayBufferView.h: Copied from WebCore/html/canvas/WebGLArray.h. + (WebCore::ArrayBufferView::buffer): + (WebCore::ArrayBufferView::verifySubRange): + (WebCore::ArrayBufferView::clampOffsetAndNumElements): + * html/canvas/ArrayBufferView.idl: Copied from WebCore/html/canvas/WebGLArray.idl. + * html/canvas/FloatArray.cpp: Copied from WebCore/html/canvas/WebGLFloatArray.cpp. + (WebCore::FloatArray::create): + (WebCore::FloatArray::FloatArray): + (WebCore::FloatArray::slice): + * html/canvas/FloatArray.h: Copied from WebCore/html/canvas/WebGLFloatArray.h. + (WebCore::FloatArray::set): + (WebCore::FloatArray::item): + * html/canvas/FloatArray.idl: Copied from WebCore/html/canvas/WebGLFloatArray.idl. + * html/canvas/Int16Array.cpp: Copied from WebCore/html/canvas/WebGLShortArray.cpp. + (WebCore::Int16Array::create): + (WebCore::Int16Array::Int16Array): + (WebCore::Int16Array::slice): + * html/canvas/Int16Array.h: Copied from WebCore/html/canvas/WebGLShortArray.h. + * html/canvas/Int16Array.idl: Copied from WebCore/html/canvas/WebGLShortArray.idl. + * html/canvas/Int32Array.cpp: Copied from WebCore/html/canvas/WebGLIntArray.cpp. + (WebCore::Int32Array::create): + (WebCore::Int32Array::Int32Array): + (WebCore::Int32Array::slice): + * html/canvas/Int32Array.h: Copied from WebCore/html/canvas/WebGLIntArray.h. + * html/canvas/Int32Array.idl: Copied from WebCore/html/canvas/WebGLIntArray.idl. + * html/canvas/Int8Array.cpp: Copied from WebCore/html/canvas/WebGLByteArray.cpp. + (WebCore::Int8Array::create): + (WebCore::Int8Array::Int8Array): + (WebCore::Int8Array::slice): + * html/canvas/Int8Array.h: Copied from WebCore/html/canvas/WebGLByteArray.h. + * html/canvas/Int8Array.idl: Copied from WebCore/html/canvas/WebGLByteArray.idl. + * html/canvas/IntegralTypedArrayBase.h: Copied from WebCore/html/canvas/WebGLIntegralTypedArrayBase.h. + (WebCore::IntegralTypedArrayBase::set): + (WebCore::IntegralTypedArrayBase::item): + (WebCore::IntegralTypedArrayBase::IntegralTypedArrayBase): + * html/canvas/TypedArrayBase.h: Copied from WebCore/html/canvas/WebGLTypedArrayBase.h. + (WebCore::TypedArrayBase::set): + (WebCore::TypedArrayBase::TypedArrayBase): + (WebCore::TypedArrayBase::create): + * html/canvas/Uint16Array.cpp: Copied from WebCore/html/canvas/WebGLUnsignedShortArray.cpp. + (WebCore::Uint16Array::create): + (WebCore::Uint16Array::Uint16Array): + (WebCore::Uint16Array::slice): + * html/canvas/Uint16Array.h: Copied from WebCore/html/canvas/WebGLUnsignedShortArray.h. + * html/canvas/Uint16Array.idl: Copied from WebCore/html/canvas/WebGLUnsignedShortArray.idl. + * html/canvas/Uint32Array.cpp: Copied from WebCore/html/canvas/WebGLUnsignedIntArray.cpp. + (WebCore::Uint32Array::create): + (WebCore::Uint32Array::Uint32Array): + (WebCore::Uint32Array::slice): + * html/canvas/Uint32Array.h: Copied from WebCore/html/canvas/WebGLUnsignedIntArray.h. + * html/canvas/Uint32Array.idl: Copied from WebCore/html/canvas/WebGLUnsignedIntArray.idl. + * html/canvas/Uint8Array.cpp: Copied from WebCore/html/canvas/WebGLUnsignedByteArray.cpp. + (WebCore::Uint8Array::create): + (WebCore::Uint8Array::Uint8Array): + (WebCore::Uint8Array::slice): + * html/canvas/Uint8Array.h: Copied from WebCore/html/canvas/WebGLUnsignedByteArray.h. + * html/canvas/Uint8Array.idl: Copied from WebCore/html/canvas/WebGLUnsignedByteArray.idl. + * html/canvas/WebGLArray.cpp: Removed. + * html/canvas/WebGLArray.h: Removed. + * html/canvas/WebGLArray.idl: Removed. + * html/canvas/WebGLArrayBuffer.cpp: Removed. + * html/canvas/WebGLArrayBuffer.h: Removed. + * html/canvas/WebGLArrayBuffer.idl: Removed. + * html/canvas/WebGLBuffer.cpp: + (WebCore::WebGLBuffer::associateBufferData): + (WebCore::WebGLBuffer::associateBufferSubData): + * html/canvas/WebGLBuffer.h: + (WebCore::WebGLBuffer::elementArrayBuffer): + * html/canvas/WebGLByteArray.cpp: Removed. + * html/canvas/WebGLByteArray.h: Removed. + * html/canvas/WebGLByteArray.idl: Removed. + * html/canvas/WebGLFloatArray.cpp: Removed. + * html/canvas/WebGLFloatArray.h: Removed. + * html/canvas/WebGLFloatArray.idl: Removed. + * html/canvas/WebGLGetInfo.cpp: + (WebCore::WebGLGetInfo::WebGLGetInfo): + (WebCore::WebGLGetInfo::getWebGLFloatArray): + (WebCore::WebGLGetInfo::getWebGLIntArray): + (WebCore::WebGLGetInfo::getWebGLUnsignedByteArray): + * html/canvas/WebGLGetInfo.h: + * html/canvas/WebGLIntArray.cpp: Removed. + * html/canvas/WebGLIntArray.h: Removed. + * html/canvas/WebGLIntArray.idl: Removed. + * html/canvas/WebGLIntegralTypedArrayBase.h: Removed. + * html/canvas/WebGLRenderingContext.cpp: + (WebCore::WebGLRenderingContext::bufferData): + (WebCore::WebGLRenderingContext::bufferSubData): + (WebCore::WebGLRenderingContext::getUniform): + (WebCore::WebGLRenderingContext::getVertexAttrib): + (WebCore::WebGLRenderingContext::readPixels): + (WebCore::WebGLRenderingContext::texImage2D): + (WebCore::WebGLRenderingContext::texSubImage2D): + (WebCore::WebGLRenderingContext::uniform1fv): + (WebCore::WebGLRenderingContext::uniform1iv): + (WebCore::WebGLRenderingContext::uniform2fv): + (WebCore::WebGLRenderingContext::uniform2iv): + (WebCore::WebGLRenderingContext::uniform3fv): + (WebCore::WebGLRenderingContext::uniform3iv): + (WebCore::WebGLRenderingContext::uniform4fv): + (WebCore::WebGLRenderingContext::uniform4iv): + (WebCore::WebGLRenderingContext::uniformMatrix2fv): + (WebCore::WebGLRenderingContext::uniformMatrix3fv): + (WebCore::WebGLRenderingContext::uniformMatrix4fv): + (WebCore::WebGLRenderingContext::vertexAttrib1fv): + (WebCore::WebGLRenderingContext::vertexAttrib2fv): + (WebCore::WebGLRenderingContext::vertexAttrib3fv): + (WebCore::WebGLRenderingContext::vertexAttrib4fv): + (WebCore::WebGLRenderingContext::getWebGLFloatArrayParameter): + (WebCore::WebGLRenderingContext::getWebGLIntArrayParameter): + (WebCore::WebGLRenderingContext::getWebGLUnsignedByteArrayParameter): + * html/canvas/WebGLRenderingContext.h: + * html/canvas/WebGLRenderingContext.idl: + * html/canvas/WebGLShortArray.cpp: Removed. + * html/canvas/WebGLShortArray.h: Removed. + * html/canvas/WebGLShortArray.idl: Removed. + * html/canvas/WebGLTypedArrayBase.h: Removed. + * html/canvas/WebGLUnsignedByteArray.cpp: Removed. + * html/canvas/WebGLUnsignedByteArray.h: Removed. + * html/canvas/WebGLUnsignedByteArray.idl: Removed. + * html/canvas/WebGLUnsignedIntArray.cpp: Removed. + * html/canvas/WebGLUnsignedIntArray.h: Removed. + * html/canvas/WebGLUnsignedIntArray.idl: Removed. + * html/canvas/WebGLUnsignedShortArray.cpp: Removed. + * html/canvas/WebGLUnsignedShortArray.h: Removed. + * html/canvas/WebGLUnsignedShortArray.idl: Removed. + * page/DOMWindow.idl: + * platform/graphics/GraphicsContext3D.h: + * platform/graphics/mac/GraphicsContext3DMac.cpp: + (WebCore::GraphicsContext3D::bufferData): + (WebCore::GraphicsContext3D::bufferSubData): + * platform/graphics/qt/GraphicsContext3DQt.cpp: + (WebCore::GraphicsContext3D::bufferData): + (WebCore::GraphicsContext3D::bufferSubData): + +2010-05-14 Steve Falkenburg <sfalken@apple.com> + + Reviewed by Sam Weinig. + + <rdar://problem/7985864> Connection properties dictionary should use standard callbacks for keys, values + https://bugs.webkit.org/show_bug.cgi?id=39132 + + * platform/network/cf/ResourceHandleCFNet.cpp: + (WebCore::createConnectionProperties): + +2010-05-14 Abhishek Arya <inferno@chromium.org> + + Reviewed by David Hyatt. + + Move the m_width(Length) and m_columns(RenderTable::ColumnStruct) + vector out-of-bounds check out of the ASSERT into the main code. + https://bugs.webkit.org/show_bug.cgi?id=38261 + + Test: fast/table/fixed-table-layout-large-colspan-crash.html + + * rendering/FixedTableLayout.cpp: + (WebCore::FixedTableLayout::calcWidthArray): + +2010-05-14 Eric Seidel <eric@webkit.org> + + Unreviewed, rolling out r59489. + http://trac.webkit.org/changeset/59489 + https://bugs.webkit.org/show_bug.cgi?id=37815 + + abarth broke the known universe and then some. + + * Android.jscbindings.mk: + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * bindings/js/JSBindingsAllInOne.cpp: + * bindings/js/JSCallbackData.cpp: + (WebCore::JSCallbackData::invokeCallback): + * bindings/js/JSEventListener.cpp: + (WebCore::JSEventListener::handleEvent): + * bindings/js/JSInjectedScriptHostCustom.cpp: + (WebCore::InjectedScriptHost::createInjectedScript): + * bindings/js/ScheduledAction.cpp: + (WebCore::ScheduledAction::executeFunctionInContext): + (WebCore::ScheduledAction::execute): + * bindings/js/ScheduledAction.h: + * bindings/js/ScriptController.cpp: + (WebCore::ScriptController::evaluateInWorld): + * bindings/js/ScriptController.h: + * bindings/js/ScriptFunctionCall.cpp: + (WebCore::ScriptFunctionCall::call): + * bindings/objc/ObjCEventListener.mm: + (WebCore::ObjCEventListener::handleEvent): + * bindings/objc/WebScriptObject.mm: + (-[WebScriptObject callWebScriptMethod:withArguments:]): + (-[WebScriptObject evaluateWebScript:]): + * bindings/scripts/CodeGeneratorObjC.pm: + * bindings/scripts/test/ObjC/DOMTestCallback.mm: + (-[DOMTestCallback callbackWithClass1Param:]): + (-[DOMTestCallback callbackWithClass2Param:strArg:]): + (-[DOMTestCallback callbackWithNonBoolReturnType:]): + (-[DOMTestCallback customCallback:class6Param:]): + * bindings/scripts/test/ObjC/DOMTestInterface.mm: + * bindings/scripts/test/ObjC/DOMTestObj.mm: + (-[DOMTestObj readOnlyIntAttr]): + (-[DOMTestObj readOnlyStringAttr]): + (-[DOMTestObj readOnlyTestObjAttr]): + (-[DOMTestObj intAttr]): + (-[DOMTestObj setIntAttr:]): + (-[DOMTestObj longLongAttr]): + (-[DOMTestObj setLongLongAttr:]): + (-[DOMTestObj unsignedLongLongAttr]): + (-[DOMTestObj setUnsignedLongLongAttr:]): + (-[DOMTestObj stringAttr]): + (-[DOMTestObj setStringAttr:]): + (-[DOMTestObj testObjAttr]): + (-[DOMTestObj setTestObjAttr:]): + (-[DOMTestObj attrWithException]): + (-[DOMTestObj setAttrWithException:]): + (-[DOMTestObj attrWithSetterException]): + (-[DOMTestObj setAttrWithSetterException:]): + (-[DOMTestObj attrWithGetterException]): + (-[DOMTestObj setAttrWithGetterException:]): + (-[DOMTestObj customAttr]): + (-[DOMTestObj setCustomAttr:]): + (-[DOMTestObj scriptStringAttr]): + (-[DOMTestObj voidMethod]): + (-[DOMTestObj voidMethodWithArgs:strArg:objArg:]): + (-[DOMTestObj intMethod]): + (-[DOMTestObj intMethodWithArgs:strArg:objArg:]): + (-[DOMTestObj objMethod]): + (-[DOMTestObj objMethodWithArgs:strArg:objArg:]): + (-[DOMTestObj serializedValue:]): + (-[DOMTestObj methodWithException]): + (-[DOMTestObj customMethod]): + (-[DOMTestObj customMethodWithArgs:strArg:objArg:]): + (-[DOMTestObj customArgsAndException:]): + (-[DOMTestObj addEventListener:listener:useCapture:]): + (-[DOMTestObj removeEventListener:listener:useCapture:]): + (-[DOMTestObj withDynamicFrame]): + (-[DOMTestObj withDynamicFrameAndArg:]): + (-[DOMTestObj withDynamicFrameAndOptionalArg:optionalArg:]): + (-[DOMTestObj withDynamicFrameAndUserGesture:]): + (-[DOMTestObj withDynamicFrameAndUserGestureASAD:optionalArg:]): + (-[DOMTestObj withScriptStateVoid]): + (-[DOMTestObj withScriptStateObj]): + (-[DOMTestObj withScriptStateVoidException]): + (-[DOMTestObj withScriptStateObjException]): + (-[DOMTestObj methodWithOptionalArg:]): + (-[DOMTestObj methodWithNonOptionalArgAndOptionalArg:opt:]): + (-[DOMTestObj methodWithNonOptionalArgAndTwoOptionalArgs:opt1:opt2:]): + * bindings/v8/ScriptController.cpp: + * bindings/v8/ScriptController.h: + * html/HTMLFrameElementBase.cpp: + (WebCore::HTMLFrameElementBase::isURLAllowed): + +2010-05-14 Justin Schuh <jschuh@chromium.org> + + Reviewed by Adam Barth. + + Moving frame.src checks out of the bindings + https://bugs.webkit.org/show_bug.cgi?id=37815 + + Moved JavaScript frame.src checks out of bindings and into + HTMLFrameElementBase. Added main thread state stack to JavaScriptCore + so ExecState is available inside core DOM. Updated affected bindings + (except for GObject, which will need to be updated to avoid origin + failures inside native code). + + * Android.jscbindings.mk: + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * bindings/js/JSBindingsAllInOne.cpp: + * bindings/js/JSCallbackData.cpp: + (WebCore::JSCallbackData::invokeCallback): + * bindings/js/JSEventListener.cpp: + (WebCore::JSEventListener::handleEvent): + * bindings/js/JSInjectedScriptHostCustom.cpp: + (WebCore::InjectedScriptHost::createInjectedScript): + * bindings/js/ScheduledAction.cpp: + (WebCore::ScheduledAction::executeFunctionInContext): + (WebCore::ScheduledAction::execute): + * bindings/js/ScheduledAction.h: + * bindings/js/ScriptController.cpp: + (WebCore::ScriptController::evaluateInWorld): + (WebCore::ScriptController::canAccessFromCurrentOrigin): + * bindings/js/ScriptController.h: + * bindings/js/ScriptFunctionCall.cpp: + (WebCore::ScriptFunctionCall::call): + * bindings/objc/ObjCEventListener.mm: + (WebCore::ObjCEventListener::handleEvent): + * bindings/objc/WebScriptObject.mm: + (-[WebScriptObject callWebScriptMethod:withArguments:]): + (-[WebScriptObject evaluateWebScript:]): + * bindings/scripts/CodeGeneratorObjC.pm: + * bindings/scripts/test/ObjC/DOMTestCallback.mm: + (-[DOMTestCallback callbackWithClass1Param:]): + (-[DOMTestCallback callbackWithClass2Param:strArg:]): + (-[DOMTestCallback callbackWithNonBoolReturnType:]): + (-[DOMTestCallback customCallback:class6Param:]): + * bindings/scripts/test/ObjC/DOMTestInterface.mm: + * bindings/scripts/test/ObjC/DOMTestObj.mm: + (-[DOMTestObj readOnlyIntAttr]): + (-[DOMTestObj readOnlyStringAttr]): + (-[DOMTestObj readOnlyTestObjAttr]): + (-[DOMTestObj intAttr]): + (-[DOMTestObj setIntAttr:]): + (-[DOMTestObj longLongAttr]): + (-[DOMTestObj setLongLongAttr:]): + (-[DOMTestObj unsignedLongLongAttr]): + (-[DOMTestObj setUnsignedLongLongAttr:]): + (-[DOMTestObj stringAttr]): + (-[DOMTestObj setStringAttr:]): + (-[DOMTestObj testObjAttr]): + (-[DOMTestObj setTestObjAttr:]): + (-[DOMTestObj attrWithException]): + (-[DOMTestObj setAttrWithException:]): + (-[DOMTestObj attrWithSetterException]): + (-[DOMTestObj setAttrWithSetterException:]): + (-[DOMTestObj attrWithGetterException]): + (-[DOMTestObj setAttrWithGetterException:]): + (-[DOMTestObj customAttr]): + (-[DOMTestObj setCustomAttr:]): + (-[DOMTestObj scriptStringAttr]): + (-[DOMTestObj voidMethod]): + (-[DOMTestObj voidMethodWithArgs:strArg:objArg:]): + (-[DOMTestObj intMethod]): + (-[DOMTestObj intMethodWithArgs:strArg:objArg:]): + (-[DOMTestObj objMethod]): + (-[DOMTestObj objMethodWithArgs:strArg:objArg:]): + (-[DOMTestObj serializedValue:]): + (-[DOMTestObj methodWithException]): + (-[DOMTestObj customMethod]): + (-[DOMTestObj customMethodWithArgs:strArg:objArg:]): + (-[DOMTestObj customArgsAndException:]): + (-[DOMTestObj addEventListener:listener:useCapture:]): + (-[DOMTestObj removeEventListener:listener:useCapture:]): + (-[DOMTestObj withDynamicFrame]): + (-[DOMTestObj withDynamicFrameAndArg:]): + (-[DOMTestObj withDynamicFrameAndOptionalArg:optionalArg:]): + (-[DOMTestObj withDynamicFrameAndUserGesture:]): + (-[DOMTestObj withDynamicFrameAndUserGestureASAD:optionalArg:]): + (-[DOMTestObj withScriptStateVoid]): + (-[DOMTestObj withScriptStateObj]): + (-[DOMTestObj withScriptStateVoidException]): + (-[DOMTestObj withScriptStateObjException]): + (-[DOMTestObj methodWithOptionalArg:]): + (-[DOMTestObj methodWithNonOptionalArgAndOptionalArg:opt:]): + (-[DOMTestObj methodWithNonOptionalArgAndTwoOptionalArgs:opt1:opt2:]): + * bindings/v8/ScriptController.cpp: + (WebCore::ScriptController::canAccessFromCurrentOrigin): + * bindings/v8/ScriptController.h: + * html/HTMLFrameElementBase.cpp: + (WebCore::HTMLFrameElementBase::isURLAllowed): + +2010-05-14 Sergey Ulanov <sergeyu@chromium.org> + + Reviewed by Dmitry Titov and Brett Wilson. + + Adding resized image caching for Skia. + https://bugs.webkit.org/show_bug.cgi?id=39085 + + Tests: HTML5 video on YouTube. + + * platform/graphics/skia/ImageSkia.cpp: + (WebCore::Image::drawPattern): Use bitmap->resizedBitmap() to cache resized image when possible. + +2010-05-14 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Brady Eidson. + + https://bugs.webkit.org/show_bug.cgi?id=39008 + <rdar://problem/7976142> REGRESSION (r58950): Webkit crashes on clicking back button when in Hotmail + + Test: fast/parser/tokenizer-close-during-document-write.html + + * dom/Document.cpp: (WebCore::Document::write): Check that the tokenizer is still around + after calling write(). It can become null (as it happens in regression test), and I don't + see any guarantee that it would never be replaced with a different one (but I can't make a + test for that). + +2010-05-14 Jian Li <jianli@chromium.org> + + Rubber-stamped by Dmitry Titov. + + Fix the code indentation inside a namespace to be consistent with the + style guide. + + * workers/GenericWorkerTask.h: + +2010-05-14 Jian Li <jianli@chromium.org> + + Reviewed by Dmitry Titov. + + Remove the ENABLE(WORKERS) guard from GenericWorkerTask.h and rename + all occurrences of GenericWorkerTask* to GenericTask* in this file. + https://bugs.webkit.org/show_bug.cgi?id=39129 + + I will have another patch to rename the file and move it to the right + place. + + * workers/GenericWorkerTask.h: + (WebCore::): + (WebCore::GenericTask1::create): + (WebCore::GenericTask1::GenericTask1): + (WebCore::GenericTask2::create): + (WebCore::GenericTask2::GenericTask2): + (WebCore::GenericTask3::create): + (WebCore::GenericTask3::GenericTask3): + (WebCore::GenericTask4::create): + (WebCore::GenericTask4::GenericTask4): + (WebCore::GenericTask5::create): + (WebCore::GenericTask5::GenericTask5): + (WebCore::GenericTask6::create): + (WebCore::GenericTask6::GenericTask6): + (WebCore::GenericTask7::create): + (WebCore::GenericTask7::GenericTask7): + (WebCore::GenericTask8::create): + (WebCore::GenericTask8::GenericTask8): + (WebCore::createCallbackTask): + +2010-05-14 Evan Martin <evan@chromium.org> + + Reviewed by David Levin. + + [chromium] don't call fontconfig twice in complex text path + https://bugs.webkit.org/show_bug.cgi?id=38701 + + Previously getFontDataForCharacters would call fontconfig once to + resolve a font name, then pass that name to getCachedFontPlatformData + to load the font. This would be two trips through fontconfig (including + IPCs). With this change, we completely load the font in the first pass. + + This patch is actually the same code as in r58341, which was reverted + because of a performance problem; a performance improvement has now + been committed, and with that change in place this change improves + the Chromium intl2 page cycler performance by another 5%. + + See also https://bugs.webkit.org/show_bug.cgi?id=37904 . + + Test: fast/text/international/bold-bengali.html + (Was checked in as part of the first attempt at this change, continues + to pass after this change.) + + * platform/chromium/ChromiumBridge.h: + * platform/graphics/chromium/FontCacheLinux.cpp: + (WebCore::FontCache::getFontDataForCharacters): + +2010-05-14 Young Han Lee <joybro@company100.net> + + Reviewed by Darin Adler. + + Don't include RetainPtr.h unless PLATFORM(CF) is set. + The RetainPtr is only used for CF platform in this class. + https://bugs.webkit.org/show_bug.cgi?id=39043 + + No new tests, there is no new functionality. + + * platform/network/curl/ResourceHandleManager.cpp: + +2010-05-14 Brian Weinstein <bweinstein@apple.com> + + Reviewed by Adam Roben. + + Build fix, we need to copy over the files in $(WebKitOutputDir)/include/JavaScriptCore/private before + WebCore builds. This is because we are building a couple WTF files in WebCore and JavaScriptCore. + + * WebCore.vcproj/WebCore.make: + +2010-05-14 Shinichiro Hamaji <hamaji@chromium.org> + + Unreviewed. Attempt to fix chromium's memory bot error. + + More :visited link optimizations to reduce memory usage + https://bugs.webkit.org/show_bug.cgi?id=39084 + + The original change (r59386) adds check for m_element in initElement. + As don't initialize m_element in the constructor of CSSStyleSelector, + valgrind complains. + + * css/CSSStyleSelector.cpp: + (WebCore::CSSStyleSelector::CSSStyleSelector): + +2010-05-14 Andreas Kling <andreas.kling@nokia.com> + + Reviewed by Darin Adler. + + CSSParser::parseColor() shouldn't alter 'color' unless passed a valid color string. + https://bugs.webkit.org/show_bug.cgi?id=39031 + + * css/CSSParser.cpp: + (WebCore::CSSParser::parseColor): + * editing/ApplyStyleCommand.cpp: + (WebCore::StyleChange::extractTextStyles): Don't depend on old behavior. + * html/canvas/CanvasRenderingContext2D.cpp: + (WebCore::CanvasRenderingContext2D::setShadow): Remove dead code. + +2010-05-14 Jens Alfke <snej@chromium.org> + + Reviewed by John Sullivan. + + Don't clear yellow autofill highlight from text fields until the user edits them. + https://bugs.webkit.org/show_bug.cgi?id=39032 + No new tests (Couldn't find any autofill tests. The flag doesn't seem to be exposed to JS.) + + * html/HTMLInputElement.cpp: + (WebCore::HTMLInputElement::handleFocusEvent): Don't clear the autofilled flag. + (WebCore::HTMLInputElement::setValueFromRenderer): Clear the autofilled flag. + +2010-05-14 Zhenyao Mo <zmo@google.com> + + Reviewed by Dimitri Glazkov. + + Must implement OpenGL ES 2.0 semantics for NPOT textures + https://bugs.webkit.org/show_bug.cgi?id=33805 + + Test: fast/canvas/webgl/texture-npot.html + + * html/canvas/WebGLRenderingContext.cpp: + (WebCore::WebGLRenderingContext::WebGLRenderingContext): Create black 1x1 textures. + (WebCore::WebGLRenderingContext::bindTexture): Set texture dimensionality. + (WebCore::WebGLRenderingContext::copyTexImage2D): Error check, set texture size. + (WebCore::WebGLRenderingContext::drawArrays): Bind to black textures if needed. + (WebCore::WebGLRenderingContext::drawElements): Bind to black textures if needed. + (WebCore::WebGLRenderingContext::generateMipmap): Error check. + (WebCore::WebGLRenderingContext::texImage2DBase): Error check, set texture size. + (WebCore::WebGLRenderingContext::texParameterf): Set texture parameter. + (WebCore::WebGLRenderingContext::texParameteri): Ditto. + (WebCore::WebGLRenderingContext::handleNPOTTextures): Bind to black textures if needed before draw, and bind back to original textures after draw. + * html/canvas/WebGLRenderingContext.h: Add black 1x1 textures. + * html/canvas/WebGLTexture.cpp: Add support to track NPOT textures. + (WebCore::WebGLTexture::createBlackTexture1x1): Create a black 1x1 texture. + (WebCore::WebGLTexture::WebGLTexture): Initialize parameters and states. + (WebCore::WebGLTexture::setDimensionality): Set dimensionality. + (WebCore::WebGLTexture::setParameteri): Set parameter. + (WebCore::WebGLTexture::setParameterf): Ditto. + (WebCore::WebGLTexture::setSize): Set level 0 texture size. + (WebCore::WebGLTexture::isNPOT): Whether the texture is NPOT. + (WebCore::WebGLTexture::updateNPOTStates): Calculate NPOT and NeedToUseBlackTexture states. + * html/canvas/WebGLTexture.h: Add support to track NPOT textures. + (WebCore::WebGLTexture::isNPOT): + (WebCore::WebGLTexture::needToUseBlackTexture): + +2010-05-14 Andrey Kosyakov <caseq@chromium.org> + + Reviewed by Pavel Feldman. + + Web Inspector: add help on keyboard shortcuts (take 2). + + https://bugs.webkit.org/show_bug.cgi?id=38667 + + * English.lproj/localizedStrings.js: + * WebCore.gypi: + * WebCore.vcproj/WebCore.vcproj: + * inspector/front-end/CallStackSidebarPane.js: + (WebInspector.CallStackSidebarPane): + (WebInspector.CallStackSidebarPane.prototype._placardSelected): + (WebInspector.CallStackSidebarPane.prototype.registerShortcuts): + * inspector/front-end/ConsoleView.js: + (WebInspector.ConsoleView): + (WebInspector.ConsoleView.prototype._registerShortcuts): + * inspector/front-end/ElementsPanel.js: + (WebInspector.ElementsPanel): + (WebInspector.ElementsPanel.prototype._registerShortcuts): + * inspector/front-end/ElementsTreeOutline.js: + (WebInspector.ElementsTreeOutline.prototype._keyDown): + * inspector/front-end/HelpScreen.js: Added. + * inspector/front-end/KeyboardShortcut.js: + * inspector/front-end/ScriptsPanel.js: + (WebInspector.ScriptsPanel.prototype.elementsToRestoreScrollPositionsFor): + (WebInspector.ScriptsPanel.prototype._registerShortcuts): + * inspector/front-end/ShortcutsHelp.js: Added. + * inspector/front-end/SidebarPane.js: + (WebInspector.SidebarPane.prototype._onTitleKeyDown): + * inspector/front-end/StylesSidebarPane.js: + (WebInspector.StylesSidebarPane.prototype.removeSection): + (WebInspector.StylesSidebarPane.prototype.registerShortcuts): + * inspector/front-end/TextViewer.js: + (WebInspector.TextViewer.prototype._handleKeyDown): + * inspector/front-end/WebKit.qrc: + * inspector/front-end/helpScreen.css: Added. + +2010-05-14 Tony Gentilcore <tonyg@chromium.org> + + Reviewed by Darin Fisher. + + [chromium] Update chromium port to send/receive cached metadata + https://bugs.webkit.org/show_bug.cgi?id=38665 + + No new tests because no new functionality. + + * platform/chromium/ChromiumBridge.h: + * platform/network/chromium/ResourceResponse.h: + (WebCore::ResourceResponse::ResourceResponse): + (WebCore::ResourceResponse::responseTime): + (WebCore::ResourceResponse::setResponseTime): + +2010-05-14 Chris Evans <cevans@chromium.org> + + Reviewed by Adam Barth. + + Chromium-specific fix to prevent zombie infobars. + + https://bugs.webkit.org/show_bug.cgi?id=38948 + + * bindings/v8/ScriptController.cpp + (WebCore::ScriptController::processingUserGesture): + Require a more definite "no" signal. + * loader/RedirectScheduler.cpp: + (WebCore::ScheduledFormSubmission::fire): + Use a very strong yes / no signal; no need for "possible" here. + * dom/UserGestureIndicator.h: + * dom/UserGestureIndicator.cpp: + Adapt to tri-state: definitely yes; definitely no; not sure. + +2010-05-14 Aaron Kennedy <tffeeb@gmail.com> + + Reviewed by Simon Hausmann. + + [Qt] JavaScript unable to invoke methods declared in QML + https://bugs.webkit.org/show_bug.cgi?id=38949 + + JavaScript code executed by webkit cannot call into QML declared + methods, as it does not check for dynamic meta objects. + + * bridge/qt/qt_instance.cpp: + (JSC::Bindings::QtInstance::stringValue): Use QMetaObject::metacall. + * bridge/qt/qt_runtime.cpp: + (JSC::Bindings::QtRuntimeMetaMethod::call): Ditto. + +2010-05-14 Ben Murdoch <benm@google.com> + + Reviewed by Darin Fisher. + + Touch events are disabled by default when using V8. + https://bugs.webkit.org/show_bug.cgi?id=38990 + + Touch events are protected by a compile time guard, so it's safe to + assume that the runtime flag should be enabled by default when this + guard is present. + + No new tests, build fix for Android. + + * bindings/generic/RuntimeEnabledFeatures.cpp: enable touch events by default. + +2010-05-14 George Wright <gwright@rim.com> + + Reviewed by George Staikos. + + https://bugs.webkit.org/show_bug.cgi?id=38909 + + Update JSDataGridColumnListCustom.cpp to call identifierToAtomicString() + on the property name. + + * bindings/js/JSDataGridColumnListCustom.cpp: + (WebCore::JSDataGridColumnList::canGetItemsForName): + (WebCore::JSDataGridColumnList::nameGetter): + +2010-05-14 Andreas Kling <andreas.kling@nokia.com> + + Reviewed by Darin Adler. + + Ignore invalid values for various CanvasRenderingContext2D properties + (lineWidth, miterLimit, shadowOffsetX, shadowOffsetY and shadowBlur) + + https://bugs.webkit.org/show_bug.cgi?id=38841 + + Test: fast/canvas/canvas-invalid-values.html + + * html/canvas/CanvasRenderingContext2D.cpp: + (WebCore::CanvasRenderingContext2D::setLineWidth): + (WebCore::CanvasRenderingContext2D::setMiterLimit): + (WebCore::CanvasRenderingContext2D::setShadowOffsetX): + (WebCore::CanvasRenderingContext2D::setShadowOffsetY): + (WebCore::CanvasRenderingContext2D::setShadowBlur): + +2010-05-13 Timothy Hatcher <timothy@apple.com> + + Expose WebCore::reportException and WebCore::toJSDOMWindow symbols. + + Reviewed by Sam Weinig. + + * WebCore.base.exp: Expose reportException and toJSDOMWindow. + +2010-05-13 Joseph Pecoraro <joepeck@webkit.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Clearing Breakpoints Too Often + https://bugs.webkit.org/show_bug.cgi?id=39094 + + Minor resets should preserve both workers and breakpoints. + + * inspector/front-end/ScriptsPanel.js: + (WebInspector.ScriptsPanel.prototype.reset): + +2010-05-13 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Dan Bernstein. + + iframes in compositing layers don't redraw correctly on scrolling + https://bugs.webkit.org/show_bug.cgi?id=39096 + + When an iframe ends up in a compositing layer (that is painting to its backing store), we need + to turn off blitting on scrolling. RenderView::paintBoxDecorations() already has code to do this + for transformed frames, so do the same thing when the frame is enclosed in a compositing layer. + + Test: compositing/iframes/iframe-copy-on-scroll.html + + * rendering/RenderView.cpp: + (WebCore::RenderView::paintBoxDecorations): + +2010-05-13 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Dave Hyatt. + + Fix scrolling in composited iframes + https://bugs.webkit.org/show_bug.cgi?id=39088 + <rdar://problem/7980099> + + When propagating compositing out of iframes, we have to update the position of the iframe content + layers on scrolling. + + Test: compositing/iframes/scrolling-iframe.html + + * page/FrameView.cpp: + (WebCore::FrameView::scrollPositionChanged): Call updateContentLayerScrollPosition() when scrolling. + + * rendering/RenderLayerBacking.cpp: + (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): Renamed setRootPlatformLayerClippingBox() to updateContentLayerOffset(). + + * rendering/RenderLayerCompositor.h: + * rendering/RenderLayerCompositor.cpp: Rename m_clippingLayer to m_clipLayer to go better with m_scrollLayer. + (WebCore::RenderLayerCompositor::updateContentLayerOffset): Renamed from setRootPlatformLayerClippingBox(). + Set the size of the clipping layer from the FrameView now, so that scrollbars are not clipped out. + Update the scroll layer position too. + (WebCore::RenderLayerCompositor::updateContentLayerScrollPosition): Set the position of the scroll layer + when the ScrollView is scrolled. + (WebCore::RenderLayerCompositor::rootPlatformLayer): m_clippingLayer rename. + (WebCore::RenderLayerCompositor::ensureRootPlatformLayer): m_clippingLayer rename. Also create m_scrollLayer at + the same time as the clip layer, and clean it up as necessary. + (WebCore::RenderLayerCompositor::destroyRootPlatformLayer): m_clippingLayer rename, and clean up the m_scrollLayer too. + (WebCore::RenderLayerCompositor::detachRootPlatformLayer): m_clippingLayer rename + +2010-05-13 Sam Weinig <sam@webkit.org> + + Reviewed by Anders Carlsson. + + Follow up to: + Fix for https://bugs.webkit.org/show_bug.cgi?id=38221 + Memory issues due to the changes in 36556 (increased CSSPrimitiveValue size). + Part of <rdar://problem/7921275> + + Fix failing tests on Leopard. + + Initialize m_hasCachedCSSText in CSSPrimitiveValue::init methods. + + * css/CSSPrimitiveValue.cpp: + (WebCore::CSSPrimitiveValue::init): + (WebCore::CSSPrimitiveValue::cssText): Add extra assertion. + +2010-05-13 Kent Tamura <tkent@chromium.org> + + Reviewed by Darin Adler. + + Can't submit a form with <input type=checkbox required> + https://bugs.webkit.org/show_bug.cgi?id=39065 + + Test: fast/forms/interactive-validation-required-checkbox.html + + * html/HTMLInputElement.cpp: + (WebCore::HTMLInputElement::setChecked): + Update the validity cache when a checkbox state is changed. + +2010-05-13 Kenneth Russell <kbr@google.com> + + Reviewed by Dimitri Glazkov. + + Alias WebGLArray type names to TypedArray type names + https://bugs.webkit.org/show_bug.cgi?id=39036 + + Exposed the existing WebGL<T>Array constructor functions on the + DOMWindow under the naming convention in the TypedArray spec. The + implementations will be renamed in a subsequent bug, and the + aliases to the WebGL<T>Array type names eventually removed. Ran + all layout tests (including WebGL) in Safari, and WebGL tests in + Chromium. + + Test: revised array-unit-tests.html to test both type names. + Revised global prototype and constructor tests to ignore new types. + + * bindings/generic/RuntimeEnabledFeatures.h: + (WebCore::RuntimeEnabledFeatures::arrayBufferEnabled): + (WebCore::RuntimeEnabledFeatures::int8ArrayEnabled): + (WebCore::RuntimeEnabledFeatures::uint8ArrayEnabled): + (WebCore::RuntimeEnabledFeatures::int16ArrayEnabled): + (WebCore::RuntimeEnabledFeatures::uint16ArrayEnabled): + (WebCore::RuntimeEnabledFeatures::int32ArrayEnabled): + (WebCore::RuntimeEnabledFeatures::uint32ArrayEnabled): + (WebCore::RuntimeEnabledFeatures::floatArrayEnabled): + * bindings/js/JSDOMWindowCustom.cpp: + (WebCore::JSDOMWindow::arrayBuffer): + (WebCore::JSDOMWindow::int8Array): + (WebCore::JSDOMWindow::uint8Array): + (WebCore::JSDOMWindow::int32Array): + (WebCore::JSDOMWindow::uint32Array): + (WebCore::JSDOMWindow::int16Array): + (WebCore::JSDOMWindow::uint16Array): + (WebCore::JSDOMWindow::floatArray): + * bindings/v8/custom/V8DOMWindowCustom.cpp: + (WebCore::V8DOMWindow::ArrayBufferAccessorGetter): + (WebCore::V8DOMWindow::Int8ArrayAccessorGetter): + (WebCore::V8DOMWindow::Uint8ArrayAccessorGetter): + (WebCore::V8DOMWindow::Int16ArrayAccessorGetter): + (WebCore::V8DOMWindow::Uint16ArrayAccessorGetter): + (WebCore::V8DOMWindow::Int32ArrayAccessorGetter): + (WebCore::V8DOMWindow::Uint32ArrayAccessorGetter): + (WebCore::V8DOMWindow::FloatArrayAccessorGetter): + * page/DOMWindow.idl: + +2010-05-13 David Hyatt <hyatt@apple.com> + + Reviewed by Anders Carlsson. + + https://bugs.webkit.org/show_bug.cgi?id=39084 + + Improve :visited style resolution to reduce its memory footprint and to make some speed adjustments and + simplifications. + + (1) Tie the caching of link state on CSSStyleSelector to the element. Just clear out the element when + style resolution finishes for the unvisited case to avoid caching across external calls. The internal + calls share the cache just fine by doing this. + + (2) Delete the RenderStyle if the link is unvisited. This shouldn't take long enough to make us vulnerable + to timing attacks, and it makes sure the overall footprint stays the way it used to be for unvisited links. + + (3) Limit the set of properties that can be applied to :visited links to only the colors it supports. This + stops images from being loadable from :visited rules. + + * css/CSSStyleSelector.cpp: + (WebCore::CSSStyleSelector::init): + (WebCore::CSSStyleSelector::SelectorChecker::determineLinkState): + (WebCore::CSSStyleSelector::initElement): + (WebCore::CSSStyleSelector::canShareStyleWithElement): + (WebCore::CSSStyleSelector::styleForElement): + (WebCore::CSSStyleSelector::pseudoStyleForElement): + (WebCore::isValidVisitedLinkProperty): + (WebCore::CSSStyleSelector::applyProperty): + * css/CSSStyleSelector.h: + * rendering/style/RenderStyle.cpp: + (WebCore::colorIncludingFallback): + +2010-05-13 Sam Weinig <sam@webkit.org> + + Reviewed by Darin Adler. + + Fix for https://bugs.webkit.org/show_bug.cgi?id=38221 + Memory issues due to the changes in 36556 (increased CSSPrimitiveValue size). + Part of <rdar://problem/7921275> + + - Use an external cache to speedup cssText for CSSPrimitiveValue instead + of an extra member variable. + + * css/CSSPrimitiveValue.cpp: + (WebCore::cssTextCache): + (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): + (WebCore::CSSPrimitiveValue::cleanup): + (WebCore::CSSPrimitiveValue::cssText): + * css/CSSPrimitiveValue.h: + (WebCore::CSSPrimitiveValue::): + * css/CSSPrimitiveValueMappings.h: + (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): + +2010-05-13 Enrica Casucci <enrica@apple.com> + + Reviewed by Dave Hyatt. + + Adding block elements to a block and removing them changes the height of the element. + https://bugs.webkit.org/show_bug.cgi?id=38874 + + The initial height of an empty editable block is different from the height of the same block after we add block elements + and remove them. + + Test: editing/deleting/delete-block-contents-004.html + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::layoutBlock): resetting m_childrenInline flag to true when layout a block with no children. + +2010-05-13 Brady Eidson <beidson@apple.com> + + Reviewed by Darin Adler. + + Repro crash at www.sears.com (infinite recursion in beforeunload handler) + <rdar://problem/7965182> and https://bugs.webkit.org/show_bug.cgi?id=38928 + + Test: fast/loader/recursive-before-unload-crash.html + + * loader/FrameLoader.cpp: + (WebCore::FrameLoader::shouldClose): Copied from Frame, with the pageDismissal flag set. + * loader/FrameLoader.h: + + * page/Frame.cpp: + (WebCore::Frame::shouldClose): Forward to the new FrameLoader::shouldClose(). + * page/Frame.h: + (WebCore::Frame::existingDOMWindow): + +2010-05-13 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r59376. + http://trac.webkit.org/changeset/59376 + https://bugs.webkit.org/show_bug.cgi?id=39080 + + Broke window prototype tests (Requested by jamesr on #webkit). + + * bindings/generic/RuntimeEnabledFeatures.h: + * bindings/js/JSDOMWindowCustom.cpp: + (WebCore::JSDOMWindow::webGLFloatArray): + * bindings/v8/custom/V8DOMWindowCustom.cpp: + * page/DOMWindow.idl: + +2010-05-13 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Yury Semikhatsky. + + Web Inspector: A disabled style property cannot be deleted. + + https://bugs.webkit.org/show_bug.cgi?id=39057 + + * inspector/InspectorDOMAgent.cpp: + (WebCore::InspectorDOMAgent::applyStyleText): + +2010-05-12 Kenneth Russell <kbr@google.com> + + Reviewed by Dimitri Glazkov. + + Alias WebGLArray type names to TypedArray type names + https://bugs.webkit.org/show_bug.cgi?id=39036 + + Exposed the existing WebGL<T>Array constructor functions on the + DOMWindow under the naming convention in the TypedArray spec. The + implementations will be renamed in a subsequent bug, and the + aliases to the WebGL<T>Array type names eventually removed. Ran + all WebGL layout tests in Safari and Chromium. + + Test: revised array-unit-tests.html to test both type names. + + * bindings/generic/RuntimeEnabledFeatures.h: + (WebCore::RuntimeEnabledFeatures::arrayBufferEnabled): + (WebCore::RuntimeEnabledFeatures::int8ArrayEnabled): + (WebCore::RuntimeEnabledFeatures::uint8ArrayEnabled): + (WebCore::RuntimeEnabledFeatures::int16ArrayEnabled): + (WebCore::RuntimeEnabledFeatures::uint16ArrayEnabled): + (WebCore::RuntimeEnabledFeatures::int32ArrayEnabled): + (WebCore::RuntimeEnabledFeatures::uint32ArrayEnabled): + (WebCore::RuntimeEnabledFeatures::floatArrayEnabled): + * bindings/js/JSDOMWindowCustom.cpp: + (WebCore::JSDOMWindow::arrayBuffer): + (WebCore::JSDOMWindow::int8Array): + (WebCore::JSDOMWindow::uint8Array): + (WebCore::JSDOMWindow::int32Array): + (WebCore::JSDOMWindow::uint32Array): + (WebCore::JSDOMWindow::int16Array): + (WebCore::JSDOMWindow::uint16Array): + (WebCore::JSDOMWindow::floatArray): + * bindings/v8/custom/V8DOMWindowCustom.cpp: + (WebCore::V8DOMWindow::ArrayBufferAccessorGetter): + (WebCore::V8DOMWindow::Int8ArrayAccessorGetter): + (WebCore::V8DOMWindow::Uint8ArrayAccessorGetter): + (WebCore::V8DOMWindow::Int16ArrayAccessorGetter): + (WebCore::V8DOMWindow::Uint16ArrayAccessorGetter): + (WebCore::V8DOMWindow::Int32ArrayAccessorGetter): + (WebCore::V8DOMWindow::Uint32ArrayAccessorGetter): + (WebCore::V8DOMWindow::FloatArrayAccessorGetter): + * page/DOMWindow.idl: + +2010-05-13 Brady Eidson <beidson@apple.com> + + Reviewed by John Sullivan. + + Part of <rdar://problem/7965182> and https://bugs.webkit.org/show_bug.cgi?id=38928 + + No new tests. (No change in behavior) + + m_unloadEventBeingDispatched was already overloaded to include both unload and pagehide events. + In general, these are "page dismissal" events, and might also include beforeunload, so let's rename + the flag! + + * loader/FrameLoader.cpp: + (WebCore::FrameLoader::FrameLoader): + (WebCore::FrameLoader::stopLoading): + (WebCore::FrameLoader::loadURL): + (WebCore::FrameLoader::loadWithDocumentLoader): + (WebCore::FrameLoader::stopAllLoaders): + (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): + (WebCore::FrameLoader::pageHidden): + * loader/FrameLoader.h: + +2010-05-13 Joseph Pecoraro <joepeck@webkit.org> + + Reviewed by Pavel Feldman. + + Web Inspector: Event Markers should be hidden in Resource's "Size" Graph + https://bugs.webkit.org/show_bug.cgi?id=39074 + + Added Show / Hide event dividers functionality to the timeline grid, + and included delegation functions in AbstractTimelinePanel. + + * inspector/front-end/AbstractTimelinePanel.js: delegate to the inner grid + (WebInspector.AbstractTimelinePanel.prototype.hideEventDividers): + (WebInspector.AbstractTimelinePanel.prototype.showEventDividers): + * inspector/front-end/ResourcesPanel.js: + (WebInspector.ResourcesPanel.prototype.populateSidebar): save a reference to the size graph item to know when its selected + (WebInspector.ResourcesPanel.prototype._graphSelected): if the size graph is selected hide the dividers, otherwise show them + * inspector/front-end/TimelineGrid.js: + (WebInspector.TimelineGrid.prototype.hideEventDividers): set the container to display: none + (WebInspector.TimelineGrid.prototype.showEventDividers): set the container to display: block + +2010-05-13 Chang Shu <chang.shu@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + Based on the spec and Philip Taylor's test suite, strokeStyle and fillStyle attributes + must initially have the string value #000000. + The link to the spec: + http://philip.html5.org/tests/canvas/suite/tests/spec.html#testrefs.2d.colours.default + + https://bugs.webkit.org/show_bug.cgi?id=39068 + + The complete test suite is in the process of checking in. + https://bugs.webkit.org/show_bug.cgi?id=20553 + + * html/canvas/CanvasRenderingContext2D.cpp: + (WebCore::CanvasRenderingContext2D::State::State): + +2010-05-13 Yury Semikhatsky <yurys@chromium.org> + + Unreviewed, rolling out r59360. + http://trac.webkit.org/changeset/59360 + https://bugs.webkit.org/show_bug.cgi?id=38667 + + It broke Chromium Win build + + * English.lproj/localizedStrings.js: + * WebCore.gypi: + * WebCore.vcproj/WebCore.vcproj: + * inspector/front-end/CallStackSidebarPane.js: + (WebInspector.CallStackSidebarPane): + (WebInspector.CallStackSidebarPane.prototype._placardSelected): + * inspector/front-end/ConsoleView.js: + (WebInspector.ConsoleView): + * inspector/front-end/ElementsPanel.js: + (WebInspector.ElementsPanel): + * inspector/front-end/ElementsTreeOutline.js: + (WebInspector.ElementsTreeOutline.prototype._keyDown): + * inspector/front-end/HelpScreen.js: Removed. + * inspector/front-end/KeyboardShortcut.js: + (WebInspector.KeyboardShortcut._makeKeyFromCodeAndModifiers): + * inspector/front-end/ScriptsPanel.js: + (WebInspector.ScriptsPanel): + (WebInspector.ScriptsPanel.prototype.elementsToRestoreScrollPositionsFor): + * inspector/front-end/ShortcutsHelp.js: Removed. + * inspector/front-end/SidebarPane.js: + (WebInspector.SidebarPane.prototype._onTitleKeyDown): + * inspector/front-end/StylesSidebarPane.js: + (WebInspector.StylesSidebarPane.prototype.removeSection): + * inspector/front-end/TextViewer.js: + (WebInspector.TextViewer.prototype._handleKeyDown): + * inspector/front-end/WebKit.qrc: + * inspector/front-end/helpScreen.css: Removed. + * inspector/front-end/inspector.html: + * inspector/front-end/inspector.js: + (WebInspector.loaded): + (WebInspector.documentKeyDown): + (WebInspector._searchKeyDown): + (WebInspector.startEditing.keyDownEventListener): + (WebInspector.startEditing): + * inspector/front-end/utilities.js: + +2010-05-13 Antti Koivisto <koivisto@iki.fi> + + Reviewed by Kenneth Rohde Christiansen. + + https://bugs.webkit.org/show_bug.cgi?id=39063 + [Qt] Tiled backing store checker pattern does not paint correctly when scaling factor is not 1 + + Use the dirty rect that has been adjusted for scaling instead of the original one. + + * platform/graphics/TiledBackingStore.cpp: + (WebCore::TiledBackingStore::paint): + +2010-05-13 Chang Shu <chang.shu@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + Based on Philip Taylor's test suite, resetting the canvas + state resets the current path. + https://bugs.webkit.org/show_bug.cgi?id=38934 + + The complete test suite is in the process of checking in. + https://bugs.webkit.org/show_bug.cgi?id=20553 + + * html/canvas/CanvasRenderingContext2D.cpp: + (WebCore::CanvasRenderingContext2D::reset): + +2010-05-13 Andrey Kosyakov <caseq@chromium.org> + + Reviewed by Pavel Feldman. + + Added help screen with keyboard shortcuts. + https://bugs.webkit.org/show_bug.cgi?id=38667 + + * English.lproj/localizedStrings.js: + * WebCore.gypi: + * WebCore.vcproj/WebCore.vcproj: + * inspector/front-end/CallStackSidebarPane.js: + (WebInspector.CallStackSidebarPane): + (WebInspector.CallStackSidebarPane.prototype._placardSelected): + (WebInspector.CallStackSidebarPane.prototype.registerShortcuts): + * inspector/front-end/ConsoleView.js: + (WebInspector.ConsoleView): + (WebInspector.ConsoleView.prototype._registerShortcuts): + * inspector/front-end/ElementsPanel.js: + (WebInspector.ElementsPanel): + (WebInspector.ElementsPanel.prototype._registerShortcuts): + * inspector/front-end/HelpScreen.js: Added. + * inspector/front-end/KeyboardShortcut.js: + (WebInspector.KeyboardShortcut.makeDescriptor): + (WebInspector.KeyboardShortcut.shortcutToString): + (WebInspector.KeyboardShortcut._modifiersToString): + * inspector/front-end/ScriptsPanel.js: + (WebInspector.ScriptsPanel): + (WebInspector.ScriptsPanel.prototype.elementsToRestoreScrollPositionsFor): + (WebInspector.ScriptsPanel.prototype._registerShortcuts): + * inspector/front-end/ShortcutsHelp.js: Added. + * inspector/front-end/StylesSidebarPane.js: + (WebInspector.StylesSidebarPane.prototype.removeSection): + (WebInspector.StylesSidebarPane.prototype.registerShortcuts): + * inspector/front-end/WebKit.qrc: + * inspector/front-end/helpScreen.css: Added. + +2010-05-13 Yoshiki Hayashi <yhayashi@google.com> + + Reviewed by Darin Adler. + + Fix a bug in handleRunInChild where only the first child run-in block + is inserted because removeChildNode clears next sibling. + https://bugs.webkit.org/show_bug.cgi?id=25047 + + Test: fast/css/run-in-children.html + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::handleRunInChild): + +2010-05-13 Alejandro G. Castro <alex@igalia.com> + + Reviewed by Xan Lopez. + + In case there is no expose event we render the theme in a pixmap + and copy it to the cairo context. This is slow but it is used just + in case we are printing nowadays. + + [GTK] Theme does not render when printing + https://bugs.webkit.org/show_bug.cgi?id=38896 + + * platform/gtk/RenderThemeGtk.cpp: + (WebCore::paintMozillaGtkWidget): + +2010-05-12 Yuzo Fujishima <yuzo@google.com> + + Reviewed by Darin Adler. + + Fix Bug 35014 - Modifying UA rules from page JS crashes + Added a NULL check. + https://bugs.webkit.org/show_bug.cgi?id=35014 + + Test: fast/css/modify-ua-rules-from-javascript.html + + * css/CSSMutableStyleDeclaration.cpp: + (WebCore::CSSMutableStyleDeclaration::setNeedsStyleRecalc): + +2010-05-12 Dumitru Daniliuc <dumi@chromium.org> + + Reviewed by Adam Barth. + + Add the parent class for Database and DatabaseSync. + https://bugs.webkit.org/show_bug.cgi?id=39041 + + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * storage/AbstractDatabase.cpp: Added. + * storage/AbstractDatabase.h: Added. + +2010-05-12 Noam Rosenthal <noam.rosenthal@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + [Qt] GraphicsLayer: depth-test causes flicker in certain situations + + This patch removes the simplistic 2D depth test as it leads to flickering side effects. + https://bugs.webkit.org/show_bug.cgi?id=38370 + + Tested by http://webkit.org/blog-files/3d-transforms/morphing-cubes.html + + * platform/graphics/qt/GraphicsLayerQt.cpp: + (WebCore::GraphicsLayerQtImpl::updateTransform): + +2010-05-12 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Mark Rowe. + + Fix layer dump to avoid spurious platform differences + https://bugs.webkit.org/show_bug.cgi?id=39045 + + Only dump the children transform on layers that are not the root layer. + The children transform on the root layer is used on Leopard to implement + geometry flipping, so avoid this supurious difference in test output. + + * platform/graphics/GraphicsLayer.cpp: + (WebCore::GraphicsLayer::dumpProperties): + +2010-05-12 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r59270. + http://trac.webkit.org/changeset/59270 + https://bugs.webkit.org/show_bug.cgi?id=39044 + + Caused a crash on some pages - bug 39042 (Requested by smfr on + #webkit). + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::removeChild): + +2010-05-12 Simon Fraser <simon.fraser@apple.com> + + Reviewed by David Hyatt. + + Composited plug-ins can cause missed painting + https://bugs.webkit.org/show_bug.cgi?id=39033 + <rdar://problem/7972478> + + Fixed missed painting (and assertions in debug builds) related to compositing + propagating out of iframes that contain plug-ins. + + When an iframe enters or leaves compositing mode, RenderLayerCompositor uses + setNeedsStyleRecalc(SyntheticStyleChange) to trigger the parent document to re-evaluate + whether the iframe itself should be composited. However, for iframes containing plug-ins, + this can happen at inappropriate times. For example, when a browser tab is brought frontmost, + plug-ins are instantiated for the first time (via -viewDidMoveToWindow), which triggers a + setNeedsStyleRecalc() on the object element. Soon after, the -viewWillDraw machinery + does layout from the top down. During layout of the iframe, the iframe enters compositing mode, + and does a setNeedsStyleRecalc() on the iframe element in its parent document. This leaves the + FrameView as needsLayout(), so the FrameView::paintContents() asserts and bails. + + The fix is to avoid doing a setNeedsStyleRecalc() on the root while inside a recalcStyle on + the iframe. We do this by switching the iframe into compositing mode eagerly as soon as we know + the plug-in needs it. + + A secondary fix is to ensure that if a document has composited iframes, when that document becomes + composited, we connect compositing layers between the iframes and the parent document. + + Tests: compositing/iframes/connect-compositing-iframe-delayed.html + compositing/iframes/iframe-src-change.html + + * WebCore.base.exp: Export FrameView::enterCompositingMode() + + * page/FrameView.h: New method, enterCompositingMode(), that we can call from WebKit plug-in code. + * page/FrameView.cpp: + (WebCore::FrameView::enterCompositingMode): + + * rendering/RenderLayerCompositor.h: + * rendering/RenderLayerCompositor.cpp: + (WebCore::RenderLayerCompositor::enableCompositingMode): When we switch into compositing mode, we + force a style recaclc on any iframes to get them into compositing layers, so they can hook up + with their content layers if necessary. + (WebCore::RenderLayerCompositor::didMoveOnscreen): Only call attachRootPlatformLayer() if we really need to. + (WebCore::RenderLayerCompositor::willMoveOffscreen): Only call detachRootPlatformLayer() if we really need to. + (WebCore::RenderLayerCompositor::detachRootPlatformLayer): Whitespace. + (WebCore::RenderLayerCompositor::notifyIFramesOfCompositingChange): Fetch iframe elements, and send a + synthetic style recalc on them. + +2010-05-12 Anders Carlsson <andersca@apple.com> + + Reviewed by Simon Fraser. + + Shrink the size of FillLayer by moving a member variable. + https://bugs.webkit.org/show_bug.cgi?id=39035 + + * rendering/style/FillLayer.cpp: + (WebCore::FillLayer::FillLayer): + * rendering/style/FillLayer.h: + +2010-05-12 Sam Weinig <sam@webkit.org> + + Reviewed by Anders Carlsson. + + A bunch of nice micro-optimizations for ~1% speedup on PLT. + - Add fastGetAttribute. The same as getAttribute except can only be + called when it is known not to be style attribute or one of the SVG + animatable attributes. + - Inline some functions from Font. + - Return the same string from deprecatedParseURL if there is nothing + to strip. + - Use a member variable instead of a virtual function to determine + whether a ScheduledNavigation is a location change. + + * WebCore.base.exp: + * css/CSSHelper.cpp: + (WebCore::deprecatedParseURL): + * css/CSSStyleSelector.cpp: + (WebCore::linkAttribute): + (WebCore::CSSStyleSelector::canShareStyleWithElement): + (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): + * dom/Element.cpp: + (WebCore::Element::getAttribute): + * dom/Element.h: + (WebCore::Element::fastHasAttribute): + (WebCore::Element::fastGetAttribute): + * html/HTMLFormControlElement.cpp: + (WebCore::HTMLFormControlElement::formControlName): + * html/HTMLInputElement.cpp: + (WebCore::HTMLInputElement::value): + * loader/RedirectScheduler.cpp: + (WebCore::ScheduledNavigation::ScheduledNavigation): + (WebCore::ScheduledNavigation::isLocationChange): + (WebCore::ScheduledURLNavigation::ScheduledURLNavigation): + (WebCore::ScheduledRedirect::ScheduledRedirect): + (WebCore::ScheduledLocationChange::ScheduledLocationChange): + (WebCore::ScheduledRefresh::ScheduledRefresh): + (WebCore::ScheduledHistoryNavigation::ScheduledHistoryNavigation): + (WebCore::ScheduledFormSubmission::ScheduledFormSubmission): + (WebCore::RedirectScheduler::locationChangePending): + * platform/graphics/Font.cpp: + * platform/graphics/Font.h: + (WebCore::Font::~Font): + (WebCore::Font::primaryFont): + (WebCore::Font::fontDataAt): + (WebCore::Font::fontDataForCharacters): + (WebCore::Font::isFixedPitch): + (WebCore::Font::fontSelector): + * platform/graphics/FontFallbackList.h: + * rendering/RenderImage.cpp: + (WebCore::RenderImage::imageMap): + +2010-05-12 David Hyatt <hyatt@apple.com> + + Reviewed by Sam Weinig. + + Make InlineBoxes use an IntRect for dimensions, and eliminate the dynamic computation of height() every time. + + * WebCore.xcodeproj/project.pbxproj: + * editing/visible_units.cpp: + (WebCore::previousLinePosition): + (WebCore::nextLinePosition): + * rendering/EllipsisBox.cpp: + (WebCore::EllipsisBox::paint): + (WebCore::EllipsisBox::selectionRect): + (WebCore::EllipsisBox::paintSelection): + (WebCore::EllipsisBox::nodeAtPoint): + * rendering/EllipsisBox.h: + (WebCore::EllipsisBox::EllipsisBox): + * rendering/InlineBox.cpp: + (WebCore::InlineBox::adjustPosition): + (WebCore::InlineBox::canAccommodateEllipsis): + * rendering/InlineBox.h: + (WebCore::InlineBox::InlineBox): + (WebCore::InlineBox::isSVGRootInlineBox): + (WebCore::InlineBox::x): + (WebCore::InlineBox::y): + (WebCore::InlineBox::width): + (WebCore::InlineBox::height): + (WebCore::InlineBox::bottom): + (WebCore::InlineBox::right): + (WebCore::InlineBox::setX): + (WebCore::InlineBox::setY): + (WebCore::InlineBox::setWidth): + (WebCore::InlineBox::setHeight): + (WebCore::InlineBox::location): + (WebCore::InlineBox::size): + (WebCore::InlineBox::setLocation): + (WebCore::InlineBox::setSize): + (WebCore::InlineBox::move): + (WebCore::InlineBox::frameRect): + (WebCore::InlineBox::setFrameRect): + (WebCore::InlineBox::baselinePosition): + (WebCore::InlineBox::lineHeight): + * rendering/InlineFlowBox.cpp: + (WebCore::InlineFlowBox::placeBoxesVertically): + (WebCore::InlineFlowBox::computeVerticalOverflow): + (WebCore::InlineFlowBox::nodeAtPoint): + (WebCore::InlineFlowBox::paintBoxDecorations): + (WebCore::InlineFlowBox::paintMask): + (WebCore::InlineFlowBox::paintTextDecorations): + * rendering/InlineFlowBox.h: + (WebCore::InlineFlowBox::visibleOverflowRect): + (WebCore::InlineFlowBox::topLayoutOverflow): + (WebCore::InlineFlowBox::bottomLayoutOverflow): + (WebCore::InlineFlowBox::leftLayoutOverflow): + (WebCore::InlineFlowBox::rightLayoutOverflow): + (WebCore::InlineFlowBox::layoutOverflowRect): + (WebCore::InlineFlowBox::topVisualOverflow): + (WebCore::InlineFlowBox::bottomVisualOverflow): + (WebCore::InlineFlowBox::leftVisualOverflow): + (WebCore::InlineFlowBox::rightVisualOverflow): + (WebCore::InlineFlowBox::visualOverflowRect): + (WebCore::InlineFlowBox::setHorizontalOverflowPositions): + (WebCore::InlineFlowBox::setVerticalOverflowPositions): + * rendering/InlineTextBox.cpp: + (WebCore::InlineTextBox::selectionRect): + (WebCore::InlineTextBox::placeEllipsisBox): + (WebCore::InlineTextBox::nodeAtPoint): + (WebCore::InlineTextBox::paint): + (WebCore::InlineTextBox::paintSelection): + (WebCore::InlineTextBox::paintCompositionBackground): + (WebCore::InlineTextBox::paintDecoration): + (WebCore::InlineTextBox::paintSpellingOrGrammarMarker): + (WebCore::InlineTextBox::paintTextMatchMarker): + (WebCore::InlineTextBox::computeRectForReplacementMarker): + (WebCore::InlineTextBox::paintCompositionUnderline): + (WebCore::InlineTextBox::offsetForPosition): + (WebCore::InlineTextBox::positionForOffset): + * rendering/InlineTextBox.h: + (WebCore::InlineTextBox::setSpaceAdd): + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::positionForPointWithInlineChildren): + * rendering/RenderBlockLineLayout.cpp: + (WebCore::RenderBlock::computeVerticalPositionsForLine): + (WebCore::RenderBlock::layoutInlineChildren): + * rendering/RenderSVGInline.cpp: + (WebCore::RenderSVGInline::createInlineFlowBox): + * rendering/RenderSVGInlineText.cpp: + (WebCore::RenderSVGInlineText::createTextBox): + * rendering/RenderSVGText.cpp: + (WebCore::RenderSVGText::createRootInlineBox): + * rendering/RenderText.cpp: + (WebCore::RenderText::positionForPoint): + (WebCore::RenderText::firstRunX): + (WebCore::RenderText::firstRunY): + * rendering/RenderTreeAsText.cpp: + (WebCore::writeTextRun): + * rendering/RootInlineBox.cpp: + (WebCore::RootInlineBox::placeEllipsis): + (WebCore::RootInlineBox::addHighlightOverflow): + (WebCore::RootInlineBox::closestLeafChildForXPos): + * rendering/SVGInlineFlowBox.h: + (WebCore::SVGInlineFlowBox::SVGInlineFlowBox): + * rendering/SVGInlineTextBox.h: + (WebCore::SVGInlineTextBox::selectionTop): + (WebCore::SVGInlineTextBox::selectionHeight): + * rendering/SVGRootInlineBox.h: + (WebCore::SVGRootInlineBox::SVGRootInlineBox): + (WebCore::SVGRootInlineBox::isSVGRootInlineBox): + * rendering/TrailingFloatsRootInlineBox.h: Removed. + +2010-05-12 Dumitru Daniliuc <dumi@chromium.org> + + Reviewed by Dimitri Glazkov. + + Removing the unnecessary dirfd parameter. + https://bugs.webkit.org/show_bug.cgi?id=38869 + + * platform/chromium/ChromiumBridge.h: + * platform/sql/chromium/SQLiteFileSystemChromiumPosix.cpp: + +2010-05-12 Enrica Casucci <enrica@apple.com> + + Reviewed by Dave Hyatt. + + Adding block elements to a block and removing them changes the height of the element. + https://bugs.webkit.org/show_bug.cgi?id=38874 + + The initial height of an empty editable block is different from the height of the same block after we add block elements + and remove them. + + Test: editing/deleting/delete-block-contents-004.html + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::removeChild): m_childrenInline was set to true only when the Renderer is created + and never reset to true when all the block elements contained are removed. + +2010-05-11 Dumitru Daniliuc <dumi@chromium.org> + + Reviewed by Dimitri Glazkov. + + Do not check if a database needs to be vacuumed after a read-only transaction. + https://bugs.webkit.org/show_bug.cgi?id=38972 + + * storage/SQLTransaction.cpp: + (WebCore::SQLTransaction::postflightAndCommit): + +2010-05-12 Laszlo Gombos <laszlo.1.gombos@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + [Qt] Detect debug mode consistently + https://bugs.webkit.org/show_bug.cgi?id=38863 + + No new tests as there is no new functionality. + + * WebCore.pro: + +2010-05-12 James Robinson <jamesr@chromium.org> + + Patch by Dan Bernstein. + + Reviewed by David Hyatt. + + Fix marking the layout root's parent as needing layout + https://bugs.webkit.org/show_bug.cgi?id=37760 + + If an element gets marked as needing layout due to the recalcStyle() + call in FrameView::layout(), the m_layoutSchedulingEnabled flag will + be set to false. It's possible at this point that a parent of the + existing FrameView::m_layoutRoot will be marked as needing layout. + + This patch updates FrameView::scheduleRelayoutOfSubtree to account + for this case. + + Manual test only due to subtle timing issues. + + * manual-tests/layoutroot_detach.xml: Added. + * page/FrameView.cpp: + (WebCore::FrameView::scheduleRelayoutOfSubtree): + +2010-05-12 Eric Seidel <eric@webkit.org> + + Unreviewed, rolling out r59245. + http://trac.webkit.org/changeset/59245 + https://bugs.webkit.org/show_bug.cgi?id=38874 + + Broke at least one test on multiple platforms + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::removeChild): + +2010-05-12 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=38752 + Strange behaviour after js insertion into a page pointing directly to an object (image, swf, etc) + + Test: fast/images/extra-image-in-image-document.html + + * loader/ImageLoader.cpp: (WebCore::ImageLoader::updateFromElement): Reset setAutoLoadImages + after manually feeding an image - there may be more coming. + +2010-05-12 yael aharon <yael.aharon@nokia.com> + + Reviewed by Dan Bernstein. + + HTMLLabelElement::control() should return HTMLFormControlElement, not HTMLElement + https://bugs.webkit.org/show_bug.cgi?id=38991 + + No new tests since no new functionality was introduced. + + * html/HTMLLabelElement.cpp: + (WebCore::HTMLLabelElement::control): + * html/HTMLLabelElement.h: + +2010-05-12 David Hyatt <hyatt@apple.com> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=38891 + + First-letter had a number of bugs that were exposed by my attempt to optimize the setting of styles when updating first-letter. + The code that drills down to find the first-letter child stopped if it hit an element that didn't need layout. This means it could + return random incorrect results (and cause the first-letter object to not be found). + + In addition when the first-letter was floated/positioned, the text child was not correctly returned, but the container itself was + returned instead. + + Finally, the updating code was leaving the box that wrapped the first letter text with a stale style. The old code happened to work because + it made new styles for the text elements instead of using the enclosing box style. The regression was caused by my change to make the + text children simply share style with their parent (thus making the bug that the parent had the wrong style become more prominent). + + No new tests, since there's a timing component to reproducing the issue. + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::updateFirstLetter): + +2010-05-12 Enrica Casucci <enrica@apple.com> + + Reviewed by Dave Hyatt. + + Adding block elements to a block and removing them changes the height of the element. + https://bugs.webkit.org/show_bug.cgi?id=38874 + + The initial height of an empty editable block is different from the height of the same block after we add block elements + and remove them. + + Test: editing/deleting/delete-block-contents-004.html + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::removeChild): m_childrenInline was set to true only when the Renderer is created + and never reset to true when all the block elements contained are removed. + +2010-05-12 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: disabling style property on container breaks styles inspection for given node. + + https://bugs.webkit.org/show_bug.cgi?id=39005 + + Tests: inspector/styles-disable-inherited.html + inspector/styles-disable-then-enable.html + + * inspector/front-end/StylesSidebarPane.js: + (WebInspector.StylesSidebarPane.prototype._containsInherited): + (WebInspector.StylesSidebarPane.prototype._arrayContainsInheritedProperty): + +2010-05-12 Abhishek Arya <inferno@chromium.org> + + Reviewed by Darin Adler. + + HTML Entity Escape the contents of a textarea node when accessed + via the innerHTML and outerHTML node properties. + https://bugs.webkit.org/show_bug.cgi?id=38922 + + Test: fast/innerHTML/innerHTML-special-elements.html + + * editing/markup.cpp: + (WebCore::appendStartMarkup): + +2010-05-12 Beth Dakin <bdakin@apple.com> + + Reviewed by Darin Adler. + + Fix for https://bugs.webkit.org/show_bug.cgi?id=38871 REGRESSION: + Crash clicking background NPR tab after few minutes of sitting idle + -and corresponding- + <rdar://problem/7941504> + + Move m_mediaCanStartListeners HashSet to Document away from Page. + * dom/Document.cpp: + (WebCore::Document::Document): + (WebCore::Document::addMediaCanStartListener): + (WebCore::Document::removeMediaCanStartListener): + (WebCore::Document::takeAnyMediaCanStartListener): + * dom/Document.h: + * page/Page.cpp: + (WebCore::Page::takeAnyMediaCanStartListener): + * page/Page.h: + (WebCore::Page::canStartMedia): + +2010-05-11 Ilya Tikhonovsky <loislo@chromium.org> + + Reviewed by Pavel Feldman. + + WebInspector: Sometimes ResourceRequest records aren't connected to the initiator. + https://bugs.webkit.org/show_bug.cgi?id=38925 + + * inspector/InspectorTimelineAgent.cpp: + (WebCore::InspectorTimelineAgent::didScheduleResourceRequest): + * inspector/InspectorTimelineAgent.h: + (WebCore::): + * inspector/TimelineRecordFactory.cpp: + (WebCore::TimelineRecordFactory::createScheduleResourceRequestData): + * inspector/TimelineRecordFactory.h: + * inspector/front-end/TimelineAgent.js: + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel): + (WebInspector.TimelinePanel.prototype.get _recordStyles): + (WebInspector.TimelinePanel.prototype._findParentRecord): + (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline): + (WebInspector.TimelinePanel.prototype._clearPanel): + (WebInspector.TimelinePanel.FormattedRecord): + (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent): + (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails): + * loader/loader.cpp: + (WebCore::Loader::load): + +2010-05-12 Kent Tamura <tkent@chromium.org> + + Reviewed by Darin Adler. + + placeholder text should be stripped from line breaks + https://bugs.webkit.org/show_bug.cgi?id=36291 + + According to http://dev.w3.org/html5/spec/forms.html#attr-input-placeholder , + we need to remove CR and LF from the placeholder attribute values. + Introduce HTMLTextFormControlElement::strippedPlaceholder(), which + returns stripped value, and replace getAttribute(placeholderAttr) with it. + + Test: fast/forms/placeholder-stripped.html + + * html/HTMLFormControlElement.cpp: + (WebCore::HTMLTextFormControlElement::strippedPlaceholder): + (WebCore::HTMLTextFormControlElement::isPlaceholderEmpty): + (WebCore::HTMLTextFormControlElement::placeholderShouldBeVisible): + Use strippedPlaceholder(). + * html/HTMLFormControlElement.h: + * platform/text/CharacterNames.h: Add carriageReturn. + * rendering/RenderTextControlMultiLine.cpp: + (WebCore::RenderTextControlMultiLine::updateFromElement): + Use strippedPlaceholder(). + * rendering/RenderTextControlSingleLine.cpp: + (WebCore::RenderTextControlSingleLine::updateFromElement): + Use strippedPlaceholder(). + +2010-05-10 Rodrigo Belem <rodrigo.belem@openbossa.org> + + Reviewed by Kenneth Christiansen , Simon Hausmann and Gustavo Noronha. + + [Qt, Gtk] Allows build-webkit script to receive an install prefix as parameter + https://bugs.webkit.org/show_bug.cgi?id=26224 + + This patch adds the ability, in the QtWebkit build system, to change + the installation path. + + * WebCore.pro: + +2010-05-12 Jer Noble <jer.noble@apple.com> + + Reviewed by Darin Adler. + + Bug 38689: #34005 will break fullscreen video playback + https://bugs.webkit.org/show_bug.cgi?id=38689 + + The PlatformMedia struct now contains a type field indicating which type + it contains. The struct now contains a union of all possible return types, + allowing the type of media returned by MediaPlayerPrivate instances to be + determined at runtime. + + * platform/graphics/MediaPlayer.h: + (WebCore::PlatformMedia::): + (WebCore::): + * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: + (WebCore::MediaPlayerPrivate::platformMedia): + * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: + (WebCore::MediaPlayerPrivateQuickTimeVisualContext::platformMedia): + * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp: + (WebCore::MediaPlayerPrivate::platformMedia): + +2010-05-12 Young Han Lee <joybro@company100.net> + + Reviewed by Darin Adler. + + Add missing ENABLE(SVG) guards. + https://bugs.webkit.org/show_bug.cgi?id=38892 + + * rendering/RenderSVGResourceClipper.cpp: + * rendering/RenderSVGResourceMarker.cpp: + * rendering/RenderSVGResourceMasker.cpp: + +2010-05-12 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Yury Semikhatsky. + + Web Inspector: align sidebar checkboxes on windows. + + https://bugs.webkit.org/show_bug.cgi?id=38986 + + * inspector/front-end/StylesSidebarPane.js: + * inspector/front-end/inspector.css: + (.sidebar-pane-subtitle): + (body.platform-windows .sidebar-pane-subtitle): + +2010-05-10 yael aharon <yael.aharon@nokia.com> + + Reviewed by Darin Adler. + + Support control attribute of HTMLLabelElement + https://bugs.webkit.org/show_bug.cgi?id=38688 + + Added support for the control attribute of HTMLLabelElement and changed the logic of determining + which control is associated with the label to conform to HTML5 spec. + Added a manual test for testing the logic of selecting the control to get focused, activated or hovered + when the label gets focused, activated or is hovered. + + Test: fast/dom/HTMLLabelElement/click-label.html + Test: fast/dom/HTMLLabelElement/focus-label.html + Test: fast/dom/HTMLLabelElement/label-control.html + + * accessibility/AccessibilityRenderObject.cpp: + (WebCore::labelForElement): + (WebCore::AccessibilityRenderObject::correspondingControlForLabelElement): + * html/HTMLFormControlElement.cpp: + (WebCore::HTMLFormControlElement::isLabelable): + * html/HTMLFormControlElement.h: + * html/HTMLLabelElement.cpp: + (WebCore::nodeAsLabelableFormControl): + (WebCore::HTMLLabelElement::control): + (WebCore::HTMLLabelElement::setActive): + (WebCore::HTMLLabelElement::setHovered): + (WebCore::HTMLLabelElement::defaultEventHandler): + (WebCore::HTMLLabelElement::focus): + (WebCore::HTMLLabelElement::accessKeyAction): + * html/HTMLLabelElement.h: + * html/HTMLLabelElement.idl: + * manual-tests/dom/form-control-for-label.html: Added. + +2010-05-12 Steve Block <steveblock@google.com> + + Reviewed by David Levin. + + Android's writeToFile() is buggy + https://bugs.webkit.org/show_bug.cgi?id=38908 + + No new tests, build fix only. + + * platform/android/FileSystemAndroid.cpp: Remove Android's version of writeToFile(). + * platform/posix/FileSystemPOSIX.cpp: Use POSIX version of writeToFile() on Android. + (WebCore::writeToFile): + +2010-05-10 Philippe Normand <pnormand@igalia.com> + + Reviewed by David Levin. + + [GStreamer] incoherent #ifdef in GOwnPtrGStreamer.h + https://bugs.webkit.org/show_bug.cgi?id=38839 + + Fixed #ifdef/curly braces coherence. + + * platform/graphics/gstreamer/GOwnPtrGStreamer.cpp: + (WTF::GstElement): + +2010-05-10 Philippe Normand <pnormand@igalia.com> + + Reviewed by Dirk Schulze. + + [GStreamer] un-needed cairo.h include + https://bugs.webkit.org/show_bug.cgi?id=38837 + + Cairo not used in the sink anymore. So it's not needed to include + the header. + + * platform/graphics/gstreamer/VideoSinkGStreamer.h: + +2010-05-12 Zoltan Herczeg <zherczeg@webkit.org> + + Reviewed by Nikolas Zimmermann. + + Build fix for Windows and Chromium builds. + + * WebCore.gypi: + * WebCore.vcproj/WebCore.vcproj: + * svg/graphics/filters/SVGFELighting.cpp: + (WebCore::FELighting::LightingData::upLeftPixelValue): + (WebCore::FELighting::LightingData::upPixelValue): + (WebCore::FELighting::LightingData::upRightPixelValue): + (WebCore::FELighting::LightingData::leftPixelValue): + (WebCore::FELighting::LightingData::centerPixelValue): + (WebCore::FELighting::LightingData::rightPixelValue): + (WebCore::FELighting::LightingData::downLeftPixelValue): + (WebCore::FELighting::LightingData::downPixelValue): + (WebCore::FELighting::LightingData::downRightPixelValue): + (WebCore::FELighting::setPixel): + +2010-05-12 Zoltan Herczeg <zherczeg@webkit.org> + + Reviewed by Nikolas Zimmermann. + + Implementing SVG filters: feDiffuseLighting and feSpecularLighting + https://bugs.webkit.org/show_bug.cgi?id=32197 + https://bugs.webkit.org/show_bug.cgi?id=32199 + + The patch implements the SVG filters feDiffuseLighting and + feSpecularLighting including the impementation of their possible + light sources according to the Scalable Vector Graphics (SVG) + 1.1 Specification. Only two features are missing: supporting images + with height or width set to 1, and kernelUnitLength other than (1,1). + Since the two lighting filters have a similar body, a common base + class called FELighting is introduced, and contains the code for + both filters. The implementation employs single precision floating + point arithmetic (fixed precision integer arithmetic seemed too difficult). + + Indentation is removed of the modified header files in svg/graphics/filters + + * GNUmakefile.am: + * WebCore.pro: + * WebCore.xcodeproj/project.pbxproj: + * platform/graphics/FloatPoint3D.cpp: + * platform/graphics/FloatPoint3D.h: + (WebCore::FloatPoint3D::FloatPoint3D): constructors changed to inline + (WebCore::operator*): dot product + * svg/SVGFESpotLightElement.cpp: + (WebCore::SVGFESpotLightElement::lightSource): + * svg/graphics/filters/SVGDistantLightSource.h: + (WebCore::DistantLightSource::create): + (WebCore::DistantLightSource::azimuth): + (WebCore::DistantLightSource::elevation): + (WebCore::DistantLightSource::DistantLightSource): + * svg/graphics/filters/SVGFEDiffuseLighting.cpp: + (WebCore::FEDiffuseLighting::FEDiffuseLighting): + (WebCore::FEDiffuseLighting::create): + * svg/graphics/filters/SVGFEDiffuseLighting.h: + * svg/graphics/filters/SVGFELighting.cpp: Added. + (WebCore::FELighting::FELighting): + (WebCore::FELighting::LightingData::upLeftPixelValue): + (WebCore::FELighting::LightingData::upPixelValue): + (WebCore::FELighting::LightingData::upRightPixelValue): + (WebCore::FELighting::LightingData::leftPixelValue): + (WebCore::FELighting::LightingData::centerPixelValue): + (WebCore::FELighting::LightingData::rightPixelValue): + (WebCore::FELighting::LightingData::downLeftPixelValue): + (WebCore::FELighting::LightingData::downPixelValue): + (WebCore::FELighting::LightingData::downRightPixelValue): + (WebCore::FELighting::setPixel): + (WebCore::FELighting::drawLighting): + (WebCore::FELighting::apply): + * svg/graphics/filters/SVGFELighting.h: Added. + (WebCore::FELighting::uniteChildEffectSubregions): + (WebCore::FELighting::): + * svg/graphics/filters/SVGFESpecularLighting.cpp: + (WebCore::FESpecularLighting::FESpecularLighting): + (WebCore::FESpecularLighting::create): + * svg/graphics/filters/SVGFESpecularLighting.h: + * svg/graphics/filters/SVGLightSource.cpp: + (WebCore::PointLightSource::initPaintingData): + (WebCore::PointLightSource::updatePaintingData): + (WebCore::SpotLightSource::initPaintingData): + (WebCore::SpotLightSource::updatePaintingData): + (WebCore::DistantLightSource::initPaintingData): + (WebCore::DistantLightSource::updatePaintingData): + * svg/graphics/filters/SVGLightSource.h: + (WebCore::): + (WebCore::LightSource::LightSource): + (WebCore::LightSource::~LightSource): + (WebCore::LightSource::type): + * svg/graphics/filters/SVGPointLightSource.h: + (WebCore::PointLightSource::create): + (WebCore::PointLightSource::position): + (WebCore::PointLightSource::PointLightSource): + * svg/graphics/filters/SVGSpotLightSource.h: + (WebCore::SpotLightSource::create): + (WebCore::SpotLightSource::position): + (WebCore::SpotLightSource::direction): + (WebCore::SpotLightSource::specularExponent): + (WebCore::SpotLightSource::limitingConeAngle): + (WebCore::SpotLightSource::SpotLightSource): + +2010-05-12 Xan Lopez <xlopez@igalia.com> + + Reviewed by Nikolas Zimmermann. + + Add missing AM_V_GEN directives to generation rules so that they + remain silent when requested. + + * GNUmakefile.am: + +2010-05-12 Lucas De Marchi <lucas.demarchi@profusion.mobi> + + Reviewed by Jeremy Orlow. + + [EFL] It does not make sense to use ScrollbarEfl::ScrollbarEfl, so + use ScrollbarEfl (GCC 4.5 seems to be pickier about this). Revision 59030 + fixed cases for RenderThemeEfl, but missed this for ScrollbarEfl. + http://webkit.org/b/38904 + + No new tests required. + + * platform/efl/ScrollbarEfl.cpp: + (scrollbarEflEdjeMessage): + +2010-05-12 MORITA Hajime <morrita@google.com> + + Reviewed by Kent Tamura. + + [Chromium] Support HTML5 <progress> element on Windows. + https://bugs.webkit.org/show_bug.cgi?id=37308 + + Extended ChromiumBridge to handle progress bar painting, + and added delegations to it. + + No new tests. Test cases should be shared with existing ones for + progress element. Expectaions will be added after PROGRESS_TAG is + enabled on Chromium tree. + + * platform/chromium/ChromiumBridge.h: + * rendering/RenderProgress.cpp: + (WebCore::RenderProgress::animationProgress): + (WebCore::RenderProgress::isDeterminate): + * rendering/RenderProgress.h: + (WebCore::RenderProgress::position): + * rendering/RenderThemeChromiumWin.cpp: + (WebCore::RenderThemeChromiumWin::animationRepeatIntervalForProgressBar): + (WebCore::RenderThemeChromiumWin::animationDurationForProgressBar): + (WebCore::RenderThemeChromiumWin::adjustProgressBarStyle): + (WebCore::RenderThemeChromiumWin::paintProgressBar): + * rendering/RenderThemeChromiumWin.h: + +2010-05-12 Marcus Bulach <bulach@chromium.org> + + Reviewed by Steve Block. + + Removes Geolocation::setPosition and uses positionChanged() to capture lastPosition(). + This brings CLIENT_BASED_GEOLOCATION more inline with the non-client based. + https://bugs.webkit.org/show_bug.cgi?id=38195 + + * page/Geolocation.cpp: + (WebCore::Geolocation::lastPosition): + (WebCore::Geolocation::requestPermission): + (WebCore::Geolocation::positionChangedInternal): + (WebCore::Geolocation::positionChanged): + (WebCore::Geolocation::geolocationServicePositionChanged): + * page/Geolocation.h: + * page/GeolocationController.cpp: + (WebCore::GeolocationController::positionChanged): + (WebCore::GeolocationController::lastPosition): + * page/GeolocationController.h: + +2010-05-12 Marcus Bulach <bulach@chromium.org> + + Reviewed by Steve Block. + + Attaches the geolocation bridge later on startUpdating(). + This prevents a page requesting permission when it has just accessed navigator.geolocation (without calling navigator.geolocation.getCurrentPosition/watchPosition). + Note: when Geolocation::haveSuitableCachedPosition(), WebGeolocationServiceBridgeImpl::startUpdating() is not called, + so we attach the bridge if needed at requestGeolocationPermissionForFrame(). + https://bugs.webkit.org/show_bug.cgi?id=38323 + http://crbug.com/42789 + + * platform/chromium/GeolocationServiceChromium.h: + +2010-05-12 Robin Qiu <robin.qiu@torchmobile.com.cn> + + Reviewed by Dirk Schulze. + + Fix a bug in SVGPathSegList::getPathSegAtLength(). + This bug is just a misktake: almost all of the code is OK, but the + parameter is not used at all, therefore, this function always returns + "1". + And make a modification to return the last path segment if the distance + exceeds the actual path length. + https://bugs.webkit.org/show_bug.cgi?id=37515 + + Test: svg/dom/svgpath-getPathSegAtLength.html + + * svg/SVGPathSegList.cpp: + (WebCore::SVGPathSegList::getPathSegAtLength): + +2010-05-11 David Hyatt <hyatt@apple.com> + + Reviewed by Maciej Stachowiak. + + https://bugs.webkit.org/show_bug.cgi?id=38976, fast/css/pseudo-cache-stale.html has incorrect results. + + Make sure to trigger a relayout of any objects whose first-line styles change dynamically. + + * dom/Element.cpp: + (WebCore::Element::pseudoStyleCacheIsInvalid): + +2010-05-11 Joseph Pecoraro <joepeck@webkit.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Shorthand Properties Getting Deleted When Editing + https://bugs.webkit.org/show_bug.cgi?id=38958 + + * inspector/front-end/DOMAgent.js: + (WebInspector.CSSStyleDeclaration.prototype.styleTextWithShorthands): was getting regular values instead of shorthand values + +2010-05-11 Tony Chang <tony@chromium.org> + + Reviewed by Darin Fisher. + + [chromium] Remove subframe scrollbar routing (r58937) + https://bugs.webkit.org/show_bug.cgi?id=38894 + + * page/chromium/EventHandlerChromium.cpp: + (WebCore::EventHandler::passMousePressEventToSubframe): + +2010-05-11 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Maciej Stachowiak. + + Body not redrawn, and filled with garbage on some composited pages + https://bugs.webkit.org/show_bug.cgi?id=38951 + <rdar://problem/7891548> + + When the root layer becomes composited (for example, because a negative z-index + descendant in its stacking context becomes composited), then it has to be made + large enough to fill the viewport, because the page background draws into it. + + Test: compositing/geometry/composited-html-size.html + + * rendering/RenderLayerCompositor.cpp: + (WebCore::RenderLayerCompositor::calculateCompositedBounds): + +2010-05-11 Anders Carlsson <andersca@apple.com> + + Reviewed by Mark Rowe. + + https://bugs.webkit.org/show_bug.cgi?id=38961 + Move some member variables around to reduce class sizes. + + If a class inherits (directly or indirectly) from FastAllocBase, we don't want the first member variable + of that class to also inherit (directly or indirectly) from FastAllocBase as this will add padding to the class + and thus increasing its size. + + * css/CSSParserValues.h: + * css/CSSSelector.h: + (WebCore::CSSSelector::CSSSelector): + (WebCore::CSSSelector::RareData::RareData): + * platform/graphics/FontCache.cpp: + (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey): + +2010-05-11 Dumitru Daniliuc <dumi@chromium.org> + + Reviewed by Adam Barth. + + Adding a function needed by the V8 code generator to turn on/off + the binding for WorkerContext::openDatabaseSync(). + https://bugs.webkit.org/show_bug.cgi?id=38960 + + * bindings/generic/RuntimeEnabledFeatures.cpp: + (WebCore::RuntimeEnabledFeatures::openDatabaseSyncEnabled): + * bindings/generic/RuntimeEnabledFeatures.h: + +2010-05-11 MORITA Hajime <morrita@google.com> + + Reviewed by Dirk Schulze. + + CSS SVG font doesn't recognize URL without element reference + https://bugs.webkit.org/show_bug.cgi?id=37144 + + CachedFont::getSVGFontById() did assume that element reference (ID) is given. + So fixed to handle an empty or missing element reference. In which case, + the first font element is returned if available. + + Test: svg/custom/svg-fonts-with-no-element-reference.html + + * loader/CachedFont.cpp: + (WebCore::CachedFont::getSVGFontById): + +2010-05-11 Jer Noble <jer.noble@apple.com> + + No Review. + + Fix the Windows Debug Build: the correct VCProj variable to use when linking against + JavaScriptCore is $(WebKitDLLConfigSuffix), not $(WebKitConfigSuffix), which expands + to an empty string rather than "_debug". + + * WebCore.vcproj/QTMovieWin.vcproj: + +2010-05-11 Jer Noble <jer.noble@apple.com> + + Darin Adler. + + 19 media tests are crashing on Windows Release + https://bugs.webkit.org/show_bug.cgi?id=38950 + rdar://problem/7971658 + + Link against JavaScriptCore.lib instead of WTF.lib, so the free and malloc used by + QTMovieWin is always the free and malloc in JavaScriptCore.dll. + + * WebCore.vcproj/QTMovieWin.vcproj: + +2010-05-11 Darin Adler <darin@apple.com> + + Reviewed by Beth Dakin. + + Another refactoring patch in preparation for a fix to + https://bugs.webkit.org/show_bug.cgi?id=38871 + REGRESSION: Crash clicking background NPR tab after few minutes of sitting idle + + * dom/Document.cpp: + (WebCore::Document::addMediaCanStartListener): Added. + (WebCore::Document::removeMediaCanStartListener): Added. + + * dom/Document.h: Added add/removeMediaCanStartListener. + + * html/HTMLMediaElement.cpp: + (WebCore::HTMLMediaElement::~HTMLMediaElement): Call removeMediaCanStartListener + on the document instead of the page. + (WebCore::HTMLMediaElement::willMoveToNewOwnerDocument): Call + removeMediaCanStartListener on the current document. + (WebCore::HTMLMediaElement::didMoveToNewOwnerDocument): Call + addMediaCanStartListener on the new document. + (WebCore::HTMLMediaElement::loadInternal): Call addMediaCanStartListener + on the document instead of the page. + + * plugins/PluginView.cpp: + (WebCore::PluginView::startOrAddToUnstartedList): Call addMediaCanStartListener + on the document instead of the page. + (WebCore::PluginView::~PluginView): Call removeMediaCanStartListener + on the document instead of the page, and do it in line instead of calling + a function. + + * plugins/PluginView.h: Removed unused removeFromUnstartedListIfNecessary. + +2010-05-11 Brian Weinstein <bweinstein@apple.com> + + Reviewed by Steve Falkenburg and Jon Honeycutt. + Patch by Gavin Barraclough. + + REGRESSION (r57900-57919): 3% PLT Regression from moving strings into WTF. + https://bugs.webkit.org/show_bug.cgi?id=38930 + <rdar://problem/7937188> + + Add the WTF strings into the WebCore vcproj, from their copied location in $(WebKitOutputDir). + + No new tests because no change in behavior. + + * WebCore.vcproj/WebCore.vcproj: + +2010-05-11 Beth Dakin <bdakin@apple.com> + + Reviewed by Darin Adler. + + Small re-factoring patch in preparation for fixing https:// + bugs.webkit.org/show_bug.cgi?id=38871 REGRESSION: Crash clicking + background NPR tab after few minutes of sitting idle + + * page/Page.cpp: + (WebCore::Page::takeAnyMediaCanStartListener): + (WebCore::Page::setCanStartMedia): + * page/Page.h: + +2010-05-11 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Brady Eidson. + + https://bugs.webkit.org/show_bug.cgi?id=37989 + Safari (still) doesn't always send basic credentials preemptively + + Test: http/tests/xmlhttprequest/basic-auth-default.html + + After fetching credentials from WebCore storage, put them back right away. This will add + default credentials for the directory, since this may be the first time we learn about its + associated protection space. + + * platform/network/cf/ResourceHandleCFNet.cpp: + (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): + (WebCore::WebCoreSynchronousLoader::didReceiveChallenge): + * platform/network/mac/ResourceHandleMac.mm: + (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): + (-[WebCoreSynchronousLoader connection:didReceiveAuthenticationChallenge:]): + +2010-05-11 Kevin Watters <kevinwatters@gmail.com> + + Reviewed by Kevin Ollivier. + + [wx] Create an NSFont on Mac builds that do not have built-in methods to do so. + https://bugs.webkit.org/show_bug.cgi?id=38931 + + * platform/graphics/wx/FontPlatformData.h: + (WebCore::FontPlatformData::nsFont): + * platform/graphics/wx/FontPlatformDataWxMac.mm: + (DegToRad): + (OSXCreateNSFont): + (WebCore::FontPlatformData::cacheNSFont): + * platform/graphics/wx/SimpleFontDataWx.cpp: + (WebCore::SimpleFontData::platformWidthForGlyph): + +2010-05-11 Avi Drissman <avi@chromium.org> + + Reviewed by Darin Fisher. + + [Chromium] Pipe RTL info into WebPopupMenuInfo + https://bugs.webkit.org/show_bug.cgi?id=38749 + + * platform/chromium/PopupMenuChromium.cpp: + (WebCore::PopupContainer::menuStyle): + * platform/chromium/PopupMenuChromium.h: + +2010-05-11 Mark Rowe <mrowe@apple.com> + + Fix the world. + + In r59162 a change was made to WebCore's FeatureDefines.xcconfig that enabled FILE_READER and FILE_WRITER. + The author and reviewer of that patch ignored the carefully-worded warning at the top of that file asking + that changes to the file be kept in sync across JavaScriptCore, WebCore and WebKit, as well as being kept + in sync with build-webkit. This led to WebCore and WebKit having different views of Document's vtable + and results in crashes in Safari shortly after launch when virtual function calls resulted in the wrong + function in WebCore being called. + + We fix this by bringing the FeatureDefines.xcconfig files in to sync. Based on the ChangeLog message and + other changes in r59162 it appears that enabling FILE_WRITER was unintentional so that particular change + has been reverted. + + * Configurations/FeatureDefines.xcconfig: + +2010-05-11 Dimitri Glazkov <dglazkov@chromium.org> + + Reviewed by Darin Adler. + + REGRESSION(r58520): Implicit submission on forms with button type="submit" no longer works + https://bugs.webkit.org/show_bug.cgi?id=38913 + + * Widened the check for a successful submit button to include all HTMLFormControlElements. + * Clarified implicit submission code by: + - introducing HTMLFormControlElement::canTriggerImplicitSubmission flag, + - getting rid of static casting and checking for tag names. + + * html/HTMLFormControlElement.h: + (WebCore::HTMLFormControlElement::canTriggerImplicitSubmission): Added. + * html/HTMLFormElement.cpp: + (WebCore::HTMLFormElement::submitImplicitly): Renamed parameters for clarity, refactored code + to use canTriggerImplicitSubmission. + * html/HTMLFormElement.h: Renamed parameter for clarity. + * html/HTMLInputElement.cpp: + (WebCore::HTMLInputElement::defaultEventHandler): Used canTriggerImplicitSubmission() + instead of isTextField() for clarity. + * html/HTMLInputElement.h: + (WebCore::HTMLInputElement::canTriggerImplicitSubmission): Added. + * html/HTMLIsIndexElement.h: + (WebCore::HTMLIsIndexElement::canTriggerImplicitSubmission): Added. + +2010-05-11 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r59171. + http://trac.webkit.org/changeset/59171 + https://bugs.webkit.org/show_bug.cgi?id=38933 + + "Broke the world" (Requested by bweinstein on #webkit). + + * WebCore.vcproj/WebCore.vcproj: + +2010-05-11 Brian Weinstein <bweinstein@apple.com> + + Reviewed by Steve Falkenburg. + Patch by Gavin Barraclough. + + REGRESSION (r57900-57919): 3% PLT Regression from moving strings into WTF. + https://bugs.webkit.org/show_bug.cgi?id=38930 + <rdar://problem/7937188> + + Add the WTF strings into the WebCore vcproj, from their copied location in $(WebKitOutputDir). + + No new tests because no change in behavior. + + * WebCore.vcproj/WebCore.vcproj: + +2010-05-11 Jian Li <jianli@chromium.org> + + Unreviewed. Fix compiling erron on snow leopard. + + * html/FileThreadTask.h: + (WebCore::createFileThreadTask): + +2010-05-11 Jian Li <jianli@chromium.org> + + Reviewed by Dmitry Titov. + + Expose FileReader interface. + https://bugs.webkit.org/show_bug.cgi?id=38609 + + Test: fast/files/file-reader.html + + * Configurations/FeatureDefines.xcconfig: + * DerivedSources.cpp: + * DerivedSources.make: + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.pri: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * bindings/js/JSEventTarget.cpp: + (WebCore::toJS): + * bindings/v8/V8DOMWrapper.cpp: + (WebCore::V8DOMWrapper::convertEventTargetToV8Object): + * html/FileError.idl: + * html/FileReader.idl: Added. + * page/DOMWindow.idl: + +2010-05-11 Xan Lopez <xlopez@igalia.com> + + Reviewed by Gustavo Noronha. + + [gtk] critical warning in soup_message_set_first_party() when cancelling a navigation + https://bugs.webkit.org/show_bug.cgi?id=38653 + + Check if willSendRequest cancelled the request before setting the + first party for the cookies in the message, otherwise we'll get a + critical warning. + + * platform/network/soup/ResourceHandleSoup.cpp: + (WebCore::restartedCallback): + +2010-05-11 Jer Noble <jer.noble@apple.com> + + Reviewed by Adele Peterson. + + REGRESSION (r59001): 11 media tests are failing on Windows (38847) + rdar://problem/7962997 + https://bugs.webkit.org/show_bug.cgi?id=38847 + + QTMovieWin was too much refactored; the cacheMovieScale() function should have + been left in QTMovie (instead of being moved into QTMovieGWorld). This fixes the + video-size-intrinsic-scale test. + + QTMovieTask::updateTaskTimer() was ignoring the maxInterval parameter unless + QTGetTimeUntilNextTask() returned an error, which caused the next timer to be + scheduled for extremely far in the future, breaking some of the layout tests. + + QTMovieTask::fireTaskClients() now makes a local copy of the task list before + calling clients, in case one of them removes themselves from the task list and + invalidates our iterating pointer. + + * platform/graphics/win/QTMovie.cpp: + (QTMoviePrivate::task): + (QTMoviePrivate::createMovieController): + (QTMoviePrivate::cacheMovieScale): + * platform/graphics/win/QTMovieGWorld.cpp: + (QTMovieGWorldPrivate::movieLoadStateChanged): + * platform/graphics/win/QTMovieTask.cpp: + (QTMovieTask::updateTaskTimer): + (QTMovieTask::fireTaskClients): + +2010-05-11 Patrick Gansterer <paroga@paroga.com> + + Reviewed by Adam Roben. + + Port SharedBuffer to WinCE. + https://bugs.webkit.org/show_bug.cgi?id=37222 + + Use only functions which are available on Win32 and WinCE. + + * platform/win/SharedBufferWin.cpp: + (WebCore::SharedBuffer::createWithContentsOfFile): + +2010-05-11 Benjamin Poulain <benjamin.poulain@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + [Qt] fast/text/find-hidden-text.html + https://bugs.webkit.org/show_bug.cgi?id=32922 + + Use the real page step for populating the QStyleOption otherwhise + the size can be negative, which can break the QStyle used. + + * platform/qt/ScrollbarThemeQt.cpp: + (WebCore::styleOptionSlider): + +2010-05-11 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Yury Semikhatsky. + + Web Inspector: make styles rendering more user-friendly. + + https://bugs.webkit.org/show_bug.cgi?id=36747 + + * inspector/front-end/ElementsPanel.js: + (WebInspector.ElementsPanel): + * inspector/front-end/StylesSidebarPane.js: + (WebInspector.StylesSidebarPane.prototype._update): + (WebInspector.StylesSidebarPane.prototype._rebuildSectionsForStyleRules): + (WebInspector.ComputedStyleSidebarPane): + (WebInspector.StylePropertiesSection): + (WebInspector.StylePropertiesSection.prototype.collapse): + (WebInspector.StylePropertiesSection.prototype.startEditingSelector): + * inspector/front-end/inspector.css: + (#elements-content): + (#elements-sidebar): + (.styles-sidebar-separator): + (.styles-section): + (.styles-section .header): + (.styles-section .header .title): + (.styles-section .header .subtitle): + (.styles-section .header .subtitle a): + (.styles-section .properties): + (.styles-section.no-affect .properties li): + (.styles-section.no-affect .properties li.editing): + (.styles-section.expanded .properties): + (.styles-section .properties li): + (.styles-section .properties li.parent): + (.styles-section .properties ol): + (.styles-section .properties ol.expanded): + (.styles-section .properties li.parent::before): + (.styles-section .properties li.parent.expanded::before): + (.styles-section .properties li .info): + (.styles-section:hover .properties .enabled-button): + (.styles-section .properties li.disabled .enabled-button): + (.styles-section .properties .enabled-button): + (.styles-section .properties .overloaded, .styles-section .properties .disabled): + (.styles-section.computed-style .properties .disabled): + (.styles-section .properties .implicit, .styles-section .properties .inherited): + (.styles-section .properties .inherited): + (.styles-section.show-inherited .properties .inherited): + +2010-05-11 Nikolas Zimmermann <nzimmermann@rim.com> + + Reviewed by Dirk Schulze. + + Move buildLayoutInformationForTextBox() from SVGRootInlineBox in SVGInlineTextBox where it belongs + https://bugs.webkit.org/show_bug.cgi?id=38799 + + Cleanup SVGRootInlineBox/SVGInlineTextBox. Move buildLayoutInformationForTextBox to SVGInlineTextBox. + Move lots of helper methods into new SVGTextLayoutUtilities class. Adapted all callsites. + + Fixed bug in kerning handling, hkern was applyable to vertical text as well. Covered by two new tests. + + Tests: svg/text/text-hkern-on-vertical-text.svg + svg/text/text-vkern-on-horizontal-text.svg + + * Android.mk: Add SVGTextLayoutUtilities.cpp/h to build. + * GNUmakefile.am: Ditto. + * WebCore.gypi: Ditto. + * WebCore.pro: Ditto. + * WebCore.vcproj/WebCore.vcproj: Ditto. + * WebCore.xcodeproj/project.pbxproj: Ditto. + * rendering/SVGInlineTextBox.cpp: + (WebCore::SVGInlineTextBox::calculateGlyphWidth): Use textRenderer()->characters() instead of textRenderer()->text()->characters() as shortcut. + (WebCore::SVGInlineTextBox::svgCharacterHitsPosition): Fix style issue, no else if after a return branch. + (WebCore::SVGInlineTextBox::paintSelection): Use !color.alpha() instead of color.alpha() == 0. + (WebCore::SVGInlineTextBox::buildLayoutInformation): Moved from SVGRootInlineBox::buildLayoutInformationForTextBox. + * rendering/SVGInlineTextBox.h: Fix indention. + (WebCore::SVGInlineTextBox::selectionTop): Inlined. + (WebCore::SVGInlineTextBox::selectionHeight): Inlined. + * rendering/SVGRenderTreeAsText.cpp: Include SVGTextLayoutUtilities.h + * rendering/SVGRootInlineBox.cpp: Move almost all static text layout helper functions in SVGTextLayoutUtilities + (WebCore::calculateTextLengthCorrectionForTextChunk): Fixed style issue in long if conditions spanning multiple lines. + (WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation): Use different topLeftPositionOfCharacterRange() taking start/end iterators. + (WebCore::SVGRootInlineBox::buildLayoutInformation): Use the moved SVGInlineTextBox::buildLayoutInformation() method. + (WebCore::SVGRootInlineBox::buildTextChunks): Fixed small style issue, remove unneeded parenthesis. + (WebCore::SVGRootInlineBox::layoutTextChunks): Fix style issue in debugging code. + * rendering/SVGRootInlineBox.h: Rename 'LastGlyphInfo' to 'SVGLastGlyphInfo' and move to SVGTextLayoutUtilities. + (WebCore::SVGRootInlineBox::svgTextChunks): Inlined for speed. + * rendering/SVGTextLayoutUtilities.cpp: Added. + (WebCore::isVerticalWritingMode): + (WebCore::dominantBaselineToShift): + (WebCore::alignmentBaselineToShift): + (WebCore::glyphOrientationToAngle): + (WebCore::glyphOrientationIsMultiplyOf180Degrees): + (WebCore::applyGlyphAdvanceAndShiftRespectingOrientation): + (WebCore::topLeftPositionOfCharacterRange): + (WebCore::cummulatedWidthOfInlineBoxCharacterRange): + (WebCore::cummulatedHeightOfInlineBoxCharacterRange): + (WebCore::svgTextRunForInlineTextBox): + (WebCore::calculateCSSKerning): + (WebCore::applySVGKerning): + * rendering/SVGTextLayoutUtilities.h: Added. + (WebCore::): + (WebCore::SVGTextPaintInfo::SVGTextPaintInfo): + (WebCore::SVGLastGlyphInfo::SVGLastGlyphInfo): + +2010-05-11 Zoltan Herczeg <zherczeg@webkit.org> + + Reviewed by Dirk Schulze. + + RenderSVGImage::imageChanged should invalidate the SVG filter cache + https://bugs.webkit.org/show_bug.cgi?id=38838 + + Test: svg/filters/filteredImage.svg + + * rendering/RenderSVGImage.cpp: + (WebCore::RenderSVGImage::imageChanged): + +2010-05-10 Simon Fraser <simon.fraser@apple.com> + + Fix asserting GTK build. + + r59137 changed the behavior of RenderObject::repaintUsingContainer(). I mistakenly + thought that non-compositing builds would always pass a 0 repaintContainer, but + actually the RenderView is passed in this case. So use this to repaint if + ACCELERATED_COMPOSITING is turned off. + + * rendering/RenderObject.cpp: + (WebCore::RenderObject::repaintUsingContainer): + +2010-05-10 Simon Fraser <simon.fraser@apple.com> + + Fix warning on Windows about unreachable code. + + * rendering/RenderLayerCompositor.cpp: + (WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingIFrame): + +2010-05-10 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Anders Carlsson + + Allow compositing layers to be connected across iframe boundaries on Mac + https://bugs.webkit.org/show_bug.cgi?id=38856 + + RenderObject::repaintUsingContainer() incorrectly did a view-based + repaint if the repaint container was the RenderView. Instead, we need + to check to see if the RenderView's layer is composited, and, if so, + whether it's painting into the window or not. This can occur when iframes + are composited. + + The bug is timing-sensitive, involving compositing in iframes, and I was not able to + concoct a good testcase. + + * rendering/RenderObject.cpp: + (WebCore::RenderObject::repaintUsingContainer): + +2010-05-10 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Anders Carlsson + + Allow compositing layers to be connected across iframe boundaries on Mac + https://bugs.webkit.org/show_bug.cgi?id=38856 + + Changes to allow compositing layers for iframes to switch between being hosted + by the iframe's layer-backed NSView, and parented in the GraphicsLayer tree of the + enclosing document. + + Tests: compositing/iframes/connect-compositing-iframe.html + compositing/iframes/connect-compositing-iframe2.html + compositing/iframes/connect-compositing-iframe3.html + + * page/FrameView.h: + * page/FrameView.cpp: + (WebCore::FrameView::hasCompositedContent): New convenience method. + (WebCore::FrameView::setIsOverlapped): If we're composited, poke the owner document in case it + wants to re-evaluate compositing decisions. + (WebCore::FrameView::isOverlapped): Just expose the existing flag. + + * rendering/RenderLayer.cpp: + (WebCore::RenderLayer::shouldBeNormalFlowOnly): + (WebCore::RenderLayer::isSelfPaintingLayer): + + * rendering/RenderLayerBacking.cpp: + (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration): If this is an iframe, we need + to ensure that the layers for the iframe content are hooked up. + (WebCore::RenderLayerBacking::updateDrawsContent): When an iframe toggles between different + attachments, the 'drawsContent' behavior of its root layer changes, so needs to be updated. + + * rendering/RenderLayerCompositor.h: + (WebCore::RenderLayerCompositor::updateCompositingLayers): Call destroyRootPlatformLayer() + instead of detachRootPlatformLayer() and manually zeroing out the OwnPtrs. + (WebCore::RenderLayerCompositor::updateBacking): If a RenderIFrame changes compositing mode, + we need to ensure that its content compositor attachment is updated. + (WebCore::RenderLayerCompositor::repaintOnCompositingChange): The existing code had a bug + that caused repaints for RenderViews (which have no parent) to bail. We only want to bail + for non-RenderViews that are not attached. + (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree): Factored the iframe-connecting + code into a new method, parentIFrameContentLayers(). + (WebCore::RenderLayerCompositor::parentIFrameContentLayers): New method to share the code that hooks + up the iframe's compositing layers to the parent. + (WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingIFrame): Add logic to propagate + compositing out of iframes on Mac in two situations: 1) when the FrameView is overlapped, and 2) + if the parent document is already composited. + (WebCore::RenderLayerCompositor::ensureRootPlatformLayer): Clean up the logic here to better deal + with dynamic changes of the attachment type. + (WebCore::RenderLayerCompositor::destroyRootPlatformLayer): Clean up and null out the clipping layer here. + (WebCore::RenderLayerCompositor::attachRootPlatformLayer): Call rootLayerAttachmentChanged(). + (WebCore::RenderLayerCompositor::detachRootPlatformLayer): Ditto. Also unparent the clipping and platform layers. + (WebCore::RenderLayerCompositor::updateRootLayerAttachment): Call ensureRootPlatformLayer() to re-evaluate + the layer attachment. + (WebCore::RenderLayerCompositor::rootLayerAttachmentChanged): We need to update the drawsContent() status + of the RenderView's layer's backing, because it changes depending on the attachment. + + * rendering/RenderWidget.cpp: + (WebCore::RenderWidget::paint): Do overlap testing if the frameView can do fast repaints (as before), + but also now when the frameView has composited content. + +2010-05-10 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Anders Carlsson + + Allow compositing layers to be connected across iframe boundaries on Mac + https://bugs.webkit.org/show_bug.cgi?id=38856 + + Rename the static shouldPropagateCompositingToIFrameParent() to shouldPropagateCompositingToEnclosingIFrame(), + to pave the way for runtime switches in the propagation behavior. We have to make sure we call it on + the correct RenderLayerCompositor (that belonging to the iframe's content document). + + * rendering/RenderLayerBacking.cpp: + (WebCore::RenderLayerBacking::paintingGoesToWindow): Now that we know the root layer attachment, we + can simplify this method. + + * rendering/RenderLayerCompositor.h: + * rendering/RenderLayerCompositor.cpp: + (WebCore::RenderLayerCompositor::enableCompositingMode): No need for the setNeedsStyleRecalc() + here, because the ensureRootPlatformLayer() or destroyRootPlatformLayer() will have already done it. + + (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree): Use the root layer attachment to determine + whether to parent the iframe's layers. + + (WebCore::RenderLayerCompositor::didMoveOnscreen): Method name change. + (WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingIFrame): Name change. + (WebCore::RenderLayerCompositor::requiresCompositingForIFrame): We need to consult the iframe contents + document's compositor to ask whether propagation is appropriate. + (WebCore::RenderLayerCompositor::ensureRootPlatformLayer): Name change. + +2010-05-10 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Anders Carlsson + + Allow compositing layers to be connected across iframe boundaries on Mac + https://bugs.webkit.org/show_bug.cgi?id=38856 + + Use an enum for the type of root layer attachment on a RenderLayerCompositor, so we can + determine if the attachment is via the ChromeClient, via an enclosing iframe, or unattached. + + * rendering/RenderLayerCompositor.h: New RootLayerAttachment enum. + (WebCore::RenderLayerCompositor::rootLayerAttachment): getter for the current attachment. + + * rendering/RenderLayerCompositor.cpp: + (WebCore::RenderLayerCompositor::RenderLayerCompositor): Init m_rootLayerAttachment. + (WebCore::RenderLayerCompositor::~RenderLayerCompositor): Assert that is unattached. + (WebCore::RenderLayerCompositor::updateCompositingLayers): Call destroyRootPlatformLayer instead of willMoveOffscreen, + when there are no layers left. Also clear out the clipping layer. + (WebCore::RenderLayerCompositor::didMoveOnscreen): Call attachRootPlatformLayer. + (WebCore::RenderLayerCompositor::willMoveOffscreen): Call ensureRootPlatformLayer with the appropriate attachment. + (WebCore::RenderLayerCompositor::ensureRootPlatformLayer): Only create the m_rootPlatformLayer if we don't have one + already, but be sure to always set the root layer geometry orientation. Also only create the + m_clippingLayer if we need to. + (WebCore::RenderLayerCompositor::destroyRootPlatformLayer): Call detachRootPlatformLayer(). + (WebCore::RenderLayerCompositor::attachRootPlatformLayer): Code moved from didMoveOnscreen, but switching on + attachment. + (WebCore::RenderLayerCompositor::detachRootPlatformLayer): Code moved from willMoveOffscreen, but switching on + attachment. + +2010-05-10 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Anders Carlsson + + Allow compositing layers to be connected across iframe boundaries on Mac + https://bugs.webkit.org/show_bug.cgi?id=38856 + + Clean up the geometry logic when propagating compositing out of iframes. + + * rendering/RenderLayerCompositor.cpp: + (WebCore::RenderLayerCompositor::updateRootLayerPosition): Geometry on m_rootPlatformLayer no longer + needs to be special when there's a clipping layer. + + (WebCore::RenderLayerCompositor::ensureRootPlatformLayer): Don't set the clipping layer to have + flipped geometry ever, and only set the root layer to have flipped geometry if it is not + being hosted in an iframe. Also no need to set a custom anchor point on the clipping layer. + +2010-05-10 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Anders Carlsson + + Allow compositing layers to be connected across iframe boundaries on Mac + https://bugs.webkit.org/show_bug.cgi?id=38856 + + Clean up some methods related to composited iframes. No behavioral changes. + + * rendering/RenderLayerBacking.h: Move innerRenderLayerCompositor() to be a static method: + RenderLayerCompositor::iframeContentsCompositor(). + * rendering/RenderLayerBacking.cpp: Remove innerRenderLayerCompositor(). + (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): Call iframeContentsCompositor(). + + * rendering/RenderLayerCompositor.cpp: + (WebCore::RenderLayerCompositor::enableCompositingMode): Call enclosingIFrameElement() + (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree): iframeContentsCompositor() is now a static method in this class. + Also check that the iframe contents are in compositing mode (slightly clearer than relying on rootPlatformLayer() returning + null). + (WebCore::RenderLayerCompositor::iframeContentsCompositor): Moved from RenderLayerBacking. + (WebCore::RenderLayerCompositor::didMoveOnscreen): Use enclosingIFrameElement() method. + (WebCore::RenderLayerCompositor::willMoveOffscreen): Ditto. + (WebCore::RenderLayerCompositor::enclosingIFrameElement): New method. + (WebCore::RenderLayerCompositor::ensureRootPlatformLayer): Call enclosingIFrameElement(). + * rendering/RenderLayerCompositor.h: New method, iframeContentsCompositor(). + +2010-05-10 Dumitru Daniliuc <dumi@chromium.org> + + Reviewed by Brady Eidson. + + Cleaning up and fixing the existing JSC DB bindings. + https://bugs.webkit.org/show_bug.cgi?id=34994 + + * bindings/js/JSDOMWindowCustom.cpp: + (WebCore::JSDOMWindow::openDatabase): + * bindings/js/JSDatabaseCustom.cpp: + (WebCore::JSDatabase::changeVersion): + (WebCore::createTransaction): + (WebCore::JSDatabase::transaction): + (WebCore::JSDatabase::readTransaction): + * bindings/js/JSSQLTransactionCustom.cpp: + (WebCore::JSSQLTransaction::executeSql): + +2010-05-10 Fumitoshi Ukai <ukai@chromium.org> + + Reviewed by Alexey Proskuryakov. + + WebSocket needs to suspend/resume as Active DOM object. + https://bugs.webkit.org/show_bug.cgi?id=38171 + + Implement suspend()/resume() in WebSocket and WebSocketChannel. + While WebSocketChannel is suspended, it only adds received data in m_buffer + or record the handle was closed, and report no event to WebSocket. + When resumed, it will process buffer or handle closing. + Since suspend/resume would be called while processing JavaScript event handler (e.g. before/after alert()), WebSocketChannel method that would fire an event need to be reentrant. + So, WebSocketChannel::processBuffer() call WebSocket to fire an event at most once and skips buffer before the calling, + so that next call of processBuffer() would process the next frame. + + * websockets/ThreadableWebSocketChannel.h: + * websockets/ThreadableWebSocketChannelClientWrapper.h: + (WebCore::ThreadableWebSocketChannelClientWrapper::didConnect): + Mark channel is opened, and process pending events if not suspended. + (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveMessage): + Push message back in pending queue, and process pending events if not suspended. + (WebCore::ThreadableWebSocketChannelClientWrapper::didClose): + Mark channel is closed, and process pending events if not suspended. + (WebCore::ThreadableWebSocketChannelClientWrapper::suspend): + Mark suspended. + (WebCore::ThreadableWebSocketChannelClientWrapper::resume): + Unmark suspended, and process pending events. + (WebCore::ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper): + (WebCore::ThreadableWebSocketChannelClientWrapper::processPendingEvents): + * websockets/WebSocket.cpp: + (WebCore::WebSocket::canSuspend): + (WebCore::WebSocket::suspend): + (WebCore::WebSocket::resume): + (WebCore::WebSocket::didClose): + * websockets/WebSocket.h: + * websockets/WebSocketChannel.cpp: + (WebCore::WebSocketChannel::WebSocketChannel): + (WebCore::WebSocketChannel::connect): + (WebCore::WebSocketChannel::send): + (WebCore::WebSocketChannel::bufferedAmount): + (WebCore::WebSocketChannel::close): + (WebCore::WebSocketChannel::suspend): + (WebCore::WebSocketChannel::resume): + When resumed, it will process buffer and + handle closing if handle was already closed while suspended. + (WebCore::WebSocketChannel::didClose): + If suspended, record unhandled bufferedAmount and set m_closed true, so that closing will be processed when resumed. + (WebCore::WebSocketChannel::didReceiveData): + Add received data in buffer and process buffer while it is not suspended. + (WebCore::WebSocketChannel::processBuffer): + Process handshake header or one frame message. + Return true if there are more data to be processed. + Return false otherwise (e.g. incomplete handshake header or incomplete frame). + * websockets/WebSocketChannel.h: + * websockets/WorkerThreadableWebSocketChannel.cpp: + (WebCore::WorkerThreadableWebSocketChannel::suspend): + (WebCore::WorkerThreadableWebSocketChannel::resume): + (WebCore::WorkerThreadableWebSocketChannel::Peer::suspend): + (WebCore::WorkerThreadableWebSocketChannel::Peer::resume): + (WebCore::WorkerThreadableWebSocketChannel::mainThreadSuspend): + (WebCore::WorkerThreadableWebSocketChannel::Bridge::suspend): + (WebCore::WorkerThreadableWebSocketChannel::mainThreadResume): + (WebCore::WorkerThreadableWebSocketChannel::Bridge::resume): + * websockets/WorkerThreadableWebSocketChannel.h: + +2010-05-07 Dumitru Daniliuc <dumi@chromium.org> + + Reviewed by Brady Eidson. + + Implement the JSC bindings for the sync DB API. + https://bugs.webkit.org/show_bug.cgi?id=34994 + + * bindings/js/JSDatabaseSyncCustom.cpp: + (WebCore::JSDatabaseSync::changeVersion): + (WebCore::createTransaction): + * bindings/js/JSSQLTransactionSyncCustom.cpp: + (WebCore::JSSQLTransactionSync::executeSql): + +2010-05-10 Dean Jackson <dino@apple.com> + + Reviewed by Simon Fraser. + + https://bugs.webkit.org/show_bug.cgi?id=36566 + The animation-fill-mode property was missing from + a few places where the animation shorthand is set up. + + Test: animations/animation-shorthand-removed.html + + * css/CSSMutableStyleDeclaration.cpp: + (WebCore::CSSMutableStyleDeclaration::getPropertyValue): Make sure + animation-fill-mode is included in the animation shorthand + * css/CSSPropertyLonghand.cpp: + (WebCore::initShorthandMap): + +2010-05-10 Sam Weinig <sam@webkit.org> + + Reviewed by Darin Adler. + + Fix for https://bugs.webkit.org/show_bug.cgi?id=38583 + <rdar://problem/7948784> Crash in Element::normalizeAttributes. + + Test: fast/dom/Element/normalize-crash.html + + * dom/Element.cpp: + (WebCore::Element::normalizeAttributes): Copy attributes to a vector + before iterating. + * dom/NamedAttrMap.cpp: + (WebCore::NamedNodeMap::copyAttributesToVector): Added. + * dom/NamedAttrMap.h: + +2010-05-10 Jian Li <jianli@chromium.org> + + Reviewed by Adam Barth. + + [V8] Fix V8 code generator script to generate the correct code for + converting ScriptString. + https://bugs.webkit.org/show_bug.cgi?id=38873 + + Updated the bindings test result. Note that the result is also updated + to reflect other script generator changes not introduced by this patch. + + * bindings/scripts/CodeGeneratorV8.pm: + * bindings/scripts/test/JS/JSTestCallback.cpp: + (WebCore::JSTestCallback::JSTestCallback): + (WebCore::JSTestCallback::~JSTestCallback): + * bindings/scripts/test/JS/JSTestCallback.h: + * bindings/scripts/test/V8/V8TestObj.cpp: + (WebCore::TestObjInternal::scriptStringAttrAttrGetter): + +2010-05-10 Mark Rowe <mrowe@apple.com> + + Fix the 32-bit WebKit2 build. + + * WebCore.base.exp: + +2010-05-07 Jon Honeycutt <jhoneycutt@apple.com> + + Crash closing window containing Flash plug-in + https://bugs.webkit.org/show_bug.cgi?id=38797 + <rdar://problem/7935266> + + Reviewed by Eric Seidel. + + Test: plugins/geturlnotify-during-document-teardown.html + + * plugins/PluginView.cpp: + (WebCore::PluginView::load): + Null check the DocumentLoader; it's possible for this to be null while + the Document is being torn down and before the plug-in is destroyed. + +2010-05-10 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Darin Adler. + + Based on a patch by Eric Seidel. + + https://bugs.webkit.org/show_bug.cgi?id=28697 + <rdar://problem/7946578> WebKit crash on WebCore::Node::nodeIndex() + + It's not OK to call ContainerNode::willRemoveChild() in a loop, because Range code assumes + that it can adjust start and end position to any node except for the one being removed - + so these notifications cannot be batched. + + Test: fast/dom/Range/remove-all-children-crash.html + + * dom/ContainerNode.cpp: + (WebCore::willRemoveChild): Removed unused ExceptionCode. + (WebCore::willRemoveChildren): New function, used in removeChildren() case. + (WebCore::ContainerNode::removeChild): ExceptionCode return was always 0, don't bother with it. + (WebCore::ContainerNode::removeChildren): Call willRemoveChildrenFromNode. + (WebCore::dispatchChildRemovalEvents): Moved some logic out into willRemoveChildrenFromNode + and willRemoveChild. + + * dom/Document.cpp: + (WebCore::Document::nodeChildrenWillBeRemoved): New function, used in removeChildren() case. + + * dom/Document.h: + (WebCore::Document::nodeChildrenWillBeRemoved): New function, used in removeChildren() case. + + * dom/Range.h: + * dom/Range.cpp: + (WebCore::boundaryNodeChildrenWillBeRemoved): New function, used in removeChildren() case. + (WebCore::Range::nodeChildrenWillBeRemoved): Ditto. + +2010-05-10 Dumitru Daniliuc <dumi@chromium.org> + + Reviewed by Adam Barth. + + Implement the V8 bindings for the sync DB API. + https://bugs.webkit.org.show_bug.cgi?id=34994 + + * bindings/v8/custom/V8DatabaseSyncCustom.cpp: + (WebCore::V8DatabaseSync::changeVersionCallback): + (WebCore::createTransaction): + * bindings/v8/custom/V8SQLTransactionSyncCustom.cpp: + (WebCore::V8SQLTransactionSync::executeSqlCallback): + * bindings/v8/custom/V8WorkerContextCustom.cpp: + (WebCore::V8WorkerContextCustom::openDatabaseSyncCallback): + +2010-05-10 Dumitru Daniliuc <dumi@chromium.org> + + Reviewed by Adam Barth. + + Clean up and fix the existing V8 DB bindings. + https://bugs.webkit.org/show_bug.cgi?id=34994 + + * bindings/v8/custom/V8DOMWindowCustom.cpp: + (WebCore::V8DOMWindow::openDatabaseCallback): + * bindings/v8/custom/V8DatabaseCustom.cpp: + (WebCore::V8Database::changeVersionCallback): + (WebCore::createTransaction): + * bindings/v8/custom/V8SQLTransactionCustom.cpp: + (WebCore::V8SQLTransaction::executeSqlCallback): + +2010-05-10 Kevin Ollivier <kevino@theolliviers.com> + + [wx] Build fix for wx 2.8 after complex text changes. + + * platform/graphics/wx/FontPlatformDataWxMac.mm: + (WebCore::FontPlatformData::nsFont): + * platform/graphics/wx/SimpleFontDataWx.cpp: + (WebCore::SimpleFontData::platformWidthForGlyph): + +2010-05-10 John Gregg <johnnyg@google.com> + + [chromium] Try to fix the chromium build after r59085 by + including MathExtras.h before using isnan(). + https://bugs.webkit.org/show_bug.cgi?id=38860 + + * html/canvas/WebGLIntegralTypedArrayBase.h: + +2010-05-10 Kevin Ollivier <kevino@theolliviers.com> + + [wx] Build fix for wx trunk after complex text changes. + + * platform/graphics/wx/FontPlatformDataWx.cpp: + (WebCore::FontPlatformData::FontPlatformData): + +2010-05-10 Tony Gentilcore <tonyg@chromium.org> + + Reviewed by Adam Barth. + + Provide mechanism to cache metadata for a resource + https://bugs.webkit.org/show_bug.cgi?id=37874 + + No new tests because no new functionality. + + * WebCore.gypi: + * loader/CachedMetadata.h: Added. + (WebCore::CachedMetadata::create): + (WebCore::CachedMetadata::deserialize): + (WebCore::CachedMetadata::serialize): + (WebCore::CachedMetadata::~CachedMetadata): + (WebCore::CachedMetadata::dataTypeID): + (WebCore::CachedMetadata::data): + (WebCore::CachedMetadata::size): + (WebCore::CachedMetadata::readUnsigned): + (WebCore::CachedMetadata::appendUnsigned): + (WebCore::CachedMetadata::CachedMetadata): + * loader/CachedResource.cpp: + (WebCore::CachedResource::setSerializedCachedMetadata): + (WebCore::CachedResource::setCachedMetadata): + (WebCore::CachedResource::cachedMetadata): + * loader/CachedResource.h: + * loader/ResourceLoader.h: + (WebCore::ResourceLoader::didReceiveCachedMetadata): + * loader/SubresourceLoader.cpp: + (WebCore::SubresourceLoader::didReceiveCachedMetadata): + * loader/SubresourceLoader.h: + * loader/SubresourceLoaderClient.h: + (WebCore::SubresourceLoaderClient::didReceiveCachedMetadata): + * loader/loader.cpp: + (WebCore::Loader::Host::didReceiveCachedMetadata): + * loader/loader.h: + * platform/network/ResourceHandle.cpp: + (WebCore::ResourceHandle::cacheMetadata): + * platform/network/ResourceHandle.h: + * platform/network/ResourceHandleClient.h: + (WebCore::ResourceHandleClient::didReceiveCachedMetadata): + +2010-05-09 Kenneth Russell <kbr@google.com> + + Reviewed by Dimitri Glazkov. + + Refactor WebGLArray types to share more code + https://bugs.webkit.org/show_bug.cgi?id=37712 + + Refactored WebGLArray types for maximal code sharing. Added + WebGLTypedArrayBase and WebGLIntegralTypedArrayBase template + superclasses. Changed overridden virtuals to have minimal + visibility (private instead of public). Fixed const correctness of + a few methods. There are no changes to the public APIs of the + WebGLArray classes; the JavaScript bindings are unchanged. + + No new tests; existing tests cover this functionality. Ran all + WebGL layout tests in Safari and Chromium on Mac OS X. + + * WebCore.gypi: + * WebCore.xcodeproj/project.pbxproj: + * html/canvas/WebGLArray.h: + (WebCore::WebGLArray::buffer): + (WebCore::WebGLArray::baseAddress): + (WebCore::WebGLArray::byteOffset): + * html/canvas/WebGLByteArray.cpp: + (WebCore::WebGLByteArray::create): + (WebCore::WebGLByteArray::WebGLByteArray): + (WebCore::WebGLByteArray::slice): + * html/canvas/WebGLByteArray.h: + (WebCore::WebGLByteArray::isByteArray): + * html/canvas/WebGLFloatArray.cpp: + (WebCore::WebGLFloatArray::create): + (WebCore::WebGLFloatArray::WebGLFloatArray): + (WebCore::WebGLFloatArray::slice): + * html/canvas/WebGLFloatArray.h: + (WebCore::WebGLFloatArray::set): + (WebCore::WebGLFloatArray::item): + (WebCore::WebGLFloatArray::isFloatArray): + * html/canvas/WebGLIntArray.cpp: + (WebCore::WebGLIntArray::create): + (WebCore::WebGLIntArray::WebGLIntArray): + (WebCore::WebGLIntArray::slice): + * html/canvas/WebGLIntArray.h: + (WebCore::WebGLIntArray::isIntArray): + * html/canvas/WebGLIntegralTypedArrayBase.h: Added. + (WebCore::WebGLIntegralTypedArrayBase::set): + (WebCore::WebGLIntegralTypedArrayBase::item): + (WebCore::WebGLIntegralTypedArrayBase::WebGLIntegralTypedArrayBase): + * html/canvas/WebGLShortArray.cpp: + (WebCore::WebGLShortArray::create): + (WebCore::WebGLShortArray::WebGLShortArray): + (WebCore::WebGLShortArray::slice): + * html/canvas/WebGLShortArray.h: + (WebCore::WebGLShortArray::isShortArray): + * html/canvas/WebGLTypedArrayBase.h: Added. + (WebCore::WebGLTypedArrayBase::data): + (WebCore::WebGLTypedArrayBase::set): + (WebCore::WebGLTypedArrayBase::length): + (WebCore::WebGLTypedArrayBase::WebGLTypedArrayBase): + (WebCore::WebGLTypedArrayBase::create): + (WebCore::WebGLTypedArrayBase::sliceImpl): + (WebCore::WebGLTypedArrayBase::byteLength): + * html/canvas/WebGLUnsignedByteArray.cpp: + (WebCore::WebGLUnsignedByteArray::create): + (WebCore::WebGLUnsignedByteArray::WebGLUnsignedByteArray): + (WebCore::WebGLUnsignedByteArray::slice): + * html/canvas/WebGLUnsignedByteArray.h: + (WebCore::WebGLUnsignedByteArray::isUnsignedByteArray): + * html/canvas/WebGLUnsignedIntArray.cpp: + (WebCore::WebGLUnsignedIntArray::create): + (WebCore::WebGLUnsignedIntArray::WebGLUnsignedIntArray): + (WebCore::WebGLUnsignedIntArray::slice): + * html/canvas/WebGLUnsignedIntArray.h: + (WebCore::WebGLUnsignedIntArray::isUnsignedIntArray): + * html/canvas/WebGLUnsignedShortArray.cpp: + (WebCore::WebGLUnsignedShortArray::create): + (WebCore::WebGLUnsignedShortArray::WebGLUnsignedShortArray): + (WebCore::WebGLUnsignedShortArray::slice): + * html/canvas/WebGLUnsignedShortArray.h: + (WebCore::WebGLUnsignedShortArray::isUnsignedShortArray): + +2010-05-10 Kenneth Russell <kbr@google.com> + + Reviewed by Dimitri Glazkov. + + Refactor WebGLArray types to share more code + https://bugs.webkit.org/show_bug.cgi?id=37712 + + Refactored WebGLArray types for maximal code sharing. Added + WebGLTypedArrayBase and WebGLIntegralTypedArrayBase template + superclasses. Changed overridden virtuals to have minimal + visibility (private instead of public). Fixed const correctness of + a few methods. There are no changes to the public APIs of the + WebGLArray classes; the JavaScript bindings are unchanged. + + No new tests; existing tests cover this functionality. Ran all + WebGL layout tests in Safari and Chromium on Mac OS X. + + * WebCore.gypi: + * WebCore.xcodeproj/project.pbxproj: + * html/canvas/WebGLArray.h: + (WebCore::WebGLArray::buffer): + (WebCore::WebGLArray::baseAddress): + (WebCore::WebGLArray::byteOffset): + * html/canvas/WebGLByteArray.cpp: + (WebCore::WebGLByteArray::create): + (WebCore::WebGLByteArray::WebGLByteArray): + (WebCore::WebGLByteArray::slice): + * html/canvas/WebGLByteArray.h: + (WebCore::WebGLByteArray::isByteArray): + * html/canvas/WebGLFloatArray.cpp: + (WebCore::WebGLFloatArray::create): + (WebCore::WebGLFloatArray::WebGLFloatArray): + (WebCore::WebGLFloatArray::slice): + * html/canvas/WebGLFloatArray.h: + (WebCore::WebGLFloatArray::set): + (WebCore::WebGLFloatArray::item): + (WebCore::WebGLFloatArray::isFloatArray): + * html/canvas/WebGLIntArray.cpp: + (WebCore::WebGLIntArray::create): + (WebCore::WebGLIntArray::WebGLIntArray): + (WebCore::WebGLIntArray::slice): + * html/canvas/WebGLIntArray.h: + (WebCore::WebGLIntArray::isIntArray): + * html/canvas/WebGLIntegralTypedArrayBase.h: Added. + (WebCore::WebGLIntegralTypedArrayBase::set): + (WebCore::WebGLIntegralTypedArrayBase::item): + (WebCore::WebGLIntegralTypedArrayBase::WebGLIntegralTypedArrayBase): + * html/canvas/WebGLShortArray.cpp: + (WebCore::WebGLShortArray::create): + (WebCore::WebGLShortArray::WebGLShortArray): + (WebCore::WebGLShortArray::slice): + * html/canvas/WebGLShortArray.h: + (WebCore::WebGLShortArray::isShortArray): + * html/canvas/WebGLTypedArrayBase.h: Added. + (WebCore::WebGLTypedArrayBase::data): + (WebCore::WebGLTypedArrayBase::set): + (WebCore::WebGLTypedArrayBase::length): + (WebCore::WebGLTypedArrayBase::WebGLTypedArrayBase): + (WebCore::WebGLTypedArrayBase::create): + (WebCore::WebGLTypedArrayBase::sliceImpl): + (WebCore::WebGLTypedArrayBase::byteLength): + * html/canvas/WebGLUnsignedByteArray.cpp: + (WebCore::WebGLUnsignedByteArray::create): + (WebCore::WebGLUnsignedByteArray::WebGLUnsignedByteArray): + (WebCore::WebGLUnsignedByteArray::slice): + * html/canvas/WebGLUnsignedByteArray.h: + (WebCore::WebGLUnsignedByteArray::isUnsignedByteArray): + * html/canvas/WebGLUnsignedIntArray.cpp: + (WebCore::WebGLUnsignedIntArray::create): + (WebCore::WebGLUnsignedIntArray::WebGLUnsignedIntArray): + (WebCore::WebGLUnsignedIntArray::slice): + * html/canvas/WebGLUnsignedIntArray.h: + (WebCore::WebGLUnsignedIntArray::isUnsignedIntArray): + * html/canvas/WebGLUnsignedShortArray.cpp: + (WebCore::WebGLUnsignedShortArray::create): + (WebCore::WebGLUnsignedShortArray::WebGLUnsignedShortArray): + (WebCore::WebGLUnsignedShortArray::slice): + * html/canvas/WebGLUnsignedShortArray.h: + (WebCore::WebGLUnsignedShortArray::isUnsignedShortArray): + +2010-05-10 Brent Fulgham <bfulgham@webkit.org> + + Build fix, not reviewed. + + Correct post-build copy command for WinCairo port to make sure + cairo headers are available for WebKit.dll build. + + * WebCore.vcproj/WebCore.vcproj: + +2010-05-10 Dirk Schulze <krit@webkit.org> + + Reviewed by Nikolas Zimmermann. + + Further optimization for SVG's repaintRect calculation + https://bugs.webkit.org/show_bug.cgi?id=38820 + + This is a further optimization to get smaller repaintRects on SVG objects + in combination with masker or clipper resources. + Masker takes the unite of all stroke boundaries of it's childs. + Both, clipper and masker, store this union to avoid multiple calls of the childs + and the unite calculations now. + The unite rect can be transformed to any targets objectBoundingBox, if the content + unit of the resource is set to objectBoundingBoxMode. + This speeds up the use of resources with multiple target objects. + + No behavior changes, the smaller repaintRects cause updates for DRT results. + + * rendering/RenderSVGResource.h: + * rendering/RenderSVGResourceClipper.cpp: + (WebCore::RenderSVGResourceClipper::invalidateClients): + (WebCore::RenderSVGResourceClipper::calculateClipContentRepaintRect): + (WebCore::RenderSVGResourceClipper::resourceBoundingBox): + * rendering/RenderSVGResourceClipper.h: + * rendering/RenderSVGResourceFilter.cpp: + (WebCore::RenderSVGResourceFilter::resourceBoundingBox): + * rendering/RenderSVGResourceFilter.h: + * rendering/RenderSVGResourceGradient.h: + (WebCore::RenderSVGResourceGradient::resourceBoundingBox): + * rendering/RenderSVGResourceMarker.h: + (WebCore::RenderSVGResourceMarker::resourceBoundingBox): + * rendering/RenderSVGResourceMasker.cpp: + (WebCore::RenderSVGResourceMasker::invalidateClients): + (WebCore::RenderSVGResourceMasker::createMaskImage): + (WebCore::RenderSVGResourceMasker::calculateMaskContentRepaintRect): + (WebCore::RenderSVGResourceMasker::resourceBoundingBox): + * rendering/RenderSVGResourceMasker.h: + * rendering/RenderSVGResourcePattern.h: + (WebCore::RenderSVGResourcePattern::resourceBoundingBox): + * rendering/RenderSVGResourceSolidColor.h: + (WebCore::RenderSVGResourceSolidColor::resourceBoundingBox): + +2010-05-11 Ilya Tikhonovsky <loislo@chromium.org> + + Reviewed by Pavel Feldman. + + WebInspector: Cosmetic changes. + 1) Inner Function Call event of Timer Fire should be merged into parent even if it is not the only child. + 2) Standard tooltips for resource links are clashing with Popover. + 3) Recalculate Style caller info are duplicating in Details Popover (Caller and Details rows). + https://bugs.webkit.org/show_bug.cgi?id=38732 + + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline): + (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent): + (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails): + * inspector/front-end/inspector.js: + (WebInspector.linkifyURLAsNode): + +2010-05-10 Csaba Osztrogonác <ossy@webkit.org> + + Rubber-stamped by Simon Hausmann. + + [Qt] Roll-out r59020 and r59021, because the Qt part of these changes + haven't been landed in Qt trunk yet. Should be rolled-in again after the merge. + + https://bugs.webkit.org/show_bug.cgi?id=32967 + + * platform/network/qt/ResourceRequestQt.cpp: + (WebCore::ResourceRequest::toNetworkRequest): + +2010-05-10 Markus Goetz <Markus.Goetz@nokia.com> + + Reviewed by Simon Hausmann. + + Qt after 4.6.3 has its integrated DNS cache. Therefore some + code is not necessary anymore. + + https://bugs.webkit.org/show_bug.cgi?id=38834 + + * platform/network/qt/DnsPrefetchHelper.h: + (WebCore::DnsPrefetchHelper::lookup): + (WebCore::DnsPrefetchHelper::lookedUp): + +2010-05-10 Chris Jerdonek <cjerdonek@webkit.org> + + Reviewed by Darin Adler. + + Asserted that Node::setDocument() is not being used to change + the document of a node. + + https://bugs.webkit.org/show_bug.cgi?id=38821 + + * dom/Node.cpp: + (WebCore::Node::setDocument): + Added an ASSERT at the beginning of the function. + * dom/Node.h: + Documented that Node::setDocument() should not be used to change the + document of a node until after the node has been removed from its + prior document. + +2010-05-10 Dirk Schulze <krit@webkit.org> + + Reviewed by Darin Adler. + + SVG FilterEffects need more detailed DRT information + https://bugs.webkit.org/show_bug.cgi?id=38683 + + All SVG Filter effects get dumped now. The structure of the DRT output + changed. The last effect is shown first, followed by the previous effects. + + No changed behaior, so no new test added. + + * platform/graphics/filters/FEBlend.cpp: + (WebCore::operator<<): + (WebCore::FEBlend::externalRepresentation): + * platform/graphics/filters/FEBlend.h: + * platform/graphics/filters/FEColorMatrix.cpp: + (WebCore::operator<<): + (WebCore::FEColorMatrix::externalRepresentation): + * platform/graphics/filters/FEColorMatrix.h: + * platform/graphics/filters/FEComponentTransfer.cpp: + (WebCore::operator<<): + (WebCore::FEComponentTransfer::externalRepresentation): + * platform/graphics/filters/FEComponentTransfer.h: + * platform/graphics/filters/FEComposite.cpp: + (WebCore::operator<<): + (WebCore::FEComposite::externalRepresentation): + * platform/graphics/filters/FEComposite.h: + (WebCore::): + (WebCore::FEComposite::uniteChildEffectSubregions): + * platform/graphics/filters/FEGaussianBlur.cpp: + (WebCore::FEGaussianBlur::externalRepresentation): + * platform/graphics/filters/FEGaussianBlur.h: + (WebCore::FEGaussianBlur::uniteChildEffectSubregions): + * platform/graphics/filters/FilterEffect.cpp: + (WebCore::FilterEffect::externalRepresentation): + * platform/graphics/filters/FilterEffect.h: + * platform/graphics/filters/SourceAlpha.cpp: + (WebCore::SourceAlpha::externalRepresentation): + * platform/graphics/filters/SourceAlpha.h: + * platform/graphics/filters/SourceGraphic.cpp: + (WebCore::SourceGraphic::externalRepresentation): + * platform/graphics/filters/SourceGraphic.h: + * rendering/RenderTreeAsText.cpp: + (WebCore::writeIndent): + * rendering/RenderTreeAsText.h: + * rendering/SVGRenderTreeAsText.cpp: + (WebCore::writeSVGResourceContainer): + * svg/graphics/filters/SVGFEConvolveMatrix.cpp: + (WebCore::operator<<): + (WebCore::FEConvolveMatrix::externalRepresentation): + * svg/graphics/filters/SVGFEConvolveMatrix.h: + * svg/graphics/filters/SVGFEDiffuseLighting.cpp: + (WebCore::FEDiffuseLighting::externalRepresentation): + * svg/graphics/filters/SVGFEDiffuseLighting.h: + * svg/graphics/filters/SVGFEDisplacementMap.cpp: + (WebCore::operator<<): + (WebCore::FEDisplacementMap::externalRepresentation): + * svg/graphics/filters/SVGFEDisplacementMap.h: + * svg/graphics/filters/SVGFEFlood.cpp: + (WebCore::FEFlood::externalRepresentation): + * svg/graphics/filters/SVGFEFlood.h: + * svg/graphics/filters/SVGFEImage.cpp: + (WebCore::FEImage::externalRepresentation): + * svg/graphics/filters/SVGFEImage.h: + * svg/graphics/filters/SVGFEMerge.cpp: + (WebCore::FEMerge::externalRepresentation): + * svg/graphics/filters/SVGFEMerge.h: + * svg/graphics/filters/SVGFEMorphology.cpp: + (WebCore::operator<<): + (WebCore::FEMorphology::externalRepresentation): + * svg/graphics/filters/SVGFEMorphology.h: + * svg/graphics/filters/SVGFEOffset.cpp: + (WebCore::FEOffset::externalRepresentation): + * svg/graphics/filters/SVGFEOffset.h: + * svg/graphics/filters/SVGFESpecularLighting.cpp: + (WebCore::FESpecularLighting::externalRepresentation): + * svg/graphics/filters/SVGFESpecularLighting.h: + * svg/graphics/filters/SVGFETile.cpp: + (WebCore::FETile::externalRepresentation): + * svg/graphics/filters/SVGFETile.h: + * svg/graphics/filters/SVGFETurbulence.cpp: + (WebCore::operator<<): + (WebCore::FETurbulence::externalRepresentation): + * svg/graphics/filters/SVGFETurbulence.h: + +2010-05-10 Jeremy Orlow <jorlow@chromium.org> + + Reviewed by Nate Chapin. + + Change IndexedDB to use events instead of callbacks + https://bugs.webkit.org/show_bug.cgi?id=38594 + + Switch IndexedDB over to an event based model to match what + Mozilla (and probably MS?) are doing. This also gets rid of + a lot of template mess at the expense of a little extra boiler + plate code (for each type that IDBResult.result could be). + + This change also introduces JSC bindings that match the level of + functionality the V8 bindings have. + + Still not testable, but that shoudl change shortly. + + * DerivedSources.cpp: + * DerivedSources.make: + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.pri: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * bindings/js/JSEventCustom.cpp: + * bindings/js/JSIDBRequestCustom.cpp: Added. + (WebCore::JSIDBRequest::result): + * bindings/v8/V8DOMWrapper.cpp: + (WebCore::V8DOMWrapper::convertEventTargetToV8Object): + * bindings/v8/custom/V8CustomIDBCallbacks.h: Removed. + * bindings/v8/custom/V8IDBRequestCustom.cpp: Added. + (WebCore::V8IDBRequest::resultAccessorGetter): + * bindings/v8/custom/V8IndexedDatabaseRequestCustom.cpp: Removed. + * dom/EventTarget.cpp: + (WebCore::EventTarget::toIDBRequest): + * dom/EventTarget.h: + * storage/IDBCallbacks.h: + * storage/IDBDatabaseRequest.h: + (WebCore::IDBDatabaseRequest::createObjectStore): + * storage/IDBRequest.cpp: Added. + (WebCore::IDBRequest::IDBRequest): + (WebCore::IDBRequest::~IDBRequest): + (WebCore::IDBRequest::idbDatabaseResult): + (WebCore::IDBRequest::serializedScriptValueResult): + (WebCore::IDBRequest::onError): + (WebCore::IDBRequest::onSuccess): + (WebCore::IDBRequest::abort): + (WebCore::IDBRequest::scriptExecutionContext): + (WebCore::IDBRequest::stop): + (WebCore::IDBRequest::suspend): + (WebCore::IDBRequest::resume): + (WebCore::IDBRequest::eventTargetData): + (WebCore::IDBRequest::ensureEventTargetData): + (WebCore::IDBRequest::timerFired): + (WebCore::IDBRequest::onEventCommon): + * storage/IDBRequest.h: Added. + (WebCore::IDBRequest::create): + (WebCore::IDBRequest::): + (WebCore::IDBRequest::resultType): + (WebCore::IDBRequest::readyState): + (WebCore::IDBRequest::error): + (WebCore::IDBRequest::toIDBRequest): + (WebCore::IDBRequest::refEventTarget): + (WebCore::IDBRequest::derefEventTarget): + * storage/IDBRequest.idl: Added. + * storage/IndexedDatabase.h: + * storage/IndexedDatabaseImpl.cpp: + (WebCore::IndexedDatabaseImpl::open): + * storage/IndexedDatabaseImpl.h: + * storage/IndexedDatabaseRequest.cpp: + (WebCore::IndexedDatabaseRequest::open): + * storage/IndexedDatabaseRequest.h: + * storage/IndexedDatabaseRequest.idl: + +2010-05-10 Ilya Tikhonovsky <loislo@chromium.org> + + Not reviewed: rollback the commit r59062 + + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline): + (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent): + (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails): + * inspector/front-end/inspector.js: + (WebInspector.linkifyURLAsNode): + +2010-05-10 Ilya Tikhonovsky <loislo@chromium.org> + + Reviewed by Pavel Feldman. + + WebInspector: Cosmetic changes. + 1) Inner Function Call event of Timer Fire should be merged into parent even if it is not the only child. + 2) Standard tooltips for resource links are clashing with Popover. + 3) Recalculate Style caller info are duplicating in Details Popover (Caller and Details rows). + https://bugs.webkit.org/show_bug.cgi?id=38732 + + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline): + (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent): + (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails): + * inspector/front-end/inspector.js: + (WebInspector.linkifyURLAsNode): + +2010-05-08 Ilya Tikhonovsky <loislo@chromium.org> + + Reviewed by Pavel Feldman. + + WebInspector: If some record is not in visible area then it's expand element also is not + visible even if it has children in visible area. + https://bugs.webkit.org/show_bug.cgi?id=38643 + + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel): + (WebInspector.TimelinePanel.prototype._refreshRecords): + +2010-05-07 Sam Weinig <sam@webkit.org> + + Reviewed by Darin Adler. + + Fix for https://bugs.webkit.org/show_bug.cgi?id=38557 + r58526 introduced a ~30% regression on Dromaeo JS lib + + This fix does two things. + - Don't use QualifiedName as the key to a HashMap, use a + RefPtr<QualifiedNameImpl> instead. We should remove the HashTraits for + QualifiedName and that will happen in a follow up patch. + - Only mark cached NodeLists on Documents instead of all Nodes. This is + okay since the marking of NodeLists is an optimization to keep NodeList + wrappers alive and is not mandated by any spec. + + * bindings/js/JSDocumentCustom.cpp: + (WebCore::JSDocument::markChildren): + * bindings/js/JSNodeCustom.cpp: + (WebCore::JSNode::markChildren): + * dom/Node.cpp: + (WebCore::Node::removeCachedTagNodeList): + (WebCore::Node::getElementsByTagNameNS): + * dom/NodeRareData.h: + +2010-05-08 Antonio Gomes <tonikitoo@webkit.org> + + Unreviewed attempt to fix Windows build. + + * page/SpatialNavigation.h: + (WebCore::fudgeFactor): + +2010-05-03 Antonio Gomes <tonikitoo@webkit.org> + + Reviewed by Kenneth Christiansen. + + Spatial Navigation: create a getter for the "fudgeFactor" + https://bugs.webkit.org/show_bug.cgi?id=38488 + + A couple of places in the Spatial Navigation code make use of a "fudge factor" + to improve precision by working around outline focus metrics and such. Patch adds + a helper method for unify getter operations of this value, instead of having it + declared locally in the various methods it is used. + + No behaviour change. + + * page/SpatialNavigation.cpp: + (WebCore::scrollIntoView): + (WebCore::deflateIfOverlapped): + * page/SpatialNavigation.h: + (WebCore::fudgeFactor): + +2010-05-08 Stuart Morgan <stuartmorgan@chromium.org> + + Reviewed by Darin Adler. + + Change the npapi.h header guards to match the npapi-headers repository + copy. + + https://bugs.webkit.org/show_bug.cgi?id=38666 + + * bridge/npapi.h: + +2010-05-08 Stuart Morgan <stuartmorgan@chromium.org> + + Reviewed by Darin Fisher. + + Resolve most of the whitespace/comment/order differences in npapi.h + and npruntime.h relative to the npapi-headers repository versions. + No changes to the substance of the code. + + https://bugs.webkit.org/show_bug.cgi?id=38666 + + * bridge/npapi.h: + (_NPPrint::): + (_NPCocoaEvent::): + * bridge/npruntime.h: + +2010-05-08 Laszlo Gombos <laszlo.1.gombos@nokia.com> + + Reviewed by Darin Adler. + + Fix guard around IndexedDatabase + https://bugs.webkit.org/show_bug.cgi?id=38710 + + No new tests, there is no new functionality. + + * page/PageGroup.h: + +2010-05-08 Luiz Agostini <luiz.agostini@openbossa.org> + + Reviewed by Simon Hausmann. + + [Qt] Platform plugin + https://bugs.webkit.org/show_bug.cgi?id=38438 + + Select popups delegate private API. To provide select popup delegates + a plugin that implements QWebKitPlatformPlugin must be found + in QCoreApplication::libraryPaths. + + * WebCore.pro: + +2010-05-08 Leandro Pereira <leandro@profusion.mobi> + + Reviewed by Gustavo Noronha Silva. + + [EFL] It does not make sense to use RenderThemeEfl::RenderThemeEfl, so + use RenderThemeEfl (GCC 4.5 seems to be pickier about this). + http://webkit.org/b/38770 + + * platform/efl/RenderThemeEfl.cpp: + (WebCore::renderThemeEflColorClassSelectionActive): + (WebCore::renderThemeEflColorClassSelectionInactive): + (WebCore::renderThemeEflColorClassFocusRing): + (WebCore::renderThemeEflColorClassButtonText): + (WebCore::renderThemeEflColorClassComboText): + (WebCore::renderThemeEflColorClassEntryText): + (WebCore::renderThemeEflColorClassSearchText): + (WebCore::RenderThemeEfl::adjustCheckboxStyle): + (WebCore::RenderThemeEfl::adjustRadioStyle): + (WebCore::RenderThemeEfl::adjustButtonStyle): + (WebCore::RenderThemeEfl::adjustMenuListStyle): + (WebCore::RenderThemeEfl::adjustTextFieldStyle): + (WebCore::RenderThemeEfl::adjustSearchFieldDecorationStyle): + (WebCore::RenderThemeEfl::adjustSearchFieldResultsButtonStyle): + (WebCore::RenderThemeEfl::adjustSearchFieldResultsDecorationStyle): + (WebCore::RenderThemeEfl::adjustSearchFieldCancelButtonStyle): + (WebCore::RenderThemeEfl::adjustSearchFieldStyle): + +2010-05-08 Leandro Pereira <leandro@profusion.mobi> + + Reviewed by Gustavo Noronha Silva. + + ResourceHandleSoup should depend only on GLib, not on GTK+. + http://webkit.org/b/38763 + + * platform/network/soup/ResourceHandleSoup.cpp: Include glib.h + instead of gtk/gtk.h. + +2010-05-08 Eric Seidel <eric@webkit.org> + + Unreviewed, rolling out r59023. + http://trac.webkit.org/changeset/59023 + https://bugs.webkit.org/show_bug.cgi?id=37874 + + Caused Chromium Windows build to fail to link. + + * WebCore.gypi: + * loader/CachedMetadata.h: Removed. + * loader/CachedResource.cpp: + * loader/CachedResource.h: + * loader/ResourceLoader.h: + * loader/SubresourceLoader.cpp: + * loader/SubresourceLoader.h: + * loader/SubresourceLoaderClient.h: + * loader/loader.cpp: + * loader/loader.h: + * platform/network/ResourceHandle.cpp: + * platform/network/ResourceHandle.h: + * platform/network/ResourceHandleClient.h: + +2010-05-08 Ilya Tikhonovsky <loislo@chromium.org> + + Reviewed by Timothy Hatcher. + + WebInspector: Autocompletion in console is not usable because it is not add to the entered text the common prefix of suggestions. + As example if you entered $0.getE then getElementByClassName will be suggested as gray text. + If you press tab then getElementByClassName be suggested again and lementByClassName becomes selected as black text with selection background. + Really after pressing the TAB the next suggestion should be selected (getElementByTagName) and only flexible part of suggestions should be selected. + In this case it should be TagName because getElementBy is the common part for all getE prefix suggestions. + https://bugs.webkit.org/show_bug.cgi?id=38753 + + * inspector/front-end/TextPrompt.js: + (WebInspector.TextPrompt.prototype._completionsReady): + +2010-05-08 Tony Gentilcore <tonyg@chromium.org> + + Reviewed by Darin Fisher. + + Provide mechanism to store cached metadata on a CachedResource. + https://bugs.webkit.org/show_bug.cgi?id=37874 + + No new tests because no new functionality. + + * WebCore.gypi: + * loader/CachedMetadata.h: Added. + (WebCore::CachedMetadata::~CachedMetadata): + (WebCore::CachedMetadata::data): + (WebCore::CachedMetadata::size): + (WebCore::CachedMetadata::create): + (WebCore::CachedMetadata::deserialize): + (WebCore::CachedMetadata::serialize): + (WebCore::CachedMetadata::dataTypeID): + (WebCore::CachedMetadata::readUnsigned): + (WebCore::CachedMetadata::appendUnsigned): + (WebCore::CachedMetadata::CachedMetadata): + * loader/CachedResource.cpp: + (WebCore::CachedResource::setSerializedCachedMetadata): + (WebCore::CachedResource::setCachedMetadata): + (WebCore::CachedResource::cachedMetadata): + * loader/CachedResource.h: + * loader/ResourceLoader.h: + (WebCore::ResourceLoader::didReceiveCachedMetadata): + * loader/SubresourceLoader.cpp: + (WebCore::SubresourceLoader::didReceiveCachedMetadata): + * loader/SubresourceLoader.h: + * loader/SubresourceLoaderClient.h: + (WebCore::SubresourceLoaderClient::didReceiveCachedMetadata): + * loader/loader.cpp: + (WebCore::Loader::Host::didReceiveCachedMetadata): + * loader/loader.h: + * platform/network/ResourceHandle.cpp: + (WebCore::ResourceHandle::cacheMetadata): + * platform/network/ResourceHandle.h: + * platform/network/ResourceHandleClient.h: + (WebCore::ResourceHandleClient::didReceiveCachedMetadata): + +2010-05-08 Michael Nordman <michaeln@google.com> + + Reviewed by Dmitry Titov. + + Have WorkerScriptLoader provide access to the ResourceResponse for the loaded script + through the WorkerScriptLoaderClient interface. + https://bugs.webkit.org/show_bug.cgi?id=38605 + + No new tests. There are no script visible changes. + + * workers/WorkerScriptLoader.cpp: Call the client with the response. + (WebCore::WorkerScriptLoader::didReceiveResponse): + * workers/WorkerScriptLoaderClient.h: Define a new method to receive the response. + (WebCore::WorkerScriptLoaderClient::didReceiveResponse): + +2010-05-08 Robert Hogan <robert@roberthogan.net> + + Reviewed by Simon Hausmann. + + [Qt] Fix http/tests/xmlhttprequest/cross-origin-no-authorization.html + and http/tests/xmlhttprequest/cross-origin-authorization.html + + QHttpNetworkRequest adds Authorization and Cookie headers to XHRs + without knowing if this is valid behaviour or not. In order to allow + Qt to decide whether Cookie/Authorization headers should be added + to an XHR QtWebKit needs to use an attribute added to QNetworkRequest. + These new attributes are: QNetworkRequest::CookieLoadControlAttribute, + QNetworkRequest::CookieSaveControlAttribute,and + QNetworkRequest::AuthenticationReuseControlAttribute. + + QtWebKit will set QNetworkRequest::AuthenticationReuseControlAttribute to false + unless withCredentials is set to true in the XHR. + + QtWebkit will set CookieLoad/SaveControlAttribute to false unless withCredentials + is set to true in the XHR. + + Qt will pass the values onto QHttpNetworkRequest and this will permit + the Qt network access processing to decide whether or not to add either + or both of the Cookie/Authorisation headers, and whether to save cookies + returned from such requests. By default the attribute + will always be true so unless QtWebKit sets it to false normal + header processing is unaffected. + + The Qt part of these changes was merged at: http://gitorious.org/qt/qt/merge_requests/592 + + https://bugs.webkit.org/show_bug.cgi?id=32967 + + * platform/network/qt/ResourceRequestQt.cpp: + (WebCore::ResourceRequest::toNetworkRequest): + +2010-05-08 Ilya Tikhonovsky <loislo@chromium.org> + + Reviewed by Pavel Feldman. + + WebInsector: Record expand UI element should be extracted from TimelineRecordGraphRow as separate class for future reuse. + https://bugs.webkit.org/show_bug.cgi?id=38726 + + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel): + (WebInspector.TimelinePanel.prototype._refreshRecords): + (WebInspector.TimelineRecordGraphRow): + (WebInspector.TimelineRecordGraphRow.prototype.update): + (WebInspector.TimelineExpandableElement): + (WebInspector.TimelineExpandableElement.prototype._update): + (WebInspector.TimelineExpandableElement.prototype._dispose): + +2010-05-05 Robert Hogan <robert@webkit.org> + + Reviewed by Alexey Proskuryakov. + + [Qt] Fix encoding of status message in Plugin API + + https://bugs.webkit.org/show_bug.cgi?id=35144 + + Spotted by Alexey Proskuryakov. + + * plugins/PluginView.cpp: + (WebCore::PluginView::status): + +2010-05-08 Dirk Schulze <krit@webkit.org> + + Unreviewed win build fix. + + JS bindings were missing in DerivedSources.cpp + + * DerivedSources.cpp: + +2010-05-08 Dirk Schulze <krit@webkit.org> + + Uneviewed fix of Win bot + + Added JS bindings to Win build system. + + * WebCore.vcproj/WebCore.vcproj: + +2010-05-08 Dirk Schulze <krit@webkit.org> + + Unreviewed try to fix Win bot. + + SVGFont's VKern implementation missing + https://bugs.webkit.org/show_bug.cgi?id=38663 + + * bindings/scripts/CodeGeneratorJS.pm: + +2010-05-08 Dirk Schulze <krit@webkit.org> + + Reviewed by Nikolas Zimmermann. + + SVGFont's VKern implementation missing + https://bugs.webkit.org/show_bug.cgi?id=38663 + + Implementation of vkern, needed by SVGFont. Also added DOM and JS bindings + for vkern and hkern. Made some clean-up in SVGParserUtilities and SVGFontElement. + SVGHKernElement and SVGVKernElement share most of the code now. + + Test: svg/text/text-vkern.svg + + * Android.derived.jscbindings.mk: + * Android.derived.v8bindings.mk: + * Android.mk: + * DerivedSources.make: + * GNUmakefile.am: + * WebCore.gyp/WebCore.gyp: + * WebCore.gypi: + * WebCore.pri: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * page/DOMWindow.idl: + * rendering/SVGRootInlineBox.cpp: + (WebCore::applySVGKerning): + (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox): + * svg/SVGAllInOne.cpp: + * svg/SVGFontElement.cpp: + (WebCore::SVGFontElement::invalidateGlyphCache): + (WebCore::SVGFontElement::ensureGlyphCache): + (WebCore::matches): + (WebCore::kerningForPairOfStringsAndGlyphs): + (WebCore::SVGFontElement::horizontalKerningForPairOfStringsAndGlyphs): + (WebCore::SVGFontElement::verticalKerningForPairOfStringsAndGlyphs): + * svg/SVGFontElement.h: + (WebCore::SVGKerningPair::SVGKerningPair): + (WebCore::SVGFontElement::rendererIsNeeded): + * svg/SVGHKernElement.cpp: + (WebCore::SVGHKernElement::buildHorizontalKerningPair): + * svg/SVGHKernElement.h: + * svg/SVGParserUtilities.cpp: + (WebCore::parseGlyphName): + (WebCore::parseKerningUnicodeString): + * svg/SVGParserUtilities.h: + * svg/SVGVKernElement.cpp: Added. + (WebCore::SVGVKernElement::SVGVKernElement): + (WebCore::SVGVKernElement::~SVGVKernElement): + (WebCore::SVGVKernElement::insertedIntoDocument): + (WebCore::SVGVKernElement::removedFromDocument): + (WebCore::SVGVKernElement::buildVerticalKerningPair): + * svg/SVGVKernElement.h: Added. + (WebCore::SVGVKernElement::rendererIsNeeded): + * svg/SVGVKernElement.idl: Added. + * svg/svgtags.in: + +2010-05-08 Jer Noble <jer.noble@apple.com> + + Unreviewed, just fixing windows build. + + * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h: Add #if USE(ACCELERATED_COMPOSITING) guards around GraphicsLayer areas of the code. Include GraphicsLayer.h directly. + * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: As above. + * platform/graphics/win/QTMovieVisualContext.cpp: Remove the #include of d3d9types.h. + +2010-05-08 Eric Seidel <eric@webkit.org> + + Unreviewed, just reverting commit. + + REGRESSION(59000): r59000 contained all sorts of changes it should not have, needs revert. + https://bugs.webkit.org/show_bug.cgi?id=38798 + + Test: fast/js/global-resolve-through-eval.html + + * bindings/js/JSCallbackData.h: + (WebCore::JSCallbackData::JSCallbackData): + (WebCore::JSCallbackData::~JSCallbackData): + (WebCore::DeleteCallbackDataTask::create): + (WebCore::DeleteCallbackDataTask::performTask): + (WebCore::DeleteCallbackDataTask::isCleanupTask): + (WebCore::DeleteCallbackDataTask::DeleteCallbackDataTask): + * bindings/js/JSCustomVoidCallback.cpp: + (WebCore::JSCustomVoidCallback::JSCustomVoidCallback): + (WebCore::JSCustomVoidCallback::~JSCustomVoidCallback): + * bindings/js/JSCustomVoidCallback.h: + * bindings/scripts/CodeGeneratorJS.pm: + * bindings/scripts/test/JS/JSTestInterface.cpp: + (WebCore::): + * bindings/scripts/test/JS/JSTestObj.cpp: + (WebCore::): + * workers/WorkerThread.cpp: + (WebCore::WorkerThreadShutdownFinishTask::performTask): + (WebCore::WorkerThreadShutdownStartTask::performTask): + +2010-05-07 Zoltan Herczeg <zherczeg@webkit.org> + + Reviewed by Dirk Schulze + + Fixed the inverse function of f(x) = ((x + 0.055) / 1.055) ^ 2.4 + https://bugs.webkit.org/show_bug.cgi?id=38735 + + It is ((x ^ (1 / 2.4)) * 1.055) - 0.055 + + Chromium pixel tests cover the issue. + + * platform/graphics/ImageBuffer.cpp: + (WebCore::ImageBuffer::transformColorSpace): + +2010-05-04 Jer Noble <jer.noble@apple.com> + + Reviewed by Eric Carlson + + Safari pegs CPU and drops tons of frames using HTML5 Vimeo player + <https://bugs.webkit.org/show_bug.cgi?id=34005> + <rdar://problem/7569713> + + The original functionality of QTMovieWin has been split between QTMovieGWorld, + and a new class: QTMovie. QTMovie contains all the "controller" parts (changing + the rate, seeking, etc) while QTMovieGWorld retains all the drawing code. QTMovieGWorld + now takes a QTMovie, and as such QTMovie is now retainable. QTMovieGWorld registers + itself as a client of QTMovie, so that it can receive load-state notifications, + and thus QTMovie must now support multiple clients. Movie tasking timer support + has been moved into its own class (QTMovieTask) and will be addressed in a future + patch. Most of the functions listed below only changed so much as their class name changed. + + * platform/graphics/win/QTMovie.cpp: Copied from WebCore/platform/graphics/win/QTMovieWin.cpp. + (QTMoviePrivate::QTMoviePrivate): + (QTMoviePrivate::~QTMoviePrivate): + (QTMoviePrivate::startTask): + (QTMoviePrivate::endTask): + (QTMoviePrivate::task): + (QTMoviePrivate::createMovieController): + (QTMovie::QTMovie): + (QTMovie::~QTMovie): + (QTMovie::addClient): + (QTMovie::removeClient): + (QTMovie::play): + (QTMovie::pause): + (QTMovie::rate): + (QTMovie::setRate): + (QTMovie::duration): + (QTMovie::currentTime): + (QTMovie::setCurrentTime): + (QTMovie::setVolume): + (QTMovie::setPreservesPitch): + (QTMovie::dataSize): + (QTMovie::maxTimeLoaded): + (QTMovie::loadState): + (QTMovie::getNaturalSize): + (QTMovie::load): + (QTMovie::disableUnsupportedTracks): + (QTMovie::isDisabled): + (QTMovie::setDisabled): + (QTMovie::hasVideo): + (QTMovie::hasAudio): + (QTMovie::hasClosedCaptions): + (QTMovie::setClosedCaptionsVisible): + (QTMovie::countSupportedTypes): + (QTMovie::getSupportedType): + (QTMovie::initializeQuickTime): + (QTMovie::getMovieHandle): + * platform/graphics/win/QTMovie.h: Copied from WebCore/platform/graphics/win/QTMovieWin.h. + * platform/graphics/win/QTMovieGWorld.cpp: Copied from WebCore/platform/graphics/win/QTMovieWin.cpp. + (QTMovieGWorldPrivate::QTMovieGWorldPrivate): + (QTMovieGWorldPrivate::~QTMovieGWorldPrivate): + (QTMovieGWorldPrivate::cacheMovieScale): + (movieDrawingCompleteProc): + (QTMovieGWorldPrivate::registerDrawingCallback): + (QTMovieGWorldPrivate::unregisterDrawingCallback): + (QTMovieGWorldPrivate::drawingComplete): + (QTMovieGWorldPrivate::updateGWorld): + (QTMovieGWorldPrivate::createGWorld): + (QTMovieGWorldPrivate::clearGWorld): + (QTMovieGWorldPrivate::setSize): + (QTMovieGWorldPrivate::updateMovieSize): + (QTMovieGWorldPrivate::deleteGWorld): + (QTMovieGWorldPrivate::movieEnded): + (QTMovieGWorldPrivate::movieLoadStateChanged): + (QTMovieGWorldPrivate::movieTimeChanged): + (QTMovieGWorld::QTMovieGWorld): + (QTMovieGWorld::~QTMovieGWorld): + (QTMovieGWorld::setSize): + (QTMovieGWorld::setVisible): + (QTMovieGWorld::getCurrentFrameInfo): + (QTMovieGWorld::paint): + (QTMovieGWorld::setDisabled): + (QTMovieGWorld::isDisabled): + (QTMovieGWorld::fullscreenWndProc): + (QTMovieGWorld::enterFullscreen): + (QTMovieGWorld::exitFullscreen): + (QTMovieGWorld::setMovie): + (QTMovieGWorld::movie): + * platform/graphics/win/QTMovieGWorld.h: Copied from WebCore/platform/graphics/win/QTMovieWin.h. + * platform/graphics/win/QTMovieTask.cpp: Added. + (QTMovieTask::QTMovieTask): + (QTMovieTask::~QTMovieTask): + (QTMovieTask::sharedTask): + (QTMovieTask::updateTaskTimer): + (QTMovieTask::fireTaskClients): + (QTMovieTask::addTaskClient): + (QTMovieTask::removeTaskClient): + (QTMovieTask::setTaskTimerFuncs): + * platform/graphics/win/QTMovieTask.h: Added. + +2010-05-04 Jer Noble <jer.noble@apple.com> + + Reviewed by Eric Carlson + + Safari pegs CPU and drops tons of frames using HTML5 Vimeo player + <https://bugs.webkit.org/show_bug.cgi?id=34005> + <rdar://problem/7569713> + + MediaPlayerPrivateQuickTimeVisualContext has been added as a + supported MediaPlayer implementation. MediaPlayerPrivateQuickTimeWin + has been left as a fallback MediaPlayer implementation for those media + types which do not support visual contexts (currently, none). + + * platform/graphics/MediaPlayer.cpp: + (WebCore::installedMediaEngines): + +2010-05-04 Jer Noble <jer.noble@apple.com> + + Reviewed by Maciej Stachowiak + + Safari pegs CPU and drops tons of frames using HTML5 Vimeo player + <https://bugs.webkit.org/show_bug.cgi?id=34005> + <rdar://problem/7569713> + + MediaPlayerPrivateTaskTimer has been broken out from MediaPlayerPrivateQuickTimeWin::TaskTimer + so that multiple clients can share its implementation. It works with the new + QTMovieTaskTimer to provide timer support to QTMovieTaskTimer clients. + + * platform/graphics/win/MediaPlayerPrivateTaskTimer.cpp: Added. + (WebCore::MediaPlayerPrivateTaskTimer::initialize): + (WebCore::MediaPlayerPrivateTaskTimer::setDelay): + (WebCore::MediaPlayerPrivateTaskTimer::stopTaskTimer): + (WebCore::MediaPlayerPrivateTaskTimer::fired): + * platform/graphics/win/MediaPlayerPrivateTaskTimer.h: Added. + +2010-05-04 Jer Noble <jer.noble@apple.com> + + Reviewed by Eric Carlson + + Safari pegs CPU and drops tons of frames using HTML5 Vimeo player + <https://bugs.webkit.org/show_bug.cgi?id=34005> + <rdar://problem/7569713> + + MediaPlayerPrivateQuickTimeVisualContext is a new MediaPlayerPrivate implementation + which uses QTMovieVisualContext instead of QTMovieWin to render video frames. Much + like MediaPlayerPrivateQuickTimeWin, MPPQTVisualContext breaks out QTMovie and + QTMovieVisualContext, and uses the newly shared MediaPlayerPrivateTaskTimer. It also + uses aggregation (in the form of friend classes) instead of multiple inheritence + to implement its various client callbacks, so as not to expose its own clients to + the QTMovie classes. + + * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp: Copied from WebCore/platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp. + * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h: Copied from WebCore/platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h. + +2010-05-04 Jer Noble <jer.noble@apple.com> + + Reviewed by Maciej Stachowiak + + Safari pegs CPU and drops tons of frames using HTML5 Vimeo player + <https://bugs.webkit.org/show_bug.cgi?id=34005> + <rdar://problem/7569713> + + MediaPlayerPrivateQuickTimeWin has been modified to support the new bifurcated + QTMovie/QTMovieWin classes. It's private TaskTimer class has been broken out + into a new top-level class (MediaPlayerPrivateTaskTimer) which will be addressed + in a future patch. + + * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp: + (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate): + (WebCore::MediaPlayerPrivate::load): + (WebCore::MediaPlayerPrivate::paused): + (WebCore::MediaPlayerPrivate::setSize): + (WebCore::MediaPlayerPrivate::setVisible): + (WebCore::MediaPlayerPrivate::paint): + (WebCore::mimeTypeCache): + (WebCore::MediaPlayerPrivate::isAvailable): + (WebCore::MediaPlayerPrivate::movieEnded): + (WebCore::MediaPlayerPrivate::movieLoadStateChanged): + (WebCore::MediaPlayerPrivate::movieTimeChanged): + (WebCore::MediaPlayerPrivate::movieNewImageAvailable): + (WebCore::MediaPlayerPrivate::paintContents): + * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h: + +2010-05-04 Jer Noble <jer.noble@apple.com> + + Reviewed by Anders Carlsson + + Safari pegs CPU and drops tons of frames using HTML5 Vimeo player + <https://bugs.webkit.org/show_bug.cgi?id=34005> + <rdar://problem/7569713> + + QTCFDictionary defines functions which help serialize and unserialize + CFDictionaries. This is necessary because QuickTime links against a + non-debug CoreFoundation in our debug build, and passing non-debug + CFDictionaries to a debug CF will cause a crash. + + QTMovieTask is a new class containing the tasking functionality broken + out from QTMovieWin. This is necessary now that the tasking + functionality is needed in multiple files/classes. + + QTPixelBuffer is a C++ wrapper for CVPixelBuffers, necessary because + like the CF case above, QuickTime has its own implementation of CoreVideo + and its CV types cannot be used with the AAS version of CoreVideo. + + QTMovieVisualContext is the new drawing implementation, parallel to + QTMovieWin. It currently uses a software rendering path, but can be + extended in the future to support hardware rendering. + + * platform/graphics/win/QTCFDictionary.cpp: Added. + * platform/graphics/win/QTCFDictionary.h: Added. + * platform/graphics/win/QTMovieTask.cpp: Added. + * platform/graphics/win/QTMovieTask.h: Added. + * platform/graphics/win/QTMovieVisualContext.cpp: Added. + * platform/graphics/win/QTMovieVisualContext.h: Added. + * platform/graphics/win/QTPixelBuffer.cpp: Added. + * platform/graphics/win/QTPixelBuffer.h: Added. + +2010-05-07 Eric Uhrhane <ericu@chromium.org> + + Reviewed by Dmitry Titov. + + JSCallbackData is deleted on the Main thread, not the Context thread. + https://bugs.webkit.org/show_bug.cgi?id=38623 + + No new tests; you'll only see a problem after the worker-access-to-DB + code goes in. Without this fix, the GTK bots assert, but it's + timing-sensitive and not truly platform-specific. + + * bindings/js/JSCallbackData.h: + (WebCore::JSCallbackData::JSCallbackData): + (WebCore::JSCallbackData::~JSCallbackData): + Store the allocating thread, then assert that we're on it at deletion. + + (WebCore::DeleteCallbackDataTask): + This is the task that can get posted to the context thread for cleanup. + + * bindings/js/JSCustomVoidCallback.cpp: + * bindings/js/JSCustomVoidCallback.h: + This callback isn't autogenerated, so we have to do the cleanup manually. + + * bindings/scripts/CodeGeneratorJS.pm: + Add the proper cleanup to all autogenerated callbacks. + + * workers/WorkerThread.cpp: + (WebCore::WorkerThreadShutdownFinishTask::performTask): + (WebCore::WorkerThreadShutdownStartTask::performTask): + WorkerContext::clearScript can't be called until the posted deletion tasks have completed; move the call from shutdown start to shutdown finish. + +2010-05-07 Eric Seidel <eric@webkit.org> + + Reviewed by Adam Barth. + + Fix JSC binding generation to match webkit style + https://bugs.webkit.org/show_bug.cgi?id=38173 + + Add spaces around "|" to match webkit style. + + * bindings/scripts/CodeGeneratorJS.pm: + * bindings/scripts/test/JS/JSTestObj.cpp: + +2010-05-07 Dumitru Daniliuc <dumi@chromium.org> + + Reviewed by Brady Eidson. + + Adding the IDL files for the sync DB API and the stubs for the JS and V8 bindings. + https://bugs.webkit.org/show_bug.cgi?id=34994 + + * DerivedSources.cpp: + * DerivedSources.make: + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.pri: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * bindings/js/JSBindingsAllInOne.cpp: + * bindings/js/JSDatabaseSyncCustom.cpp: Added. + (WebCore::JSDatabaseSync::changeVersion): + (WebCore::createTransaction): + (WebCore::JSDatabaseSync::transaction): + (WebCore::JSDatabaseSync::readTransaction): + * bindings/js/JSSQLTransactionSyncCustom.cpp: Added. + (WebCore::JSSQLTransactionSync::executeSql): + * bindings/js/JSWorkerContextCustom.cpp: + (WebCore::JSWorkerContext::openDatabaseSync): + * bindings/v8/custom/V8BindingMacros.h: Added. + * bindings/v8/custom/V8DatabaseSyncCustom.cpp: Added. + (WebCore::V8DatabaseSync::changeVersionCallback): + (WebCore::createTransaction): + (WebCore::V8DatabaseSync::transactionCallback): + (WebCore::V8DatabaseSync::readTransactionCallback): + * bindings/v8/custom/V8SQLTransactionSyncCustom.cpp: Added. + (WebCore::V8SQLTransactionSync::executeSqlCallback): + * bindings/v8/custom/V8WorkerContextCustom.cpp: + (WebCore::V8WorkerContext::openDatabaseSyncCallback): + * storage/Database.idl: + * storage/DatabaseCallback.h: + * storage/DatabaseCallback.idl: + * storage/DatabaseSync.cpp: + (WebCore::DatabaseSync::changeVersion): + (WebCore::DatabaseSync::transaction): + * storage/DatabaseSync.h: + * storage/DatabaseSync.idl: Added. + * storage/SQLError.idl: + * storage/SQLResultSet.idl: + * storage/SQLResultSetRowList.idl: + * storage/SQLTransaction.idl: + * storage/SQLTransactionSync.idl: Added. + * storage/SQLTransactionSyncCallback.h: + * storage/SQLTransactionSyncCallback.idl: Added. + * workers/WorkerContext.cpp: + (WebCore::WorkerContext::openDatabaseSync): + * workers/WorkerContext.h: + * workers/WorkerContext.idl: + +2010-05-07 Beth Dakin <bdakin@apple.com> + + Reviewed by Simon Fraser. + + Fix for <rdar://problem/7956972> REGRESSION: Can't focus and type + in GMail due to bad repainting + -and corresponding- + https://bugs.webkit.org/show_bug.cgi?id=38782 + + This patch reverts back to pre-r58797 behavior when + shouldPropagateCompositingToIFrameParent() is false. + * rendering/RenderLayerBacking.cpp: + (WebCore::RenderLayerBacking::paintingGoesToWindow): + +2010-05-07 Sheriff Bot <webkit.review.bot@gmail.com> + + Unreviewed, rolling out r58963. + http://trac.webkit.org/changeset/58963 + https://bugs.webkit.org/show_bug.cgi?id=38773 + + Broke Chromium layout tests. (Requested by dcheng on #webkit). + + * platform/chromium/DragDataChromium.cpp: + (WebCore::DragData::asURL): + +2010-05-07 Martin Robinson <mrobinson@igalia.com> + + Reviewed by Gustavo Noronha Silva. + + https://bugs.webkit.org/show_bug.cgi?id=38769 + ClipboardGtk should write the URL label in the text portion of the DataObject + + No tests as this code path is currently unused in the GTK+ port. + + * platform/gtk/ClipboardGtk.cpp: + (WebCore::ClipboardGtk::writeURL): Write the label to the text portion of the DataObject, instead of the URL. + +2010-05-07 Nikolas Zimmermann <nzimmermann@rim.com> + + Reviewed by Dirk Schulze. + + RenderSVGResourceClipper assigns a temporary mutated RenderStyle but does not correctly preserve the old style + https://bugs.webkit.org/show_bug.cgi?id=38767 + + Fix small logic error leading to a problem in RenderSVGResourceClipper. It assigns a new temporary RenderStyle + to the target object, but fails to reset it correctly to the old style. Fixes all svg/clip-path errors on the windows bots. + + * rendering/RenderSVGResourceClipper.cpp: + (WebCore::RenderSVGResourceClipper::createClipData): + +2010-05-07 Daniel Cheng <dcheng@chromium.org> + + Reviewed by Jian Li. + + [chromium] DragDataChromium::asURL() shouldn't do file validity checks + https://bugs.webkit.org/show_bug.cgi?id=38711 + + The renderer is sandboxed in Chromium, so these calls will give us no + meaningful information. The loader will do the right thing if we pass + it a file URL that points to an invalid file. + + No new tests. + + * platform/chromium/DragDataChromium.cpp: + (WebCore::DragData::asURL): + +2010-05-07 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Dan Bernstein. + + Fix debug-only render tree output to show object addresses in hex. + + * rendering/RenderTreeAsText.cpp: + (WebCore::writeRenderObject): + (WebCore::write): + +2010-05-07 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Adele Peterson. + + https://bugs.webkit.org/show_bug.cgi?id=38546 + Node.focus() fails to move focus from subframe properly + + Test: fast/frames/take-focus-from-iframe.html + + * html/HTMLFrameElementBase.cpp: (WebCore::HTMLFrameElementBase::setFocus): Don't clear + focus if this frame doesn't have it. This can happen if page's and HTMLFrameElement's ideas + of focused frame get out of sync temporarily. + +2010-05-07 Nikolas Zimmermann <nzimmermann@rim.com> + + Reviewed by Dirk Schulze. + + svg/custom/use-instanceRoot-as-event-target.xhtml crashes randomly + https://bugs.webkit.org/show_bug.cgi?id=37798 + + When creating JSEventListeners through attributes (onclick, etc..) or add/removeEventListener + calls on a SVGElementInstance, do NOT pass the element instance itself as JS wrapper object + but the correspondingElement(). SVGElementInstance redirects all event listener registrations + to the correspondingElement(), as they share an event listener list, per SVG spec. The old + code was very dangerous, leading to random assertions, when garbage collection teared down + the JSSVGElementInstance and event listeners fired, whose listeners were registered with + it, but residing in the correspondingElement() event listener list. + + Removes the need for CustomToJS code for JSSVGElementInstance, which was wrong anyways. We hoped + to keep the event listeers alive by just creating a js wrapper of the correspondingElement(), that + could only work as long as garbage collection didn't tear it down, just luck. Also remove the + CustomPushEventHandlerScope marker, as it is only used for JSLazyEventListeners and only works + for JSNode derived objects, it was a no-op for SVGElementInstance, thus removed it. + + Should fix all random crashes/assertions seen with svg/custom/use-instanceRoot-as-event-target.xhtml + See bug report for a detailed crash analysis. + + * bindings/js/JSSVGElementInstanceCustom.cpp: Remove custom toJS()/pushEventHandlerScope() handling, not necessary anymore. + (WebCore::JSSVGElementInstance::markChildren): + * bindings/scripts/CodeGeneratorJS.pm: For JSSVGElementInstance pass the correspondingElement() as JS wrapper object, not itself. + * svg/SVGElementInstance.cpp: + (WebCore::SVGElementInstance::invalidateAllInstancesOfElement): Be sure to trigger a style update here, so dirty shadow trees for <use> get rebuild. Otherwhise DOM may be out-of-sync. + (WebCore::SVGElementInstance::eventTargetData): Add ASSERT_NOT_REACHED(), all event listener calls are forwarded to the correspondingElement(). + (WebCore::SVGElementInstance::ensureEventTargetData): Ditto. + * svg/SVGElementInstance.idl: Remove CustomToJS, CustomPushEventHandlerScope markers. + +2010-05-06 Kenneth Russell <kbr@google.com> + + Reviewed by Dimitri Glazkov. + + WebCore::WebGLUnsignedIntArrayInternal::getCallback ReadAV@Arbitrary (deef89ee3d0345edebeaf13cf974c47c) + https://bugs.webkit.org/show_bug.cgi?id=38039 + + Web IDL now allows indexed getters and setters to be unnamed. Per + discussion in WebGL working group and recent update to spec, + removed the buggy get() and single-element set() methods from the + JavaScript bindings to the WebGL array types. Refactored set() + implementation in JSC bindings to share more code and modified V8 + binding to look more like it. Added unit tests for indexed getter + with out-of-range indices and verifying removal of get and + single-element set methods. Updated existing WebGL array tests. + + Tests: fast/canvas/webgl/array-get-and-set-method-removal.html + fast/canvas/webgl/array-get-out-of-bounds.html + + * bindings/js/JSWebGLArrayHelper.h: + (WebCore::setWebGLArrayHelper): + * bindings/js/JSWebGLByteArrayCustom.cpp: + (WebCore::JSWebGLByteArray::set): + * bindings/js/JSWebGLFloatArrayCustom.cpp: + (WebCore::JSWebGLFloatArray::set): + * bindings/js/JSWebGLIntArrayCustom.cpp: + (WebCore::JSWebGLIntArray::set): + * bindings/js/JSWebGLShortArrayCustom.cpp: + (WebCore::JSWebGLShortArray::set): + * bindings/js/JSWebGLUnsignedByteArrayCustom.cpp: + (WebCore::JSWebGLUnsignedByteArray::set): + * bindings/js/JSWebGLUnsignedIntArrayCustom.cpp: + (WebCore::JSWebGLUnsignedIntArray::set): + * bindings/js/JSWebGLUnsignedShortArrayCustom.cpp: + (WebCore::JSWebGLUnsignedShortArray::set): + * bindings/v8/custom/V8WebGLArrayCustom.h: + (WebCore::setWebGLArrayHelper): + * bindings/v8/custom/V8WebGLByteArrayCustom.cpp: + (WebCore::V8WebGLByteArray::setCallback): + * bindings/v8/custom/V8WebGLFloatArrayCustom.cpp: + (WebCore::V8WebGLFloatArray::setCallback): + * bindings/v8/custom/V8WebGLIntArrayCustom.cpp: + (WebCore::V8WebGLIntArray::setCallback): + * bindings/v8/custom/V8WebGLShortArrayCustom.cpp: + (WebCore::V8WebGLShortArray::setCallback): + * bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp: + (WebCore::V8WebGLUnsignedByteArray::setCallback): + * bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp: + (WebCore::V8WebGLUnsignedIntArray::setCallback): + * bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp: + (WebCore::V8WebGLUnsignedShortArray::setCallback): + * html/canvas/WebGLByteArray.h: + * html/canvas/WebGLByteArray.idl: + * html/canvas/WebGLFloatArray.h: + * html/canvas/WebGLFloatArray.idl: + * html/canvas/WebGLIntArray.h: + * html/canvas/WebGLIntArray.idl: + * html/canvas/WebGLShortArray.h: + * html/canvas/WebGLShortArray.idl: + * html/canvas/WebGLUnsignedByteArray.h: + * html/canvas/WebGLUnsignedByteArray.idl: + * html/canvas/WebGLUnsignedIntArray.h: + * html/canvas/WebGLUnsignedIntArray.idl: + * html/canvas/WebGLUnsignedShortArray.h: + * html/canvas/WebGLUnsignedShortArray.idl: + 2010-05-07 Pavel Feldman <pfeldman@chromium.org> Not reviewed: chromium dev tools tests fix. |