Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(508)

Unified Diff: WebCore/ChangeLog

Side-by-side diff isn't available for this file because of its large size.
Issue 3552012: Merge 69257 - 2010-10-06 Peter Kasting <pkasting@google.com>... (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/517/
Patch Set: Created 10 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
Download patch
« no previous file with comments | « no previous file | WebCore/platform/ScrollView.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: WebCore/ChangeLog
===================================================================
--- WebCore/ChangeLog (revision 69257)
+++ WebCore/ChangeLog (working copy)
@@ -1,3 +1,1259 @@
+2010-10-06 Peter Kasting <pkasting@google.com>
+
+ Reviewed by James Robinson
+
+ ScrollViews without scrollbars should not eat scroll events
+ https://bugs.webkit.org/show_bug.cgi?id=47036
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::wheelEvent):
+
+2010-10-06 Daniel Bates <dbates@rim.com>
+
+ Reviewed by Darin Adler.
+
+ ASSERTION FAILURE: Attempt to cast RenderObject to RenderFrameSet
+ when <frameset> has CSS content property
+ https://bugs.webkit.org/show_bug.cgi?id=47314
+
+ Fixes an issue where sending a mouse event to an HTML Frameset Element that
+ whose content was replaced via the CSS content property causes an assertion
+ failure.
+
+ By default, HTMLFrameSetElement forwards mouse events to RenderFrameSet so as
+ to support resizing a frame within the set. When a <frameset> specifies an
+ image in its CSS content property we create a generic render object (RenderObject)
+ for the frame set instead of a RenderFrameSet object. The event handler code
+ in HTMLFrameSetElement calls WebCore::toRenderFrameSet() to cast its renderer
+ to type RenderFrameSet, which fails. To correct this, HTMLFrameSetElement
+ must check that its renderer is of type RenderFrameSet before casting to this type.
+
+ Test: fast/frames/crash-frameset-CSS-content-property.html
+
+ * html/HTMLFrameSetElement.cpp:
+ (WebCore::HTMLFrameSetElement::defaultEventHandler): Check that our renderer is
+ of type RenderFrameSet before casting it as such.
+
+2010-10-06 Albert J. Wong <ajwong@chromium.org>
+
+ Reviewed by Andreas Kling.
+
+ r69181 breaks compilation of WebCore/platform/graphics/filters/FETile.cpp if ENABLE(SVG) is false.
+ https://bugs.webkit.org/show_bug.cgi?id=47315
+
+ Compile fix. No tests.
+
+ * platform/graphics/filters/FETile.cpp:
+ (WebCore::FETile::apply):
+
+2010-10-06 Kinuko Yasuda <kinuko@chromium.org>
+
+ Unreviewed, fixing screwed up ChangeLogs.
+
+2010-10-06 Kinuko Yasuda <kinuko@chromium.org>
+
+ Reviewed by David Levin.
+
+ Add FileSystemSync implementation for Worker
+ https://bugs.webkit.org/show_bug.cgi?id=47044
+
+ Tests: fast/filesystem/async-operations.html
+ fast/filesystem/workers/async-operations.html
+ fast/filesystem/workers/sync-operations.html
+
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/generic/RuntimeEnabledFeatures.h: Removed
+ requestFileSystemEnabled() as I changed the idl/generator to
+ use fileSystemEnabled for all the FileSystem related features.
+ * fileapi/DOMFileSystem.cpp:
+ * fileapi/DOMFileSystem.h:
+ * fileapi/DOMFileSystemBase.cpp:
+ (WebCore::DOMFileSystemBase::getMetadata): Moved from DOMFileSystem.
+ (WebCore::checkValidityForForCopyOrMove): Moved from DOMFileSystem.
+ (WebCore::DOMFileSystemBase::move): Moved from DOMFileSystem.
+ (WebCore::DOMFileSystemBase::copy): Moved from DOMFileSystem.
+ (WebCore::DOMFileSystemBase::remove): Moved from DOMFileSystem.
+ (WebCore::DOMFileSystemBase::getParent): Moved from DOMFileSystem.
+ (WebCore::DOMFileSystemBase::getFile): Moved from DOMFileSystem.
+ (WebCore::DOMFileSystemBase::getDirectory): Moved from DOMFileSystem.
+ (WebCore::DOMFileSystemBase::readDirectory): Moved from DOMFileSystem.
+ * fileapi/DOMFileSystemBase.h:
+ * fileapi/DOMFileSystemSync.h:
+ * fileapi/DirectoryEntry.cpp:
+ (WebCore::DirectoryEntry::DirectoryEntry): Updated to call
+ DOMFileSystemBase's method instead of DOMFileSystem's one.
+ (WebCore::DirectoryEntry::getFile): Ditto.
+ (WebCore::DirectoryEntry::getDirectory): Ditto.
+ * fileapi/DirectoryEntry.h:
+ * fileapi/DirectoryEntrySync.cpp:
+ (WebCore::DirectoryEntrySync::getFile): Implemented.
+ (WebCore::DirectoryEntrySync::getDirectory): Implemented.
+ * fileapi/DirectoryReader.h:
+ * fileapi/DirectoryReaderSync.cpp:
+ (WebCore::DirectoryReaderSync::readEntries): Implemented.
+ * fileapi/Entry.cpp:
+ (WebCore::Entry::Entry): Updated to call DOMFileSystemBase's method.
+ (WebCore::Entry::getMetadata): Ditto.
+ (WebCore::Entry::moveTo): Ditto.
+ (WebCore::Entry::copyTo): Ditto.
+ (WebCore::Entry::remove): Ditto.
+ (WebCore::Entry::getParent): Ditto.
+ * fileapi/Entry.h:
+ * fileapi/Entry.idl:
+ * fileapi/EntryArraySync.cpp:
+ (WebCore::EntryArraySync::create): Added.
+ * fileapi/EntryArraySync.h:
+ * fileapi/EntryBase.h:
+ (WebCore::EntryBase::filesystem): Added.
+ * fileapi/EntrySync.cpp:
+ (WebCore::EntrySync::create): Implemented.
+ (WebCore::EntrySync::getMetadata): Implemented.
+ (WebCore::EntrySync::moveTo): Implemented.
+ (WebCore::EntrySync::copyTo): Implemented.
+ (WebCore::EntrySync::remove): Implemented.
+ * fileapi/EntrySync.h:
+ * fileapi/FileEntry.cpp:
+ * fileapi/FileEntry.h:
+ * fileapi/FileSystemCallbacks.cpp:
+ (WebCore::EntryCallbacks::create): Updated to take DOMFileSystemBase
+ instead of DOMFileSystem.
+ (WebCore::EntryCallbacks::EntryCallbacks): Ditto.
+ (WebCore::EntriesCallbacks::create): Ditto.
+ (WebCore::EntriesCallbacks::EntriesCallbacks): Ditto.
+ * fileapi/FileSystemCallbacks.h:
+ * fileapi/LocalFileSystem.cpp:
+ (WebCore::LocalFileSystem::requestFileSystem): Added synchronous
+ parameter.
+ * fileapi/LocalFileSystem.h:
+ * fileapi/Metadata.h:
+ * fileapi/SyncCallbackHelper.h: Added. This defines a helper template
+ for synchronous implementation.
+ * page/DOMWindow.idl:
+ * platform/AsyncFileSystem.h:
+ (WebCore::AsyncFileSystem::waitCompletion): Added.
+ * workers/WorkerContext.cpp:
+ (WebCore::WorkerContext::requestFileSystemSync): Added.
+ * workers/WorkerContext.h:
+ * workers/WorkerContext.idl:
+
+2010-10-06 Andrei Popescu <andreip@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ IDBDatabase and IDBObjectStore metadata is not recovered correctly when the setVersion transactions aborts.
+ https://bugs.webkit.org/show_bug.cgi?id=47245
+
+ Recover metadata properly by adding abort tasks that
+ are run when a transaction aborts.
+
+ * storage/IDBDatabase.cpp:
+ (WebCore::IDBDatabase::createObjectStore):
+ (WebCore::IDBDatabase::removeObjectStore):
+ * storage/IDBDatabaseBackendImpl.cpp:
+ (WebCore::IDBDatabaseBackendImpl::createObjectStore):
+ (WebCore::IDBDatabaseBackendImpl::removeObjectStore):
+ (WebCore::IDBDatabaseBackendImpl::setVersion):
+ (WebCore::IDBDatabaseBackendImpl::removeObjectStoreFromMap):
+ (WebCore::IDBDatabaseBackendImpl::addObjectStoreToMap):
+ (WebCore::IDBDatabaseBackendImpl::resetVersion):
+ * storage/IDBDatabaseBackendImpl.h:
+ * storage/IDBObjectStoreBackendImpl.cpp:
+ (WebCore::IDBObjectStoreBackendImpl::createIndex):
+ (WebCore::IDBObjectStoreBackendImpl::removeIndex):
+ (WebCore::IDBObjectStoreBackendImpl::removeIndexFromMap):
+ (WebCore::IDBObjectStoreBackendImpl::addIndexToMap):
+ * storage/IDBObjectStoreBackendImpl.h:
+ * storage/IDBTransactionBackendImpl.cpp:
+ (WebCore::IDBTransactionBackendImpl::scheduleTask):
+ (WebCore::IDBTransactionBackendImpl::abort):
+ * storage/IDBTransactionBackendImpl.h:
+ * storage/IDBTransactionBackendInterface.h:
+ * storage/IDBTransactionCoordinator.h:
+
+2010-10-06 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47306
+
+ Convert determineStart/EndPosition and matchedEndLine to be writing-mode-aware.
+
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::determineStartPosition):
+ (WebCore::RenderBlock::determineEndPosition):
+ (WebCore::RenderBlock::matchedEndLine):
+
+22010-10-06 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ REGRESSION (r53857): AREA tag with tabindex="-1" displays focus ring after multiple mouse clicks.
+ https://bugs.webkit.org/show_bug.cgi?id=45832
+
+ Test: fast/events/mouse-focus-imagemap.html
+
+ * html/HTMLAreaElement.cpp:
+ (WebCore::HTMLAreaElement::isKeyboardFocusable):
+ (WebCore::HTMLAreaElement::isMouseFocusable):
+ (WebCore::HTMLAreaElement::isFocusable):
+ (WebCore::HTMLAreaElement::updateFocusAppearance):
+ * html/HTMLAreaElement.h:
+
+010-10-06 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47303
+
+ Convert layoutInlineChildren to be block-flow-aware. None of the functions it calls are patched yet.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlock):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::forceLayoutInlineChildren):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::layoutInlineChildren):
+ (WebCore::RenderBlock::beforeSideVisibleOverflowForLine):
+ (WebCore::RenderBlock::afterSideVisibleOverflowForLine):
+ (WebCore::RenderBlock::beforeSideLayoutOverflowForLine):
+ (WebCore::RenderBlock::afterSideLayoutOverflowForLine):
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::logicalLeftLayoutOverflow):
+ (WebCore::RenderBox::logicalRightLayoutOverflow):
+ (WebCore::RenderBox::logicalLeftVisualOverflow):
+ (WebCore::RenderBox::logicalRightVisualOverflow):
+
+2010-10-06 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47298
+
+ Rename blockHeight to blockLogicalHeight.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::markLinesDirtyInBlockRange):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::computeBlockDirectionPositionsForLine):
+ (WebCore::RenderBlock::layoutInlineChildren):
+ (WebCore::RenderBlock::determineStartPosition):
+ (WebCore::RenderBlock::determineEndPosition):
+ (WebCore::RenderBlock::matchedEndLine):
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::RootInlineBox):
+ (WebCore::RootInlineBox::adjustPosition):
+ * rendering/RootInlineBox.h:
+ (WebCore::RootInlineBox::blockLogicalHeight):
+ (WebCore::RootInlineBox::setBlockLogicalHeight):
+ * rendering/svg/SVGRootInlineBox.cpp:
+ (WebCore::SVGRootInlineBox::layoutRootBox):
+
+2010-10-05 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] DRT assertion w/accel 2D canvas in PlatformContextSkia
+ https://bugs.webkit.org/show_bug.cgi?id=47242
+
+ Call PlatformContextSkia::prepareForSoftwareDraw before doing putImageData
+ since that call mutates the software backing store.
+
+ Test: fast/canvas/canvas-putImageData.html
+
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::ImageBuffer::putUnmultipliedImageData):
+
+2010-10-06 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Brady Eidson.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47294
+ <rdar://problem/8425647>Application cache isn't consulted on redirect
+
+ Test: http/tests/appcache/main-resource-redirect.html
+
+ * loader/MainResourceLoader.cpp:
+ (WebCore::MainResourceLoader::continueAfterNavigationPolicy): If we have substitute data now
+ (presumably after a redirect is served by appcache), switch to it.
+ (WebCore::MainResourceLoader::willSendRequest): Check appcache for the new URL.
+
+ * loader/MainResourceLoader.h: Made handleDataLoadSoon() take a const ResourceRequest
+ reference - it doesn't ever modify it, and we can call it from continueAfterNavigationPolicy() now.
+
+2010-10-06 Alejandro G. Castro <alex@igalia.com>
+
+ Reviewed by Dirk Schulze.
+
+ ContextShadow should not use the blur radius as kernel size of the
+ box blurs
+ https://bugs.webkit.org/show_bug.cgi?id=46918
+
+ Calculate the size of the kernel in the blur algorithm using the radius instead
+ of using the blur distance directly. Change the name of the variables to match the
+ terminology in the spec.
+
+ * platform/graphics/ContextShadow.cpp:
+ (WebCore::ContextShadow::ContextShadow):
+ (WebCore::ContextShadow::clear):
+ (WebCore::ContextShadow::blurLayerImage):
+ (WebCore::ContextShadow::calculateLayerBoundingRect):
+ * platform/graphics/ContextShadow.h:
+
+2010-10-06 Andras Becsi <abecsi@webkit.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Correct CamelCase of socketSentdata() in SocketStreamHandlePrivate
+ to fix "QMetaObject::invokeMethod: No such method" warnings in layout tests.
+ https://bugs.webkit.org/show_bug.cgi?id=47284
+
+ No new tests needed.
+
+ * platform/network/qt/SocketStreamHandlePrivate.h:
+ * platform/network/qt/SocketStreamHandleQt.cpp:
+ (WebCore::SocketStreamHandlePrivate::socketSentData):
+
+2010-10-06 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47285
+
+ Update to the latest writing-mode draft. The block-flow property is gone and has been replaced with writing-mode.
+ Change all the code to use writingMode() instead of blockFlow() and rename all functions that referred to block flow
+ as appropriate.
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ * css/CSSPrimitiveValueMappings.h:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ (WebCore::CSSPrimitiveValue::operator WritingMode):
+ (WebCore::CSSPrimitiveValue::operator SVGWritingMode):
+ * css/CSSProperty.cpp:
+ (WebCore::resolveToPhysicalProperty):
+ (WebCore::CSSProperty::resolveDirectionAwareProperty):
+ * css/CSSProperty.h:
+ * css/CSSPropertyNames.in:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::styleForDocument):
+ (WebCore::CSSStyleSelector::adjustRenderStyle):
+ (WebCore::CSSStyleSelector::applyDeclarations):
+ (WebCore::CSSStyleSelector::applyProperty):
+ * css/CSSValueKeywords.in:
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::MarginInfo::MarginInfo):
+ (WebCore::RenderBlock::expandsToEncloseOverhangingFloats):
+ (WebCore::RenderBlock::setLogicalLeftForChild):
+ (WebCore::RenderBlock::setLogicalTopForChild):
+ (WebCore::RenderBlock::layoutBlockChild):
+ (WebCore::RenderBlock::insertFloatingObject):
+ (WebCore::RenderBlock::addOverhangingFloats):
+ (WebCore::RenderBlock::addIntrudingFloats):
+ (WebCore::RenderBlock::collapsedMarginBeforeForChild):
+ (WebCore::RenderBlock::collapsedMarginAfterForChild):
+ (WebCore::RenderBlock::marginBeforeForChild):
+ (WebCore::RenderBlock::marginAfterForChild):
+ (WebCore::RenderBlock::marginStartForChild):
+ (WebCore::RenderBlock::marginEndForChild):
+ (WebCore::RenderBlock::setMarginStartForChild):
+ (WebCore::RenderBlock::setMarginEndForChild):
+ (WebCore::RenderBlock::setMarginBeforeForChild):
+ (WebCore::RenderBlock::setMarginAfterForChild):
+ (WebCore::RenderBlock::marginValuesForChild):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::logicalWidthForChild):
+ (WebCore::RenderBlock::logicalHeightForChild):
+ (WebCore::RenderBlock::logicalTopForChild):
+ (WebCore::RenderBlock::logicalRightOffsetForContent):
+ (WebCore::RenderBlock::logicalLeftOffsetForContent):
+ (WebCore::RenderBlock::logicalTopForFloat):
+ (WebCore::RenderBlock::logicalBottomForFloat):
+ (WebCore::RenderBlock::logicalLeftForFloat):
+ (WebCore::RenderBlock::logicalRightForFloat):
+ (WebCore::RenderBlock::logicalWidthForFloat):
+ (WebCore::RenderBlock::setLogicalTopForFloat):
+ (WebCore::RenderBlock::setLogicalLeftForFloat):
+ (WebCore::RenderBlock::setLogicalHeightForFloat):
+ (WebCore::RenderBlock::setLogicalWidthForFloat):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::marginBefore):
+ (WebCore::RenderBox::marginAfter):
+ (WebCore::RenderBox::marginStart):
+ (WebCore::RenderBox::marginEnd):
+ (WebCore::RenderBox::setMarginStart):
+ (WebCore::RenderBox::setMarginEnd):
+ (WebCore::RenderBox::setMarginBefore):
+ (WebCore::RenderBox::setMarginAfter):
+ (WebCore::RenderBox::styleDidChange):
+ (WebCore::RenderBox::perpendicularContainingBlockLogicalHeight):
+ (WebCore::RenderBox::computeLogicalWidth):
+ (WebCore::RenderBox::computeLogicalHeight):
+ (WebCore::RenderBox::availableLogicalHeightUsing):
+ (WebCore::RenderBox::avoidsFloats):
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::logicalLeft):
+ (WebCore::RenderBox::logicalTop):
+ (WebCore::RenderBox::logicalWidth):
+ (WebCore::RenderBox::logicalHeight):
+ (WebCore::RenderBox::setLogicalLeft):
+ (WebCore::RenderBox::setLogicalTop):
+ (WebCore::RenderBox::setLogicalWidth):
+ (WebCore::RenderBox::setLogicalHeight):
+ (WebCore::RenderBox::setLogicalLocation):
+ (WebCore::RenderBox::contentLogicalWidth):
+ (WebCore::RenderBox::contentLogicalHeight):
+ (WebCore::RenderBox::stretchesToViewport):
+ (WebCore::RenderBox::intrinsicLogicalWidth):
+ (WebCore::RenderBox::intrinsicLogicalHeight):
+ (WebCore::RenderBox::availableWidth):
+ (WebCore::RenderBox::availableHeight):
+ (WebCore::RenderBox::scrollbarLogicalHeight):
+ (WebCore::RenderBox::isWritingModeRoot):
+ * rendering/RenderFieldset.cpp:
+ (WebCore::RenderFieldset::paintBoxDecorations):
+ (WebCore::RenderFieldset::paintMask):
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::computeReplacedLogicalWidth):
+ (WebCore::RenderImage::computeReplacedLogicalHeight):
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::marginLeft):
+ (WebCore::RenderInline::marginRight):
+ (WebCore::RenderInline::marginTop):
+ (WebCore::RenderInline::marginBottom):
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::paddingTop):
+ (WebCore::RenderTableCell::paddingBottom):
+ (WebCore::RenderTableCell::paddingLeft):
+ (WebCore::RenderTableCell::paddingRight):
+ * rendering/RenderView.h:
+ (WebCore::RenderView::viewLogicalWidth):
+ (WebCore::RenderView::viewLogicalHeight):
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::RootInlineBox):
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::diff):
+ (WebCore::RenderStyle::logicalWidth):
+ (WebCore::RenderStyle::logicalHeight):
+ (WebCore::RenderStyle::logicalMinWidth):
+ (WebCore::RenderStyle::logicalMaxWidth):
+ (WebCore::RenderStyle::logicalMinHeight):
+ (WebCore::RenderStyle::logicalMaxHeight):
+ (WebCore::RenderStyle::borderBeforeWidth):
+ (WebCore::RenderStyle::borderAfterWidth):
+ (WebCore::RenderStyle::borderStartWidth):
+ (WebCore::RenderStyle::borderEndWidth):
+ (WebCore::RenderStyle::marginBefore):
+ (WebCore::RenderStyle::marginAfter):
+ (WebCore::RenderStyle::marginBeforeUsing):
+ (WebCore::RenderStyle::marginAfterUsing):
+ (WebCore::RenderStyle::marginStart):
+ (WebCore::RenderStyle::marginEnd):
+ (WebCore::RenderStyle::marginStartUsing):
+ (WebCore::RenderStyle::marginEndUsing):
+ (WebCore::RenderStyle::paddingBefore):
+ (WebCore::RenderStyle::paddingAfter):
+ (WebCore::RenderStyle::paddingStart):
+ (WebCore::RenderStyle::paddingEnd):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::setBitDefaults):
+ (WebCore::InheritedFlags::writingMode):
+ (WebCore::InheritedFlags::isHorizontalWritingMode):
+ (WebCore::InheritedFlags::setWritingMode):
+ (WebCore::InheritedFlags::initialWritingMode):
+ * rendering/style/RenderStyleConstants.h:
+ * rendering/style/SVGRenderStyle.h:
+ (WebCore::SVGRenderStyle::initialWritingMode):
+ (WebCore::SVGRenderStyle::setWritingMode):
+ (WebCore::SVGRenderStyle::writingMode):
+ * rendering/style/SVGRenderStyleDefs.h:
+
+2010-10-06 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r69201.
+ http://trac.webkit.org/changeset/69201
+ https://bugs.webkit.org/show_bug.cgi?id=47279
+
+ This change broke the WebKitGTK+ build for GTK+ 2.0.
+ (Requested by mrobinson on #webkit).
+
+ * platform/gtk/GtkVersioning.c:
+ (getDefaultGDKPointerDevice):
+ * platform/gtk/GtkVersioning.h:
+ * platform/gtk/PlatformScreenGtk.cpp:
+ (WebCore::getVisual):
+ (WebCore::screenAvailableRect):
+
+2010-10-06 Stephen White <senorblanco@chromium.org>
+
+ Reviewed by James Robinson.
+ https://bugs.webkit.org/show_bug.cgi?id=47282
+
+ Robustify the creation of SharedGraphicsContext3D against shader
+ compilation failures.
+
+ Covered by any canvas 2D layout test, when opened in chrome with
+ --enable-accelerated-2d-canvas --in-process-webgl.
+
+ * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
+ (WebCore::SharedGraphicsContext3D::create):
+ (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
+ * platform/graphics/gpu/SharedGraphicsContext3D.h:
+
+2010-10-06 Luiz Agostini <luiz.agostini@openbossa.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Renaming WebCore::ViewportConfiguration to WebCore::ViewportAttributes
+ https://bugs.webkit.org/show_bug.cgi?id=47268
+
+ Renaming WebCore::ViewportConfiguration to WebCore::ViewportAttributes
+
+ * dom/ViewportArguments.cpp:
+ (WebCore::findConfigurationForViewportData):
+ * dom/ViewportArguments.h:
+
+2010-10-06 Renata Hodovan <reni@inf.u-szeged.hu>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVGFEMergeNodeElement doesn't support dynamic invalidation, when attributes change.
+ https://bugs.webkit.org/show_bug.cgi?id=47181
+
+ Since feMergeNode doesn't have own renderer, we have to call the invalidation via its parent.
+
+ Tests: svg/dynamic-updates/SVGFEMergeNodeElement-dom-in-attr.html
+ svg/dynamic-updates/SVGFEMergeNodeElement-svgdom-in-prop.html
+
+ * svg/SVGFEMergeNodeElement.cpp:
+ (WebCore::SVGFEMergeNodeElement::svgAttributeChanged):
+ * svg/SVGFEMergeNodeElement.h:
+
+2010-10-06 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Remove unused code from gtk2drawing.c
+ https://bugs.webkit.org/show_bug.cgi?id=47086
+
+ gtk2drawing.c was copied from mozilla and contains a lot of code that is not
+ used by WebKit. Most of that unused code is uncompatible with gtk3, so
+ removing it will make easier porting to gtk3.
+
+ * platform/gtk/gtk2drawing.c:
+ (moz_gtk_get_widget_border):
+ (moz_gtk_widget_paint):
+ (moz_gtk_destroy_theme_parts_widgets):
+ * platform/gtk/gtkdrawing.h:
+
+2010-10-06 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Use pixbufs instead of pixmaps when creating platform cursors
+ https://bugs.webkit.org/show_bug.cgi?id=47087
+
+ gdk_cursor_new_from_pixmap() has been removed in gtk3. We can use a
+ pixbuf instead of a pixman and use gdk_cursor_new_from_pixbuf() instead
+ for both gtk2 and gtk3.
+
+ * platform/gtk/CursorGtk.cpp:
+ (WebCore::createNamedCursor):
+ * platform/gtk/GtkVersioning.c:
+ (gdk_cairo_format_for_content):
+ (gdk_cairo_surface_coerce_to_image):
+ (convert_alpha):
+ (convert_no_alpha):
+ (gdk_pixbuf_get_from_surface):
+ * platform/gtk/GtkVersioning.h:
+
+2010-10-06 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: add event listener breakpoints sidebar pane
+ https://bugs.webkit.org/show_bug.cgi?id=46738
+
+ * inspector/front-end/BreakpointManager.js:
+ (WebInspector.BreakpointManager.prototype.createEventListenerBreakpoint):
+ (WebInspector.BreakpointManager.prototype.createXHRBreakpoint.breakpoint.compareTo):
+ (WebInspector.BreakpointManager.prototype.createXHRBreakpoint):
+ (WebInspector.NativeBreakpoint):
+ (WebInspector.NativeBreakpoint.prototype._setOnBackend.didSet):
+ (WebInspector.NativeBreakpoint.prototype._setOnBackend):
+ * inspector/front-end/BreakpointsSidebarPane.js:
+ (WebInspector.XHRBreakpointsSidebarPane.prototype._showEditBreakpointDialog):
+ (WebInspector.BreakpointItem):
+ (WebInspector.EventListenerBreakpointsSidebarPane):
+ (WebInspector.EventListenerBreakpointsSidebarPane.prototype._populate):
+ (WebInspector.EventListenerBreakpointsSidebarPane.prototype._createCheckbox):
+ (WebInspector.EventListenerBreakpointsSidebarPane.prototype._categoryCheckboxClicked):
+ (WebInspector.EventListenerBreakpointsSidebarPane.prototype._eventNameCheckboxClicked):
+ (WebInspector.EventListenerBreakpointsSidebarPane.prototype._breakpointEnableChanged):
+ (WebInspector.EventListenerBreakpointsSidebarPane.prototype._updateCategoryCheckbox):
+ (WebInspector.EventListenerBreakpointsSidebarPane.prototype.reset):
+ * inspector/front-end/EventListenersSidebarPane.js:
+ ():
+ * inspector/front-end/PropertiesSection.js:
+ (WebInspector.PropertiesSection):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel):
+ (WebInspector.ScriptsPanel.prototype.reset):
+ * inspector/front-end/inspector.css:
+ (.section .properties, .event-bar .event-properties):
+ (.section.expanded .properties, .event-bar.expanded .event-properties):
+ (ol.properties-tree):
+ (ol.properties-tree li):
+ (ol.properties-tree li.parent):
+ (ol.properties-tree li.parent::before):
+ (ol.properties-tree li.parent.expanded::before):
+ (ol.properties-tree li .info):
+ (ol.properties-tree ol, .stack-trace ol, ol.stack-trace):
+ (ol.properties-tree ol.expanded, .stack-trace ol, ol.stack-trace):
+ (ol.stack-trace):
+ (.event-listener-breakpoints .event-category):
+ (ol.event-listener-breakpoints.properties-tree .children li):
+ (.event-listener-breakpoints .checkbox-elem):
+ * inspector/front-end/inspector.js:
+ (WebInspector.createXHRBreakpointsSidebarPane.breakpointAdded):
+ (WebInspector.createXHRBreakpointsSidebarPane):
+
+2010-10-06 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Port to gtk+3 (2.91.0)
+ https://bugs.webkit.org/show_bug.cgi?id=47249
+
+ Do not use GdkDrawable deprecated API
+
+ Some methods of GdkDrawable are deprecated in gtk2 and have been
+ remmoved in gtk3. Equivalent API has been added to GdkWindow.
+
+ * platform/gtk/GtkVersioning.c:
+ (getDefaultGDKPointerDevice):
+ * platform/gtk/GtkVersioning.h:
+ * platform/gtk/PlatformScreenGtk.cpp:
+ (WebCore::getVisual):
+ (WebCore::screenAvailableRect):
+
+2010-10-06 Ryuan Choi <ryuan.choi@samsung.com>
+
+ Reviewed by Antonio Gomes.
+
+ [EFL] Support Progress Tag
+ https://bugs.webkit.org/show_bug.cgi?id=45951
+
+ Implement to render progress tag.
+
+ No new tests. Existing tests in fast/dom/HTMLProgressElement.
+
+ * platform/efl/RenderThemeEfl.cpp:
+ (WebCore::RenderThemeEfl::paintThemePart):
+ (WebCore::RenderThemeEfl::edjeGroupFromFormType):
+ (WebCore::RenderThemeEfl::adjustProgressBarStyle):
+ (WebCore::RenderThemeEfl::paintProgressBar):
+ * platform/efl/RenderThemeEfl.h:
+
+2010-10-06 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Add KURL::protocolIsData()
+ https://bugs.webkit.org/show_bug.cgi?id=47219
+
+ * page/Page.cpp:
+ (WebCore::Page::userStyleSheetLocationChanged):
+ * page/SecurityOrigin.cpp:
+ (WebCore::SecurityOrigin::taintsCanvas):
+ * page/XSSAuditor.cpp:
+ (WebCore::XSSAuditor::findInRequest):
+ * platform/KURL.h:
+ (WebCore::KURL::protocolIsData):
+ * platform/network/curl/ResourceHandleManager.cpp:
+ (WebCore::ResourceHandleManager::dispatchSynchronousJob):
+ (WebCore::ResourceHandleManager::startJob):
+ * platform/network/win/ResourceHandleWin.cpp:
+ (WebCore::ResourceHandle::start):
+ (WebCore::ResourceHandle::fileLoadTimer):
+
+2010-10-06 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ CSSParser: Enable rule selector source range extraction.
+ API modification followed by clients.
+ https://bugs.webkit.org/show_bug.cgi?id=46367
+
+ Some code removal suggested by Darin Adler.
+
+ * css/CSSGrammar.y:
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::CSSParser):
+ (WebCore::CSSParser::parseSheet):
+ (WebCore::CSSParser::parseDeclaration):
+ (WebCore::CSSParser::createStyleRule):
+ (WebCore::CSSParser::markSelectorListStart):
+ (WebCore::CSSParser::markSelectorListEnd):
+ (WebCore::CSSParser::markRuleBodyStart):
+ (WebCore::CSSParser::markRuleBodyEnd):
+ (WebCore::CSSParser::markPropertyStart):
+ (WebCore::CSSParser::markPropertyEnd):
+ * css/CSSParser.h:
+ (WebCore::CSSParser::resetSelectorListMarks):
+ (WebCore::CSSParser::resetRuleBodyMarks):
+ (WebCore::CSSParser::resetPropertyMarks):
+ * css/CSSPropertySourceData.cpp:
+ * css/CSSPropertySourceData.h:
+ (WebCore::CSSRuleSourceData::create):
+ * inspector/InspectorCSSStore.cpp:
+ (WebCore::InspectorCSSStore::getRuleSourceData):
+ (WebCore::InspectorCSSStore::extractRanges):
+ (WebCore::InspectorCSSStore::getStyleAttributeRanges):
+ * inspector/InspectorCSSStore.h:
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::getStyleSourceData):
+
+2010-10-06 Dirk Schulze <krit@webkit.org>
+
+ Added reviewer to commit r69187.
+
+2010-10-06 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVG feMorphology - big radii cause huge ImageBuffer sizes
+ https://bugs.webkit.org/show_bug.cgi?id=47263
+
+ The current code in FEMorphology::determineAbsolutePaintRect calculates the smallest paint rect by inflate the paint rect
+ of a previous effect with the radius. This was meant as an optimization, but I forgot to clip the calculated image size
+ by the maximal effect size. This caused huge image sizes for big radii.
+
+ This is covered by svg/filters/feMorphology-invalid-radius.svg and fixes the crashes on Windows and Snow Leopard bots.
+
+ * platform/graphics/filters/FEMorphology.cpp:
+ (WebCore::FEMorphology::determineAbsolutePaintRect):
+
+2010-10-06 Alejandro G. Castro <alex@igalia.com>
+
+ Reviewed by Dirk Schulze.
+
+ Fixed crash in gtk bots (filter-empty-g.svg) after r69181.
+
+ * rendering/RenderSVGResourceFilter.cpp:
+ (WebCore::RenderSVGResourceFilter::postApplyResource):
+
+2010-10-06 Antonio Gomes <agomes@rim.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Rename HitTestResult::rectFromPoint to rectForPoint
+ https://bugs.webkit.org/show_bug.cgi?id=47261
+
+ As per Kenneth Christiansen request inhttps://bugs.webkit.org/show_bug.cgi?id=46336#c20.
+
+ * WebCore.exp.in:
+ * dom/Document.cpp:
+ (WebCore::Document::nodesFromRect):
+ * rendering/EllipsisBox.cpp:
+ (WebCore::EllipsisBox::nodeAtPoint):
+ * rendering/HitTestResult.cpp:
+ (WebCore::HitTestResult::addNodeToRectBasedTestResult):
+ (WebCore::HitTestResult::rectForPoint):
+ * rendering/HitTestResult.h:
+ (WebCore::HitTestResult::rectForPoint):
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::nodeAtPoint):
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::nodeAtPoint):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::nodeAtPoint):
+ (WebCore::RenderBlock::hitTestColumns):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::nodeAtPoint):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::hitTestLayer):
+ (WebCore::RenderLayer::hitTestChildLayerColumns):
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::nodeAtPoint):
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::nodeAtPoint):
+
+2010-10-06 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Martin Robinson.
+
+ SVGs with filters look grainy when scaled
+ https://bugs.webkit.org/show_bug.cgi?id=5526
+
+ Fixed issues on Cairos shadow implementation after the changes to FilterEffects.
+ Cairo calculates the inflation of the effect rect itself. Respect this for FEGaussianBlur.
+ This is just a temporary solution, since Cairo and Qt will use ContextShadow soon.
+
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::drawBorderlessRectShadow):
+ (WebCore::GraphicsContext::applyPlatformShadow):
+ (WebCore::GraphicsContext::createShadowMask):
+ (WebCore::GraphicsContext::drawTiledShadow):
+ (WebCore::GraphicsContext::fillRoundedRect):
+ * platform/graphics/filters/ImageBufferFilter.cpp:
+ (WebCore::ImageBufferFilter::ImageBufferFilter):
+ (WebCore::ImageBufferFilter::create):
+ * platform/graphics/filters/ImageBufferFilter.h:
+ (WebCore::ImageBufferFilter::filterRegion):
+ (WebCore::ImageBufferFilter::sourceImageRect):
+
+2010-10-06 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Dirk Schulze.
+
+ Only execute first SVG text layout phase if needed
+ https://bugs.webkit.org/show_bug.cgi?id=47254
+
+ The first SVG text layout phase which computes the per-character metrics and extracts
+ the x/y/dx/dy/rotate values from the SVG DOM is currently executed upon every RenderSVGText::layout() call.
+
+ Optimize this, by only calling it:
+ - if x/y/dx/dy/rotate value lists change
+ - the style of a RenderSVGInlineText changes (eg. font-size changes influence metrics)
+ - the text content of any of the children in the <text> subtree change
+
+ No change in layout tests, a pure performance change - covered by existing tests.
+
+ * rendering/RenderSVGResourceGradient.cpp:
+ (WebCore::createMaskAndSwapContextForTextGradient): Adapt to renames, use RenderSVGText::locateRenderSVGTextAncestor().
+ (WebCore::clipToTextMask): Ditto.
+ * rendering/SVGRenderSupport.cpp:
+ * rendering/SVGRenderSupport.h: Move findTreeRootObject to RenderSVGText::locateRenderSVGTextAncestor().
+ * rendering/svg/RenderSVGInline.cpp:
+ (WebCore::RenderSVGInline::objectBoundingBox): adapt to renames, use RenderSVGText::locateRenderSVGTextAncestor().
+ (WebCore::RenderSVGInline::strokeBoundingBox): Ditto.
+ (WebCore::RenderSVGInline::repaintRectInLocalCoordinates): Ditto.
+ (WebCore::RenderSVGInline::absoluteQuads): Ditto.
+ * rendering/svg/RenderSVGInlineText.cpp:
+ (WebCore::RenderSVGInlineText::styleDidChange): Call setNeedsPositioningValuesUpdate() on the RenderSVGText root object, if diff == StyleDifferenceLayout.
+ * rendering/svg/RenderSVGText.cpp:
+ (WebCore::RenderSVGText::RenderSVGText): Initialize m_needsPositioningValuesUpdate.
+ (WebCore::RenderSVGText::locateRenderSVGTextAncestor): New helper function, moved from SVGRenderSupport, to a more sensible place.
+ (WebCore::RenderSVGText::layout): Only execute the first SVG text layout phase, if m_needsPositioningValuesUpdate=true.
+ * rendering/svg/RenderSVGText.h:
+ (WebCore::RenderSVGText::setNeedsPositioningValuesUpdate):
+ (WebCore::toRenderSVGText): Add new helper casting methods, like most other renderers have.
+ * svg/SVGTextPositioningElement.cpp:
+ (WebCore::updatePositioningValuesInRenderer):
+ (WebCore::SVGTextPositioningElement::svgAttributeChanged): If x/y/dx/dy/rotate changes, call setNeedsPositioningValuesUpdate on the RenderSVGText root object.
+ (WebCore::SVGTextPositioningElement::childrenChanged): If any children changes (addition, removal), do the same.
+ * svg/SVGTextPositioningElement.h:
+
+2010-10-05 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: [Extensions API] Expose access to resource bodies
+ Added support for encoding resource in WebInspector.getResourceContent()
+ https://bugs.webkit.org/show_bug.cgi?id=45953
+
+ * inspector/Inspector.idl: Added encoding parameter to getResourceContent()
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::getResourceContent):
+ * inspector/InspectorController.h:
+ * inspector/InspectorResource.cpp: Added sourceBytes() to return encoded representation of resource's binary body.
+ (WebCore::InspectorResource::sourceBytes):
+ * inspector/InspectorResource.h:
+ * inspector/front-end/ExtensionAPI.js:
+ (WebInspector.injectedExtensionAPI.Resources.prototype.getContent):
+ * inspector/front-end/ExtensionServer.js:
+ (WebInspector.ExtensionServer):
+ (WebInspector.ExtensionServer.prototype._onGetResourceContent):
+ (WebInspector.ExtensionServer.prototype._onGetResourceContent.onContentAvailable):
+ (WebInspector.getEncodedResourceContent):
+ * inspector/front-end/NetworkPanel.js:
+ (WebInspector.getResourceContent):
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.getResourceContent):
+
+2010-10-06 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47235
+
+ Make "lr" block-flow fieldsets work.
+
+ (1) Patched html.css rules for legends and fieldsets to use logical margins and padding.
+ (2) Converted just enough of computePreferredLogicalWidths to make basic examples work.
+ (3) Removed the extra border drawing code from fieldsets so that the "clip out the legend" approach
+ is now just always used. It's silly to keep the old border drawing code in (which has already gotten out
+ of sync with the base class) just to avoid a save/restore and some clipping.
+ (4) Modified the layout/painting routines to place the legend properly and to be able to draw it in
+ both the top and the left borders.
+
+ Added fast/blockflow/fieldsets.html
+
+ * css/html.css:
+ (legend):
+ (fieldset):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::determineLogicalLeftPositionForChild):
+ (WebCore::RenderBlock::setLogicalLeftForChild):
+ (WebCore::RenderBlock::setLogicalTopForChild):
+ (WebCore::RenderBlock::layoutBlockChild):
+ (WebCore::RenderBlock::computePreferredLogicalWidths):
+ * rendering/RenderBlock.h:
+ * rendering/RenderFieldset.cpp:
+ (WebCore::RenderFieldset::layoutLegend):
+ (WebCore::RenderFieldset::paintBoxDecorations):
+ (WebCore::RenderFieldset::paintMask):
+ * rendering/RenderFieldset.h:
+
+2010-10-06 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Move parseDataUrl() from CURL into own file
+ https://bugs.webkit.org/show_bug.cgi?id=41462
+
+ Move the data URL parsing algorithm into a new file to use it in ResourceHandleWin too.
+
+ * CMakeLists.txt:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * platform/network/DataURL.cpp: Added.
+ (WebCore::handleDataURL):
+ * platform/network/DataURL.h: Added.
+ * platform/network/curl/ResourceHandleManager.cpp:
+ (WebCore::ResourceHandleManager::dispatchSynchronousJob):
+ (WebCore::ResourceHandleManager::startJob):
+ * platform/network/win/ResourceHandleWin.cpp:
+ (WebCore::ResourceHandle::start):
+ (WebCore::ResourceHandle::fileLoadTimer):
+
+2010-10-06 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVGs with filters look grainy when scaled
+ https://bugs.webkit.org/show_bug.cgi?id=5526
+
+ SVG filter effects need smarter size calculation
+ https://bugs.webkit.org/show_bug.cgi?id=31370
+
+ SVG elements use Filters before own transformations
+ https://bugs.webkit.org/show_bug.cgi?id=32486
+
+ Calculate all filter results in device space instead of the filtered objects user space. This change is similar to
+ the patches for SVG Pattern and SVG Masker before. It avoids pixelation and guarantees smooth filter results for
+ every scale level and is independent of any transformation to the target element or any ancester of the target.
+ The second part of this patch reduces the size of every effect to the smallest affected region instead of the complete
+ filter primitive subregion (http://www.w3.org/TR/SVG/filters.html#FilterPrimitiveSubRegion). We just use the subregion
+ as clipping region, like mentioned in the SVG specification, to make the affected region even smaller now.
+
+ This is a huge speed up. The ECMA cloud (http://ejohn.org/files/ecma-cloud.svg) is more than 100 times faster on Gtk and
+ renders in less than a second.
+ Some examples on svg-wow.org can be viewed the first time now, since the subregions were much bigger than the affected
+ region.
+ There's still more potential to speed up filters, by further reducing the ImageBuffer sizes.
+ Renamed repaintRectInLocalCoordinates to absolutePaintRect, since all coordinates are in device space instead of the
+ user space now.
+ The absolute paint rect is calculated by determineAbsolutePaintRect() and gets called by FilterEffect::effectContext() on
+ applying the effect.
+ Partly rewrote filter resolution (http://www.w3.org/TR/SVG/filters.html#FilterElementFilterResAttribute) to work with the
+ new concept. This also corrects the old behavior to match the SVG specification.
+
+ Tests: svg/filters/filterRes1.svg
+ svg/filters/filterRes2.svg
+ svg/filters/filterRes3.svg
+
+ * platform/graphics/cairo/GraphicsContextCairo.cpp: Call setAbsolutePaintRect instead of setRepaintRectInLocalCoordinates.
+ (WebCore::GraphicsContext::createShadowMask):
+ * platform/graphics/filters/FEBlend.cpp: Renamed repaintRectInLocalCoordinates to absolutePaintRect.
+ (WebCore::FEBlend::apply):
+ * platform/graphics/filters/FEColorMatrix.cpp: Ditto.
+ (WebCore::FEColorMatrix::apply):
+ * platform/graphics/filters/FEComponentTransfer.cpp: Ditto.
+ (WebCore::FEComponentTransfer::apply):
+ * platform/graphics/filters/FEComposite.cpp: Ditto.
+ (WebCore::FEComposite::determineAbsolutePaintRect):
+ (WebCore::FEComposite::apply):
+ * platform/graphics/filters/FEComposite.h:
+ * platform/graphics/filters/FEConvolveMatrix.cpp: Ditto.
+ (WebCore::FEConvolveMatrix::apply):
+ * platform/graphics/filters/FEConvolveMatrix.h:
+ (WebCore::FEConvolveMatrix::determineAbsolutePaintRect):
+ * platform/graphics/filters/FEDisplacementMap.cpp: Ditto.
+ (WebCore::FEDisplacementMap::apply):
+ * platform/graphics/filters/FEDisplacementMap.h:
+ (WebCore::FEDisplacementMap::determineAbsolutePaintRect):
+ * platform/graphics/filters/FEFlood.cpp: Ditto.
+ (WebCore::FEFlood::apply):
+ * platform/graphics/filters/FEFlood.h:
+ (WebCore::FEFlood::determineAbsolutePaintRect):
+ * platform/graphics/filters/FEGaussianBlur.cpp: Ditto.
+ (WebCore::calculateKernelSize):
+ (WebCore::FEGaussianBlur::determineAbsolutePaintRect):
+ (WebCore::FEGaussianBlur::apply):
+ * platform/graphics/filters/FEGaussianBlur.h:
+ * platform/graphics/filters/FELighting.cpp: Ditto.
+ (WebCore::FELighting::apply):
+ * platform/graphics/filters/FEMerge.cpp: Ditto.
+ (WebCore::FEMerge::apply):
+ * platform/graphics/filters/FEMorphology.cpp: Ditto.
+ (WebCore::FEMorphology::determineAbsolutePaintRect):
+ (WebCore::FEMorphology::apply):
+ * platform/graphics/filters/FEMorphology.h:
+ * platform/graphics/filters/FEOffset.cpp: Ditto.
+ (WebCore::FEOffset::determineAbsolutePaintRect):
+ (WebCore::FEOffset::apply):
+ * platform/graphics/filters/FEOffset.h:
+ * platform/graphics/filters/FETile.cpp: Ditto.
+ (WebCore::FETile::determineFilterPrimitiveSubregion):
+ (WebCore::FETile::apply):
+ * platform/graphics/filters/FETile.h:
+ (WebCore::FETile::determineAbsolutePaintRect):
+ * platform/graphics/filters/FETurbulence.cpp: Ditto.
+ (WebCore::FETurbulence::apply):
+ * platform/graphics/filters/FETurbulence.h:
+ (WebCore::FETurbulence::determineAbsolutePaintRect):
+ * platform/graphics/filters/Filter.h:
+ (WebCore::Filter::applyHorizontalScale): Map horizontal effect values to absolute coordinates.
+ (WebCore::Filter::applyVerticalScale): Map vertical effect values to absolute coordinates.
+ (WebCore::Filter::mapAbsolutePointToLocalPoint):
+ (WebCore::Filter::filterRegionInUserSpace):
+ * platform/graphics/filters/FilterEffect.cpp: Ditto.
+ (WebCore::FilterEffect::determineFilterPrimitiveSubregion):
+ (WebCore::FilterEffect::determineAbsolutePaintRect):
+ (WebCore::FilterEffect::requestedRegionOfInputImageData):
+ (WebCore::FilterEffect::drawingRegionOfInputImage):
+ (WebCore::FilterEffect::effectContext):
+ * platform/graphics/filters/FilterEffect.h:
+ (WebCore::FilterEffect::absolutePaintRect):
+ (WebCore::FilterEffect::setAbsolutePaintRect):
+ (WebCore::FilterEffect::maxEffectRect): The subregion in absolute coordinates for SVG.
+ (WebCore::FilterEffect::setMaxEffectRect):
+ * platform/graphics/filters/SourceAlpha.cpp: Ditto.
+ (WebCore::SourceAlpha::determineAbsolutePaintRect):
+ (WebCore::SourceAlpha::apply):
+ * platform/graphics/filters/SourceAlpha.h:
+ * platform/graphics/filters/SourceGraphic.cpp: Ditto.
+ (WebCore::SourceGraphic::determineAbsolutePaintRect):
+ (WebCore::SourceGraphic::apply):
+ * platform/graphics/filters/SourceGraphic.h:
+ * rendering/RenderSVGResourceFilter.cpp:
+ (WebCore::RenderSVGResourceFilter::applyResource):
+ (WebCore::RenderSVGResourceFilter::postApplyResource):
+ * rendering/RenderSVGResourceFilter.h:
+ (WebCore::FilterData::FilterData):
+ * svg/graphics/filters/SVGFEImage.cpp: Ditto.
+ (WebCore::FEImage::apply):
+ * svg/graphics/filters/SVGFEImage.h:
+ (WebCore::FEImage::determineAbsolutePaintRect):
+ * svg/graphics/filters/SVGFilter.cpp:
+ (WebCore::SVGFilter::SVGFilter):
+ (WebCore::SVGFilter::determineFilterPrimitiveSubregion):
+ (WebCore::SVGFilter::applyHorizontalScale):
+ (WebCore::SVGFilter::applyVerticalScale):
+ (WebCore::SVGFilter::create):
+ * svg/graphics/filters/SVGFilter.h:
+ (WebCore::SVGFilter::effectBoundingBoxMode):
+ (WebCore::SVGFilter::filterRegionInUserSpace):
+ (WebCore::SVGFilter::filterRegion):
+ (WebCore::SVGFilter::mapAbsolutePointToLocalPoint): Map absolute point to local point in userspace.
+ (WebCore::SVGFilter::sourceImageRect):
+ (WebCore::SVGFilter::maxImageSize):
+
+2010-10-06 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: add "Set Breakpoint" item to XHR resource context menu.
+ https://bugs.webkit.org/show_bug.cgi?id=47085
+
+ * English.lproj/localizedStrings.js:
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel.prototype._contextMenu):
+
+2010-10-05 Kinuko Yasuda <kinuko@chromium.org>
+
+ Reviewed by David Levin.
+
+ Add idl and mock classes for FileSystemSync for FileSystem API
+ https://bugs.webkit.org/show_bug.cgi?id=46405
+
+ Added bunch of *Sync classes, plus refactored some classes:
+ Added DOMFileSystemBase as a common base class for DOMFileSystem and
+ DOMFileSystemSync.
+ Added EntryBase as a common base class for Entry and EntrySync.
+ Added DirectoryReaderBase as a common base class for DirectoryReader and
+ DirectoryReaderSync.
+
+ Test: fast/filesystem/workers/
+
+ * CMakeLists.txt: Added new files.
+ * DerivedSources.cpp: Added new files.
+ * DerivedSources.make: Added new files.
+ * GNUmakefile.am: Added new files.
+ * WebCore.gypi: Added new files.
+ * WebCore.pri: Added new files.
+ * WebCore.pro: Added new files.
+ * WebCore.vcproj/WebCore.vcproj: Added new files. Also removed the duplicated fileapi\FileEntry.cpp entry.
+ * WebCore.xcodeproj/project.pbxproj: Added new files.
+ * bindings/js/JSDirectoryEntrySyncCustom.cpp: Added.
+ * bindings/js/JSEntrySyncCustom.cpp: Added.
+ * bindings/v8/custom/V8DirectoryEntrySyncCustom.cpp: Added.
+ * bindings/v8/custom/V8EntrySyncCustom.cpp: Added.
+ * fileapi/DOMFileSystemBase.cpp: Added.
+ * fileapi/DOMFileSystemBase.h: Added.
+ * fileapi/DOMFileSystemSync.cpp: Added.
+ * fileapi/DOMFileSystemSync.h: Added.
+ * fileapi/DOMFileSystemSync.idl: Added.
+ * fileapi/DirectoryEntrySync.cpp: Added.
+ * fileapi/DirectoryEntrySync.h: Added.
+ * fileapi/DirectoryEntrySync.idl: Added.
+ * fileapi/DirectoryReaderBase.h: Added.
+ * fileapi/DirectoryReaderSync.cpp: Added.
+ * fileapi/DirectoryReaderSync.h: Added.
+ * fileapi/DirectoryReaderSync.idl: Added.
+ * fileapi/EntryArraySync.cpp: Added.
+ * fileapi/EntryArraySync.h: Added.
+ * fileapi/EntryArraySync.idl: Added.
+ * fileapi/EntryBase.h: Added.
+ * fileapi/EntrySync.cpp: Added.
+ * fileapi/EntrySync.h: Added.
+ * fileapi/EntrySync.idl: Added.
+ * fileapi/FileEntrySync.cpp: Added.
+ * fileapi/FileEntrySync.h: Added.
+ * fileapi/FileEntrySync.idl: Added.
+
+2010-10-05 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ REGRESSION (r67166): "Placeholder" text remains in input box after 2nd focus()
+ https://bugs.webkit.org/show_bug.cgi?id=45940
+
+ Test: fast/forms/input-placeholder-focus-twice.html
+
+ * html/HTMLFormControlElement.h: Make supportsPlaceholder() public.
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::updateFromElement):
+ We always need to update the renderer value with the DOM value if
+ the element supports the placeholder feature.
+ Note: the placeholder feature and "unacceptable renderer value"
+ are exclusive.
+
+2010-10-05 Kyusun Kim <maniagoon@company100.net>
+
+ Reviewed by Kent Tamura.
+
+ [BREWMP] Translate key code in PlatformKeyboardEvent with IKeysMapping
+ https://bugs.webkit.org/show_bug.cgi?id=47234
+
+ Brew MP devices have a variey of key configurations and use modifiers to
+ input capital letters, symbols and special characters. Use IKeysMapping to translate key code.
+
+ * platform/brew/PlatformKeyboardEventBrew.cpp:
+ (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
+
+2010-10-05 W. James MacLean <wjmaclean@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [chromium] Add mipmap support for ImageLayerChromium
+ https://bugs.webkit.org/show_bug.cgi?id=46493
+
+ Mipmap behaviour can be tested with existing tests.
+ Tests in LayoutTests/compositing/images/ will detect if
+ mipmaps fail.
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::SharedValues::SharedValues):
+ (WebCore::isPowerOfTwo):
+ (WebCore::ContentLayerChromium::updateTextureRect):
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ (WebCore::ContentLayerChromium::SharedValues::npotSupported):
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::updateContents):
+
+2010-10-05 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Issue in treebuilder parsing related to table tags
+ https://bugs.webkit.org/show_bug.cgi?id=47190
+
+ Update ASSERT to match the spec and our behavior.
+
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processEndTagForInCell):
+
+2010-10-05 Victoria Kirst <vrk@google.com>
+
+ Reviewed by James Robinson.
+
+ VideoLayerChromium releases old resources if the LayerRenderer changes.
+ https://bugs.webkit.org/show_bug.cgi?id=47030
+
+ Refactored LayerChromium to have a virtual cleanupResources() method
+ that will release textures/other context-dependent resources when a
+ LayerRenderer changes. ContentLayerChromium and VideoLayerChromium now
+ override this method to perform cleanup.
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::setLayerRenderer):
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore::LayerChromium::cleanupResources):
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+ (WebCore::VideoLayerChromium::~VideoLayerChromium):
+ (WebCore::VideoLayerChromium::cleanupResources):
+ * platform/graphics/chromium/VideoLayerChromium.h:
+
+2010-10-05 Kinuko Yasuda <kinuko@chromium.org>
+
+ Reviewed by Jian Li.
+
+ FileEntry::file needs to be implemented
+ https://bugs.webkit.org/show_bug.cgi?id=47192
+
+ Test: fast/filesystem/file-from-file-entry.html
+
+ * fileapi/FileEntry.cpp:
+ (WebCore::FileEntry::file): Implemented.
+
+2010-09-29 Alpha Lam <hclam@chromium.org>
+
+ Reviewed by James Robinson.
+
+ Render textures in video frame directly.
+ https://bugs.webkit.org/show_bug.cgi?id=46765
+
+ Render textures in VideoLayerChromium directly if the video frame type
+ is GL texture. In the future VideoLayerChromium will not allocate
+ textures and perform textures upload as those operations will be done
+ in Chromium to minimize memory copy. This patch will help moving toward
+ this direction and facilitate hardware video decoding.
+
+ * platform/graphics/chromium/VideoFrameChromium.h:
+ * platform/graphics/chromium/VideoFrameProvider.h:
+ (WebCore::VideoFrameProvider::~VideoFrameProvider):
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+ (WebCore::VideoLayerChromium::VideoLayerChromium):
+ (WebCore::VideoLayerChromium::~VideoLayerChromium):
+ (WebCore::VideoLayerChromium::updateContents):
+ (WebCore::VideoLayerChromium::draw):
+ (WebCore::VideoLayerChromium::releaseCurrentFrame):
+ (WebCore::VideoLayerChromium::resetFrameParameters):
+ (WebCore::VideoLayerChromium::saveCurrentFrame):
+ * platform/graphics/chromium/VideoLayerChromium.h:
+ (WebCore::VideoLayerChromium::SharedValues::initialized):
+
2010-10-05 Fady Samuel <fsamuel@chromium.org>
Reviewed by Darin Adler.
@@ -4125,8 +5381,16324 @@
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadItem):
+2010-09-29 MORITA Hajime <morrita@google.com>
+
+ Unreviewed build fix.
+
+ WebCore::ESpeak causes missing symbol with no ENABLE_SVG
+ https://bugs.webkit.org/show_bug.cgi?id=46865
+
+ Moves ESpeak related function definitions outside ENABLE_SVG block.
+
+ * css/CSSPrimitiveValueMappings.h:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ (WebCore::CSSPrimitiveValue::operator ESpeak):
+ (WebCore::CSSPrimitiveValue::operator EVectorEffect):
+
+2010-09-29 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add AudioChannelSplitter files
+ https://bugs.webkit.org/show_bug.cgi?id=46290
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/AudioChannelSplitter.cpp: Added.
+ (WebCore::AudioChannelSplitter::AudioChannelSplitter):
+ (WebCore::AudioChannelSplitter::process):
+ (WebCore::AudioChannelSplitter::reset):
+ * webaudio/AudioChannelSplitter.h: Added.
+ (WebCore::AudioChannelSplitter::create):
+ * webaudio/AudioChannelSplitter.idl: Added.
+
+2010-09-29 Kinuko Yasuda <kinuko@chromium.org>
+
+ Reviewed by David Levin.
+
+ Fix DirectoryReader's behavior to trigger only one EntriesCallback per readEntries
+ https://bugs.webkit.org/show_bug.cgi?id=46563
+
+ Test: fast/filesystem/read-directory.html
+
+ * fileapi/DOMFileSystem.cpp:
+ (WebCore::DOMFileSystem::readDirectory): Changed to take DirectoryReader
+ as a parameter.
+ * fileapi/DOMFileSystem.h:
+ (WebCore::DOMFileSystem::scheduleCallback): Added.
+ * fileapi/DirectoryReader.cpp:
+ (WebCore::DirectoryReader::DirectoryReader): Added initializer for
+ m_hasMore flag.
+ (WebCore::DirectoryReader::readEntries): Changed to schedule
+ EntriesCallback with an empty array if m_hasMore flag is set false.
+ * fileapi/DirectoryReader.h:
+ (WebCore::DirectoryReader::filesystem): Added.
+ (WebCore::DirectoryReader::setHasMore): Added.
+ * fileapi/FileSystemCallbacks.cpp:
+ (WebCore::EntriesCallbacks::create):
+ (WebCore::EntriesCallbacks::EntriesCallbacks): Changed to take
+ DirectoryReader as a parameter.
+ (WebCore::EntriesCallbacks::didReadDirectoryEntry):
+ (WebCore::EntriesCallbacks::didReadDirectoryEntries): Changed 1) not to
+ trigger the second callback when hasMore is false, and 2) to update
+ the DirectoryReader's m_hasMore flag.
+ * fileapi/FileSystemCallbacks.h:
+
+2010-09-29 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add AudioGainNode files
+ https://bugs.webkit.org/show_bug.cgi?id=46286
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/AudioGainNode.cpp: Added.
+ (WebCore::AudioGainNode::AudioGainNode):
+ (WebCore::AudioGainNode::process):
+ (WebCore::AudioGainNode::reset):
+ (WebCore::AudioGainNode::checkNumberOfChannelsForInput):
+ * webaudio/AudioGainNode.h: Added.
+ (WebCore::AudioGainNode::create):
+ (WebCore::AudioGainNode::gain):
+ * webaudio/AudioGainNode.idl: Added.
+
+2010-09-29 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add AudioChannelMerger files
+ https://bugs.webkit.org/show_bug.cgi?id=46291
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/AudioChannelMerger.cpp: Added.
+ (WebCore::AudioChannelMerger::AudioChannelMerger):
+ (WebCore::AudioChannelMerger::process):
+ (WebCore::AudioChannelMerger::reset):
+ * webaudio/AudioChannelMerger.h: Added.
+ (WebCore::AudioChannelMerger::create):
+ * webaudio/AudioChannelMerger.idl: Added.
+
+2010-09-29 Chris Fleizach <cfleizach@apple.com>
+
+ No review. Missed file for patch.
+
+ AX: implement CSS3 Speech "speak"
+ https://bugs.webkit.org/show_bug.cgi?id=46827
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+
+2010-09-29 Enrica Casucci <enrica@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Crash at lineBreakExistsAtPosition + 125
+ <rdar://problem/7028809>
+ https://bugs.webkit.org/show_bug.cgi?id=46770
+
+ lineBreakExistsAtPosition is called from InsertTextCommand::input,
+ where we compute the downstream position of the endingSelection().
+ Downstream can return the original position, that comes from a VisibleSelection
+ but there is no guarantee that its renderer is still there. Everywhere we dereference
+ a renderer we check if it's null.
+
+ There is no regression test.
+
+ * editing/htmlediting.cpp:
+ (WebCore::lineBreakExistsAtPosition): Added check that the renderer is not null
+ before dereferencing it.
+
+2010-09-29 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Add additional checks to StringBuilder.
+ <rdar://problem/7761248>
+
+ * platform/text/StringBuilder.cpp:
+ (WebCore::checkAppend):
+ (WebCore::StringBuilder::append):
+ (WebCore::StringBuilder::toString):
+ (WebCore::StringBuilder::clear):
+ (WebCore::StringBuilder::length):
+ * platform/text/StringBuilder.h:
+ (WebCore::StringBuilder::StringBuilder):
+ (WebCore::StringBuilder::setNonNull):
+ (WebCore::StringBuilder::isNull):
+
+2010-09-29 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Darin Adler.
+
+ plugins/npruntime/invoke-failure.html fails in WebKit2 due to slightly different exception being thrown
+ https://bugs.webkit.org/show_bug.cgi?id=46715
+ <rdar://problem/8485909>
+
+ Remove exclamation points from exceptions.
+
+ * bindings/v8/V8NPObject.cpp:
+ (WebCore::npObjectInvokeImpl):
+ * bridge/c/c_instance.cpp:
+ (JSC::Bindings::CInstance::invokeMethod):
+ (JSC::Bindings::CInstance::invokeDefaultMethod):
+ (JSC::Bindings::CInstance::invokeConstruct):
+
+2010-09-29 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Add additional check to Text::wholeText.
+ <rdar://problem/8304795>
+
+ * dom/Text.cpp:
+ (WebCore::Text::wholeText):
+
+2010-09-29 Brian Weinstein <bweinstein@apple.com>
+
+ Reviewed by Brady Eidson.
+
+ REGRESSION (r66129): Loading full-frame .swf file crashes with flash blocker extension enabled
+ <https://bugs.webkit.org/show_bug.cgi?id=46773>
+ <rdar://problem/8390975>
+
+ After r66129, start scripts were run on plugin documents, and cancelling the load of a plugin
+ document could cause Safari to crash.
+
+ If a plugin load on an initial document is cancelled, we cancel the main resource load (where the
+ main resource is the plugin), and if the load is restarted and allowed, we don't go through the manual
+ loading path like we do on the initial load of a plugin in a plugin document.
+
+ Tests: plugins/plugin-document-load-prevented-userscript.html
+ plugins/plugin-document-willSendRequest-null.html
+
+ * html/HTMLEmbedElement.cpp:
+ (WebCore::HTMLEmbedElement::updateWidget): If the plugin load was cancelled, and this is in a
+ plugin document, call a function on PluginDocument that cancels the main resource load, and
+ sets a plugin document flag.
+ * html/PluginDocument.cpp:
+ (WebCore::PluginDocumentParser::appendBytes): Null check the widget's renderer, because it could be
+ null if the load was cancelled.
+ (WebCore::PluginDocument::PluginDocument): Initialize the new variable.
+ (WebCore::PluginDocument::cancelManualPluginLoad): Cancel the main resource load of the plugin document
+ (which is a plugin in the case of a plugin document).
+ * html/PluginDocument.h:
+ (WebCore::PluginDocument::shouldLoadPluginManually): Returns whether or not we should load the plugin
+ manually.
+ (WebCore::PluginDocument::setShouldLoadPluginManually): Set whether or not we should load the plugin
+ manually.
+ (WebCore::toPluginDocument):
+ * loader/SubframeLoader.cpp:
+ (WebCore::SubframeLoader::loadPlugin): Check if we should load the plugin manually according to the plugin
+ document.
+
+2010-09-29 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46844, make estimateLogicalTopPosition
+ block-flow-aware.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::estimateLogicalTopPosition):
+ (WebCore::RenderBlock::collapsedMarginBeforeForChild):
+ (WebCore::RenderBlock::collapsedMarginAfterForChild):
+ * rendering/RenderBlock.h:
+
+2010-09-29 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Minor cleanup to AudioContext
+ https://bugs.webkit.org/show_bug.cgi?id=46843
+
+ No new tests since audio API is not yet implemented
+
+ * webaudio/AudioContext.cpp:
+ (WebCore::AudioContext::lock):
+ (WebCore::AudioContext::handleDeferredFinishDerefs):
+
+2010-09-29 MORITA Hajime <morrita@google.com>
+
+ Reviewed by Eric Seidel.
+
+ Assertion failed when accessing -webkit-margin-top-collapse via computed style.
+ https://bugs.webkit.org/show_bug.cgi?id=46798
+
+ There was a switch statement which missed enum entries in getPropertyCSSValue().
+ This change added these entries to prevent the leak.
+ It also added extra case statements to encourage the compiler's help.
+
+ Test: fast/css/getComputedStyle/margin-top-bottom-collapse-alias.html
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+
+2010-09-29 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Limit number of AudioNode deletions per render quantum in AudioContext
+ https://bugs.webkit.org/show_bug.cgi?id=46834
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/AudioContext.cpp:
+ (WebCore::AudioContext::handlePostRenderTasks):
+ (WebCore::AudioContext::deleteMarkedNodes):
+
+2010-09-29 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46838
+
+ Get rid of the marginXXXUsing/setMarginXXXUsing methods on RenderBox. I'm inverting the way these are called
+ and putting the methods on RenderBlock instead. The methods can be named better this way and the getters
+ can operate on RenderBoxModelObjects instead of just RenderBoxes.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlockChild):
+ (WebCore::RenderBlock::marginBeforeForChild):
+ (WebCore::RenderBlock::marginAfterForChild):
+ (WebCore::RenderBlock::marginStartForChild):
+ (WebCore::RenderBlock::marginEndForChild):
+ (WebCore::RenderBlock::setMarginStartForChild):
+ (WebCore::RenderBlock::setMarginEndForChild):
+ (WebCore::RenderBlock::setMarginBeforeForChild):
+ (WebCore::RenderBlock::setMarginAfterForChild):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::logicalHeightForChild):
+ (WebCore::RenderBlock::logicalTopForChild):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::marginBefore):
+ (WebCore::RenderBox::marginAfter):
+ (WebCore::RenderBox::marginStart):
+ (WebCore::RenderBox::marginEnd):
+ (WebCore::RenderBox::setMarginStart):
+ (WebCore::RenderBox::setMarginEnd):
+ (WebCore::RenderBox::setMarginBefore):
+ (WebCore::RenderBox::setMarginAfter):
+ (WebCore::RenderBox::computeLogicalWidth):
+ (WebCore::RenderBox::computeInlineDirectionMargins):
+ (WebCore::RenderBox::computeBlockDirectionMargins):
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::setMarginTop):
+ (WebCore::RenderBox::setMarginBottom):
+ (WebCore::RenderBox::setMarginLeft):
+ (WebCore::RenderBox::setMarginRight):
+
+2010-09-29 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Removed input type site-specific quirk for mail.google.com
+ https://bugs.webkit.org/show_bug.cgi?id=46836
+
+ * bindings/js/JSHTMLInputElementCustom.cpp:
+ (WebCore::needsGmailQuirk): Removed.
+ (WebCore::JSHTMLInputElement::type): Removed this custom getter.
+ * html/HTMLInputElement.idl: Removed the JSCCustomGetter custom attribute
+ from the type attribute.
+
+2010-09-29 Joseph Pecoraro <joepeck@webkit.org>
+
+ Reviewed by Simon Fraser.
+
+ CRASH at WebCore::HTMLSourceElement::scheduleErrorEvent
+ https://bugs.webkit.org/show_bug.cgi?id=46777
+
+ It should not be possible to get to be in the LoadingFromSourceElement
+ state with a null current source node. This was a possible scenario
+ where the current source node was cleared but the load state was not
+ cleared as well. Tried and could not create a test case for this.
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::userCancelledLoad): clear the load state because we also clear the current source node.
+
+2010-09-29 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46835, patch a few more height/logicalHeights. Rename stretchesToViewHeight.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::layout):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlock):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::layoutInlineChildren):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::computeLogicalHeight):
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::stretchesToViewport):
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::relativePositionOffsetY):
+
+2010-09-29 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Darin Adler.
+
+ AX: implement CSS3 Speech "speak"
+ https://bugs.webkit.org/show_bug.cgi?id=46827
+
+ Support the "speak" style as defined in
+ http://www.w3.org/TR/css3-speech/#speak
+
+ This puts all the pieces in place for a platform to support this ability, but there's no platform implementation yet.
+
+ Test: platform/mac/accessibility/css-speech-speak.html
+
+ * accessibility/AccessibilityObject.h:
+ (WebCore::AccessibilityObject::speakProperty):
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::speakProperty):
+ * accessibility/AccessibilityRenderObject.h:
+ * accessibility/mac/AccessibilityObjectWrapper.mm:
+ (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSPrimitiveValueMappings.h:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ (WebCore::CSSPrimitiveValue::operator ESpeak):
+ * css/CSSPropertyNames.in:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ * css/CSSValueKeywords.in:
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::speak):
+ (WebCore::InheritedFlags::setSpeak):
+ (WebCore::InheritedFlags::initialSpeak):
+ * rendering/style/RenderStyleConstants.h:
+ * rendering/style/StyleRareInheritedData.cpp:
+ (WebCore::StyleRareInheritedData::StyleRareInheritedData):
+ (WebCore::StyleRareInheritedData::operator==):
+ * rendering/style/StyleRareInheritedData.h:
+
+2010-09-29 João Paulo Rechi Vita <jprvita@profusion.mobi>
+
+ Reviewed by Antonio Gomes.
+
+ [Curl] Fix unused and unitialized warnings.
+ https://bugs.webkit.org/show_bug.cgi?id=46831
+
+ No new tests since no new funcionality has been added.
+
+ * platform/network/curl/ResourceHandleCurl.cpp:
+ (WebCore::allowsAnyHTTPSCertificateHosts):
+ * platform/network/curl/ResourceHandleManager.cpp:
+ (WebCore::ResourceHandleManager::ResourceHandleManager):
+ (WebCore::handleLocalReceiveResponse):
+ (WebCore::ResourceHandleManager::downloadTimerCallback):
+ (WebCore::ResourceHandleManager::initializeHandle):
+
+2010-09-29 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46824
+
+ Convert layoutBlockChild (but not the functions it calls) to be block-flow-aware.
+
+ fast/blockflow/root-lr.html progresses as a result of this change.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::estimateLogicalTopPosition):
+ (WebCore::RenderBlock::determineLogicalLeftPositionForChild):
+ (WebCore::RenderBlock::setLogicalTopForChild):
+ (WebCore::RenderBlock::layoutBlockChild):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::logicalHeightForChild):
+ (WebCore::RenderBlock::logicalTopForChild):
+ * rendering/RenderBox.h:
+
+2010-09-29 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Antonio Gomes.
+
+ queryCommandValue "formatBlock" always returns false
+ https://bugs.webkit.org/show_bug.cgi?id=21305
+
+ Implemented queryCommandValue('formatBlock'). We match the Firefox's behavior exactly
+ because Firefox and Internet Explorer support the same set of elements
+ (address, h1, h2, h3, h4, h5, h6, and p) and Firefox's behavior is more compatible with Opera.
+ See the bug for the detailed discussion.
+
+ WebKit's implementation returns the local name of the lowest common ancestor
+ of the selection with the tag name address, h1, h2, h3, h4, h5, h6, or p.
+ It returns "" when there is no such an ancestor or there is no selection.
+
+ Test: editing/execCommand/query-format-block.html
+
+ * editing/Editor.cpp:
+ (WebCore::isElementForFormatBlockCommand):
+ (WebCore::Editor::elementForFormatBlockCommand):
+ * editing/Editor.h:
+ * editing/EditorCommand.cpp:
+ (WebCore::valueFormatBlock):
+ (WebCore::createCommandMap):
+
+2010-09-29 Matt Perry <mpcomplete@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Remove obsolete registerExtension variants from chromium port.
+ https://bugs.webkit.org/show_bug.cgi?id=46683
+
+ * bindings/v8/V8DOMWindowShell.cpp:
+ (WebCore::V8DOMWindowShell::createNewContext):
+ * bindings/v8/V8Proxy.cpp:
+ (WebCore::V8Proxy::registeredExtensionWithV8):
+ (WebCore::V8Proxy::registerExtension):
+ * bindings/v8/V8Proxy.h:
+
+2010-09-29 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Chris Fleizach.
+
+ [GTK] editing/selection/selection-modify-crash.html crashes when run in Xvfb
+ https://bugs.webkit.org/show_bug.cgi?id=46822
+
+ When parentObjectUnignored returns null in objectAndOffsetUnignored consider that
+ a failure case. Handle this failure appropriately at all call sites.
+
+ * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
+ (webkit_accessible_text_get_caret_offset): Handle the failure of objectAndOffsetUnignored.
+ (objectAndOffsetUnignored): Always check the return value of parentObjectUnignored and
+ return 0 to indicate failure when that happens.
+ * editing/gtk/SelectionControllerGtk.cpp:
+ (WebCore::SelectionController::notifyAccessibilityForSelectionChange): Handle the failure
+ case of objectAndOffsetUnignored.
+
+2010-09-29 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r68657.
+ http://trac.webkit.org/changeset/68657
+ https://bugs.webkit.org/show_bug.cgi?id=46820
+
+ reason "Breaks win debug build" (Requested by podivilov on
+ #webkit).
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSXMLHttpRequestCustom.cpp:
+ (WebCore::JSXMLHttpRequest::send):
+ * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
+ (WebCore::V8XMLHttpRequest::sendCallback):
+ * dom/CharacterData.cpp:
+ (WebCore::CharacterData::dispatchModifiedEvent):
+ * dom/ContainerNode.cpp:
+ (WebCore::ContainerNode::insertBefore):
+ (WebCore::ContainerNode::parserInsertBefore):
+ (WebCore::ContainerNode::replaceChild):
+ (WebCore::ContainerNode::appendChild):
+ (WebCore::ContainerNode::parserAddChild):
+ (WebCore::notifyChildInserted):
+ (WebCore::dispatchChildRemovalEvents):
+ * dom/Element.cpp:
+ (WebCore::Element::setAttribute):
+ (WebCore::Element::removeAttribute):
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::~InspectorController):
+ (WebCore::InspectorController::connectFrontend):
+ (WebCore::InspectorController::disconnectFrontend):
+ (WebCore::InspectorController::willInsertDOMNodeImpl):
+ (WebCore::InspectorController::didInsertDOMNodeImpl):
+ (WebCore::InspectorController::willRemoveDOMNodeImpl):
+ (WebCore::InspectorController::didRemoveDOMNodeImpl):
+ (WebCore::InspectorController::willModifyDOMAttrImpl):
+ (WebCore::InspectorController::didModifyDOMAttrImpl):
+ (WebCore::InspectorController::characterDataModifiedImpl):
+ (WebCore::InspectorController::instrumentWillSendXMLHttpRequestImpl):
+ * inspector/InspectorController.h:
+ (WebCore::InspectorController::willInsertDOMNode):
+ (WebCore::InspectorController::didInsertDOMNode):
+ (WebCore::InspectorController::willRemoveDOMNode):
+ (WebCore::InspectorController::willModifyDOMAttr):
+ (WebCore::InspectorController::didModifyDOMAttr):
+ (WebCore::InspectorController::characterDataModified):
+ (WebCore::InspectorController::instrumentWillSendXMLHttpRequest):
+ (WebCore::InspectorController::inspectorControllerForScriptExecutionContext):
+ (WebCore::InspectorController::inspectorControllerForNode):
+ (WebCore::InspectorController::inspectorControllerForDocument):
+ * inspector/InspectorInstrumentation.cpp: Removed.
+ * inspector/InspectorInstrumentation.h: Removed.
+ * workers/SharedWorker.cpp:
+
+2010-09-29 Xiaomei Ji <xji@chromium.org>
+
+ Reviewed by David Levin.
+
+ Performance improvement for FontLinux.
+ https://bugs.webkit.org/show_bug.cgi?id=46374
+
+ Reduce new/delete operations by storing the maximum capacity of the glyph
+ array and use that value in subsequent HB_ShapeItem calls. (Note that a
+ call to HB_ShapeItem may reduce the value of m_item.num_glyphs below the
+ capacity.)
+
+ Also be consistent with zero'ing the glyph arrays before calling
+ HB_ShapeItem.
+
+ There is no functionality changes so no new tests are added.
+
+ * platform/graphics/chromium/FontLinux.cpp:
+ (WebCore::TextRunWalker::createGlyphArrays):
+ (WebCore::TextRunWalker::resetGlyphArrays):
+ (WebCore::TextRunWalker::shapeGlyphs):
+
+2010-09-29 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: extract Inspector Instrumentation API as a class.
+ https://bugs.webkit.org/show_bug.cgi?id=46614
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSXMLHttpRequestCustom.cpp:
+ (WebCore::JSXMLHttpRequest::send):
+ * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
+ (WebCore::V8XMLHttpRequest::sendCallback):
+ * dom/CharacterData.cpp:
+ (WebCore::CharacterData::dispatchModifiedEvent):
+ * dom/ContainerNode.cpp:
+ (WebCore::ContainerNode::insertBefore):
+ (WebCore::ContainerNode::parserInsertBefore):
+ (WebCore::ContainerNode::replaceChild):
+ (WebCore::ContainerNode::appendChild):
+ (WebCore::ContainerNode::parserAddChild):
+ (WebCore::notifyChildInserted):
+ (WebCore::dispatchChildRemovalEvents):
+ * dom/Element.cpp:
+ (WebCore::Element::setAttribute):
+ (WebCore::Element::removeAttribute):
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::~InspectorController):
+ (WebCore::InspectorController::connectFrontend):
+ (WebCore::InspectorController::disconnectFrontend):
+ (WebCore::InspectorController::instrumentWillSendXMLHttpRequest):
+ * inspector/InspectorController.h:
+ * inspector/InspectorInstrumentation.cpp: Added.
+ (WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
+ (WebCore::InspectorInstrumentation::didInsertDOMNodeImpl):
+ (WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
+ (WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl):
+ (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
+ (WebCore::InspectorInstrumentation::didModifyDOMAttrImpl):
+ (WebCore::InspectorInstrumentation::characterDataModifiedImpl):
+ (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequestImpl):
+ * inspector/InspectorInstrumentation.h: Added.
+ (WebCore::InspectorInstrumentation::frontendCreated):
+ (WebCore::InspectorInstrumentation::frontendDeleted):
+ (WebCore::InspectorInstrumentation::hasFrontends):
+ (WebCore::InspectorInstrumentation::willInsertDOMNode):
+ (WebCore::InspectorInstrumentation::didInsertDOMNode):
+ (WebCore::InspectorInstrumentation::willRemoveDOMNode):
+ (WebCore::InspectorInstrumentation::willModifyDOMAttr):
+ (WebCore::InspectorInstrumentation::didModifyDOMAttr):
+ (WebCore::InspectorInstrumentation::characterDataModified):
+ (WebCore::InspectorInstrumentation::instrumentWillSendXMLHttpRequest):
+ (WebCore::InspectorInstrumentation::inspectorControllerForScriptExecutionContext):
+ (WebCore::InspectorInstrumentation::inspectorControllerForDocument):
+ (WebCore::InspectorInstrumentation::inspectorControllerForPage):
+
+2010-09-29 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46786, convert layoutBlockChild (but not any functions it calls)
+ to be block-flow-aware.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlock):
+ (WebCore::RenderBlock::handleAfterSideOfBlock):
+ (WebCore::RenderBlock::layoutBlockChildren):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::scrollbarLogicalHeight):
+
+2010-09-29 João Paulo Rechi Vita <jprvita@profusion.mobi>
+
+ Reviewed by Antonio Gomes.
+
+ [EFL] General small fixes.
+ https://bugs.webkit.org/show_bug.cgi?id=46813
+
+ This commit spots a comparison between signed and unsigned integer
+ expressions, a missing return and a never-called function.
+
+ No new tests since no new funcionality has been added.
+
+ * platform/efl/SharedBufferEfl.cpp:
+ (WebCore::SharedBuffer::createWithContentsOfFile):
+
+2010-09-29 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Gustavo Noronha Silva.
+
+ build still broken since r68521
+ https://bugs.webkit.org/show_bug.cgi?id=46795
+
+ Call make-values.pl once only. It seems calling it multiple times
+ in the same build produces a wrong CSSValueKeywordsHash.h which
+ has a duplicate declaration of its valueList variable. The double
+ call is triggered by the double targets in the Makefile rules and
+ makevalues.pl generates one of them, which screws up the build. A
+ more proper fix should be done with the advices on
+ http://www.cmcrossroads.com/cm-basics/12905-rules-with-multiple-outputs-in-gnu-make
+
+ * GNUmakefile.am:
+
+2010-09-29 João Paulo Rechi Vita <jprvita@profusion.mobi>
+
+ Unreviewed build fix.
+
+ Fix CMake build for ENABLE_PROGRESS_TAG.
+ https://bugs.webkit.org/show_bug.cgi?id=46808
+
+ No new tests since it's a build fix.
+
+ * CMakeLists.txt:
+
+2010-09-29 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ [v8] Use generic mechanism to report exceptions in V8CustomVoidCallback
+ https://bugs.webkit.org/show_bug.cgi?id=46803
+
+ No new tests. It's covered by existing tests under LayoutTests/storage
+
+ * bindings/v8/custom/V8CustomVoidCallback.cpp:
+ (WebCore::invokeCallback):
+
+2010-09-29 Satish Sampath <satish@chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ Rename the input element's @speech attribute to @webkitspeech since it is still experimental.
+ https://bugs.webkit.org/show_bug.cgi?id=46799
+
+ * bindings/generic/RuntimeEnabledFeatures.h:
+ (WebCore::RuntimeEnabledFeatures::webkitspeechEnabled): Rename the runtime feature flag getter.
+ * css/CSSPrimitiveValueMappings.h:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ * css/CSSValueKeywords.in: Rename the css style name.
+ * css/html.css: Rename the css style name.
+ (input::-webkit-input-speech-button):
+ * html/HTMLAttributeNames.in: Rename the @speech attribute.
+ * html/HTMLInputElement.cpp: Update code using the attribute.
+ (WebCore::HTMLInputElement::parseMappedAttribute):
+ (WebCore::HTMLInputElement::isSpeechEnabled):
+ * html/HTMLInputElement.idl: Rename the @speech attribute.
+
+2010-09-29 MORITA Hajime <morrita@google.com>
+
+ [Chromium] failed to build without ACCELERATED_COMPOSITING
+ https://bugs.webkit.org/show_bug.cgi?id=46793
+
+ Moved constant definitions from inside ACCELERATED_COMPOSITING to
+ outside of the condition.
+
+ * WebCore.gypi:
+ * platform/graphics/chromium/VideoFrameChromium.cpp: Added just for defining constants.
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+
+2010-09-28 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Timothy Hatcher.
+
+ Web Inspector: [Resources panel] Need more visible "at a glance".
+ https://bugs.webkit.org/show_bug.cgi?id=45657
+
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * inspector/front-end/DataGrid.js:
+ (WebInspector.DataGrid):
+ (WebInspector.DataGrid.prototype.updateWidths):
+ (WebInspector.DataGrid.prototype.sortNodes):
+ (WebInspector.DataGrid.prototype._resizerDragging):
+ (WebInspector.DataGrid.prototype._endResizerDragging):
+ (WebInspector.DataGridNode.prototype.selectable.true.get element):
+ (WebInspector.DataGridNode.prototype.createCells):
+ (WebInspector.DataGridNode.prototype.refresh):
+ * inspector/front-end/Images/networkIcon.png: Copied from WebCore/inspector/front-end/Images/resourcesIcon.png.
+ * inspector/front-end/NetworkPanel.js: Added.
+ * inspector/front-end/Settings.js:
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/inspector.css:
+ (.toolbar-item.network .toolbar-icon):
+ (.data-grid .data-container):
+ * inspector/front-end/inspector.html:
+ * inspector/front-end/inspector.js:
+ (WebInspector._createPanels):
+ (WebInspector.updateResource):
+ * inspector/front-end/networkPanel.css: Added.
+
+2010-09-28 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: move pauseOnExceptionState under control of InspectorState
+ It is Inspector Protocol cleanup activity.
+ The actual state of this flag can be obtained as a return value of setPauseOnExceptionState command
+ or as a value in InspectorState object.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46724
+
+ * inspector/Inspector.idl:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::getInspectorState):
+ (WebCore::InspectorController::populateScriptObjects):
+ * inspector/InspectorDebuggerAgent.cpp:
+ (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState):
+ (WebCore::InspectorDebuggerAgent::pauseOnExceptionsState):
+ * inspector/InspectorDebuggerAgent.h:
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._togglePauseOnExceptions):
+ * inspector/front-end/inspector.js:
+ (WebInspector.doLoadedDone.populateInspectorState):
+ (WebInspector.doLoadedDone):
+ (WebInspector.reportProtocolError):
+
+2010-09-28 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ check USE(GSTREAMER) instead of ENABLE(VIDEO) in gstreamer/ files
+ https://bugs.webkit.org/show_bug.cgi?id=46717
+
+ Guard the gstreamer/ files with USE(GSTREAMER), which is more
+ explicit than ENABLE(VIDEO).
+
+ * GNUmakefile.am: Define WTF_USE_GSTREAMER only if GStreamer
+ support is enabled.
+ * platform/graphics/gstreamer/DataSourceGStreamer.cpp:
+ * platform/graphics/gstreamer/DataSourceGStreamer.h:
+ * platform/graphics/gstreamer/GOwnPtrGStreamer.cpp:
+ * platform/graphics/gstreamer/GOwnPtrGStreamer.h:
+ * platform/graphics/gstreamer/GStreamerGWorld.cpp:
+ * platform/graphics/gstreamer/GStreamerGWorld.h:
+ * platform/graphics/gstreamer/ImageGStreamer.h:
+ * platform/graphics/gstreamer/ImageGStreamerCG.mm:
+ * platform/graphics/gstreamer/ImageGStreamerCairo.cpp:
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
+ * platform/graphics/gstreamer/PlatformVideoWindow.h:
+ * platform/graphics/gstreamer/PlatformVideoWindowEfl.cpp:
+ * platform/graphics/gstreamer/PlatformVideoWindowGtk.cpp:
+ * platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
+ * platform/graphics/gstreamer/VideoSinkGStreamer.h:
+ * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
+ * platform/graphics/gstreamer/WebKitWebSourceGStreamer.h:
+
+2010-09-28 Kent Tamura <tkent@chromium.org>
+
+ Unreviewed, windows build fix for r68629.
+
+ * WebCore.vcproj/WebCore.vcproj: Add TimeInputType.{cpp,h}
+
+2010-09-28 Johnny Ding <jnd@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ https://bugs.webkit.org/show_bug.cgi?id=41292
+ Pass the right popupAllowed flag to current execution frame,
+ so WebKit can get right gesture status for popups initiated
+ from plugins.
+ This also makes v8 binding's ScriptController::processingUserGesture
+ match what jsc version.
+
+ Test: plugins/plugin-initiate-popup-window.html
+
+ * bindings/v8/NPV8Object.cpp:
+ (_NPN_EvaluateHelper):
+ * bindings/v8/ScriptController.cpp:
+ (WebCore::ScriptController::ScriptController):
+ (WebCore::ScriptController::processingUserGesture):
+ * bindings/v8/ScriptController.h:
+ (WebCore::ScriptController::setAllowPopupsFromPlugin):
+ (WebCore::ScriptController::allowPopupsFromPlugin):
+
+2010-09-28 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Refactor HTMLInputElement: Introducing InputType class and classes
+ for each input element types.
+ https://bugs.webkit.org/show_bug.cgi?id=45872
+
+ No new tests because this doesn't change any behavior.
+
+ * Android.mk: Add new files.
+ * CMakeLists.txt: ditto.
+ * GNUmakefile.am: ditto.
+ * WebCore.gypi: ditto.
+ * WebCore.pro: ditto.
+ * WebCore.vcproj/WebCore.vcproj: ditto.
+ * WebCore.xcodeproj/project.pbxproj: ditto.
+ * html/BaseTextInputType.cpp: Added.
+ (WebCore::BaseTextInputType::isTextType):
+ (WebCore::BaseTextInputType::patternMismatch):
+ * html/BaseTextInputType.h: Added.
+ (WebCore::BaseTextInputType::BaseTextInputType):
+ * html/ButtonInputType.cpp: Added.
+ (WebCore::ButtonInputType::create):
+ (WebCore::ButtonInputType::formControlType):
+ * html/ButtonInputType.h: Added.
+ (WebCore::ButtonInputType::ButtonInputType):
+ * html/CheckboxInputType.cpp: Added.
+ (WebCore::CheckboxInputType::create):
+ (WebCore::CheckboxInputType::formControlType):
+ * html/CheckboxInputType.h: Added.
+ (WebCore::CheckboxInputType::CheckboxInputType):
+ * html/ColorInputType.cpp: Added.
+ (WebCore::ColorInputType::create):
+ (WebCore::ColorInputType::formControlType):
+ * html/ColorInputType.h: Added.
+ (WebCore::ColorInputType::ColorInputType):
+ * html/DateInputType.cpp: Added.
+ (WebCore::DateInputType::create):
+ (WebCore::DateInputType::formControlType):
+ * html/DateInputType.h: Added.
+ (WebCore::DateInputType::DateInputType):
+ * html/DateTimeInputType.cpp: Added.
+ (WebCore::DateTimeInputType::create):
+ (WebCore::DateTimeInputType::formControlType):
+ * html/DateTimeInputType.h: Added.
+ (WebCore::DateTimeInputType::DateTimeInputType):
+ * html/DateTimeLocalInputType.cpp: Added.
+ (WebCore::DateTimeLocalInputType::create):
+ (WebCore::DateTimeLocalInputType::formControlType):
+ * html/DateTimeLocalInputType.h: Added.
+ (WebCore::DateTimeLocalInputType::DateTimeLocalInputType):
+ * html/EmailInputType.cpp: Added.
+ (WebCore::EmailInputType::create):
+ (WebCore::EmailInputType::formControlType):
+ * html/EmailInputType.h: Added.
+ (WebCore::EmailInputType::EmailInputType):
+ * html/FileInputType.cpp: Added.
+ (WebCore::FileInputType::create):
+ (WebCore::FileInputType::formControlType):
+ * html/FileInputType.h: Added.
+ (WebCore::FileInputType::FileInputType):
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::HTMLInputElement): Initialize m_inputType.
+ (WebCore::HTMLInputElement::patternMismatch): Delegate to InputType.
+ (WebCore::HTMLInputElement::updateType): Update m_inputType with new type.
+ (WebCore::HTMLInputElement::formControlType): Delegate to InputType.
+ (WebCore::HTMLInputElement::isTextField): ditto.
+ (WebCore::HTMLInputElement::isTextType): ditto.
+ * html/HTMLInputElement.h:
+ * html/HiddenInputType.cpp: Added.
+ (WebCore::HiddenInputType::create):
+ (WebCore::HiddenInputType::formControlType):
+ * html/HiddenInputType.h: Added.
+ (WebCore::HiddenInputType::HiddenInputType):
+ * html/ImageInputType.cpp: Added.
+ (WebCore::ImageInputType::create):
+ (WebCore::ImageInputType::formControlType):
+ * html/ImageInputType.h: Added.
+ (WebCore::ImageInputType::ImageInputType):
+ * html/InputType.cpp: Added.
+ (WebCore::createInputTypeFactoryMap):
+ (WebCore::InputType::create):
+ (WebCore::InputType::createText):
+ (WebCore::InputType::~InputType):
+ (WebCore::InputType::isTextField):
+ (WebCore::InputType::isTextType):
+ (WebCore::InputType::patternMismatch):
+ (WebCore::InputTypeNames::button):
+ (WebCore::InputTypeNames::checkbox):
+ (WebCore::InputTypeNames::color):
+ (WebCore::InputTypeNames::date):
+ (WebCore::InputTypeNames::datetime):
+ (WebCore::InputTypeNames::datetimelocal):
+ (WebCore::InputTypeNames::email):
+ (WebCore::InputTypeNames::file):
+ (WebCore::InputTypeNames::hidden):
+ (WebCore::InputTypeNames::image):
+ (WebCore::InputTypeNames::isindex):
+ (WebCore::InputTypeNames::month):
+ (WebCore::InputTypeNames::number):
+ (WebCore::InputTypeNames::password):
+ (WebCore::InputTypeNames::radio):
+ (WebCore::InputTypeNames::range):
+ (WebCore::InputTypeNames::reset):
+ (WebCore::InputTypeNames::search):
+ (WebCore::InputTypeNames::submit):
+ (WebCore::InputTypeNames::telephone):
+ (WebCore::InputTypeNames::text):
+ (WebCore::InputTypeNames::time):
+ (WebCore::InputTypeNames::url):
+ (WebCore::InputTypeNames::week):
+ * html/InputType.h: Added.
+ (WebCore::InputType::InputType):
+ (WebCore::InputType::element):
+ * html/IsIndexInputType.cpp: Added.
+ (WebCore::IsIndexInputType::create):
+ (WebCore::IsIndexInputType::formControlType):
+ * html/IsIndexInputType.h: Added.
+ (WebCore::IsIndexInputType::IsIndexInputType):
+ * html/MonthInputType.cpp: Added.
+ (WebCore::MonthInputType::create):
+ (WebCore::MonthInputType::formControlType):
+ * html/MonthInputType.h: Added.
+ (WebCore::MonthInputType::MonthInputType):
+ * html/NumberInputType.cpp: Added.
+ (WebCore::NumberInputType::create):
+ (WebCore::NumberInputType::formControlType):
+ * html/NumberInputType.h: Added.
+ (WebCore::NumberInputType::NumberInputType):
+ * html/PasswordInputType.cpp: Added.
+ (WebCore::PasswordInputType::create):
+ (WebCore::PasswordInputType::formControlType):
+ * html/PasswordInputType.h: Added.
+ (WebCore::PasswordInputType::PasswordInputType):
+ * html/RadioInputType.cpp: Added.
+ (WebCore::RadioInputType::create):
+ (WebCore::RadioInputType::formControlType):
+ * html/RadioInputType.h: Added.
+ (WebCore::RadioInputType::RadioInputType):
+ * html/RangeInputType.cpp: Added.
+ (WebCore::RangeInputType::create):
+ (WebCore::RangeInputType::formControlType):
+ * html/RangeInputType.h: Added.
+ (WebCore::RangeInputType::RangeInputType):
+ * html/ResetInputType.cpp: Added.
+ (WebCore::ResetInputType::create):
+ (WebCore::ResetInputType::formControlType):
+ * html/ResetInputType.h: Added.
+ (WebCore::ResetInputType::ResetInputType):
+ * html/SearchInputType.cpp: Added.
+ (WebCore::SearchInputType::create):
+ (WebCore::SearchInputType::formControlType):
+ * html/SearchInputType.h: Added.
+ (WebCore::SearchInputType::SearchInputType):
+ * html/SubmitInputType.cpp: Added.
+ (WebCore::SubmitInputType::create):
+ (WebCore::SubmitInputType::formControlType):
+ * html/SubmitInputType.h: Added.
+ (WebCore::SubmitInputType::SubmitInputType):
+ * html/TelephoneInputType.cpp: Added.
+ (WebCore::TelephoneInputType::create):
+ (WebCore::TelephoneInputType::formControlType):
+ * html/TelephoneInputType.h: Added.
+ (WebCore::TelephoneInputType::TelephoneInputType):
+ * html/TextFieldInputType.cpp: Added.
+ (WebCore::TextFieldInputType::isTextField):
+ * html/TextFieldInputType.h: Added.
+ (WebCore::TextFieldInputType::TextFieldInputType):
+ * html/TextInputType.cpp: Added.
+ (WebCore::TextInputType::create):
+ (WebCore::TextInputType::formControlType):
+ * html/TextInputType.h: Added.
+ (WebCore::TextInputType::TextInputType):
+ * html/TimeInputType.cpp: Added.
+ (WebCore::TimeInputType::create):
+ (WebCore::TimeInputType::formControlType):
+ * html/TimeInputType.h: Added.
+ (WebCore::TimeInputType::TimeInputType):
+ * html/URLInputType.cpp: Added.
+ (WebCore::URLInputType::create):
+ (WebCore::URLInputType::formControlType):
+ * html/URLInputType.h: Added.
+ (WebCore::URLInputType::URLInputType):
+ * html/WeekInputType.cpp: Added.
+ (WebCore::WeekInputType::create):
+ (WebCore::WeekInputType::formControlType):
+ * html/WeekInputType.h: Added.
+ (WebCore::WeekInputType::WeekInputType):
+
+2010-09-28 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46782, rename the top and bottom margin quirk getters/setters.
+
+ Also do a bit of cleanup for block flow roots. Make sure they don't try to propagate overhanging floats out
+ to ancestors.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlock):
+ (WebCore::RenderBlock::collapseMargins):
+ (WebCore::RenderBlock::setCollapsedBottomMargin):
+ (WebCore::RenderBlock::addOverhangingFloats):
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::RenderObject):
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::isMarginBeforeQuirk):
+ (WebCore::RenderObject::isMarginAfterQuirk):
+ (WebCore::RenderObject::setMarginBeforeQuirk):
+ (WebCore::RenderObject::setMarginAfterQuirk):
+
+2010-09-28 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46780
+
+ Rename the pos/neg/collapsed margin methods. Rename all the members of the RenderBlockRareData struct.
+ No logical changes. Just renames.
+
+ * editing/TextIterator.cpp:
+ (WebCore::shouldEmitExtraNewlineForNode):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::MarginInfo::MarginInfo):
+ (WebCore::RenderBlock::layoutBlock):
+ (WebCore::RenderBlock::collapseMargins):
+ (WebCore::RenderBlock::clearFloatsIfNeeded):
+ (WebCore::RenderBlock::estimateVerticalPosition):
+ (WebCore::RenderBlock::setCollapsedBottomMargin):
+ (WebCore::RenderBlock::layoutBlockChild):
+ (WebCore::RenderBlock::paintChildren):
+ (WebCore::RenderBlock::lowestPosition):
+ (WebCore::RenderBlock::setMaxMarginBeforeValues):
+ (WebCore::RenderBlock::setMaxMarginAfterValues):
+ (WebCore::RenderBlock::absoluteRects):
+ (WebCore::RenderBlock::absoluteQuads):
+ (WebCore::RenderBlock::rectWithOutlineForRepaint):
+ (WebCore::RenderBlock::addFocusRingRects):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::maxPosMarginBefore):
+ (WebCore::RenderBlock::maxNegMarginBefore):
+ (WebCore::RenderBlock::maxPosMarginAfter):
+ (WebCore::RenderBlock::maxNegMarginAfter):
+ (WebCore::RenderBlock::initMaxMarginValues):
+ (WebCore::RenderBlock::maxMarginBefore):
+ (WebCore::RenderBlock::maxMarginAfter):
+ (WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData):
+ (WebCore::RenderBlock::RenderBlockRareData::beforePosDefault):
+ (WebCore::RenderBlock::RenderBlockRareData::beforeNegDefault):
+ (WebCore::RenderBlock::RenderBlockRareData::afterPosDefault):
+ (WebCore::RenderBlock::RenderBlockRareData::afterNegDefault):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::computeLogicalHeight):
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::collapsedMarginBefore):
+ (WebCore::RenderBox::collapsedMarginAfter):
+ (WebCore::RenderBox::maxMarginBefore):
+ (WebCore::RenderBox::maxMarginAfter):
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::layoutBlock):
+
+2010-09-28 Kevin Ollivier <kevino@theolliviers.com>
+
+ [wx] wxMSW build fix. Don't use multiple inheritance in PopupMenuWx to avoid debug build
+ compiler error about ambiguity over which new override (wx's or FastAllocBase's) to use.
+
+ * platform/wx/PopupMenuWx.cpp:
+ (WebCore::PopupMenuEventHandler::PopupMenuEventHandler):
+ (WebCore::PopupMenuEventHandler::OnMenuItemSelected):
+ (WebCore::PopupMenuWx::PopupMenuWx):
+ (WebCore::PopupMenuWx::show):
+ * platform/wx/PopupMenuWx.h:
+
+2010-09-28 Xiaomei Ji <xji@chromium.org>
+
+ Reviewed by NOBODY (revert unsquashed git commits)
+
+ Revert change sets 68583 to 68590, which are un-squashed git-commits: Performance improvement for FontLinux regarding issue 46374.
+ https://bugs.webkit.org/show_bug.cgi?id=46374
+
+2010-09-28 Marc-Antoine Ruel <maruel@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ Split webcore_html off webcore_remaining.
+
+ webcore_remaining is still too large for certain 32 bits toolsets.
+ https://bugs.webkit.org/show_bug.cgi?id=46445
+
+ * WebCore.gyp/WebCore.gyp:
+
+2010-09-28 Jia Pu <jpu@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Delete and forward delete shouldn't start autocorrection panel timer.
+ https://bugs.webkit.org/show_bug.cgi?id=46679
+ <rdar://problem/8463917>
+
+ * editing/TypingCommand.cpp:
+ (WebCore::TypingCommand::markMisspellingsAfterTyping): Only start correction panel timer
+ when the editing command is InsertText.
+ (WebCore::TypingCommand::typingAddedToOpenCommand): Add an argument to pass in command type.
+
+ * editing/TypingCommand.h: Add an argument to typingAddedToOpenCommand().
+
+2010-09-28 Mihai Parparita <mihaip@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ No back/forward list entry added when submitting a form via an onclick handler inside a frame
+ https://bugs.webkit.org/show_bug.cgi?id=44140
+
+ Lock the back/forward list for JavaScript form submissions inside frames
+ only if they're not in response to user gestures.
+
+ Tests: fast/history/form-submit-in-frame-via-onclick.html
+ fast/history/form-submit-in-frame.html
+
+ * loader/RedirectScheduler.cpp:
+ (WebCore::RedirectScheduler::scheduleFormSubmission):
+
+2010-09-28 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Fix typo in previous checkin.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::MarginInfo::MarginInfo):
+
+2010-09-28 Nat Duca <nduca@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [chromium] invalidateRootLayerRect needs to schedule compositor
+ https://bugs.webkit.org/show_bug.cgi?id=46219
+
+ Update comments on LayerChromium commit/display functions to clarify
+ their limitations. Remove unused dirtying logic from
+ LayerRendererChromium.
+
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::setNeedsCommit):
+ (WebCore::LayerChromium::setNeedsDisplay):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::LayerRendererChromium):
+ (WebCore::LayerRendererChromium::present):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+
+2010-09-28 Jenn Braithwaite <jennb@chromium.org>
+
+ Reviewed by Dmitry Titov.
+
+ Added oldPage param to FrameLoaderClient::didTransferChildFrameToNewDocument.
+ https://bugs.webkit.org/show_bug.cgi?id=46663
+
+ No new tests. API addition only. Will be used in separate patch.
+
+ * loader/EmptyClients.h:
+ (WebCore::EmptyFrameLoaderClient::didTransferChildFrameToNewDocument):
+ * loader/FrameLoaderClient.h:
+ * page/Frame.cpp:
+ (WebCore::Frame::transferChildFrameToNewDocument):
+ Pass former page to didTransferChildFrameToNewDocument.
+
+2010-09-28 W. James MacLean <wjmaclean@chromium.org>
+
+ Reviewed by James Robinson.
+
+ Scaled Resized images are blurred when sent to Skia
+ https://bugs.webkit.org/show_bug.cgi?id=42370
+
+ This patch modifies ImageSkia.cpp to fix the calculation of resampled
+ bitmap sizes so as to include the transform matrix of the canvas.
+
+ Test: svg/custom/image-rescale.svg
+
+ * platform/graphics/skia/ImageSkia.cpp:
+ (WebCore::computeResamplingMode):
+ (WebCore::drawResampledBitmap):
+
+2010-09-28 James Robinson <jamesr@chromium.org>
+
+ [chromium] Decrease warning level on chromium linux temporarily. This is causing failures on some bots
+
+ * WebCore.gyp/WebCore.gyp:
+
+2010-09-27 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ [chromium] Increase warning level for chromium linux build
+ https://bugs.webkit.org/show_bug.cgi?id=46687
+
+ This sets the chromium_code gyp variable to 1 for the chromium
+ linux WebCore build and fixes the warnings that exposes. This
+ matches the chromium mac build's compiler settings more closely
+ and should cut down on the number of patches that break mac but
+ compile cleaning on linux.
+
+ * WebCore.gyp/WebCore.gyp:
+ * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
+ (WebCore::ScrollbarThemeChromiumLinux::paintButton):
+ * platform/graphics/chromium/FontLinux.cpp:
+ (WebCore::TextRunWalker::nextScriptRun):
+ (WebCore::TextRunWalker::getTextRun):
+ (WebCore::TextRunWalker::getNormalizedTextRun):
+ (WebCore::TextRunWalker::setGlyphXPositions):
+ (WebCore::glyphIndexForXPositionInScriptRun):
+ (WebCore::Font::offsetForPositionForComplexText):
+ (WebCore::Font::selectionRectForComplexText):
+ * platform/graphics/chromium/HarfbuzzSkia.cpp:
+ (WebCore::getOutlinePoint):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::updateRootLayerTextureRect):
+ * platform/graphics/gpu/Texture.cpp:
+ (WebCore::copySubRect):
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ (WebCore::PlatformContextSkia::readbackHardwareToSoftware):
+ * platform/image-decoders/gif/GIFImageDecoder.cpp:
+ (WebCore::GIFImageDecoder::setSize):
+ * platform/image-decoders/gif/GIFImageDecoder.h:
+
+2010-09-28 Stephen White <senorblanco@chromium.org>
+
+ Reviewed by Csaba Osztrogonác.
+
+ Fix for r68521 to build on VS2008/Release.
+
+ * html/DocTypeStrings.gperf:
+ Don't emit "#include <string.h>" here, since we're inside a namespace.
+ * make-hash-tools.pl:
+ Emit #include <string.h> manually where required.
+ * platform/ColorData.gperf:
+ Don't emit "#include <string.h>" here, since we're inside a namespace.
+
+2010-09-28 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Right now we have two properties named margin-top-collapse and margin-after-collapse. They are proprietary and only used by Safari RSS.
+
+ I am adding margin-before-collapse and margin-after-collapse and just aliasing the old properties to the new ones.
+ This way we have some names that are directionally independent.
+
+ Note that these properties aren't like other directional properties. They are about what to do with the before side and after side of
+ your block's margins when collapsing with adjacent blocks. The meaning of before/after depend on the block-flow directionality
+ of the containing block.
+
+ Computed style tests all changed and the remove-shorthand.html test covers manipulation of the shorthand.
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ * css/CSSPropertyLonghand.cpp:
+ (WebCore::initShorthandMap):
+ * css/CSSPropertyNames.in:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::MarginInfo::MarginInfo):
+ (WebCore::RenderBlock::isSelfCollapsingBlock):
+ (WebCore::RenderBlock::collapseMargins):
+ (WebCore::RenderBlock::layoutBlockChild):
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::diff):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::marginBeforeCollapse):
+ (WebCore::InheritedFlags::marginAfterCollapse):
+ (WebCore::InheritedFlags::setMarginBeforeCollapse):
+ (WebCore::InheritedFlags::setMarginAfterCollapse):
+ (WebCore::InheritedFlags::initialMarginBeforeCollapse):
+ (WebCore::InheritedFlags::initialMarginAfterCollapse):
+ * rendering/style/StyleRareNonInheritedData.cpp:
+ (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
+ (WebCore::StyleRareNonInheritedData::operator==):
+ * rendering/style/StyleRareNonInheritedData.h:
+
+2010-09-28 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Gustavo Noronha Silva.
+
+ [Cairo] FreeType fonts should obey FontConfig hinting/anti-aliasing settings
+ https://bugs.webkit.org/show_bug.cgi?id=46740
+
+ When creating a font from a FontConfig pattern, use the FontConfig pattern's
+ hinting and anti-aliasing settings. This follows the Chromium Linux approach
+ of having FontConfig settings take precedence over GTK+ settings, as GTK+
+ settings cannot be configured per-font and per-font-size.
+
+ Test: platform/gtk/fonts/fontconfig-aliasing-settings.html
+
+ * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
+ (WebCore::convertFontConfigSubpixelOrder): Added this helper which converts
+ the FontConfig subpixel order into the cairo equivalent.
+ (WebCore::convertFontConfigHintStyle): Added this helper which converts the
+ FontConfig hint style into the cairo equivalent.
+ (WebCore::setCairoFontOptionsFromFontConfigPattern): Added this helper which
+ reads the font rendering settings from a pattern and translates them into the
+ appropriate cairo_font_options_t settings.
+ (WebCore::FontPlatformData::FontPlatformData): When creating a font from a
+ FontConfig pattern use setCairoFontOptionsFromFontConfigPattern to get the
+ appropriate rendering options for the font.
+
+2010-09-28 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Darin Adler and Dave Hyatt.
+
+ Vertical scroll bar on apple.com is too short with WebKit2
+ <rdar://problem/8379230>
+ https://bugs.webkit.org/show_bug.cgi?id=46739
+
+ Adds a function to recalculate the scrollbars to take advantage of
+ a changed window re-sizer rect.
+
+ * WebCore.exp.in:
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::windowResizerRectChanged):
+ * platform/ScrollView.h:
+
+2010-09-28 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46750
+
+ Rename the MarginInfo members and functions to be block-flow independent.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::MarginInfo::MarginInfo):
+ (WebCore::RenderBlock::adjustPositionedBlock):
+ (WebCore::RenderBlock::adjustFloatingBlock):
+ (WebCore::RenderBlock::collapseMargins):
+ (WebCore::RenderBlock::clearFloatsIfNeeded):
+ (WebCore::RenderBlock::estimateVerticalPosition):
+ (WebCore::RenderBlock::setCollapsedBottomMargin):
+ (WebCore::RenderBlock::handleBottomOfBlock):
+ (WebCore::RenderBlock::layoutBlockChild):
+ (WebCore::RenderBlock::applyAfterBreak):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::MarginInfo::setAtBeforeSideOfBlock):
+ (WebCore::RenderBlock::MarginInfo::setAtAfterSideOfBlock):
+ (WebCore::RenderBlock::MarginInfo::setMarginBeforeQuirk):
+ (WebCore::RenderBlock::MarginInfo::setMarginAfterQuirk):
+ (WebCore::RenderBlock::MarginInfo::setDeterminedMarginBeforeQuirk):
+ (WebCore::RenderBlock::MarginInfo::atBeforeSideOfBlock):
+ (WebCore::RenderBlock::MarginInfo::canCollapseWithMarginBefore):
+ (WebCore::RenderBlock::MarginInfo::canCollapseWithMarginAfter):
+ (WebCore::RenderBlock::MarginInfo::canCollapseMarginBeforeWithChildren):
+ (WebCore::RenderBlock::MarginInfo::canCollapseMarginAfterWithChildren):
+ (WebCore::RenderBlock::MarginInfo::determinedMarginBeforeQuirk):
+ (WebCore::RenderBlock::MarginInfo::marginBeforeQuirk):
+ (WebCore::RenderBlock::MarginInfo::marginAfterQuirk):
+
+2010-09-28 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Improved the handling of soft hyphens in Copy and Find operations, addressing the following
+ bugs:
+
+ <rdar://problem/7938878> Soft hyphenation and the clipboard
+ https://bugs.webkit.org/show_bug.cgi?id=11154
+
+ window.getSelection().toString() breaks soft hyphen &shy;
+ https://bugs.webkit.org/show_bug.cgi?id=26774
+
+ <rdar://problem/5640505> soft hyphen breaks search function
+ https://bugs.webkit.org/show_bug.cgi?id=16675
+
+ Test: fast/text/find-soft-hyphen.html
+
+ Changed line layout code to not skip over soft hyphens but rather include them in the text
+ boxes. Changed font code to render the soft hyphen character as a zero width space, so that
+ the former change will not affect rendering of soft hyphens in the middle of the line. Also
+ changed line layout code to mark text boxes where hyphenation occurred due to a soft hyphen
+ as hyphenated, so that the hyphen string specified in CSS will be appended to them.
+
+ Not omitting the soft hyphens from the text boxes makes the text iterator emit them, which
+ solves the Copy and plain-text conversion issues. Previously, the iterator would emit a space
+ to account for non-rendered characters between adjacent boxes, which was wrong in this case.
+
+ To make Find work, soft hyphens are folded into 0, which is ignorable in the collation used
+ for Find.
+
+ * editing/TextIterator.cpp:
+ (WebCore::foldQuoteMarkOrSoftHyphen): Renamed foldQuoteMark() to this and added folding of
+ soft hyphen to 0.
+ (WebCore::foldQuoteMarksAndSoftHyphens): Renamed foldQuoteMarks() to thid and added folding
+ of soft hyphen to 0.
+ (WebCore::SearchBuffer::SearchBuffer): Updated for renames.
+ (WebCore::SearchBuffer::append): Ditto.
+ * platform/graphics/Font.h:
+ (WebCore::Font::treatAsSpace): Replaced number literal with name.
+ (WebCore::Font::treatAsZeroWidthSpace): Added softHyphen.
+ * platform/graphics/GlyphPageTreeNode.cpp:
+ (WebCore::GlyphPageTreeNode::initializePage): Get the zero width space glyph for soft hyphen.
+ * platform/graphics/mac/ComplexTextController.cpp:
+ (WebCore::ComplexTextController::collectComplexTextRuns): Removed special handling that made
+ a trailing soft hyphen render as hyphen-minus. All soft hyphens are now rendered as zero width
+ spaces, and where a line break actually occurs at a soft hyphen, rendering code appends the
+ CSS-specified hyphenate character to the text run that is passed to us here.
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::chopMidpointsAt): Removed this function, which was only used for skipping over soft
+ hyphens.
+ (WebCore::checkMidpoints): Removed code related to skipping over soft hyphens.
+ (WebCore::RenderBlock::findNextLineBreak): Removed code to skip over soft hyphens. Ignore
+ a line break opportunity at a soft hyphen if the style specifies 'hyphens: none'. Set
+ 'hyphenated' to true if a line break occurs at a soft hyphen.
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::hyphenString): Changed the assertion to allow querying for the hyphen
+ string for 'hyphens: manual'.
+
+2010-09-28 Martin Robinson <mrobinson@igalia.com>
+
+ More GTK+ build fixes after r68521.
+
+ * GNUmakefile.am: Added proper dependency tracking for some
+ new autogenerated files.
+
+2010-09-28 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Text drawing taints GraphicsContext's QPainter::pen()
+ https://bugs.webkit.org/show_bug.cgi?id=46744
+
+ Test: fast/canvas/canvas-style-intact-after-text.html
+
+ * platform/graphics/qt/FontQt.cpp:
+ (WebCore::drawTextCommon): Make sure the QPainter's pen is
+ restored after filling and/or stroking text.
+
+2010-09-28 Jia Pu <jpu@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Autocorrection panel is shown at incorrect location when WebView is scrolled.
+ https://bugs.webkit.org/show_bug.cgi?id=46531
+ <rdar://problem/8455376>
+
+ * dom/Range.h: Make getBorderAndTextQuads() public so that it can be used by Editor.
+ * editing/Editor.cpp:
+ (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Replaced call to textQuads()
+ with getBorderAndTextQuads().
+
+2010-09-28 Andrei Popescu <andreip@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ IDBRequest should not have a method called abort.
+ https://bugs.webkit.org/show_bug.cgi?id=46720
+
+ IDBRequest::abort() was dropped from the spec following discussion in
+ http://www.w3.org/Bugs/Public/show_bug.cgi?id=10165
+
+ * storage/IDBRequest.cpp:
+ (WebCore::IDBRequest::IDBRequest):
+ (WebCore::IDBRequest::~IDBRequest):
+ (WebCore::IDBRequest::resetReadyState):
+ (WebCore::IDBRequest::timerFired):
+ (WebCore::IDBRequest::scheduleEvent):
+ * storage/IDBRequest.h:
+ * storage/IDBRequest.idl:
+
+2010-09-28 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ CrashTracer: 1,382 crashes in Safari at com.apple.WebCore: WebCore::VisiblePosition::canonicalPosition + 78
+ https://bugs.webkit.org/show_bug.cgi?id=45927
+
+ AXTextMarkers store pointers to Nodes without any retain or reference. If a Node is deallocated and then
+ a client tries to use a text marker that references that node, it leads to this crash.
+
+ The AXObjectCache instance now keeps a HashSet of Node's being used. When a node becomes deallocated, it removes itself
+ from the HashSet. When creating a VisiblePosition from an AXTextMarker, the cache can then check if the node is valid
+ before proceeding.
+
+ Test: platform/mac/accessibility/crash-invalid-text-marker-node.html
+
+ * accessibility/AXObjectCache.cpp:
+ (WebCore::AXObjectCache::visiblePositionForTextMarkerData):
+ (WebCore::AXObjectCache::textMarkerDataForVisiblePosition):
+ Modify to check whether a node is valid before proceeeding.
+ * accessibility/AXObjectCache.h:
+ (WebCore::AXObjectCache::setNodeInUse):
+ (WebCore::AXObjectCache::removeNodeForUse):
+ (WebCore::AXObjectCache::isNodeInUse):
+ Methods for managing whether a node is in use by text markers.
+ * accessibility/mac/AccessibilityObjectWrapper.mm:
+ (textMarkerForVisiblePosition):
+ (-[AccessibilityObjectWrapper textMarkerForVisiblePosition:]):
+ (visiblePositionForTextMarker):
+ (-[AccessibilityObjectWrapper visiblePositionForTextMarker:]):
+ (visiblePositionForStartOfTextMarkerRange):
+ (visiblePositionForEndOfTextMarkerRange):
+ (-[AccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]):
+ (textMarkerRangeFromVisiblePositions):
+ (-[AccessibilityObjectWrapper textMarkerRangeFromVisiblePositions:endPosition:]):
+ (-[AccessibilityObjectWrapper visiblePositionRangeForTextMarkerRange:]):
+ (-[AccessibilityObjectWrapper textMarkerRangeForSelection]):
+ (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
+ (-[AccessibilityObjectWrapper doAXAttributedStringForRange:]):
+ (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
+ Change these calls so that the axObjectCache() can be passed in to create the visible position.
+ * dom/Document.cpp:
+ (WebCore::Document::axObjectCacheExists):
+ * dom/Document.h:
+ * dom/Node.cpp:
+ (WebCore::Node::~Node):
+ If accessibility is enabled, inform the axObjectCache() that this node is disappearing.
+
+2010-09-28 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add AudioDestinationNode files
+ https://bugs.webkit.org/show_bug.cgi?id=45009
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/AudioDestinationNode.cpp: Added.
+ (WebCore::AudioDestinationNode::AudioDestinationNode):
+ (WebCore::AudioDestinationNode::~AudioDestinationNode):
+ (WebCore::AudioDestinationNode::initialize):
+ (WebCore::AudioDestinationNode::uninitialize):
+ (WebCore::AudioDestinationNode::provideInput):
+ * webaudio/AudioDestinationNode.h: Added.
+ (WebCore::AudioDestinationNode::create):
+ (WebCore::AudioDestinationNode::process):
+ (WebCore::AudioDestinationNode::reset):
+ (WebCore::AudioDestinationNode::currentTime):
+ (WebCore::AudioDestinationNode::sampleRate):
+ (WebCore::AudioDestinationNode::numberOfChannels):
+ * webaudio/AudioDestinationNode.idl: Added.
+
+2010-09-28 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ audio engine: audio output classes
+ https://bugs.webkit.org/show_bug.cgi?id=34716
+
+ No new tests since audio API is not yet implemented.
+
+ * platform/audio/AudioDestination.h: Added.
+ (WebCore::AudioDestination::~AudioDestination):
+ * platform/audio/mac/AudioDestinationMac.cpp: Added.
+ (WebCore::AudioDestination::create):
+ (WebCore::AudioDestination::hardwareSampleRate):
+ (WebCore::AudioDestinationMac::AudioDestinationMac):
+ (WebCore::AudioDestinationMac::~AudioDestinationMac):
+ (WebCore::AudioDestinationMac::configure):
+ (WebCore::AudioDestinationMac::start):
+ (WebCore::AudioDestinationMac::stop):
+ (WebCore::AudioDestinationMac::render):
+ (WebCore::AudioDestinationMac::inputProc):
+ * platform/audio/mac/AudioDestinationMac.h: Added.
+ (WebCore::AudioDestinationMac::isPlaying):
+ (WebCore::AudioDestinationMac::sampleRate):
+
+2010-09-28 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add AudioGain files
+ https://bugs.webkit.org/show_bug.cgi?id=46285
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/AudioGain.h: Added.
+ (WebCore::AudioGain::create):
+ (WebCore::AudioGain::AudioGain):
+ * webaudio/AudioGain.idl: Added.
+
+2010-09-28 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Fix possible illegal float values in AudioParam
+ https://bugs.webkit.org/show_bug.cgi?id=46681
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/AudioParam.h:
+ (WebCore::AudioParam::setValue):
+
+2010-09-28 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
+
+ Reviewed by Simon Hausmann.
+
+ [Qt] Rename member variable in MediaPlayerPrivateQt
+
+ * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
+ * platform/graphics/qt/MediaPlayerPrivateQt.h:
+
+2010-09-28 Andras Becsi <abecsi@webkit.org>
+
+ [Gtk] Build fix. Remove leftover trailing backslash.
+
+ * GNUmakefile.am:
+
+2010-09-28 Andras Becsi <abecsi@webkit.org>
+
+ Unreviewed.
+
+ [Gtk] Build fix after r68521
+
+ No new tests needed.
+
+ * GNUmakefile.am:
+
+2010-09-28 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Rename MediaPlayerPrivate to MediaPlayerPrivateQt/Phonon
+
+ https://bugs.webkit.org/show_bug.cgi?id=36663
+
+ * platform/graphics/MediaPlayer.cpp:
+ * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
+ * platform/graphics/qt/MediaPlayerPrivateQt.h:
+ * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
+ * platform/graphics/qt/MediaPlayerPrivatePhonon.h:
+
+2010-09-28 Andras Becsi <abecsi@webkit.org>
+
+ Reviewed by Csaba Osztrogonác.
+
+ Undefined reference errors when linking due to gperf and inlining.
+ webkit.org/b/29244
+
+ EFL CMake changes by Leandro Pereira <leandro@profusion.mobi>
+
+ Refactor gperf code generation and usage to fix the debug build with gcc>4.4.
+ Hitherto gperf generated C code, these files were included in multiple C++ files across WebCore
+ to access the functionality provided. This resulted in debug build failure with newer gcc versions
+ because of a behaviour change of gcc, which disables C style inlining in debug mode.
+ The make-hash-tools.pl script lets gperf generate C++ code for all gperf files now, which are compiled
+ in their own compilation unit.
+ The functionality provided by the generated code is wrapped behind HashTools.h, so there is no need
+ for multiple inclusions of generated C files to access these functions.
+
+ No new tests needed.
+
+ * CMakeLists.txt:
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.pri:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * css/CSSParser.cpp:
+ * css/makeprop.pl:
+ * css/makevalues.pl:
+ * html/DocTypeStrings.gperf:
+ * html/HTMLDocument.cpp:
+ * make-hash-tools.pl:
+ * platform/ColorData.gperf:
+ * platform/graphics/Color.cpp:
+
+2010-09-28 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Canvas: Crash when setting a font with size in 'ex' units
+ https://bugs.webkit.org/show_bug.cgi?id=46538
+
+ update() the style's font after setting the style's font description.
+ Needed because CSSPrimitiveValue::computeLengthDouble() later assumes
+ that the style's font is properly initialized (for xHeight().)
+
+ Fixes crash on IE test center's canvas-text-font-002 test.
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::setFont):
+
+2010-09-28 Benjamin Poulain <benjamin.poulain@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Remove support for Qt 4.5
+ https://bugs.webkit.org/show_bug.cgi?id=46718
+
+ Remove the code for versions of Qt prior to 4.6.
+
+ * WebCore.pro:
+ * features.pri:
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
+ (WebCore::QNetworkReplyHandler::start):
+ * platform/network/qt/ResourceRequestQt.cpp:
+ (WebCore::ResourceRequest::toNetworkRequest):
+ * platform/qt/QWebPageClient.h:
+
+2010-09-28 Kent Tamura <tkent@chromium.org>
+
+ Unreviewed, run sort-Xcode-project-file
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2010-09-28 Huahui Wu <mediadependent@gmail.com>
+
+ Reviewed by Steve Block.
+
+ Add multi-touch for Android.
+ https://bugs.webkit.org/show_bug.cgi?id=45221
+
+ The Android touch event used to take one point as the touch point,
+ it's now changed to a vector of points to support multi-touch.
+
+ Tests: fast/events/touch/basic-multi-touch-events-limited.html
+ fast/events/touch/touch-target-limited.html
+
+ * platform/PlatformTouchEvent.h:
+ * platform/PlatformTouchPoint.h:
+ * platform/android/PlatformTouchEventAndroid.cpp:
+ (WebCore::PlatformTouchEvent::PlatformTouchEvent):
+ * platform/android/PlatformTouchPointAndroid.cpp:
+ (WebCore::PlatformTouchPoint::PlatformTouchPoint):
+
+2010-09-27 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Alexey Proskuryakov.
+
+ Fix assertion failure in a case that the dirty flag of a textarea element is changed
+ https://bugs.webkit.org/show_bug.cgi?id=45681
+
+ We need to call setNeedsValidityCheck() after updating m_isDirty.
+
+ Test: fast/forms/textarea-checkValidity-crash.html
+
+ * html/HTMLTextAreaElement.cpp:
+ (WebCore::HTMLTextAreaElement::setValue):
+ (WebCore::HTMLTextAreaElement::setNonDirtyValue):
+ (WebCore::HTMLTextAreaElement::setValueCommon):
+ * html/HTMLTextAreaElement.h:
+
+2010-09-27 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Dan Bernstein.
+
+ When the block RunIn is destroyed, its line box tree is not deleted. As a result, it
+ gets later used during dirtying of inline text boxes step where this deleted parent is
+ accessed. The fix is to delete the line box tree before destroying the runin block.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46376
+
+ Test: fast/text/dirty-inline-textbox-crash.html
+
+ * rendering/RenderText.cpp:
+ (WebCore::RenderText::dirtyLineBoxes):
+
+2010-09-27 Eric Uhrhane <ericu@chromium.org>
+
+ Reviewed by David Levin.
+
+ Fix event sequencing in FileWriter
+ https://bugs.webkit.org/show_bug.cgi?id=46544
+
+ Only set readyState to DONE when we're about to send the last progress
+ event associated with an operation. Make sure all progress events come
+ from backend calls, and aren't ever fired synchronously in response to
+ user JS method calls.
+
+ No new tests, as none of this is fully implemented yet.
+
+ * fileapi/FileWriter.cpp:
+ (WebCore::FileWriter::write):
+ (WebCore::FileWriter::truncate):
+ (WebCore::FileWriter::abort):
+ (WebCore::FileWriter::didWrite):
+ (WebCore::FileWriter::didTruncate):
+ (WebCore::FileWriter::didFail):
+
+2010-09-27 Chris Rogers <crogers@google.com>
+
+ Reviewed by James Robinson.
+
+ Add HRTFDatabase files
+ https://bugs.webkit.org/show_bug.cgi?id=46233
+
+ No new tests since audio API is not yet implemented.
+
+ * platform/audio/HRTFDatabase.cpp: Added.
+ (WebCore::HRTFDatabase::create):
+ (WebCore::HRTFDatabase::HRTFDatabase):
+ (WebCore::HRTFDatabase::getKernelsFromAzimuthElevation):
+ (WebCore::HRTFDatabase::indexFromElevationAngle):
+ * platform/audio/HRTFDatabase.h: Added.
+ (WebCore::HRTFDatabase::numberOfAzimuths):
+ (WebCore::HRTFDatabase::sampleRate):
+
+2010-09-27 Alpha Lam <hclam@chromium.org>
+
+ Build fix. Not reviewed.
+
+ Move constant definitions to VideoLayerChromium.cpp.
+ A proper fix should come later.
+
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+
+2010-09-23 Antonio Gomes <agomes@rim.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Make Document::nodesFromRect more flexible
+ https://bugs.webkit.org/show_bug.cgi?id=46336
+
+ The patch changes the API for the Document::nodesFromRect() method as follows:
+
+ from
+ - RefPtf<NodeList> nodesFromRect(int x, int y, unsigned horizontalPadding, unsigned verticalPadding, bool ignoreClipping)
+ to
+ - RefPtf<NodeList> nodesFromRect(int x, int y, unsigned topPadding, unsigned rightPadding, unsigned bottomPadding,
+ unsigned leftPadding, bool ignoreClipping)
+
+ Previously the method was receiving as parameter horizontal and vertical padding values.
+ In practice, the horizontal padding was being used to expand a given center point in both
+ right and left directions, while vertical padding was expanding it to the top and bottom directions.
+
+ Although this design makes it possible to improve the touch experience on mobile devices
+ (Document::nodesFromRect exposes the rect based hit testing system), empirical experiments
+ showed that, specially in capacitive touch screens, users tend to tap below elements. So
+ for even more accurate results (which means here the possibility of pleasant tapping experience),
+ it makes sense to use a region that is offset more above the touch point, favoring elements
+ above the touch point.
+
+ The patch basically implements that, increasing the API flexible and power by making it possible
+ to specify different padding values for each direction in a given orientation.
+
+ Changes were made accordingly to the HitTestResult, RenderLayer, RenderImage and RenderLineBoxList
+ classes.
+
+ WebCore:
+
+ * WebCore.exp.in:
+ * dom/Document.h: API adjustment.
+ * dom/Document.idl: Ditto.
+ * dom/Document.cpp: API adjustment and method body implementation accordingly.
+ (WebCore::Document::nodesFromRect):
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::hitTestResultAtPoint): For simplicity, I did not change the signature
+ but the way the padding value passed in as parameter is being used to construct a HitTestResult.
+ * rendering/HitTestResult.cpp: Changed the rect-based bits from using IntSize (padding) to separated paddings for each direction.
+ (WebCore::HitTestResult::HitTestResult): Ditto.
+ (WebCore::HitTestResult::operator=): Ditto.
+ (WebCore::HitTestResult::rectFromPoint): Ditto.
+ * rendering/HitTestResult.h:
+ (WebCore::HitTestResult::topPadding): getter for the top padding.
+ (WebCore::HitTestResult::rightPadding): getter for the right padding.
+ (WebCore::HitTestResult::bottomPadding): getter for the bottom padding.
+ (WebCore::HitTestResult::leftPadding): getter for the left padding.
+ (WebCore::HitTestResult::rectFromPoint): Added a static method that given a center point and padding values for each direction,
+ returns the rect that is going to be used in WebCore's hit testing processing.
+ * rendering/RenderImage.cpp: Changed the rect-based bits from using IntSize (padding) to separated paddings for each direction.
+ (WebCore::RenderImage::nodeAtPoint): Ditto.
+ * rendering/RenderLayer.cpp: Ditto.
+ (WebCore::RenderLayer::hitTestLayer): Ditto.
+ (WebCore::RenderLayer::hitTestList): Ditto.
+ * rendering/RenderLineBoxList.cpp: Ditto.
+ (WebCore::RenderLineBoxList::hitTest): Ditto.
+
+2010-09-27 Chris Rogers <crogers@google.com>
+
+ Reviewed by James Robinson.
+
+ Add HRTFDatabaseLoader files
+ https://bugs.webkit.org/show_bug.cgi?id=46234
+
+ No new tests since audio API is not yet implemented.
+
+ * platform/audio/HRTFDatabaseLoader.cpp: Added.
+ (WebCore::HRTFDatabaseLoader::createAndLoadAsynchronouslyIfNecessary):
+ (WebCore::HRTFDatabaseLoader::HRTFDatabaseLoader):
+ (WebCore::HRTFDatabaseLoader::~HRTFDatabaseLoader):
+ (WebCore::databaseLoaderEntry):
+ (WebCore::HRTFDatabaseLoader::load):
+ (WebCore::HRTFDatabaseLoader::loadAsynchronously):
+ (WebCore::HRTFDatabaseLoader::isLoaded):
+ (WebCore::HRTFDatabaseLoader::defaultHRTFDatabase):
+ * platform/audio/HRTFDatabaseLoader.h: Added.
+ (WebCore::HRTFDatabaseLoader::database):
+ (WebCore::HRTFDatabaseLoader::databaseSampleRate):
+
+2010-09-27 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ queryCommandState with justifyCenter, justifyLeft, and justifyRight always return false
+ https://bugs.webkit.org/show_bug.cgi?id=45910
+
+ Implemented queryCommandState for justifyCenter, justifyLeft, and justifyRight commands.
+ Added getTextAlignment to convert -webkit-center, -webkit-left, and -webkit-right to
+ center, left, and right respectively because they can be treated equally for editing purposes.
+
+ Test: editing/execCommand/query-text-alignment.html
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::getTextAlignment): Added.
+ (WebCore::getPropertiesNotIn): Uses getTextAlignment.
+ * editing/EditorCommand.cpp:
+ (WebCore::stateJustifyCenter): Added.
+ (WebCore::stateJustifyLeft): Added.
+ (WebCore::stateJustifyRight): Added.
+ (WebCore::createCommandMap): Refers to stateJustifyCenter, stateJustifyLeft, and stateJustifyRight.
+
+2010-09-27 Alpha Lam <hclam@chromium.org>
+
+ Unreviewed. Build fix.
+
+ Reorder member declarations and fix other warnings.
+
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+ (WebCore::VideoLayerChromium::VideoLayerChromium):
+ (WebCore::VideoLayerChromium::~VideoLayerChromium):
+ (WebCore::VideoLayerChromium::updateContents):
+ (WebCore::VideoLayerChromium::determineTextureFormat):
+ (WebCore::VideoLayerChromium::allocateTexturesIfNeeded):
+ * platform/graphics/chromium/VideoLayerChromium.h:
+
+2010-09-27 Kenneth Russell <kbr@google.com>
+
+ Unreviewed, Qt build fix. Stub out CanvasRenderingContext::checkOrigin(const HTMLVideoElement*)
+ on platforms that don't support video after r68460.
+
+ * html/canvas/CanvasRenderingContext.cpp:
+ (WebCore::CanvasRenderingContext::checkOrigin):
+
+2010-09-27 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ CrashTracer: 1,803 crashes in Safari at com.apple.WebCore: -[AccessibilityObjectWrapper accessibilityIsIgnored] + 56
+ https://bugs.webkit.org/show_bug.cgi?id=46662
+
+ Before calling updateBackingStore(), the wrapper object needs to be retained, lest it be invalidated during
+ the updateBackingStore call. This consolidates all calls to updateBackingStore().
+
+ Test: platform/mac/accessibility/removing-textarea-after-edit-crash.html
+
+ * accessibility/mac/AXObjectCacheMac.mm:
+ (WebCore::AXObjectCache::postPlatformNotification):
+ Use an ASSERT here to catch the crash because DRT won't cause AppKit to post notifications.
+ * accessibility/mac/AccessibilityObjectWrapper.mm:
+ (-[AccessibilityObjectWrapper prepareAccessibilityMethod]):
+ (-[AccessibilityObjectWrapper accessibilityActionNames]):
+ (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
+ (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
+ (-[AccessibilityObjectWrapper accessibilityFocusedUIElement]):
+ (-[AccessibilityObjectWrapper accessibilityHitTest:]):
+ (-[AccessibilityObjectWrapper accessibilityIsAttributeSettable:]):
+ (-[AccessibilityObjectWrapper accessibilityIsIgnored]):
+ (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
+ (-[AccessibilityObjectWrapper accessibilityPerformPressAction]):
+ (-[AccessibilityObjectWrapper accessibilityPerformIncrementAction]):
+ (-[AccessibilityObjectWrapper accessibilityPerformDecrementAction]):
+ (-[AccessibilityObjectWrapper accessibilityPerformAction:]):
+ (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
+ (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
+ (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]):
+ (-[AccessibilityObjectWrapper accessibilityArrayAttributeCount:]):
+ (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
+
+2010-09-27 Adrienne Walker <enne@google.com>
+
+ Reviewed by Adam Barth.
+
+ WebGL's readPixels doesn't respect origin-clean flag
+
+ Push CanvasRenderingContext2D checkOrigin logic into base class so it can be shared between different kinds of canvas contexts.
+ https://bugs.webkit.org/show_bug.cgi?id=45718
+
+ Test: LayoutTests/http/tests/canvas/webgl/origin-clean-conformance.html
+
+ * html/canvas/CanvasRenderingContext.cpp:
+ (WebCore::CanvasRenderingContext::checkOrigin):
+ * html/canvas/CanvasRenderingContext.h:
+ (WebCore::CanvasRenderingContext::~CanvasRenderingContext):
+ (WebCore::CanvasRenderingContext::canvas):
+ (WebCore::CanvasRenderingContext::is2d):
+ (WebCore::CanvasRenderingContext::is3d):
+ (WebCore::CanvasRenderingContext::isAccelerated):
+ (WebCore::CanvasRenderingContext::paintRenderingResultsToCanvas):
+ (WebCore::CanvasRenderingContext::paintsIntoCanvasBuffer):
+ (WebCore::CanvasRenderingContext::platformLayer):
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::setStrokeStyle):
+ (WebCore::CanvasRenderingContext2D::setFillStyle):
+ (WebCore::CanvasRenderingContext2D::drawImage):
+ (WebCore::CanvasRenderingContext2D::drawImageFromRect):
+ * html/canvas/CanvasRenderingContext2D.h:
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::readPixels):
+ (WebCore::WebGLRenderingContext::texImage2D):
+ (WebCore::WebGLRenderingContext::videoFrameToImage):
+ (WebCore::WebGLRenderingContext::texSubImage2D):
+ * html/canvas/WebGLRenderingContext.h:
+ * html/canvas/WebGLRenderingContext.idl:
+
+2010-09-27 Darin Adler <darin@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ REGRESSION (r68054): Buttons no longer render at correct sizes
+ https://bugs.webkit.org/show_bug.cgi?id=46513
+
+ Test: fast/forms/input-button-sizes.html
+
+ The setUpButtonCell function was running only once, but needed to run every time
+ through the button function.
+
+ * platform/mac/ThemeMac.mm:
+ (WebCore::leakButtonCell): Added. Separate one-time initialization code.
+ (WebCore::setUpButtonCell): Removed the first-time initialization part of this function.
+ (WebCore::button): Merged the three functions back into one.
+
+2010-09-27 Victoria Kirst <vrk@google.com>
+
+ Reviewed by James Robinson.
+
+ Modifies VideoLayerChromium to do YUV to RGB color conversion in the
+ GPU. Also adds support for RGBA video frame formats, though this code
+ path is currently never run because the video frames are in YV12
+ format.
+ https://bugs.webkit.org/show_bug.cgi?id=45069
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::initializeSharedObjects):
+ (WebCore::LayerRendererChromium::cleanupSharedObjects):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ (WebCore::LayerRendererChromium::videoLayerSharedValues):
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+ (WebCore::VideoLayerChromium::SharedValues::SharedValues):
+ (WebCore::VideoLayerChromium::SharedValues::~SharedValues):
+ (WebCore::VideoLayerChromium::VideoLayerChromium):
+ (WebCore::VideoLayerChromium::~VideoLayerChromium):
+ (WebCore::VideoLayerChromium::updateContents):
+ (WebCore::VideoLayerChromium::updateYUVContents):
+ (WebCore::VideoLayerChromium::allocateYUVTextures):
+ (WebCore::VideoLayerChromium::updateYUVTextures):
+ (WebCore::VideoLayerChromium::updateRGBAContents):
+ (WebCore::VideoLayerChromium::allocateTexture):
+ (WebCore::VideoLayerChromium::updateTexture):
+ (WebCore::VideoLayerChromium::updateContentsCompleted):
+ (WebCore::VideoLayerChromium::draw):
+ (WebCore::VideoLayerChromium::drawYUV):
+ (WebCore::VideoLayerChromium::drawRGBA):
+ * platform/graphics/chromium/VideoLayerChromium.h:
+ (WebCore::VideoLayerChromium::drawsContent):
+ (WebCore::VideoLayerChromium::SharedValues::yuvShaderProgram):
+ (WebCore::VideoLayerChromium::SharedValues::rgbaShaderProgram):
+ (WebCore::VideoLayerChromium::SharedValues::yuvShaderMatrixLocation):
+ (WebCore::VideoLayerChromium::SharedValues::rgbaShaderMatrixLocation):
+ (WebCore::VideoLayerChromium::SharedValues::yuvWidthScaleFactorLocation):
+ (WebCore::VideoLayerChromium::SharedValues::rgbaWidthScaleFactorLocation):
+ (WebCore::VideoLayerChromium::SharedValues::yTextureLocation):
+ (WebCore::VideoLayerChromium::SharedValues::uTextureLocation):
+ (WebCore::VideoLayerChromium::SharedValues::vTextureLocation):
+ (WebCore::VideoLayerChromium::SharedValues::yuvAlphaLocation):
+ (WebCore::VideoLayerChromium::SharedValues::rgbaTextureLocation):
+ (WebCore::VideoLayerChromium::SharedValues::ccMatrixLocation):
+ (WebCore::VideoLayerChromium::SharedValues::initialized):
+
+2010-09-27 Peter Kasting <pkasting@google.com>
+
+ Reviewed by James Robinson.
+
+ ImageDecoderSkia.cpp needs to check for allocator failure when copying
+ bitmaps.
+ https://bugs.webkit.org/show_bug.cgi?id=46437
+
+ * manual-tests/large-size-image-crash.html: Added.
+ * manual-tests/resources/large-size-image-crash.gif: Added.
+ * platform/image-decoders/ImageDecoder.cpp:
+ (WebCore::RGBA32Buffer::copyBitmapData):
+ * platform/image-decoders/ImageDecoder.h:
+ * platform/image-decoders/gif/GIFImageDecoder.cpp:
+ (WebCore::GIFImageDecoder::initFrameBuffer):
+ * platform/image-decoders/qt/RGBA32BufferQt.cpp:
+ (WebCore::RGBA32Buffer::copyBitmapData):
+ * platform/image-decoders/skia/ImageDecoderSkia.cpp:
+ (WebCore::RGBA32Buffer::copyBitmapData):
+
+2010-09-27 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Simon Fraser.
+
+ Revert r63307, it broke repainting dynamically changed SVG content
+ https://bugs.webkit.org/show_bug.cgi?id=46499
+
+ This patch reverts r63307 and adds a regression test for what broke.
+
+ Test: fast/repaint/repaint-svg-after-style-change.html
+
+ * rendering/RenderForeignObject.cpp:
+ (WebCore::RenderForeignObject::layout):
+ * rendering/RenderPath.cpp:
+ (WebCore::RenderPath::layout):
+ * rendering/RenderSVGContainer.cpp:
+ (WebCore::RenderSVGContainer::layout):
+ * rendering/RenderSVGImage.cpp:
+ (WebCore::RenderSVGImage::layout):
+ * rendering/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::layout):
+ * rendering/RenderSVGText.cpp:
+ (WebCore::RenderSVGText::layout):
+
+2010-09-27 Vangelis Kokkevis <vangelis@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [chromium] Making LayerChromium's destructor virtual so that the appropriate
+ derived class destructors get called when the layer tree is taken down.
+ ContentLayerChromium and its derived types (ImageLayerChromium for now) will
+ free up the texture allocated for their contents upon destruction. To avoid
+ having the LayerRendererChromium destructor getting called before the layers
+ are destroyed and thus leaving their textures orphaned, the layers now hold
+ a ref counted pointer to the renderer that uses them.
+ https://bugs.webkit.org/show_bug.cgi?id=46139
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::~ContentLayerChromium):
+ (WebCore::ContentLayerChromium::setLayerRenderer):
+ (WebCore::ContentLayerChromium::cleanupResources):
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::setLayerRenderer):
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore::LayerChromium::layerRenderer):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::create):
+ (WebCore::LayerRendererChromium::deleteLayerTexture):
+ (WebCore::LayerRendererChromium::cleanupSharedObjects):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+
+2010-09-27 Erik Arvidsson <arv@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Implement HTML 5's HTMLElement.classList property
+ https://bugs.webkit.org/show_bug.cgi?id=20709
+
+ This adds a DOMTokenList class that is used for the classList property. DOMTokenList uses a SpaceSplitString for fast
+ contains check. In standards mode the existing classNames is used but in quirks mode we use an internal SpaceSplitString
+ because classList is always case sensitive.
+
+ Tests: fast/dom/HTMLElement/class-list-gc.html
+ fast/dom/HTMLElement/class-list-quirks.html
+ fast/dom/HTMLElement/class-list.html
+ perf/class-list-remove.html
+
+ * Android.derived.jscbindings.mk:
+ * Android.derived.v8bindings.mk:
+ * Android.jscbindings.mk:
+ * CMakeLists.txt:
+ * DerivedSources.cpp:
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pri:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/gobject/GNUmakefile.am:
+ * bindings/js/JSElementCustom.cpp:
+ (WebCore::JSElement::markChildren): Make sure that we keep the wrapper while the element is alive.
+ * bindings/scripts/CodeGeneratorJS.pm: DOMTokenList has a string indexed getter.
+ * bindings/scripts/CodeGeneratorV8.pm:
+ * bindings/v8/custom/V8DOMTokenListCustom.cpp: Added.
+ (WebCore::toV8):
+ * dom/Element.cpp:
+ (WebCore::Element::classList):
+ (WebCore::Element::optionalClassList):
+ * dom/Element.h:
+ * dom/ElementRareData.h: This now has an OwnPtr to a ClassList if the Element::classList is ever called.
+ * dom/SpaceSplitString.h:
+ (WebCore::SpaceSplitString::isNull):
+ * dom/StyledElement.cpp:
+ (WebCore::StyledElement::classAttributeChanged): Update the classList if it exists.
+ * dom/StyledElement.h:
+ * html/DOMTokenList.cpp: Added.
+ (WebCore::validateToken):
+ (WebCore::DOMTokenList::DOMTokenList):
+ (WebCore::DOMTokenList::ref):
+ (WebCore::DOMTokenList::deref):
+ (WebCore::DOMTokenList::length):
+ (WebCore::DOMTokenList::item):
+ (WebCore::DOMTokenList::contains):
+ (WebCore::DOMTokenList::containsInternal): The internal methods do no validation of the token.
+ (WebCore::DOMTokenList::add):
+ (WebCore::DOMTokenList::addInternal):
+ (WebCore::DOMTokenList::remove):
+ (WebCore::DOMTokenList::removeInternal):
+ (WebCore::DOMTokenList::toggle):
+ (WebCore::DOMTokenList::toString):
+ (WebCore::DOMTokenList::reset):
+ (WebCore::DOMTokenList::classNames):
+ * html/DOMTokenList.h: Added.
+ (WebCore::DOMTokenList::create):
+ (WebCore::DOMTokenList::element):
+ * html/DOMTokenList.idl: Added.
+ * html/HTMLElement.idl:
+ * page/DOMWindow.cpp:
+ * page/DOMWindow.idl:
+
+2010-09-27 Kenneth Russell <kbr@google.com>
+
+ Reviewed by James Robinson.
+
+ Add local triangulation of cubic curve control points
+ https://bugs.webkit.org/show_bug.cgi?id=45252
+
+ (Re-landing; I neglected to actually add the new files in
+ http://trac.webkit.org/changeset/68045 .)
+
+ Adding a localized triangulation algorithm which takes as input
+ the four control points of a cubic curve segment and provides both
+ triangles as well as the ability to walk the interior edges. The
+ latter will be used later to fill the interior of shapes bounded
+ by these cubic curves, quadratic curves and line segments.
+
+ * platform/graphics/gpu/LoopBlinnLocalTriangulator.cpp: Added.
+ (WebCore::LoopBlinnLocalTriangulator::Triangle::contains):
+ (WebCore::LoopBlinnLocalTriangulator::Triangle::nextVertex):
+ (WebCore::LoopBlinnLocalTriangulator::Triangle::indexForVertex):
+ (WebCore::LoopBlinnLocalTriangulator::Triangle::makeCounterClockwise):
+ (WebCore::LoopBlinnLocalTriangulator::LoopBlinnLocalTriangulator):
+ (WebCore::LoopBlinnLocalTriangulator::reset):
+ (WebCore::LoopBlinnLocalTriangulator::triangulate):
+ (WebCore::LoopBlinnLocalTriangulator::triangulateHelper):
+ (WebCore::LoopBlinnLocalTriangulator::addTriangle):
+ (WebCore::LoopBlinnLocalTriangulator::addInteriorVertex):
+ (WebCore::LoopBlinnLocalTriangulator::isSharedEdge):
+ * platform/graphics/gpu/LoopBlinnLocalTriangulator.h: Added.
+ (WebCore::LoopBlinnLocalTriangulator::Vertex::Vertex):
+ (WebCore::LoopBlinnLocalTriangulator::Vertex::xyCoordinates):
+ (WebCore::LoopBlinnLocalTriangulator::Vertex::klmCoordinates):
+ (WebCore::LoopBlinnLocalTriangulator::Vertex::set):
+ (WebCore::LoopBlinnLocalTriangulator::Vertex::end):
+ (WebCore::LoopBlinnLocalTriangulator::Vertex::setEnd):
+ (WebCore::LoopBlinnLocalTriangulator::Vertex::marked):
+ (WebCore::LoopBlinnLocalTriangulator::Vertex::setMarked):
+ (WebCore::LoopBlinnLocalTriangulator::Vertex::interior):
+ (WebCore::LoopBlinnLocalTriangulator::Vertex::setInterior):
+ (WebCore::LoopBlinnLocalTriangulator::Vertex::resetFlags):
+ (WebCore::LoopBlinnLocalTriangulator::Triangle::Triangle):
+ (WebCore::LoopBlinnLocalTriangulator::Triangle::getVertex):
+ (WebCore::LoopBlinnLocalTriangulator::Triangle::setVertices):
+ (WebCore::LoopBlinnLocalTriangulator::getVertex):
+ (WebCore::LoopBlinnLocalTriangulator::numberOfTriangles):
+ (WebCore::LoopBlinnLocalTriangulator::getTriangle):
+ (WebCore::LoopBlinnLocalTriangulator::numberOfInteriorVertices):
+ (WebCore::LoopBlinnLocalTriangulator::getInteriorVertex):
+
+2010-09-27 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add AudioNode files
+ https://bugs.webkit.org/show_bug.cgi?id=45571
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/AudioNode.cpp: Added.
+ (WebCore::AudioNode::AudioNode):
+ (WebCore::AudioNode::~AudioNode):
+ (WebCore::AudioNode::setType):
+ (WebCore::AudioNode::lazyInitialize):
+ (WebCore::AudioNode::addInput):
+ (WebCore::AudioNode::addOutput):
+ (WebCore::AudioNode::input):
+ (WebCore::AudioNode::output):
+ (WebCore::AudioNode::connect):
+ (WebCore::AudioNode::disconnect):
+ (WebCore::AudioNode::processIfNecessary):
+ (WebCore::AudioNode::pullInputs):
+ (WebCore::AudioNode::ref):
+ (WebCore::AudioNode::deref):
+ (WebCore::AudioNode::finishDeref):
+ (WebCore::AudioNode::printNodeCounts):
+ * webaudio/AudioNode.h: Added.
+ (WebCore::AudioNode::context):
+ (WebCore::AudioNode::type):
+ (WebCore::AudioNode::isInitialized):
+ (WebCore::AudioNode::numberOfInputs):
+ (WebCore::AudioNode::numberOfOutputs):
+ (WebCore::AudioNode::sampleRate):
+ (WebCore::AudioNode::checkNumberOfChannelsForInput):
+ * webaudio/AudioNode.idl: Added.
+
+2010-09-27 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46665
+
+ Patch RenderView's layout and computeLogicalWidth/Height methods to be block-flow-aware.
+
+ Added fast/root-lr-basic.html
+
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::computeLogicalHeight):
+ (WebCore::RenderView::computeLogicalWidth):
+ (WebCore::RenderView::layout):
+ * rendering/RenderView.h:
+ (WebCore::RenderView::viewLogicalWidth):
+ (WebCore::RenderView::viewLogicalHeight):
+
+2010-09-24 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Hook up ANGLE with chromium --in-process-webgl port
+ https://bugs.webkit.org/show_bug.cgi?id=44309
+
+ * platform/graphics/GraphicsContext3D.h: Move Angle stuff inside MAC only section.
+
+2010-09-27 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46659
+
+ Patch the width/height/x/y calls in layoutBlock() to be their logical equivalents instead.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlock):
+
+2010-09-27 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46649, fix failing layout tests.
+
+ The implementation of setting the before/after margins was wrong and poking the wrong margin values.
+
+ Once I made them set the correct values, it revealed that one of the new block flow tests wasn't
+ actually working. In order to fix it, I had to make the block direction margin computation actually
+ use the containing block's block-flow in order to return the right answer. This involved cleaning
+ up computeBlockDirectionMargins to be more like computeInlineDirectionMargins.
+
+ fast/css/logical-property-resolution.html also caught the bug. Its results are now correct.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::adjustPositionedBlock):
+ (WebCore::RenderBlock::determineHorizontalPosition):
+ (WebCore::RenderBlock::layoutBlockChild):
+ (WebCore::RenderBlock::insertFloatingObject):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::setMarginBeforeUsing):
+ (WebCore::RenderBox::setMarginAfterUsing):
+ (WebCore::RenderBox::computeLogicalWidth):
+ (WebCore::RenderBox::computeInlineDirectionMargins):
+ (WebCore::RenderBox::computeLogicalHeight):
+ (WebCore::RenderBox::computeBlockDirectionMargins):
+ * rendering/RenderBox.h:
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::layoutHorizontalBox):
+ (WebCore::RenderFlexibleBox::layoutVerticalBox):
+ * rendering/RenderObject.h:
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::computeLogicalWidth):
+ * rendering/RenderTableRow.cpp:
+ (WebCore::RenderTableRow::layout):
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::marginBeforeUsing):
+ (WebCore::RenderStyle::marginAfterUsing):
+ * rendering/style/RenderStyle.h:
+
+2010-09-14 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Textures and renderbuffers should be detached first before deletion if they are attached to framebuffers
+ https://bugs.webkit.org/show_bug.cgi?id=43942
+
+ Test: fast/canvas/webgl/object-deletion-behaviour.html
+
+ * html/canvas/WebGLBuffer.cpp:
+ (WebCore::WebGLBuffer::deleteObjectImpl): Delete the object only once.
+ * html/canvas/WebGLFramebuffer.cpp: Use RefPtr for attachment WebGLObjects.
+ (WebCore::WebGLFramebuffer::WebGLFramebuffer):
+ (WebCore::WebGLFramebuffer::removeAttachment): Remove an attachment data ref.
+ (WebCore::WebGLFramebuffer::onAttachedObjectChange):
+ (WebCore::WebGLFramebuffer::getColorBufferFormat):
+ (WebCore::WebGLFramebuffer::deleteObjectImpl):
+ (WebCore::WebGLFramebuffer::initializeRenderbuffers):
+ * html/canvas/WebGLFramebuffer.h: Declare removeAttachment().
+ * html/canvas/WebGLObject.cpp:
+ (WebCore::WebGLObject::setObject): Make it protected and can only be called when initializing.
+ * html/canvas/WebGLObject.h:
+ (WebCore::WebGLObject::onDetached): Fix a bug.
+ (WebCore::WebGLObject::isDeleted): Expose the delete flag.
+ * html/canvas/WebGLProgram.cpp:
+ (WebCore::WebGLProgram::deleteObjectImpl): Detach shaders when deleting a program.
+ * html/canvas/WebGLRenderbuffer.cpp:
+ (WebCore::WebGLRenderbuffer::deleteObjectImpl): Delete the object only once.
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::deleteFramebuffer): Bind to internal fbo when deleting the currently-bound fbo.
+ (WebCore::WebGLRenderingContext::deleteRenderbuffer): Remove renderbuffer from currently-bound fbo upon deletion.
+ (WebCore::WebGLRenderingContext::deleteTexture): Remove texture from currently-bound fbo upon deletion.
+ (WebCore::WebGLRenderingContext::useProgram): Fix a condition.
+ * html/canvas/WebGLShader.cpp:
+ (WebCore::WebGLShader::deleteObjectImpl): Delete the object only once.
+ * html/canvas/WebGLTexture.cpp:
+ (WebCore::WebGLTexture::deleteObjectImpl): Ditto.
+
+2010-09-27 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Antonio Gomes.
+
+ stateStyle (@EditorCommand.cpp) should ask EditingBehavior for platform specific behavior
+ https://bugs.webkit.org/show_bug.cgi?id=41989
+
+ queryCommandState returns true even when in the mixed state
+ https://bugs.webkit.org/show_bug.cgi?id=46382
+
+ Fixed stateStyle so that it calls selectionStartHasStyle when shouldToggleStyleBasedOnStartOfSelection
+ is true (Mac platforms) and calls selectionHasStyle otherwise (non-Mac platforms).
+
+ Also fixed queryCommandState so that it only returns true when the state is TrueTriState
+ as supposed to returning true whenever the state is not FalseTriState. New behavior matches that of
+ other browsers such as Firefox and Internet Explorer.
+
+ * dom/Document.cpp:
+ (WebCore::Document::queryCommandState):
+ * editing/EditorCommand.cpp:
+ (WebCore::executeToggleStyle):
+ (WebCore::stateStyle):
+
+2010-09-27 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46647, add getters/setters for the logical position of a box.
+
+ Also made all of the logicalWidth/Height getters/setters inline for performance.
+
+ * rendering/RenderBox.cpp:
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::logicalLeft):
+ (WebCore::RenderBox::logicalTop):
+ (WebCore::RenderBox::logicalWidth):
+ (WebCore::RenderBox::logicalHeight):
+ (WebCore::RenderBox::setLogicalLeft):
+ (WebCore::RenderBox::setLogicalTop):
+ (WebCore::RenderBox::setLogicalWidth):
+ (WebCore::RenderBox::setLogicalHeight):
+ (WebCore::RenderBox::setLogicalLocation):
+
+2010-09-27 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46639, make computeLogicalHeight block-flow-aware.
+
+ This patch does the following:
+ (1) Makes computeLogicalHeight block-flow-aware (patching all helper functions as needed to make this work).
+ (2) Makes block flow roots (blocks whose parent has a different block-flow directionality) establish new block formatting contexts.
+ (This causes them to not collapse their margins with their children and to avoid floats).
+ (3) Patch all occurrences of setHeight in block and line layout to setLogicalHeight so that height doesn't get incorrectly
+ overwritten for lr/rl block-flow. This is necessary to write tests that examine the width/height of the blocks.
+
+ Added multiple new tests in fast/blockflow.
+ fast/css/logical-property-resolution gives the correct results now.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::MarginInfo::MarginInfo):
+ (WebCore::RenderBlock::layoutBlock):
+ (WebCore::RenderBlock::expandsToEncloseOverhangingFloats):
+ (WebCore::RenderBlock::adjustFloatingBlock):
+ (WebCore::RenderBlock::collapseMargins):
+ (WebCore::RenderBlock::clearFloatsIfNeeded):
+ (WebCore::RenderBlock::determineHorizontalPosition):
+ (WebCore::RenderBlock::handleBottomOfBlock):
+ (WebCore::RenderBlock::layoutBlockChildren):
+ (WebCore::RenderBlock::layoutBlockChild):
+ (WebCore::RenderBlock::positionNewFloatOnLine):
+ (WebCore::RenderBlock::newLine):
+ (WebCore::RenderBlock::logicalLeftOffsetForLine):
+ (WebCore::RenderBlock::logicalRightOffsetForContent):
+ (WebCore::RenderBlock::logicalRightOffsetForLine):
+ (WebCore::RenderBlock::getClearDelta):
+ (WebCore::RenderBlock::layoutColumns):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::computeBlockDirectionPositionsForLine):
+ (WebCore::RenderBlock::layoutInlineChildren):
+ (WebCore::RenderBlock::determineStartPosition):
+ (WebCore::RenderBlock::fitBelowFloats):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::marginBefore):
+ (WebCore::RenderBox::marginBeforeUsing):
+ (WebCore::RenderBox::marginAfter):
+ (WebCore::RenderBox::marginAfterUsing):
+ (WebCore::RenderBox::setMarginBefore):
+ (WebCore::RenderBox::setMarginAfter):
+ (WebCore::RenderBox::setMarginBeforeUsing):
+ (WebCore::RenderBox::setMarginAfterUsing):
+ (WebCore::RenderBox::computeLogicalHeight):
+ (WebCore::RenderBox::computeLogicalHeightUsing):
+ (WebCore::RenderBox::computePercentageLogicalHeight):
+ (WebCore::RenderBox::computeReplacedHeightUsing):
+ (WebCore::RenderBox::availableLogicalHeight):
+ (WebCore::RenderBox::availableLogicalHeightUsing):
+ (WebCore::RenderBox::computeBlockDirectionMargins):
+ (WebCore::RenderBox::avoidsFloats):
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::contentLogicalWidth):
+ (WebCore::RenderBox::contentLogicalHeight):
+ (WebCore::RenderBox::stretchesToViewHeight):
+ (WebCore::RenderBox::availableLogicalWidth):
+ (WebCore::RenderBox::availableWidth):
+ (WebCore::RenderBox::availableHeight):
+ (WebCore::RenderBox::isBlockFlowRoot):
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::computeLogicalWidth):
+
+2010-09-27 Mario Sanchez Prada <msanchez@igalia.com>
+
+ Reviewed by Chris Fleizach.
+
+ [Gtk] Adjust atk_text_get_text_at_offset to account for bullets/numbers in list items
+ https://bugs.webkit.org/show_bug.cgi?id=45381
+
+ Ensure list markers are consistently used in the Atk wrapper.
+
+ This patch does two things (both needed to fix the bug): It
+ improves the way list items markers are exposed through the Atk
+ Wrapper (by exposing the exact text in the marker, including the
+ marker suffix, if any) and makes sure the marker is consistently
+ considered and treated in those methods of the AtkText interface
+ that would need it (like atk_text_get_character_count or
+ atk_text_get_run_attributes, for instance).
+
+ * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
+ (textForObject):
+ Append/prepend list marker when needed.
+ (webkit_accessible_text_get_text):
+ Use the new function markerTextWithSuffix() to expose a more
+ accurate value.
+ (accessibilityObjectLength):
+ Consider list items marker to return the length of an object,
+ if needed. Also, added some extra checks.
+ (webkit_accessible_text_get_character_count):
+ Just delegate on accessibilityObjectLength, to make it
+ cleaner and more consistent.
+
+ * rendering/RenderListItem.cpp:
+ (WebCore::RenderListItem::markerTextWithSuffix):
+ New public function to return a single string with the
+ marker associated to the item and its suffix, considering
+ text direction (LTR or RTL).
+ * rendering/RenderListItem.h:
+ * rendering/RenderListMarker.cpp:
+ (WebCore::RenderListMarker::suffix):
+ New public function to return a String with the suffix
+ associated to the marker.
+ * rendering/RenderListMarker.h:
+
+2010-09-27 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r68389.
+ http://trac.webkit.org/changeset/68389
+ https://bugs.webkit.org/show_bug.cgi?id=46637
+
+ test_shell is crashing on chromium Win (Requested by loislo on
+ #webkit).
+
+ * inspector/InspectorTimelineAgent.cpp:
+ (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
+ (WebCore::InspectorTimelineAgent::pushGCEventRecords):
+ (WebCore::InspectorTimelineAgent::didGC):
+ (WebCore::InspectorTimelineAgent::~InspectorTimelineAgent):
+ (WebCore::InspectorTimelineAgent::willCallFunction):
+ (WebCore::InspectorTimelineAgent::didCallFunction):
+ (WebCore::InspectorTimelineAgent::willDispatchEvent):
+ (WebCore::InspectorTimelineAgent::didDispatchEvent):
+ (WebCore::InspectorTimelineAgent::willLayout):
+ (WebCore::InspectorTimelineAgent::didLayout):
+ (WebCore::InspectorTimelineAgent::willRecalculateStyle):
+ (WebCore::InspectorTimelineAgent::didRecalculateStyle):
+ (WebCore::InspectorTimelineAgent::willPaint):
+ (WebCore::InspectorTimelineAgent::didPaint):
+ (WebCore::InspectorTimelineAgent::willWriteHTML):
+ (WebCore::InspectorTimelineAgent::didWriteHTML):
+ (WebCore::InspectorTimelineAgent::didInstallTimer):
+ (WebCore::InspectorTimelineAgent::didRemoveTimer):
+ (WebCore::InspectorTimelineAgent::willFireTimer):
+ (WebCore::InspectorTimelineAgent::didFireTimer):
+ (WebCore::InspectorTimelineAgent::willChangeXHRReadyState):
+ (WebCore::InspectorTimelineAgent::didChangeXHRReadyState):
+ (WebCore::InspectorTimelineAgent::willLoadXHR):
+ (WebCore::InspectorTimelineAgent::didLoadXHR):
+ (WebCore::InspectorTimelineAgent::willEvaluateScript):
+ (WebCore::InspectorTimelineAgent::didEvaluateScript):
+ (WebCore::InspectorTimelineAgent::didScheduleResourceRequest):
+ (WebCore::InspectorTimelineAgent::willSendResourceRequest):
+ (WebCore::InspectorTimelineAgent::willReceiveResourceData):
+ (WebCore::InspectorTimelineAgent::didReceiveResourceData):
+ (WebCore::InspectorTimelineAgent::willReceiveResourceResponse):
+ (WebCore::InspectorTimelineAgent::didReceiveResourceResponse):
+ (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
+ (WebCore::InspectorTimelineAgent::didMarkTimeline):
+ (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
+ (WebCore::InspectorTimelineAgent::didMarkLoadEvent):
+ (WebCore::InspectorTimelineAgent::reset):
+ (WebCore::InspectorTimelineAgent::resetFrontendProxyObject):
+ (WebCore::InspectorTimelineAgent::addRecordToTimeline):
+ (WebCore::InspectorTimelineAgent::setHeapSizeStatistic):
+ (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
+ (WebCore::InspectorTimelineAgent::pushCurrentRecord):
+ * inspector/InspectorTimelineAgent.h:
+ (WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry):
+ (WebCore::InspectorTimelineAgent::GCEvent::GCEvent):
+
+2010-09-27 Kinuko Yasuda <kinuko@google.com>
+
+ Reviewed by Adam Barth.
+
+ [Cleanup] Add create method to FileSystemCallbacks to get rid of naked new's
+ https://bugs.webkit.org/show_bug.cgi?id=46561
+
+ Also cleanup the callbacks layering to pass AsyncFileSystemCallbacks
+ object to LocalFileSystem::requestFileSystem (rather than
+ FileSystemCallback and ErrorCallback) so that all the callbacks class
+ we pass from WebCore to WebKit/chromium/src will be
+ AsyncFileSystemCallbacks.
+
+ No new tests; this patch is only for cleanup and there should be no functionality changes.
+
+ * fileapi/DOMFileSystem.cpp:
+ (WebCore::DOMFileSystem::getMetadata):
+ (WebCore::DOMFileSystem::move):
+ (WebCore::DOMFileSystem::copy):
+ (WebCore::DOMFileSystem::remove):
+ (WebCore::DOMFileSystem::getParent):
+ (WebCore::DOMFileSystem::getFile):
+ (WebCore::DOMFileSystem::getDirectory):
+ (WebCore::DOMFileSystem::createWriter):
+ (WebCore::DOMFileSystem::readDirectory):
+ * fileapi/FileSystemCallbacks.cpp:
+ (WebCore::EntryCallbacks::create): Added.
+ (WebCore::EntriesCallbacks::create): Added.
+ (WebCore::FileSystemCallbacks::create): Added.
+ (WebCore::MetadataCallbacks::create): Added.
+ (WebCore::FileWriterCallbacks::create): Added.
+ (WebCore::VoidCallbacks::create): Added.
+ * fileapi/FileSystemCallbacks.h:
+ * fileapi/LocalFileSystem.cpp:
+ (WebCore::openFileSystem):
+ (WebCore::LocalFileSystem::requestFileSystem): Changed to take
+ AsyncFileSystemCallbacks as (a) callback argument(s).
+ * fileapi/LocalFileSystem.h:
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::requestFileSystem): Made a corresponding change
+ to LocalFileSystem::requestFileSystem.
+ * workers/WorkerContext.cpp:
+ (WebCore::WorkerContext::requestFileSystem): Made a corresponding change
+ to LocalFileSystem::requestFileSystem.
+
+2010-09-27 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Dave Hyatt.
+
+ Fix memory safety issue during positioning list marker as a result of assuming
+ that list item's parent can always be casted to a RenderBox. The display of the parent
+ can be manipluated using css as Inline which causes a bad cast.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46384
+
+ Test: fast/lists/parent-box-not-box-crash.html
+
+ * rendering/RenderListItem.cpp:
+ (WebCore::RenderListItem::positionListMarker):
+ * rendering/RenderListMarker.cpp:
+ (WebCore::RenderListMarker::layout):
+
+2010-09-19 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Gustavo Noronha Silva.
+
+ [GTK] Wrong font instantiated from an unknown font family
+ https://bugs.webkit.org/show_bug.cgi?id=36548
+
+ When FontConfig returns a match for a particular family name, ensure that
+ the family name matches the configured alias for the original pattern. This
+ should prevent selecting FontConfig fallbacks in situations where the next
+ font on the CSS fallback list should be used. This requires moving all FontConfig
+ matching logic into FontCacheFreeType and out of FontPlatformDataFreeType.
+ It should be there anyway.
+
+ Test: platform/gtk/fonts/font-family-fallback.html
+
+ * platform/graphics/cairo/FontCacheFreeType.cpp:
+ (WebCore::FontCache::platformInit): Simply call FcInit here instead of
+ deferring to FontPlatformData.
+ (WebCore::FontCache::getLastResortFallbackFont): The last resort font should
+ be a fallback font or else the new FontConfig logic may result in null font data
+ if it cannot find an appropriate match.
+ (WebCore::getFamilyNameStringFromFontDescriptionAndFamily): Added. Helper function
+ which converts WebCore fallback names into ones that FontConfig understands.
+ (WebCore::isFallbackFontAllowed): Added. Helper function that allows FontConfig
+ fallbacks to be used when generic family names are specified.
+ (WebCore::FontCache::createFontPlatformData): Move all FontConfig matching logic here
+ and prevent against the situation where FontConfig returns a different family name
+ than we asked for.
+ * platform/graphics/cairo/FontCustomPlatformData.cpp: Updated FontPlatformData constructor.
+ * platform/graphics/cairo/FontPlatformDataFreeType.cpp: Update the constructor to
+ take the FcPattern returned and the original FontDescription. We no longer need the other
+ arguments, because the selection is now done by FontCacheFreeType.
+ (WebCore::FontPlatformData::FontPlatformData): Remove the FontConfig selection logic from
+ this code.
+ * platform/graphics/cairo/FontPlatformDataFreeType.h: Updated method definitions.
+ * platform/graphics/cairo/GlyphPageTreeNodeCairo.cpp: Fixed includes.
+ * platform/graphics/cairo/PlatformRefPtrCairo.cpp: Added a PlatformRefPtr specialization
+ for cairo_font_face_t.
+ (WTF::refPlatformPtr): Added.
+ (WTF::derefPlatformPtr): Added.
+ * platform/graphics/cairo/PlatformRefPtrCairo.h: Updated method definitons.
+ * platform/graphics/cairo/SimpleFontDataCairo.cpp:
+ (WebCore::SimpleFontData::smallCapsFontData): Fixed FontPlatformData constructor.
+
+2010-09-27 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Doesn't build with gtk+ 2.14
+ https://bugs.webkit.org/show_bug.cgi?id=46565
+
+ Fixed the build for GTK+ 2.14 by adding backward compatible
+ a backward-compatible function for gtk_menu_item_get_label and a
+ utility function to create a blank mouse cursor. Those functions
+ are used in the fullscreen video controller and in the DRT
+ EventSender.
+
+ * platform/gtk/GtkVersioning.c:
+ (gdk_window_get_root_coords):
+ (blankCursor):
+ (gtk_menu_item_get_label):
+ * platform/gtk/GtkVersioning.h:
+
+2010-09-23 Stephen White <senorblanco@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [CHROMIUM] Fix for canvas clearRect() with clipping active, when
+ --enable-accelerated-2d-canvas is on.
+ https://bugs.webkit.org/show_bug.cgi?id=46412
+
+ Covered by layout test http://philip.html5.org/tests/canvas/suite/tests/2d.clearRect.clip.html.
+
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::clearRect):
+ Check if a clip is active during clipRect(), and force to software
+ if so. Force a readback in this case, since clearRect() is not
+ compatible with mixed-mode rendering.
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ (WebCore::PlatformContextSkia::canvasClipApplied):
+ * platform/graphics/skia/PlatformContextSkia.h:
+ Implement accessor to check if a clip is active.
+
+2010-09-14 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ drawElements with count=0 and offset = 0 should not generate GL error or crash
+ https://bugs.webkit.org/show_bug.cgi?id=45769
+
+ * html/canvas/WebGLRenderingContext.cpp: Deal with count=0 case.
+ (WebCore::WebGLRenderingContext::validateIndexArrayConservative):
+ (WebCore::WebGLRenderingContext::validateIndexArrayPrecise):
+ (WebCore::WebGLRenderingContext::drawElements):
+
+2010-09-16 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Fold getString into getParameter and implement new queries
+ https://bugs.webkit.org/show_bug.cgi?id=40321
+
+ Test: fast/canvas/webgl/gl-getstring.html
+
+ * html/canvas/WebGLRenderingContext.cpp: Merge getString enums into getParameter.
+ (WebCore::WebGLRenderingContext::getParameter):
+ * html/canvas/WebGLRenderingContext.h: Remove getString.
+ * html/canvas/WebGLRenderingContext.idl: Remove getString.
+
+2010-09-24 Zhenyao Mo <zmo@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ gl-teximage fails on chrome mac bot
+ https://bugs.webkit.org/show_bug.cgi?id=45332
+
+ Add support for alpha first pixel formats.
+
+ * platform/graphics/GraphicsContext3D.cpp:
+ (WebCore::doPacking):
+ * platform/graphics/GraphicsContext3D.h:
+ * platform/graphics/cg/GraphicsContext3DCG.cpp:
+ (WebCore::GraphicsContext3D::getImageData):
+
+2010-09-17 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: implement go-to-line feature
+ https://bugs.webkit.org/show_bug.cgi?id=45166
+
+ * English.lproj/localizedStrings.js:
+ * inspector/front-end/GoToLineDialog.js: Added.
+ (WebInspector.GoToLineDialog):
+ (WebInspector.GoToLineDialog.show):
+ (WebInspector.GoToLineDialog.prototype._hide):
+ (WebInspector.GoToLineDialog.prototype._onKeyDown):
+ (WebInspector.GoToLineDialog.prototype._onBlur):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._registerShortcuts):
+ (WebInspector.ScriptsPanel.prototype.jumpToPreviousSearchResult):
+ (WebInspector.ScriptsPanel.prototype.showGoToLineDialog):
+ * inspector/front-end/goToLineDialog.css: Added.
+ (.go-to-line-dialog):
+ * inspector/front-end/inspector.html:
+
+2010-09-24 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: add XHR breakpoints sidebar pane to front-end
+ https://bugs.webkit.org/show_bug.cgi?id=46483
+
+ * English.lproj/localizedStrings.js:
+ * WebCore.gypi:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::instrumentWillSendXMLHttpRequestImpl):
+ * inspector/InspectorTimelineAgent.h:
+ * inspector/front-end/BreakpointManager.js:
+ (WebInspector.BreakpointManager):
+ (WebInspector.BreakpointManager.prototype._setBreakpointOnBackend):
+ (WebInspector.BreakpointManager.prototype.createXHRBreakpoint):
+ (WebInspector.BreakpointManager.prototype._xhrBreakpointRemoved):
+ (WebInspector.Breakpoint.prototype.compareTo):
+ (WebInspector.XHRBreakpoint):
+ (WebInspector.XHRBreakpoint.prototype.get enabled):
+ (WebInspector.XHRBreakpoint.prototype.set enabled):
+ (WebInspector.XHRBreakpoint.prototype.get url):
+ (WebInspector.XHRBreakpoint.prototype.formatLabel):
+ (WebInspector.XHRBreakpoint.prototype.compareTo):
+ (WebInspector.XHRBreakpoint.prototype.remove):
+ (WebInspector.XHRBreakpoint.prototype._setOnBackend.didSet):
+ (WebInspector.XHRBreakpoint.prototype._setOnBackend):
+ (WebInspector.XHRBreakpoint.prototype._removeFromBackend):
+ * inspector/front-end/BreakpointsSidebarPane.js:
+ (WebInspector.XHRBreakpointsSidebarPane):
+ (WebInspector.XHRBreakpointsSidebarPane.prototype._showEditBreakpointDialog):
+ (WebInspector.XHRBreakpointsSidebarPane.prototype._hideEditBreakpointDialog):
+ (WebInspector.BreakpointItem.prototype.compareTo):
+ (WebInspector.BreakpointItem.prototype._checkboxClicked):
+ (WebInspector.BreakpointItem.prototype._enableChanged):
+ (WebInspector.BreakpointItem.prototype._breakpointClicked):
+ (WebInspector.XHRBreakpointItem):
+ * inspector/front-end/CallStackSidebarPane.js:
+ (WebInspector.CallStackSidebarPane.prototype.updateStatus.formatters.s):
+ (WebInspector.CallStackSidebarPane.prototype.updateStatus.append):
+ (WebInspector.CallStackSidebarPane.prototype.updateStatus):
+ * inspector/front-end/DOMAgent.js:
+ (WebInspector.DOMBreakpoint.prototype.compareTo):
+ * inspector/front-end/Images/paneAddButtons.png: Added.
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel):
+ (WebInspector.ScriptsPanel.prototype.reset):
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/inspector.css:
+ (.pane > .title > button.add):
+ (.pane > .title > button.add:hover):
+ (.pane > .title > button.add:active):
+ (.pane > .body .breakpoint-condition):
+ * inspector/front-end/inspector.js:
+ (WebInspector.createXHRBreakpointsSidebarPane.breakpointAdded):
+ (WebInspector.createXHRBreakpointsSidebarPane):
+
+2010-09-27 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Timothy Hatcher.
+
+ Web Inspector: Merge AbstractTimelinePanel into ResourcesPanel.
+ https://bugs.webkit.org/show_bug.cgi?id=46612
+
+ I am refactoring resources panel and would like to merge abstract
+ one back in since it is not use anywhere else.
+
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * inspector/front-end/AbstractTimelinePanel.js: Removed.
+ * inspector/front-end/ResourceCategory.js:
+ (WebInspector.ResourceCategory):
+ (WebInspector.ResourceCategory.prototype.toString):
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel):
+ (WebInspector.ResourcesPanel.prototype.get items):
+ (WebInspector.ResourcesPanel.prototype.createInterface):
+ (WebInspector.ResourcesPanel.prototype.createFilterPanel.createFilterElement):
+ (WebInspector.ResourcesPanel.prototype.createFilterPanel):
+ (WebInspector.ResourcesPanel.prototype.showCategory):
+ (WebInspector.ResourcesPanel.prototype.hideCategory):
+ (WebInspector.ResourcesPanel.prototype.filter):
+ (WebInspector.ResourcesPanel.prototype._updateFilter):
+ (WebInspector.ResourcesPanel.prototype._updateDividersLabelBarPosition):
+ (WebInspector.ResourcesPanel.prototype.get needsRefresh):
+ (WebInspector.ResourcesPanel.prototype.set needsRefresh):
+ (WebInspector.ResourcesPanel.prototype.refreshIfNeeded):
+ (WebInspector.ResourcesPanel.prototype.resize):
+ (WebInspector.ResourcesPanel.prototype.invalidateAllItems):
+ (WebInspector.ResourcesPanel.prototype.get calculator):
+ (WebInspector.ResourcesPanel.prototype.set calculator):
+ (WebInspector.ResourcesPanel.prototype.addItem):
+ (WebInspector.ResourcesPanel.prototype.removeItem):
+ (WebInspector.ResourcesPanel.prototype.refreshItem):
+ (WebInspector.ResourcesPanel.prototype.revealAndSelectItem):
+ (WebInspector.ResourcesPanel.prototype.sortItems):
+ (WebInspector.ResourcesPanel.prototype.adjustScrollPosition):
+ (WebInspector.ResourcesPanel.prototype.addEventDivider):
+ (WebInspector.ResourcesPanel.prototype.hideEventDividers):
+ (WebInspector.ResourcesPanel.prototype.showEventDividers):
+ (WebInspector.ResourcesPanel.prototype.show):
+ (WebInspector.ResourcesPanel.prototype.refresh):
+ (WebInspector.ResourcesPanel.prototype.reset):
+ (WebInspector.ResourcesPanel.prototype.updateGraphDividersIfNeeded):
+ (WebInspector.ResourcesPanel.prototype.updateMainViewWidth):
+ (WebInspector.ResourceBaseCalculator):
+ (WebInspector.ResourceBaseCalculator.prototype.computeSummaryValues):
+ (WebInspector.ResourceBaseCalculator.prototype.computeBarGraphPercentages):
+ (WebInspector.ResourceBaseCalculator.prototype.computeBarGraphLabels):
+ (WebInspector.ResourceBaseCalculator.prototype.get boundarySpan):
+ (WebInspector.ResourceBaseCalculator.prototype.updateBoundaries):
+ (WebInspector.ResourceBaseCalculator.prototype.reset):
+ (WebInspector.ResourceBaseCalculator.prototype._value):
+ (WebInspector.ResourceBaseCalculator.prototype.formatValue):
+ (WebInspector.ResourceTimeCalculator):
+ (WebInspector.ResourceTransferSizeCalculator):
+ * inspector/front-end/WebKit.qrc:
+ * inspector/front-end/inspector.html:
+
+2010-09-27 Ragner Magalhaes <ragner.magalhaes@openbossa.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] New input style for Qt Mobile theme
+ https://bugs.webkit.org/show_bug.cgi?id=46461
+
+ Rename themeQtMaemo5.css to themeQtMobile.css since it is the theme for all Qt mobile platform.
+ Adjust new input style.
+
+ * WebCore.pri:
+ * css/themeQtMobile.css: Renamed from css/themeQtMaemo5.css
+ (select):
+ (select:disabled):
+ (select:active):
+ (select:active:disabled):
+ (textarea):
+ (textarea:disabled):
+ (textarea:active):
+ * platform/qt/RenderThemeQt.cpp:
+ (WebCore::RenderThemeQt::extraDefaultStyleSheet): Renamed themeQtMaemo5UserAgentStyleSheet to themeQtMobileUserAgentStyleSheet to match renamed file.
+
+2010-09-27 Girish Ramakrishnan <girish@forwardbias.in>
+
+ Reviewed by Antonio Gomes.
+
+ [Qt] Enable local rendering of NPAPI plugins on Maemo6.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46618
+
+ * WebCore.pro:
+ * bridge/npapi.h:
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::setValue):
+ (WebCore::PluginView::PluginView):
+ * plugins/PluginView.h:
+ * plugins/qt/PluginViewQt.cpp:
+ (WebCore::PluginView::updatePluginWidget):
+ (WebCore::PluginView::paint):
+ (WebCore::PluginView::platformGetValueStatic):
+
+2010-09-27 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: divide InspectorTimelineAgent into two parts.
+
+ We have an idea to split InspectorTimelineAgent into two parts.
+ The first part is an instrumentation API which can be used for DOM breakpoints too.
+ The other is the real Timeline agent which do a transformation of raw data into timeline data.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46611
+
+ * inspector/InspectorTimelineAgent.cpp:
+ (WebCore::InspectorTimelineAgent2::TimelineRecordEntry::TimelineRecordEntry):
+ (WebCore::InspectorTimelineAgent2::GCEvent::GCEvent):
+ (WebCore::InspectorTimelineAgent2::InspectorTimelineAgent2):
+ (WebCore::InspectorTimelineAgent2::~InspectorTimelineAgent2):
+ (WebCore::InspectorTimelineAgent2::didGC):
+ (WebCore::InspectorTimelineAgent2::addRecordToTimeline):
+ (WebCore::InspectorTimelineAgent2::setHeapSizeStatistic):
+ (WebCore::InspectorTimelineAgent2::startNewRecord):
+ (WebCore::InspectorTimelineAgent2::completeCurrentRecord):
+ (WebCore::InspectorTimelineAgent2::asyncRecord):
+ (WebCore::InspectorTimelineAgent2::atomicRecord):
+ (WebCore::InspectorTimelineAgent2::getTopRecordData):
+ (WebCore::InspectorTimelineAgent2::reset):
+ (WebCore::InspectorTimelineAgent2::resetFrontendProxyObject):
+ (WebCore::InspectorTimelineAgent2::pushGCEventRecords):
+ (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
+ (WebCore::InspectorTimelineAgent::~InspectorTimelineAgent):
+ (WebCore::InspectorTimelineAgent::reset):
+ (WebCore::InspectorTimelineAgent::willCallFunction):
+ (WebCore::InspectorTimelineAgent::didCallFunction):
+ (WebCore::InspectorTimelineAgent::willDispatchEvent):
+ (WebCore::InspectorTimelineAgent::didDispatchEvent):
+ (WebCore::InspectorTimelineAgent::willLayout):
+ (WebCore::InspectorTimelineAgent::didLayout):
+ (WebCore::InspectorTimelineAgent::willRecalculateStyle):
+ (WebCore::InspectorTimelineAgent::didRecalculateStyle):
+ (WebCore::InspectorTimelineAgent::willPaint):
+ (WebCore::InspectorTimelineAgent::didPaint):
+ (WebCore::InspectorTimelineAgent::willWriteHTML):
+ (WebCore::InspectorTimelineAgent::didWriteHTML):
+ (WebCore::InspectorTimelineAgent::didInstallTimer):
+ (WebCore::InspectorTimelineAgent::didRemoveTimer):
+ (WebCore::InspectorTimelineAgent::willFireTimer):
+ (WebCore::InspectorTimelineAgent::didFireTimer):
+ (WebCore::InspectorTimelineAgent::willChangeXHRReadyState):
+ (WebCore::InspectorTimelineAgent::didChangeXHRReadyState):
+ (WebCore::InspectorTimelineAgent::willLoadXHR):
+ (WebCore::InspectorTimelineAgent::didLoadXHR):
+ (WebCore::InspectorTimelineAgent::willEvaluateScript):
+ (WebCore::InspectorTimelineAgent::didEvaluateScript):
+ (WebCore::InspectorTimelineAgent::didScheduleResourceRequest):
+ (WebCore::InspectorTimelineAgent::willSendResourceRequest):
+ (WebCore::InspectorTimelineAgent::willReceiveResourceData):
+ (WebCore::InspectorTimelineAgent::didReceiveResourceData):
+ (WebCore::InspectorTimelineAgent::willReceiveResourceResponse):
+ (WebCore::InspectorTimelineAgent::didReceiveResourceResponse):
+ (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
+ (WebCore::InspectorTimelineAgent::didMarkTimeline):
+ (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
+ (WebCore::InspectorTimelineAgent::didMarkLoadEvent):
+ (WebCore::InspectorTimelineAgent::resetFrontendProxyObject):
+ * inspector/InspectorTimelineAgent.h:
+
+2010-09-27 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Sam Weinig.
+
+ Implement CSSStyleRule::setSelectorText()
+
+ This involves removing the "selectorText" "setter raises(DOMException)" clause from the IDL files,
+ since the setter no longer raises the exception, as per http://dev.w3.org/csswg/cssom/#dom-cssstylerule-selectortext
+ https://bugs.webkit.org/show_bug.cgi?id=46487
+
+ Test: fast/css/css-set-selector-text.html
+
+ * css/CSSPageRule.idl:
+ * css/CSSStyleRule.cpp:
+ (WebCore::CSSStyleRule::setSelectorText):
+ * css/CSSStyleRule.h:
+ * css/CSSStyleRule.idl:
+
+2010-09-27 Zoltan Herczeg <zherczeg@webkit.org>
+
+ Reviewed by Dirk Schulze.
+
+ Filter builder should be able to follow the filter object dependencies
+ https://bugs.webkit.org/show_bug.cgi?id=45812
+
+ To propagate the changes of a primitive object, a data structure
+ is needed which stores the dependent primitive objects. (Those
+ who use the resulting image.) This data structure is implemented
+ as a hash map, which contains primitive object and set of primitive
+ objects <key,value> pairs. The hash map is able to follow the
+ dynamic topology changes.
+
+ * rendering/RenderSVGResourceFilter.cpp:
+ (WebCore::RenderSVGResourceFilter::buildPrimitives):
+ * rendering/RenderSVGResourceFilterPrimitive.h:
+ (WebCore::RenderSVGResourceFilterPrimitive::renderName):
+ (WebCore::RenderSVGResourceFilterPrimitive::isSVGResourceFilterPrimitive):
+ * svg/graphics/filters/SVGFilterBuilder.cpp:
+ (WebCore::SVGFilterBuilder::SVGFilterBuilder):
+ (WebCore::SVGFilterBuilder::appendEffectToEffectReferences):
+ (WebCore::SVGFilterBuilder::clearEffects):
+ * svg/graphics/filters/SVGFilterBuilder.h:
+ (WebCore::SVGFilterBuilder::getEffectReferences):
+ (WebCore::SVGFilterBuilder::addBuiltinEffects):
+
+2010-09-27 Andreas Kling <andreas.kling@nokia.com>
+
+ Rubber-stamped by Kenneth Rohde Christiansen.
+
+ [Qt] 32-bit Flash crashes on repeated SetWindow calls
+ https://bugs.webkit.org/show_bug.cgi?id=46616
+
+ Re-enable PluginQuirkDontCallSetWindowMoreThanOnce for Qt on x86 Unix.
+
+ We incorrectly thought this was fixed in Flash 10, but it turns out it
+ was just never broken on 64-bit.
+
+ * plugins/PluginPackage.cpp:
+ (WebCore::PluginPackage::determineQuirks):
+
+2010-09-27 İsmail Dönmez <ismail@namtrac.org>
+
+ Reviewed by Andreas Kling.
+
+ Add PluginView::setJavaScriptPaused(bool) stub for WinCE.
+
+ * platform/qt/TemporaryLinkStubsQt.cpp:
+ (PluginView::setJavaScriptPaused):
+
+2010-09-27 Gyuyoung Kim <gyuyoung.kim@samsung.com>
+
+ Reviewed by Dirk Schulze.
+
+ Bug 46607 - [WML] Fix a build break when WML is enabled
+
+ Fix a build break when WML is enabled.
+
+ * wml/WMLElement.cpp: Include HTMLParserIdioms.h
+ (WebCore::WMLElement::parseMappedAttribute): Add additional parameter to invoke parseHTMLInteger() function.
+
+2010-09-26 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Remove dead code and fix header includes in ResourceHandleWin
+ https://bugs.webkit.org/show_bug.cgi?id=46479
+
+ Also add missing member varibale from r68167.
+
+ * platform/network/ResourceHandle.h:
+ * platform/network/ResourceHandleInternal.h:
+ (WebCore::ResourceHandleInternal::ResourceHandleInternal):
+ * platform/network/win/ResourceHandleWin.cpp:
+ (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
+ (WebCore::ResourceHandle::~ResourceHandle):
+ (WebCore::ResourceHandle::onRequestComplete):
+ * platform/network/win/ResourceHandleWin.h: Removed.
+
+2010-09-26 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Add WTF::StringHasher::createBlobHash
+ https://bugs.webkit.org/show_bug.cgi?id=46514
+
+ Add this function for hashing FormElementKey and QualifiedNameComponents.
+
+ * dom/Document.cpp:
+ (WebCore::FormElementKeyHash::hash):
+ * dom/QualifiedName.h:
+ (WebCore::hashComponents):
+ (WebCore::QualifiedNameHash::hash):
+
+2010-09-26 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46519
+
+ Convert the implementation of computeLogicalWidth to work with block-flow.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::determineHorizontalPosition):
+ Patched to call the new computeMarginsInContainingBlockInlineDirection. Eventually determineHorizontalPosition will
+ be placing children along the inline direction of the containing block, and those children may have mismatched
+ block flows. The new computeMarginsInContainingBlockInlineDirection function is designed to handle that.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::marginStart):
+ (WebCore::RenderBox::marginStartUsing):
+ (WebCore::RenderBox::marginEnd):
+ (WebCore::RenderBox::marginEndUsing):
+ (WebCore::RenderBox::setMarginStart):
+ (WebCore::RenderBox::setMarginEnd):
+ (WebCore::RenderBox::setMarginStartUsing):
+ (WebCore::RenderBox::setMarginEndUsing):
+ Helpers that allow for marginStart/End access and that also allow for marginStart/End to be computed based off another
+ element's block-flow and direction (typically the containing block).
+
+ (WebCore::RenderBox::computeBorderBoxLogicalWidth):
+ (WebCore::RenderBox::computeBorderBoxLogicalHeight):
+ (WebCore::RenderBox::computeContentBoxLogicalWidth):
+ (WebCore::RenderBox::computeContentBoxLogicalHeight):
+ Patched to use logical border/padding widths and heights.
+
+ (WebCore::RenderBox::perpendicularContainingBlockLogicalHeight):
+ A function for returning the available logical height of a perpendicular containing block. If a child has vertical
+ text for example and its block-flow is "lr", its available logical width is determined by the logical
+ height of the containing block when that containing block is perpendicular, e.g. "tb".
+
+ (WebCore::RenderBox::computeLogicalWidth):
+ (WebCore::RenderBox::computeLogicalWidthUsing):
+ Patched to be block-flow-aware and to use logical width values everywhere.
+
+ (WebCore::RenderBox::sizesToIntrinsicLogicalWidth):
+ Patched to use logical widths.
+
+ (WebCore::RenderBox::computeMarginsInContainingBlockInlineDirection):
+ A new function that is directionally abstract and that can handle the computation of margins in the containing
+ block's inline direction. This function is written such that a perpendicular child block flow can still be
+ pushed to the center, left or right in the containing block's inline direction.
+
+ (WebCore::RenderBox::computePositionedLogicalWidth):
+ This function is still largely unpatched. A future patch will address positioend elements.
+
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::stretchesToMinIntrinsicLogicalWidth):
+ * rendering/RenderFieldset.h:
+ (WebCore::RenderFieldset::stretchesToMinIntrinsicLogicalWidth):
+ Renames.
+
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::computeLogicalWidth):
+ Renames, but not converted yet. Tables will happen in a future patch.
+
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::marginStartUsing):
+ (WebCore::RenderStyle::marginEndUsing):
+ * rendering/style/RenderStyle.h:
+ Added helpers for accessing marginStart and End using another style's direction and block flow (typically will
+ be the containing block's).
+
+ fast/block/basic/016.html changed, since centering now always awards the extra pixel for odd widths to the end margin
+ instead of the right margin. This is a progression.
+
+ fast/css/logical-property-values.html is now reporting garbage results, which is expected now that some of the core layout
+ functions have been patched.
+
+ Horizontal block flows are untestable still, since the normal layout process incorrectly blows away any computed height values.
+
+2010-09-26 Antonio Gomes <agomes@rim.comg>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ DRT/Mac nodesFromRect support
+
+ [Mac][DRT] Implement LayoutTestController::nodesFromRect
+ https://bugs.webkit.org/show_bug.cgi?id=46580
+
+ Symbol files updated.
+
+ * WebCore.exp.in: Added symbols to Document::nodesFromRect and bits of JSDocument now
+ needed in WebKit/mac.
+ * WebCore.xcodeproj/project.pbxproj: Set both JSDocument.h and JSNodeList as private headers
+ now that they are referred in WebKit/mac.
+
+2010-09-26 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Implement location.origin and HTMLAnchorElement.origin
+ https://bugs.webkit.org/show_bug.cgi?id=46558
+
+ These attributes are part of my proposed URL API:
+ https://docs.google.com/document/edit?id=1r_VTFKApVOaNIkocrg0z-t7lZgzisTuGTXkdzAk4gLU&hl=en
+
+ Hixie thought we should implement as much of this API as makes sense on
+ Location and HTMLAnchorElement as well. I'm starting with the origin
+ attribute, because that seems like the biggest bang for the buck.
+
+ Tests: fast/dom/anchor-origin.html
+ http/tests/misc/location-origin.html
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * html/HTMLAnchorElement.cpp:
+ (WebCore::HTMLAnchorElement::origin):
+ * html/HTMLAnchorElement.h:
+ * html/HTMLAnchorElement.idl:
+ * page/Location.cpp:
+ (WebCore::Location::origin):
+ * page/Location.h:
+ * page/Location.idl:
+
+2010-09-26 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r68343.
+ http://trac.webkit.org/changeset/68343
+ https://bugs.webkit.org/show_bug.cgi?id=46581
+
+ broke GTK+ (Requested by kling on #webkit).
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::setFont):
+
+2010-09-25 Antonio Gomes <agomes@rim.com>
+
+ Reviewed by Kenneth Christiansen and Andreas Kling.
+
+ document.nodesFromRect() needs to be removed from Document.idl
+ https://bugs.webkit.org/show_bug.cgi?id=46492
+
+ As discussed with Sam Weinig on IRC, it was decided to removed
+ nodesFromRect() from the Document.idl, and that way, not exposing
+ it to Web content.
+
+ Reason: there is no plan to make it standard at the moment, and at the
+ very least, the method should had been originally added with the "webkit"
+ prefix, which was not the case.
+
+ * dom/Document.idl:
+
+2010-09-26 Renata Hodovan <reni@inf.u-szeged.hu>
+
+ Reviewed by Dirk Schulze.
+
+ SVGFEBlendElement doesn't support dynamic invalidation, when attributes change.
+ https://bugs.webkit.org/show_bug.cgi?id=46464
+
+ Tests: svg/dynamic-updates/SVGFEBlendElement-dom-in-attr.html
+ svg/dynamic-updates/SVGFEBlendElement-dom-in2-attr.html
+ svg/dynamic-updates/SVGFEBlendElement-dom-mode-attr.html
+ svg/dynamic-updates/SVGFEBlendElement-svgdom-in-prop.html
+ svg/dynamic-updates/SVGFEBlendElement-svgdom-in2-prop.html
+ svg/dynamic-updates/SVGFEBlendElement-svgdom-mode-prop.html
+
+ * svg/SVGFEBlendElement.cpp:
+ (WebCore::SVGFEBlendElement::svgAttributeChanged):
+ * svg/SVGFEBlendElement.h:
+
+2010-09-26 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Dan Bernstein.
+
+ Canvas: Crash when setting a font with size in 'ex' units
+ https://bugs.webkit.org/show_bug.cgi?id=46538
+
+ update() the style's font after setting the style's font description.
+ Needed because CSSPrimitiveValue::computeLengthDouble() later assumes
+ that the style's font is properly initialized (for xHeight().)
+
+ Fixes crash on IE test center's canvas-text-font-002 test.
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::setFont):
+
+2010-09-26 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by Eric Seidel.
+
+ [BREWMP] Don't pass PassOwnPtr in makeAllDirectories
+ https://bugs.webkit.org/show_bug.cgi?id=42058
+
+ Change makeAllDirectories to take a raw FileMgr pointer
+ because it is not safe to pass PassOwnPtr recursively.
+
+ * platform/brew/FileSystemBrew.cpp:
+ (WebCore::makeAllDirectories):
+
+2010-09-26 Robert Hogan <robert@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] fix http/tests/uri/escaped-entity.html
+
+ Replace invalid encodings with the appropriate escaped entity.
+
+ See also http://bugreports.qt.nokia.com/browse/QTBUG-13412
+
+ https://bugs.webkit.org/show_bug.cgi?id=45245
+
+ * platform/text/qt/TextCodecQt.cpp:
+ (WebCore::TextCodecQt::encode):
+
+2010-09-25 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ Fix the macro to bail out after setting the SVG style to 'initial'. Check that color is
+ SVGColor before calling colorFromSVGColorCSSValue which makes sure we don't set invalid
+ color. Also, doing the static cast in the caller and keeping the function
+ colorFromSVGColorCSSValue clean to accept only take SVGColor objects.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46471
+
+ Test: svg/css/invalid-color-crash.svg
+
+ * css/SVGCSSStyleSelector.cpp:
+ (WebCore::colorFromSVGColorCSSValue):
+ (WebCore::CSSStyleSelector::applySVGProperty):
+
+2010-09-25 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Tony Chang.
+
+ FormatBlockCommand's modifyRange and doApply should be merged
+ https://bugs.webkit.org/show_bug.cgi?id=46504
+
+ Isolated the code in doApply to insert and remove lists for single paragraph into doApplyForSingleParagraph.
+ Merged the code in modifyRange into doApply and cleaned up.
+
+ No new tests are added since this is a cleanup.
+
+ * editing/FormatBlockCommand.cpp:
+ (WebCore::FormatBlockCommand::doApply): Merged with modifyRange; calls doApplyForSingleParagraph.
+ (WebCore::FormatBlockCommand::doApplyForSingleParagraph): Added.
+ * editing/FormatBlockCommand.h:
+
+2010-09-25 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by John Sullivan.
+
+ <rdar://problem/8478160> Null deref in InlineBox::height()
+ https://bugs.webkit.org/show_bug.cgi?id=45344
+
+ Test: fast/css/first-line-parent-style-different.html
+
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::firstLineStyleSlowCase): Set the pseudo style bit on the RenderStyle
+ which is going to supply the first-line style rather than on this object’s RenderStyle. The
+ styles may differ.
+
+2010-09-25 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by John Sullivan.
+
+ <rdar://problem/8478182> Make canHyphenate() return false for unsupported locales
+
+ No change in functionality, hence no new test.
+
+ * platform/text/cf/HyphenationCF.cpp:
+ (WebCore::::createValueForKey): Return 0 if hyphenation is not available for the locale.
+ (WebCore::cfLocaleCache): Moved the definition of the cache from lastHyphenLocation() to
+ this new getter to allow canHyphenate() to share it.
+ (WebCore::canHyphenate): Now returns true only if hyphenation is available.
+ (WebCore::lastHyphenLocation): Added an assertion.
+
+2010-09-25 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] GraphicsContext::setLineDash() should scale dashOffset to penWidth
+ https://bugs.webkit.org/show_bug.cgi?id=46548
+
+ Fixes incorrect rendering of <http://www.carto.net/svg/samples/animated_bustrack.shtml>
+
+ This is covered by existing layout tests which need to be rebaselined.
+
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::setLineDash):
+
+2010-09-24 Sam Weinig <sam@webkit.org>
+
+ Rubber-stamped by Dan Bernstein.
+
+ Fix accidental increase in the size of InlineBox by using a bit
+ field to indicate that a bool should only take up 1 bit.
+
+ * rendering/InlineBox.h:
+
+2010-09-24 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Accelerated transitions do not suspend/resume properly.
+ https://bugs.webkit.org/show_bug.cgi?id=43792
+
+ (1) Fix regression from r68233, where if an animation affected two
+ properties, only one would animate. The testcase tests this.
+
+ (2) Fix a flash at the end of an animation or transition that has been
+ paused and resumed. The flash occurred because we used CAAnimation's
+ timeOffset when resuming to push the start of the animation into
+ the past. However, timeOffset does not play nicely with fill modes,
+ causing a single frame of animation with the element in its unanimated state.
+
+ Fixed this by offsetting the beginTime into the past, rather than setting
+ timeOffset. Normally we submit animations with beginTime == 0, and rely
+ on CA assigning a beginTime when the animation is committed. This beginTime
+ is then passed to AnimationController to sync hardware and software animations.
+ However, since the code now assigns beginTimes in the past (on resume),
+ we now have to denote whether we've done this, and send an appropriate
+ timestamp back to AnimationController.
+
+ (3) Finally, the patch removes PropertyAnimationPair and just uses LayerPropertyAnimation
+ instead. This is just cleanup.
+
+ Test: animations/opacity-transform-animation.html
+
+ * platform/graphics/mac/GraphicsLayerCA.h: Remove PropertyAnimationPair,
+ and change AnimationsMap to store a vector of LayerPropertyAnimation.
+ New method, animationDidStart(), is called from the -animationDidStart: callback.
+
+ * platform/graphics/mac/GraphicsLayerCA.mm:
+ (-[WebAnimationDelegate animationDidStart:]): Just call m_graphicsLayer->animationDidStart()
+ now.
+ (WebCore::animationIdentifier): We need to pass in the property, to fix (1)
+ (WebCore::GraphicsLayerCA::moveOrCopyAnimationsForProperty): Copy the WebKitAnimationBeginTimeSet
+ value, if present.
+ (WebCore::GraphicsLayerCA::animationDidStart): Call notifyAnimationStarted() on the client,
+ after testing if we set a non-zero beginTime on this particular animation.
+ (WebCore::GraphicsLayerCA::updateLayerAnimations): Change to use LayerPropertyAnimation.
+ (WebCore::GraphicsLayerCA::setCAAnimationOnLayer): Set value for WebKitAnimationBeginTimeSetKey
+ if we have a non-zero timeOffset. Make animationID an NSString, to avoid several conversions.
+ (WebCore::GraphicsLayerCA::removeCAAnimationFromLayer): Make animationID an NSString, to
+ avoid several conversions.
+ (WebCore::copyAnimationProperties): Copy WebKitAnimationBeginTimeSetKey if present.
+ (WebCore::GraphicsLayerCA::pauseCAAnimationOnLayer): Make animationID an NSString, to avoid
+ several conversions.
+
+2010-09-24 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ SVG: Avoid calling pow() in genericParseNumber() unless necessary
+ https://bugs.webkit.org/show_bug.cgi?id=46537
+
+ 0.4% speedup on <http://themaninblue.com/experiment/AnimationBenchmark/svg/>
+
+ * svg/SVGParserUtilities.cpp:
+ (WebCore::genericParseNumber): Only call pow() when we have an exponent.
+
+2010-09-24 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Gustavo Noronha Silva.
+
+ [GTK] opening local files on win32
+ https://bugs.webkit.org/show_bug.cgi?id=31066
+
+ This is tested by changes to the testmimehandling API test.
+
+ * platform/network/soup/ResourceHandleSoup.cpp: Properly convert the GContentType
+ of a file into a mime type. This is important for non-Unix platforms.
+
+2010-09-24 Pawel Hajdan <phajdan.jr@chromium.org>
+
+ Reviewed by Dumitru Daniliuc.
+
+ Move the implementation of chromium_vfs to webkit for POSIX.
+ This allows us to link Chrome with system-provided SQLite on Linux.
+ See also http://code.google.com/p/chromium/issues/detail?id=22208.
+ https://bugs.webkit.org/show_bug.cgi?id=45416
+
+ No new tests.
+
+ * platform/sql/chromium/SQLiteFileSystemChromiumPosix.cpp:
+ (sqliteErrorFromPosixError):
+ (releaseLockInfo):
+ (releaseOpenInfo):
+ (findLockInfo):
+ (chromiumCheckReservedLock):
+ (rangeLock):
+ (chromiumLock):
+ (closePendingFds):
+ (chromiumUnlock):
+ (chromiumCloseNoLock):
+ (chromiumClose):
+ (chromiumCheckReservedLockNoop):
+ (chromiumLockNoop):
+ (chromiumUnlockNoop):
+ (seekAndRead):
+ (chromiumRead):
+ (seekAndWrite):
+ (chromiumWrite):
+ (syncWrapper):
+ (chromiumSync):
+ (chromiumTruncate):
+ (chromiumFileSize):
+ (chromiumFileControl):
+ (chromiumSectorSize):
+ (chromiumDeviceCharacteristics):
+ (fillInChromiumFile):
+ (findReusableFd):
+ (chromiumOpen):
+ (chromiumDelete):
+ (chromiumAccess):
+ (chromiumFullPathname):
+ (chromiumDlOpen):
+ (chromiumDlError):
+ (chromiumDlSym):
+ (chromiumDlClose):
+ (chromiumRandomness):
+ (chromiumSleep):
+ (chromiumCurrentTime):
+ (chromiumGetLastError):
+ (WebCore::SQLiteFileSystem::registerSQLiteVFS):
+
+2010-09-24 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Dirk Schulze.
+
+ SVG: Make SVGLength's stringToLengthType() stricter and faster
+ https://bugs.webkit.org/show_bug.cgi?id=46066
+
+ Only accept unit names immediately following the numeric value.
+ This behavior matches Gecko.
+
+ Also, using String::endsWith("foo") caused a temporary WTF::String to be created.
+ Avoid this by comparing characters directly.
+
+ 10.5% speedup on <http://data.xeoh.net/svg.benchmark/>
+
+ Test: svg/custom/invalid-length-units.html
+
+ * svg/SVGLength.cpp:
+ (WebCore::stringToLengthType):
+ (WebCore::SVGLength::setValueAsString):
+
+2010-09-24 Luiz Agostini <luiz.agostini@openbossa.org>
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Keep viewport information in Document
+ https://bugs.webkit.org/show_bug.cgi?id=46385
+
+ The viewport meta data (layout viewport, scale) needs to be set again when bringing
+ back a page from the page cache. As the viewport metadata is only retrieved while parsing
+ the document, we need to store it in the Document class.
+
+ Test: fast/viewport/viewport-128.html
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * dom/Document.cpp:
+ (WebCore::Document::processViewport):
+ (WebCore::Document::setInPageCache):
+ * dom/Document.h:
+ (WebCore::Document::viewportArguments):
+
+2010-09-24 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46496, rename containingBlockWidthForContent to
+ containingBlockLogicalWidthForContent.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::localCaretRect):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::containingBlockLogicalWidthForContent):
+ (WebCore::RenderBox::computeLogicalWidth):
+ (WebCore::RenderBox::computeReplacedWidthUsing):
+ * rendering/RenderBox.h:
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::relativePositionOffsetX):
+ (WebCore::RenderBoxModelObject::containingBlockLogicalWidthForContent):
+ * rendering/RenderBoxModelObject.h:
+
+2010-09-24 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46489, rename the lineWidth and left/RightOffset methods
+ to reflect that they will be logical.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::determineHorizontalPosition):
+ (WebCore::RenderBlock::leftSelectionOffset):
+ (WebCore::RenderBlock::rightSelectionOffset):
+ (WebCore::RenderBlock::positionNewFloats):
+ (WebCore::RenderBlock::logicalLeftOffsetForContent):
+ (WebCore::RenderBlock::logicalLeftOffsetForLine):
+ (WebCore::RenderBlock::logicalRightOffsetForContent):
+ (WebCore::RenderBlock::logicalRightOffsetForLine):
+ (WebCore::RenderBlock::availableLogicalWidthForLine):
+ (WebCore::RenderBlock::getClearDelta):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::logicalRightOffsetForLine):
+ (WebCore::RenderBlock::logicalLeftOffsetForLine):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
+ (WebCore::RenderBlock::layoutInlineChildren):
+ (WebCore::RenderBlock::skipTrailingWhitespace):
+ (WebCore::RenderBlock::skipLeadingWhitespace):
+ (WebCore::RenderBlock::fitBelowFloats):
+ (WebCore::RenderBlock::findNextLineBreak):
+ (WebCore::RenderBlock::checkLinesForTextOverflow):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::containingBlockWidthForContent):
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::applyLineClamp):
+ * rendering/RenderListItem.cpp:
+ (WebCore::RenderListItem::positionListMarker):
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::computeLogicalWidth):
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::selectionTop):
+
+2010-09-24 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Simon Fraser.
+
+ Comply with spec by generalizing container on which transforms can be applied.
+ https://bugs.webkit.org/show_bug.cgi?id=46485
+
+ Already covered by existing tests.
+
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::getTransformFromContainer):
+
+2010-09-24 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46482, rename the various prefWidth functions to use
+ preferredLogicalWidth.
+
+ * rendering/AutoTableLayout.cpp:
+ (WebCore::AutoTableLayout::recalcColumn):
+ (WebCore::AutoTableLayout::computePreferredLogicalWidths):
+ (WebCore::AutoTableLayout::calcEffectiveWidth):
+ * rendering/AutoTableLayout.h:
+ * rendering/FixedTableLayout.cpp:
+ (WebCore::FixedTableLayout::calcWidthArray):
+ (WebCore::FixedTableLayout::computePreferredLogicalWidths):
+ * rendering/FixedTableLayout.h:
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlockChildren):
+ (WebCore::RenderBlock::layoutPositionedObjects):
+ (WebCore::RenderBlock::getClearDelta):
+ (WebCore::RenderBlock::computePreferredLogicalWidths):
+ (WebCore::RenderBlock::computeInlinePreferredLogicalWidths):
+ (WebCore::RenderBlock::computeBlockPreferredLogicalWidths):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::dirtyLineBoxesForRenderer):
+ (WebCore::RenderBlock::layoutInlineChildren):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::RenderBox):
+ (WebCore::RenderBox::minPreferredLogicalWidth):
+ (WebCore::RenderBox::maxPreferredLogicalWidth):
+ (WebCore::RenderBox::computeLogicalWidth):
+ (WebCore::RenderBox::computeLogicalWidthUsing):
+ (WebCore::RenderBox::computePositionedLogicalWidth):
+ (WebCore::RenderBox::computePositionedLogicalWidthUsing):
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::computePreferredLogicalWidths):
+ * rendering/RenderCounter.cpp:
+ (WebCore::RenderCounter::computePreferredLogicalWidths):
+ * rendering/RenderCounter.h:
+ * rendering/RenderDataGrid.cpp:
+ (WebCore::RenderDataGrid::computePreferredLogicalWidths):
+ * rendering/RenderDataGrid.h:
+ * rendering/RenderFieldset.cpp:
+ (WebCore::RenderFieldset::computePreferredLogicalWidths):
+ * rendering/RenderFieldset.h:
+ * rendering/RenderFileUploadControl.cpp:
+ (WebCore::RenderFileUploadControl::computePreferredLogicalWidths):
+ * rendering/RenderFileUploadControl.h:
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::calcHorizontalPrefWidths):
+ (WebCore::RenderFlexibleBox::calcVerticalPrefWidths):
+ (WebCore::RenderFlexibleBox::computePreferredLogicalWidths):
+ (WebCore::RenderFlexibleBox::allowedChildFlex):
+ * rendering/RenderFlexibleBox.h:
+ * rendering/RenderFrameBase.cpp:
+ (WebCore::RenderFrameBase::layoutWithFlattening):
+ * rendering/RenderHTMLCanvas.cpp:
+ (WebCore::RenderHTMLCanvas::canvasSizeChanged):
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::imageChanged):
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::computePreferredLogicalWidths):
+ * rendering/RenderListBox.h:
+ * rendering/RenderListItem.cpp:
+ (WebCore::RenderListItem::updateMarkerLocation):
+ (WebCore::RenderListItem::computePreferredLogicalWidths):
+ * rendering/RenderListItem.h:
+ * rendering/RenderListMarker.cpp:
+ (WebCore::RenderListMarker::layout):
+ (WebCore::RenderListMarker::computePreferredLogicalWidths):
+ (WebCore::RenderListMarker::updateMargins):
+ * rendering/RenderListMarker.h:
+ * rendering/RenderMenuList.cpp:
+ (WebCore::RenderMenuList::computePreferredLogicalWidths):
+ * rendering/RenderMenuList.h:
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::RenderObject):
+ (WebCore::RenderObject::setPreferredLogicalWidthsDirty):
+ (WebCore::RenderObject::invalidateContainerPreferredLogicalWidths):
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::preferredLogicalWidthsDirty):
+ (WebCore::RenderObject::setNeedsLayoutAndPrefWidthsRecalc):
+ (WebCore::RenderObject::minPreferredLogicalWidth):
+ (WebCore::RenderObject::maxPreferredLogicalWidth):
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::computePreferredLogicalWidths):
+ * rendering/RenderReplaced.h:
+ * rendering/RenderReplica.cpp:
+ (WebCore::RenderReplica::computePreferredLogicalWidths):
+ * rendering/RenderReplica.h:
+ * rendering/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::computePreferredLogicalWidths):
+ * rendering/RenderSVGRoot.h:
+ * rendering/RenderScrollbarPart.cpp:
+ (WebCore::RenderScrollbarPart::computePreferredLogicalWidths):
+ * rendering/RenderScrollbarPart.h:
+ * rendering/RenderSlider.cpp:
+ (WebCore::RenderSlider::computePreferredLogicalWidths):
+ * rendering/RenderSlider.h:
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::computeLogicalWidth):
+ (WebCore::RenderTable::computePreferredLogicalWidths):
+ * rendering/RenderTable.h:
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::computePreferredLogicalWidths):
+ * rendering/RenderTableCell.h:
+ * rendering/RenderTableCol.cpp:
+ (WebCore::RenderTableCol::computePreferredLogicalWidths):
+ * rendering/RenderTableCol.h:
+ * rendering/RenderText.cpp:
+ (WebCore::RenderText::trimmedPrefWidths):
+ (WebCore::RenderText::minPreferredLogicalWidth):
+ (WebCore::RenderText::maxPreferredLogicalWidth):
+ (WebCore::RenderText::computePreferredLogicalWidths):
+ (WebCore::RenderText::width):
+ * rendering/RenderText.h:
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::computePreferredLogicalWidths):
+ * rendering/RenderTextControl.h:
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::preferredContentWidth):
+ (WebCore::RenderTextControlSingleLine::preferredDecorationWidthRight):
+ * rendering/RenderVideo.cpp:
+ (WebCore::RenderVideo::updateIntrinsicSize):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::RenderView):
+ (WebCore::RenderView::computePreferredLogicalWidths):
+ (WebCore::RenderView::layout):
+ * rendering/RenderView.h:
+ * rendering/TableLayout.h:
+
+2010-09-24 Jian Li <jianli@chromium.org>
+
+ Reviewed by Alexey Proskuryakov.
+
+ DOMWindow::revokeBlobURL erroneously uses ParsedURLString.
+ https://bugs.webkit.org/show_bug.cgi?id=46434
+
+ Test: fast/files/revoke-blob-url.html
+
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::revokeBlobURL):
+
+2010-09-24 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46474
+
+ Patch computeWidthUsing to be block-flow-aware. Rename the WidthType enum to LogicalWidthType. Make computeLogicalWidthUsing
+ query the style for logical width properties instead of width properties.
+
+ fast/css/logical-property-resolution.html now fails and gives bad results. This is expected. It will become correct
+ again as more layout code gets patched.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::computeLogicalWidth):
+ (WebCore::RenderBox::computeLogicalWidthUsing):
+ (WebCore::RenderBox::sizesToIntrinsicWidth):
+ * rendering/RenderBox.h:
+
+2010-09-24 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Clicking "Select All" in audits panel has no effect when the checkbox is unchecked
+ Only add category event listeners to real categories, not to "Select All"
+ https://bugs.webkit.org/show_bug.cgi?id=46467
+
+ * inspector/front-end/AuditLauncherView.js:
+ (WebInspector.AuditLauncherView.prototype._createCategoryElement):
+
+2010-09-24 Hans Wennborg <hans@chromium.org>
+
+ Reviewed by Steve Block.
+
+ Remove unnecessary casts in DeviceOrientation V8 bindings
+ https://bugs.webkit.org/show_bug.cgi?id=46466
+
+ Remove unnecessary casts of v8::Value::NumberValue() to double from
+ the custom v8 bindings code for DeviceOrientation/Motion.
+
+ No new tests: just cleanup, no new functionality.
+
+ * bindings/v8/custom/V8DeviceMotionEventCustom.cpp:
+ (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback):
+ * bindings/v8/custom/V8DeviceOrientationEventCustom.cpp:
+ (WebCore::V8DeviceOrientationEvent::initDeviceOrientationEventCallback):
+
+2010-09-24 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: move searchingForNode flag in InspectorController under control of InspectorCookies.
+
+ Four functions from Inspector IDL go away.
+ Searching for node feature of Inspector keeps alive even after navigation.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46462
+
+ * inspector/Inspector.idl:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::updateInspectorStateCookie):
+ (WebCore::InspectorController::restoreInspectorStateFromCookie):
+ (WebCore::InspectorController::setSearchingForNode):
+ (WebCore::InspectorController::populateScriptObjects):
+ * inspector/InspectorController.h:
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel.prototype.hide):
+ (WebInspector.ElementsPanel.prototype.updateFocusedNode):
+ (WebInspector.ElementsPanel.prototype._setSearchingForNode):
+ (WebInspector.ElementsPanel.prototype.setSearchingForNode):
+ (WebInspector.ElementsPanel.prototype.toggleSearchingForNode):
+ * inspector/front-end/inspector.js:
+ (WebInspector._updateFocusedNode):
+
+2010-09-24 Andrei Popescu <andreip@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ IDBTransactionCoordinator incorrectly assumes that aborted transactions must have been started or running.
+ https://bugs.webkit.org/show_bug.cgi?id=46459
+
+ No new tests, storage/indexeddb/transaction-basics.html covers this.
+
+ Also fixes http://code.google.com/p/chromium/issues/detail?id=56732
+
+ * storage/IDBTransactionCoordinator.cpp:
+ (WebCore::IDBTransactionCoordinator::didFinishTransaction):
+
+2010-09-24 Hans Wennborg <hans@chromium.org>
+
+ Reviewed by Steve Block.
+
+ Update DeviceMotionEvent to spec
+ https://bugs.webkit.org/show_bug.cgi?id=46344
+
+ The spec has changed: the DeviceMotionEvent attributes accelerationX,
+ accelerationY, etc. have been baked into an 'acceleration' attribute
+ which returns an object with x, y, and z values. Likewise for the
+ rotation rate. The 'accelerationIncludingGravity' attribute is new.
+
+ * WebCore.exp.in:
+ The DeviceMotionData::create member function has changed. Also export
+ create functions for DeviceMotionData::Acceleration and RotationRate.
+
+ * bindings/js/JSDeviceMotionEventCustom.cpp:
+ (WebCore::JSDeviceMotionEvent::acceleration):
+ (WebCore::JSDeviceMotionEvent::accelerationIncludingGravity):
+ (WebCore::JSDeviceMotionEvent::rotationRate):
+ (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent):
+ Manually create and return objects with the right attributes for
+ acceleration, accelerationIncludingGravity, and rotationRate.
+ When creating the DeviceMotionData object in initDeviceMotionEvent,
+ accept any input objects that have the right attributes.
+
+ * bindings/v8/custom/V8DeviceMotionEventCustom.cpp:
+ (WebCore::V8DeviceMotionEvent::accelerationAccessorGetter):
+ (WebCore::V8DeviceMotionEvent::accelerationIncludingGravityAccessorGetter):
+ (WebCore::V8DeviceMotionEvent::rotationRateAccessorGetter):
+ (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback):
+ V8 counterpart to the JSC code above.
+
+ * dom/DeviceMotionData.cpp:
+ (WebCore::DeviceMotionData::Acceleration::create):
+ (WebCore::DeviceMotionData::Acceleration::Acceleration):
+ (WebCore::DeviceMotionData::RotationRate::create):
+ (WebCore::DeviceMotionData::RotationRate::RotationRate):
+ (WebCore::DeviceMotionData::create):
+ (WebCore::DeviceMotionData::DeviceMotionData):
+ * dom/DeviceMotionData.h:
+ (WebCore::DeviceMotionData::Acceleration::canProvideX):
+ (WebCore::DeviceMotionData::Acceleration::canProvideY):
+ (WebCore::DeviceMotionData::Acceleration::canProvideZ):
+ (WebCore::DeviceMotionData::Acceleration::x):
+ (WebCore::DeviceMotionData::Acceleration::y):
+ (WebCore::DeviceMotionData::Acceleration::z):
+ (WebCore::DeviceMotionData::RotationRate::canProvideAlpha):
+ (WebCore::DeviceMotionData::RotationRate::canProvideBeta):
+ (WebCore::DeviceMotionData::RotationRate::canProvideGamma):
+ (WebCore::DeviceMotionData::RotationRate::alpha):
+ (WebCore::DeviceMotionData::RotationRate::beta):
+ (WebCore::DeviceMotionData::RotationRate::gamma):
+ (WebCore::DeviceMotionData::acceleration):
+ (WebCore::DeviceMotionData::accelerationIncludingGravity):
+ (WebCore::DeviceMotionData::rotationRate):
+ Add member classes Acceleration and RotationRate to DeviceMotionData.
+
+ * dom/DeviceMotionEvent.idl:
+ Update according to the spec. Acceleration and RotationRate need not
+ be backed by native classes.
+
+2010-09-24 Romain Pokrzywka <romain@kdab.com>
+
+ Reviewed by Simon Hausmann.
+
+ [Qt] Fix the Wince build.
+
+ * WebCore.pro: Apply msvc flags to wince, too.
+
+2010-09-24 Anders Bakken <agbakken@gmail.com>
+
+ Reviewed by Simon Hausmann.
+
+ [Qt] Enable building Qt/Webkit with debug symbols
+
+ With this patch one can configure with -webkit-debug to build Webkit
+ with debug symbols without having to manually edit WebCore.pro.
+
+ * WebCore.pro:
+
+2010-09-24 Yael Aharon <yael.aharon@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Web Sockets are insecure with QtWebKit
+ https://bugs.webkit.org/show_bug.cgi?id=44769
+
+ Throw an error when the server certificate is not valid.
+ DRT currently does not support secure websocket connection,
+ so no new tests. This was tested with the server at
+ http://code.google.com/p/pywebsocket instead.
+
+ * platform/network/qt/SocketStreamHandleQt.cpp:
+ (WebCore::SocketStreamHandlePrivate::socketSslErrors):
+
+2010-09-24 Jia Pu <jpu@apple.com>
+
+ Reviewed by Shinichiro Hamaji.
+
+ Need to remove autocorrection underlines in current line when newline is entered.
+ https://bugs.webkit.org/show_bug.cgi?id=45709
+ <rdar://problem/8335576>
+
+ This change affects only Mac OSX build.
+
+ * dom/DocumentMarker.h: Added "CorrectionIndicator" to indicate the words on which we need
+ to draw autocorrection underline. We cannot use existing "Replacement" for this purpose,
+ since it is not meant to be removed once it is added. But we need to remove all autocorrection
+ underlines when a line break or paragraph separator is inserted, which is the behavior in
+ NSTextView. Hence we need a separate marker value for drawing autocorrection underline.
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Add "CorrectionIndicator" when
+ autocorrection takes place.
+ (WebCore::Editor::changeSelectionAfterCommand): Remove "CorrectionIndicator" markers if the
+ command results in inserting paragraph separator.
+
+ * rendering/InlineTextBox.cpp:
+ (WebCore::textCheckingLineStyleForMarkerType): Use "CorrectionIndicator" marker instead of
+ "Replacement" to draw autocorrection underline.
+ (WebCore::InlineTextBox::paintDocumentMarkers): Ditto.
+
+2010-09-24 Eric Uhrhane <ericu@chromium.org>
+
+ Reviewed by David Levin.
+
+ Remove unnecessary parameter from AsyncFileWriterClient::didTruncate
+ https://bugs.webkit.org/show_bug.cgi?id=46390
+
+ * fileapi/AsyncFileWriterClient.h:
+
+ Added state to FileWriter to replace the parameter.
+ * fileapi/FileWriter.h:
+ * fileapi/FileWriter.cpp:
+ (WebCore::FileWriter::truncate):
+ (WebCore::FileWriter::didTruncate):
+
+2010-09-24 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r68236.
+ http://trac.webkit.org/changeset/68236
+ https://bugs.webkit.org/show_bug.cgi?id=46449
+
+ compile fix didn't work (Requested by dino___ on #webkit).
+
+ * WebCore.exp.in:
+ * bindings/js/JSDeviceMotionEventCustom.cpp:
+ (WebCore::JSDeviceMotionEvent::xAcceleration):
+ (WebCore::JSDeviceMotionEvent::yAcceleration):
+ (WebCore::JSDeviceMotionEvent::zAcceleration):
+ (WebCore::JSDeviceMotionEvent::xRotationRate):
+ (WebCore::JSDeviceMotionEvent::yRotationRate):
+ (WebCore::JSDeviceMotionEvent::zRotationRate):
+ (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent):
+ * bindings/v8/custom/V8DeviceMotionEventCustom.cpp:
+ (WebCore::V8DeviceMotionEvent::xAccelerationAccessorGetter):
+ (WebCore::V8DeviceMotionEvent::yAccelerationAccessorGetter):
+ (WebCore::V8DeviceMotionEvent::zAccelerationAccessorGetter):
+ (WebCore::V8DeviceMotionEvent::xRotationRateAccessorGetter):
+ (WebCore::V8DeviceMotionEvent::yRotationRateAccessorGetter):
+ (WebCore::V8DeviceMotionEvent::zRotationRateAccessorGetter):
+ (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback):
+ * dom/DeviceMotionData.cpp:
+ (WebCore::DeviceMotionData::create):
+ (WebCore::DeviceMotionData::DeviceMotionData):
+ * dom/DeviceMotionData.h:
+ (WebCore::DeviceMotionData::xAcceleration):
+ (WebCore::DeviceMotionData::yAcceleration):
+ (WebCore::DeviceMotionData::zAcceleration):
+ (WebCore::DeviceMotionData::xRotationRate):
+ (WebCore::DeviceMotionData::yRotationRate):
+ (WebCore::DeviceMotionData::zRotationRate):
+ (WebCore::DeviceMotionData::canProvideXAcceleration):
+ (WebCore::DeviceMotionData::canProvideYAcceleration):
+ (WebCore::DeviceMotionData::canProvideZAcceleration):
+ (WebCore::DeviceMotionData::canProvideXRotationRate):
+ (WebCore::DeviceMotionData::canProvideYRotationRate):
+ (WebCore::DeviceMotionData::canProvideZRotationRate):
+ * dom/DeviceMotionEvent.idl:
+
+2010-09-24 Chris Guillory <chris.guillory@google.com>
+
+ Reviewed by Chris Fleizach.
+
+ Send webkit accessibility notifications to Chromium.
+ https://bugs.webkit.org/show_bug.cgi?id=45156
+
+ * WebCore.gypi:
+ * accessibility/chromium/AXObjectCacheChromium.cpp:
+ (WebCore::AXObjectCache::postPlatformNotification):
+ (WebCore::AXObjectCache::handleFocusedUIElementChanged):
+ (WebCore::AXObjectCache::handleScrolledToAnchor):
+ * dom/Document.cpp:
+ (WebCore::Document::implicitClose):
+ (WebCore::Document::setFocusedNode):
+ * editing/SelectionController.h:
+ * page/ChromeClient.h:
+ (WebCore::ChromeClient::postAccessibilityNotification):
+ * page/FrameView.cpp:
+ (WebCore::FrameView::layout):
+
+2010-09-24 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46454, rename a bunch of the width and height calculation methods.
+
+ calcReplacedWidth -> computeReplacedWidth
+
+ calcHorizontalMargins -> computeInlineDirectionMargins
+
+ calcVerticalMargins -> computeBlockDirectionMargins
+
+ calcWidthUsing -> computeLogicalWidthUsing
+
+ calcHeightUsing -> computeLogicalHeightUsing
+
+ calcReplacedHeight/HeightUsing -> computeReplacedHeight/HeightUsing
+
+ calcAbsoluteHorizontalValues -> computePositionedLogicalWidthUsing
+
+ calcAbsoluteVerticalValues -> computePositionedLogicalHeightUsing
+
+ calcAbsoluteHorizontal -> computePositionedLogicalWIdth
+
+ calcAbsoluteVertical -> computePositionedLogicalHeight
+
+ calcAbsoluteHorizontalReplaced -> computePositionedLogicalWidthReplaced
+
+ calcAbsoluteVerticalReplaced -> computePositionedLogicalHeightReplaced
+
+ calcBorderBoxWidth/Height -> computeBorderBoxLogicalWidth/LogicalHeight
+
+ calcContentBoxWidth/Height -> computeContentBoxLogicalWidth/LogicalHeight
+
+ shouldCalculateSizeAsReplaced -> shouldComputeSizeAsReplaced
+
+ calcPercentageHeight -> computePercentageLogicalHeight
+
+ * rendering/AutoTableLayout.cpp:
+ (WebCore::AutoTableLayout::recalcColumn):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::adjustPositionedBlock):
+ (WebCore::RenderBlock::determineHorizontalPosition):
+ (WebCore::RenderBlock::layoutBlockChild):
+ (WebCore::RenderBlock::insertFloatingObject):
+ (WebCore::RenderBlock::calcPrefWidths):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::computeBorderBoxLogicalWidth):
+ (WebCore::RenderBox::computeBorderBoxLogicalHeight):
+ (WebCore::RenderBox::computeContentBoxLogicalWidth):
+ (WebCore::RenderBox::computeContentBoxLogicalHeight):
+ (WebCore::RenderBox::computeLogicalWidth):
+ (WebCore::RenderBox::computeLogicalWidthUsing):
+ (WebCore::RenderBox::computeInlineDirectionMargins):
+ (WebCore::RenderBox::computeLogicalHeight):
+ (WebCore::RenderBox::computeLogicalHeightUsing):
+ (WebCore::RenderBox::computePercentageLogicalHeight):
+ (WebCore::RenderBox::computeReplacedWidth):
+ (WebCore::RenderBox::computeReplacedWidthUsing):
+ (WebCore::RenderBox::computeReplacedHeight):
+ (WebCore::RenderBox::computeReplacedHeightUsing):
+ (WebCore::RenderBox::availableHeightUsing):
+ (WebCore::RenderBox::computeBlockDirectionMargins):
+ (WebCore::RenderBox::computePositionedLogicalWidth):
+ (WebCore::RenderBox::computePositionedLogicalWidthUsing):
+ (WebCore::RenderBox::computePositionedLogicalHeight):
+ (WebCore::RenderBox::computePositionedLogicalHeightUsing):
+ (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
+ (WebCore::RenderBox::computePositionedLogicalHeightReplaced):
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::shouldComputeSizeAsReplaced):
+ * rendering/RenderDataGrid.cpp:
+ (WebCore::RenderDataGrid::calcPrefWidths):
+ * rendering/RenderFileUploadControl.cpp:
+ (WebCore::RenderFileUploadControl::calcPrefWidths):
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::calcPrefWidths):
+ (WebCore::RenderFlexibleBox::layoutHorizontalBox):
+ (WebCore::RenderFlexibleBox::layoutVerticalBox):
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::computeReplacedWidth):
+ (WebCore::RenderImage::computeReplacedHeight):
+ (WebCore::RenderImage::calcAspectRatioWidth):
+ (WebCore::RenderImage::calcAspectRatioHeight):
+ * rendering/RenderImage.h:
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::calcPrefWidths):
+ * rendering/RenderMenuList.cpp:
+ (WebCore::RenderMenuList::calcPrefWidths):
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::container):
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::computeBlockDirectionMargins):
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::computeReplacedWidth):
+ (WebCore::RenderReplaced::computeReplacedHeight):
+ (WebCore::RenderReplaced::calcAspectRatioWidth):
+ (WebCore::RenderReplaced::calcAspectRatioHeight):
+ (WebCore::RenderReplaced::calcPrefWidths):
+ * rendering/RenderReplaced.h:
+ * rendering/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::calcPrefWidths):
+ (WebCore::RenderSVGRoot::computeReplacedWidth):
+ (WebCore::RenderSVGRoot::computeReplacedHeight):
+ * rendering/RenderSVGRoot.h:
+ * rendering/RenderSlider.cpp:
+ (WebCore::RenderSlider::calcPrefWidths):
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::computeLogicalWidth):
+ (WebCore::RenderTable::layout):
+ * rendering/RenderTableRow.cpp:
+ (WebCore::RenderTableRow::layout):
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::calcPrefWidths):
+ * rendering/RenderVideo.cpp:
+ (WebCore::RenderVideo::computeReplacedWidth):
+ (WebCore::RenderVideo::computeReplacedHeight):
+ * rendering/RenderVideo.h:
+
+2010-09-23 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46451
+
+ Rename calcWidth to computeLogicalWidth. Rename calcHeight to computeLogicalHeight.
+
+ * rendering/RenderApplet.cpp:
+ (WebCore::RenderApplet::layout):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlock):
+ (WebCore::RenderBlock::insertFloatingObject):
+ (WebCore::RenderBlock::getClearDelta):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::computeLogicalWidth):
+ (WebCore::RenderBox::computeLogicalHeight):
+ (WebCore::RenderBox::calcPercentageHeight):
+ (WebCore::RenderBox::calcReplacedHeightUsing):
+ (WebCore::RenderBox::availableHeightUsing):
+ (WebCore::RenderBox::calcAbsoluteHorizontal):
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::tryLayoutDoingPositionedMovementOnly):
+ * rendering/RenderEmbeddedObject.cpp:
+ (WebCore::RenderEmbeddedObject::layout):
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::layoutBlock):
+ (WebCore::RenderFlexibleBox::layoutHorizontalBox):
+ (WebCore::RenderFlexibleBox::layoutVerticalBox):
+ * rendering/RenderForeignObject.cpp:
+ (WebCore::RenderForeignObject::computeLogicalWidth):
+ (WebCore::RenderForeignObject::computeLogicalHeight):
+ * rendering/RenderForeignObject.h:
+ * rendering/RenderHTMLCanvas.cpp:
+ (WebCore::RenderHTMLCanvas::canvasSizeChanged):
+ * rendering/RenderIFrame.cpp:
+ (WebCore::RenderIFrame::computeLogicalHeight):
+ (WebCore::RenderIFrame::computeLogicalWidth):
+ (WebCore::RenderIFrame::layout):
+ * rendering/RenderIFrame.h:
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::imageChanged):
+ * rendering/RenderIndicator.cpp:
+ (WebCore::RenderIndicator::layout):
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::computeLogicalHeight):
+ * rendering/RenderListBox.h:
+ * rendering/RenderMeter.cpp:
+ (WebCore::RenderMeter::computeLogicalWidth):
+ (WebCore::RenderMeter::computeLogicalHeight):
+ * rendering/RenderMeter.h:
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::layout):
+ * rendering/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::layout):
+ * rendering/RenderSlider.cpp:
+ (WebCore::RenderSlider::layout):
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::computeLogicalWidth):
+ (WebCore::RenderTable::layout):
+ * rendering/RenderTable.h:
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::computeLogicalWidth):
+ * rendering/RenderTableCell.h:
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::computeLogicalHeight):
+ * rendering/RenderTextControl.h:
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::layout):
+ (WebCore::RenderTextControlSingleLine::textBlockWidth):
+ (WebCore::RenderTextControlSingleLine::decorationWidthRight):
+ (WebCore::RenderTextControlSingleLine::preferredDecorationWidthRight):
+ (WebCore::RenderTextControlSingleLine::adjustControlHeightBasedOnLineHeight):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::computeLogicalHeight):
+ (WebCore::RenderView::computeLogicalWidth):
+ * rendering/RenderView.h:
+ * svg/SVGSVGElement.cpp:
+ (WebCore::SVGSVGElement::svgAttributeChanged):
+
+2010-09-23 Hans Wennborg <hans@chromium.org>
+
+ Reviewed by Simon Fraser.
+
+ Update DeviceMotionEvent to spec
+ https://bugs.webkit.org/show_bug.cgi?id=46344
+
+ The spec has changed: the DeviceMotionEvent attributes accelerationX,
+ accelerationY, etc. have been baked into an 'acceleration' attribute
+ which returns an object with x, y, and z values. Likewise for the
+ rotation rate. The 'accelerationIncludingGravity' attribute is new.
+
+ * WebCore.exp.in:
+ The DeviceMotionData::create member function has changed. Also export
+ create functions for DeviceMotionData::Acceleration and RotationRate.
+
+ * bindings/js/JSDeviceMotionEventCustom.cpp:
+ (WebCore::JSDeviceMotionEvent::acceleration):
+ (WebCore::JSDeviceMotionEvent::accelerationIncludingGravity):
+ (WebCore::JSDeviceMotionEvent::rotationRate):
+ (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent):
+ Manually create and return objects with the right attributes for
+ acceleration, accelerationIncludingGravity, and rotationRate.
+ When creating the DeviceMotionData object in initDeviceMotionEvent,
+ accept any input objects that have the right attributes.
+
+ * bindings/v8/custom/V8DeviceMotionEventCustom.cpp:
+ (WebCore::V8DeviceMotionEvent::accelerationAccessorGetter):
+ (WebCore::V8DeviceMotionEvent::accelerationIncludingGravityAccessorGetter):
+ (WebCore::V8DeviceMotionEvent::rotationRateAccessorGetter):
+ (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback):
+ V8 counterpart to the JSC code above.
+
+ * dom/DeviceMotionData.cpp:
+ (WebCore::DeviceMotionData::Acceleration::create):
+ (WebCore::DeviceMotionData::Acceleration::Acceleration):
+ (WebCore::DeviceMotionData::RotationRate::create):
+ (WebCore::DeviceMotionData::RotationRate::RotationRate):
+ (WebCore::DeviceMotionData::create):
+ (WebCore::DeviceMotionData::DeviceMotionData):
+ * dom/DeviceMotionData.h:
+ (WebCore::DeviceMotionData::Acceleration::canProvideX):
+ (WebCore::DeviceMotionData::Acceleration::canProvideY):
+ (WebCore::DeviceMotionData::Acceleration::canProvideZ):
+ (WebCore::DeviceMotionData::Acceleration::x):
+ (WebCore::DeviceMotionData::Acceleration::y):
+ (WebCore::DeviceMotionData::Acceleration::z):
+ (WebCore::DeviceMotionData::RotationRate::canProvideAlpha):
+ (WebCore::DeviceMotionData::RotationRate::canProvideBeta):
+ (WebCore::DeviceMotionData::RotationRate::canProvideGamma):
+ (WebCore::DeviceMotionData::RotationRate::alpha):
+ (WebCore::DeviceMotionData::RotationRate::beta):
+ (WebCore::DeviceMotionData::RotationRate::gamma):
+ (WebCore::DeviceMotionData::acceleration):
+ (WebCore::DeviceMotionData::accelerationIncludingGravity):
+ (WebCore::DeviceMotionData::rotationRate):
+ Add member classes Acceleration and RotationRate to DeviceMotionData.
+
+ * dom/DeviceMotionEvent.idl:
+ Update according to the spec. Acceleration and RotationRate need not
+ be backed by native classes.
+
+2010-09-23 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Accelerated transitions do not suspend/resume properly.
+ https://bugs.webkit.org/show_bug.cgi?id=43792
+
+ Fix suspending of accelerated transitions.
+
+ GraphicsLayer changes unify the handling of transitions and animations
+ in GraphicsLayer. Both are now identified by name, so the code
+ now refers to "animationName" rather than "keyframesName". Transitions
+ use a dummy name which is not a valid keyframe identifier.
+
+ Tests: animations/suspend-transform-animation.html
+ transitions/suspend-transform-transition.html
+
+ * page/animation/ImplicitAnimation.h:
+ * page/animation/ImplicitAnimation.cpp:
+ (WebCore::ImplicitAnimation::pauseAnimation): Call down to the RenderLayerBacking
+ to tell it that an accelerated transition was paused.
+
+ * platform/graphics/GraphicsLayer.h:
+ * platform/graphics/GraphicsLayer.cpp:
+ (WebCore::GraphicsLayer::animationNameForTransition): Create a name
+ for the transition of the given property.
+ (WebCore::GraphicsLayer::addAnimation): Generalize "keyframe" to "animation" in the parameter names.
+ (WebCore::GraphicsLayer::pauseAnimation): ditto
+ (WebCore::GraphicsLayer::removeAnimation): ditto
+
+ * platform/graphics/mac/GraphicsLayerCA.h: Parameter renaming, and some method renames for clarity.
+ (WebCore::GraphicsLayerCA::animationIsRunning):
+ (WebCore::GraphicsLayerCA::LayerPropertyAnimation::LayerPropertyAnimation): struct rename for clarity.
+
+ * platform/graphics/mac/GraphicsLayerCA.mm:
+ (WebCore::animationIdentifier): the animationName already has the property baked in.
+ (WebCore::GraphicsLayerCA::moveOrCopyLayerAnimation): just deals with one animation now.
+ (WebCore::GraphicsLayerCA::moveOrCopyAnimationsForProperty): we have to trawl through
+ m_runningAnimations to get the identifiers for the animations that need to be copied.
+ (WebCore::GraphicsLayerCA::addAnimation): rename parameters.
+ (WebCore::GraphicsLayerCA::pauseAnimation): re-ordered methods here. member var renames.
+ (WebCore::GraphicsLayerCA::removeAnimation): ditto.
+ (WebCore::GraphicsLayerCA::updateLayerAnimations): no need to iterate over m_transitionPropertiesToRemove,
+ and no more divergence between transitions and animations.
+ (WebCore::GraphicsLayerCA::setCAAnimationOnLayer): renames for clarity.
+ (WebCore::GraphicsLayerCA::removeCAAnimationFromLayer): ditto
+ (WebCore::GraphicsLayerCA::pauseCAAnimationOnLayer): ditto
+ (WebCore::GraphicsLayerCA::createAnimationFromKeyframes): renames
+ (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes): renames
+ (WebCore::GraphicsLayerCA::suspendAnimations): whitespace.
+
+ * rendering/RenderLayerBacking.h: Group the transition and animation methods together.
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::animationPaused): Re-ordered methods for clarity.
+ (WebCore::RenderLayerBacking::animationFinished): ditto
+ (WebCore::RenderLayerBacking::startTransition): Use animationNameForTransition() to generate
+ the animation identifier.
+ (WebCore::RenderLayerBacking::transitionPaused): Call pauseAnimation, using animationNameForTransition()
+ to generate the animation identifier.
+ (WebCore::RenderLayerBacking::transitionFinished): Call removeAnimation, using animationNameForTransition()
+ to generate the animation identifier.
+ (WebCore::RenderLayerBacking::notifyAnimationStarted): Moved.
+ (WebCore::RenderLayerBacking::notifySyncRequired): Moved.
+
+2010-09-23 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46442
+
+ Disallow the setting of block-flow to anything other than "tb" for all table-related display types
+ and flexible box display types. By disallowing block-flow on the subclasses of RenderBlock like tables
+ and flexible boxes, we ensure that alterations to the RenderBlock base class won't result in misrenderings
+ in tables and flexible boxes that try to specify other block flow values.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::adjustRenderStyle):
+
+2010-09-23 Kinuko Yasuda <kinuko@chromium.org>
+
+ Reviewed by David Levin.
+
+ Add Worker support for FileSystem API
+ https://bugs.webkit.org/show_bug.cgi?id=45808
+
+ Exposed requestFileSystem and Flags constructor on worker contexts.
+
+ Also changed how to get the base path for Web file systems (in
+ non-chromium ports) so that it works for workers too.
+ This patch assumes each port calls
+ LocalFileSystem::initializeLocalFileSystem() in its initialization
+ phase.
+
+ No new tests; tests will be added when we have complete implementation.
+
+ * bindings/generic/RuntimeEnabledFeatures.cpp:
+ (WebCore::RuntimeEnabledFeatures::fileSystemEnabled): Changed to
+ reflect AsyncFileSystem::isAvailable
+ * bindings/generic/RuntimeEnabledFeatures.h: Moved the implementation
+ of fileSystemEnabled to .cpp.
+ * fileapi/LocalFileSystem.cpp:
+ (WebCore::LocalFileSystem::initializeLocalFileSystem): Added.
+ (WebCore::LocalFileSystem::localFileSystem): Added.
+ (WebCore::LocalFileSystem::fileSystemBasePath): Added.
+ * fileapi/LocalFileSystem.h:
+ (WebCore::LocalFileSystem::~LocalFileSystem): Removed. (As now it's
+ going to be used as a singleton.)
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::requestFileSystem): Changed to use a singleton
+ instance of LocalFileSystem.
+ * page/SecurityOrigin.h:
+ (WebCore::SecurityOrigin::canAccessFileSystem): Added.
+ * page/Settings.cpp: Removed fileSystemRootPath method.
+ * page/Settings.h: Removed fileSystemRootPath method.
+ * platform/AsyncFileSystem.cpp:
+ (WebCore::AsyncFileSystem::isAvailable): Added.
+ * workers/WorkerContext.cpp:
+ (WebCore::WorkerContext::requestFileSystem): Added to expose
+ requestFileSystem method in worker contexts.
+ (WebCore::WorkerContext::Observer): Added.
+ (WebCore::WorkerContext::registerObserver): Added.
+ (WebCore::WorkerContext::unregisterObserver): Added.
+ (WebCore::WorkerContext::notifyObserversOfStop): Added.
+ * workers/WorkerContext.h:
+ * workers/WorkerContext.idl:
+ * workers/WorkerThread.cpp:
+ (WebCore::WorkerThreadShutdownStartTask::performTask): Modified to
+ call workerContext->notifyObserversOfStop to notify worker observers
+ of the worker thread termination.
+
+2010-09-23 Matthew Delaney <mdelaney@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ Lower the default canvas interpolation quality for platforms that use CG
+ https://bugs.webkit.org/show_bug.cgi?id=45722
+
+ Lowered the default image interpolation quality for platforms that
+ use CG down to low since this is as good as if not better than
+ other graphics platforms defaults (being bilinear interpolation).
+
+ * html/HTMLCanvasElement.cpp:
+ (WebCore::HTMLCanvasElement::createImageBuffer):
+ * html/HTMLCanvasElement.h: Moved in macros for default canvas interp quality.
+ * platform/graphics/GraphicsContext.h: Moved out macros for default canvas interp quality. It makes more sense for them to be housed where they're used.
+
+2010-09-23 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Adele Peterson.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46414, rename line box methods that refer specifically to
+ "horizontal" and "vertical." Replace those terms with "inline direction" and "block direction."
+
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
+ (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
+ (WebCore::InlineFlowBox::computeBlockDirectionOverflow):
+ * rendering/InlineFlowBox.h:
+ (WebCore::InlineFlowBox::setInlineDirectionOverflowPositions):
+ (WebCore::InlineFlowBox::setBlockDirectionOverflowPositions):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
+ (WebCore::RenderBlock::computeBlockDirectionPositionsForLine):
+ (WebCore::RenderBlock::layoutInlineChildren):
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::alignBoxesInBlockDirection):
+ * rendering/RootInlineBox.h:
+
+2010-09-23 Andrew Wilson <atwilson@chromium.org>
+
+ Unreviewed, rolling out r68197.
+ http://trac.webkit.org/changeset/68197
+ https://bugs.webkit.org/show_bug.cgi?id=46344
+
+ Breaks
+
+ * WebCore.exp.in:
+ * bindings/js/JSDeviceMotionEventCustom.cpp:
+ (WebCore::JSDeviceMotionEvent::xAcceleration):
+ (WebCore::JSDeviceMotionEvent::yAcceleration):
+ (WebCore::JSDeviceMotionEvent::zAcceleration):
+ (WebCore::JSDeviceMotionEvent::xRotationRate):
+ (WebCore::JSDeviceMotionEvent::yRotationRate):
+ (WebCore::JSDeviceMotionEvent::zRotationRate):
+ (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent):
+ * bindings/v8/custom/V8DeviceMotionEventCustom.cpp:
+ (WebCore::V8DeviceMotionEvent::xAccelerationAccessorGetter):
+ (WebCore::V8DeviceMotionEvent::yAccelerationAccessorGetter):
+ (WebCore::V8DeviceMotionEvent::zAccelerationAccessorGetter):
+ (WebCore::V8DeviceMotionEvent::xRotationRateAccessorGetter):
+ (WebCore::V8DeviceMotionEvent::yRotationRateAccessorGetter):
+ (WebCore::V8DeviceMotionEvent::zRotationRateAccessorGetter):
+ (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback):
+ * dom/DeviceMotionData.cpp:
+ (WebCore::DeviceMotionData::create):
+ (WebCore::DeviceMotionData::DeviceMotionData):
+ * dom/DeviceMotionData.h:
+ (WebCore::DeviceMotionData::xAcceleration):
+ (WebCore::DeviceMotionData::yAcceleration):
+ (WebCore::DeviceMotionData::zAcceleration):
+ (WebCore::DeviceMotionData::xRotationRate):
+ (WebCore::DeviceMotionData::yRotationRate):
+ (WebCore::DeviceMotionData::zRotationRate):
+ (WebCore::DeviceMotionData::canProvideXAcceleration):
+ (WebCore::DeviceMotionData::canProvideYAcceleration):
+ (WebCore::DeviceMotionData::canProvideZAcceleration):
+ (WebCore::DeviceMotionData::canProvideXRotationRate):
+ (WebCore::DeviceMotionData::canProvideYRotationRate):
+ (WebCore::DeviceMotionData::canProvideZRotationRate):
+ * dom/DeviceMotionEvent.idl:
+
+2010-09-23 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Adele Peterson.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46403, convert the margin/border/padding accessors
+ to be logical.
+
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::getFlowSpacingLogicalWidth):
+ (WebCore::InlineFlowBox::placeBoxesHorizontally):
+ (WebCore::InlineFlowBox::paintBoxShadow):
+ (WebCore::InlineFlowBox::paintBoxDecorations):
+ (WebCore::InlineFlowBox::paintTextDecorations):
+ * rendering/InlineFlowBox.h:
+ (WebCore::InlineFlowBox::InlineFlowBox):
+ (WebCore::InlineFlowBox::marginBorderPaddingLogicalLeft):
+ (WebCore::InlineFlowBox::marginBorderPaddingLogicalRight):
+ (WebCore::InlineFlowBox::marginLogicalLeft):
+ (WebCore::InlineFlowBox::marginLogicalRight):
+ (WebCore::InlineFlowBox::borderLogicalLeft):
+ (WebCore::InlineFlowBox::borderLogicalRight):
+ (WebCore::InlineFlowBox::paddingLogicalLeft):
+ (WebCore::InlineFlowBox::paddingLogicalRight):
+ (WebCore::InlineFlowBox::includeLogicalLeftEdge):
+ (WebCore::InlineFlowBox::includeLogicalRightEdge):
+ (WebCore::InlineFlowBox::setEdges):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::computeHorizontalPositionsForLine):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::containingBlockWidthForPositioned):
+ (WebCore::RenderBox::calcAbsoluteHorizontalValues):
+ (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::paintFillLayerExtended):
+
+2010-09-23 Jeff Schiller <jeffschiller@google.com>
+
+ Reviewed by David Hyatt.
+
+ Ensure that SVG documents included by reference (object, iframe, embed) have transparent
+ backgrounds (not white). https://bugs.webkit.org/show_bug.cgi?id=10687
+
+ Test: svg/in-html/by-reference.html
+
+ * dom/Document.cpp:
+ (WebCore::Document::hasSVGRootNode):
+ * dom/Document.h:
+ (WebCore::Document::hasSVGRootNode):
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::paintFillLayerExtended):
+
+2010-09-23 Hans Wennborg <hans@chromium.org>
+
+ Reviewed by Simon Fraser.
+
+ Update DeviceMotionEvent to spec
+ https://bugs.webkit.org/show_bug.cgi?id=46344
+
+ The spec has changed: the DeviceMotionEvent attributes accelerationX,
+ accelerationY, etc. have been baked into an 'acceleration' attribute
+ which returns an object with x, y, and z values. Likewise for the
+ rotation rate. The 'accelerationIncludingGravity' attribute is new.
+
+ * WebCore.exp.in:
+ The DeviceMotionData::create member function has changed. Also export
+ create functions for DeviceMotionData::Acceleration and RotationRate.
+
+ * bindings/js/JSDeviceMotionEventCustom.cpp:
+ (WebCore::JSDeviceMotionEvent::acceleration):
+ (WebCore::JSDeviceMotionEvent::accelerationIncludingGravity):
+ (WebCore::JSDeviceMotionEvent::rotationRate):
+ (WebCore::JSDeviceMotionEvent::initDeviceMotionEvent):
+ Manually create and return objects with the right attributes for
+ acceleration, accelerationIncludingGravity, and rotationRate.
+ When creating the DeviceMotionData object in initDeviceMotionEvent,
+ accept any input objects that have the right attributes.
+
+ * bindings/v8/custom/V8DeviceMotionEventCustom.cpp:
+ (WebCore::V8DeviceMotionEvent::accelerationAccessorGetter):
+ (WebCore::V8DeviceMotionEvent::accelerationIncludingGravityAccessorGetter):
+ (WebCore::V8DeviceMotionEvent::rotationRateAccessorGetter):
+ (WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback):
+ V8 counterpart to the JSC code above.
+
+ * dom/DeviceMotionData.cpp:
+ (WebCore::DeviceMotionData::Acceleration::create):
+ (WebCore::DeviceMotionData::Acceleration::Acceleration):
+ (WebCore::DeviceMotionData::RotationRate::create):
+ (WebCore::DeviceMotionData::RotationRate::RotationRate):
+ (WebCore::DeviceMotionData::create):
+ (WebCore::DeviceMotionData::DeviceMotionData):
+ * dom/DeviceMotionData.h:
+ (WebCore::DeviceMotionData::Acceleration::canProvideX):
+ (WebCore::DeviceMotionData::Acceleration::canProvideY):
+ (WebCore::DeviceMotionData::Acceleration::canProvideZ):
+ (WebCore::DeviceMotionData::Acceleration::x):
+ (WebCore::DeviceMotionData::Acceleration::y):
+ (WebCore::DeviceMotionData::Acceleration::z):
+ (WebCore::DeviceMotionData::RotationRate::canProvideAlpha):
+ (WebCore::DeviceMotionData::RotationRate::canProvideBeta):
+ (WebCore::DeviceMotionData::RotationRate::canProvideGamma):
+ (WebCore::DeviceMotionData::RotationRate::alpha):
+ (WebCore::DeviceMotionData::RotationRate::beta):
+ (WebCore::DeviceMotionData::RotationRate::gamma):
+ (WebCore::DeviceMotionData::acceleration):
+ (WebCore::DeviceMotionData::accelerationIncludingGravity):
+ (WebCore::DeviceMotionData::rotationRate):
+ Add member classes Acceleration and RotationRate to DeviceMotionData.
+
+ * dom/DeviceMotionEvent.idl:
+ Update according to the spec. Acceleration and RotationRate need not
+ be backed by native classes.
+
+2010-09-23 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ Set synchronous handle in ResourceHandleWin
+ https://bugs.webkit.org/show_bug.cgi?id=46395
+
+ When loading synchronous network resources, we need to use a synchronous internet handle.
+
+ * platform/network/ResourceHandle.h:
+ * platform/network/win/ResourceHandleWin.cpp:
+ (WebCore::ResourceHandle::loadResourceSynchronously):
+ (WebCore::ResourceHandle::setSynchronousInternetHandle):
+
+2010-09-23 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46326
+ Crash when trying to create a NodeIterator rooted at a document-less DocumentType node
+
+ Test: fast/dom/node-iterator-with-doctype-root.html
+
+ * dom/Document.cpp: (WebCore::Document::detachNodeIterator): Added a comment explaining that
+ attach/detach may not always be paired.
+
+ * dom/NodeIterator.cpp:
+ (WebCore::NodeIterator::NodeIterator): Don't try to register with the document if there is none.
+ (WebCore::NodeIterator::~NodeIterator): Ditto.
+ (WebCore::NodeIterator::detach): Ditto.
+ (WebCore::NodeIterator::updateForNodeRemoval): There should be a document if we're getting a
+ notification.
+
+2010-09-23 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ Add synchronous loading for local files to ResourceHandleWin
+ https://bugs.webkit.org/show_bug.cgi?id=46392
+
+ * platform/network/win/ResourceHandleWin.cpp:
+ (WebCore::ResourceHandle::start):
+
+2010-09-23 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ Remove (has|set)ReceivedResponse() from public ResourceHandleWin API
+ https://bugs.webkit.org/show_bug.cgi?id=46391
+
+ There is no need for this functions to be public, so remove them.
+
+ * platform/network/ResourceHandle.h:
+ * platform/network/win/ResourceHandleWin.cpp:
+ (WebCore::ResourceHandle::onRequestComplete):
+
+2010-09-23 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Adele Peterson.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46400
+
+ Add logicalLeft/Top getter/setters to line boxes.
+
+ * rendering/InlineBox.h:
+ (WebCore::InlineBox::logicalLeft):
+ (WebCore::InlineBox::setLogicalLeft):
+ (WebCore::InlineBox::logicalTop):
+ (WebCore::InlineBox::setLogicalTop):
+
+2010-09-23 Matthew Delaney <mdelaney@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Reduce minimum DOMTimer interval
+ https://bugs.webkit.org/show_bug.cgi?id=45362
+
+ Since the setInterval call is meant to reflect a global change for
+ all pages' DOMTimers, it's misleading to have it be a method on a
+ given page's settings' object. Thus, this patch changes the call to be static.
+
+ This simple change to using a static call instead of the page's setting's
+ method doesn't warrant a test.
+
+ * page/Settings.h: Changed the setInterval call to be static.
+
+2010-09-23 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46386, give line boxes a vertical bit so that it's easy to know
+ the overall direction of the line without having to ask the containing block.
+
+ Also couldn't resist some cleanup. Tightened up the type of the renderobject passed to RootInlineBox's
+ constructor to be a RenderBlock. Moved all the virtual logical height stuff outside of the SVG ifdef
+ since TrailingFloatsRootInlineBox uses it and should work without SVG enabled.
+
+ * rendering/EllipsisBox.h:
+ (WebCore::EllipsisBox::EllipsisBox):
+ * rendering/InlineBox.h:
+ (WebCore::InlineBox::InlineBox):
+ (WebCore::InlineBox::isVertical):
+ (WebCore::InlineBox::setIsVertical):
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::addToLine):
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::RootInlineBox):
+ (WebCore::RootInlineBox::placeEllipsis):
+ * rendering/RootInlineBox.h:
+ * rendering/SVGRootInlineBox.h:
+ (WebCore::SVGRootInlineBox::SVGRootInlineBox):
+ * rendering/TrailingFloatsRootInlineBox.h:
+ (WebCore::TrailingFloatsRootInlineBox::TrailingFloatsRootInlineBox):
+
+2010-09-23 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ Check for a valid ResourceHandleClient in ResourceHandleWin
+ https://bugs.webkit.org/show_bug.cgi?id=46389
+
+ * platform/network/win/ResourceHandleWin.cpp:
+ (WebCore::ResourceHandle::onRequestComplete): Add checks to ensure client() is not 0.
+
+2010-09-23 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ Fix ResourceHandleWin::cancel() for network resources
+ https://bugs.webkit.org/show_bug.cgi?id=46383
+
+ * platform/network/win/ResourceHandleWin.cpp:
+ (WebCore::ResourceHandle::onRequestComplete): Check it requestHandle is not 0.
+ (WebCore::ResourceHandle::cancel): Set requestHandle to 0.
+
+2010-09-23 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ Add handling for form data and additional HTTP headers in ResourceHandleWin
+ https://bugs.webkit.org/show_bug.cgi?id=46369
+
+ * platform/network/win/ResourceHandleWin.cpp:
+ (WebCore::ResourceHandle::start):
+
+2010-09-23 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Simon Fraser
+
+ 'seeking' event should always fire
+ https://bugs.webkit.org/show_bug.cgi?id=45694
+
+ Update seek algorithm to match current spec.
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::setReadyState): Don't need to fire 'seeking' event here.
+ (WebCore::HTMLMediaElement::seek): Always fire 'seeking'. Update comments.
+ (WebCore::HTMLMediaElement::finishSeek): Update comments.
+ (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Ditto.
+
+2010-09-23 Eric Uhrhane <ericu@chromium.org>
+
+ Reviewed by David Levin.
+
+ Rename FileWriterClient to AsyncFileWriterClient.
+ https://bugs.webkit.org/show_bug.cgi?id=46325
+
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * fileapi/AsyncFileWriter.h:
+ * fileapi/AsyncFileWriterClient.h: Copied from WebCore/fileapi/FileWriterClient.h.
+ * fileapi/FileWriter.h:
+ * fileapi/FileWriterClient.h: Removed.
+ * platform/AsyncFileSystem.h:
+
+2010-09-23 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46378, rename width/height on line boxes to logicalWidth/logicalHeight.
+
+ * editing/visible_units.cpp:
+ (WebCore::previousLinePosition):
+ (WebCore::nextLinePosition):
+ * rendering/EllipsisBox.cpp:
+ (WebCore::EllipsisBox::paint):
+ (WebCore::EllipsisBox::paintSelection):
+ (WebCore::EllipsisBox::nodeAtPoint):
+ * rendering/InlineBox.cpp:
+ (WebCore::InlineBox::logicalHeight):
+ (WebCore::InlineBox::canAccommodateEllipsis):
+ * rendering/InlineBox.h:
+ (WebCore::InlineBox::InlineBox):
+ (WebCore::InlineBox::hasVirtualLogicalHeight):
+ (WebCore::InlineBox::setHasVirtualLogicalHeight):
+ (WebCore::InlineBox::virtualLogicalHeight):
+ (WebCore::InlineBox::setLogicalWidth):
+ (WebCore::InlineBox::logicalWidth):
+ * rendering/InlineFlowBox.cpp:
+ (WebCore::InlineFlowBox::placeBoxesHorizontally):
+ (WebCore::InlineFlowBox::placeBoxesVertically):
+ (WebCore::InlineFlowBox::computeVerticalOverflow):
+ (WebCore::InlineFlowBox::nodeAtPoint):
+ (WebCore::InlineFlowBox::paintFillLayer):
+ (WebCore::InlineFlowBox::paintBoxDecorations):
+ (WebCore::InlineFlowBox::paintMask):
+ (WebCore::InlineFlowBox::paintTextDecorations):
+ (WebCore::InlineFlowBox::placeEllipsisBox):
+ * rendering/InlineFlowBox.h:
+ (WebCore::InlineFlowBox::visibleOverflowRect):
+ (WebCore::InlineFlowBox::bottomLayoutOverflow):
+ (WebCore::InlineFlowBox::rightLayoutOverflow):
+ (WebCore::InlineFlowBox::layoutOverflowRect):
+ (WebCore::InlineFlowBox::bottomVisualOverflow):
+ (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::paintCustomHighlight):
+ (WebCore::InlineTextBox::paintDecoration):
+ (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
+ (WebCore::InlineTextBox::paintTextMatchMarker):
+ (WebCore::InlineTextBox::paintCompositionUnderline):
+ * rendering/InlineTextBox.h:
+ (WebCore::InlineTextBox::calculateBoundaries):
+ (WebCore::InlineTextBox::setSpaceAdd):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::paintEllipsisBoxes):
+ (WebCore::RenderBlock::rightmostPosition):
+ (WebCore::RenderBlock::adjustForBorderFit):
+ (WebCore::RenderBlock::addFocusRingRects):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::computeHorizontalPositionsForLine):
+ (WebCore::RenderBlock::checkLinesForTextOverflow):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::paintCustomHighlight):
+ (WebCore::RenderBox::containingBlockWidthForPositioned):
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::applyLineClamp):
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::absoluteRects):
+ (WebCore::RenderInline::absoluteQuads):
+ (WebCore::RenderInline::linesBoundingBox):
+ (WebCore::RenderInline::addFocusRingRects):
+ (WebCore::RenderInline::paintOutline):
+ * rendering/RenderSVGInline.cpp:
+ (WebCore::RenderSVGInline::createInlineFlowBox):
+ (WebCore::RenderSVGInline::absoluteQuads):
+ * rendering/RenderSVGInlineText.cpp:
+ (WebCore::RenderSVGInlineText::createTextBox):
+ * rendering/RenderSVGText.cpp:
+ (WebCore::RenderSVGText::createRootInlineBox):
+ * rendering/RenderText.cpp:
+ (WebCore::RenderText::absoluteRects):
+ (WebCore::RenderText::absoluteRectsForRange):
+ (WebCore::RenderText::absoluteQuadsForRange):
+ (WebCore::RenderText::positionForPoint):
+ (WebCore::RenderText::localCaretRect):
+ (WebCore::RenderText::linesBoundingBox):
+ * rendering/RenderTreeAsText.cpp:
+ (WebCore::writeTextRun):
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::canAccommodateEllipsis):
+ (WebCore::RootInlineBox::placeEllipsis):
+ (WebCore::RootInlineBox::addHighlightOverflow):
+ (WebCore::RootInlineBox::paintCustomHighlight):
+ (WebCore::RootInlineBox::fillLineSelectionGap):
+ (WebCore::RootInlineBox::closestLeafChildForXPos):
+ * rendering/SVGInlineFlowBox.h:
+ (WebCore::SVGInlineFlowBox::SVGInlineFlowBox):
+ (WebCore::SVGInlineFlowBox::virtualLogicalHeight):
+ (WebCore::SVGInlineFlowBox::setLogicalHeight):
+ * rendering/SVGInlineTextBox.cpp:
+ (WebCore::SVGInlineTextBox::SVGInlineTextBox):
+ * rendering/SVGInlineTextBox.h:
+ (WebCore::SVGInlineTextBox::virtualLogicalHeight):
+ (WebCore::SVGInlineTextBox::setLogicalHeight):
+ (WebCore::SVGInlineTextBox::selectionHeight):
+ * rendering/SVGRenderTreeAsText.cpp:
+ (WebCore::writeRenderSVGTextBox):
+ * rendering/SVGRootInlineBox.cpp:
+ (WebCore::SVGRootInlineBox::layoutChildBoxes):
+ (WebCore::SVGRootInlineBox::layoutRootBox):
+ * rendering/SVGRootInlineBox.h:
+ (WebCore::SVGRootInlineBox::SVGRootInlineBox):
+ (WebCore::SVGRootInlineBox::virtualLogicalHeight):
+ (WebCore::SVGRootInlineBox::setLogicalHeight):
+ * rendering/TrailingFloatsRootInlineBox.h:
+ (WebCore::TrailingFloatsRootInlineBox::TrailingFloatsRootInlineBox):
+ (WebCore::TrailingFloatsRootInlineBox::virtualLogicalHeight):
+
+2010-09-23 Matthew Delaney <mdelaney@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ context.drawImage with (source rect's height) = -(input image's native height) draws nothing
+ https://bugs.webkit.org/show_bug.cgi?id=46243
+
+ This patch changes canvasrenderingcontext2d's drawImage with an image element to
+ normalize the source and dest rects to acheive the desired canvas spec behavior
+ of allowing negative widths and heights that don't cause flipping and fix the
+ adverse behavior of specifying a source rect height of negative the source image's height
+
+ Tests: canvas/philip/tests/2d.drawImage.negativeSourceHeight.html
+ canvas/philip/tests/2d.drawImage.negativeSourceHeight2.html
+ canvas/philip/tests/2d.drawImage.negativeSourceHeightAndWidth.html
+
+ * html/canvas/CanvasRenderingContext2D.cpp: Normalize rects in drawImage before calling
+ lower level draw calls.
+
+2010-09-23 Renata Hodovan <reni@inf.u-szeged.hu>
+
+ Reviewed by Dirk Schulze.
+
+ SVGFEMorphologyElement doesn't support dynamic invalidation, when attributes change.
+ https://bugs.webkit.org/show_bug.cgi?id=46363
+ The patch also implements the simple setRadius method.
+
+ Tests: svg/dynamic-updates/SVGFEMorphologyElement-dom-in-attr.html
+ svg/dynamic-updates/SVGFEMorphologyElement-dom-operator-attr.html
+ svg/dynamic-updates/SVGFEMorphologyElement-dom-radius-attr.html
+ svg/dynamic-updates/SVGFEMorphologyElement-svgdom-in-prop.html
+ svg/dynamic-updates/SVGFEMorphologyElement-svgdom-operator-prop.html
+ svg/dynamic-updates/SVGFEMorphologyElement-svgdom-radius-call.html
+
+ * svg/SVGFEMorphologyElement.cpp:
+ (WebCore::SVGFEMorphologyElement::setRadius):
+ (WebCore::SVGFEMorphologyElement::svgAttributeChanged):
+ * svg/SVGFEMorphologyElement.h:
+
+2010-09-23 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ Add synchronous loading for network resources to ResourceHandleWin
+ https://bugs.webkit.org/show_bug.cgi?id=46364
+
+ Use return value of onRequestComplete() to indicate that an additional
+ call to it is required for receiving remaining network data.
+
+ * platform/network/ResourceHandle.h:
+ * platform/network/win/ResourceHandleWin.cpp:
+ (WebCore::ResourceHandle::onRequestComplete):
+ (WebCore::ResourceHandle::start):
+
+2010-09-23 Nate Chapin <japhet@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Implement <a ping> (disabled by default).
+ https://bugs.webkit.org/show_bug.cgi?id=30458
+
+ Tests: http/tests/navigation/ping-cross-origin-from-https.html
+ http/tests/navigation/ping-cross-origin.html
+ http/tests/navigation/ping-same-origin.html
+
+ * html/HTMLAnchorElement.cpp:
+ (WebCore::HTMLAnchorElement::defaultEventHandler):
+ (WebCore::HTMLAnchorElement::sendPings):
+ * html/HTMLAnchorElement.h:
+ * html/HTMLAttributeNames.in:
+ * loader/PingLoader.cpp:
+ (WebCore::PingLoader::sendPing): Set ping-specific headers.
+ (WebCore::PingLoader::PingLoader):
+ * loader/PingLoader.h:
+ (WebCore::PingLoader::timeout): Ensure pings eventually timeout, since
+ the normal cancel mechanism can't stop them.
+ * page/Settings.cpp:
+ * page/Settings.h: Add hyperlinkAuditingEnabled.
+
+2010-09-23 Steve VanDeBogart <vandebo@chromium.org>
+
+ Reviewed by David Levin.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46312
+
+ Use Skia's SkSafeRef/SkSafeUnref functions instead of safeRef/safeUnref.
+
+ * platform/graphics/chromium/FontLinux.cpp:
+ (WebCore::Font::drawGlyphs):
+ * platform/graphics/chromium/FontPlatformDataLinux.cpp:
+ (WebCore::FontPlatformData::FontPlatformData):
+ (WebCore::FontPlatformData::~FontPlatformData):
+ * platform/graphics/skia/GradientSkia.cpp:
+ (WebCore::Gradient::platformDestroy):
+ * platform/graphics/skia/PatternSkia.cpp:
+ (WebCore::Pattern::platformDestroy):
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ (WebCore::PlatformContextSkia::State::State):
+ (WebCore::PlatformContextSkia::State::~State):
+ (WebCore::PlatformContextSkia::drawRect):
+ (WebCore::PlatformContextSkia::setStrokeShader):
+ (WebCore::PlatformContextSkia::setFillShader):
+ (WebCore::PlatformContextSkia::setDashPathEffect):
+ * platform/graphics/skia/SkiaFontWin.cpp:
+ (WebCore::paintSkiaText):
+
+2010-09-23 Lucas De Marchi <lucas.demarchi@profusion.mobi>
+
+ Reviewed by Csaba Osztrogonác.
+
+ Fix warnings regarding print format in 64 bits
+ https://bugs.webkit.org/show_bug.cgi?id=46357
+
+ Use inttypes.h in order to have portable print formats across 32 and
+ 64 bits.
+
+ * platform/sql/SQLiteFileSystem.cpp:
+ (WebCore::SQLiteFileSystem::getFileNameForNewDatabase):
+
+2010-09-23 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add AudioContext files
+ https://bugs.webkit.org/show_bug.cgi?id=44890
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/AudioContext.cpp: Added.
+ (WebCore::AudioContext::createAudioRequest):
+ (WebCore::AudioContext::create):
+ (WebCore::AudioContext::AudioContext):
+ (WebCore::AudioContext::~AudioContext):
+ (WebCore::AudioContext::lazyInitialize):
+ (WebCore::AudioContext::uninitialize):
+ (WebCore::AudioContext::isInitialized):
+ (WebCore::AudioContext::isRunnable):
+ (WebCore::AudioContext::stop):
+ (WebCore::AudioContext::document):
+ (WebCore::AudioContext::hasDocument):
+ (WebCore::AudioContext::refBuffer):
+ (WebCore::AudioContext::createBuffer):
+ (WebCore::AudioContext::createBufferSource):
+ (WebCore::AudioContext::createJavaScriptNode):
+ (WebCore::AudioContext::createLowPass2Filter):
+ (WebCore::AudioContext::createHighPass2Filter):
+ (WebCore::AudioContext::createPanner):
+ (WebCore::AudioContext::createConvolver):
+ (WebCore::AudioContext::createAnalyser):
+ (WebCore::AudioContext::createGainNode):
+ (WebCore::AudioContext::createDelayNode):
+ (WebCore::AudioContext::createChannelSplitter):
+ (WebCore::AudioContext::createChannelMerger):
+ (WebCore::AudioContext::notifyNodeFinishedProcessing):
+ (WebCore::AudioContext::derefFinishedSourceNodes):
+ (WebCore::AudioContext::refNode):
+ (WebCore::AudioContext::derefNode):
+ (WebCore::AudioContext::derefUnfinishedSourceNodes):
+ (WebCore::AudioContext::lock):
+ (WebCore::AudioContext::tryLock):
+ (WebCore::AudioContext::unlock):
+ (WebCore::AudioContext::isAudioThread):
+ (WebCore::AudioContext::isGraphOwner):
+ (WebCore::AudioContext::addDeferredFinishDeref):
+ (WebCore::AudioContext::handlePostRenderTasks):
+ (WebCore::AudioContext::handleDeferredFinishDerefs):
+ (WebCore::AudioContext::markForDeletion):
+ (WebCore::AudioContext::deleteMarkedNodes):
+ * webaudio/AudioContext.h: Added.
+ (WebCore::AudioContext::destination):
+ (WebCore::AudioContext::currentTime):
+ (WebCore::AudioContext::sampleRate):
+ (WebCore::AudioContext::listener):
+ (WebCore::AudioContext::temporaryMonoBus):
+ (WebCore::AudioContext::temporaryStereoBus):
+ (WebCore::AudioContext::incrementConnectionCount):
+ (WebCore::AudioContext::connectionCount):
+ (WebCore::AudioContext::setAudioThread):
+ (WebCore::AudioContext::audioThread):
+ (WebCore::AudioContext::isAudioThreadFinished):
+ (WebCore::AudioContext::AutoLocker::AutoLocker):
+ (WebCore::AudioContext::AutoLocker::~AutoLocker):
+ (WebCore::AudioContext::RefInfo::RefInfo):
+ * webaudio/AudioContext.idl: Added.
+
+2010-09-23 Jeremy Orlow <jorlow@chromium.org>
+
+ Reviewed by Steve Block.
+
+ IndexedDB shouldn't crash on invalid index names
+ https://bugs.webkit.org/show_bug.cgi?id=46362
+
+ For now, return null. In a later patch, we'll do proper exception raising.
+
+ * storage/IDBObjectStore.cpp:
+ (WebCore::IDBObjectStore::index):
+
+2010-09-23 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Dave Hyatt.
+
+ Fix the memory safety issue by checking containerObject is a RenderBox
+ before doing the transforms.
+ https://bugs.webkit.org/show_bug.cgi?id=46365
+
+ Test: compositing/overflow/get-transform-from-non-box-container.html
+
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::getTransformFromContainer):
+
+2010-09-23 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46314.
+
+ The RenderView's block-flow should match the root element's block-flow. When we create (or re-create) the style for the document, take
+ the block-flow from the document element's style and use it if it's available.
+
+ Also patch styleDidChange so that if the block-flow changes dynamically after we have already made the document style, we'll propagate
+ the change back up to the RenderView and have it do a relayout.
+
+ No tests possible yet, since you can't see the document's style anywhere, and block-flow isn't doing anything to affect layout
+ yet.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::styleForDocument):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::styleDidChange):
+
+2010-09-23 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: source frame popups shouldn't disappear when hovered
+ https://bugs.webkit.org/show_bug.cgi?id=46358
+
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype._mouseMove):
+
+2010-09-23 Mario Sanchez Prada <msanchez@igalia.com>
+
+ Reviewed by Chris Fleizach.
+
+ [Regression][Gtk] Left and Right Arrows no longer function when caret browsing is enabled
+ https://bugs.webkit.org/show_bug.cgi?id=45375
+
+ Consider caret browsing for Move commands.
+
+ Test: platform/gtk/editing/selection/caret-mode-left-right-arrows.html
+
+ * editing/EditorCommand.cpp:
+ (WebCore::createCommandMap): Use "caret browsing aware functions"
+ as isEnabled() function for those commands moving the caret
+ forward and backward across characters, words, lines or paragraphs,
+ not just left and right, as it was the case so far.
+
+2010-09-23 Brad Moore <bradm@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Address a remaining discrepancy in piecewise text measurement
+ https://bugs.webkit.org/show_bug.cgi?id=45796
+
+ Don't include always-integral space widths in the floating point accumulator designed
+ to minimize precision loss. This brings whole-string measurement in line with piecewise
+ text measurement when dealing with fonts with fractional advances.
+
+ * platform/graphics/WidthIterator.cpp:
+ (WebCore::WidthIterator::advance): Change the associativity of width addition to minimize precision loss.
+
+2010-09-23 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ Cleanup network communication code in ResourceHandleWin
+ https://bugs.webkit.org/show_bug.cgi?id=46200
+
+ Add logic for request handling directly into ResourceHandle::start and fix style.
+ Use Unicode instead of ASCII Windows API functions.
+
+ * platform/network/ResourceHandleInternal.h:
+ (WebCore::ResourceHandleInternal::ResourceHandleInternal):
+ * platform/network/win/ResourceHandleWin.cpp:
+ (WebCore::ResourceHandle::onRequestComplete):
+ (WebCore::ResourceHandle::start):
+
+2010-09-23 Luiz Agostini <luiz.agostini@openbossa.org>
+
+ Reviewed by Andreas Kling.
+
+ Invalid assertion in ScriptCallback
+ https://bugs.webkit.org/show_bug.cgi?id=46348
+
+ Removing invalid ASSERT from method ScriptCallback::call().
+
+ * bindings/js/ScriptFunctionCall.cpp:
+ (WebCore::ScriptCallback::call):
+
+2010-09-23 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Ariya Hidayat.
+
+ [Cairo] Generalize ContextShadow from the Qt port and use it for shadow code
+ https://bugs.webkit.org/show_bug.cgi?id=45599
+
+ Make ContextShadow platform-independent and add a Cairo implementation. This is currently
+ disabled for Cairo, but will be enabled in a followup patch with new baselines.
+
+ No new tests as this does not change functionality.
+
+ * GNUmakefile.am: Update source lists.
+ * WebCore.pro: Update source lists.
+ * platform/graphics/ContextShadow.cpp: Added. A generalized version of Qt's ContextShadow.
+ (WebCore::ContextShadow::ContextShadow):
+ (WebCore::ContextShadow::clear):
+ (WebCore::ContextShadow::blurLayerImage):
+ (WebCore::ContextShadow::calculateMinimalLayerRect):
+ * platform/graphics/ContextShadow.h: Added.
+ (WebCore::ContextShadow::offset):
+ * platform/graphics/cairo/CairoUtilities.cpp: Added.
+ (WebCore::setSourceRGBAFromColor): A utility to set the source RGBA on a Cairo surface from a WebCore color.
+ * platform/graphics/cairo/CairoUtilities.h: Added.
+ * platform/graphics/cairo/ContextShadowCairo.cpp: Added.
+ (WebCore::purgeScratchBuffer): Static function to purge the shadow buffer.
+ (WebCore::PurgeScratchBufferTimer::fired): Timer callback.
+ (WebCore::scheduleScratchBufferPurge): Schedule's a WebCore timer to purge the shadow buffer.
+ (WebCore::getScratchBuffer): Create or reuse the scratch buffer.
+ (WebCore::ContextShadow::beginShadowLayer): Added.
+ (WebCore::ContextShadow::endShadowLayer): Added.
+ * platform/graphics/gtk/CairoUtilities.cpp: Removed.
+ * platform/graphics/gtk/CairoUtilities.h: Removed.
+ * platform/graphics/gtk/GdkCairoUtilities.cpp: Renamed from CairoUtilities.cpp.
+ (getCairoSurfacePixel):
+ (getGdkPixbufPixel):
+ (cairoImageSurfaceToGdkPixbuf):
+ * platform/graphics/gtk/GdkCairoUtilities.h: Added.
+ * platform/graphics/gtk/ImageBufferGtk.cpp:
+ * platform/graphics/gtk/ImageGtk.cpp:
+ * platform/graphics/qt/ContextShadow.cpp: Removed.
+ * platform/graphics/qt/ContextShadow.h: Removed.
+ * platform/graphics/qt/ContextShadowQt.cpp: Added. Adapted from code originally in ContextShadow.cpp.
+ (WebCore::ShadowBuffer::ShadowBuffer):
+ (WebCore::ShadowBuffer::scratchImage):
+ (WebCore::ShadowBuffer::schedulePurge):
+ (WebCore::ShadowBuffer::timerEvent):
+ (WebCore::ContextShadow::beginShadowLayer):
+ (WebCore::ContextShadow::endShadowLayer):
+ * platform/graphics/qt/FontQt.cpp:
+ (WebCore::drawTextCommon): Updated to reflect new ContextShadow members.
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContextPlatformPrivate::hasShadow): Updated to reflect new ContextShadow members.
+ (WebCore::GraphicsContext::strokeArc): Ditto.
+ (WebCore::GraphicsContext::drawConvexPolygon): Ditto.
+ (WebCore::GraphicsContext::fillPath): Ditto.
+ (WebCore::GraphicsContext::strokePath): Ditto.
+ (WebCore::GraphicsContext::fillRect): Ditto.
+ (WebCore::GraphicsContext::fillRoundedRect): Ditto.
+ (WebCore::GraphicsContext::setPlatformShadow): Ditto.
+
+2010-09-23 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ Add internetStatusCallback to ResourceHandleWin.
+ https://bugs.webkit.org/show_bug.cgi?id=46187
+
+ Add callback for asynchronous network transfer.
+
+ * platform/network/ResourceHandle.h:
+ * platform/network/ResourceHandleInternal.h:
+ * platform/network/win/ResourceHandleWin.cpp:
+ (WebCore::callOnRedirect):
+ (WebCore::callOnRequestComplete):
+ (WebCore::ResourceHandle::internetStatusCallback):
+ (WebCore::ResourceHandle::onRedirect):
+
+2010-09-23 Andrei Popescu <andreip@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ IDBTransactionCoordinator contains a broken assertion.
+ https://bugs.webkit.org/show_bug.cgi?id=46356
+
+ Remove the broken assertion.
+
+ * storage/IDBTransactionCoordinator.cpp:
+ (WebCore::IDBTransactionCoordinator::processStartedTransactions):
+
+2010-09-23 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: highlight DOM nodes when navigating the DOM with keyboard
+ https://bugs.webkit.org/show_bug.cgi?id=46346
+
+ * inspector/front-end/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeElement.prototype.onselect):
+ * inspector/front-end/treeoutline.js:
+ (TreeOutline.prototype._treeKeyDown):
+ (TreeElement.prototype.selectOnMouseDown):
+ (TreeElement.prototype.select):
+
+2010-09-23 Andrei Popescu <andreip@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ [Chromium] Build broken due to missing include in IDBTransactionBackendImpl.h
+ https://bugs.webkit.org/show_bug.cgi?id=46352
+
+ No new tests needed, build fix.
+
+ * storage/IDBTransaction.cpp:
+ (WebCore::IDBTransaction::objectStore):
+ * storage/IDBTransactionBackendImpl.h:
+
+2010-09-23 Andrei Popescu <andreip@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ IDBObjectStore::get should run in a transaction.
+ https://bugs.webkit.org/show_bug.cgi?id=44700
+
+ Implements logic for running IDBObjectStore::get() in a transaction.
+ Refactors the pending transaction monitor and the transaction coordinator
+ to use pointers instead of transaction IDs.
+
+ * bindings/v8/V8Proxy.cpp:
+ (WebCore::V8Proxy::didLeaveScriptContext):
+ * storage/IDBCursorBackendImpl.cpp:
+ * storage/IDBDatabase.cpp:
+ (WebCore::IDBDatabase::objectStore):
+ * storage/IDBDatabaseBackendImpl.cpp:
+ (WebCore::IDBDatabaseBackendImpl::objectStore):
+ * storage/IDBDatabaseBackendImpl.h:
+ (WebCore::IDBDatabaseBackendImpl::transactionCoordinator):
+ * storage/IDBFactoryBackendImpl.cpp:
+ * storage/IDBFactoryBackendImpl.h:
+ * storage/IDBFactoryBackendInterface.h:
+ * storage/IDBObjectStore.cpp:
+ (WebCore::IDBObjectStore::IDBObjectStore):
+ (WebCore::IDBObjectStore::get):
+ * storage/IDBObjectStore.h:
+ (WebCore::IDBObjectStore::create):
+ * storage/IDBObjectStoreBackendImpl.cpp:
+ (WebCore::IDBTask::IDBTask):
+ (WebCore::IDBTask::performTask):
+ (WebCore::createTask):
+ (WebCore::IDBObjectStoreBackendImpl::get):
+ (WebCore::IDBObjectStoreBackendImpl::getInternal):
+ * storage/IDBObjectStoreBackendImpl.h:
+ * storage/IDBObjectStoreBackendInterface.h:
+ * storage/IDBPendingTransactionMonitor.cpp:
+ (WebCore::IDBPendingTransactionMonitor::addPendingTransaction):
+ (WebCore::IDBPendingTransactionMonitor::removePendingTransaction):
+ (WebCore::IDBPendingTransactionMonitor::abortPendingTransactions):
+ * storage/IDBPendingTransactionMonitor.h:
+ * storage/IDBRequest.cpp:
+ (WebCore::IDBRequest::IDBRequest):
+ (WebCore::IDBRequest::~IDBRequest):
+ (WebCore::IDBRequest::onSuccess):
+ (WebCore::IDBRequest::timerFired):
+ * storage/IDBRequest.h:
+ (WebCore::IDBRequest::create):
+ * storage/IDBTransaction.cpp:
+ (WebCore::IDBTransaction::IDBTransaction):
+ (WebCore::IDBTransaction::objectStore):
+ * storage/IDBTransactionBackendImpl.cpp:
+ (WebCore::IDBTransactionBackendImpl::create):
+ (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
+ (WebCore::IDBTransactionBackendImpl::objectStore):
+ (WebCore::IDBTransactionBackendImpl::scheduleTask):
+ (WebCore::IDBTransactionBackendImpl::abort):
+ (WebCore::IDBTransactionBackendImpl::didCompleteTaskEvents):
+ (WebCore::IDBTransactionBackendImpl::run):
+ (WebCore::IDBTransactionBackendImpl::start):
+ (WebCore::IDBTransactionBackendImpl::commit):
+ (WebCore::IDBTransactionBackendImpl::timerFired):
+ * storage/IDBTransactionBackendImpl.h:
+ (WebCore::IDBTransactionBackendImpl::~IDBTransactionBackendImpl):
+ (WebCore::IDBTransactionBackendImpl::isFinished):
+ * storage/IDBTransactionBackendInterface.h:
+ * storage/IDBTransactionCoordinator.cpp:
+ (WebCore::IDBTransactionCoordinator::createTransaction):
+ (WebCore::IDBTransactionCoordinator::didStartTransaction):
+ (WebCore::IDBTransactionCoordinator::didFinishTransaction):
+ (WebCore::IDBTransactionCoordinator::processStartedTransactions):
+ * storage/IDBTransactionCoordinator.h:
+
+2010-09-23 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ [WINCE] Remove usage of MemoryManager
+ https://bugs.webkit.org/show_bug.cgi?id=46206
+
+ MemoryManager does not provide any extra value, so remove it.
+
+ * page/wince/FrameWinCE.cpp:
+ (WebCore::imageFromSelection):
+ * platform/graphics/wince/PlatformPathWinCE.cpp:
+ (WebCore::drawPolygons):
+
+2010-09-23 Darin Adler <darin@apple.com>
+
+ Reviewed by Chris Fleizach.
+
+ media/video-controls-with-mutation-event-handler.html crashing
+ https://bugs.webkit.org/show_bug.cgi?id=46169
+
+ * rendering/MediaControlElements.cpp:
+ (WebCore::MediaControlInputElement::MediaControlInputElement): Don't take a type argument.
+ We can't set the type until after the element is created beacuse of reference counting rules.
+ (WebCore::MediaControlMuteButtonElement::MediaControlMuteButtonElement): Don't pass the type.
+ (WebCore::MediaControlMuteButtonElement::create): Set the type.
+ (WebCore::MediaControlPlayButtonElement::MediaControlPlayButtonElement): More of the same.
+ (WebCore::MediaControlPlayButtonElement::create): Ditto.
+ (WebCore::MediaControlSeekButtonElement::MediaControlSeekButtonElement): Ditto.
+ (WebCore::MediaControlSeekButtonElement::create): Ditto.
+ (WebCore::MediaControlRewindButtonElement::MediaControlRewindButtonElement): Ditto.
+ (WebCore::MediaControlRewindButtonElement::create): Ditto.
+ (WebCore::MediaControlReturnToRealtimeButtonElement::MediaControlReturnToRealtimeButtonElement): Ditto.
+ (WebCore::MediaControlReturnToRealtimeButtonElement::create): Ditto.
+ (WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement): Ditto.
+ (WebCore::MediaControlToggleClosedCaptionsButtonElement::create): Ditto.
+ (WebCore::MediaControlTimelineElement::MediaControlTimelineElement): Ditto.
+ (WebCore::MediaControlTimelineElement::create): Ditto.
+ (WebCore::MediaControlVolumeSliderElement::MediaControlVolumeSliderElement): Ditto.
+ (WebCore::MediaControlVolumeSliderElement::create): Ditto.
+ (WebCore::MediaControlFullscreenButtonElement::MediaControlFullscreenButtonElement): Ditto.
+ (WebCore::MediaControlFullscreenButtonElement::create): Ditto.
+
+ * rendering/MediaControlElements.h: Removed the type argument from the MediaControlInputElement
+ constructor.
+
+2010-09-22 Luke Macpherson <macpherson@chromium.org>
+
+ Reviewed by Alexey Proskuryakov.
+
+ Don't allow empty strings as tokens in xmlhttprequest, as per rfc2616 section 2.2.
+
+ XMLHttpRequest: setRequestHeader() does not throw SYNTAX_ERR exception if the header field name is empty
+ https://bugs.webkit.org/show_bug.cgi?id=46151
+
+ Test: http/tests/xmlhttprequest/xmlhttprequest-setrequestheader-no-name.html
+
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::isValidToken):
+
+2010-09-22 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by Adam Barth.
+
+ [BREWMP] Enable touch events
+ https://bugs.webkit.org/show_bug.cgi?id=46321
+
+ Enable TOUCH_EVENTS by porting PlatformTouchEvent and PlatformTouchPoint.
+ Brew MP does not support multi touch, so enable only single touch for now.
+
+ * platform/PlatformTouchEvent.h:
+ * platform/PlatformTouchPoint.h:
+ * platform/brew/PlatformTouchEventBrew.cpp: Added.
+ (WebCore::PlatformTouchEvent::PlatformTouchEvent):
+ * platform/brew/PlatformTouchPointBrew.cpp: Added.
+ (WebCore::PlatformTouchPoint::PlatformTouchPoint):
+
+2010-09-22 Andy Estes <aestes@apple.com>
+
+ Reviewed by Darin Adler.
+
+ REGRESSION (r61285): Microsoft Entourage 2008 does not invoke My Day window
+ https://bugs.webkit.org/show_bug.cgi?id=46334
+
+ * WebCore.exp.in: Export __ZN7WebCore27applicationIsMicrosoftMyDayEv.
+ * platform/mac/RuntimeApplicationChecks.h:
+ * platform/mac/RuntimeApplicationChecks.mm:
+ (WebCore::applicationIsMicrosoftMyDay): Determine if the embeddding
+ application is Microsoft My Day by checking the bundle identifier.
+
+2010-09-22 Andy Estes <aestes@apple.com>
+
+ Rubber-stamped by Darin Adler.
+
+ Fix a typo and correct an inaccurate phrase in a comment.
+
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processEndTag):
+
+2010-09-22 Andy Estes <aestes@apple.com>
+
+ Reviewed by Adam Barth.
+
+ REGRESSION (r61285): <script /> parses differently in HTML5
+ https://bugs.webkit.org/show_bug.cgi?id=42909
+
+ If pre-HTML5 parser quirks are enabled, the HTMLTreeBuilder should
+ handle self-closing script tags like the old parser did. Specifically,
+ "<script />" should be treated as "<script></script>".
+
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::HTMLDocumentParser): Instantiate
+ HTMLTreeBuilder with the value of usePreHTML5ParserQuirks().
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
+ (WebCore::HTMLTreeBuilder::processEndTag): If the tokenizer is not
+ currently in DataState, this means that the current end token is fake
+ and was created by the tree builder to handle a self-closing script tag.
+ Assert that pre-HTML5 quirks are enabled and set the tokenizer's state
+ to DataState in this case.
+ (WebCore::HTMLTreeBuilder::processStartTagForInHead): If pre-HTML5
+ parser quirks are enabled and the script tag is self-closing, create and
+ procses a fake script end tag.
+ * html/parser/HTMLTreeBuilder.h:
+ (WebCore::HTMLTreeBuilder::create):
+
+2010-09-22 Mihai Parparita <mihaip@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ [Chromium] User style layout tests don't pass on Chromium
+ https://bugs.webkit.org/show_bug.cgi?id=46069
+
+ Instead of making resetUserStyleCacheInAllFrames be a no-op for
+ Chromium, have it be controlled by a UserStyleInjectionTime enum.
+
+ Also move the UserStyleSheet::Level enum to be inside
+ UserStyleSheetTypes for consistency.
+
+ * WebCore.exp.in:
+ * dom/Document.cpp:
+ (WebCore::Document::pageGroupUserSheets):
+ * page/PageGroup.cpp:
+ (WebCore::PageGroup::addUserStyleSheetToWorld):
+ * page/PageGroup.h:
+ * page/UserStyleSheet.h:
+ (WebCore::UserStyleSheet::UserStyleSheet):
+ (WebCore::UserStyleSheet::level):
+ * page/UserStyleSheetTypes.h:
+
+2010-09-22 Ruben <chromium@hybridsource.org>
+
+ Reviewed by Tony Chang.
+
+ [chromium] added ifdefs for FreeBSD support
+ https://bugs.webkit.org/show_bug.cgi?id=46316
+
+ * bindings/js/JSInspectorFrontendHostCustom.cpp:
+ (WebCore::JSInspectorFrontendHost::platform):
+ * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
+ (WebCore::V8InspectorFrontendHost::platformCallback):
+ * dom/SelectElement.cpp:
+ * loader/CachedFont.cpp:
+ * page/EventHandler.cpp:
+ * page/chromium/EventHandlerChromium.cpp:
+ * platform/Scrollbar.cpp:
+ * platform/chromium/ChromiumBridge.h:
+ * platform/graphics/chromium/FontPlatformData.h:
+ * platform/graphics/skia/FontCustomPlatformData.cpp:
+ (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
+ (WebCore::FontCustomPlatformData::fontPlatformData):
+ (WebCore::createFontCustomPlatformData):
+ * platform/graphics/skia/FontCustomPlatformData.h:
+
+2010-09-22 Rafael Antognolli <antognolli@profusion.mobi>
+
+ Unreviewed build fix.
+
+ [EFL] Fix build due to latest EFL (Edje) changes.
+ https://bugs.webkit.org/show_bug.cgi?id=46317
+
+ Make the change int -> Edje_Load_Error (enum).
+
+ No new functionality, so no new tests.
+
+ * platform/efl/RenderThemeEfl.cpp:
+ (WebCore::RenderThemeEfl::themePartCacheEntryReset):
+ (WebCore::RenderThemeEfl::createEdje):
+ (WebCore::RenderThemeEfl::applyPartDescriptions):
+ * platform/efl/ScrollbarEfl.cpp:
+ (ScrollbarEfl::setParent):
+
+2010-09-22 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Darin Adler.
+
+ AX: aria-hidden change doesn't update the ax tree
+ https://bugs.webkit.org/show_bug.cgi?id=45836
+
+ Test: accessibility/aria-hidden-update.html
+
+ * dom/Element.cpp:
+ (WebCore::Element::updateAfterAttributeChanged):
+
+2010-09-22 Kinuko Yasuda <kinuko@chromium.org>
+
+ Reviewed by Dumitru Daniliuc.
+
+ [FileSystem] Fix Flags handling in DirectoryEntry custom binding code
+ https://bugs.webkit.org/show_bug.cgi?id=46028
+
+ Do not use adoptRef to get RefPtr from a raw pointer that is already
+ adopted in toNative/toJS.
+
+ Test: fast/filesystem/flags-passing.html
+
+ * bindings/js/JSDirectoryEntryCustom.cpp:
+ (WebCore::JSDirectoryEntry::getFile):
+ (WebCore::JSDirectoryEntry::getDirectory):
+ * bindings/v8/custom/V8DirectoryEntryCustom.cpp:
+ (WebCore::V8DirectoryEntry::getDirectoryCallback):
+ (WebCore::V8DirectoryEntry::getFileCallback):
+
+2010-09-22 Jia Pu <jpu@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Need to stop autocorrection panel timer when selection changes.
+ https://bugs.webkit.org/show_bug.cgi?id=46201
+ <rdar://problem/8441042>
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::appliedEditing): Stop correction timer after editing.
+ (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): When text checking is done for
+ showing autocorrection panel, we suppress all corrections that are not at the end of
+ text checking range. So that we don't replace other words while showing correction panel
+ for the last word.
+ (WebCore::Editor::stopCorrectionPanelTimer): Stop correction timer.
+
+ * editing/Editor.h: Added stopCorrectionPanelTimer() method.
+
+2010-09-22 Eric Uhrhane <ericu@chromium.org>
+
+ Reviewed by Dumitru Daniliuc.
+
+ Add Chromium implementation for FileWriter
+ https://bugs.webkit.org/show_bug.cgi?id=44361
+
+ No new tests; the implementation's not yet far enough along for that.
+
+ This makes a chain of contruction-and-linking-up for various sorts of
+ FileWriter interfaces to call through to Chromium, and for various
+ sorts of FileWriterClients to call back, with object ownership always
+ pointing towards the Chromium API. That is, the DOM object owns an
+ AsyncFileWriter, which owns its implementation object, and the reverse
+ (client) direction is raw pointers.
+
+ File metadata is looked up before the FileWriter is returned, so that
+ we know the file exists and can cache its length.
+
+ The WebCore part of this is simple and generic enough to handle
+ Chromium, so it should be easy for me to put in a WebCore-only
+ implementation next.
+
+ * fileapi/AsyncFileWriter.h:
+ * fileapi/DOMFileSystem.cpp:
+ (WebCore::DOMFileSystem::createWriter):
+ * fileapi/DOMFileSystem.h:
+ * fileapi/FileSystemCallbacks.cpp:
+ (WebCore::FileSystemCallbacksBase::didCreateFileWriter):
+ (WebCore::FileWriterCallbacks::FileWriterCallbacks):
+ (WebCore::FileWriterCallbacks::didCreateFileWriter):
+ * fileapi/FileSystemCallbacks.h:
+ * platform/AsyncFileSystem.h:
+ * platform/AsyncFileSystemCallbacks.h:
+
+2010-09-22 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Adam Barth.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46222
+ <rdar://problem/8461701> Document.getElementById() malfunctions if ID was changed via Attr node modification.
+
+ Test: fast/dom/Attr/change-id-via-attr-node-value.html
+
+ * dom/Attr.h:
+ * dom/Attr.cpp:
+ (WebCore::Attr::setValue): Separated a version callable from WebCore from one avaiable to JS.
+ Attr::setValue() can be called from Element::setAttribute(), and we don't want to update
+ m_elementsById (or to call attributeChanged()) twice in that case.
+ (WebCore::Attr::childrenChanged): If Attr's node children change, id changes.
+
+ * dom/Document.cpp: (WebCore::Document::removeElementById): Added an assertion that we are
+ not trying to remove something that isn't there. If we are, we probably failed to update
+ m_elementsById earlier.
+
+ * dom/Element.cpp: (WebCore::Element::setAttribute): If the attribute has an Attr node, its
+ children should be updated to match attribute value.
+
+2010-09-22 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46311, lock form controls and replaced elements to vertical block flow.
+
+ Patch form controls that don't use RenderReplaced by hand in html.css. Patch all RenderReplaced elements
+ with an override of setStyle that forces the new style to have a vertical block flow. We have to do something like
+ this to cover the CSS3 content: url(img) method of image replacement.
+
+ * css/html.css:
+ (input, textarea, keygen, select, button, isindex, meter, progress):
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::setStyle):
+ * rendering/RenderReplaced.h:
+
+2010-09-22 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46304
+
+ display:inline should become display:inline-block when an object's block flow does not match its parent's block flow.
+
+ Added fast/blockflow/display-mutation.html
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::styleForElement):
+ (WebCore::CSSStyleSelector::pseudoStyleForElement):
+ (WebCore::CSSStyleSelector::adjustRenderStyle):
+ * css/CSSStyleSelector.h:
+
+2010-09-22 Mario Sanchez Prada <msanchez@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [Gtk] object:text-changed events should be emitted for entries and password text
+ https://bugs.webkit.org/show_bug.cgi?id=25898
+
+ Implement proper 'text-changed' signal emission for the GTK port
+
+ Call deleteTextFromNode() when needed while removing text nodes.
+ Do it even when removeNode() is going to be called afterwards, in
+ order to allow accessibility to get properly notified about the
+ text being removed alongside with that node.
+
+ * editing/DeleteSelectionCommand.cpp:
+ (WebCore::DeleteSelectionCommand::handleGeneralDelete):
+
+ New function in AXObjectCache to call when text changes in a node.
+ Added one new function to allow notifying something changed in a
+ text node through the associated RenderObject, making such a
+ function dependant on the platform-specific implementation,
+ provided through a protected function (provided a proper
+ implementation for the GTK port and a dummy one for the others).
+
+ * accessibility/AXObjectCache.cpp:
+ (WebCore::AXObjectCache::nodeTextChangeNotification): New
+ * accessibility/AXObjectCache.h:
+ (WebCore::AXObjectCache::AXTextChange): New enumeration
+ (WebCore::AXObjectCache::nodeTextChangeNotification): New
+ (WebCore::AXObjectCache::nodeTextChangePlatformNotification): New
+ * accessibility/AccessibilityRenderObject.h:
+ (WebCore::toAccessibilityRenderObject):
+ * accessibility/chromium/AXObjectCacheChromium.cpp:
+ (WebCore::AXObjectCache::nodeTextChangePlatformNotification): New
+ * accessibility/gtk/AXObjectCacheAtk.cpp:
+ (WebCore::emitTextChanged):
+ (WebCore::AXObjectCache::nodeTextChangePlatformNotification): New
+ * accessibility/mac/AXObjectCacheMac.mm:
+ (WebCore::AXObjectCache::nodeTextChangePlatformNotification): New
+ * accessibility/win/AXObjectCacheWin.cpp:
+ (WebCore::AXObjectCache::nodeTextChangePlatformNotification): New
+
+ Notify accessibility when something changes in a text node.
+ Call to AXObjectCache::nodeTextChangeNotification() to notify when
+ text was inserted/deleted when applying/unapplying a text edition
+ command, along with the offset in the original text where the
+ change took place and the number of characters that got affected.
+
+ * editing/AppendNodeCommand.cpp:
+ (WebCore::sendAXTextChangedIgnoringLineBreaks):
+ (WebCore::AppendNodeCommand::doApply):
+ (WebCore::AppendNodeCommand::doUnapply):
+ * editing/DeleteFromTextNodeCommand.cpp:
+ (WebCore::DeleteFromTextNodeCommand::doApply):
+ (WebCore::DeleteFromTextNodeCommand::doUnapply):
+ * editing/InsertIntoTextNodeCommand.cpp:
+ (WebCore::InsertIntoTextNodeCommand::doApply):
+ (WebCore::InsertIntoTextNodeCommand::doUnapply):
+ * editing/InsertNodeBeforeCommand.cpp:
+ (WebCore::InsertNodeBeforeCommand::doApply):
+ (WebCore::InsertNodeBeforeCommand::doUnapply):
+ (WebCore::DeleteSelectionCommand::handleGeneralDelete):
+
+2010-09-22 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46298, add logicalWidth/Height getters/setters to RenderBox.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::logicalWidth):
+ (WebCore::RenderBox::logicalHeight):
+ (WebCore::RenderBox::setLogicalWidth):
+ (WebCore::RenderBox::setLogicalHeight):
+ * rendering/RenderBox.h:
+
+2010-09-22 Luiz Agostini <luiz.agostini@openbossa.org>
+
+ Reviewed by Oliver Hunt.
+
+ Script engine agnostic ScriptCallback class
+ https://bugs.webkit.org/show_bug.cgi?id=43216
+
+ Refactoring class ScriptFunctionCall to create a class (ScriptCallback) that
+ receives a script function as a ScriptValue and calls that function with provided parameters.
+
+ * bindings/js/ScriptFunctionCall.cpp:
+ (WebCore::ScriptCallArgumentHandler::appendArgument):
+ (WebCore::ScriptFunctionCall::ScriptFunctionCall):
+ (WebCore::ScriptCallback::ScriptCallback):
+ (WebCore::ScriptCallback::call):
+ * bindings/js/ScriptFunctionCall.h:
+ (WebCore::ScriptCallArgumentHandler::ScriptCallArgumentHandler):
+ * bindings/v8/ScriptFunctionCall.cpp:
+ (WebCore::ScriptCallArgumentHandler::appendArgument):
+ (WebCore::ScriptFunctionCall::ScriptFunctionCall):
+ (WebCore::ScriptCallback::ScriptCallback):
+ (WebCore::ScriptCallback::call):
+ * bindings/v8/ScriptFunctionCall.h:
+ (WebCore::ScriptCallArgumentHandler::ScriptCallArgumentHandler):
+
+2010-09-22 Brent Fulgham <bfulgham@webkit.org>
+
+ Unreviewed.
+
+ Build fix for invalid assertion after r68059.
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::getPropertiesNotIn): Correct assertion target after
+ name change.
+
+2010-09-22 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ https://bugs.webkit.org/show_bug.cgi?id=45957, fix regression in column rules stacking test.
+
+ Rewrite how the pagination bit gets set in RenderLayers, since it was totally broken and not
+ accounting for whether or not the columns block was even in the layer's containing block
+ hierarchy.
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::checkContainingBlockChainForPagination):
+ (WebCore::RenderLayer::updatePagination):
+
+2010-09-22 Brent Fulgham <bfulgham@webkit.org>
+
+ Unreviewed.
+
+ [WinCairo] Build fix for platform/cairo stuff after r67981.
+
+ * WebCore.vcproj/WebCore.vcproj: Add new files needed by all cairo
+ ports.
+
+2010-09-22 Erik Arvidsson <arv@chromium.org>
+
+ Reviewed by Nate Chapin.
+
+ [Chromium] Fix memory model for dataset
+ https://bugs.webkit.org/show_bug.cgi?id=46280
+
+ This is covered by existing tests.
+
+ * bindings/v8/custom/V8DOMStringMapCustom.cpp:
+ (WebCore::toV8):
+
+2010-09-22 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Dave Hyatt.
+
+ Fix wrong casts for table cell since its parent is not a RenderBlock. Remove
+ the redundant destroy call for empty anonymous columns or column span block.
+ https://bugs.webkit.org/show_bug.cgi?id=46245
+
+ Tests: fast/table/table-anonymous-block-destroy-crash.html
+ fast/table/table-columns-blocks-calc-crash.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::addChildToAnonymousColumnBlocks):
+ (WebCore::RenderBlock::columnsBlockForSpanningElement):
+ (WebCore::RenderBlock::removeChild):
+
+2010-09-22 Matt Perry <mpcomplete@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Trying to reland a version of r67749:
+ Have V8DOMWindowShell ask the embedder whether to run a V8 extension
+ in a particular script context.
+ https://bugs.webkit.org/show_bug.cgi?id=45721
+
+ * bindings/v8/V8DOMWindowShell.cpp:
+ (WebCore::V8DOMWindowShell::createNewContext):
+ * bindings/v8/V8Proxy.cpp:
+ (WebCore::V8Proxy::registerExtension):
+ * bindings/v8/V8Proxy.h:
+ * loader/EmptyClients.h:
+ (WebCore::EmptyFrameLoaderClient::allowScriptExtension):
+ * loader/FrameLoaderClient.h:
+
+2010-09-22 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ queryCommandState returns false for Underline command when no selection is made
+ https://bugs.webkit.org/show_bug.cgi?id=17594
+
+ The bug was caused by selectionComputedStyle's adding -webkit-text-decorations-in-effect property
+ to a dummy span used to obtain the computed style when there is a typing style.
+ Since this property is for internal use only, the CSS parser always stripped the property.
+ As a result, we were always ignoring the text decorations set by the typing style.
+
+ Fixed the bug by making selectionComputedStyle directly merge the computed style of the current
+ caret position and the typing style. This also eliminates the need for a dummy span element.
+ Due to the merge, the return value of selectionComputedStyle had to be changed to CSSMutableStyleDeclaration
+ from CSSComputedStyleDeclaration.
+
+ Test: editing/execCommand/query-text-decoration-with-typing-style.html
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::StyleChange::init): Calls getPropertiesNotIn.
+ (WebCore::getPropertiesNotIn): Renamed from getPropertiesNotInComputedStyle since it takes
+ CSSStyleDeclaration* instead of CSSComputedStyleDeclaration* for the second argument.
+ (WebCore::ApplyStyleCommand::removeNonEditingProperties): Extracted from editingStyleAtPosition.
+ (WebCore::ApplyStyleCommand::editingStyleAtPosition): Calls removeNonEditingProperties.
+ * editing/ApplyStyleCommand.h:
+ * editing/Editor.cpp:
+ (WebCore::triStateOfStyle): Calls getPropertiesNotIn. Renamed from triStateOfStyleInComputedStyle
+ since it no longer takes CSSComputedStyleDeclaration.
+ (WebCore::Editor::selectionStartHasStyle): Calls selectionComputedStyle and triStateOfStyle.
+ (WebCore::Editor::selectionHasStyle): Ditto.
+ (WebCore::Editor::selectionStartCSSPropertyValue): Calls selectionComputedStyle.
+ (WebCore::Editor::selectionComputedStyle): See above.
+ * editing/Editor.h:
+ * editing/EditorCommand.cpp:
+ (WebCore::executeToggleStyleInList): Calls selectionComputedStyle.
+
+2010-09-22 Jamey Hicks <jamey.hicks@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Web Inspector: Remote Web Inspector support for QtWebKit
+ https://bugs.webkit.org/show_bug.cgi?id=43988
+
+ Runs a web debug server on port specified by QtTestBrowser
+ argument -remote-inspector-port. Property
+ _q_webInspectorServerPort of the QWebPage instance will be set
+ according to the argument. All pages with that property set will
+ be remotely inspectable.
+
+ URL for remote inspection of first QWebPage is
+ http://localhost:9222/webkit/inspector/inspector.html?page=1
+ where 1 is the number of the QWebPage instance.
+
+ The base URL yields an index page with links to the individual inspectors:
+ http://localhost:9222/
+
+ * WebCore.pro
+
+2010-09-21 Darin Adler <darin@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ Fix some Objective-C GC problems and use RetainPtr instead of HardRetain/Release
+ https://bugs.webkit.org/show_bug.cgi?id=46220
+
+ * WebCore.exp.in: Updated.
+
+ * bindings/objc/ObjCEventListener.h: Use a RetainPtr for m_listener, since that
+ will do a CFRetain, which is right for GC rather than an -[NSObject retain],
+ which is not.
+ * bindings/objc/ObjCEventListener.mm:
+ (WebCore::ObjCEventListener::ObjCEventListener): Removed explicit retain.
+ (WebCore::ObjCEventListener::~ObjCEventListener): Removed explicit release and
+ added get().
+ (WebCore::ObjCEventListener::handleEvent): Added get();
+
+ * bridge/objc/objc_instance.mm:
+ (ObjcInstance::setGlobalException): Use copy/release instead of
+ HardRetain/HardRelease.
+ (ObjcInstance::moveGlobalExceptionToExecState): Ditto.
+
+ * platform/Cursor.h: Use RetainPtr for PlatformCursor on Mac.
+
+ * platform/Cursor.cpp:
+ (WebCore::Cursor::platformCursor): Moved this to CursorMac for the Mac.
+
+ * platform/Widget.cpp: Removed retain/releasePlatformWidget and made them
+ both inlines in the header file.
+
+ * platform/Widget.h: Fixed includes and added an include of RetainPtr.
+ Made platformWidget and setPlatformWidget non-inline on the Mac platform.
+ Made releasePlatformWidget and retainPlatformWidget empty inline functions
+ for non-GTK platforms.
+
+ * platform/graphics/mac/ImageMac.mm: Removed unneeded FoundationExtras.h
+ include.
+
+ * platform/mac/ClipboardMac.mm:
+ (WebCore::cocoaTypeFromHTMLClipboardType): use RetainPtr for the return type.
+ (WebCore::ClipboardMac::clearData): Use RetainPtr.
+ (WebCore::ClipboardMac::getData): Ditto.
+ (WebCore::ClipboardMac::setData): Ditto.
+
+ * platform/mac/CursorMac.mm:
+ (WebCore::createCustomCursor): Use RetainPtr for the return type.
+ (WebCore::Cursor::ensurePlatformCursor): Removed all the calls to HardRetain
+ since m_platformCursor is now a RetainPtr.
+ (WebCore::Cursor::Cursor): Ditto.
+ (WebCore::Cursor::operator=): Ditto. Also HardRelease.
+ (WebCore::Cursor::~Cursor): Ditto.
+ (WebCore::Cursor::platformCursor): Use get here.
+
+ * platform/mac/FoundationExtras.h: Removed all the functions except for
+ HardAutorelease. Later we can remove that one too.
+
+ * platform/mac/ThemeMac.mm:
+ (WebCore::setUpButtonCell): Changed this function to have a return value.
+ Otherwise we end up taking a pointer (actually a reference) to a global
+ variable, which does not do the right thing for GC.
+ (WebCore::nonDefaultButton): Added.
+ (WebCore::defaultButton): Added.
+ (WebCore::button): Changed to call two separate functions with two separate
+ global variables to avoid the problem with pointers to globals.
+
+ * platform/mac/WidgetMac.mm:
+ (WebCore::Widget::~Widget): Removed unneeded call to releasePlatformWidget.
+ (WebCore::Widget::platformWidget): Non-inline so we can comipile the header
+ plain non-Objective-C C++.
+ (WebCore::Widget::setPlatformWidget): Ditto.
+
+ * platform/network/mac/WebCoreURLResponse.mm:
+ (mimeTypeFromUTITree): Use RetainPtr for the return type.
+ (-[NSURLResponse adjustMIMETypeIfNecessary]): Use RetainPtr.
+
+2010-09-22 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] r68027 caused many crashes on the bots
+ https://bugs.webkit.org/show_bug.cgi?id=46268
+
+ Add the appropriate OwnPtrCairo.h include which has the OwnPtr
+ specialization for Cairo paths. Without it, we will have memory
+ corruption.
+
+ * platform/graphics/cairo/PathCairo.cpp: Add OwnPtrCairo.h include.
+
+2010-09-22 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: implement pausing on XHR
+ https://bugs.webkit.org/show_bug.cgi?id=46086
+
+ * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
+ (WebCore::V8XMLHttpRequest::sendCallback):
+ * inspector/Inspector.idl:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::setNativeBreakpoint):
+ (WebCore::InspectorController::removeNativeBreakpoint):
+ (WebCore::InspectorController::willInsertDOMNodeImpl):
+ (WebCore::InspectorController::willRemoveDOMNodeImpl):
+ (WebCore::InspectorController::willModifyDOMAttrImpl):
+ (WebCore::InspectorController::instrumentWillSendXMLHttpRequestImpl):
+ * inspector/InspectorController.h:
+ (WebCore::InspectorController::instrumentWillSendXMLHttpRequest):
+ (WebCore::InspectorController::inspectorControllerForScriptExecutionContext):
+ (WebCore::InspectorController::inspectorControllerForNode):
+ (WebCore::InspectorController::inspectorControllerForDocument):
+ * inspector/InspectorDebuggerAgent.cpp:
+ (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
+ (WebCore::InspectorDebuggerAgent::didPause):
+ (WebCore::InspectorDebuggerAgent::breakProgram):
+ * inspector/InspectorDebuggerAgent.h:
+ * inspector/InspectorTimelineAgent.h:
+ * inspector/front-end/CallStackSidebarPane.js:
+ (WebInspector.CallStackSidebarPane.prototype.updateStatus):
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel):
+ (WebInspector.ElementsPanel.prototype.reset):
+ * inspector/front-end/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel):
+ (WebInspector.ScriptsPanel.prototype.debuggerPaused):
+ (WebInspector.ScriptsPanel.prototype.reset):
+ * inspector/front-end/Settings.js:
+ * xml/XMLHttpRequest.h:
+ (WebCore::XMLHttpRequest::url):
+
+2010-09-22 Kenneth Russell <kbr@google.com>
+
+ Reviewed by James Robinson.
+
+ Add local triangulation of cubic curve control points
+ https://bugs.webkit.org/show_bug.cgi?id=45252
+
+ Adding a localized triangulation algorithm which takes as input
+ the four control points of a cubic curve segment and provides both
+ triangles as well as the ability to walk the interior edges. The
+ latter will be used later to fill the interior of shapes bounded
+ by these cubic curves, quadratic curves and line segments.
+
+ * platform/graphics/gpu/LoopBlinnLocalTriangulator.cpp: Added.
+ (WebCore::LoopBlinnLocalTriangulator::Triangle::contains):
+ (WebCore::LoopBlinnLocalTriangulator::Triangle::nextVertex):
+ (WebCore::LoopBlinnLocalTriangulator::Triangle::indexForVertex):
+ (WebCore::LoopBlinnLocalTriangulator::Triangle::makeCounterClockwise):
+ (WebCore::LoopBlinnLocalTriangulator::LoopBlinnLocalTriangulator):
+ (WebCore::LoopBlinnLocalTriangulator::reset):
+ (WebCore::LoopBlinnLocalTriangulator::triangulate):
+ (WebCore::LoopBlinnLocalTriangulator::triangulateHelper):
+ (WebCore::LoopBlinnLocalTriangulator::addTriangle):
+ (WebCore::LoopBlinnLocalTriangulator::addInteriorVertex):
+ (WebCore::LoopBlinnLocalTriangulator::isSharedEdge):
+ * platform/graphics/gpu/LoopBlinnLocalTriangulator.h: Added.
+ (WebCore::LoopBlinnLocalTriangulator::Vertex::Vertex):
+ (WebCore::LoopBlinnLocalTriangulator::Vertex::xyCoordinates):
+ (WebCore::LoopBlinnLocalTriangulator::Vertex::klmCoordinates):
+ (WebCore::LoopBlinnLocalTriangulator::Vertex::set):
+ (WebCore::LoopBlinnLocalTriangulator::Vertex::end):
+ (WebCore::LoopBlinnLocalTriangulator::Vertex::setEnd):
+ (WebCore::LoopBlinnLocalTriangulator::Vertex::marked):
+ (WebCore::LoopBlinnLocalTriangulator::Vertex::setMarked):
+ (WebCore::LoopBlinnLocalTriangulator::Vertex::interior):
+ (WebCore::LoopBlinnLocalTriangulator::Vertex::setInterior):
+ (WebCore::LoopBlinnLocalTriangulator::Vertex::resetFlags):
+ (WebCore::LoopBlinnLocalTriangulator::Triangle::Triangle):
+ (WebCore::LoopBlinnLocalTriangulator::Triangle::getVertex):
+ (WebCore::LoopBlinnLocalTriangulator::Triangle::setVertices):
+ (WebCore::LoopBlinnLocalTriangulator::getVertex):
+ (WebCore::LoopBlinnLocalTriangulator::numberOfTriangles):
+ (WebCore::LoopBlinnLocalTriangulator::getTriangle):
+ (WebCore::LoopBlinnLocalTriangulator::numberOfInteriorVertices):
+ (WebCore::LoopBlinnLocalTriangulator::getInteriorVertex):
+
+2010-09-22 Lucas De Marchi <lucas.demarchi@profusion.mobi>
+
+ Unreviewed, EFL build fix.
+
+ * CMakeListsEfl.txt:
+ * platform/efl/ClipboardEfl.cpp:
+ (WebCore::ClipboardEfl::ClipboardEfl):
+
+2010-09-22 İsmail Dönmez <ismail@namtrac.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Build fix for WinCE
+
+ Add two missing stubs:
+ - privateBrowsingStateChanged(bool)
+ - bindingInstance()
+
+ * platform/qt/TemporaryLinkStubsQt.cpp:
+ (PluginView::privateBrowsingStateChanged):
+ (PluginView::bindingInstance):
+
+2010-09-22 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] FontCustomPlatformData.cpp leaks FT_Faces
+ https://bugs.webkit.org/show_bug.cgi?id=16941
+
+ Attach lifetime of the FontCustomPlatformData FT_Face to the resulting cairo_font_face_t.
+ This will free the memory associated with the FT_Face once the cairo_font_face_t is
+ destroyed.
+
+ No new tests as functionality should not change.
+
+ * platform/graphics/cairo/FontCustomPlatformData.cpp:
+ (WebCore::releaseCustomFontData): Moved this helper method to the top of the file
+ and gave it a more descriptive name.
+ (WebCore::FontCustomPlatformData::FontCustomPlatformData): Changed the constructor to
+ take the FT_Face and the buffer, so to better encapsulate the creation of the cairo
+ face.
+ (WebCore::FontCustomPlatformData::~FontCustomPlatformData): Added a comment about the
+ fate of the FT_Face to the destructor.
+ (WebCore::createFontCustomPlatformData): Cleaned up the code here and moved some of the
+ logic into the constructor.
+ * platform/graphics/cairo/FontCustomPlatformData.h: Updated method definitions.
+
+2010-09-22 Balazs Kelemen <kb@inf.u-szeged.hu>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ PluginStrategy should satisfy the needs of Qt
+ https://bugs.webkit.org/show_bug.cgi?id=45857
+ No new functionality so no new tests.
+
+ * plugins/PluginData.cpp:
+ (WebCore::PluginData::initPlugins):
+ * plugins/PluginStrategy.h: Added a |const Page*| argument to getPluginInfo.
+
+2010-09-22 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Elements panel does not reflect changes to the text node values.
+ https://bugs.webkit.org/show_bug.cgi?id=46166
+
+ * dom/CharacterData.cpp:
+ (WebCore::CharacterData::dispatchModifiedEvent):
+ * inspector/Inspector.idl:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::characterDataModifiedImpl):
+ * inspector/InspectorController.h:
+ (WebCore::InspectorController::characterDataModified):
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::characterDataModified):
+ * inspector/InspectorDOMAgent.h:
+ (WebCore::EventListenerInfo::EventListenerInfo):
+ (WebCore::InspectorDOMAgent::create):
+ (WebCore::InspectorDOMAgent::cast):
+ (WebCore::InspectorDOMAgent::cssStore):
+ * inspector/front-end/DOMAgent.js:
+ (WebInspector.DOMAgent.prototype._characterDataModified):
+ (WebInspector.characterDataModified):
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel.prototype._characterDataModified):
+ * inspector/front-end/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeElement.prototype._textNodeEditingCommitted):
+
+2010-09-21 Ragner Magalhaes <ragner.magalhaes@openbossa.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] On Maemo platform, web style is missing for some inputs
+ https://bugs.webkit.org/show_bug.cgi?id=46182
+
+ * css/themeQtMaemo5.css:
+
+2010-09-22 Patrick Gansterer <paroga@webkit.org>
+
+ Unreviewed.
+
+ [WINCE] Build fix for ResourceHandleWin after r67291.
+
+ * platform/network/win/ResourceHandleWin.cpp:
+ (WebCore::ResourceHandle::loadResourceSynchronously): Replace Frame* parameter with NetworkingContext*.
+
+2010-09-22 Chris Guillory <chris.guillory@google.com>
+
+ Reviewed by Chris Fleizach.
+
+ Crash due to bad cast in AXObjectCacheChromium.cpp.
+ https://bugs.webkit.org/show_bug.cgi?id=46237
+
+ * accessibility/chromium/AXObjectCacheChromium.cpp:
+ (WebCore::AXObjectCache::postPlatformNotification):
+ * page/ChromeClient.h:
+ (WebCore::ChromeClient::postAccessibilityNotification):
+ (WebCore::ChromeClient::didChangeAccessibilityObjectState):
+ (WebCore::ChromeClient::didChangeAccessibilityObjectChildren):
+ * page/chromium/ChromeClientChromium.h:
+
+2010-09-22 Chris Rogers <crogers@google.com>
+
+ Reviewed by James Robinson.
+
+ Add HRTFElevation files
+ https://bugs.webkit.org/show_bug.cgi?id=45864
+
+ No new tests since audio API is not yet implemented.
+
+ * platform/audio/HRTFElevation.cpp: Added.
+ (WebCore::HRTFElevation::calculateSymmetricKernelsForAzimuthElevation):
+ (WebCore::HRTFElevation::calculateKernelsForAzimuthElevation):
+ (WebCore::HRTFElevation::createForSubject):
+ (WebCore::HRTFElevation::createByInterpolatingSlices):
+ (WebCore::HRTFElevation::getKernelsFromAzimuth):
+ * platform/audio/HRTFElevation.h: Added.
+ (WebCore::HRTFElevation::kernelListL):
+ (WebCore::HRTFElevation::kernelListR):
+ (WebCore::HRTFElevation::elevationAngle):
+ (WebCore::HRTFElevation::numberOfAzimuths):
+ (WebCore::HRTFElevation::sampleRate):
+ (WebCore::HRTFElevation::HRTFElevation):
+
+2010-09-22 Alejandro G. Castro <alex@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [gtk] Use the smart pointers to handle cairo_path_t
+ https://bugs.webkit.org/show_bug.cgi?id=46212
+
+ Modified the code to use smart pointers with cairo_path_t
+ variables.
+
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::appendPathToCairoContext):
+ (WebCore::GraphicsContext::clip):
+ (WebCore::GraphicsContext::drawTiledShadow):
+ * platform/graphics/cairo/PathCairo.cpp:
+ (WebCore::Path::Path):
+ (WebCore::Path::operator=):
+ (WebCore::Path::apply):
+ (WebCore::Path::debugString):
+
+2010-09-22 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by Kent Tamura.
+
+ [BREWMP] Implement Image::loadPlatformResource
+ https://bugs.webkit.org/show_bug.cgi?id=45873
+
+ Load images from the resource directory.
+
+ * platform/graphics/brew/ImageBrew.cpp: Added.
+ (WebCore::Image::loadPlatformResource):
+
+2010-09-22 Chris Rogers <crogers@google.com>
+
+ Reviewed by James Robinson.
+
+ Add HRTFKernel files
+ https://bugs.webkit.org/show_bug.cgi?id=45863
+
+ No new tests since audio API is not yet implemented.
+
+ * platform/audio/HRTFKernel.cpp: Added.
+ (WebCore::extractAverageGroupDelay):
+ (WebCore::HRTFKernel::HRTFKernel):
+ (WebCore::HRTFKernel::createImpulseResponse):
+ (WebCore::HRTFKernel::createInterpolatedKernel):
+ * platform/audio/HRTFKernel.h: Added.
+ (WebCore::HRTFKernel::create):
+ (WebCore::HRTFKernel::fftFrame):
+ (WebCore::HRTFKernel::fftSize):
+ (WebCore::HRTFKernel::frameDelay):
+ (WebCore::HRTFKernel::sampleRate):
+ (WebCore::HRTFKernel::nyquist):
+ (WebCore::HRTFKernel::HRTFKernel):
+
+2010-09-22 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Chris Fleizach.
+
+ Support keyboard operations for <input type=range>.
+ https://bugs.webkit.org/show_bug.cgi?id=45803
+
+ Increasing the value with Up/Right arrow keys by its step value,
+ and decreasing with Down/Left arrow keys. If an input element has
+ step=any attribute, increasing/decreasing by 1/100 of max-min.
+
+ Note: This change is not useful on Mac because users can't set
+ focus on range controls.
+
+ Test: fast/forms/range-keyoperation.html
+
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::defaultEventHandler):
+ Calls handleKeyEventForRange() for RANGE and key events.
+ (WebCore::HTMLInputElement::handleKeyEventForRange):
+ * html/HTMLInputElement.h: Add handleKeyEventForRange() declaration.
+
+2010-09-22 Mario Sanchez Prada <msanchez@igalia.com>
+
+ Reviewed by Chris Fleizach.
+
+ [Gtk] Incorrect exposure of list items whose children are elements
+ https://bugs.webkit.org/show_bug.cgi?id=45383
+
+ Set ATK_ROLE_LIST_ITEM looking for the role of the parent object
+
+ Test: platform/gtk/accessibility/list-items-always-exposed.html
+
+ * accessibility/gtk/AccessibilityObjectAtk.cpp:
+ (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
+ Always include objects with ListItemRole in accessibility for GTK.
+ * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
+ (getInterfaceMaskFromObject): Add some specific code to handle the
+ special case of list markers by implementing AtkText when needed.
+
+2010-09-22 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ Make FilterEffects independent of SVG
+ https://bugs.webkit.org/show_bug.cgi?id=46177
+
+ Moving all FilterEffects from svg/graphics/filters to platform/graphics/filters, now that they
+ are independent of SVG. Removed the SVG prefix of the files and updated the headers.
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/graphics/filters/DistantLightSource.h: Copied from WebCore/svg/graphics/filters/SVGDistantLightSource.h.
+ * platform/graphics/filters/FEConvolveMatrix.cpp: Copied from WebCore/svg/graphics/filters/SVGFEConvolveMatrix.cpp.
+ * platform/graphics/filters/FEConvolveMatrix.h: Copied from WebCore/svg/graphics/filters/SVGFEConvolveMatrix.h.
+ * platform/graphics/filters/FEDiffuseLighting.cpp: Copied from WebCore/svg/graphics/filters/SVGFEDiffuseLighting.cpp.
+ * platform/graphics/filters/FEDiffuseLighting.h: Copied from WebCore/svg/graphics/filters/SVGFEDiffuseLighting.h.
+ * platform/graphics/filters/FEDisplacementMap.cpp: Copied from WebCore/svg/graphics/filters/SVGFEDisplacementMap.cpp.
+ * platform/graphics/filters/FEDisplacementMap.h: Copied from WebCore/svg/graphics/filters/SVGFEDisplacementMap.h.
+ * platform/graphics/filters/FEFlood.cpp: Copied from WebCore/svg/graphics/filters/SVGFEFlood.cpp.
+ * platform/graphics/filters/FEFlood.h: Copied from WebCore/svg/graphics/filters/SVGFEFlood.h.
+ * platform/graphics/filters/FELighting.cpp: Copied from WebCore/svg/graphics/filters/SVGFELighting.cpp.
+ * platform/graphics/filters/FELighting.h: Copied from WebCore/svg/graphics/filters/SVGFELighting.h.
+ * platform/graphics/filters/FEMerge.cpp: Copied from WebCore/svg/graphics/filters/SVGFEMerge.cpp.
+ * platform/graphics/filters/FEMerge.h: Copied from WebCore/svg/graphics/filters/SVGFEMerge.h.
+ * platform/graphics/filters/FEMorphology.cpp: Copied from WebCore/svg/graphics/filters/SVGFEMorphology.cpp.
+ * platform/graphics/filters/FEMorphology.h: Copied from WebCore/svg/graphics/filters/SVGFEMorphology.h.
+ * platform/graphics/filters/FEOffset.cpp: Copied from WebCore/svg/graphics/filters/SVGFEOffset.cpp.
+ * platform/graphics/filters/FEOffset.h: Copied from WebCore/svg/graphics/filters/SVGFEOffset.h.
+ * platform/graphics/filters/FESpecularLighting.cpp: Copied from WebCore/svg/graphics/filters/SVGFESpecularLighting.cpp.
+ * platform/graphics/filters/FESpecularLighting.h: Copied from WebCore/svg/graphics/filters/SVGFESpecularLighting.h.
+ * platform/graphics/filters/FETile.cpp: Copied from WebCore/svg/graphics/filters/SVGFETile.cpp.
+ * platform/graphics/filters/FETile.h: Copied from WebCore/svg/graphics/filters/SVGFETile.h.
+ * platform/graphics/filters/FETurbulence.cpp: Copied from WebCore/svg/graphics/filters/SVGFETurbulence.cpp.
+ * platform/graphics/filters/FETurbulence.h: Copied from WebCore/svg/graphics/filters/SVGFETurbulence.h.
+ * platform/graphics/filters/LightSource.cpp: Copied from WebCore/svg/graphics/filters/SVGLightSource.cpp.
+ * platform/graphics/filters/LightSource.h: Copied from WebCore/svg/graphics/filters/SVGLightSource.h.
+ * platform/graphics/filters/PointLightSource.h: Copied from WebCore/svg/graphics/filters/SVGPointLightSource.h.
+ * platform/graphics/filters/SpotLightSource.h: Copied from WebCore/svg/graphics/filters/SVGSpotLightSource.h.
+ * svg/SVGFEConvolveMatrixElement.h:
+ * svg/SVGFEDiffuseLightingElement.cpp:
+ * svg/SVGFEDisplacementMapElement.h:
+ * svg/SVGFEDistantLightElement.cpp:
+ * svg/SVGFEFloodElement.h:
+ * svg/SVGFELightElement.h:
+ * svg/SVGFEMergeElement.h:
+ * svg/SVGFEMorphologyElement.h:
+ * svg/SVGFEOffsetElement.h:
+ * svg/SVGFEPointLightElement.cpp:
+ * svg/SVGFESpecularLightingElement.h:
+ * svg/SVGFESpotLightElement.cpp:
+ * svg/SVGFETileElement.h:
+ * svg/SVGFETurbulenceElement.h:
+ * svg/graphics/filters/SVGDistantLightSource.h: Removed.
+ * svg/graphics/filters/SVGFEConvolveMatrix.cpp: Removed.
+ * svg/graphics/filters/SVGFEConvolveMatrix.h: Removed.
+ * svg/graphics/filters/SVGFEDiffuseLighting.cpp: Removed.
+ * svg/graphics/filters/SVGFEDiffuseLighting.h: Removed.
+ * svg/graphics/filters/SVGFEDisplacementMap.cpp: Removed.
+ * svg/graphics/filters/SVGFEDisplacementMap.h: Removed.
+ * svg/graphics/filters/SVGFEFlood.cpp: Removed.
+ * svg/graphics/filters/SVGFEFlood.h: Removed.
+ * svg/graphics/filters/SVGFELighting.cpp: Removed.
+ * svg/graphics/filters/SVGFELighting.h: Removed.
+ * svg/graphics/filters/SVGFEMerge.cpp: Removed.
+ * svg/graphics/filters/SVGFEMerge.h: Removed.
+ * svg/graphics/filters/SVGFEMorphology.cpp: Removed.
+ * svg/graphics/filters/SVGFEMorphology.h: Removed.
+ * svg/graphics/filters/SVGFEOffset.cpp: Removed.
+ * svg/graphics/filters/SVGFEOffset.h: Removed.
+ * svg/graphics/filters/SVGFESpecularLighting.cpp: Removed.
+ * svg/graphics/filters/SVGFESpecularLighting.h: Removed.
+ * svg/graphics/filters/SVGFETile.cpp: Removed.
+ * svg/graphics/filters/SVGFETile.h: Removed.
+ * svg/graphics/filters/SVGFETurbulence.cpp: Removed.
+ * svg/graphics/filters/SVGFETurbulence.h: Removed.
+ * svg/graphics/filters/SVGLightSource.cpp: Removed.
+ * svg/graphics/filters/SVGLightSource.h: Removed.
+ * svg/graphics/filters/SVGPointLightSource.h: Removed.
+ * svg/graphics/filters/SVGSpotLightSource.h: Removed.
+
+2010-09-22 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ [WIN] Add internetHandle to WebCoreSynchronousLoader.
+ https://bugs.webkit.org/show_bug.cgi?id=46185
+
+ For loading content via network the WebCoreSynchronousLoader needs its own (synchronous) internetHandle.
+ This also adds asynchronousInternetHandle() to create a static asynchronous internetHandle.
+
+ * platform/network/win/ResourceHandleWin.cpp:
+ (WebCore::createInternetHandle):
+ (WebCore::asynchronousInternetHandle):
+ (WebCore::WebCoreSynchronousLoader::internetHandle):
+ (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader): Create synchronous internetHandle.
+ (WebCore::WebCoreSynchronousLoader::~WebCoreSynchronousLoader): Delete synchronous internetHandle.
+
+2010-09-22 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by Chris Fleizach.
+
+ [chromium] Remove unused sys/types.h in VDMXParser.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=46136
+
+ sys/types.h is not needed here.
+
+ * platform/graphics/chromium/VDMXParser.cpp:
+
+2010-09-22 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by Kent Tamura.
+
+ [BREWMP] Change the home directory path to the WebKit module directory
+ https://bugs.webkit.org/show_bug.cgi?id=45895
+
+ AEEFS_HOME_DIR denotes the currently running application's directory.
+ Change it to fs:/~<clsid> to use the WebKit module directory as home.
+
+ * platform/brew/FileSystemBrew.cpp:
+ (WebCore::homeDirectoryPath):
+
+2010-09-22 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by Kent Tamura.
+
+ [BREWMP] Add dummy Pasteboard
+ https://bugs.webkit.org/show_bug.cgi?id=46107
+
+ Pasteboard is not supported yet. Add dummy implementation to avoid link errors.
+
+ * platform/brew/PasteboardBrew.cpp: Added.
+ (WebCore::Pasteboard::generalPasteboard):
+ (WebCore::Pasteboard::Pasteboard):
+ (WebCore::Pasteboard::clear):
+ (WebCore::Pasteboard::writeSelection):
+ (WebCore::Pasteboard::writePlainText):
+ (WebCore::Pasteboard::writeURL):
+ (WebCore::Pasteboard::writeImage):
+ (WebCore::Pasteboard::canSmartReplace):
+ (WebCore::Pasteboard::plainText):
+ (WebCore::Pasteboard::documentFragment):
+
+2010-09-21 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Kent Tamura.
+
+ Each EntityMaskIn* needs explanation
+ https://bugs.webkit.org/show_bug.cgi?id=44833
+
+ Added a description as to why we escape nbsp when serializing HTML documents but not when serializing XML documents.
+
+ * editing/markup.cpp:
+
+2010-09-21 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Kent Tamura.
+
+ cleanup: removeInlineStyleFromElement and extractInlineStyleToPushDown should be merged
+ https://bugs.webkit.org/show_bug.cgi?id=46205
+
+ Cleanup required to fix the bug 27818. Added the style extraction mechanism to removeInlineStyleFromElement
+ and removeCSSStyle and replaced the call to extractInlineStyleToPushDown by a call to removeInlineStyleFromElement.
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Added extractedStyle argument.
+ (WebCore::ApplyStyleCommand::removeCSSStyle): Added extractedStyle argument.
+ (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode): Calls removeInlineStyleFromElement instead of
+ extractInlineStyleToPushDown which has been deleted.
+ * editing/ApplyStyleCommand.h:
+
+2010-09-21 Andrew Wilson <atwilson@chromium.org>
+
+ Unreviewed, rolling out r67982.
+ http://trac.webkit.org/changeset/67982
+ https://bugs.webkit.org/show_bug.cgi?id=45156
+
+ Causes crashes on chromium testshell
+
+ * WebCore.gypi:
+ * accessibility/chromium/AXObjectCacheChromium.cpp:
+ (WebCore::AXObjectCache::postPlatformNotification):
+ (WebCore::AXObjectCache::handleFocusedUIElementChanged):
+ (WebCore::AXObjectCache::handleScrolledToAnchor):
+ * dom/Document.cpp:
+ (WebCore::Document::implicitClose):
+ (WebCore::Document::setFocusedNode):
+ * editing/SelectionController.h:
+ * editing/chromium/SelectionControllerChromium.cpp: Removed.
+ * page/FrameView.cpp:
+ (WebCore::FrameView::layout):
+ * page/chromium/ChromeClientChromium.h:
+
+2010-09-21 Cosmin Truta <ctruta@chromium.org>
+
+ Reviewed by James Robinson.
+
+ RenderImage::intrinsicSizeChanged crashes when m_imageResource is missing
+ https://bugs.webkit.org/show_bug.cgi?id=46120
+
+ Avoid applying operator -> to m_imageResource when its underlying pointer is NULL.
+
+ * rendering/RenderImage.h:
+ (WebCore::RenderImage::intrinsicSizeChanged): Checked m_imageResource.
+ * html/HTMLImageElement.cpp:
+ (HTMLImageElement::createRenderer): Fixed indentation.
+
+2010-09-21 Kenneth Russell <kbr@google.com>
+
+ Reviewed by James Robinson.
+
+ [chromium] Remove GLES2Context and WebGLES2Context
+ https://bugs.webkit.org/show_bug.cgi?id=46131
+
+ Removed now-obsolete GLES2Context and WebGLES2Context classes, and
+ dependency on command buffer client code from WebCore. Built and
+ tested 3D CSS and WebGL content on Mac OS X to test.
+
+ * WebCore.gypi:
+ * platform/chromium/GLES2Context.h: Removed.
+ * platform/graphics/skia/ImageSkia.cpp:
+
+2010-09-21 Geoffrey Garen <ggaren@apple.com>
+
+ Try to fix the Windows build.
+
+ * loader/Cache.cpp:
+ (WebCore::Cache::makeResourcePurgeable):
+ (WebCore::Cache::evict): Cast to int before using unary '-', to avoid an
+ MSVC warning.
+
+2010-09-21 Pratik Solanki <psolanki@apple.com>
+
+ Reviewed by Geoffrey Garen and Darin Adler.
+
+ Use purgeable memory to keep more dead resources in cache
+ https://bugs.webkit.org/show_bug.cgi?id=44806
+ <rdar://problem/8350901>
+
+ This changes the behavior of dead resources in the WebCore cache to be the following if
+ shouldMakeResourcePurgeableOnEviction() returns true.
+
+ 1. Dead resources in the cache are kept in non-purgeable memory.
+ 2. When we prune dead resources, instead of freeing them, we mark their memory as purgeable
+ and keep the resources until the kernel reclaims the purgeable memory.
+
+ By leaving the in-cache dead resources in dirty resident memory, we decrease the likelihood
+ of the kernel claiming that memory and forcing us to refetch the resource (for example when
+ a user presses back).
+
+ And by having an unbounded number of resource objects using purgeable memory, we can use
+ as much memory as is available on the machine. The trade-off is that the CachedResource
+ object (and its member variables) are allocated in non-purgeable TC-malloc'd memory so
+ we would see slightly more memory use due to this.
+
+ * loader/Cache.cpp:
+ (WebCore::Cache::resourceForURL): Adjust sizes appropriately if we made resource memory
+ non-purgeable.
+ (WebCore::Cache::pruneDeadResources): When removing dead resources, try first to mark their
+ memory as purgeable. If not, evict the resource.
+ (WebCore::Cache::makeResourcePurgeable): Added. Try to mark resource
+ memory as purgeable. If successful, adjust the sizes so that we don't
+ factor this resources size in the Cache size calculation.
+ (WebCore::Cache::evict): Don't decrement size if we already did it in makeResourcePurgeable.
+ (WebCore::Cache::dumpLRULists): Extra debug logging.
+ * loader/Cache.h:
+ (WebCore::Cache::shouldMakeResourcePurgeableOnEviction): Added. Indicates if the new
+ behaviour is enabled.
+ * loader/CachedCSSStyleSheet.cpp:
+ (WebCore::CachedCSSStyleSheet::allClientsRemoved): Do not mark memory as purgeable. The
+ Cache class takes care of this.
+ * loader/CachedImage.cpp:
+ (WebCore::CachedImage::destroyDecodedData): Ditto.
+ * loader/CachedScript.cpp:
+ (WebCore::CachedScript::destroyDecodedData): Ditto.
+
+2010-09-21 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Darin Adler.
+
+ <rdar://problem/7729077> Extending the selection to sentence boundary after a line break may select extra character
+ https://bugs.webkit.org/show_bug.cgi?id=46232
+
+ Test: editing/selection/extend-by-sentence-002.html
+
+ * editing/visible_units.cpp:
+ (WebCore::nextBoundary): The text iterator’s range end can be the position after
+ the line break, in which case the next visible is actually after the first character
+ of the next sentence. Instead, advance the text iterator past the newline character
+ and return the beginning of its range, which is guaranteed to still be before the
+ next sentence.
+
+2010-09-21 Robert Hogan <robert@webkit.org>
+
+ Rubber-stamped by Ariya Hidayat.
+
+ [Qt] Build fix against qt trunk
+
+ * platform/graphics/qt/ContextShadow.cpp:
+ (WebCore::ContextShadow::beginShadowLayer):
+
+2010-09-21 Tony Chang <tony@chromium.org>
+
+ Unreviewed, QT build fix.
+
+ * platform/qt/ClipboardQt.cpp:
+ (WebCore::ClipboardQt::ClipboardQt):
+
+2010-09-21 Andy Estes <aestes@apple.com>
+
+ Reviewed by Darin Adler.
+
+ REGRESSION (r61285): AIM 2.1.296: Code rendered as text in Welcome screen
+ https://bugs.webkit.org/show_bug.cgi?id=46134
+
+ * WebCore.exp.in: Export __ZN7WebCore32applicationIsAOLInstantMessengerEv.
+ * platform/mac/RuntimeApplicationChecks.h:
+ * platform/mac/RuntimeApplicationChecks.mm:
+ (WebCore::applicationIsAOLInstantMessenger): Determine if the embedding
+ application is AOL Instant Messenger by checking the bundle identifier.
+
+2010-09-21 Chris Guillory <chris.guillory@google.com>
+
+ Reviewed by Chris Fleizach.
+
+ Send webkit accessibility notifications to Chromium.
+ https://bugs.webkit.org/show_bug.cgi?id=45156
+
+ * WebCore.gypi:
+ * accessibility/chromium/AXObjectCacheChromium.cpp:
+ (WebCore::AXObjectCache::postPlatformNotification):
+ (WebCore::AXObjectCache::handleFocusedUIElementChanged):
+ (WebCore::AXObjectCache::handleScrolledToAnchor):
+ * dom/Document.cpp:
+ (WebCore::Document::implicitClose):
+ (WebCore::Document::setFocusedNode):
+ * editing/SelectionController.h:
+ * editing/chromium/SelectionControllerChromium.cpp: Added.
+ (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
+ * page/FrameView.cpp:
+ (WebCore::FrameView::layout):
+ * page/chromium/ChromeClientChromium.h:
+
+2010-09-21 Alejandro G. Castro <alex@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [gtk] Move copyContextProperties outside the GraphicsContextCairo
+ https://bugs.webkit.org/show_bug.cgi?id=46179.
+
+ Moved the copyContextProperties function to the CairoUtilities so
+ we can use it outside GraphicsContextCairo. We moved also the old
+ gtk CairoUtilities file to GdkCairoUtilities and added the new
+ file in the cairo directory.
+
+ * GNUmakefile.am:
+ * platform/graphics/cairo/CairoUtilities.cpp: Added.
+ (WebCore::copyContextProperties):
+ * platform/graphics/cairo/CairoUtilities.h: Added.
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ * platform/graphics/gtk/CairoUtilities.cpp: Removed.
+ * platform/graphics/gtk/CairoUtilities.h: Removed.
+ * platform/graphics/gtk/GdkCairoUtilities.cpp: Added.
+ (getCairoSurfacePixel):
+ (getGdkPixbufPixel):
+ (cairoImageSurfaceToGdkPixbuf):
+ * platform/graphics/gtk/GdkCairoUtilities.h: Added.
+ * platform/graphics/gtk/ImageBufferGtk.cpp:
+ * platform/graphics/gtk/ImageGtk.cpp:
+
+2010-09-21 Vangelis Kokkevis <vangelis@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [chromium] Cleaned up LayerRendererChromium::prepareToDrawLayers
+ logic to avoid unnecessary copy operations if the existing root layer
+ contents aren't useful for scrolling. Also removed call to updateLayersRecursive()
+ as the composited layer update is actually happening in the drawLayers() method.
+ https://bugs.webkit.org/show_bug.cgi?id=46199
+
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::prepareToDrawLayers):
+
+2010-09-21 Daniel Cheng <dcheng@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ Change Clipboard to use an enum instead of isForDragging = true/false
+ https://bugs.webkit.org/show_bug.cgi?id=46004
+
+ No new tests, since it's just a refactoring change.
+
+ * bindings/js/JSClipboardCustom.cpp:
+ (WebCore::JSClipboard::setDragImage):
+ * bindings/v8/custom/V8ClipboardCustom.cpp:
+ (WebCore::V8Clipboard::setDragImageCallback):
+ * dom/Clipboard.cpp:
+ (WebCore::Clipboard::Clipboard):
+ (WebCore::Clipboard::setDropEffect):
+ (WebCore::Clipboard::setEffectAllowed):
+ * dom/Clipboard.h:
+ (WebCore::Clipboard::isForCopyAndPaste):
+ (WebCore::Clipboard::isForDragAndDrop):
+ * editing/android/EditorAndroid.cpp:
+ (WebCore::Editor::newGeneralClipboard):
+ * editing/brew/EditorBrew.cpp:
+ (WebCore::Editor::newGeneralClipboard):
+ * editing/chromium/EditorChromium.cpp:
+ (WebCore::Editor::newGeneralClipboard):
+ * editing/haiku/EditorHaiku.cpp:
+ (WebCore::Editor::newGeneralClipboard):
+ * editing/mac/EditorMac.mm:
+ (WebCore::Editor::newGeneralClipboard):
+ * editing/wx/EditorWx.cpp:
+ (WebCore::Editor::newGeneralClipboard):
+ * page/chromium/EventHandlerChromium.cpp:
+ (WebCore::EventHandler::createDraggingClipboard):
+ * page/efl/EventHandlerEfl.cpp:
+ (WebCore::EventHandler::createDraggingClipboard):
+ * page/gtk/EventHandlerGtk.cpp:
+ (WebCore::EventHandler::createDraggingClipboard):
+ * page/haiku/EventHandlerHaiku.cpp:
+ (WebCore::EventHandler::createDraggingClipboard):
+ * page/mac/EventHandlerMac.mm:
+ (WebCore::EventHandler::createDraggingClipboard):
+ * page/qt/EventHandlerQt.cpp:
+ (WebCore::EventHandler::createDraggingClipboard):
+ * page/win/EventHandlerWin.cpp:
+ (WebCore::EventHandler::createDraggingClipboard):
+ * page/wx/EventHandlerWx.cpp:
+ (WebCore::EventHandler::createDraggingClipboard):
+ * platform/android/ClipboardAndroid.cpp:
+ (WebCore::ClipboardAndroid::ClipboardAndroid):
+ (WebCore::ClipboardAndroid::clearData):
+ (WebCore::ClipboardAndroid::clearAllData):
+ (WebCore::ClipboardAndroid::setData):
+ * platform/android/ClipboardAndroid.h:
+ * platform/brew/ClipboardBrew.cpp:
+ (WebCore::ClipboardBrew::ClipboardBrew):
+ (WebCore::ClipboardBrew::clearData):
+ (WebCore::ClipboardBrew::clearAllData):
+ (WebCore::ClipboardBrew::setData):
+ * platform/brew/ClipboardBrew.h:
+ * platform/chromium/ClipboardChromium.cpp:
+ (WebCore::Clipboard::create):
+ (WebCore::ClipboardChromium::ClipboardChromium):
+ (WebCore::ClipboardChromium::create):
+ (WebCore::ClipboardChromium::getData):
+ * platform/chromium/ClipboardChromium.h:
+ * platform/efl/ClipboardEfl.cpp:
+ (WebCore::Editor::newGeneralClipboard):
+ (WebCore::ClipboardEfl::ClipboardEfl):
+ * platform/efl/ClipboardEfl.h:
+ (WebCore::ClipboardEfl::create):
+ * platform/gtk/ClipboardGtk.cpp:
+ (WebCore::Editor::newGeneralClipboard):
+ (WebCore::Clipboard::create):
+ (WebCore::ClipboardGtk::ClipboardGtk):
+ (WebCore::dataObjectTypeFromHTMLClipboardType):
+ (WebCore::ClipboardGtk::clearData):
+ (WebCore::ClipboardGtk::getData):
+ (WebCore::ClipboardGtk::setData):
+ * platform/gtk/ClipboardGtk.h:
+ (WebCore::ClipboardGtk::create):
+ * platform/haiku/ClipboardHaiku.cpp:
+ (WebCore::Clipboard::create):
+ (WebCore::ClipboardHaiku::ClipboardHaiku):
+ * platform/haiku/ClipboardHaiku.h:
+ (WebCore::ClipboardHaiku::create):
+ * platform/mac/ClipboardMac.h:
+ (WebCore::ClipboardMac::create):
+ * platform/mac/ClipboardMac.mm:
+ (WebCore::Clipboard::create):
+ (WebCore::ClipboardMac::ClipboardMac):
+ * platform/qt/ClipboardQt.cpp:
+ (WebCore::ClipboardQt::ClipboardQt):
+ (WebCore::ClipboardQt::~ClipboardQt):
+ (WebCore::ClipboardQt::clearData):
+ (WebCore::ClipboardQt::clearAllData):
+ (WebCore::ClipboardQt::setData):
+ (WebCore::ClipboardQt::declareAndWriteDragImage):
+ (WebCore::ClipboardQt::writeURL):
+ (WebCore::ClipboardQt::writeRange):
+ (WebCore::ClipboardQt::writePlainText):
+ * platform/qt/ClipboardQt.h:
+ (WebCore::ClipboardQt::create):
+ * platform/win/ClipboardWin.cpp:
+ (WebCore::Clipboard::create):
+ (WebCore::ClipboardWin::ClipboardWin):
+ (WebCore::ClipboardWin::clearData):
+ (WebCore::ClipboardWin::clearAllData):
+ (WebCore::ClipboardWin::setData):
+ (WebCore::ClipboardWin::setExternalDataObject):
+ * platform/win/ClipboardWin.h:
+ (WebCore::ClipboardWin::create):
+ * platform/win/EditorWin.cpp:
+ (WebCore::Editor::newGeneralClipboard):
+ * platform/wx/ClipboardWx.cpp:
+ (WebCore::ClipboardWx::ClipboardWx):
+ * platform/wx/ClipboardWx.h:
+ (WebCore::ClipboardWx::create):
+
+2010-09-21 Abhishek Arya <inferno@chromium.org>
+
+ Reviewed by Dave Hyatt.
+
+ Take isValueList() checks out of the asserts for memory safety.
+ https://bugs.webkit.org/show_bug.cgi?id=46194
+
+ Test: editing/execCommand/apply-style-text-decoration-crash.html
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::StyleChange::extractTextStyles):
+ (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown):
+
+2010-09-21 Vangelis Kokkevis <vangelis@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Fixing double translation of composited layers when scrolling.
+ The scrolling transform is now applied by a separate layer maintained in
+ the RenderLayerCompositor.
+ https://bugs.webkit.org/show_bug.cgi?id=46193
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::drawLayers):
+
+2010-09-21 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46196, add marginStart/Before/End/After accessors to RenderBoxModelObject.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::marginBefore):
+ (WebCore::RenderBox::marginAfter):
+ (WebCore::RenderBox::marginStart):
+ (WebCore::RenderBox::marginEnd):
+ * rendering/RenderBox.h:
+ * rendering/RenderBoxModelObject.h:
+ * rendering/RenderInline.cpp:
+ (WebCore::computeMargin):
+ (WebCore::RenderInline::marginLeft):
+ (WebCore::RenderInline::marginRight):
+ (WebCore::RenderInline::marginTop):
+ (WebCore::RenderInline::marginBottom):
+ (WebCore::RenderInline::marginStart):
+ (WebCore::RenderInline::marginEnd):
+ * rendering/RenderInline.h:
+ (WebCore::RenderInline::marginBefore):
+ (WebCore::RenderInline::marginAfter):
+
+2010-09-21 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46190, add borderStart/Before/End/After accessors to RenderBoxModelObject.
+
+ * rendering/RenderBoxModelObject.h:
+ (WebCore::RenderBoxModelObject::borderBefore):
+ (WebCore::RenderBoxModelObject::borderAfter):
+ (WebCore::RenderBoxModelObject::borderStart):
+ (WebCore::RenderBoxModelObject::borderEnd):
+ (WebCore::RenderBoxModelObject::borderAndPaddingLogicalHeight):
+ (WebCore::RenderBoxModelObject::borderAndPaddingLogicalWidth):
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::borderStart):
+ (WebCore::RenderTableCell::borderEnd):
+ (WebCore::RenderTableCell::borderBefore):
+ (WebCore::RenderTableCell::borderAfter):
+ * rendering/RenderTableCell.h:
+
+2010-09-21 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] 'make dist' should be fixed in preparation for the next release
+ https://bugs.webkit.org/show_bug.cgi?id=46129
+
+ * GNUmakefile.am: Update the sources list to include missing headers.
+
+2010-09-21 David Hyatt <hyatt@apple.com>
+
+ Reviewed by John Sullivan.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46188, make the cross-platform setPrinting method match the Mac version of the method.
+ Specifically don't pass the page size down to subframes of the one you're printing.
+
+ * page/Frame.cpp:
+ (WebCore::Frame::setPrinting):
+
+2010-09-21 Patrick Gansterer <paroga@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ Use WTF::Vector for storing formData in ResourceHandleWin.
+ https://bugs.webkit.org/show_bug.cgi?id=46180
+
+ * platform/network/ResourceHandleInternal.h:
+ (WebCore::ResourceHandleInternal::ResourceHandleInternal):
+ * platform/network/win/ResourceHandleWin.cpp:
+ (WebCore::ResourceHandle::onHandleCreated):
+ (WebCore::ResourceHandle::onRequestComplete):
+
+2010-09-21 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Check if the reply has been deleted before finishing a network request
+ https://bugs.webkit.org/show_bug.cgi?id=46174
+
+ A crash can happen with the following sequence:
+ 1. QNetworkReplyHandler::abort() emits reply->deleteLater()
+ 2. QNAM emits QNetworkReply::finished() -> calls QNetworkReplyHandler::finish()
+ 3. event loop would call reply->deleteLater()
+ However a crash occurs since m_reply == 0 on step 2.
+
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::QNetworkReplyHandler::finish):
+
+2010-09-21 Jochen Eisinger <jochen@chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ Use @ to concatenate the database name and the database identifier when building
+ the filename to use for indexed databases. That character is valid for filenames
+ but cannot occur in a database identifier derived from a security origin.
+ https://bugs.webkit.org/show_bug.cgi?id=46178
+
+ * storage/IDBFactoryBackendImpl.cpp:
+ (WebCore::IDBFactoryBackendImpl::databaseFileName):
+
+2010-09-21 Steve Block <steveblock@google.com>
+
+ Reviewed by Jeremy Orlow.
+
+ DeviceOrientationClient and DeviceMotionClient should have controllerDestroyed() methods
+ https://bugs.webkit.org/show_bug.cgi?id=45891
+
+ Tested by existing DeviceOrientation tests.
+
+ * dom/DeviceMotionClient.h:
+ * dom/DeviceMotionController.cpp:
+ (WebCore::DeviceMotionController::~DeviceMotionController):
+ * dom/DeviceMotionController.h:
+ * dom/DeviceOrientationClient.h:
+ * dom/DeviceOrientationController.cpp:
+ (WebCore::DeviceOrientationController::~DeviceOrientationController):
+ * dom/DeviceOrientationController.h:
+ * loader/EmptyClients.h:
+ (WebCore::EmptyDeviceMotionClient::deviceOrientationControllerDestroyed):
+ (WebCore::EmptyDeviceOrientationClient::deviceOrientationControllerDestroyed):
+ * platform/mock/DeviceOrientationClientMock.h:
+ (WebCore::DeviceOrientationClientMock::deviceOrientationControllerDestroyed):
+
+2010-09-21 Jochen Eisinger <jochen@chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ Factor out the file name used for a given indexed database to a static method.
+ https://bugs.webkit.org/show_bug.cgi?id=46090
+
+ * storage/IDBFactoryBackendImpl.cpp:
+ (WebCore::openSQLiteDatabase):
+ (WebCore::IDBFactoryBackendImpl::databaseFileName):
+ * storage/IDBFactoryBackendImpl.h:
+
+2010-09-21 Dirk Schulze <krit@webkit.org>
+
+ SVG Filter cleanup
+ https://bugs.webkit.org/show_bug.cgi?id=45612
+
+ Unreviewed change of epsilon back to a more tolerant value in RenderTreeAsText and made it a static const.
+ This should turn the bots green again.
+
+ * rendering/RenderTreeAsText.cpp:
+ (WebCore::hasFractions):
+
+2010-09-21 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46125, convert table cell intrinsic padding from top/bottom-based
+ to before/after-based. A vertical text table can have intrinsic padding built into the left/right
+ direction (and this allows the base class logical padding methods on RenderBoxModelObject to be safe to use).
+
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::RenderTableCell):
+ (WebCore::RenderTableCell::paddingTop):
+ (WebCore::RenderTableCell::paddingBottom):
+ (WebCore::RenderTableCell::paddingLeft):
+ (WebCore::RenderTableCell::paddingRight):
+ (WebCore::RenderTableCell::paddingBefore):
+ (WebCore::RenderTableCell::paddingAfter):
+ * rendering/RenderTableCell.h:
+ (WebCore::RenderTableCell::setIntrinsicPaddingBefore):
+ (WebCore::RenderTableCell::setIntrinsicPaddingAfter):
+ (WebCore::RenderTableCell::setIntrinsicPadding):
+ (WebCore::RenderTableCell::intrinsicPaddingBefore):
+ (WebCore::RenderTableCell::intrinsicPaddingAfter):
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::calcRowHeight):
+ (WebCore::RenderTableSection::layoutRows):
+ * rendering/RenderTreeAsText.cpp:
+ (WebCore::RenderTreeAsText::writeRenderObject):
+ (WebCore::writeTextRun):
+
+2010-09-21 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVG Filter cleanup
+ https://bugs.webkit.org/show_bug.cgi?id=45612
+
+ Second cleanup patch. Modified files to follow webkit style. Removed dependencies
+ to SVG of most of the filter effects and prepared them to move from WebCore/svg/graphics/filters
+ to WebCore/platform/graphics/filters/.
+ Renamed calculateDrawingIntRect and calculateDrawingRect to requestedRegionOfInputImageData and
+ drawingRegionOfInputImage to clarify the functionality and make both functions distinguishable.
+
+ * platform/graphics/filters/FEBlend.cpp:
+ (WebCore::FEBlend::apply):
+ * platform/graphics/filters/FEBlend.h:
+ * platform/graphics/filters/FEColorMatrix.cpp:
+ (WebCore::FEColorMatrix::apply):
+ * platform/graphics/filters/FEColorMatrix.h:
+ * platform/graphics/filters/FEComponentTransfer.cpp:
+ (WebCore::FEComponentTransfer::apply):
+ * platform/graphics/filters/FEComponentTransfer.h:
+ (WebCore::ComponentTransferFunction::ComponentTransferFunction):
+ * platform/graphics/filters/FEComposite.cpp:
+ (WebCore::FEComposite::apply):
+ * platform/graphics/filters/FEComposite.h:
+ * platform/graphics/filters/FEGaussianBlur.cpp:
+ (WebCore::FEGaussianBlur::apply):
+ * platform/graphics/filters/FEGaussianBlur.h:
+ * platform/graphics/filters/Filter.h:
+ * platform/graphics/filters/FilterEffect.cpp:
+ (WebCore::FilterEffect::requestedRegionOfInputImageData):
+ (WebCore::FilterEffect::drawingRegionOfInputImage):
+ (WebCore::FilterEffect::effectContext):
+ * platform/graphics/filters/FilterEffect.h:
+ * platform/graphics/filters/ImageBufferFilter.cpp:
+ * platform/graphics/filters/ImageBufferFilter.h:
+ * platform/graphics/filters/SourceAlpha.cpp:
+ (WebCore::SourceAlpha::apply):
+ * platform/graphics/filters/SourceAlpha.h:
+ (WebCore::SourceAlpha::isSourceInput):
+ (WebCore::SourceAlpha::SourceAlpha):
+ * platform/graphics/filters/SourceGraphic.cpp:
+ (WebCore::SourceGraphic::apply):
+ * platform/graphics/filters/SourceGraphic.h:
+ (WebCore::SourceGraphic::isSourceInput):
+ (WebCore::SourceGraphic::SourceGraphic):
+ * rendering/RenderTreeAsText.cpp:
+ (WebCore::hasFractions):
+ (WebCore::operator<<):
+ * rendering/RenderTreeAsText.h:
+ (WebCore::operator<<):
+ * rendering/SVGRenderTreeAsText.cpp:
+ * rendering/SVGRenderTreeAsText.h:
+ * svg/graphics/filters/SVGFEConvolveMatrix.cpp:
+ (WebCore::FEConvolveMatrix::apply):
+ * svg/graphics/filters/SVGFEConvolveMatrix.h:
+ * svg/graphics/filters/SVGFEDiffuseLighting.cpp:
+ * svg/graphics/filters/SVGFEDiffuseLighting.h:
+ * svg/graphics/filters/SVGFEDisplacementMap.cpp:
+ (WebCore::FEDisplacementMap::apply):
+ * svg/graphics/filters/SVGFEDisplacementMap.h:
+ * svg/graphics/filters/SVGFEFlood.cpp:
+ (WebCore::FEFlood::apply):
+ (WebCore::FEFlood::externalRepresentation):
+ * svg/graphics/filters/SVGFEFlood.h:
+ * svg/graphics/filters/SVGFEImage.cpp:
+ (WebCore::FEImage::apply):
+ * svg/graphics/filters/SVGFEImage.h:
+ * svg/graphics/filters/SVGFELighting.cpp:
+ (WebCore::FELighting::apply):
+ * svg/graphics/filters/SVGFELighting.h:
+ * svg/graphics/filters/SVGFEMerge.cpp:
+ (WebCore::FEMerge::apply):
+ * svg/graphics/filters/SVGFEMerge.h:
+ * svg/graphics/filters/SVGFEMorphology.cpp:
+ (WebCore::FEMorphology::apply):
+ * svg/graphics/filters/SVGFEMorphology.h:
+ * svg/graphics/filters/SVGFEOffset.cpp:
+ (WebCore::FEOffset::apply):
+ * svg/graphics/filters/SVGFEOffset.h:
+ * svg/graphics/filters/SVGFESpecularLighting.cpp:
+ * svg/graphics/filters/SVGFESpecularLighting.h:
+ * svg/graphics/filters/SVGFETile.cpp:
+ (WebCore::FETile::apply):
+ * svg/graphics/filters/SVGFETile.h:
+ * svg/graphics/filters/SVGFETurbulence.cpp:
+ (WebCore::FETurbulence::apply):
+ * svg/graphics/filters/SVGFETurbulence.h:
+
+2010-09-20 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Eric Carlson.
+
+ [GTK] enhanced context menu for media elements
+ https://bugs.webkit.org/show_bug.cgi?id=45021
+
+ New items in the media Element context menu:
+ - play/pause
+ - mute/unmute
+ - controls display control
+ - switch to fullscreen (for video only)
+ - loop playback control
+ - copy media url to clipboard
+ - open in new window
+
+ Test: media/context-menu-actions.html
+
+ * page/ContextMenuController.cpp:
+ (WebCore::ContextMenuController::contextMenuItemSelected):
+ * platform/ContextMenu.cpp:
+ (WebCore::ContextMenu::populate):
+ (WebCore::ContextMenu::checkOrEnableIfNeeded):
+ * platform/ContextMenuItem.h:
+ * platform/LocalizationStrategy.h:
+ * platform/LocalizedStrings.cpp:
+ (WebCore::contextMenuItemTagOpenVideoInNewWindow):
+ (WebCore::contextMenuItemTagOpenAudioInNewWindow):
+ (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
+ (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
+ (WebCore::contextMenuItemTagToggleMediaControls):
+ (WebCore::contextMenuItemTagToggleMediaLoop):
+ (WebCore::contextMenuItemTagEnterVideoFullscreen):
+ (WebCore::contextMenuItemTagMediaPlay):
+ (WebCore::contextMenuItemTagMediaPause):
+ (WebCore::contextMenuItemTagMediaMute):
+ * platform/LocalizedStrings.h:
+ * platform/android/LocalizedStringsAndroid.cpp:
+ (WebCore::contextMenuItemTagOpenVideoInNewWindow):
+ (WebCore::contextMenuItemTagOpenAudioInNewWindow):
+ (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
+ (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
+ (WebCore::contextMenuItemTagToggleMediaControls):
+ (WebCore::contextMenuItemTagToggleMediaLoop):
+ (WebCore::contextMenuItemTagEnterVideoFullscreen):
+ (WebCore::contextMenuItemTagMediaPlay):
+ (WebCore::contextMenuItemTagMediaPause):
+ (WebCore::contextMenuItemTagMediaMute):
+ * platform/brew/LocalizedStringsBrew.cpp:
+ (WebCore::contextMenuItemTagOpenVideoInNewWindow):
+ (WebCore::contextMenuItemTagOpenAudioInNewWindow):
+ (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
+ (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
+ (WebCore::contextMenuItemTagToggleMediaControls):
+ (WebCore::contextMenuItemTagToggleMediaLoop):
+ (WebCore::contextMenuItemTagEnterVideoFullscreen):
+ (WebCore::contextMenuItemTagMediaPlay):
+ (WebCore::contextMenuItemTagMediaPause):
+ (WebCore::contextMenuItemTagMediaMute):
+ * platform/efl/LocalizedStringsEfl.cpp:
+ (WebCore::contextMenuItemTagOpenVideoInNewWindow):
+ (WebCore::contextMenuItemTagOpenAudioInNewWindow):
+ (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
+ (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
+ (WebCore::contextMenuItemTagToggleMediaControls):
+ (WebCore::contextMenuItemTagToggleMediaLoop):
+ (WebCore::contextMenuItemTagEnterVideoFullscreen):
+ (WebCore::contextMenuItemTagMediaPlay):
+ (WebCore::contextMenuItemTagMediaPause):
+ (WebCore::contextMenuItemTagMediaMute):
+ * platform/gtk/ContextMenuItemGtk.cpp:
+ (WebCore::gtkStockIDFromContextMenuAction):
+ * platform/gtk/LocalizedStringsGtk.cpp:
+ (WebCore::contextMenuItemTagOpenVideoInNewWindow):
+ (WebCore::contextMenuItemTagOpenAudioInNewWindow):
+ (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
+ (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
+ (WebCore::contextMenuItemTagToggleMediaControls):
+ (WebCore::contextMenuItemTagToggleMediaLoop):
+ (WebCore::contextMenuItemTagEnterVideoFullscreen):
+ (WebCore::contextMenuItemTagMediaPlay):
+ (WebCore::contextMenuItemTagMediaPause):
+ (WebCore::contextMenuItemTagMediaMute):
+ * platform/haiku/LocalizedStringsHaiku.cpp:
+ (WebCore::contextMenuItemTagOpenVideoInNewWindow):
+ (WebCore::contextMenuItemTagOpenAudioInNewWindow):
+ (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
+ (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
+ (WebCore::contextMenuItemTagToggleMediaControls):
+ (WebCore::contextMenuItemTagToggleMediaLoop):
+ (WebCore::contextMenuItemTagEnterVideoFullscreen):
+ (WebCore::contextMenuItemTagMediaPlay):
+ (WebCore::contextMenuItemTagMediaPause):
+ (WebCore::contextMenuItemTagMediaMute):
+ * platform/wx/LocalizedStringsWx.cpp:
+ (WebCore::contextMenuItemTagOpenVideoInNewWindow):
+ (WebCore::contextMenuItemTagOpenAudioInNewWindow):
+ (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
+ (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
+ (WebCore::contextMenuItemTagToggleMediaControls):
+ (WebCore::contextMenuItemTagToggleMediaLoop):
+ (WebCore::contextMenuItemTagEnterVideoFullscreen):
+ (WebCore::contextMenuItemTagMediaPlay):
+ (WebCore::contextMenuItemTagMediaPause):
+ (WebCore::contextMenuItemTagMediaMute):
+ * rendering/HitTestResult.cpp:
+ (WebCore::HitTestResult::absoluteMediaURL):
+ (WebCore::HitTestResult::mediaSupportsFullscreen):
+ (WebCore::HitTestResult::mediaElement):
+ (WebCore::HitTestResult::toggleMediaControlsDisplay):
+ (WebCore::HitTestResult::toggleMediaLoopPlayback):
+ (WebCore::HitTestResult::enterFullscreenForVideo):
+ (WebCore::HitTestResult::mediaControlsEnabled):
+ (WebCore::HitTestResult::mediaLoopEnabled):
+ (WebCore::HitTestResult::mediaPlaying):
+ (WebCore::HitTestResult::toggleMediaPlayState):
+ (WebCore::HitTestResult::mediaHasAudio):
+ (WebCore::HitTestResult::mediaMuted):
+ (WebCore::HitTestResult::toggleMediaMuteState):
+ * rendering/HitTestResult.h:
+
+2010-09-20 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by Daniel Bates.
+
+ [BREWMP] Handle tab key
+ https://bugs.webkit.org/show_bug.cgi?id=46104
+
+ In Brew MP, AVK_FUNCTION is the key code for tab.
+ Process AVK_FUNCTION as tab in PlatformKeyboardEvent.
+
+ * platform/brew/PlatformKeyboardEventBrew.cpp:
+ (WebCore::keyIdentifierForBrewKeyCode):
+ (WebCore::windowsKeyCodeForKeyEvent):
+
+2010-09-20 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r67918.
+ http://trac.webkit.org/changeset/67918
+ https://bugs.webkit.org/show_bug.cgi?id=46162
+
+ Broke chromium win compile (Requested by jamesr on #webkit).
+
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+ * platform/graphics/chromium/GlyphPageTreeNodeLinux.cpp: Renamed from WebCore/platform/graphics/skia/GlyphPageTreeNodeSkia.cpp.
+ (WebCore::GlyphPage::fill):
+
+2010-09-20 Daniel Bates <dbates@rim.com>
+
+ Reviewed by Dan Bernstein.
+
+ Cleanup: Extract common border radii expansion code in
+ RenderBoxModelObject::paintBoxShadow() into function
+ https://bugs.webkit.org/show_bug.cgi?id=45934
+
+ Extracted code for expanding and clamping the border radii
+ into common function to remove duplicate code.
+
+ No functionality was changed. So, no new tests.
+
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::uniformlyExpandBorderRadii): Added.
+ (WebCore::RenderBoxModelObject::paintBoxShadow): Moved common code to uniformlyExpandBorderRadii().
+
+2010-09-20 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by James Robinson.
+
+ Make sure skia is not Chromium specific
+ https://bugs.webkit.org/show_bug.cgi?id=39672
+
+ GGlyphPageTreeNodeLinux does not depend on Linux or Chromium.
+ Move GGlyphPageTreeNodeLinux to platform/graphics/skia and rename it to
+ GlyphPageTreeNodeSkia.cpp so that other ports can use it.
+
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+ * platform/graphics/chromium/GlyphPageTreeNodeLinux.cpp: Removed.
+ * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp: Added.
+
+2010-09-20 Kinuko Yasuda <kinuko@chromium.org>
+
+ Reviewed by David Levin.
+
+ Add NoStaticTables attributes to IDLs of FileSystem API for Worker support
+ https://bugs.webkit.org/show_bug.cgi?id=46021
+
+ Added NoStaticTables attributes to IDLs except for ones for Callbacks.
+ (As NoStaticTables only affects non-callback interfaces.)
+
+ * fileapi/DOMFileSystem.idl:
+ * fileapi/DirectoryEntry.idl:
+ * fileapi/DirectoryReader.idl:
+ * fileapi/Entry.idl:
+ * fileapi/EntryArray.idl:
+ * fileapi/FileEntry.idl:
+ * fileapi/Flags.idl:
+ * fileapi/Metadata.idl:
+
+2010-09-20 Nico Weber <thakis@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Fix "operands of ? are integers of different signs" clang warnings
+ https://bugs.webkit.org/show_bug.cgi?id=46157
+
+ * platform/graphics/mac/ComplexTextController.cpp:
+ (WebCore::ComplexTextController::advance):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::calcHeight):
+
+2010-09-20 Vangelis Kokkevis <vangelis@chromium.org>
+
+ Unreviewed, rolling out r67906.
+ http://trac.webkit.org/changeset/67906
+ https://bugs.webkit.org/show_bug.cgi?id=46139
+
+ Change causes chromium to crash when switching pages
+
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/LayerChromium.h:
+
+2010-09-19 Antonio Gomes <agomes@rim.com>
+
+ Reviewed by Ojan Vafai.
+
+ SelectionController::modify should ask EditingBehavior for platform specific behavior
+ https://bugs.webkit.org/show_bug.cgi?id=41975
+
+ As a follow up of the refactoring work in bug 39854, patch makes SelectionController::modify()
+ stop accessing EditingBehaviorType values directly, and replaces its use by the EditingBehavior
+ class.
+
+ Since the "Settings*" parameter of the private SelectionController::modify() method becomes unneeded
+ with this change (it was used to query the editingBehaviorType), patch merges two modify() methods.
+
+ No behavior change, so no new tests.
+
+ * editing/EditingBehavior.h:
+ (WebCore::EditingBehavior::shouldAlwaysGrowSelectionWhenExtendingToBoundary):
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::modify):
+ * editing/SelectionController.h:
+
+2010-09-20 Vangelis Kokkevis <vangelis@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [chromium] Making destructors of LayerChromium and ContentLayerChromium virtual
+ so that the derived class' destructor code gets called.
+ https://bugs.webkit.org/show_bug.cgi?id=46139
+
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/LayerChromium.h:
+
+2010-09-20 Darin Adler <darin@apple.com>
+
+ Reviewed by James Robinson.
+
+ Deprecate the inputType function on HTMLInputElement
+ https://bugs.webkit.org/show_bug.cgi?id=46023
+
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::HTMLInputElement): Use m_deprecatedTypeNumber.
+ (WebCore::HTMLInputElement::isValidValue): Use deprecatedInputType.
+ (WebCore::HTMLInputElement::typeMismatch): Ditto.
+ (WebCore::HTMLInputElement::valueMissing): Ditto.
+ (WebCore::HTMLInputElement::rangeUnderflow): Ditto.
+ (WebCore::HTMLInputElement::rangeOverflow): Ditto.
+ (WebCore::HTMLInputElement::minimum): Ditto.
+ (WebCore::HTMLInputElement::maximum): Ditto.
+ (WebCore::HTMLInputElement::stepBase): Ditto.
+ (WebCore::HTMLInputElement::stepMismatch): Ditto.
+ (WebCore::HTMLInputElement::getStepParameters): Ditto.
+ (WebCore::HTMLInputElement::getAllowedValueStep): Ditto.
+ (WebCore::HTMLInputElement::isKeyboardFocusable): Ditto.
+ (WebCore::HTMLInputElement::shouldUseInputMethod): Ditto.
+ (WebCore::HTMLInputElement::handleBlurEvent): Ditto.
+ (WebCore::HTMLInputElement::setType): Added a comment.
+ (WebCore::HTMLInputElement::updateType): Replaced the setInputType function
+ with this. The type is always the type attribute value, so there is no value
+ in passing the type string in, and this is an internal implementation detail,
+ not a public function.
+ (WebCore::createFormControlTypes): Use deprecatedNumberOfTypes.
+ (WebCore::HTMLInputElement::formControlType): Use deprecatedInputType.
+ (WebCore::HTMLInputElement::saveFormControlState): Ditto.
+ (WebCore::HTMLInputElement::restoreFormControlState): Ditto.
+ (WebCore::HTMLInputElement::accessKeyAction): Ditto.
+ (WebCore::HTMLInputElement::mapToEntry): Ditto.
+ (WebCore::HTMLInputElement::parseMappedAttribute): Ditto.
+ (WebCore::HTMLInputElement::rendererIsNeeded): Ditto.
+ (WebCore::HTMLInputElement::createRenderer): Ditto.
+ (WebCore::HTMLInputElement::attach): Ditto.
+ (WebCore::HTMLInputElement::isSuccessfulSubmitButton): Ditto.
+ (WebCore::HTMLInputElement::appendFormData): Ditto.
+ (WebCore::HTMLInputElement::isTextField): Ditto.
+ (WebCore::HTMLInputElement::isTextType): Ditto.
+ (WebCore::HTMLInputElement::setChecked): Ditto.
+ (WebCore::HTMLInputElement::value): Ditto.
+ (WebCore::HTMLInputElement::valueWithDefault): Ditto.
+ (WebCore::HTMLInputElement::setSuggestedValue): Ditto.
+ (WebCore::HTMLInputElement::setValue): Ditto.
+ (WebCore::HTMLInputElement::parseToDouble): Ditto.
+ (WebCore::HTMLInputElement::valueAsDate): Ditto.
+ (WebCore::HTMLInputElement::setValueAsDate): Ditto.
+ (WebCore::HTMLInputElement::valueAsNumber): Ditto.
+ (WebCore::HTMLInputElement::setValueAsNumber): Ditto.
+ (WebCore::HTMLInputElement::serializeForDateTimeTypes): Ditto.
+ (WebCore::HTMLInputElement::serialize): Ditto.
+ (WebCore::HTMLInputElement::setValueFromRenderer): Ditto.
+ (WebCore::HTMLInputElement::storesValueSeparateFromAttribute): Ditto.
+ (WebCore::HTMLInputElement::preDispatchEventHandler): Ditto.
+ (WebCore::HTMLInputElement::postDispatchEventHandler): Ditto.
+ (WebCore::HTMLInputElement::defaultEventHandler): Ditto.
+ (WebCore::HTMLInputElement::handleBeforeTextInsertedEvent): Ditto.
+ (WebCore::HTMLInputElement::files): Ditto.
+ (WebCore::HTMLInputElement::isAcceptableValue): Ditto.
+ (WebCore::HTMLInputElement::sanitizeValue): Ditto.
+ (WebCore::HTMLInputElement::hasUnacceptableValue): Ditto.
+ (WebCore::HTMLInputElement::needsActivationCallback): Ditto.
+ (WebCore::HTMLInputElement::isRequiredFormControl): Ditto.
+ (WebCore::HTMLInputElement::recalcWillValidate): Ditto.
+ (WebCore::HTMLInputElement::parseToDateComponents): Ditto.
+ (WebCore::HTMLInputElement::dataList): Ditto.
+ (WebCore::HTMLInputElement::isSpeechEnabled): Ditto.
+
+ * html/HTMLInputElement.h: Renamed InputType to DeprecatedInputType since it
+ should not be used outside this class. Renamed numberOfTypes to
+ dprecatedNumberOfTypes for the same reason. Changed all code to use
+ deprecatedInputType function instead of m_type. Renamed inputType function
+ to deprecatedInputType. Replaced public setInputType function with private
+ updateType function. Renamed m_type data member to m_deprecatedTypeNumber.
+
+ * rendering/MediaControlElements.cpp:
+ (WebCore::MediaControlInputElement::MediaControlInputElement):
+ * rendering/RenderFileUploadControl.cpp:
+ (WebCore::RenderFileUploadControl::updateFromElement):
+ Use setType instead of setInputType.
+
+2010-09-20 Mihai Parparita <mihaip@chromium.org>
+
+ Unreviewed; an attempt to fix Windows build.
+
+ * WebCore.vcproj/WebCore.vcproj:
+
+2010-09-20 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ When PDF image is directly composited, it does not display
+ https://bugs.webkit.org/show_bug.cgi?id=46144
+
+ In the "direct image compositing" code path, we set the image directly
+ as the contents of the GraphicsLayer. However, this only works with
+ bitmap images, so we have to check that the image is a bitmap image.
+
+ Test: compositing/images/direct-pdf-image.html
+
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::isDirectlyCompositedImage):
+
+2010-09-20 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Crash when div with content set to image gets composited (Vimeo).
+ https://bugs.webkit.org/show_bug.cgi?id=46140
+
+ When CSS specifies that the content of an element is an image, we make
+ a RenderImage, and setStyle() before setting the image resource. In this
+ case the compositing code can attempt to access the cached image, which
+ would crash with a null deref.
+
+ Fix by null-checking m_imageResource.
+
+ Test: compositing/images/content-image.html
+
+ * rendering/RenderImage.h:
+ (WebCore::RenderImage::cachedImage):
+
+2010-09-20 Mihai Parparita <mihaip@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Hashchange event is no longer a simple event, needs to be its own interface
+ https://bugs.webkit.org/show_bug.cgi?id=36335
+
+ Add HashChangeEvent.idl and supporting files/changes.
+
+ Test: fast/loader/hashchange-event-properties.html
+
+ The original version of this patch was written by
+ Steven Lai <s3lance@hotmail.com>.
+
+ * CMakeLists.txt:
+ * DerivedSources.cpp:
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pri:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSEventCustom.cpp:
+ (WebCore::toJS):
+ * bindings/v8/custom/V8EventCustom.cpp:
+ (WebCore::toV8):
+ * dom/Document.cpp:
+ (WebCore::Document::enqueueHashchangeEvent):
+ * dom/Event.cpp:
+ (WebCore::Event::isHashChangeEvent):
+ * dom/Event.h:
+ * dom/HashChangeEvent.h: Added.
+ (WebCore::HashChangeEvent::isHashChangeEvent):
+ (WebCore::HashChangeEvent::create):
+ (WebCore::HashChangeEvent::initHashChangeEvent):
+ (WebCore::HashChangeEvent::oldURL):
+ (WebCore::HashChangeEvent::newURL):
+ (WebCore::HashChangeEvent::HashChangeEvent):
+ * dom/HashChangeEvent.idl: Added.
+ * page/DOMWindow.idl:
+
+2010-09-20 Andy Estes <aestes@apple.com>
+
+ Reviewed by Adam Barth.
+
+ REGRESSION (HTML5 Parser): Pages broken due to <tag<tag> parsing changes
+ https://bugs.webkit.org/show_bug.cgi?id=40961
+
+ Add an optional quirk to the HTML5 tokenizer that reverts it to WebKit's
+ legacy behavior when the start of a new token is encountered before the
+ current token is finished parsing. The legacy behavior is to emit the
+ current token as if it were properly closed and being parsing the new
+ token.
+
+ Test: fast/parser/pre-html5-parser-quirks.html
+
+ * html/parser/HTMLDocumentParser.cpp:
+ (WebCore::HTMLDocumentParser::HTMLDocumentParser): Instantiate
+ m_tokenizer with the value of Settings::usePreHTML5ParserQuirks().
+ (WebCore::usePreHTMLParserQuirks): Add a helper function to return the
+ value of Settings::usePreHTML5ParserQuirks() if Settings is non-NULL.
+ * html/parser/HTMLPreloadScanner.cpp:
+ (WebCore::HTMLPreloadScanner::HTMLPreloadScanner): Instantiate
+ m_tokenizer with the value of Settings::usePreHTML5ParserQuirks().
+ * html/parser/HTMLTokenizer.cpp:
+ (WebCore::HTMLTokenizer::HTMLTokenizer):
+ (WebCore::HTMLTokenizer::nextToken): If the quirk is enabled and an
+ unexpected '<' is encountered in certain states, emit the current token
+ and reprocess the '<' as the start of a new token.
+ * html/parser/HTMLTokenizer.h:
+ (WebCore::HTMLTokenizer::create):
+ * html/parser/HTMLViewSourceParser.cpp:
+ (WebCore::HTMLViewSourceParser::HTMLViewSourceParser): Instantiate
+ m_tokenizer with the value of Settings::usePreHTML5ParserQuirks().
+ * page/Settings.cpp:
+ (WebCore::Settings::Settings):
+ * page/Settings.h:
+ (WebCore::Settings::setUsePreHTML5ParserQuirks):
+ (WebCore::Settings::usePreHTML5ParserQuirks):
+
+2010-09-20 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46132, add an isVerticalBlockFlow() method to RenderStyle and
+ patch callers so that they don't have to check both top-to-bottom and bottom-to-top block flow.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::availableLogicalWidth):
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::logicalWidth):
+ (WebCore::RenderStyle::logicalHeight):
+ (WebCore::RenderStyle::logicalMinWidth):
+ (WebCore::RenderStyle::logicalMaxWidth):
+ (WebCore::RenderStyle::logicalMinHeight):
+ (WebCore::RenderStyle::logicalMaxHeight):
+ (WebCore::RenderStyle::borderStartWidth):
+ (WebCore::RenderStyle::borderEndWidth):
+ (WebCore::RenderStyle::marginStart):
+ (WebCore::RenderStyle::marginEnd):
+ (WebCore::RenderStyle::paddingStart):
+ (WebCore::RenderStyle::paddingEnd):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::isVerticalBlockFlow):
+
+2010-09-20 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46124, add support for logical padding accessors to
+ RenderBoxModelObject.
+
+ Added fast/blockflow/percentage-padding.html even though it fails, so that when more of layout is patched
+ we can see it start passing.
+
+ * rendering/RenderBoxModelObject.cpp:
+ (WebCore::RenderBoxModelObject::paddingTop):
+ (WebCore::RenderBoxModelObject::paddingBottom):
+ (WebCore::RenderBoxModelObject::paddingLeft):
+ (WebCore::RenderBoxModelObject::paddingRight):
+ (WebCore::RenderBoxModelObject::paddingBefore):
+ (WebCore::RenderBoxModelObject::paddingAfter):
+ (WebCore::RenderBoxModelObject::paddingStart):
+ (WebCore::RenderBoxModelObject::paddingEnd):
+ * rendering/RenderBoxModelObject.h:
+
+2010-09-20 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46126, add availableLogicalWidth() to RenderBox.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::availableWidth):
+ (WebCore::RenderBlock::availableLogicalWidth):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::availableLogicalWidth):
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::availableWidth):
+
+2010-09-20 Kenneth Russell <kbr@google.com>
+
+ Reviewed by James Robinson.
+
+ [chromium] Change compositor to use GraphicsContext3D rather than GLES2Context
+ https://bugs.webkit.org/show_bug.cgi?id=45912
+
+ Switched Chromium's compositor to use GraphicsContext3D to issue
+ its OpenGL rendering calls rather than the Chromium-specific
+ GLES2Context and command buffer OpenGL implementation.
+
+ The in-process software rendering path for GraphicsContext3D does
+ not yet work with the compositor, at least not on Mac OS X. This
+ will be worked on in subsequent bugs.
+
+ Tested manually with 3D CSS, WebGL and video content on Mac OS X
+ and Linux. No new tests.
+
+ * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
+ (WebCore::Canvas2DLayerChromium::~Canvas2DLayerChromium):
+ (WebCore::Canvas2DLayerChromium::updateContents):
+ * platform/graphics/chromium/CanvasLayerChromium.cpp:
+ (WebCore::CanvasLayerChromium::SharedValues::SharedValues):
+ (WebCore::CanvasLayerChromium::SharedValues::~SharedValues):
+ (WebCore::CanvasLayerChromium::draw):
+ * platform/graphics/chromium/CanvasLayerChromium.h:
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::SharedValues::SharedValues):
+ (WebCore::ContentLayerChromium::SharedValues::~SharedValues):
+ (WebCore::ContentLayerChromium::~ContentLayerChromium):
+ (WebCore::ContentLayerChromium::updateTextureRect):
+ (WebCore::ContentLayerChromium::draw):
+ * platform/graphics/chromium/ContentLayerChromium.h:
+ * platform/graphics/chromium/DrawingBufferChromium.cpp:
+ (WebCore::DrawingBuffer::publishToPlatformLayer):
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::loadShader):
+ (WebCore::LayerChromium::SharedValues::SharedValues):
+ (WebCore::LayerChromium::SharedValues::~SharedValues):
+ (WebCore::LayerChromium::createShaderProgram):
+ (WebCore::LayerChromium::layerRendererContext):
+ (WebCore::LayerChromium::drawTexturedQuad):
+ (WebCore::LayerChromium::drawDebugBorder):
+ (WebCore::LayerChromium::drawAsMask):
+ (WebCore::LayerChromium::prepareForDraw):
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore::LayerChromium::SharedValues::context):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::create):
+ (WebCore::LayerRendererChromium::LayerRendererChromium):
+ (WebCore::LayerRendererChromium::context):
+ (WebCore::LayerRendererChromium::debugGLCall):
+ (WebCore::LayerRendererChromium::useShader):
+ (WebCore::LayerRendererChromium::prepareToDrawLayers):
+ (WebCore::LayerRendererChromium::updateRootLayerTextureRect):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::finish):
+ (WebCore::LayerRendererChromium::present):
+ (WebCore::LayerRendererChromium::getFramebufferPixels):
+ (WebCore::LayerRendererChromium::createLayerTexture):
+ (WebCore::LayerRendererChromium::drawLayerIntoStencilBuffer):
+ (WebCore::LayerRendererChromium::drawLayersRecursive):
+ (WebCore::LayerRendererChromium::drawLayer):
+ (WebCore::LayerRendererChromium::scissorToRect):
+ (WebCore::LayerRendererChromium::makeContextCurrent):
+ (WebCore::LayerRendererChromium::resizeOnscreenContent):
+ (WebCore::LayerRendererChromium::initializeSharedObjects):
+ (WebCore::LayerRendererChromium::cleanupSharedObjects):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+ (WebCore::VideoLayerChromium::createTextureRect):
+ (WebCore::VideoLayerChromium::updateTextureRect):
+ * platform/graphics/chromium/WebGLLayerChromium.cpp:
+ (WebCore::WebGLLayerChromium::updateContents):
+ * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
+ (WebCore::SharedGraphicsContext3D::flush):
+ (WebCore::SharedGraphicsContext3D::supportsCopyTextureToParentTextureCHROMIUM):
+ (WebCore::SharedGraphicsContext3D::copyTextureToParentTextureCHROMIUM):
+ * platform/graphics/gpu/SharedGraphicsContext3D.h:
+
+2010-09-20 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46119, add logical accessors to RenderStyle. Not used by any RenderObjects yet, so no tests
+ until then.
+
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::logicalWidth):
+ (WebCore::RenderStyle::logicalHeight):
+ (WebCore::RenderStyle::logicalMinWidth):
+ (WebCore::RenderStyle::logicalMaxWidth):
+ (WebCore::RenderStyle::logicalMinHeight):
+ (WebCore::RenderStyle::logicalMaxHeight):
+ (WebCore::RenderStyle::borderBeforeWidth):
+ (WebCore::RenderStyle::borderAfterWidth):
+ (WebCore::RenderStyle::borderStartWidth):
+ (WebCore::RenderStyle::borderEndWidth):
+ (WebCore::RenderStyle::marginBefore):
+ (WebCore::RenderStyle::marginAfter):
+ (WebCore::RenderStyle::marginStart):
+ (WebCore::RenderStyle::marginEnd):
+ (WebCore::RenderStyle::paddingBefore):
+ (WebCore::RenderStyle::paddingAfter):
+ (WebCore::RenderStyle::paddingStart):
+ (WebCore::RenderStyle::paddingEnd):
+ * rendering/style/RenderStyle.h:
+
+2010-09-20 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46116, implement block-flow-aware logical properties.
+
+ This patch adds all the logical properties from the CSS3 Writing Mode draft for margins, padding, border,
+ width and height.
+
+ Added fast/css/logical-property-resolution.html
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ * css/CSSProperty.cpp:
+ (WebCore::resolveToPhysicalProperty):
+ (WebCore::CSSProperty::resolveDirectionAwareProperty):
+ * css/CSSProperty.h:
+ * css/CSSPropertyNames.in:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyDeclarations):
+ (WebCore::CSSStyleSelector::applyProperty):
+
+2010-09-20 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46114, two tables repaint tests failing on bots.
+
+ Patch layoutRows to apply the layout delta when setting a new cell location prior to laying out the cell.
+
+ The layout delta is then removed after layout has happened when the repaint check is done. This change
+ makes cell layout match block child layout, and now the cells have the correct new location up front
+ when laying out (a necessity for pagination).
+
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::layoutRows):
+
+2010-09-20 Jacob Dinu <dinu.jacob@nokia.com>
+
+ Reviewed by Adam Barth.
+
+ When loading a cached page, dispatchDidCommitLoad is called after FrameLoader::open so
+ that all initialzations are done before calling client dispatchDidCommitLoad to avoid
+ client from accessing incorrect data.
+ https://bugs.webkit.org/show_bug.cgi?id=41155
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::commitProvisionalLoad):
+ (WebCore::FrameLoader::transitionToCommitted):
+
+2010-09-20 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Adam Roben.
+
+ REGRESSION: alternating animation direction doesn't work on Windows
+ https://bugs.webkit.org/show_bug.cgi?id=46017
+
+ Animation-direction on Windows was broken because bitfields on
+ Windows are signed.
+
+ Fixed by making m_direction an unsigned in the bitfield, and
+ casting in the accessor.
+
+ Test: animations/animation-direction.html
+
+ * platform/animation/Animation.h:
+ (WebCore::Animation::direction):
+
+2010-09-20 Enrica Casucci <enrica@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Pasteboard doesn't work in WebKit2.
+ https://bugs.webkit.org/show_bug.cgi?id=42317
+ <rdar://problem/7660537>
+
+ * loader/EmptyClients.h:
+ (WebCore::EmptyEditorClient::documentFragmentFromAttributedString): Changed parameter to
+ be a Vector of RefPtr.
+ * page/EditorClient.h:
+ * platform/mac/PasteboardMac.mm:
+ (WebCore::Pasteboard::documentFragmentWithRtf): Stylistic changes.
+
+2010-09-20 Yong Li <yoli@rim.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ https://bugs.webkit.org/show_bug.cgi?id=39966
+ Make compareBorders() a consistent compare function which can beused by qsort().
+
+ New test case added: LayoutTests/tables/sort-collapsed-border-styles.html
+
+ * rendering/RenderTableCell.cpp:
+ (WebCore::compareBorders):
+ (WebCore::chooseBorder):
+ (WebCore::RenderTableCell::collapsedLeftBorder):
+ (WebCore::RenderTableCell::collapsedRightBorder):
+ (WebCore::RenderTableCell::collapsedTopBorder):
+ (WebCore::RenderTableCell::collapsedBottomBorder):
+ (WebCore::compareBorderStylesForQSort):
+
+2010-09-20 Patrick Gansterer <paroga@paroga.com>
+
+ Reviewed by Adam Roben.
+
+ [WINCE] Buildfix for PluginViewWin.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=46033
+
+ * plugins/win/PluginViewWin.cpp:
+ (WebCore::PluginView::paintIntoTransformedContext):
+ (WebCore::PluginView::snapshot):
+
+2010-09-18 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46030, aintitcool.com doesn't paginate correctly when printed.
+
+ This happens because the site always has a document width that will exceed the page width.
+ We incorrectly apply a double scale instead of clipping after the first scale still doesn't fit.
+ The fix for the issue is to cap the right layout overflow to the page width and to just clip out
+ any additional excess. This is the code in FrameView.cpp.
+
+ This patch also cleans up table cell invalidation to reduce the # of relayouts. This change is not
+ a correctness fix. It's just performance.
+
+ I'm not sure how to write a test for this, since the double scale is an artifact of how WebKit mac calls
+ back in when really printing.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::forceLayoutForPagination):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlockChild):
+ (WebCore::RenderBlock::layoutPositionedObjects):
+ (WebCore::RenderBlock::positionNewFloats):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::markForPaginationRelayout):
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::layoutHorizontalBox):
+ (WebCore::RenderFlexibleBox::layoutVerticalBox):
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::layoutRows):
+
+2010-09-20 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: merge Inspector client runtime events into the serialized inspector state object.
+
+ Drive-by rename getBackendSettings -> getInspectorState to better reflect the nature of the data.
+
+ https://bugs.webkit.org/show_bug.cgi?id=45974
+
+ * inspector/Inspector.idl:
+ * inspector/InspectorClient.h:
+ (WebCore::InspectorClient::updateInspectorStateCookie):
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::saveApplicationSettings):
+ (WebCore::InspectorController::getInspectorState):
+ (WebCore::InspectorController::updateInspectorStateCookie):
+ (WebCore::InspectorController::restoreInspectorStateFromCookie):
+ (WebCore::InspectorController::getSettings):
+ (WebCore::InspectorController::setMonitoringXHREnabled):
+ (WebCore::InspectorController::restoreDebugger):
+ (WebCore::InspectorController::restoreProfiler):
+ (WebCore::InspectorController::setResourceTrackingEnabled):
+ (WebCore::InspectorController::ensureSettingsLoaded):
+ (WebCore::InspectorController::startTimelineProfiler):
+ (WebCore::InspectorController::stopTimelineProfiler):
+ (WebCore::InspectorController::enableProfiler):
+ (WebCore::InspectorController::disableProfiler):
+ (WebCore::InspectorController::enableDebuggerFromFrontend):
+ (WebCore::InspectorController::disableDebugger):
+ * inspector/InspectorController.h:
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleView.prototype._handleContextMenuEvent):
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel.prototype._toggleResourceTracking):
+ * inspector/front-end/Settings.js:
+ (WebInspector.Settings.initialize):
+ * inspector/front-end/inspector.js:
+ (WebInspector.doLoadedDone.populateInspectorState):
+ (WebInspector.doLoadedDone):
+
+2010-09-20 Dirk Schulze <krit@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ SVG Filter cleanup
+ https://bugs.webkit.org/show_bug.cgi?id=45612
+
+ All effect inputs are stored in a Vector in FilterEffect instead of passing them via constructors to every effect type.
+ This simplifies the primitive subregion logic and centralizes it in determineFilterPrimitiveSubregion.
+ Just SourceGraphic, SourceAlpha and FETile still calculate filter primitive subregions on
+ their own. Working on it in a followup patch.
+ The subregions code is SVG specific and moving this calculation to FilterEffect is an
+ intermediate step before moving it to RenderSVGResourceFilterPrimitive in a following patch.
+ The new FilterEffectVector will also make it possible to add code to determine the
+ smallest used region of an effect and will help save memory and resources in the future.
+ subRegion got renamed to filterPrimitiveSubregion to match the name scheme. scaledSubRegion got
+ renamed to repaintRectInLocalCoordinates since this is its proper meaning.
+ Removed unnecessary member variables and functions from FilterEffect.
+
+ No new tests added since the functionality didn't change.
+
+ * platform/graphics/cairo/GraphicsContextCairo.cpp: scaledSubRegion was renamed to repaintRectInLocalCoordinates.
+ (WebCore::GraphicsContext::createShadowMask):
+ * platform/graphics/filters/FEBlend.cpp: Removed Filter effect inputs from constructor.
+ (WebCore::FEBlend::FEBlend):
+ (WebCore::FEBlend::create):
+ (WebCore::FEBlend::apply): Call inputFilterEffects to get input filter primitives.
+ (WebCore::FEBlend::externalRepresentation): Call inputFilterEffects to get input filter primitives.
+ * platform/graphics/filters/FEBlend.h:
+ * platform/graphics/filters/FEColorMatrix.cpp: Ditto.
+ (WebCore::FEColorMatrix::FEColorMatrix):
+ (WebCore::FEColorMatrix::create):
+ (WebCore::FEColorMatrix::apply):
+ (WebCore::FEColorMatrix::externalRepresentation):
+ * platform/graphics/filters/FEColorMatrix.h:
+ * platform/graphics/filters/FEComponentTransfer.cpp: Ditto.
+ (WebCore::FEComponentTransfer::FEComponentTransfer):
+ (WebCore::FEComponentTransfer::create):
+ (WebCore::FEComponentTransfer::apply):
+ (WebCore::FEComponentTransfer::externalRepresentation):
+ * platform/graphics/filters/FEComponentTransfer.h:
+ * platform/graphics/filters/FEComposite.cpp: Ditto.
+ (WebCore::FEComposite::FEComposite):
+ (WebCore::FEComposite::create):
+ (WebCore::FEComposite::apply):
+ (WebCore::FEComposite::externalRepresentation):
+ * platform/graphics/filters/FEComposite.h:
+ * platform/graphics/filters/FEGaussianBlur.cpp: Ditto.
+ (WebCore::FEGaussianBlur::FEGaussianBlur):
+ (WebCore::FEGaussianBlur::create):
+ (WebCore::FEGaussianBlur::apply):
+ (WebCore::FEGaussianBlur::externalRepresentation):
+ * platform/graphics/filters/FEGaussianBlur.h:
+ * platform/graphics/filters/Filter.h:
+ (WebCore::Filter::determineFilterPrimitiveSubregion): Renamed from calculateEffectSubRegion to match name scheme.
+ * platform/graphics/filters/FilterEffect.cpp:
+ (WebCore::FilterEffect::FilterEffect):
+ (WebCore::FilterEffect::determineFilterPrimitiveSubregion): The main place for subregion calculation.
+ (WebCore::FilterEffect::calculateDrawingIntRect): Takes repaintRectInLocalCoordinates now.
+ (WebCore::FilterEffect::calculateDrawingRect): ditto.
+ (WebCore::FilterEffect::getEffectContext): Check if ImageBuffer was created.
+ * platform/graphics/filters/FilterEffect.h: Changed names to match name scheme. Removed unnecessary member variables and functions.
+ Seperate SVG specific member variables and functions. Will get removed in followup patches.
+ (WebCore::FilterEffect::resultImage):
+ (WebCore::FilterEffect::setEffectBuffer):
+ (WebCore::FilterEffect::inputEffect):
+ (WebCore::FilterEffect::inputEffects):
+ (WebCore::FilterEffect::numberOfinputEffects):
+ (WebCore::FilterEffect::isAlphaImage):
+ (WebCore::FilterEffect::setIsAlphaImage):
+ (WebCore::FilterEffect::repaintRectInLocalCoordinates):
+ (WebCore::FilterEffect::setRepaintRectInLocalCoordinates):
+ (WebCore::FilterEffect::isSourceInput):
+ (WebCore::FilterEffect::hasX):
+ (WebCore::FilterEffect::setHasX):
+ (WebCore::FilterEffect::hasY):
+ (WebCore::FilterEffect::setHasY):
+ (WebCore::FilterEffect::hasWidth):
+ (WebCore::FilterEffect::setHasWidth):
+ (WebCore::FilterEffect::hasHeight):
+ (WebCore::FilterEffect::setHasHeight):
+ (WebCore::FilterEffect::filterPrimitiveSubregion):
+ (WebCore::FilterEffect::setFilterPrimitiveSubregion):
+ (WebCore::FilterEffect::effectBoundaries):
+ (WebCore::FilterEffect::setEffectBoundaries):
+ * platform/graphics/filters/SourceAlpha.cpp:
+ (WebCore::SourceAlpha::determineFilterPrimitiveSubregion): Renamed to match name scheme.
+ * platform/graphics/filters/SourceAlpha.h:
+ (WebCore::SourceAlpha::isSourceInput):
+ * platform/graphics/filters/SourceGraphic.cpp:
+ (WebCore::SourceGraphic::determineFilterPrimitiveSubregion): Ditto.
+ * platform/graphics/filters/SourceGraphic.h:
+ (WebCore::SourceGraphic::isSourceInput):
+ * rendering/RenderSVGResourceFilter.cpp: Adapt to renames in FilterEffect.
+ (WebCore::RenderSVGResourceFilter::applyResource):
+ (WebCore::RenderSVGResourceFilter::postApplyResource):
+ * svg/SVGFEBlendElement.cpp: Constructor of FEBlend doesn't take input effects. Adding them afterwards.
+ (WebCore::SVGFEBlendElement::build):
+ * svg/SVGFEColorMatrixElement.cpp: Ditto.
+ (WebCore::SVGFEColorMatrixElement::build):
+ * svg/SVGFEComponentTransferElement.cpp: Ditto.
+ (WebCore::SVGFEComponentTransferElement::build):
+ * svg/SVGFECompositeElement.cpp: Ditto.
+ (WebCore::SVGFECompositeElement::build):
+ * svg/SVGFEConvolveMatrixElement.cpp: Ditto.
+ (WebCore::SVGFEConvolveMatrixElement::build):
+ * svg/SVGFEDiffuseLightingElement.cpp: Ditto.
+ (WebCore::SVGFEDiffuseLightingElement::build):
+ * svg/SVGFEDisplacementMapElement.cpp: Ditto.
+ (WebCore::SVGFEDisplacementMapElement::build):
+ * svg/SVGFEGaussianBlurElement.cpp: Ditto.
+ (WebCore::SVGFEGaussianBlurElement::build):
+ * svg/SVGFEMergeElement.cpp: Ditto.
+ (WebCore::SVGFEMergeElement::build):
+ * svg/SVGFEMorphologyElement.cpp: Ditto.
+ (WebCore::SVGFEMorphologyElement::build):
+ * svg/SVGFEOffsetElement.cpp: Ditto.
+ (WebCore::SVGFEOffsetElement::build):
+ * svg/SVGFESpecularLightingElement.cpp: Ditto.
+ (WebCore::SVGFESpecularLightingElement::build):
+ * svg/SVGFETileElement.cpp: Ditto.
+ (WebCore::SVGFETileElement::build):
+ * svg/graphics/filters/SVGFEConvolveMatrix.cpp: Ditto.
+ (WebCore::FEConvolveMatrix::FEConvolveMatrix):
+ (WebCore::FEConvolveMatrix::create):
+ (WebCore::FEConvolveMatrix::apply):
+ (WebCore::FEConvolveMatrix::externalRepresentation):
+ * svg/graphics/filters/SVGFEConvolveMatrix.h:
+ * svg/graphics/filters/SVGFEDiffuseLighting.cpp: Ditto.
+ (WebCore::FEDiffuseLighting::FEDiffuseLighting):
+ (WebCore::FEDiffuseLighting::create):
+ (WebCore::FEDiffuseLighting::externalRepresentation):
+ * svg/graphics/filters/SVGFEDiffuseLighting.h:
+ * svg/graphics/filters/SVGFEDisplacementMap.cpp: Ditto.
+ (WebCore::FEDisplacementMap::FEDisplacementMap):
+ (WebCore::FEDisplacementMap::create):
+ (WebCore::FEDisplacementMap::apply):
+ (WebCore::FEDisplacementMap::externalRepresentation):
+ * svg/graphics/filters/SVGFEDisplacementMap.h:
+ * svg/graphics/filters/SVGFEFlood.cpp: Ditto.
+ (WebCore::FEFlood::apply):
+ * svg/graphics/filters/SVGFEImage.cpp: Ditto.
+ (WebCore::FEImage::apply):
+ * svg/graphics/filters/SVGFELighting.cpp: Ditto.
+ (WebCore::FELighting::FELighting):
+ (WebCore::FELighting::apply):
+ * svg/graphics/filters/SVGFELighting.h:
+ * svg/graphics/filters/SVGFEMerge.cpp: Ditto.
+ (WebCore::FEMerge::FEMerge):
+ (WebCore::FEMerge::create):
+ (WebCore::FEMerge::apply):
+ (WebCore::FEMerge::externalRepresentation):
+ * svg/graphics/filters/SVGFEMerge.h:
+ * svg/graphics/filters/SVGFEMorphology.cpp: Ditto.
+ (WebCore::FEMorphology::FEMorphology):
+ (WebCore::FEMorphology::create):
+ (WebCore::FEMorphology::apply):
+ (WebCore::FEMorphology::externalRepresentation):
+ * svg/graphics/filters/SVGFEMorphology.h:
+ * svg/graphics/filters/SVGFEOffset.cpp: Ditto.
+ (WebCore::FEOffset::FEOffset):
+ (WebCore::FEOffset::create):
+ (WebCore::FEOffset::apply):
+ (WebCore::FEOffset::externalRepresentation):
+ * svg/graphics/filters/SVGFEOffset.h:
+ * svg/graphics/filters/SVGFESpecularLighting.cpp: Ditto.
+ (WebCore::FESpecularLighting::FESpecularLighting):
+ (WebCore::FESpecularLighting::create):
+ (WebCore::FESpecularLighting::externalRepresentation):
+ * svg/graphics/filters/SVGFESpecularLighting.h:
+ * svg/graphics/filters/SVGFETile.cpp: Ditto.
+ (WebCore::FETile::FETile):
+ (WebCore::FETile::create):
+ (WebCore::FETile::determineFilterPrimitiveSubregion): Renamed to match name scheme.
+ (WebCore::FETile::apply):
+ (WebCore::FETile::externalRepresentation):
+ * svg/graphics/filters/SVGFETile.h:
+ * svg/graphics/filters/SVGFilter.cpp: Renamed itemBox to targetBoundingBox to match name scheme.
+ (WebCore::SVGFilter::SVGFilter):
+ (WebCore::SVGFilter::determineFilterPrimitiveSubregion): Renamed to match name scheme.
+ (WebCore::SVGFilter::create):
+ * svg/graphics/filters/SVGFilter.h:
+ (WebCore::SVGFilter::sourceImageRect):
+
+2010-09-20 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: highlight DOM node when hover on link element or DOM breakpoint
+ https://bugs.webkit.org/show_bug.cgi?id=45897
+
+ * inspector/front-end/BreakpointsSidebarPane.js:
+ (WebInspector.BreakpointItem):
+ (WebInspector.JSBreakpointItem):
+ (WebInspector.DOMBreakpointItem):
+ (WebInspector.DOMBreakpointItem.prototype.compareTo):
+ (WebInspector.DOMBreakpointItem.prototype._breakpointClicked):
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel.prototype.hide):
+ (WebInspector.ElementsPanel.prototype.reset):
+ (WebInspector.ElementsPanel.prototype.setDocument.selectNode):
+ (WebInspector.ElementsPanel.prototype._mouseMovedInCrumbs):
+ (WebInspector.ElementsPanel.prototype._mouseMovedOutOfCrumbs):
+ (WebInspector.ElementsPanel.prototype.linkifyNodeReference):
+ * inspector/front-end/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode):
+ (WebInspector.ElementsTreeOutline.prototype._onmousemove):
+ (WebInspector.ElementsTreeOutline.prototype._onmouseout):
+ * inspector/front-end/inspector.js:
+ (WebInspector.highlightDOMNode):
+ (WebInspector.highlightDOMNodeForTwoSeconds):
+ (WebInspector.wireElementWithDOMNode):
+ (WebInspector._updateFocusedNode):
+ (WebInspector.reset):
+ (WebInspector.updateFocusedNode):
+
+2010-09-19 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r67749.
+ http://trac.webkit.org/changeset/67749
+ https://bugs.webkit.org/show_bug.cgi?id=46068
+
+ breaking ToT chromium canary build (Requested by shans on
+ #webkit).
+
+ * bindings/v8/V8DOMWindowShell.cpp:
+ (WebCore::V8DOMWindowShell::createNewContext):
+ * bindings/v8/V8Proxy.cpp:
+ (WebCore::V8Proxy::registeredExtensionWithV8):
+ (WebCore::V8Proxy::registerExtension):
+ * bindings/v8/V8Proxy.h:
+ * loader/EmptyClients.h:
+ * loader/FrameLoaderClient.h:
+
+2010-09-19 Gavin Barraclough <barraclough@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ Bug 46065 - Unify implementation of ToInt32 and ToUInt32, don't use fmod.
+
+ These methods implement the same conversion (see discussion in the notes
+ of sections of 9.5 and 9.6 of the spec), only differing in how the result
+ is interpretted.
+
+ Removing JSValue::toInt32 (since this has weird, non-spec function).
+ A couple of places in the binding are using this method, so adding
+ finiteInt32Value to the bindings to maintain current behaviour.
+
+ Test: fast/js/toInt32UInt32.html
+
+ * bindings/js/JSDOMBinding.h:
+ (WebCore::finiteInt32Value):
+ * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
+ (WebCore::JSHTMLOptionsCollection::add):
+ * bindings/js/JSSQLResultSetRowListCustom.cpp:
+ (WebCore::JSSQLResultSetRowList::item):
+ * bindings/js/JSSVGPODListCustom.h:
+ (WebCore::JSSVGPODListCustom::getItem):
+ (WebCore::JSSVGPODListCustom::insertItemBefore):
+ (WebCore::JSSVGPODListCustom::replaceItem):
+ (WebCore::JSSVGPODListCustom::removeItem):
+ * bindings/js/JSSVGPathSegListCustom.cpp:
+ (WebCore::JSSVGPathSegList::getItem):
+ (WebCore::JSSVGPathSegList::insertItemBefore):
+ (WebCore::JSSVGPathSegList::replaceItem):
+ (WebCore::JSSVGPathSegList::removeItem):
+
+2010-09-19 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] clipBoundingRect() should return rect relevant to current layer
+ https://bugs.webkit.org/show_bug.cgi?id=46059
+
+ r65791 inadvertently changed clipBoundingRect() to always use the GC painter
+ without checking the TransparencyLayer stack first.
+
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContextPlatformPrivate::p):
+ (WebCore::GraphicsContextPlatformPrivate::clipBoundingRect):
+
+2010-09-19 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Anders Carlsson.
+
+ Replace WKBundleRangeRef with WKBundleRangeHandleRef.
+ https://bugs.webkit.org/show_bug.cgi?id=46054
+
+ * WebCore.exp.in:
+ * WebCore.xcodeproj/project.pbxproj:
+
+2010-09-19 Patrick Gansterer <paroga@paroga.com>
+
+ Unreviewed.
+
+ [WINCE] Buildfix for Gradient after r67801.
+
+ * platform/graphics/Gradient.h:
+ * platform/graphics/wince/GradientWinCE.cpp:
+ (WebCore::Gradient::getStops):
+
+2010-09-19 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ [Chromium] Add is<input type>() functions to WebInputElement
+ https://bugs.webkit.org/show_bug.cgi?id=46035
+
+ * html/HTMLInputElement.h:
+ (WebCore::HTMLInputElement::isText): Added. It is used by WebKit/chromium.
+
+2010-09-18 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Antonio Gomes.
+
+ [Qt] Path: Remove unused member variable
+ https://bugs.webkit.org/show_bug.cgi?id=46048
+
+ Path::m_lastMoveToIndex is not used for anything, so remove it.
+
+ * platform/graphics/Path.h:
+ * platform/graphics/qt/PathQt.cpp:
+ (WebCore::Path::Path):
+ (WebCore::Path::operator=):
+ (WebCore::Path::moveTo):
+
+2010-09-18 Patrick Gansterer <paroga@paroga.com>
+
+ Reviewed by Darin Adler.
+
+ Use AtomicString insted of String in XMLDocumentParser
+ https://bugs.webkit.org/show_bug.cgi?id=45990
+
+ Create AtomicString as early as possible.
+ This can avoid unnecessary memcpy of String content.
+
+ * dom/XMLDocumentParser.h:
+ * dom/XMLDocumentParserLibxml2.cpp:
+ (WebCore::toAtomicString):
+ (WebCore::handleElementNamespaces):
+ (WebCore::handleElementAttributes):
+ (WebCore::XMLDocumentParser::startElementNs):
+
+2010-09-18 Erik Arvidsson <arv@chromium.org>
+
+ Reviewed by Nate Chapin.
+
+ [Chromium] fast/dom/dataset-gc.html is failing
+ https://bugs.webkit.org/show_bug.cgi?id=45426
+
+ * bindings/scripts/CodeGeneratorV8.pm:
+ * bindings/v8/custom/V8DOMStringMapCustom.cpp:
+ (WebCore::toV8):
+ * dom/DOMStringMap.h:
+ * dom/DatasetDOMStringMap.h:
+ (WebCore::DatasetDOMStringMap::element):
+
+2010-09-18 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Oliver Hunt.
+
+ Gradient: Fast-path for the ideal case in sortStopsIfNecessary()
+ https://bugs.webkit.org/show_bug.cgi?id=46045
+
+ Avoid calling std::stable_sort for 2-stop gradients that are already in order.
+
+ * platform/graphics/Gradient.cpp:
+ (WebCore::Gradient::sortStopsIfNecessary):
+
+2010-09-18 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by Andreas Kling.
+
+ [BREWMP] Fix a typo in key code name
+ https://bugs.webkit.org/show_bug.cgi?id=46003
+
+ AVK_CLR is the right Brew MP key code name for VK_BACK.
+
+ * platform/brew/PlatformKeyboardEventBrew.cpp:
+ (WebCore::windowsKeyCodeForKeyEvent):
+
+2010-09-18 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Oliver Hunt.
+
+ Gradient: Pre-reserve space for 2 color stops
+ https://bugs.webkit.org/show_bug.cgi?id=46044
+
+ Most gradients have only 2 color stops, pre-reserve space for these in m_stops
+ to avoid growing the vector dynamically in the common case.
+
+ * platform/graphics/Gradient.h:
+
+2010-09-18 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Unreviewed, rolling out r67792.
+ http://trac.webkit.org/changeset/67792
+ https://bugs.webkit.org/show_bug.cgi?id=45976
+
+ Broke over a hundred SVG tests.
+
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::drawImage):
+ (WebCore::GraphicsContext::drawImageBuffer):
+ * platform/graphics/GraphicsContext.h:
+
+2010-09-18 Mihai Parparita <mihaip@chromium.org>
+
+ Reviewed by Simon Fraser.
+
+ webkitAnimationEnd event doesn't fire when skipping over final iteration
+ https://bugs.webkit.org/show_bug.cgi?id=46010
+
+ It's possible for AnimationBase::fireAnimationEventsIfNeeded to decide
+ that the animation is ended while we're in the looping state, if the
+ animation timer never fires during an iteration. That then fails the
+ assert in AnimationBase::updateStateMachine (we don't expect
+ AnimationStateInputEndTimerFired while in the looping state). Jump the
+ state to AnimationStateEnding, which is more accurate.
+
+ Test: animations/animation-end-event-short-iterations.html
+
+ * page/animation/AnimationBase.cpp:
+ (WebCore::AnimationBase::fireAnimationEventsIfNeeded):
+
+2010-09-18 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by Andreas Kling.
+
+ [BREWMP] Wrong key code type in keyIdentifierForBrewKeyCode
+ https://bugs.webkit.org/show_bug.cgi?id=46005
+
+ The type of key code in Brew MP is uint16. Take uint16 instead of int16 in keyIdentifierForBrewKeyCode.
+
+ * platform/brew/PlatformKeyboardEventBrew.cpp:
+ (WebCore::keyIdentifierForBrewKeyCode):
+
+2010-09-18 Matthew Delaney <mdelaney@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ Canvas drawImage with source or destination widths/heights of -1 renders incorrectly.
+ https://bugs.webkit.org/show_bug.cgi?id=45976
+
+ Specifying a -1 width or height for either the source or destination rectangle in drawImage
+ get improperly drawn with -1 replaced as the corresponding image width or height. This was because
+ the value -1 was being passed around to signal non-specified widths and heights and thus was
+ interpreted lower down in the drawImage implementation which disallowed any calls that actually
+ wanted to use -1 as the widths or heights. Fixed this by moving the default logic up and not using
+ -1 in-band signaling to denote default behavior.
+
+ Tests: canvas/philip/tests/2d.drawImage.negativeOneDest.html
+ canvas/philip/tests/2d.drawImage.negativeOneSource.html
+
+ * platform/graphics/GraphicsContext.cpp: Removed -1 in-band signals and replaced cascased calls to have
+ the desired replaces for unspecified widths and heights earlier on.
+ * platform/graphics/GraphicsContext.h: Removed faulty default value.
+
+2010-09-18 Ademar de Souza Reis Jr <ademar.reis@openbossa.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Enable Platform Strategies on Qt
+
+ [Qt] Turn on PLATFORM_STRATEGIES
+ https://bugs.webkit.org/show_bug.cgi?id=45831
+
+ * WebCore.pro: Adding/removing implementation files
+ * platform/qt/Language.cpp: Added, WebCore::defaultLanguage() was
+ moved from platform/qt/Localizations.cpp
+ (WebCore::defaultLanguage): Moved from Localizations.cpp
+ * platform/qt/Localizations.cpp: Removed (code is now inside
+ WebCoreSupport/WebPlatformStrategies.cpp)
+ * plugins/qt/PluginDataQt.cpp: Removed (idem)
+
+2010-09-18 Patrick Gansterer <paroga@paroga.com>
+
+ Reviewed by Darin Adler.
+
+ Rename Wince files to WinCE
+ https://bugs.webkit.org/show_bug.cgi?id=37287
+
+ * loader/icon/wince/IconDatabaseWinCE.cpp: Copied from WebCore/loader/icon/wince/IconDatabaseWince.cpp.
+ * loader/icon/wince/IconDatabaseWince.cpp: Removed.
+ * page/wince/FrameWinCE.cpp: Copied from WebCore/page/wince/FrameWince.cpp.
+ * page/wince/FrameWince.cpp: Removed.
+ * platform/graphics/MediaPlayer.cpp:
+ * platform/graphics/wince/ColorWinCE.cpp: Copied from WebCore/platform/graphics/wince/ColorWince.cpp.
+ * platform/graphics/wince/ColorWince.cpp: Removed.
+ * platform/graphics/wince/FontCacheWinCE.cpp: Copied from WebCore/platform/graphics/wince/FontCacheWince.cpp.
+ * platform/graphics/wince/FontCacheWince.cpp: Removed.
+ * platform/graphics/wince/FontWinCE.cpp: Copied from WebCore/platform/graphics/wince/FontWince.cpp.
+ * platform/graphics/wince/FontWince.cpp: Removed.
+ * platform/graphics/wince/GlyphPageTreeNodeWinCE.cpp: Copied from WebCore/platform/graphics/wince/GlyphPageTreeNodeWince.cpp.
+ * platform/graphics/wince/GlyphPageTreeNodeWince.cpp: Removed.
+ * platform/graphics/wince/GradientWinCE.cpp: Copied from WebCore/platform/graphics/wince/GradientWince.cpp.
+ * platform/graphics/wince/GradientWince.cpp: Removed.
+ * platform/graphics/wince/GraphicsContextWinCE.cpp: Copied from WebCore/platform/graphics/wince/GraphicsContextWince.cpp.
+ * platform/graphics/wince/GraphicsContextWince.cpp: Removed.
+ * platform/graphics/wince/ImageBufferWinCE.cpp: Copied from WebCore/platform/graphics/wince/ImageBufferWince.cpp.
+ * platform/graphics/wince/ImageBufferWince.cpp: Removed.
+ * platform/graphics/wince/MediaPlayerPrivateWinCE.h: Copied from WebCore/platform/graphics/wince/MediaPlayerPrivateWince.h.
+ * platform/graphics/wince/MediaPlayerPrivateWince.h: Removed.
+ * platform/graphics/wince/PathWinCE.cpp: Copied from WebCore/platform/graphics/wince/PathWince.cpp.
+ * platform/graphics/wince/PathWince.cpp: Removed.
+ * platform/graphics/wince/PlatformPathWinCE.cpp: Copied from WebCore/platform/graphics/wince/PlatformPathWince.cpp.
+ * platform/graphics/wince/PlatformPathWinCE.h: Copied from WebCore/platform/graphics/wince/PlatformPathWince.h.
+ * platform/graphics/wince/PlatformPathWince.cpp: Removed.
+ * platform/graphics/wince/PlatformPathWince.h: Removed.
+ * platform/graphics/wince/SimpleFontDataWinCE.cpp: Copied from WebCore/platform/graphics/wince/SimpleFontDataWince.cpp.
+ * platform/graphics/wince/SimpleFontDataWince.cpp: Removed.
+ * platform/graphics/wince/WinCEGraphicsExtras.h: Copied from WebCore/platform/graphics/wince/WinceGraphicsExtras.h.
+ * platform/graphics/wince/WinceGraphicsExtras.h: Removed.
+ * platform/text/wince/TextBoundariesWinCE.cpp: Copied from WebCore/platform/text/wince/TextBoundariesWince.cpp.
+ * platform/text/wince/TextBoundariesWince.cpp: Removed.
+ * platform/text/wince/TextBreakIteratorWinCE.cpp: Copied from WebCore/platform/text/wince/TextBreakIteratorWince.cpp.
+ * platform/text/wince/TextBreakIteratorWince.cpp: Removed.
+ * platform/wince/CursorWinCE.cpp: Copied from WebCore/platform/wince/CursorWince.cpp.
+ * platform/wince/CursorWince.cpp: Removed.
+ * platform/wince/DragDataWinCE.cpp: Copied from WebCore/platform/wince/DragDataWince.cpp.
+ * platform/wince/DragDataWince.cpp: Removed.
+ * platform/wince/DragImageWinCE.cpp: Copied from WebCore/platform/wince/DragImageWince.cpp.
+ * platform/wince/DragImageWince.cpp: Removed.
+ * platform/wince/EditorWinCE.cpp: Copied from WebCore/platform/wince/EditorWince.cpp.
+ (WebCore::Editor::newGeneralClipboard):
+ * platform/wince/EditorWince.cpp: Removed.
+ * platform/wince/FileChooserWinCE.cpp: Copied from WebCore/platform/wince/FileChooserWince.cpp.
+ * platform/wince/FileChooserWince.cpp: Removed.
+ * platform/wince/FileSystemWinCE.cpp: Copied from WebCore/platform/wince/FileSystemWince.cpp.
+ * platform/wince/FileSystemWince.cpp: Removed.
+ * platform/wince/KURLWinCE.cpp: Copied from WebCore/platform/wince/KURLWince.cpp.
+ * platform/wince/KURLWince.cpp: Removed.
+ * platform/wince/KeygenWinCE.cpp: Copied from WebCore/platform/wince/KeygenWince.cpp.
+ * platform/wince/KeygenWince.cpp: Removed.
+ * platform/wince/MIMETypeRegistryWinCE.cpp: Copied from WebCore/platform/wince/MIMETypeRegistryWince.cpp.
+ * platform/wince/MIMETypeRegistryWince.cpp: Removed.
+ * platform/wince/PasteboardWinCE.cpp: Copied from WebCore/platform/wince/PasteboardWince.cpp.
+ * platform/wince/PasteboardWince.cpp: Removed.
+ * platform/wince/SearchPopupMenuWinCE.cpp: Copied from WebCore/platform/wince/SearchPopupMenuWince.cpp.
+ * platform/wince/SearchPopupMenuWince.cpp: Removed.
+ * platform/wince/SharedTimerWinCE.cpp: Copied from WebCore/platform/wince/SharedTimerWince.cpp.
+ * platform/wince/SharedTimerWince.cpp: Removed.
+ * rendering/RenderThemeWinCE.cpp: Copied from WebCore/rendering/RenderThemeWince.cpp.
+ (WebCore::RenderThemeWinCE::create):
+ (WebCore::RenderTheme::themeForPage):
+ (WebCore::RenderThemeWinCE::RenderThemeWinCE):
+ (WebCore::RenderThemeWinCE::~RenderThemeWinCE):
+ (WebCore::RenderThemeWinCE::platformActiveSelectionBackgroundColor):
+ (WebCore::RenderThemeWinCE::platformInactiveSelectionBackgroundColor):
+ (WebCore::RenderThemeWinCE::platformActiveSelectionForegroundColor):
+ (WebCore::RenderThemeWinCE::platformInactiveSelectionForegroundColor):
+ (WebCore::RenderThemeWinCE::supportsFocus):
+ (WebCore::RenderThemeWinCE::supportsFocusRing):
+ (WebCore::RenderThemeWinCE::determineClassicState):
+ (WebCore::RenderThemeWinCE::getThemeData):
+ (WebCore::RenderThemeWinCE::paintButton):
+ (WebCore::RenderThemeWinCE::setCheckboxSize):
+ (WebCore::RenderThemeWinCE::paintTextField):
+ (WebCore::RenderThemeWinCE::adjustMenuListStyle):
+ (WebCore::RenderThemeWinCE::paintMenuList):
+ (WebCore::RenderThemeWinCE::paintMenuListButton):
+ (WebCore::RenderThemeWinCE::systemFont):
+ (WebCore::RenderThemeWinCE::themeChanged):
+ (WebCore::RenderThemeWinCE::extraDefaultStyleSheet):
+ (WebCore::RenderThemeWinCE::extraQuirksStyleSheet):
+ (WebCore::RenderThemeWinCE::supportsHover):
+ (WebCore::RenderThemeWinCE::systemColor):
+ (WebCore::RenderThemeWinCE::adjustSliderThumbSize):
+ (WebCore::RenderThemeWinCE::adjustButtonInnerStyle):
+ (WebCore::RenderThemeWinCE::adjustSearchFieldStyle):
+ (WebCore::RenderThemeWinCE::paintSearchField):
+ (WebCore::RenderThemeWinCE::paintSearchFieldCancelButton):
+ (WebCore::RenderThemeWinCE::adjustSearchFieldCancelButtonStyle):
+ (WebCore::RenderThemeWinCE::adjustSearchFieldDecorationStyle):
+ (WebCore::RenderThemeWinCE::adjustSearchFieldResultsDecorationStyle):
+ (WebCore::RenderThemeWinCE::paintSearchFieldResultsDecoration):
+ (WebCore::RenderThemeWinCE::adjustSearchFieldResultsButtonStyle):
+ (WebCore::RenderThemeWinCE::paintSearchFieldResultsButton):
+ (WebCore::RenderThemeWinCE::adjustMenuListButtonStyle):
+ (WebCore::RenderThemeWinCE::paintSliderTrack):
+ (WebCore::RenderThemeWinCE::paintSliderThumb):
+ (WebCore::RenderThemeWinCE::paintMediaFullscreenButton):
+ (WebCore::RenderThemeWinCE::paintMediaMuteButton):
+ (WebCore::RenderThemeWinCE::paintMediaPlayButton):
+ (WebCore::RenderThemeWinCE::paintMediaSeekBackButton):
+ (WebCore::RenderThemeWinCE::paintMediaSeekForwardButton):
+ (WebCore::RenderThemeWinCE::paintMediaSliderTrack):
+ (WebCore::RenderThemeWinCE::paintMediaSliderThumb):
+ * rendering/RenderThemeWinCE.h: Copied from WebCore/rendering/RenderThemeWince.h.
+ * rendering/RenderThemeWince.cpp: Removed.
+ * rendering/RenderThemeWince.h: Removed.
+ * storage/wince/DatabaseThreadWinCE.cpp: Copied from WebCore/storage/wince/DatabaseThreadWince.cpp.
+ * storage/wince/DatabaseThreadWinCE.h: Copied from WebCore/storage/wince/DatabaseThreadWince.h.
+ * storage/wince/DatabaseThreadWince.cpp: Removed.
+ * storage/wince/DatabaseThreadWince.h: Removed.
+ * storage/wince/LocalStorageThreadWinCE.cpp: Copied from WebCore/storage/wince/LocalStorageThreadWince.cpp.
+ * storage/wince/LocalStorageThreadWinCE.h: Copied from WebCore/storage/wince/LocalStorageThreadWince.h.
+ * storage/wince/LocalStorageThreadWince.cpp: Removed.
+ * storage/wince/LocalStorageThreadWince.h: Removed.
+
+2010-09-18 Patrick Gansterer <paroga@paroga.com>
+
+ Reviewed by Eric Seidel.
+
+ Move Plugin*None.cpp from CMakeLists.txt into CMakeListsEfl.txt
+ https://bugs.webkit.org/show_bug.cgi?id=45900
+
+ PluginDataNone.cpp and PluginViewNone.cpp are not used by all port.
+ Move them into plaform sepcific build system.
+
+ * CMakeLists.txt:
+ * CMakeListsEfl.txt:
+
+2010-09-18 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Simon Hausmann.
+
+ [Qt] Don't copy clip path to TransparencyLayer
+ https://bugs.webkit.org/show_bug.cgi?id=45965
+
+ We don't need to copy the GC's clip path to the TransparencyLayer since it will
+ clip anyway when ending the layer.
+
+ * platform/graphics/qt/TransparencyLayer.h:
+ (WebCore::TransparencyLayer::TransparencyLayer):
+
+2010-09-18 Patrick Gansterer <paroga@paroga.com>
+
+ Unreviewed.
+
+ [WINCE] Buildfix for FrameWince.cpp after r51353, r67762 and r67771.
+
+ * page/wince/FrameWince.cpp:
+ (WebCore::computePageRectsForFrame):
+ (WebCore::imageFromSelection):
+
+2010-09-18 Kent Tamura <tkent@chromium.org>
+
+ Unreviewed, a trivial change.
+
+ Run sort-Xcode-project-file.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2010-09-18 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Eric Seidel.
+
+ REGRESSION (r67762): Over 160 layout tests failing due to incorrect zoom factors in subframes
+ https://bugs.webkit.org/show_bug.cgi?id=46031
+
+ * page/Frame.cpp:
+ (WebCore::parentPageZoomFactor): Return the zoom factor of the parent frame.
+ (WebCore::parentTextZoomFactor): Ditto.
+
+2010-09-17 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Jon Honeycutt.
+
+ Need a way to load data (as plain text) in a WKPage
+ <rdar://problem/8424239>
+
+ * WebCore.exp.in:
+
+2010-09-17 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=46027, image on gamespot.com paginates without bringing its enclosing border along.
+
+ Make sure that unsplittable objects like replaced elements propagate their pagination strut outward to the parent block
+ when appropriate. An image on a line did this, but a block-level image did not.
+
+ Added fast/multicol/image-inside-nested-blocks-with-border.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlockChild):
+
+2010-09-17 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Unreviewed, build fix.
+
+ Move calls from frameView->pageZoomFactor() to frame->pageZoomFactor().
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::handleTouchEvent): Removed a helper function,
+ added direct calls to frame->pageZoomFactor().
+
+2010-09-17 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ https://bugs.webkit.org/show_bug.cgi?id=45993, convert printing to the new pagination model.
+
+ Make printing store the page height in the RenderView and push that into the layout state to
+ use the new pagination model. The old pagination model is retained because it is still used
+ for embedded WebViews.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::reset):
+ (WebCore::FrameView::layout):
+ (WebCore::FrameView::forceLayout):
+ (WebCore::FrameView::forceLayoutForPagination):
+ (WebCore::FrameView::adjustPageHeight):
+ * page/FrameView.h:
+ * page/PrintContext.cpp:
+ (WebCore::PrintContext::computePageRectsWithPageSizeInternal):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::paintChildren):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::calcHeight):
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::paintReplaced):
+ * rendering/RenderLineBoxList.cpp:
+ (WebCore::RenderLineBoxList::paint):
+ * rendering/RenderVideo.cpp:
+ (WebCore::RenderVideo::paintReplaced):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::RenderView):
+ (WebCore::RenderView::layout):
+ (WebCore::RenderView::paint):
+ (WebCore::RenderView::setBestTruncatedAt):
+ * rendering/RenderView.h:
+ (WebCore::RenderView::popLayoutState):
+ (WebCore::RenderView::pageHeight):
+ (WebCore::RenderView::setPageHeight):
+ (WebCore::RenderView::bestTruncatedAt):
+ (WebCore::RenderView::truncatedAt):
+ (WebCore::RenderView::setTruncatedAt):
+ (WebCore::RenderView::printRect):
+ (WebCore::RenderView::setPrintRect):
+ (WebCore::RenderView::pushLayoutState):
+ (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
+ (WebCore::LayoutStateMaintainer::push):
+ (WebCore::LayoutStateMaintainer::pop):
+
+2010-09-17 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Canvas sizing ignores intrinsic size
+ https://bugs.webkit.org/show_bug.cgi?id=46024
+
+ Updated fast/replaced/table-percent-height.html
+
+ * rendering/RenderEmbeddedObject.cpp:
+ (WebCore::RenderEmbeddedObject::RenderEmbeddedObject): If this is used as a proxy
+ for <video>, behave like it has an intrinsic size (e.g. preserve aspect ratio when
+ width is auto and height is specified).
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::calcAspectRatioWidth): Changed to explicitly invoke
+ RenderBox::calcReplacedHeight(), now that RenderReplaced has its own implementation
+ which we don’t want.
+ (WebCore::RenderImage::calcAspectRatioHeight): Similarly with calcReplacedWidth().
+ * rendering/RenderImage.h:
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::RenderReplaced): Initialize m_hasIntrinsicSize.
+ (WebCore::lengthIsSpecified): Added this helper function, based on RenderImage’s
+ is{Width,Height}Specified().
+ (WebCore::RenderReplaced::calcReplacedWidth): Moved from RenderVideo all the way
+ up here so other replaced objects could use this logic.
+ (WebCore::RenderReplaced::calcReplacedHeight): Ditto.
+ (WebCore::RenderReplaced::calcAspectRatioWidth): Ditto.
+ (WebCore::RenderReplaced::calcAspectRatioHeight): Ditto.
+ (WebCore::RenderReplaced::calcPrefWidths): Replaced with the RenderImage version
+ of the logic.
+ (WebCore::RenderReplaced::setIntrinsicSize): Added an assertion.
+ * rendering/RenderReplaced.h:
+ (WebCore::RenderReplaced::minimumReplacedHeight): Promoted from private to protected
+ to allow RenderVideo to call through.
+ (WebCore::RenderReplaced::setHasIntrinsicSize): Added this setter.
+ * rendering/RenderVideo.cpp:
+ (WebCore::RenderVideo::updateIntrinsicSize): Factor zoom into the intrinsic size,
+ the way other RenderReplaced objects do.
+ (WebCore::RenderVideo::calcReplacedWidth): Invoke the RenderReplaced implementation,
+ which matches what used to be here, skipping over the RenderImage implementation.
+ (WebCore::RenderVideo::calcReplacedHeight): Ditto.
+ (WebCore::RenderVideo::minimumReplacedHeight): Ditto.
+ * rendering/RenderVideo.h:
+
+2010-09-17 Darin Adler <darin@apple.com>
+
+ Build fix for platforms that compile Touch.
+
+ * dom/Touch.cpp:
+ (WebCore::contentsX):
+ (WebCore::contentsY):
+ Get zoom factor from Frame rather than FrameView.
+
+2010-09-17 Darin Adler <darin@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ REGRESSION (r60104): Zoom level is unexpectedly reset on page reload
+ https://bugs.webkit.org/show_bug.cgi?id=42863
+
+ Moved zoom level back from FrameView to Frame.
+ I had forgotten that FrameView's lifetime is much shorter than
+ Frame's, and until that is fixed it's best to leave this on Frame.
+
+ * WebCore.exp.in: Updated.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::styleForDocument):
+ (WebCore::CSSStyleSelector::applyProperty):
+ (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize):
+ * dom/Document.cpp:
+ (WebCore::Document::nodesFromRect):
+ (WebCore::Document::elementFromPoint):
+ (WebCore::Document::caretRangeFromPoint):
+ * dom/MouseRelatedEvent.cpp:
+ (WebCore::contentsX):
+ (WebCore::contentsY):
+ (WebCore::pageZoomFactor):
+ * dom/Node.cpp:
+ (WebCore::Node::dispatchMouseEvent):
+ (WebCore::Node::dispatchWheelEvent):
+ * html/HTMLBodyElement.cpp:
+ (WebCore::adjustForZoom):
+ (WebCore::HTMLBodyElement::scrollLeft):
+ (WebCore::HTMLBodyElement::setScrollLeft):
+ (WebCore::HTMLBodyElement::scrollTop):
+ (WebCore::HTMLBodyElement::setScrollTop):
+ (WebCore::HTMLBodyElement::scrollHeight):
+ (WebCore::HTMLBodyElement::scrollWidth):
+ * html/ImageDocument.cpp:
+ (WebCore::pageZoomFactor):
+ (WebCore::ImageDocument::scale):
+ (WebCore::ImageDocument::imageFitsInWindow):
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::innerHeight):
+ (WebCore::DOMWindow::innerWidth):
+ (WebCore::DOMWindow::scrollX):
+ (WebCore::DOMWindow::scrollY):
+ (WebCore::DOMWindow::scrollTo):
+ * page/DragController.cpp:
+ (WebCore::elementUnderMouse):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::zoomFactor):
+ * svg/SVGSVGElement.cpp:
+ (WebCore::SVGSVGElement::currentScale):
+ (WebCore::SVGSVGElement::setCurrentScale):
+ Get zoom factor from Frame rather than FrameView.
+
+ * page/Frame.cpp:
+ (WebCore::parentPageZoomFactor): Moved back here from FrameView.
+ (WebCore::parentTextZoomFactor): Ditto.
+ (WebCore::Frame::Frame): Ditto.
+ (WebCore::Frame::setPageZoomFactor): Ditto.
+ (WebCore::Frame::setTextZoomFactor): Ditto.
+ (WebCore::Frame::setPageAndTextZoomFactors): Ditto.
+
+ * page/Frame.h: Moved functions and data for zooming back here
+ from FrameView.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::FrameView):
+ * page/FrameView.h:
+ Removed code from here.
+
+2010-09-17 Matthew Delaney <mdelaney@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Reduce minimum DOMTimer interval
+ https://bugs.webkit.org/show_bug.cgi?id=45362
+
+ Reduced the minimum allowed DOMTimer interval to 4ms. This has us matching Chrome,
+ which hasn't had any problem with 4ms in the past 2 years, as well as increasing our
+ performance on perf tests that have tight frequent loops such as canvas "animation"
+ performance tests.
+
+ No new tests added. Can't reliably instrument a test in javascript to verify that
+ the minimum clamped interval time is in fact 4ms.
+
+ * WebCore.exp.in:
+ * page/DOMTimer.cpp: Removed old comments.
+ * page/DOMTimer.h: Removed old comments.
+ * page/Settings.cpp: Exposted new method to set minimum DOMTimer interval.
+ * page/Settings.h:
+
+2010-09-17 Marc-Antoine Ruel <maruel@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ [Chromium] Split webcore_platform off webcore_remaining
+
+ Further reduce webcore_remaining size by moving platform/ code in its
+ own static libary.
+ https://bugs.webkit.org/show_bug.cgi?id=45915
+
+ * WebCore.gyp/WebCore.gyp:
+
+2010-09-13 Matt Perry <mpcomplete@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Have V8DOMWindowShell ask the embedder whether to run a V8 extension
+ in a particular script context.
+ https://bugs.webkit.org/show_bug.cgi?id=45721
+
+ * bindings/v8/V8DOMWindowShell.cpp:
+ (WebCore::V8DOMWindowShell::createNewContext):
+ * bindings/v8/V8Proxy.cpp:
+ (WebCore::V8Proxy::registeredExtensionWithV8):
+ (WebCore::V8Proxy::registerExtension):
+ * bindings/v8/V8Proxy.h:
+ * loader/EmptyClients.h:
+ (WebCore::EmptyFrameLoaderClient::allowScriptExtension):
+ * loader/FrameLoaderClient.h:
+
+2010-09-17 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ REGRESSION (r66711): Plug-in replacement text is never shown
+ https://bugs.webkit.org/show_bug.cgi?id=45997
+ <rdar://problem/8446766>
+
+ Don't return when the plug-in has replacement text.
+
+ * rendering/RenderEmbeddedObject.cpp:
+ (WebCore::RenderEmbeddedObject::paintReplaced):
+
+2010-09-17 Lucas De Marchi <lucas.demarchi@profusion.mobi>
+
+ Unreviewed, build fix. Add files missed in r67704.
+
+ * CMakeLists.txt:
+
+2010-09-17 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Chris Marrin.
+
+ Remove scroll and clip layers for WKCACFLayerRenderer
+ https://bugs.webkit.org/show_bug.cgi?id=45922
+
+ WKCACFLayerRenderer no longer needs its own layers for managing scrolling
+ and clipping, because RenderLayerCompositor provides this functionality.
+
+ * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp:
+ (WebCore::MediaPlayerPrivateFullscreenWindow::setRootChildLayer): Remove call to setScrollFrame().
+ (WebCore::MediaPlayerPrivateFullscreenWindow::wndProc): Ditto.
+
+ * platform/graphics/win/WKCACFLayerRenderer.cpp: Remove references to scroll and clip layers
+ (WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer):
+ (WebCore::WKCACFLayerRenderer::setRootChildLayer):
+ (WebCore::WKCACFLayerRenderer::destroyRenderer):
+ (WebCore::WKCACFLayerRenderer::resize):
+ * platform/graphics/win/WKCACFLayerRenderer.h:
+
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::layerTreeAsText): Dump the layers from the root platform layer.
+ (WebCore::RenderLayerCompositor::requiresScrollLayer): On Windows,
+ always say yes.
+
+2010-09-17 Jian Li <jianli@chromium.org>
+
+ Reviewed by Dmitry Titov.
+
+ createBlobURL with no argument causes crash.
+ https://bugs.webkit.org/show_bug.cgi?id=45880
+
+ The fix is to check if the passing blob argument is NULL or not.
+
+ Test: fast/files/create-blob-url-crash.html
+
+ * dom/ScriptExecutionContext.cpp:
+ (WebCore::ScriptExecutionContext::createPublicBlobURL):
+ * page/DOMWindow.idl: Add attribute to convert null string to undefined.
+
+2010-09-17 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Add WebKitAccelerated2dCanvasEnabled flag to WebKit for Mac
+ https://bugs.webkit.org/show_bug.cgi?id=45911
+
+ * WebCore.exp.in:
+
+2010-09-17 Tony Gentilcore <tonyg@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ ASSERTION FAILED: m_loadEventDelayCount
+ https://bugs.webkit.org/show_bug.cgi?id=45790
+
+ * dom/AsyncScriptRunner.cpp:
+ (WebCore::AsyncScriptRunner::timerFired): Protect document before we go running scripts.
+
+2010-09-17 Stephen White <senorblanco@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [CHROMIUM] GPU-accelerated canvas should work in test_shell.
+ https://bugs.webkit.org/show_bug.cgi?id=45968
+
+ In order for the shaders in GPU-accelerated canvas to work in both the
+ GraphicsContext3D / GLES2 path as well as chromium's test_shell (which
+ passes them to the Mesa backend unmodified), the precision specifiers
+ in the fragment shader have to be wrapped in #if GL_ES.
+
+ Soon to be covered by many layout tests.
+
+ * platform/graphics/gpu/SolidFillShader.cpp:
+ (WebCore::SolidFillShader::create):
+ * platform/graphics/gpu/TexShader.cpp:
+ (WebCore::TexShader::create):
+
+2010-09-17 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] [REGRESSION] Listbox rendering is incorrect
+ https://bugs.webkit.org/show_bug.cgi?id=45941
+
+ Only apply the shadow tiling optimization to a layer if the GraphicsContext
+ has a shadow.
+
+ This is covered by manual-tests/select-element-type-select.html.
+
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::drawBorderlessRectShadow): Before applying the tiled shadow optimization
+ first check to see if the context has a shadow at all.
+
+2010-09-17 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Oliver Hunt.
+
+ [GTK] FontPlatformDataFreeType should use smart pointers to hold its members
+ https://bugs.webkit.org/show_bug.cgi?id=45917
+
+ Have FontPlatformDataFreeType use smart pointers to hold its reference-counted
+ members. Also move the FcPattern specialization from OwnPtrCairo to PlatformRefPtrCairo
+ as this type is reference-counted.
+
+ No new tests as this should not introduce any functionality changes.
+
+ * platform/graphics/cairo/FontCacheFreeType.cpp:
+ (WebCore::FontCache::getFontDataForCharacters): Updated to reflect smart pointer changes.
+ (WebCore::FontCache::createFontPlatformData): Ditto.
+ * platform/graphics/cairo/FontPlatformDataFreeType.cpp:
+ (WebCore::FontPlatformData::FontPlatformData): Ditto.
+ (WebCore::FontPlatformData::operator=): Ditto.
+ (WebCore::FontPlatformData::~FontPlatformData): Ditto.
+ (WebCore::FontPlatformData::isFixedPitch): Ditto.
+ (WebCore::FontPlatformData::operator==): Ditto.
+ * platform/graphics/cairo/FontPlatformDataFreeType.h:
+ (WebCore::FontPlatformData::FontPlatformData): Ditto.
+ (WebCore::FontPlatformData::scaledFont): Ditto.
+ (WebCore::FontPlatformData::hash): Ditto.
+ (WebCore::FontPlatformData::isHashTableDeletedValue): Ditto.
+ * platform/graphics/cairo/GlyphPageTreeNodeCairo.cpp:
+ (WebCore::GlyphPage::fill): Ditto.
+ * platform/graphics/cairo/OwnPtrCairo.cpp: Removed FcPattern specialization.
+ * platform/graphics/cairo/OwnPtrCairo.h: Ditto.
+ * platform/graphics/cairo/PlatformRefPtrCairo.cpp: Added FcPattern and cairo_scaled_font_t specializations.
+ (WTF::refPlatformPtr): Ditto.
+ (WTF::derefPlatformPtr): Ditto.
+ * platform/graphics/cairo/PlatformRefPtrCairo.h: Ditto.
+ * platform/graphics/cairo/SimpleFontDataCairo.cpp:
+ (WebCore::SimpleFontData::platformInit): Updated to reflect smart pointer changes.
+ (WebCore::SimpleFontData::containsCharacters): Ditto.
+ (WebCore::SimpleFontData::platformWidthForGlyph): Ditto.
+ * platform/graphics/gtk/FontGtk.cpp:
+ (WebCore::setPangoAttributes): Ditto.
+
+2010-09-14 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: show status message below call stack when debugger is paused on DOM breakpoint
+ https://bugs.webkit.org/show_bug.cgi?id=45114
+
+ * English.lproj/localizedStrings.js:
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::performSearch):
+ (WebCore::InspectorDOMAgent::shouldBreakOnNodeInsertion):
+ (WebCore::InspectorDOMAgent::shouldBreakOnNodeRemoval):
+ (WebCore::InspectorDOMAgent::shouldBreakOnAttributeModification):
+ (WebCore::InspectorDOMAgent::descriptionForDOMEvent):
+ * inspector/InspectorDOMAgent.h:
+ * inspector/InspectorDebuggerAgent.cpp:
+ (WebCore::InspectorDebuggerAgent::didPause):
+ * inspector/front-end/CallStackSidebarPane.js:
+ (WebInspector.CallStackSidebarPane):
+ (WebInspector.CallStackSidebarPane.prototype.updateStatus.formatters.s):
+ (WebInspector.CallStackSidebarPane.prototype.updateStatus.append):
+ (WebInspector.CallStackSidebarPane.prototype.updateStatus):
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel.prototype.linkifyNodeById):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype.debuggerPaused):
+ * inspector/front-end/inspector.css:
+ (.pane > .body .placard + .info):
+ * inspector/front-end/inspector.js:
+ (WebInspector.pausedScript):
+ (WebInspector.formatLocalized):
+
+2010-09-17 Johnny Ding <jnd@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Stop history reload navigation to bypass WebKit's popup blocker.
+ Now history reload can only navigate the page in self frame, no matter
+ what target frame is defined in <base> and no new window can be created.
+ https://bugs.webkit.org/show_bug.cgi?id=45369
+
+ Test: fast/events/popup-blocked-from-history-reload.html
+
+ * loader/RedirectScheduler.cpp:
+ (WebCore::ScheduledNavigation::ScheduledNavigation):
+ (WebCore::ScheduledNavigation::wasUserGesture):
+ Move the m_wasUserGesture to base class ScheduledNavigation. Then all
+ asynchronous navigation situations can restore the correct gesture state
+ during the real navigation process.
+ (WebCore::ScheduledURLNavigation::ScheduledURLNavigation):
+ (WebCore::ScheduledURLNavigation::fire):
+ (WebCore::ScheduledURLNavigation::referrer):
+ (WebCore::ScheduledHistoryNavigation::ScheduledHistoryNavigation):
+ (WebCore::ScheduledHistoryNavigation::fire):
+ (WebCore::ScheduledFormSubmission::ScheduledFormSubmission):
+ (WebCore::ScheduledFormSubmission::fire):
+ (WebCore::RedirectScheduler::scheduleHistoryNavigation):
+
+2010-09-16 Vangelis Kokkevis <vangelis@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [chromium] Clip the update region of an ImageLayerChromium to actual size
+ of the image bitmap to prevent uninitialized memory access when uploading
+ the dirty region to the texture.
+ https://bugs.webkit.org/show_bug.cgi?id=45937
+
+
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::updateContents):
+
+2010-09-17 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Reviewed by David Hyatt.
+
+ Remove extraneous RenderObject traversal.
+ https://bugs.webkit.org/show_bug.cgi?id=45821
+
+ This code always exits in the first iteration of the loop,
+ because in the context of this call, node->renderer()->node() != 0
+ is always true.
+
+ No behavior change, covered by existing tests.
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::canMouseDownStartSelect): Removed the loop.
+ (WebCore::EventHandler::canMouseDragExtendSelect): Ditto.
+
+2010-09-17 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: FrameLoader::loadedResourceFromMemoryCache reports
+ resource as not cached to InspectorController.
+ https://bugs.webkit.org/show_bug.cgi?id=45961
+
+ Web Inspector: FrameLoader::loadedResourceFromMemoryCache reports
+ resource as not cached to InspectorController.
+ There is one path in control flow that leads to resources being
+ reported as not cached. Patch to follow.
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::markResourceAsCached):
+ * inspector/InspectorController.h:
+ * inspector/InspectorResource.cpp:
+ (WebCore::InspectorResource::markAsCached):
+ (WebCore::InspectorResource::updateResponse):
+ * inspector/InspectorResource.h:
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::loadedResourceFromMemoryCache):
+
+2010-09-17 Alexander Pavlov <apavlov@chromium.org>
+
+ Unreviewed, build fix. Add files missed in the previous commit.
+
+ * GNUmakefile.am:
+ * css/CSSPropertySourceData.cpp: Added.
+ (WebCore::SourceRange::SourceRange):
+ (WebCore::SourceRange::operator=):
+ (WebCore::CSSPropertySourceData::CSSPropertySourceData):
+ (WebCore::CSSPropertySourceData::operator=):
+ (WebCore::CSSPropertySourceData::toString):
+ (WebCore::CSSPropertySourceData::hash):
+ (WebCore::CSSPropertySourceData::init):
+ * css/CSSPropertySourceData.h: Added.
+ (WebCore::CSSPropertySourceData::~CSSPropertySourceData):
+ (WebCore::CSSStyleSourceData::create):
+
+2010-09-15 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Provide source-based properties for style declarations to CSSParser clients
+
+ This change:
+ - Enables InspectorCSSStore to extract CSS stylesheet text for all source-based stylesheets,
+ even with the resource tracking turned off.
+ - Adds to CSSParser a capability of source-related style declaration data extraction:
+ * Start/end source offsets for a declaration, relative to the parent stylesheet start or the "style" attribute value.
+ * Start/end source offsets for CSS properties, relative to the declaration start.
+ * CSS property data: name, value, priority, WebCore parsability (i.e. if the property is understood by WebCore).
+ - Provides the extracted data to the WebInspector frontend via InspectorDOMAgent::getStyleSourceData().
+ https://bugs.webkit.org/show_bug.cgi?id=44949
+
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * css/CSSGrammar.y:
+ * css/CSSMutableStyleDeclaration.h:
+ (WebCore::CSSMutableStyleDeclaration::node):
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::CSSParser):
+ (WebCore::CSSParser::parseSheet):
+ (WebCore::CSSParser::parseDeclaration):
+ (WebCore::CSSParser::createStyleRule):
+ (WebCore::CSSParser::markRuleBodyStart):
+ (WebCore::CSSParser::markPropertyStart):
+ (WebCore::CSSParser::markPropertyEnd):
+ * css/CSSParser.h:
+ (WebCore::CSSParser::resetPropertyMarks):
+ * css/CSSPropertySourceData.cpp: Added.
+ (WebCore::SourceRange::SourceRange):
+ (WebCore::SourceRange::operator=):
+ (WebCore::CSSPropertySourceData::CSSPropertySourceData):
+ (WebCore::CSSPropertySourceData::operator=):
+ (WebCore::CSSPropertySourceData::toString):
+ (WebCore::CSSPropertySourceData::hash):
+ (WebCore::CSSPropertySourceData::init):
+ * css/CSSPropertySourceData.h: Added.
+ (WebCore::CSSPropertySourceData::~CSSPropertySourceData):
+ (WebCore::CSSStyleSourceData::create):
+ * inspector/Inspector.idl:
+ * inspector/InspectorCSSStore.cpp:
+ (WebCore::InspectorCSSStore::reset):
+ (WebCore::InspectorCSSStore::styleSheetText):
+ (WebCore::InspectorCSSStore::resourceStyleSheetText):
+ (WebCore::InspectorCSSStore::inlineStyleSheetText):
+ (WebCore::InspectorCSSStore::getStyleSourceData):
+ (WebCore::InspectorCSSStore::extractRanges):
+ (WebCore::InspectorCSSStore::getStyleAttributeRanges):
+ (WebCore::InspectorCSSStore::getParentStyleSheet):
+ (WebCore::InspectorCSSStore::inlineStyleElement):
+ * inspector/InspectorCSSStore.h:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::resourceContentForURL):
+ * inspector/InspectorController.h:
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::getStyleSourceData):
+ (WebCore::InspectorDOMAgent::buildObjectForStyle):
+ * inspector/InspectorDOMAgent.h:
+
+2010-09-17 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Show node description in inspector highlight
+ https://bugs.webkit.org/show_bug.cgi?id=20930
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::drawNodeHighlight):
+ (WebCore::InspectorController::drawElementTitle):
+ * inspector/InspectorController.h:
+
+2010-09-16 takano takumi <takano1@asia.apple.com>
+
+ Reviewed by Kent Tamura.
+
+ https://bugs.webkit.org/show_bug.cgi?id=45020
+ Support "block-flow" and "writing-mode": interpret properties into RenderStyle
+
+ Fixed a regression in SVG test introduced by my previous change.
+
+ * css/CSSPrimitiveValueMappings.h:
+ (WebCore::CSSPrimitiveValue::operator EWritingMode):
+ * css/SVGCSSParser.cpp:
+ (WebCore::CSSParser::parseSVGValue):
+
+2010-09-16 Kenneth Russell <kbr@google.com>
+
+ Reviewed by James Robinson.
+
+ Add entry points to GraphicsContext3D needed for Chromium compositor port
+ https://bugs.webkit.org/show_bug.cgi?id=45939
+
+ Added entry points for two Chromium-specific extensions, and added
+ a flag to the GraphicsContext3D constructor, currently unsupported
+ by all ports (including Chromium), indicating whether the context
+ should render directly to the passed HostWindow or off-screen per
+ the current semantics. The switch to use GraphicsContext3D in
+ Chromium's compositor will follow in a subsequent patch.
+
+ No new tests; functionality is unchanged. Built and tested
+ Chromium and WebKit on Mac OS X.
+
+ * platform/graphics/GraphicsContext3D.cpp:
+ (WebCore::GraphicsContext3D::supportsMapSubCHROMIUM):
+ (WebCore::GraphicsContext3D::mapBufferSubDataCHROMIUM):
+ (WebCore::GraphicsContext3D::unmapBufferSubDataCHROMIUM):
+ (WebCore::GraphicsContext3D::mapTexSubImage2DCHROMIUM):
+ (WebCore::GraphicsContext3D::unmapTexSubImage2DCHROMIUM):
+ (WebCore::GraphicsContext3D::supportsCopyTextureToParentTextureCHROMIUM):
+ (WebCore::GraphicsContext3D::copyTextureToParentTextureCHROMIUM):
+ * platform/graphics/GraphicsContext3D.h:
+ * platform/graphics/mac/GraphicsContext3DMac.mm:
+ (WebCore::GraphicsContext3D::create):
+ (WebCore::GraphicsContext3D::GraphicsContext3D):
+ * platform/graphics/qt/GraphicsContext3DQt.cpp:
+ (WebCore::GraphicsContext3D::create):
+ (WebCore::GraphicsContext3D::GraphicsContext3D):
+
+2010-09-16 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by James Robinson.
+
+ In layerTreeAsText output, avoid printing properties which have their default values
+ https://bugs.webkit.org/show_bug.cgi?id=45931
+
+ Don't dump properties that have their default values to simplify output.
+
+ * platform/graphics/GraphicsLayer.cpp:
+ (WebCore::GraphicsLayer::dumpProperties):
+
+2010-09-16 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Ariya Hidayat.
+
+ [Qt] GraphicsContext: Remove unused variable
+
+ GraphicsContextPlatformPrivate::redirect wasn't used for anything.
+
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContextPlatformPrivate::p):
+ (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
+
+2010-09-16 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Ariya Hidayat.
+
+ [Qt] Remove unnecessary QPainter::clipPath() call in TransparencyLayer()
+ https://bugs.webkit.org/show_bug.cgi?id=45923
+
+ QPainter::clipPath() can be very expensive, so use QPainter::hasClipping()
+ instead of QPainter::clipPath().isEmpty().
+
+ * platform/graphics/qt/TransparencyLayer.h:
+ (WebCore::TransparencyLayer::TransparencyLayer):
+
+2010-09-16 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Eric Seidel.
+
+ Fix for regression from my previous check-in. Make sure not to move the LayoutRepainter line
+ below the setHeight(0) call. This meant it snagged the wrong rectangle and we ended up repainting
+ the world.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlock):
+
+2010-09-16 takano takumi <takano1@asia.apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ https://bugs.webkit.org/show_bug.cgi?id=45020
+ Support "block-flow" and "writing-mode": interpret properties into RenderStyle
+
+ Added code that interprets "block-flow" property and "writing-mode" property settings
+ into a RenderStyle object.
+
+ Test: fast/text/international/block-flow-parser-test.html
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ * css/CSSPrimitiveValueMappings.h:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ (WebCore::CSSPrimitiveValue::operator EBlockFlowDirection):
+ * css/CSSPropertyNames.in:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ * css/CSSValueKeywords.in:
+ * css/SVGCSSValueKeywords.in:
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::diff):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::setBitDefaults):
+ (WebCore::InheritedFlags::blockFlow):
+ (WebCore::InheritedFlags::setBlockFlow):
+ (WebCore::InheritedFlags::initialBlockFlow):
+ * rendering/style/RenderStyleConstants.h:
+
+2010-09-16 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Implement dissolveDragImageToFraction
+ https://bugs.webkit.org/show_bug.cgi?id=45826
+
+ Convert the drag image from a GdkPixbuf to a Cairo surface. Not only
+ might this allow code to be shared between Cairo ports it prevents a
+ full data copy when the image is not resized and makes the implementation
+ of dissolveDragImageToFraction more straight-forward.
+
+ This feature is covered by manual-tests/drag-image.html.
+
+ * page/gtk/DragControllerGtk.cpp:
+ (WebCore::DragController::maxDragImageSize): Make the maximum size of the drag
+ image a little smaller.
+ * platform/DragImage.h: Changed the drag image type to be a cairo_surface_t*.
+ * platform/gtk/DragImageGtk.cpp:
+ (WebCore::dragImageSize): Reimplemented to reflect new drag image type.
+ (WebCore::deleteDragImage): Ditto.
+ (WebCore::scaleDragImage): Ditto.
+ (WebCore::dissolveDragImageToFraction): Filled the stub of this function.
+ (WebCore::createDragImageFromImage): Reimplemented to reflect new drag image type.
+ * platform/gtk/GtkVersioning.h: Added definition for gtk_widget_get_realized for older GTK+s.
+
+2010-09-15 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=38402, paginate columns at layout time rather than at paint time.
+
+ This patch adds support for column breaking at layout time rather than at paint time. New variables have been
+ added to LayoutState and to ColumnInfo to track column information while laying out.
+
+ The basic idea behind this patch is to retain the columns' paint-time hackery of transforming one long vertical strip
+ into multiple columns. Now, however, layout is aware of the columns and will move objects up and down vertically in order
+ to ensure they don't intersect a break.
+
+ Many new tests added in fast/multicol and new results added for existing fast/multicol tests.
+
+ * rendering/ColumnInfo.h:
+ (WebCore::ColumnInfo::ColumnInfo):
+ (WebCore::ColumnInfo::columnCount):
+ (WebCore::ColumnInfo::columnHeight):
+ (WebCore::ColumnInfo::setColumnCountAndHeight):
+ (WebCore::ColumnInfo::setColumnHeight):
+ (WebCore::ColumnInfo::updateMinimumColumnHeight):
+ (WebCore::ColumnInfo::minimumColumnHeight):
+ (WebCore::ColumnInfo::forcedBreaks):
+ (WebCore::ColumnInfo::forcedBreakOffset):
+ (WebCore::ColumnInfo::maximumDistanceBetweenForcedBreaks):
+ (WebCore::ColumnInfo::clearForcedBreaks):
+ (WebCore::ColumnInfo::addForcedBreak):
+ * rendering/LayoutState.cpp:
+ (WebCore::LayoutState::LayoutState):
+ (WebCore::LayoutState::clearPaginationInformation):
+ (WebCore::LayoutState::pageY):
+ (WebCore::LayoutState::addForcedColumnBreak):
+ * rendering/LayoutState.h:
+ (WebCore::LayoutState::LayoutState):
+ (WebCore::LayoutState::paginatingColumns):
+ (WebCore::LayoutState::paginated):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::RenderBlock):
+ (WebCore::RenderBlock::~RenderBlock):
+ (WebCore::RenderBlock::layoutBlock):
+ (WebCore::RenderBlock::collapseMargins):
+ (WebCore::RenderBlock::estimateVerticalPosition):
+ (WebCore::RenderBlock::layoutBlockChild):
+ (WebCore::RenderBlock::layoutPositionedObjects):
+ (WebCore::RenderBlock::paintColumnRules):
+ (WebCore::RenderBlock::paintColumnContents):
+ (WebCore::RenderBlock::paintChildren):
+ (WebCore::RenderBlock::insertFloatingObject):
+ (WebCore::RenderBlock::removeFloatingObjects):
+ (WebCore::RenderBlock::positionNewFloats):
+ (WebCore::RenderBlock::positionNewFloatOnLine):
+ (WebCore::RenderBlock::lowestPosition):
+ (WebCore::RenderBlock::rightmostPosition):
+ (WebCore::RenderBlock::leftmostPosition):
+ (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
+ (WebCore::RenderBlock::markDescendantBlocksAndLinesForLayout):
+ (WebCore::RenderBlock::hitTestColumns):
+ (WebCore::RenderBlock::setDesiredColumnCountAndWidth):
+ (WebCore::RenderBlock::columnCount):
+ (WebCore::RenderBlock::columnRectAt):
+ (WebCore::RenderBlock::layoutColumns):
+ (WebCore::RenderBlock::adjustPointToColumnContents):
+ (WebCore::RenderBlock::adjustRectForColumns):
+ (WebCore::RenderBlock::adjustForColumns):
+ (WebCore::RenderBlock::setMaxTopMargins):
+ (WebCore::RenderBlock::setMaxBottomMargins):
+ (WebCore::RenderBlock::setPaginationStrut):
+ (WebCore::RenderBlock::setPageY):
+ (WebCore::RenderBlock::nextPageTop):
+ (WebCore::inNormalFlow):
+ (WebCore::RenderBlock::applyBeforeBreak):
+ (WebCore::RenderBlock::applyAfterBreak):
+ (WebCore::RenderBlock::adjustForUnsplittableChild):
+ (WebCore::RenderBlock::adjustLinePositionForPagination):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::paginationStrut):
+ (WebCore::RenderBlock::pageY):
+ (WebCore::RenderBlock::maxTopPosMargin):
+ (WebCore::RenderBlock::maxTopNegMargin):
+ (WebCore::RenderBlock::maxBottomPosMargin):
+ (WebCore::RenderBlock::maxBottomNegMargin):
+ (WebCore::RenderBlock::initMaxMarginValues):
+ (WebCore::RenderBlock::FloatingObject::FloatingObject):
+ (WebCore::RenderBlock::FloatingObject::type):
+ (WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData):
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::layoutInlineChildren):
+ (WebCore::RenderBlock::determineStartPosition):
+ (WebCore::RenderBlock::skipLeadingWhitespace):
+ (WebCore::RenderBlock::findNextLineBreak):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::mapLocalToContainer):
+ (WebCore::RenderBox::computeRectForRepaint):
+ (WebCore::RenderBox::markDescendantBlocksAndLinesForLayout):
+ * rendering/RenderBox.h:
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::layoutBlock):
+ (WebCore::RenderFlexibleBox::layoutHorizontalBox):
+ (WebCore::RenderFlexibleBox::layoutVerticalBox):
+ * rendering/RenderFlexibleBox.h:
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::computeRectForRepaint):
+ (WebCore::RenderInline::mapLocalToContainer):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::updatePagination):
+ (WebCore::RenderLayer::paintChildLayerIntoColumns):
+ (WebCore::RenderLayer::hitTestChildLayerColumns):
+ * rendering/RenderLineBoxList.cpp:
+ (WebCore::RenderLineBoxList::paint):
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::RenderTable):
+ (WebCore::RenderTable::layout):
+ * rendering/RenderTable.h:
+ * rendering/RenderTableRow.cpp:
+ (WebCore::RenderTableRow::layout):
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::layoutRows):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::RenderView):
+ (WebCore::RenderView::pushLayoutState):
+ * rendering/RenderView.h:
+ (WebCore::RenderView::setTruncatedAt):
+ (WebCore::RenderView::pushLayoutState):
+ (WebCore::RenderView::popLayoutState):
+ (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
+ (WebCore::LayoutStateMaintainer::push):
+ * rendering/RootInlineBox.h:
+ (WebCore::RootInlineBox::RootInlineBox):
+ (WebCore::RootInlineBox::paginationStrut):
+ (WebCore::RootInlineBox::setPaginationStrut):
+
+2010-09-16 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Fix debug crash in HTMLFrameOwnerElement caused by content frame being used after destruction.
+ https://bugs.webkit.org/show_bug.cgi?id=45737
+
+ Test: fast/frames/frame-limit.html
+
+ * html/HTMLFrameOwnerElement.cpp:
+ (WebCore::HTMLFrameOwnerElement::willRemove):
+
+2010-09-16 Thomas Zander <t.zander@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ https://bugs.webkit.org/show_bug.cgi?id=45878
+
+ [Qt] Fixed incorrect Symbian scoping.
+
+ The missing install functionality is only true for mmp based systems.
+
+ * WebCore.pro: limit functionality to mmp systems.
+
+2010-09-16 Anders Carlsson <andersca@apple.com>
+
+ Fix clang build.
+
+ * page/animation/AnimationBase.h:
+ Fix struct/class mismatch.
+
+2010-09-16 Darin Adler <darin@apple.com>
+
+ Reviewed by Andreas Kling.
+
+ Reduce use of HTMLInputElement::inputType so we can remove it later
+ https://bugs.webkit.org/show_bug.cgi?id=45903
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::isFileUploadButton): Use isFileUpload.
+ (WebCore::AccessibilityRenderObject::isInputImage): Use isImageButton.
+ (WebCore::AccessibilityRenderObject::determineAccessibilityRole): Use
+ isCheckbox and isRadioButton.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::adjustRenderStyle): Use isImageButton.
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::setBaseWritingDirection): Use isTextField.
+
+ * editing/ReplaceSelectionCommand.cpp:
+ (WebCore::ReplaceSelectionCommand::doApply): Use isPasswordField.
+
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::isInPasswordField): Use isPasswordField.
+
+ * html/HTMLInputElement.h: Added isFileUpload, isImageButton, and isSubmitButton.
+
+ * page/Chrome.cpp:
+ (WebCore::Chrome::setToolTip): Use isSubmitButton and isFileUpload.
+
+ * page/DragController.cpp:
+ (WebCore::asFileInput): Use isFileUpload.
+
+ * page/EventHandler.cpp:
+ (WebCore::isSubmitImage): Use isImageButton.
+
+ * rendering/RenderFileUploadControl.cpp:
+ (WebCore::RenderFileUploadControl::updateFromElement): Use isFileUpload.
+
+2010-09-16 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: quick fix for crash in InspectorController::loadBreakpoints caused by empty main resource
+ https://bugs.webkit.org/show_bug.cgi?id=45901
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::breakpointsSettingKey):
+
+2010-09-16 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Prevent responseReceivedTime from being > endTime in case mixture of WebCore and Network stack info is used.
+ https://bugs.webkit.org/show_bug.cgi?id=45892
+
+ * inspector/InspectorResource.cpp:
+ (WebCore::InspectorResource::endTiming):
+
+2010-09-16 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: move resourceTracking flag under control of BackendSettings.
+
+ Four Inspector API methods about resourceTracking flag were removed.
+ Actual state of the flag is transfered as the response of setResourceTracking request.
+ Initial state of the flag on the frontend side is obtained from settings.backend.
+
+ https://bugs.webkit.org/show_bug.cgi?id=45887
+
+ * inspector/Inspector.idl:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::getBackendSettings):
+ (WebCore::InspectorController::populateScriptObjects):
+ (WebCore::InspectorController::setResourceTracking):
+ * inspector/InspectorController.h:
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel.prototype._toggleResourceTracking):
+ * inspector/front-end/Settings.js:
+ (WebInspector.Settings.initialize.populateBackendSettings):
+ (WebInspector.Settings.initialize):
+ * inspector/front-end/inspector.js:
+
+2010-09-16 Jian Li <jianli@chromium.org>
+
+ Reviewed by David Levin.
+
+ BlobData should be copied for it to be used cross-thread in ThreadableBlobRegistry.
+ https://bugs.webkit.org/show_bug.cgi?id=45909
+
+ * fileapi/ThreadableBlobRegistry.cpp:
+ (WebCore::BlobRegistryContext::BlobRegistryContext):
+
+2010-09-16 Daniel Cheng <dcheng@chromium.org>
+
+ Reviewed by Simon Fraser.
+
+ [chromium] Fix incorrect drag node/selection painting.
+ https://bugs.webkit.org/show_bug.cgi?id=45573
+
+ Drag selections were being incorrectly clipped when dragging a selection
+ near the bottom of a page that was taller than the viewport. To fix
+ this, we use paintContents() instead of paint().
+
+ * page/chromium/FrameChromium.cpp:
+ (WebCore::Frame::nodeImage):
+ (WebCore::Frame::dragImageForSelection):
+
+2010-09-16 Daniel Cheng <dcheng@chromium.org>
+
+ Reviewed by Tony Chang.
+
+ Fix incorrect usage of dissolveDragImageToFraction().
+ https://bugs.webkit.org/show_bug.cgi?id=45835
+
+ createDragImageForSelection() was ignoring the return value of
+ dissolveDragImageToFraction(). This didn't happen to crash on most
+ platforms, since most implementations simply modified the image that was
+ passed in. However, Chromium Mac's implementation actually creates a new
+ image and returns that instead. This caused us to crash when copying the
+ image from the renderer to the browser process, since the memory had
+ already been freed.
+
+ * manual-tests/selection-drag-crash.html: Added.
+ * platform/DragImage.cpp:
+ (WebCore::createDragImageForSelection):
+
+2010-09-16 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r67628.
+ http://trac.webkit.org/changeset/67628
+ https://bugs.webkit.org/show_bug.cgi?id=45904
+
+ broke the build (Requested by eric_carlson on #webkit).
+
+ * page/ContextMenuController.cpp:
+ (WebCore::ContextMenuController::contextMenuItemSelected):
+ * platform/ContextMenu.cpp:
+ (WebCore::ContextMenu::populate):
+ (WebCore::ContextMenu::checkOrEnableIfNeeded):
+ * platform/ContextMenuItem.h:
+ * platform/LocalizationStrategy.h:
+ * platform/LocalizedStrings.cpp:
+ * platform/LocalizedStrings.h:
+ * platform/android/LocalizedStringsAndroid.cpp:
+ * platform/brew/LocalizedStringsBrew.cpp:
+ * platform/efl/LocalizedStringsEfl.cpp:
+ * platform/gtk/ContextMenuItemGtk.cpp:
+ (WebCore::gtkStockIDFromContextMenuAction):
+ * platform/gtk/LocalizedStringsGtk.cpp:
+ * platform/haiku/LocalizedStringsHaiku.cpp:
+ * platform/wx/LocalizedStringsWx.cpp:
+ * rendering/HitTestResult.cpp:
+ (WebCore::HitTestResult::absoluteMediaURL):
+ * rendering/HitTestResult.h:
+
+2010-09-16 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Simon Fraser.
+
+ CSS: Fix crash in getTimingFunctionValue()
+ https://bugs.webkit.org/show_bug.cgi?id=45896
+
+ Use a RefPtr to avoid deleting the TimingFunction prematurely.
+
+ This is covered by existing tests, e.g transitions/inherit-other-props.html
+ but will only actually crash on picky platforms (or in valgrind.)
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::getTimingFunctionValue):
+
+2010-09-16 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: prevent resource timing popover from having scrollers.
+ https://bugs.webkit.org/show_bug.cgi?id=45883
+
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel.prototype._showPopover):
+
+2010-09-15 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Eric Carlson.
+
+ [GTK] enhanced context menu for media elements
+ https://bugs.webkit.org/show_bug.cgi?id=45021
+
+ New items in the media Element context menu:
+ - play/pause
+ - mute/unmute
+ - controls display control
+ - switch to fullscreen (for video only)
+ - loop playback control
+ - copy media url to clipboard
+ - open in new window
+
+ Test: media/context-menu-actions.html
+
+ * page/ContextMenuController.cpp:
+ (WebCore::ContextMenuController::contextMenuItemSelected):
+ * platform/ContextMenu.cpp:
+ (WebCore::ContextMenu::populate):
+ (WebCore::ContextMenu::checkOrEnableIfNeeded):
+ * platform/ContextMenuItem.h:
+ * platform/LocalizationStrategy.h:
+ * platform/LocalizedStrings.cpp:
+ (WebCore::contextMenuItemTagOpenMediaInNewWindow):
+ (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
+ (WebCore::contextMenuItemTagToggleMediaControls):
+ (WebCore::contextMenuItemTagToggleMediaLoop):
+ (WebCore::contextMenuItemTagEnterVideoFullscreen):
+ (WebCore::contextMenuItemTagMediaPlay):
+ (WebCore::contextMenuItemTagMediaPause):
+ (WebCore::contextMenuItemTagMediaMute):
+ (WebCore::contextMenuItemTagMediaUnMute):
+ * platform/LocalizedStrings.h:
+ * platform/android/LocalizedStringsAndroid.cpp:
+ (WebCore::contextMenuItemTagOpenMediaInNewWindow):
+ (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
+ (WebCore::contextMenuItemTagToggleMediaControls):
+ (WebCore::contextMenuItemTagToggleMediaLoop):
+ (WebCore::contextMenuItemTagEnterVideoFullscreen):
+ (WebCore::contextMenuItemTagMediaPlay):
+ (WebCore::contextMenuItemTagMediaPause):
+ (WebCore::contextMenuItemTagMediaMute):
+ (WebCore::contextMenuItemTagMediaUnMute):
+ * platform/brew/LocalizedStringsBrew.cpp:
+ (WebCore::contextMenuItemTagOpenMediaInNewWindow):
+ (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
+ (WebCore::contextMenuItemTagToggleMediaControls):
+ (WebCore::contextMenuItemTagToggleMediaLoop):
+ (WebCore::contextMenuItemTagEnterVideoFullscreen):
+ (WebCore::contextMenuItemTagMediaPlay):
+ (WebCore::contextMenuItemTagMediaPause):
+ (WebCore::contextMenuItemTagMediaMute):
+ (WebCore::contextMenuItemTagMediaUnMute):
+ * platform/efl/LocalizedStringsEfl.cpp:
+ (WebCore::contextMenuItemTagOpenMediaInNewWindow):
+ (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
+ (WebCore::contextMenuItemTagToggleMediaControls):
+ (WebCore::contextMenuItemTagToggleMediaLoop):
+ (WebCore::contextMenuItemTagEnterVideoFullscreen):
+ (WebCore::contextMenuItemTagMediaPlay):
+ (WebCore::contextMenuItemTagMediaPause):
+ (WebCore::contextMenuItemTagMediaMute):
+ (WebCore::contextMenuItemTagMediaUnMute):
+ * platform/gtk/ContextMenuItemGtk.cpp:
+ (WebCore::gtkStockIDFromContextMenuAction):
+ * platform/gtk/LocalizedStringsGtk.cpp:
+ (WebCore::contextMenuItemTagOpenMediaInNewWindow):
+ (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
+ (WebCore::contextMenuItemTagToggleMediaControls):
+ (WebCore::contextMenuItemTagToggleMediaLoop):
+ (WebCore::contextMenuItemTagEnterVideoFullscreen):
+ (WebCore::contextMenuItemTagMediaPlay):
+ (WebCore::contextMenuItemTagMediaPause):
+ (WebCore::contextMenuItemTagMediaMute):
+ (WebCore::contextMenuItemTagMediaUnMute):
+ * platform/haiku/LocalizedStringsHaiku.cpp:
+ (WebCore::contextMenuItemTagOpenMediaInNewWindow):
+ (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
+ (WebCore::contextMenuItemTagToggleMediaControls):
+ (WebCore::contextMenuItemTagToggleMediaLoop):
+ (WebCore::contextMenuItemTagEnterVideoFullscreen):
+ (WebCore::contextMenuItemTagMediaPlay):
+ (WebCore::contextMenuItemTagMediaPause):
+ (WebCore::contextMenuItemTagMediaMute):
+ (WebCore::contextMenuItemTagMediaUnMute):
+ * platform/wx/LocalizedStringsWx.cpp:
+ (WebCore::contextMenuItemTagOpenMediaInNewWindow):
+ (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
+ (WebCore::contextMenuItemTagToggleMediaControls):
+ (WebCore::contextMenuItemTagToggleMediaLoop):
+ (WebCore::contextMenuItemTagEnterVideoFullscreen):
+ (WebCore::contextMenuItemTagMediaPlay):
+ (WebCore::contextMenuItemTagMediaPause):
+ (WebCore::contextMenuItemTagMediaMute):
+ (WebCore::contextMenuItemTagMediaUnMute):
+ * rendering/HitTestResult.cpp:
+ (WebCore::HitTestResult::absoluteMediaURL):
+ (WebCore::HitTestResult::mediaSupportsFullscreen):
+ (WebCore::HitTestResult::mediaElement):
+ (WebCore::HitTestResult::toggleMediaControlsDisplay):
+ (WebCore::HitTestResult::toggleMediaLoopPlayback):
+ (WebCore::HitTestResult::enterFullscreenForVideo):
+ (WebCore::HitTestResult::mediaControlsEnabled):
+ (WebCore::HitTestResult::mediaLoopEnabled):
+ (WebCore::HitTestResult::mediaPlaying):
+ (WebCore::HitTestResult::toggleMediaPlayState):
+ (WebCore::HitTestResult::mediaHasAudio):
+ (WebCore::HitTestResult::mediaMuted):
+ (WebCore::HitTestResult::toggleMediaMuteState):
+ * rendering/HitTestResult.h:
+
+2010-09-16 Tony Gentilcore <tonyg@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Crash in WebCore::FrameLoader::shouldInterruptLoadForXFrameOptions
+ https://bugs.webkit.org/show_bug.cgi?id=45833
+
+ Test: fast/parser/x-frame-options-detached-document-crash.html
+
+ * dom/Document.cpp:
+ (WebCore::Document::processHttpEquiv): Other branches in this method already test for a null frame. So it seems to make sense to test that here as well.
+
+2010-09-16 Vangelis Kokkevis <vangelis@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ [chromium] ImageLayerChromium needs to keep a ref to the Image it uses
+ so that it never tries to access an already destroyed Image.
+ https://bugs.webkit.org/show_bug.cgi?id=45869
+
+ * platform/graphics/chromium/GraphicsLayerChromium.cpp:
+ (WebCore::GraphicsLayerChromium::setContentsToImage):
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::setContents):
+ (WebCore::ImageLayerChromium::updateContents):
+ * platform/graphics/chromium/ImageLayerChromium.h:
+
+2010-09-16 Patrick Gansterer <paroga@paroga.com>
+
+ Reviewed by Adam Roben.
+
+ [WINCE] Add platform-specific Image methods
+ https://bugs.webkit.org/show_bug.cgi?id=28272
+
+ * platform/graphics/wince/ImageWinCE.cpp: Added.
+ (WebCore::RGBA32Buffer::asNewNativeImage):
+ (WebCore::FrameData::clear):
+ (WebCore::BitmapImage::getHBITMAPOfSize):
+ (WebCore::BitmapImage::drawFrameMatchingSourceSize):
+ (WebCore::BitmapImage::draw):
+ (WebCore::Image::drawPattern):
+ (WebCore::BitmapImage::drawPattern):
+ (WebCore::BitmapImage::checkForSolidColor):
+
+2010-09-16 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [REGRESSION] Scripts disappear from scripts panel after navigation
+ https://bugs.webkit.org/show_bug.cgi?id=45890
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::populateScriptObjects):
+ (WebCore::InspectorController::restoreDebugger):
+ (WebCore::InspectorController::restoreProfiler):
+ * inspector/InspectorController.h:
+
+2010-09-16 Satish Sampath <satish@chromium.org>
+
+ Unreviewed, fixing a build break with VS 2008.
+
+ Fix build break, add the namespace in a friend declaration to get MSVC recognize it properly.
+ https://bugs.webkit.org/show_bug.cgi?id=45893
+
+ * fileapi/FileWriter.h:
+
+2010-09-15 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GStreamer] XOverlay API changes break the build
+ https://bugs.webkit.org/show_bug.cgi?id=45810
+
+ Cope with the GStreamer XOverlay API change for the upcoming
+ 0.10.31 version.
+ No new tests, build fix only.
+
+ * platform/graphics/gstreamer/GStreamerGWorld.cpp:
+ (WebCore::GStreamerGWorld::setWindowOverlay):
+
+2010-09-16 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Tor Arne Vestbø.
+
+ [Qt] V8 port: Fix debug build
+
+ Add missing inclusion of <wtf/text/CString.h> where necessary for debug builds.
+
+ * history/PageCache.cpp:
+ * html/HTMLElement.cpp:
+ * html/HTMLMediaElement.cpp:
+ * loader/DocumentLoader.cpp:
+ * loader/icon/IconDatabase.cpp:
+ * loader/icon/IconLoader.cpp:
+ * storage/AbstractDatabase.cpp:
+ * storage/Database.cpp:
+ * storage/DatabaseSync.cpp:
+ * storage/DatabaseTracker.cpp:
+
+2010-09-16 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Adam Barth.
+
+ https://bugs.webkit.org/show_bug.cgi?id=45852
+ Range::selectNode and selectNodeContents misbehave when argument is in another document
+
+ Test: fast/dom/Range/select-node-different-document.html
+
+ There is nothing in DOM Traversal spec that says this shouldn't work, and it does work in
+ Firefox.
+
+ * dom/Range.cpp:
+ (WebCore::Range::setDocument):
+ (WebCore::Range::selectNode):
+ (WebCore::Range::selectNodeContents):
+ * dom/Range.h:
+
+2010-09-16 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: [Resources panel] [HAR] Need a way to save timing data.
+ Added support to export HAR to file from Resources panel (conditional on Preferences)
+ Added support for HARLog (a higher-level aggregate than HAREntry)
+ https://bugs.webkit.org/show_bug.cgi?id=45663
+
+ * English.lproj/localizedStrings.js:
+ * inspector/front-end/HAREntry.js:
+ (WebInspector.HAREntry.prototype.build):
+ (WebInspector.HAREntry.prototype._buildTimings):
+ (WebInspector.HAREntry._toMilliseconds):
+ (WebInspector.HARLog):
+ (WebInspector.HARLog.prototype.build):
+ (WebInspector.HARLog.prototype._buildPages):
+ (WebInspector.HARLog.prototype._buildMainResourceTimings):
+ (WebInspector.HARLog.prototype._convertResource):
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel):
+ (WebInspector.ResourcesPanel.prototype.hide):
+ (WebInspector.ResourcesPanel.prototype._contextMenu):
+ (WebInspector.ResourcesPanel.prototype._exportAll):
+ (WebInspector.ResourcesPanel.prototype._exportResource):
+ * inspector/front-end/Settings.js:
+ * inspector/front-end/utilities.js:
+ ():
+
+2010-09-16 Eric Uhrhane <ericu@chromium.org>
+
+ Reviewed by Jian Li.
+
+ Unify FILE_SYSTEM and FILE_WRITER enables under the name FILE_SYSTEM.
+ https://bugs.webkit.org/show_bug.cgi?id=45798
+
+ * CMakeLists.txt:
+ * Configurations/FeatureDefines.xcconfig:
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * dom/EventTarget.cpp:
+ * dom/EventTarget.h:
+ * dom/ExceptionCode.h:
+ * dom/ScriptExecutionContext.cpp:
+ (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
+ * dom/ScriptExecutionContext.h:
+ * fileapi/AsyncFileWriter.h:
+ * fileapi/FileEntry.cpp:
+ * fileapi/FileEntry.h:
+ * fileapi/FileEntry.idl:
+ * fileapi/FileError.h:
+ * fileapi/FileError.idl:
+ * fileapi/FileException.h:
+ * fileapi/FileException.idl:
+ * fileapi/FileStreamProxy.cpp:
+ * fileapi/FileStreamProxy.h:
+ * fileapi/FileThread.cpp:
+ * fileapi/FileThread.h:
+ * fileapi/FileWriter.cpp:
+ * fileapi/FileWriter.h:
+ * fileapi/FileWriter.idl:
+ * fileapi/FileWriterCallback.h:
+ * fileapi/FileWriterCallback.idl:
+ * fileapi/FileWriterClient.h:
+ * page/DOMWindow.idl:
+ * platform/AsyncFileStream.h:
+ * platform/FileStream.cpp:
+ * platform/FileStream.h:
+ * platform/FileStreamClient.h:
+
+2010-09-16 Marc-Antoine Ruel <maruel@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Convert WebCore.gyp to use regexp to excludes files instead of listing them in sources!.
+
+ This is necessary because sources! is processed before sources/. This makes
+ applying broader pattern in sources/ more difficult since it overrides the files
+ listed in sources!. Having all them in sources/ permits controlling the ordering
+ of the regexp, thus the final list of included files.
+
+ Fix Harfbuzz and VDMX source files includes in WebCore.gypi and WebCore.gyp
+
+ https://bugs.webkit.org/show_bug.cgi?id=45823
+
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+
+2010-09-16 Nat Duca <nduca@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ [chromium] Make compositor obey finish flag
+ https://bugs.webkit.org/show_bug.cgi?id=45552
+
+ The compositor should obey the finish flag on doComposite. This
+ flag causes the compositor to finish rendering before returning,
+ which is needed when resizing the window to avoid flashes of green.
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::finish):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+
+2010-09-16 Alejandro G. Castro <alex@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ GTK+ 3.x. updates, gtk_widget_size_request is deprecated and
+ "activate-slider" style property for scrollbars is gone.
+
+ * platform/gtk/PopupMenuGtk.cpp:
+ (WebCore::PopupMenuGtk::show):
+ * platform/gtk/gtk2drawing.c:
+ (moz_gtk_scrollbar_thumb_paint):
+ (moz_gtk_combo_box_paint):
+
+2010-09-16 Diego Gonzalez <diegohcg@webkit.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Remove FrameLoaderClientQt::webFrame() to use NetworkingContext to get the WebFrame to avoid layering violations
+ https://bugs.webkit.org/show_bug.cgi?id=42293
+
+ * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
+ (WebCore::MediaPlayerPrivate::commitLoad):
+
+2010-09-16 Ryuan Choi <ryuan.choi@samsung.com>
+
+ Unreviewed build fix for EFL
+
+ [EFL] REGRESSION(67567) FontCacheCairo was removed
+ https://bugs.webkit.org/show_bug.cgi?id=45858
+
+ * CMakeListsEfl.txt:
+
+2010-09-16 Yong Li <yoli@rim.com>
+
+ Reviewed by George Staikos.
+
+ https://bugs.webkit.org/show_bug.cgi?id=37117
+
+ Add platform-independent JPEG/PNG image encoders that
+ work with big endian RGBA source data.
+
+ There's no layout test because this patch does't make
+ any port start using the encoders.
+
+ * platform/image-encoders/JPEGImageEncoder.cpp: Added.
+ * platform/image-encoders/JPEGImageEncoder.h: Added.
+ * platform/image-encoders/PNGImageEncoder.cpp: Added.
+ * platform/image-encoders/PNGImageEncoder.h: Added.
+
+2010-09-15 Jeremy Orlow <jorlow@chromium.org>
+
+ Reviewed by Steve Block.
+
+ Allow the embedder to specify the base path for IndexedDB.
+ https://bugs.webkit.org/show_bug.cgi?id=45815
+
+ Existing tests provide coverage. Use the indexedDBPath parameter that's
+ already on the group settings object. Pass this parameter into the backend
+ which will use it rather than a hard coded tmp directory location. If
+ nothing is specified, assume it should be an in-memory temporary database.
+ (This is useful for bringup and Chromium's incognito mode.)
+
+ * storage/IDBFactory.cpp:
+ (WebCore::IDBFactory::open):
+ * storage/IDBFactoryBackendImpl.cpp:
+ (WebCore::openSQLiteDatabase):
+ (WebCore::createTables):
+ (WebCore::IDBFactoryBackendImpl::open):
+ * storage/IDBFactoryBackendImpl.h:
+ * storage/IDBFactoryBackendInterface.h:
+
+2010-09-16 Yong Li <yoli@rim.com>
+
+ Reviewed by George Staikos.
+
+ Fix the bug that GIF image down sampling can miss some lines.
+ https://bugs.webkit.org/show_bug.cgi?id=45322
+
+ Test: fast/images/gif-large-checkerboard.html
+
+ * platform/image-decoders/gif/GIFImageDecoder.cpp:
+ (WebCore::GIFImageDecoder::haveDecodedRow):
+
+2010-09-16 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Andreas Kling.
+
+ [GStreamer] un-needed header includes in MediaPlayerPrivate
+ https://bugs.webkit.org/show_bug.cgi?id=45877
+
+ Include only the headers we need.
+ No new tests, #includes cleanup only.
+
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+
+2010-09-16 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: console.group(object) does not allow object to be expanded.
+ https://bugs.webkit.org/show_bug.cgi?id=45806
+
+ * inspector/front-end/ConsoleView.js:
+ (WebInspector.ConsoleGroup.prototype.addMessage):
+ * inspector/front-end/treeoutline.js:
+ (TreeElement.treeElementToggled):
+
+2010-09-08 Jeremy Orlow <jorlow@chromium.org>
+
+ Reviewed by Steve Block.
+
+ Complete index support for IndexedDB
+ https://bugs.webkit.org/show_bug.cgi?id=45386
+
+ Add the rest of the index related API for IndexedDB. This
+ includes cursor suport. A bunch of code was also refactored
+ since it is shared between indexes and objectStores.
+
+ Tests: storage/indexeddb/index-basics.html
+ storage/indexeddb/index-cursor.html
+ + additions to others.
+
+ * storage/IDBAny.cpp:
+ (WebCore::IDBAny::set):
+ * storage/IDBCursor.cpp:
+ (WebCore::IDBCursor::value):
+ * storage/IDBCursorBackendImpl.cpp:
+ (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):
+ (WebCore::IDBCursorBackendImpl::value):
+ (WebCore::IDBCursorBackendImpl::update):
+ (WebCore::IDBCursorBackendImpl::continueFunction):
+ (WebCore::IDBCursorBackendImpl::remove):
+ (WebCore::IDBCursorBackendImpl::loadCurrentRow):
+ (WebCore::IDBCursorBackendImpl::database):
+ * storage/IDBCursorBackendImpl.h:
+ (WebCore::IDBCursorBackendImpl::create):
+ * storage/IDBCursorBackendInterface.h:
+ * storage/IDBFactoryBackendImpl.cpp:
+ (WebCore::createTables):
+ * storage/IDBIndex.cpp:
+ (WebCore::IDBIndex::openObjectCursor):
+ (WebCore::IDBIndex::openCursor):
+ (WebCore::IDBIndex::getObject):
+ (WebCore::IDBIndex::get):
+ * storage/IDBIndex.h:
+ (WebCore::IDBIndex::storeName):
+ * storage/IDBIndex.idl:
+ * storage/IDBIndexBackendImpl.cpp:
+ (WebCore::IDBIndexBackendImpl::storeName):
+ (WebCore::openCursorInternal):
+ (WebCore::IDBIndexBackendImpl::openObjectCursor):
+ (WebCore::IDBIndexBackendImpl::openCursor):
+ (WebCore::getInternal):
+ (WebCore::IDBIndexBackendImpl::getObject):
+ (WebCore::IDBIndexBackendImpl::get):
+ * storage/IDBIndexBackendImpl.h:
+ (WebCore::IDBIndexBackendImpl::objectStore):
+ * storage/IDBIndexBackendInterface.h:
+ * storage/IDBKey.cpp:
+ (WebCore::IDBKey::fromQuery):
+ (WebCore::IDBKey::whereSyntax):
+ (WebCore::IDBKey::leftCursorWhereFragment):
+ (WebCore::IDBKey::rightCursorWhereFragment):
+ * storage/IDBKey.h:
+ * storage/IDBKeyRange.cpp:
+ (WebCore::IDBKeyRange::leftWhereClauseComparisonOperator):
+ (WebCore::IDBKeyRange::rightWhereClauseComparisonOperator):
+ * storage/IDBKeyRange.h:
+ * storage/IDBObjectStoreBackendImpl.cpp:
+ (WebCore::IDBObjectStoreBackendImpl::openCursor):
+ * storage/IDBRequest.cpp:
+ (WebCore::IDBRequest::timerFired):
+
+2010-09-15 Simon Fraser <simon.fraser@apple.com>
+
+ Fix chromium build.
+
+ * platform/graphics/chromium/GraphicsLayerChromium.cpp:
+
+2010-09-15 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Adam Roben.
+
+ https://bugs.webkit.org/show_bug.cgi?id=44715
+ maps.google.com flips upside down when zooming map using trackpad in WebKit2 on Mac
+
+ Remove the concept of geometry flipping from GraphicsLayer; geometry flipping will
+ be taken care of in platform code without the need to complicate the GraphicsLayer API.
+
+ RenderLayerCompositor no longer sets the geometry orientation for the root
+ platform layer; platform-specific code does this instead.
+
+ This fixes flipped layers in WebKit2, since WebKit2 was already flipping
+ geometry, and then RenderLayerCompositor was doing an additional flip.
+
+ * platform/graphics/GraphicsLayer.cpp:
+ (WebCore::GraphicsLayer::GraphicsLayer):
+ * platform/graphics/GraphicsLayer.h:
+ * platform/graphics/chromium/GraphicsLayerChromium.cpp:
+ * platform/graphics/chromium/GraphicsLayerChromium.h:
+ * platform/graphics/mac/GraphicsLayerCA.h:
+ * platform/graphics/mac/GraphicsLayerCA.mm:
+ (WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers):
+ (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
+ (WebCore::GraphicsLayerCA::defaultContentsOrientation):
+ * platform/graphics/qt/GraphicsLayerQt.cpp:
+ (WebCore::GraphicsLayerQtImpl::flushChanges):
+ * platform/graphics/qt/GraphicsLayerQt.h:
+ * platform/graphics/win/GraphicsLayerCACF.cpp:
+ (WebCore::GraphicsLayerCACF::swapFromOrToTiledLayer):
+ * platform/graphics/win/GraphicsLayerCACF.h:
+ * platform/graphics/win/WKCACFLayerRenderer.cpp:
+ (WebCore::WKCACFLayerRenderer::setRootChildLayer):
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::ensureRootPlatformLayer):
+
+2010-09-15 Julien Chaffraix <jchaffraix@codeaurora.org>
+
+ Unreviewed.
+
+ Reverting my changes as it is breaking several tests on Gtk and Qt.
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseColor):
+ * css/CSSParser.h:
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::setStrokeColor):
+ (WebCore::CanvasRenderingContext2D::setFillColor):
+ * html/canvas/CanvasStyle.cpp:
+ (WebCore::CanvasStyle::createFromString):
+ * html/canvas/CanvasStyle.h:
+
+2010-09-15 Julien Chaffraix <jchaffraix@codeaurora.org>
+
+ Reviewed by Andreas Kling.
+
+ Parse system colors in the HTML5 canvas context.
+ https://bugs.webkit.org/show_bug.cgi?id=39168
+
+ Test: fast/css/test-setting-canvas-color.html
+
+ Based on previous work by Jan Erik Hanssen <jhanssen@codeaurora.org>
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseColor): Changed the function to better match our
+ early return policy. Also we now return false when we don't parse the color.
+ This is needed for createFromString to fallback to using parseSystemColor.
+
+ (WebCore::CSSParser::parseSystemColor): Made use of the RenderTheme to get
+ the system colors.
+
+ * css/CSSParser.h: Added the new parseSystemColor method.
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::setStrokeColor): Pass the document to createFromString.
+ (WebCore::CanvasRenderingContext2D::setFillColor): Ditto.
+ * html/canvas/CanvasStyle.cpp:
+ (WebCore::CanvasStyle::createFromString): Try to parse the color using CSSParser::parseColor
+ and fall back to parseSystemColor if it did not work.
+
+ * html/canvas/CanvasStyle.h: Added the new Document* parameter to createFromString.
+
+2010-09-14 Erik Arvidsson <arv@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ getComputedStyle() returns different values for different zoom levels
+ https://bugs.webkit.org/show_bug.cgi?id=32230
+
+ Test: fast/css/getComputedStyle/computed-style-with-zoom.html
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::zoomAdjustedPixelValue):
+ (WebCore::zoomAdjustedNumberValue):
+ (WebCore::valueForReflection):
+ (WebCore::getPositionOffsetValue):
+ (WebCore::getBorderRadiusCornerValue):
+ (WebCore::computedTransform):
+ (WebCore::CSSComputedStyleDeclaration::getFontSizeCSSValuePreferringKeyword):
+ (WebCore::CSSComputedStyleDeclaration::valueForShadow):
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSComputedStyleDeclaration.h:
+ * css/SVGCSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue):
+ * rendering/RenderObject.h:
+ (WebCore::adjustForAbsoluteZoom):
+ * rendering/style/RenderStyle.h:
+ (WebCore::adjustForAbsoluteZoom):
+
+2010-09-14 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Fully separate Pango and FreeType font backends
+ https://bugs.webkit.org/show_bug.cgi?id=27442
+
+ Split FontPlatformData.h into separate versions for Pango, FreeType and WinCairo.
+ Include the correct file via #ifdef'd includes, like the Chromium port. Also split
+ FontCacheCairo.cpp into Pango and FreeType versions, as they had almost no code in
+ common. Finally, rename FontPlatformDataCairo to FontPlatformDataFreeType, as this
+ compilation unit is used only by the FreeType backend. This change is important to
+ prevent upcoming fixes to the FreeType backend from affecting other backends.
+
+ No new tests as functionality has not changed.
+
+ * CMakeListsEfl.txt: Update source lists.
+ * GNUmakefile.am: Update source lists.
+ * platform/graphics/cairo/FontCacheCairo.cpp: Removed.
+ * platform/graphics/cairo/FontCacheFreeType.cpp: Added.
+ (WebCore::FontCache::platformInit):
+ (WebCore::FontCache::getFontDataForCharacters):
+ (WebCore::FontCache::getSimilarFontPlatformData):
+ (WebCore::FontCache::getLastResortFallbackFont):
+ (WebCore::FontCache::getTraitsInFamily):
+ (WebCore::isWellKnownFontName):
+ (WebCore::FontCache::createFontPlatformData):
+ * platform/graphics/cairo/FontPlatformData.h:
+ * platform/graphics/cairo/FontPlatformDataFreeType.cpp: Renamed from WebCore/platform/graphics/cairo/FontPlatformDataCairo.cpp.
+ (WebCore::FontPlatformData::FontPlatformData):
+ (WebCore::FontPlatformData::operator=):
+ (WebCore::FontPlatformData::init):
+ (WebCore::FontPlatformData::~FontPlatformData):
+ (WebCore::FontPlatformData::isFixedPitch):
+ (WebCore::FontPlatformData::operator==):
+ (WebCore::FontPlatformData::description):
+ * platform/graphics/cairo/FontPlatformDataFreeType.h: Added.
+ (WebCore::FontPlatformData::FontPlatformData):
+ (WebCore::FontPlatformData::size):
+ (WebCore::FontPlatformData::setSize):
+ (WebCore::FontPlatformData::syntheticBold):
+ (WebCore::FontPlatformData::syntheticOblique):
+ (WebCore::FontPlatformData::scaledFont):
+ (WebCore::FontPlatformData::hash):
+ (WebCore::FontPlatformData::isHashTableDeletedValue):
+ (WebCore::FontPlatformData::hashTableDeletedFontValue):
+ * platform/graphics/gtk/FontCachePango.cpp: Added.
+ (WebCore::FontCache::platformInit):
+ (WebCore::FontCache::getFontDataForCharacters):
+ (WebCore::FontCache::getSimilarFontPlatformData):
+ (WebCore::FontCache::getLastResortFallbackFont):
+ (WebCore::FontCache::getTraitsInFamily):
+ (WebCore::FontCache::createFontPlatformData):
+ * platform/graphics/gtk/FontPlatformDataPango.h: Added.
+ (WebCore::FontPlatformData::FontPlatformData):
+ (WebCore::FontPlatformData::size):
+ (WebCore::FontPlatformData::setSize):
+ (WebCore::FontPlatformData::syntheticBold):
+ (WebCore::FontPlatformData::syntheticOblique):
+ (WebCore::FontPlatformData::scaledFont):
+ (WebCore::FontPlatformData::hash):
+ (WebCore::FontPlatformData::isHashTableDeletedValue):
+ (WebCore::FontPlatformData::hashTableDeletedFontValue):
+ * platform/graphics/win/FontPlatformDataCairoWin.h: Added.
+ (WebCore::FontPlatformData::FontPlatformData):
+ (WebCore::FontPlatformData::hfont):
+ (WebCore::FontPlatformData::useGDI):
+ (WebCore::FontPlatformData::fontFace):
+ (WebCore::FontPlatformData::size):
+ (WebCore::FontPlatformData::setSize):
+ (WebCore::FontPlatformData::syntheticBold):
+ (WebCore::FontPlatformData::syntheticOblique):
+ (WebCore::FontPlatformData::scaledFont):
+ (WebCore::FontPlatformData::hash):
+ (WebCore::FontPlatformData::isHashTableDeletedValue):
+
+2010-09-15 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ AX: when text is auto-truncated, accessibility bounds are wrong
+ https://bugs.webkit.org/show_bug.cgi?id=45793
+
+ Allow accessibility to retrieve the absoluteQuads of a text node that
+ clips to the ellipsis.
+
+ Test: accessibility/ellipsis-text.html
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::boundingBoxRect):
+ * rendering/RenderText.cpp:
+ (WebCore::ellipsisRectForBox):
+ Make a common method to retrieve the ellipsis rect.
+ (WebCore::RenderText::absoluteQuads):
+ Default into the absoluteQuads method that allows for ellipsis clipping.
+ (WebCore::RenderText::selectionRectForRepaint):
+ Use the common method for retrieving the ellipsis.
+ * rendering/RenderText.h:
+
+2010-09-15 Ariya Hidayat <ariya@sencha.com>
+
+ [Qt] Improve the speed of blur shadow
+ https://bugs.webkit.org/show_bug.cgi?id=44222
+
+ Rewrite the shadow blur function with loop unrolls and sliding step
+ unification for both horizontal and vertical directions.
+ This gives significant performance improvement on most cases.
+
+ * platform/graphics/qt/ContextShadow.cpp:
+ (WebCore::shadowBlur):
+
+2010-09-14 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ (Take 2). Web Inspector: Provide network-based load timing.
+ Before this change, inspector used timers taken from
+ within WebCore notifications (that are by definition
+ synchronous and serialized). As a result, timing was
+ affected by the routines running on the main thread
+ (JavaScript and such).
+ https://bugs.webkit.org/show_bug.cgi?id=45664
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::willSendRequest):
+ (WebCore::InspectorController::didFinishLoading):
+ (WebCore::InspectorController::didFailLoading):
+ * inspector/InspectorController.h:
+ * inspector/InspectorResource.cpp:
+ (WebCore::InspectorResource::endTiming):
+ * inspector/InspectorResource.h:
+ * loader/PingLoader.h:
+ (WebCore::PingLoader::didFinishLoading):
+ * loader/ResourceLoadNotifier.cpp:
+ (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
+ * loader/ResourceLoader.cpp:
+ (WebCore::ResourceLoader::didFinishLoading):
+ * loader/ResourceLoader.h:
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ (WebCore::ApplicationCacheGroup::didFinishLoading):
+ * loader/appcache/ApplicationCacheGroup.h:
+ * loader/icon/IconFetcher.cpp:
+ (WebCore::IconFetcher::didFinishLoading):
+ * loader/icon/IconFetcher.h:
+ * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
+ (StreamingClient::didFinishLoading):
+ * platform/network/BlobResourceHandle.cpp:
+ (WebCore::BlobResourceHandle::notifyFinish):
+ * platform/network/ResourceHandleClient.h:
+ (WebCore::ResourceHandleClient::didFinishLoading):
+ * platform/network/ResourceLoadTiming.h:
+ (WebCore::ResourceLoadTiming::deepCopy):
+ (WebCore::ResourceLoadTiming::operator==):
+ (WebCore::ResourceLoadTiming::ResourceLoadTiming):
+ * platform/network/cf/ResourceHandleCFNet.cpp:
+ (WebCore::didFinishLoading):
+ * platform/network/curl/ResourceHandleCurl.cpp:
+ (WebCore::WebCoreSynchronousLoader::didFinishLoading):
+ * platform/network/curl/ResourceHandleManager.cpp:
+ (WebCore::ResourceHandleManager::downloadTimerCallback):
+ (WebCore::parseDataUrl):
+ * platform/network/mac/ResourceHandleMac.mm:
+ (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
+ (WebCoreSynchronousLoaderClient::didFinishLoading):
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::QNetworkReplyHandler::finish):
+ * platform/network/qt/ResourceHandleQt.cpp:
+ (WebCore::WebCoreSynchronousLoader::didFinishLoading):
+ * platform/network/soup/ResourceHandleSoup.cpp:
+ (WebCore::WebCoreSynchronousLoader::didFinishLoading):
+ (WebCore::WebCoreSynchronousLoader::didFail):
+ * platform/network/win/ResourceHandleWin.cpp:
+ (WebCore::WebCoreSynchronousLoader::didFinishLoading):
+ (WebCore::ResourceHandle::onRequestComplete):
+ (WebCore::ResourceHandle::fileLoadTimer):
+ (WebCore::ResourceHandle::cancel):
+
+2010-09-15 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r67551.
+ http://trac.webkit.org/changeset/67551
+ https://bugs.webkit.org/show_bug.cgi?id=45816
+
+ "Plugin tests fail" (Requested by yurys on #webkit).
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::willSendRequest):
+ (WebCore::InspectorController::didFinishLoading):
+ (WebCore::InspectorController::didFailLoading):
+ (WebCore::InspectorController::didCloseWebSocket):
+ * inspector/InspectorController.h:
+ * inspector/InspectorResource.cpp:
+ (WebCore::InspectorResource::endTiming):
+ * inspector/InspectorResource.h:
+ * loader/DocumentLoader.cpp:
+ (WebCore::DocumentLoader::substituteResourceDeliveryTimerFired):
+ * loader/MainResourceLoader.cpp:
+ (WebCore::MainResourceLoader::continueAfterContentPolicy):
+ (WebCore::MainResourceLoader::didFinishLoading):
+ * loader/MainResourceLoader.h:
+ * loader/NetscapePlugInStreamLoader.cpp:
+ (WebCore::NetscapePlugInStreamLoader::didFinishLoading):
+ * loader/PingLoader.h:
+ (WebCore::PingLoader::didFinishLoading):
+ * loader/ResourceLoadNotifier.cpp:
+ (WebCore::ResourceLoadNotifier::didFinishLoad):
+ (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
+ (WebCore::ResourceLoadNotifier::sendRemainingDelegateMessages):
+ * loader/ResourceLoadNotifier.h:
+ * loader/ResourceLoader.cpp:
+ (WebCore::ResourceLoader::didFinishLoading):
+ (WebCore::ResourceLoader::didFinishLoadingOnePart):
+ * loader/ResourceLoader.h:
+ * loader/SubresourceLoader.cpp:
+ (WebCore::SubresourceLoader::didReceiveResponse):
+ (WebCore::SubresourceLoader::didFinishLoading):
+ * loader/SubresourceLoader.h:
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ (WebCore::ApplicationCacheGroup::didFinishLoading):
+ * loader/appcache/ApplicationCacheGroup.h:
+ * loader/icon/IconFetcher.cpp:
+ (WebCore::IconFetcher::didFinishLoading):
+ * loader/icon/IconFetcher.h:
+ * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
+ (StreamingClient::didFinishLoading):
+ * platform/network/BlobResourceHandle.cpp:
+ (WebCore::BlobResourceHandle::notifyFinish):
+ * platform/network/ResourceHandleClient.h:
+ (WebCore::ResourceHandleClient::didFinishLoading):
+ * platform/network/cf/ResourceHandleCFNet.cpp:
+ (WebCore::didFinishLoading):
+ (WebCore::WebCoreSynchronousLoaderClient::didFinishLoading):
+ * platform/network/curl/ResourceHandleCurl.cpp:
+ (WebCore::WebCoreSynchronousLoader::didFinishLoading):
+ * platform/network/curl/ResourceHandleManager.cpp:
+ (WebCore::ResourceHandleManager::downloadTimerCallback):
+ (WebCore::parseDataUrl):
+ * platform/network/mac/ResourceHandleMac.mm:
+ (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
+ (WebCoreSynchronousLoaderClient::didFinishLoading):
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::QNetworkReplyHandler::finish):
+ * platform/network/qt/ResourceHandleQt.cpp:
+ (WebCore::WebCoreSynchronousLoader::didFinishLoading):
+ * platform/network/soup/ResourceHandleSoup.cpp:
+ (WebCore::WebCoreSynchronousLoader::didFinishLoading):
+ (WebCore::WebCoreSynchronousLoader::didFail):
+ (WebCore::finishedCallback):
+ (WebCore::parseDataUrl):
+ * platform/network/win/ResourceHandleWin.cpp:
+ (WebCore::WebCoreSynchronousLoader::didFinishLoading):
+ (WebCore::ResourceHandle::onRequestComplete):
+ (WebCore::ResourceHandle::fileLoadTimer):
+ (WebCore::ResourceHandle::cancel):
+
+2010-09-14 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Provide network-based load timing.
+ Before this change, inspector used timers taken from
+ within WebCore notifications (that are by definition
+ synchronous and serialized). As a result, timing was
+ affected by the routines running on the main thread
+ (JavaScript and such).
+ https://bugs.webkit.org/show_bug.cgi?id=45664
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::willSendRequest):
+ (WebCore::InspectorController::didFinishLoading):
+ (WebCore::InspectorController::didFailLoading):
+ * inspector/InspectorController.h:
+ * inspector/InspectorResource.cpp:
+ (WebCore::InspectorResource::endTiming):
+ * inspector/InspectorResource.h:
+ * loader/PingLoader.h:
+ (WebCore::PingLoader::didFinishLoading):
+ * loader/ResourceLoadNotifier.cpp:
+ (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
+ * loader/ResourceLoader.cpp:
+ (WebCore::ResourceLoader::didFinishLoading):
+ * loader/ResourceLoader.h:
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ (WebCore::ApplicationCacheGroup::didFinishLoading):
+ * loader/appcache/ApplicationCacheGroup.h:
+ * loader/icon/IconFetcher.cpp:
+ (WebCore::IconFetcher::didFinishLoading):
+ * loader/icon/IconFetcher.h:
+ * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
+ (StreamingClient::didFinishLoading):
+ * platform/network/BlobResourceHandle.cpp:
+ (WebCore::BlobResourceHandle::notifyFinish):
+ * platform/network/ResourceHandleClient.h:
+ (WebCore::ResourceHandleClient::didFinishLoading):
+ * platform/network/ResourceLoadTiming.h:
+ (WebCore::ResourceLoadTiming::deepCopy):
+ (WebCore::ResourceLoadTiming::operator==):
+ (WebCore::ResourceLoadTiming::ResourceLoadTiming):
+ * platform/network/cf/ResourceHandleCFNet.cpp:
+ (WebCore::didFinishLoading):
+ * platform/network/curl/ResourceHandleCurl.cpp:
+ (WebCore::WebCoreSynchronousLoader::didFinishLoading):
+ * platform/network/curl/ResourceHandleManager.cpp:
+ (WebCore::ResourceHandleManager::downloadTimerCallback):
+ (WebCore::parseDataUrl):
+ * platform/network/mac/ResourceHandleMac.mm:
+ (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
+ (WebCoreSynchronousLoaderClient::didFinishLoading):
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::QNetworkReplyHandler::finish):
+ * platform/network/qt/ResourceHandleQt.cpp:
+ (WebCore::WebCoreSynchronousLoader::didFinishLoading):
+ * platform/network/soup/ResourceHandleSoup.cpp:
+ (WebCore::WebCoreSynchronousLoader::didFinishLoading):
+ (WebCore::WebCoreSynchronousLoader::didFail):
+ * platform/network/win/ResourceHandleWin.cpp:
+ (WebCore::WebCoreSynchronousLoader::didFinishLoading):
+ (WebCore::ResourceHandle::onRequestComplete):
+ (WebCore::ResourceHandle::fileLoadTimer):
+ (WebCore::ResourceHandle::cancel):
+
+2010-09-14 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ WebInspector: small refactoring for monitorXHR backend property.
+
+ Our Inspector API is quite big and can be simplified a bit.
+ As example for single backend property like monitoringXHR we
+ have 4 functions in the API. Two functions for frontend
+ enableMonitoringXHR/disableMonitoringXHR and
+ two functions for backend monitoringXHRWasEnabled and
+ monitoringXHRWasDisabled. These functions can be replaced by
+ one setMonitoringXHR with one 'in' and one 'out' argument.
+ The initial state of the flag can be gathered from backend
+ with help of getSettings call where additional section was
+ added for backend state information.
+
+ https://bugs.webkit.org/show_bug.cgi?id=45759
+
+ * inspector/Inspector.idl:
+ * inspector/InspectorController.cpp:
+ * inspector/InspectorController.h:
+ * inspector/front-end/ConsoleView.js:
+ * inspector/front-end/Settings.js:
+ * inspector/front-end/inspector.js:
+
+2010-09-15 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Multiline console does not work on Windows / Linux.
+ https://bugs.webkit.org/show_bug.cgi?id=45807
+
+ * inspector/front-end/ConsoleView.js:
+
+2010-09-15 Renata Hodovan <reni@inf.u-szeged.hu>
+
+ Reviewed by Dirk Schulze.
+
+ SVGFETurbulenceElement doesn't support dynamic invalidation, when attributes change.
+ A typo (noStich instead of nostitch) is also fixed in this patch.
+ https://bugs.webkit.org/show_bug.cgi?id=45809
+
+ Tests: svg/dynamic-updates/SVGFETurbulenceElement-dom-baseFrequency-attr.html
+ svg/dynamic-updates/SVGFETurbulenceElement-dom-numOctaves-attr.html
+ svg/dynamic-updates/SVGFETurbulenceElement-dom-seed-attr.html
+ svg/dynamic-updates/SVGFETurbulenceElement-dom-stitchTiles-attr.html
+ svg/dynamic-updates/SVGFETurbulenceElement-dom-type-attr.html
+ svg/dynamic-updates/SVGFETurbulenceElement-svgdom-baseFrequency-prop.html
+ svg/dynamic-updates/SVGFETurbulenceElement-svgdom-numOctaves-prop.html
+ svg/dynamic-updates/SVGFETurbulenceElement-svgdom-seed-prop.html
+ svg/dynamic-updates/SVGFETurbulenceElement-svgdom-stitchTiles-prop.html
+ svg/dynamic-updates/SVGFETurbulenceElement-svgdom-type-prop.html
+
+ * svg/SVGFETurbulenceElement.cpp:
+ (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
+ (WebCore::SVGFETurbulenceElement::svgAttributeChanged):
+ * svg/SVGFETurbulenceElement.h:
+
+2010-09-15 Patrick Gansterer <paroga@paroga.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [WINCE] Avoid memcpy in TextCodecWinCE::encode
+ https://bugs.webkit.org/show_bug.cgi?id=45468
+
+ * platform/text/wince/TextCodecWinCE.cpp:
+ (WebCore::TextCodecWinCE::encode):
+
+2010-09-14 Kinuko Yasuda <kinuko@chromium.org>
+
+ Reviewed by Dumitru Daniliuc.
+
+ Add custom binding code for DirectoryEntry to allow JSON parameters for Flags
+ https://bugs.webkit.org/show_bug.cgi?id=45724
+
+ No new tests; tests will be added later.
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSDirectoryEntryCustom.cpp: Added.
+ (WebCore::JSDirectoryEntry::getFile):
+ (WebCore::JSDirectoryEntry::getDirectory):
+ * bindings/v8/custom/V8DirectoryEntryCustom.cpp: Added.
+ (WebCore::V8DirectoryEntry::getDirectoryCallback):
+ (WebCore::V8DirectoryEntry::getFileCallback):
+ * fileapi/DirectoryEntry.h:
+ * fileapi/DirectoryEntry.idl:
+
+2010-09-14 Jia Pu <jpu@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Only intercept ESC key press when autocorrection UI is visible.
+ https://bugs.webkit.org/show_bug.cgi?id=45071
+
+ Only intercept ESC key when autocorrection panel is shown. Otherwise pressing
+ ESC will cancel current loading like usual.
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::isShowingCorrectionPanel): Query editor client whether autocorrection
+ panel is shown.
+
+ * editing/Editor.h: Added declaration of isShowingCorrectionPanel().
+
+ * editing/EditorCommand.cpp:
+ (WebCore::supportedDismissCorrectionPanel): Only support executeCancelOperation()
+ when autocorrection panel is shown.
+ (WebCore::createCommandMap): Replaced isSupported function pointer for
+ executeCancelOperation() command with supportedDismissCorrectionPanel().
+
+ * loader/EmptyClients.h:
+ (WebCore::EmptyEditorClient::isShowingCorrectionPanel): Dummy implementation of
+ new member method declared in base class.
+
+ * page/EditorClient.h: Declared new member method isShowingCorrectionPanel().
+
+2010-09-14 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r67503.
+ http://trac.webkit.org/changeset/67503
+ https://bugs.webkit.org/show_bug.cgi?id=45802
+
+ This patch broke GTK builds (Requested by jianli_ on #webkit).
+
+ * fileapi/ThreadableBlobRegistry.cpp:
+ (WebCore::BlobRegistryContext::BlobRegistryContext):
+ * loader/ResourceLoader.cpp:
+ (WebCore::ResourceLoader::resourceData):
+ (WebCore::ResourceLoader::addData):
+ * platform/network/BlobResourceHandle.cpp:
+ * platform/network/BlobResourceHandle.h:
+ * platform/network/ResourceHandle.h:
+ * platform/network/mac/ResourceHandleMac.mm:
+ (WebCore::ResourceHandle::bufferedData):
+
+2010-09-14 Luiz Agostini <luiz.agostini@openbossa.org>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Zoom factor for checkboxes and radios.
+ https://bugs.webkit.org/show_bug.cgi?id=45776
+
+ RenderThemeQt does not consider RenderStyle::effectiveZoom when calculating sizes of
+ checkboxes and radios.
+
+ Even with this change the used QStyle must support different sizes for radios and checkboxes.
+ QWindowStyle and QMacStyle, for example, do not.
+
+ * platform/qt/RenderThemeQt.cpp:
+ (WebCore::RenderThemeQt::computeSizeBasedOnStyle):
+
+2010-09-14 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ audio engine: add AudioFileReader files (Mac implementation)
+ https://bugs.webkit.org/show_bug.cgi?id=36475
+
+ No new tests since audio API is not yet implemented.
+
+ * platform/audio/AudioFileReader.h: Added.
+ * platform/audio/mac/AudioFileReaderMac.cpp: Added.
+ (WebCore::createAudioBufferList):
+ (WebCore::destroyAudioBufferList):
+ (WebCore::AudioFileReader::AudioFileReader):
+ (WebCore::AudioFileReader::~AudioFileReader):
+ (WebCore::AudioFileReader::readProc):
+ (WebCore::AudioFileReader::getSizeProc):
+ (WebCore::AudioFileReader::createBus):
+ (WebCore::createBusFromAudioFile):
+ (WebCore::createBusFromInMemoryAudioFile):
+ * platform/audio/mac/AudioFileReaderMac.h: Added.
+ (WebCore::AudioFileReader::data):
+ (WebCore::AudioFileReader::dataSize):
+
+2010-09-14 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ Drawing an image outside the bounds of a canvas still causes repaints
+ https://bugs.webkit.org/show_bug.cgi?id=45792
+
+ Some canvas examples, such as http://www.phoboslab.org/biolab/, draw
+ images outide the bounds of the canvas. If the canvas already had a
+ non-empty m_dirtyRect, such draws would cause us to do a repaint of
+ m_dirtyRect again (which goes through the platform-specific invalidation
+ machinery, which can be slow).
+
+ Optimize this by avoiding extra invalidation when the dirty rect
+ does not intersect the canvas bounds.
+
+ Not testable because this avoids additional repaints of m_dirtyRect, but
+ m_dirtyRect has to be non-empty for this to benefit.
+
+ * html/HTMLCanvasElement.cpp:
+ (WebCore::HTMLCanvasElement::didDraw):
+
+2010-09-14 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Links from "Profiles" don't lead to "Scripts"
+ https://bugs.webkit.org/show_bug.cgi?id=45756
+
+ * inspector/front-end/ProfileDataGridTree.js:
+ (WebInspector.ProfileDataGridNode.prototype.createCell): use standard routine to create resource link
+ * inspector/front-end/inspector.js: code cleanup: removed no-op method
+ (WebInspector.addMainEventListeners):
+
+2010-09-14 Patrick Gansterer <paroga@paroga.com>
+
+ Reviewed by Adam Roben.
+
+ [WINCE] Use codePage instead of TextEncoding
+ https://bugs.webkit.org/show_bug.cgi?id=45466
+
+ Use codePage as member variable to avoid repeated lookup.
+
+ * platform/text/wince/TextCodecWinCE.cpp:
+ (WebCore::newTextCodecWinCE):
+ (WebCore::TextCodecWinCE::TextCodecWinCE):
+ (WebCore::decode):
+ (WebCore::TextCodecWinCE::decode):
+ (WebCore::TextCodecWinCE::encode):
+ * platform/text/wince/TextCodecWinCE.h:
+
+2010-09-14 Adam Barth <abarth@webkit.org>
+
+ Attempted Chromium build fix. The compiler can't tell that
+ ASSERT_NOT_REACHED is not reached and so it demands an initialization
+ of this variable.
+
+ * html/HTMLFontElement.cpp:
+ (WebCore::HTMLFontElement::parseMappedAttribute):
+
+2010-09-14 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Ariya Hidayat.
+
+ [Qt] Wheeling over windowed plugins sometimes cause them to disappear
+
+ * plugins/qt/PluginContainerQt.cpp:
+ (PluginClientWrapper::x11Event): Pass on captured mouse wheel events
+ to the effective native window rather than the grandparent widget.
+ We were calling QWidget::winId() which caused a new X11 window to be
+ created for the grandparent widget and generally mess things up.
+
+2010-09-14 Kevin Ollivier <kevino@theolliviers.com>
+
+ [wx] Build fix after move of selectedText() method.
+
+ * platform/wx/PasteboardWx.cpp:
+ (WebCore::Pasteboard::writeSelection):
+
+2010-09-14 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Handle <font size=0> as <font size=1> like any other browser
+ https://bugs.webkit.org/show_bug.cgi?id=39148
+
+ Update font size parser to match HTML5 spec. The main difference here
+ is the handling of 0, which now maps to 1 instead of 3.
+
+ * html/HTMLFontElement.cpp:
+ (WebCore::parseFontSize):
+ (WebCore::HTMLFontElement::cssValueFromFontSizeNumber):
+
+2010-09-14 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ document.lastModified gives no output if the response doesn't have a Last-Modified header
+ https://bugs.webkit.org/show_bug.cgi?id=8475
+
+ Implement document.lastModified as per HTML5.
+
+ Tests: http/tests/misc/last-modified-parsing.html
+ http/tests/misc/no-last-modified.html
+
+ * dom/Document.cpp:
+ (WebCore::Document::lastModified):
+
+2010-09-14 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ `document.compatMode` is `undefined` when using `application/xhtml+xml`
+ https://bugs.webkit.org/show_bug.cgi?id=44422
+
+ Moving the compatMode IDL attribute from HTMLDocument.idl to
+ Document.idl fixes this bug and improve compliance with HTML5.
+
+ Test: fast/parser/compatMode-in-xhtml.xhtml
+
+ * dom/Document.cpp:
+ (WebCore::Document::compatMode):
+ * dom/Document.h:
+ * dom/Document.idl:
+ * html/HTMLDocument.cpp:
+ * html/HTMLDocument.h:
+
+2010-09-14 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Nate Chapin.
+
+ V8 security checks don't account for shadowing named frames
+ https://bugs.webkit.org/show_bug.cgi?id=45700
+
+ Test: http/tests/security/xss-DENIED-frame-name.html
+
+ * bindings/v8/custom/V8DOMWindowCustom.cpp:
+ (WebCore::V8DOMWindow::namedSecurityCheck):
+ - If the property name exists on the object, it will shadow the
+ named property lookup on the window object. That means we need
+ to block access if there's shadowing going on.
+ (WebCore::V8DOMWindow::indexedSecurityCheck):
+ - I made the corresponding change to this function too, but I don't
+ think this one can actually be triggered because JavaScript
+ variable names need to start with a non-digit.
+
+2010-09-14 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ incorrect tabindex parsing
+ https://bugs.webkit.org/show_bug.cgi?id=21076
+
+ Updated our integer parsing for tabindex to use the algorithm from the
+ HTML5 spec.
+
+ Test: fast/parser/tabindex-parsing-2.html
+
+ * html/HTMLElement.cpp:
+ (WebCore::HTMLElement::parseMappedAttribute):
+ * html/parser/HTMLParserIdioms.cpp:
+ (WebCore::parseHTMLInteger):
+ * html/parser/HTMLParserIdioms.h:
+
+2010-09-14 Brent Fulgham <bfulgham@webkit.org>
+
+ Build correction, no review.
+
+ * WebCore.vcproj/WebCore.vcproj: Exclude OwnPtrCairo.cpp from
+ non-Cairo based builds.
+
+2010-09-14 Jian Li <jianli@chromium.org>
+
+ Reviewed by David Levin.
+
+ fast/files/apply-blob-url-to-img.html timeout on Leopard
+ https://bugs.webkit.org/show_bug.cgi?id=45576
+
+ The failure on Leopard is caused by the static method
+ ResourceHandle::supportsBufferedData that returns true to indicate that
+ the buffered data support is enabled for blob resource. However,
+ BlobResourceHandle does not support this and we need to override this.
+
+ The fix is to change supportsBufferedData method from static to virtual
+ so that we can override the default behavior in BlobResourceHandle.
+
+ * fileapi/ThreadableBlobRegistry.cpp: Copy BlobData to make it cross-thread.
+ (WebCore::BlobRegistryContext::BlobRegistryContext):
+ * loader/ResourceLoader.cpp:
+ (WebCore::ResourceLoader::resourceData):
+ (WebCore::ResourceLoader::addData):
+ * platform/network/BlobResourceHandle.cpp:
+ (WebCore::BlobResourceHandle::supportsBufferedData): Override the default
+ behavior.
+ * platform/network/BlobResourceHandle.h:
+ * platform/network/ResourceHandle.h: Made supportsBufferedData virtual.
+ * platform/network/mac/ResourceHandleMac.mm:
+ (WebCore::ResourceHandle::bufferedData):
+
+2010-09-14 Brent Fulgham <bfulgham@webkit.org>
+
+ Build correction, no review.
+
+ * WebCore.vcproj/WebCore.vcproj: Add missing OwnPtrCairo.cpp
+ implementation file.
+ * platform/graphics/cairo/OwnPtrCairo.cpp: Add missing include
+ for <cairo.h>
+
+2010-09-14 Chris Guillory <chris.guillory@google.com>
+
+ Reviewed by Chris Fleizach.
+
+ Send all accessibility notifications to Chromium.
+ https://bugs.webkit.org/show_bug.cgi?id=45156
+
+ Use postAccessibilityNotification to pass accessibility notifications
+ to chromium.
+
+ Tests: platform/chromium/accessibility/post-notification-ActiveDescendantChanged.html
+ platform/chromium/accessibility/post-notification-CheckedStateChanged.html
+ platform/chromium/accessibility/post-notification-ChildrenChanged.html
+ platform/chromium/accessibility/post-notification-FocusedUIElementChanged.html
+ platform/chromium/accessibility/post-notification-LayoutComplete.html
+ platform/chromium/accessibility/post-notification-LiveRegionChanged.html
+ platform/chromium/accessibility/post-notification-LoadComplete.html
+ platform/chromium/accessibility/post-notification-MenuListValueChanged.html
+ platform/chromium/accessibility/post-notification-RowCollapsed.html
+ platform/chromium/accessibility/post-notification-RowCountChanged.html
+ platform/chromium/accessibility/post-notification-RowExpanded.html
+ platform/chromium/accessibility/post-notification-ScrolledToAnchor.html
+ platform/chromium/accessibility/post-notification-SelectedChildrenChanged.html
+ platform/chromium/accessibility/post-notification-SelectedTextChanged.html
+ platform/chromium/accessibility/post-notification-ValueChanged.html
+
+ * accessibility/chromium/AXObjectCacheChromium.cpp:
+ (WebCore::AXObjectCache::postPlatformNotification):
+ * page/chromium/ChromeClientChromium.h:
+
+2010-09-14 Darin Adler <darin@apple.com>
+
+ Reviewed by Geoffrey Garen.
+
+ Hang processing href attribute containing a million slashes
+ https://bugs.webkit.org/show_bug.cgi?id=45767
+
+ Test: fast/css/visited-link-hang.html
+
+ * platform/LinkHash.cpp:
+ (WebCore::findSlashDotDotSlash): Added a start position argument and
+ changed types to use size_t consistently instead of a mix.
+ (WebCore::findSlashSlash): Ditto.
+ (WebCore::findSlashDotSlash): Ditto.
+ (WebCore::squeezeOutNullCharacters): Added.
+ (WebCore::cleanSlashDotDotSlashes): Added. Factored out part
+ of cleanPath (see below).
+ (WebCore::mergeDoubleSlashes): Ditto.
+ (WebCore::cleanSlashDotSlashes): Ditto.
+ (WebCore::cleanPath): Changed algorithm to not remove as we go to
+ avoid N^2 behavior; instead replace with null characters and then
+ do a squeeze operation after the fact. Also moved the body of the
+ function out of line since we normally don't have to do any cleaning.
+ This whole thing should go at some point -- it's not the right
+ algorithm -- but this should eliminate the performance problems
+ without changing behavior.
+
+2010-09-14 Nico Weber <thakis@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium]: On Mac, let image layer data row order match skia.
+ https://bugs.webkit.org/show_bug.cgi?id=45400
+
+ Make CoreGraphics texture row order match skia's row order, remove all
+ code that worked around this difference. This also fixes a problem where
+ image layers would be drawn upside down.
+
+ Covered by existing layout tests, but we don't run these with
+ compositing yet.
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::SharedValues::SharedValues):
+ (WebCore::ContentLayerChromium::updateContents):
+ (WebCore::ContentLayerChromium::updateTextureRect):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::setRootLayerCanvasSize):
+ (WebCore::LayerRendererChromium::drawLayers):
+
+2010-09-14 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Tony Chang.
+
+ applyInlineStyleToNodeRange does not extend run properly
+ https://bugs.webkit.org/show_bug.cgi?id=45616
+
+ The bug was caused by applyInlineStyleToNodeRange's skipping a node whenever it has children.
+ Fixed the bug by only skipping a node that contains the past end node, contains non-editable region,
+ or has a non-editable parent node. Also fixed a bug that applyInlineStyleToNodeRange does not remove
+ styled elements in a run that are identical to the one added. addInlineStyleIfNeeded now removes
+ all styled elements in a run using removeStyleFromRunBeforeApplyingStyle before calling addInlineStyleIfNeeded.
+
+ Test: editing/style/inline-style-extend-run.html
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::containsNonEditableRegion): Added.
+ (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange): See above.
+ (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle): Added, see above.
+ (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Added support for RemoveAlways.
+ (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Replaced RemoveAttributesAndElements by RemoveIfNeeded.
+ (WebCore::ApplyStyleCommand::extractInlineStyleToPushDown): Replaced RemoveAttributesAndElements by RemoveIfNeeded.
+ * editing/ApplyStyleCommand.h:
+
+2010-09-14 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] V8 port: Get inspector up and running
+ https://bugs.webkit.org/show_bug.cgi?id=45771
+
+ * inspector/front-end/WebKit.qrc: Add DebuggerScript.js
+
+2010-09-14 Oliver Hunt <oliver@apple.com>
+
+ PPC Build fix.
+
+ * bindings/js/SerializedScriptValue.cpp:
+ (WebCore::CloneDeserializer::readFile):
+ (WebCore::CloneDeserializer::readTerminal):
+
+2010-09-14 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by Andreas Kling.
+
+ [chromium] Remove unused ICU headers
+ https://bugs.webkit.org/show_bug.cgi?id=45698
+
+ Remove unused headers.
+
+ * platform/graphics/chromium/FontCacheLinux.cpp:
+
+2010-09-14 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Antonio Gomes.
+
+ [Qt] Numpad Enter key returns keyCode 0 instead of 13
+ https://bugs.webkit.org/show_bug.cgi?id=45014
+
+ Original patch by Jarred Nicholls <jarred.nicholls@gmail.com>
+
+ There is a missing case statement in the PlatformKeyboardEventQt.cpp
+ file to handle the Enter button on the number pad. Because it is not
+ handled, the keyCode returned in a JavaScript event is 0 rather than 13.
+
+ Test: manual-tests/qt/numpad-enter-key.html
+
+ * manual-tests/qt/numpad-enter-key.html: Added.
+ * platform/qt/PlatformKeyboardEventQt.cpp:
+ (WebCore::windowsKeyCodeForKeyEvent):
+
+2010-09-14 Evan Martin <evan@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ [chromium] building without debug syms broke after recent refactoring
+ https://bugs.webkit.org/show_bug.cgi?id=45720
+
+ Now that we build WebCore as multiple libraries, we need to adjust the
+ flags to turn off debug symbols for all of these libraries.
+
+ No new tests; should only affect an uncommon build flag.
+
+ * WebCore.gyp/WebCore.gyp:
+
+2010-09-14 Tony Chang <tony@chromium.org>
+
+ Unreviewed, fix chromium compile.
+
+ * platform/graphics/chromium/ImageLayerChromium.h:
+
+2010-09-14 Nico Weber <thakis@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ [chromium]: crash less in compositor mode on mac
+ https://bugs.webkit.org/show_bug.cgi?id=45714
+
+ The contents image can go away when the dom is updated. Since the
+ layer tree is updated asynchronously, it needs to ref the native image,
+ else it will hold on to a stale object.
+
+ This still needs to be done for skia, too.
+
+ * platform/graphics/chromium/ImageLayerChromium.h:
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+
+2010-09-14 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: [Resources panel] [HAR] Need a way to save timing data.
+ Added support for resource timings to HAREntry.
+ https://bugs.webkit.org/show_bug.cgi?id=45663
+
+ * inspector/front-end/HAREntry.js:
+ (WebInspector.HAREntry.prototype._buildTimings):
+ (WebInspector.HAREntry.prototype._toMilliseconds):
+ (WebInspector.HAREntry.prototype._interval):
+
+2010-09-14 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by Kent Tamura.
+
+ [BREWMP] Always set LeftButton in PlatformMouseEvent
+ https://bugs.webkit.org/show_bug.cgi?id=45705
+
+ AEE_POINTER_GET_MOUSE_MODIFIERS always returns 0, so it is impossible to know
+ which button is pressed or released. The current code erroneously sets NoButton.
+ Set LeftButton unconditionally because Brew MP usually runs on touch device.
+
+ * platform/brew/PlatformMouseEventBrew.cpp:
+ (WebCore::PlatformMouseEvent::PlatformMouseEvent):
+
+2010-09-14 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Andreas Kling.
+
+ Move DebuggerScript.js from WebKit/chromium/src/js to WebCore/bindings/v8
+ https://bugs.webkit.org/show_bug.cgi?id=45739
+
+ * bindings/v8/DebuggerScript.js: Added.
+
+2010-09-10 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Implement on-demand reporting of empty CSS rules matched for a node by WebCore
+ https://bugs.webkit.org/show_bug.cgi?id=45530
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::matchRules):
+ (WebCore::CSSStyleSelector::matchRulesForList):
+ (WebCore::CSSStyleSelector::matchUARules):
+ (WebCore::CSSStyleSelector::styleForElement):
+ (WebCore::CSSStyleSelector::pseudoStyleForElement):
+ (WebCore::CSSStyleSelector::styleRulesForElement):
+ (WebCore::CSSStyleSelector::pseudoStyleRulesForElement):
+ * css/CSSStyleSelector.h:
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::getStyles):
+ (WebCore::InspectorDOMAgent::buildArrayForPseudoElements):
+
+2010-09-14 Hyung Song <beergun@company100.net>
+
+ Reviewed by Darin Adler.
+
+ [BREWMP] Set m_size in SharedBuffer::createWithContentsOfFile();
+ https://bugs.webkit.org/show_bug.cgi?id=45701
+
+ SharedBuffer::createWithContentsOfFile() reads file content and saves to
+ result.m_buffer directly, leaving result.m_size unchanged.
+
+ * platform/brew/SharedBufferBrew.cpp:
+ (WebCore::SharedBuffer::createWithContentsOfFile):
+
+2010-09-14 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Move adjustLexerState to the HTMLTokenizer
+ https://bugs.webkit.org/show_bug.cgi?id=45649
+
+ This function used let us share code between the tree builder and the
+ two other users of the HTMLTokenizer. However, now that the tree
+ builder is all grown up, it can't use this code anymore. The other
+ users would much rather this code lived on HTMLTokenizer and understood
+ <script>. This patch attempts to make them happy.
+
+ * html/parser/HTMLPreloadScanner.cpp:
+ (WebCore::HTMLPreloadScanner::processToken):
+ * html/parser/HTMLTokenizer.cpp:
+ (WebCore::HTMLTokenizer::updateStateFor):
+ * html/parser/HTMLTokenizer.h:
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::scriptEnabled):
+ * html/parser/HTMLTreeBuilder.h:
+ * html/parser/HTMLViewSourceParser.cpp:
+ (WebCore::HTMLViewSourceParser::updateTokenizerState):
+
+2010-09-14 Pierre-Antoine LaFayette <plafayet@codeaurora.org>
+
+ Reviewed by Darin Adler.
+
+ REGRESSION (r52839): Incomplete repaint of IMG with text-align:center
+ https://bugs.webkit.org/show_bug.cgi?id=40142
+
+ http://trac.webkit.org/changeset/52839 didn't really deal with the inline replaced element case. This just generalizes to all inline content.
+
+ Patch by: Dave Hyatt
+
+ Tests: fast/repaint/block-layout-inline-children-float-positioned.html
+ fast/repaint/block-layout-inline-children-replaced.html
+
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::layoutInlineChildren):
+
+2010-09-14 Balazs Kelemen <kb@inf.u-szeged.hu>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Cookie operations should use NetworkingContext
+ https://bugs.webkit.org/show_bug.cgi?id=45745
+ No new functionality so no new tests.
+
+ * platform/qt/CookieJarQt.cpp:
+ (WebCore::cookieJar): Use the NetworkingContext for obtaining the QNetworkAccessManager
+ instead of directly accessing the FrameLoaderClient.
+
+2010-09-14 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r67449.
+ http://trac.webkit.org/changeset/67449
+ https://bugs.webkit.org/show_bug.cgi?id=45746
+
+ This change makes tree red. (Requested by pfeldman on
+ #webkit).
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
+ (WebCore::ApplyStyleCommand::removeInlineStyleFromElement):
+ (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement):
+ (WebCore::ApplyStyleCommand::extractInlineStyleToPushDown):
+ * editing/ApplyStyleCommand.h:
+
+2010-09-14 Eric Seidel <eric@webkit.org>
+
+ Unreviewed, reverting changes r67451 and r67451.
+ Broke lots of builders.
+
+ Only intercept ESC key press when autocorrection UI is visible.
+ https://bugs.webkit.org/show_bug.cgi?id=45071
+
+ * editing/Editor.cpp:
+ * editing/Editor.h:
+ * editing/EditorCommand.cpp:
+ (WebCore::createCommandMap):
+ * loader/EmptyClients.h:
+ * page/EditorClient.h:
+
+2010-09-14 Kinuko Yasuda <kinuko@chromium.org>
+
+ Unreviewed; an attempt to fix Chromium Windows build.
+
+ * fileapi/FileEntry.cpp:
+
+2010-09-13 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: provide support for opening external navigation for links within certain elements
+ Use default handling for clicks on links that have target="_blank".
+ Add option for external navigation to URL audit formatter.
+ https://bugs.webkit.org/show_bug.cgi?id=45671
+
+ * inspector/front-end/AuditFormatters.js:
+ (WebInspector.AuditFormatters.url):
+ * inspector/front-end/inspector.js:
+
+2010-09-14 Dan Bernstein <mitz@apple.com>
+
+ Build fix.
+
+ * editing/EditorCommand.cpp:
+
+2010-09-14 Jia Pu <jpu@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Only intercept ESC key press when autocorrection UI is visible.
+ https://bugs.webkit.org/show_bug.cgi?id=45071
+
+ Only intercept ESC key when autocorrection panel is shown. Otherwise pressing
+ ESC will cancel current loading like usual.
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::isShowingCorrectionPanel): Query editor client whether autocorrection
+ panel is shown.
+
+ * editing/Editor.h: Added declaration of isShowingCorrectionPanel().
+
+ * editing/EditorCommand.cpp:
+ (WebCore::supportedDismissCorrectionPanel): Only support executeCancelOperation()
+ when autocorrection panel is shown.
+ (WebCore::createCommandMap): Replaced isSupported function pointer for
+ executeCancelOperation() command with supportedDismissCorrectionPanel().
+
+ * loader/EmptyClients.h:
+ (WebCore::EmptyEditorClient::isShowingCorrectionPanel): Dummy implementation of
+ new member method declared in base class.
+
+ * page/EditorClient.h: Declared new member method isShowingCorrectionPanel().
+
+2010-09-14 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by Kent Tamura.
+
+ [BREWMP] Remove TextBreakIteratorInternalICUBrew.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=45691
+
+ Brew MP no longer depends on ICU for internationalization.
+ Remove TextBreakIteratorInternalICUBrew.cpp.
+
+ * platform/text/brew/TextBreakIteratorInternalICUBrew.cpp: Removed.
+
+2010-09-14 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Tony Chang.
+
+ applyInlineStyleToNodeRange does not extend run properly
+ https://bugs.webkit.org/show_bug.cgi?id=45616
+
+ The bug was caused by applyInlineStyleToNodeRange's skipping a node whenever it has children.
+ Fixed the bug by only skipping a node that contains the past end node, contains non-editable region,
+ or has a non-editable parent node. Also fixed a bug that applyInlineStyleToNodeRange does not remove
+ styled elements in a run that are identical to the one added. addInlineStyleIfNeeded now removes
+ all styled elements in a run using removeStyleFromRunBeforeApplyingStyle before calling addInlineStyleIfNeeded.
+
+ Test: editing/style/inline-style-extend-run.html
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::containsNonEditableRegion): Added.
+ (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange): See above.
+ (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle): Added, see above.
+ (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Added support for RemoveAlways.
+ (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Replaced RemoveAttributesAndElements by RemoveIfNeeded.
+ (WebCore::ApplyStyleCommand::extractInlineStyleToPushDown): Replaced RemoveAttributesAndElements by RemoveIfNeeded.
+ * editing/ApplyStyleCommand.h:
+
+2010-09-13 Yuta Kitamura <yutak@chromium.org>
+
+ Reviewed by Kent Tamura.
+
+ Add one #if guard block to fix Qt builds.
+
+ Web Inspector: WebSocket in Resources tab
+ https://bugs.webkit.org/show_bug.cgi?id=40768
+
+ * inspector/InspectorResource.cpp:
+
+2010-09-13 Yuta Kitamura <yutak@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Add WebSocket resource type to Web Inspector.
+
+ When a new WebSocket connection is established, a line for that connection
+ will appear in Web Inspector's Resources tab. If the resource name is
+ clicked, the details of handshake request and response will be shown.
+
+ Web Inspector: WebSocket in Resources tab
+ https://bugs.webkit.org/show_bug.cgi?id=40768
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::addResource): WebSocket resource does not
+ have an associated loader, thus frame might be null. Need to check it.
+ (WebCore::InspectorController::removeResource): Ditto.
+ (WebCore::InspectorController::didCreateWebSocket):
+ (WebCore::InspectorController::willSendWebSocketHandshakeRequest):
+ (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse):
+ (WebCore::InspectorController::didCloseWebSocket):
+ * inspector/InspectorController.h:
+ * inspector/InspectorResource.cpp: Add null checks of m_loader and m_frame,
+ because WebSocket does not have a loader and we need to allow null for
+ these variables.
+ (WebCore::createReadableStringFromBinary):
+ (WebCore::InspectorResource::InspectorResource):
+ (WebCore::InspectorResource::create): Factory function of
+ regular (non-WebSocket) resources.
+ (WebCore::InspectorResource::createWebSocket): Factory function of
+ WebSocket resources.
+ (WebCore::InspectorResource::updateWebSocketRequest):
+ (WebCore::InspectorResource::updateWebSocketResponse):
+ (WebCore::InspectorResource::updateScriptObject): m_frame->document() becomes
+ available when Frame::setDocument() is called. We cannot obtain documentURL
+ during the constructor or updateRequest() function, because m_frame->document()
+ is not available yet at that point and documentURL will contain a wrong URL.
+ As far as I know, updateScriptObject() is the only place where we can safely
+ obtain documentURL.
+ (WebCore::InspectorResource::cachedResource):
+ (WebCore::InspectorResource::type):
+ (WebCore::InspectorResource::resourceData):
+ * inspector/InspectorResource.h:
+ (WebCore::InspectorResource::):
+ (WebCore::InspectorResource::markWebSocket):
+ * inspector/front-end/Resource.js:
+ (WebInspector.Resource.Type.toString):
+ (WebInspector.Resource.prototype.set type):
+ (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType):
+ * inspector/front-end/ResourceView.js:
+ (WebInspector.ResourceView.prototype._refreshRequestHeaders):
+ (WebInspector.ResourceView.prototype._refreshResponseHeaders):
+ (WebInspector.ResourceView.prototype._refreshHeaders):
+ * inspector/front-end/inspector.css:
+ (.resources-category-websockets, .resources-category-other):
+ (.resources-category-websockets .resources-graph-bar):
+ (.resources-category-websockets.resource-cached .resources-graph-bar):
+ * inspector/front-end/inspector.js:
+ (WebInspector.loaded):
+ (WebInspector.updateResource):
+ * websockets/WebSocketChannel.cpp:
+ (WebCore::WebSocketChannel::WebSocketChannel):
+ (WebCore::WebSocketChannel::disconnect):
+ (WebCore::WebSocketChannel::didOpen):
+ (WebCore::WebSocketChannel::didClose):
+ (WebCore::WebSocketChannel::processBuffer):
+ (WebCore::WebSocketChannel::identifier):
+ * websockets/WebSocketChannel.h:
+
+2010-09-13 W. James MacLean <wjmaclean@google.com>
+
+ Reviewed by Darin Fisher.
+
+ [chromium] Thumbnails not generated for GPU Rendered Pages
+ https://bugs.webkit.org/show_bug.cgi?id=44127
+
+ Replicates existing functionality, use existing tests.
+ Adds pixel-readback for GPU composited pages to allow for thumbnailing,
+ printing and other services to work with GPU rendered pages.
+
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::getFramebufferPixels):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+ (WebCore::LayerRendererChromium::rootLayerTextureSize):
+
+2010-09-13 Kinuko Yasuda <kinuko@chromium.org>
+
+ Unreviewed, build fix for Gtk.
+
+ * bindings/js/JSEntryCustom.cpp:
+
+2010-09-13 Kinuko Yasuda <kinuko@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Make FileEntry and DirectoryEntry methods accessible via Entry instance
+ https://bugs.webkit.org/show_bug.cgi?id=45553
+
+ FileEntry- and DirectoryEntry- specific methods must be available on Entry object based on its internal type.
+
+ Added custom toJS/toV8 implementation to Entry interface.
+
+ No new tests; test will be added later when we have complete implementation for the API.
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSEntryCustom.cpp: Added.
+ (WebCore::toJS):
+ * bindings/v8/custom/V8EntryCustom.cpp: Added.
+ (WebCore::toV8):
+ * fileapi/DirectoryEntry.h: Nits fix.
+ * fileapi/DirectoryEntry.idl: Added ConvertUndefinedOrNullToString to path parameter.
+ * fileapi/Entry.idl: Added CustomToJS attribute.
+ * fileapi/FileEntry.cpp:
+ (WebCore::FileEntry::createWriter):
+ (WebCore::FileEntry::file):
+ * fileapi/FileEntry.h:
+ * fileapi/FileEntry.idl:
+
+2010-09-13 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ REGRESSION: In Gmail, a crash occurs at getDoubleValue() when applying a text color to a new line
+ https://bugs.webkit.org/show_bug.cgi?id=45632
+
+ Test: editing/execCommand/query-font-size-with-typing-style.html
+
+ The crash was caused by selectionStartCSSPropertyValue's deleting nodeToRemove before
+ retrieving the font-size property. Fixed the bug by moving the removal code to the end of the function.
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::selectionStartCSSPropertyValue):
+
+2010-09-13 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by Darin Adler.
+
+ [BREWMP] Remove WebCore namespace in SSLKeyGeneratorBrew.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=45690
+
+ WebCore namespace is not required because getSupportedKeySizes and signedPublicKeyAndChallengeString are already
+ in namespace WebCore block.
+
+ * platform/brew/SSLKeyGeneratorBrew.cpp:
+ (WebCore::getSupportedKeySizes):
+ (WebCore::signedPublicKeyAndChallengeString):
+
+2010-09-13 Mario Sanchez Prada <msanchez@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Code simplification needed in Atk Wrapper
+ https://bugs.webkit.org/show_bug.cgi?id=45687
+
+ Use TextIterator::rangeLength() to calculate endOffset
+
+ * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
+ (getSelectionOffsetsForObject): Don't manually iterate over a
+ artificial new range but just call TextIterator::rangeLength on
+ the range created between the start and end positions.
+
+2010-09-13 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Alice Liu.
+
+ Clean up xcode project.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2010-09-13 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Geoff Garen.
+
+ JavaScript dialog should not deactivate media element
+ https://bugs.webkit.org/show_bug.cgi?id=45688
+
+ Test: http/tests/media/reload-after-dialog.html
+
+ * bindings/generic/ActiveDOMCallback.cpp:
+ (WebCore::ActiveDOMObjectCallbackImpl::suspend): Add ReasonForSuspension parameter.
+
+ * bindings/js/ScriptDebugServer.cpp:
+ (WebCore::ScriptDebugServer::setJavaScriptPaused): Pass new parameter to suspendActiveDOMObjects.
+
+ * dom/ActiveDOMObject.cpp:
+ (WebCore::ActiveDOMObject::suspend): Add ReasonForSuspension parameter.
+ * dom/ActiveDOMObject.h:
+
+ * dom/ScriptExecutionContext.cpp:
+ (WebCore::ScriptExecutionContext::suspendActiveDOMObjects): Ditto.
+ * dom/ScriptExecutionContext.h:
+
+ * history/CachedFrame.cpp:
+ (WebCore::CachedFrame::CachedFrame): Pass new parameter to suspendActiveDOMObjects.
+
+ * html/HTMLMarqueeElement.cpp:
+ (WebCore::HTMLMarqueeElement::suspend): Add ReasonForSuspension parameter.
+ * html/HTMLMarqueeElement.h:
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::stop): Deal with element being suspended.
+ (WebCore::HTMLMediaElement::suspend): Do nothing unless reason for suspension is document
+ becoming inactive.
+ * html/HTMLMediaElement.h:
+
+ * page/PageGroupLoadDeferrer.cpp:
+ (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer): Pass WillShowDialog to suspendActiveDOMObjects.
+
+ * page/SuspendableTimer.cpp:
+ (WebCore::SuspendableTimer::suspend): Add ReasonForSuspension parameter.
+ * page/SuspendableTimer.h:
+
+ * websockets/WebSocket.cpp:
+ (WebCore::WebSocket::suspend): Ditto.
+ * websockets/WebSocket.h:
+
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::suspend): Ditto.
+ * xml/XMLHttpRequest.h:
+
+2010-09-13 Sam Weinig <sam@webkit.org>
+
+ Fix the mac build.
+
+ * page/mac/EventHandlerMac.mm:
+ (WebCore::EventHandler::passMousePressEventToSubframe):
+
+2010-09-13 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Anders Carlsson.
+
+ Can't scroll on Bugzilla patch review pages on Mac with WebKit2
+ https://bugs.webkit.org/show_bug.cgi?id=43555
+
+ <rdar://problem/8421386> WebKit2: gmail.com is completely unresponsive to clicks
+ <rdar://problem/8276298> Can't scroll on Bugzilla patch review pages on Mac with WebKit2 (43555)
+
+ * page/mac/EventHandlerMac.mm:
+ (WebCore::EventHandler::passWheelEventToWidget):
+ (WebCore::frameHasPlatformWidget):
+ (WebCore::EventHandler::passMousePressEventToSubframe):
+ (WebCore::EventHandler::passMouseMoveEventToSubframe):
+ (WebCore::EventHandler::passMouseReleaseEventToSubframe):
+ Add WebKit2 mode for these functions based on the presence of a platform widget for a
+ FrameView.
+
+2010-09-13 Patrick Gansterer <paroga@paroga.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [WINCE] Buildfix for ViewportArguments.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=45678
+
+ Use fabs() instead of abs().
+ This patch also fixes the return value, when
+ the value is between -1 and 1.
+
+ * dom/ViewportArguments.cpp:
+ (WebCore::findUserScalableValue):
+
+2010-09-13 Darin Adler <darin@apple.com>
+
+ Reviewed by Adam Barth.
+
+ Preparation for eliminating deprecatedParseURL
+ https://bugs.webkit.org/show_bug.cgi?id=45695
+
+ Added new HTMLParserIdioms source file, with a name inspired by the HTML
+ specification, which has a section defining things like "space character"
+ that talks about common parser idioms. These are idioms for the main HTML
+ parser and for parsers for various microlanguages as well.
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ Added HTMLParserIdioms.
+
+ * css/CSSHelper.h: Fixed indentation and comments here. Point to the new
+ stripLeadingAndTrailingHTMLSpaces function.
+
+ * html/parser/HTMLParserIdioms.cpp: Added.
+ * html/parser/HTMLParserIdioms.h: Added.
+
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::skipLeadingWhitespace):
+ (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeLeadingWhitespace):
+ (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeLeadingNonWhitespace):
+ (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeRemainingWhitespace):
+ Updated for name changes.
+
+ * html/parser/HTMLTreeBuilder.h: Moved functions to HTMLParserIdioms.h.
+
+ * html/HTMLInputElement.cpp:
+ * html/HTMLMeterElement.cpp:
+ * html/HTMLProgressElement.cpp:
+ * html/StepRange.cpp:
+ * rendering/RenderSlider.cpp:
+ Updated includes.
+
+ * svg/SVGImageLoader.cpp:
+ (WebCore::SVGImageLoader::sourceURI): Fixed incorrect use of deprecatedParseURL.
+ This is for use on the attribute value before building the URL, not on the URL
+ after building it. I did not add a test case; this is an obscure corner and soon
+ we will be moving to stripLeadingAndTrailingHTMLSpaces anyway.
+ * wml/WMLImageLoader.cpp:
+ (WebCore::WMLImageLoader::sourceURI): Ditto.
+
+2010-09-13 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Darin Adler.
+
+ AX: REGRESSION: WebKit does not report label of web popup buttons
+ https://bugs.webkit.org/show_bug.cgi?id=45715
+
+ Test: platform/mac/accessibility/popup-button-title.html
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::title):
+
+2010-09-13 Kinuko Yasuda <kinuko@chromium.org>
+
+ Reviewed by Dumitru Daniliuc.
+
+ Expose Flags constructor if FileSystem API is Enabled
+ https://bugs.webkit.org/show_bug.cgi?id=45165
+
+ This change also includes:
+ - Changed Flags' attribute names from UPPERCASE to camelCase to reflect the recent spec change.
+ http://dev.w3.org/2009/dap/file-system/file-dir-sys.html#the-flags-interface
+ - Enhanced EnabledAtRuntime attribute to take parameter that is used to generate a RuntimeEnabledFeatures method name.
+
+ No new tests; tests will be added when we fully expose the interface.
+
+ * bindings/v8/V8DOMWindowCustom.cpp: Added custom getter for FlagsConstructor.
+ * fileapi/Flags.idl: Changed attribute names to camelCase.
+ * page/DOMWindow.idl: Exposed Flags constructor.
+
+ * bindings/scripts/CodeGenerator.pm: Updated the WK_lcfirst hack to work around getter method for 'create' (create() should be avoided as it's widely used to instantiate an object).
+ * bindings/scripts/CodeGeneratorV8.pm: Added EnabledAtRuntime=FeatureName support.
+ * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
+ (WebDOMTestObj::create):
+ (WebDOMTestObj::setCreate):
+ * bindings/scripts/test/CPP/WebDOMTestObj.h:
+ * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
+ (webkit_dom_test_obj_set_property):
+ (webkit_dom_test_obj_get_property):
+ (webkit_dom_test_obj_class_init):
+ * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
+ * bindings/scripts/test/JS/JSTestObj.cpp:
+ * bindings/scripts/test/ObjC/DOMTestObj.h:
+ * bindings/scripts/test/ObjC/DOMTestObj.mm:
+ * bindings/scripts/test/TestObj.idl:
+ * bindings/scripts/test/V8/V8TestObj.cpp:
+ (WebCore::TestObjInternal::createAttrGetter):
+ (WebCore::TestObjInternal::createAttrSetter):
+ (WebCore::TestObjInternal::enabledAtRuntimeAttr1AttrGetter):
+ (WebCore::TestObjInternal::enabledAtRuntimeAttr1AttrSetter):
+ (WebCore::TestObjInternal::enabledAtRuntimeAttr2AttrGetter):
+ (WebCore::TestObjInternal::enabledAtRuntimeAttr2AttrSetter):
+ (WebCore::TestObjInternal::enabledAtRuntimeMethod1Callback):
+ (WebCore::TestObjInternal::enabledAtRuntimeMethod2Callback):
+ (WebCore::ConfigureV8TestObjTemplate):
+
+2010-09-13 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ "Implement" EOF processing in AfterBodyMode and AfterAfterBodyMode
+ https://bugs.webkit.org/show_bug.cgi?id=45647
+
+ Implements the notImplemented by doing nothing, which is the proper
+ behavior according to the spec.
+
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processEndOfFile):
+
+2010-09-13 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ More trivial EOF handling in tree builder
+ https://bugs.webkit.org/show_bug.cgi?id=45648
+
+ The spec says to treat these modes like the InBodyMode, which is what
+ this patch does. Doing so is indistinguishable from our current
+ behavior, which is why we didn't catch this based on tests.
+
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processEndOfFile):
+
+2010-09-13 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ SharedGraphicsContext3D's texture cache holds on to images after free
+ https://bugs.webkit.org/show_bug.cgi?id=45706
+
+ Each SharedGraphicsContext3D keeps a cache of uploaded textures keyed by NativeImagePtrs.
+ Whenever the backing native image is deleted it needs to let the SharedGraphicsContext3D know
+ so that the cache entry and associated texture can also be removed.
+
+ * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
+ (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
+ (WebCore::SharedGraphicsContext3D::~SharedGraphicsContext3D):
+ (WebCore::SharedGraphicsContext3D::removeTextureFor):
+ (WebCore::SharedGraphicsContext3D::removeTexturesFor):
+ (WebCore::SharedGraphicsContext3D::allContexts):
+ * platform/graphics/gpu/SharedGraphicsContext3D.h:
+ * platform/graphics/skia/NativeImageSkia.cpp:
+ (WebCore::NativeImageSkia::~NativeImageSkia):
+ * platform/graphics/skia/NativeImageSkia.h:
+
+2010-09-13 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by David Kilzer.
+
+ AX: accessibilityIsIgnored is returning nil when return value expects a BOOL
+ https://bugs.webkit.org/show_bug.cgi?id=45548
+
+ Test: platform/mac/accessibility/element-is-ignored.html
+
+ * accessibility/mac/AccessibilityObjectWrapper.mm:
+ (-[AccessibilityObjectWrapper accessibilityIsIgnored]):
+
+2010-09-13 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Darin Adler.
+
+ CrashTracer: 874 crashes in Safari at com.apple.WebCore: WebCore::AccessibilityTable::isTableExposableThroughAccessibility + 663
+ https://bugs.webkit.org/show_bug.cgi?id=45697
+
+ Inside of AccessibilityTableRow, parentTable() should not use getOrCreate() on the parent table, because the render table may
+ be in a bad state and accessing internal variables can lead to a crash.
+
+ Test: platform/mac/accessibility/updating-attribute-in-table-row-crash.html
+
+ * accessibility/AccessibilityTableRow.cpp:
+ (WebCore::AccessibilityTableRow::parentTable):
+
+2010-09-13 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Implement EOF handling in TextMode
+ https://bugs.webkit.org/show_bug.cgi?id=45644
+
+ This patch is actually covered by a bunch of tests. We were just
+ magically passing the tests before because of some nutty code in
+ Document.cpp.
+
+ * dom/Document.cpp:
+ (WebCore::Document::implicitClose):
+ - This code was masking the notImplemented in the tree builder.
+ I also removed the use of the setting because it wasn't working
+ properly anyway. I'll implement a working version shortly.
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processEndOfFile):
+ - Implement per the spec.
+
+2010-09-13 Enrica Casucci <enrica@apple.com>
+
+ Reviewed by Sam Weining.
+
+ Paste should be implemented in WebCore like Copy and Cut for Mac also.
+ https://bugs.webkit.org/show_bug.cgi?id=45494
+ <rdar://problem/7660537>
+
+ On the Mac platform, the implementation of the paste operation is all done
+ at the WebKit level. In order to support it on WebKit2 it is necessary to
+ refactor the code and move this functionality at the level of WebCore like
+ we already have on Windows.
+ The original code relies on some in AppKit functions that call back into
+ WebKit causing problems in WebKit2. All this functionality has been moved
+ at the level of the editor client where it can be dealt with appropriately.
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::shouldInsertFragment):
+ * editing/mac/EditorMac.mm: extended to support Mail specific scenarios.
+ (WebCore::Editor::pasteWithPasteboard):
+ * loader/EmptyClients.h:
+ (WebCore::EmptyFrameLoaderClient::canShowMIMETypeAsHTML): Added.
+ (WebCore::EmptyEditorClient::documentFragmentFromAttributedString): Added.
+ (WebCore::EmptyEditorClient::setInsertionPasteboard): Added to support Mail.
+ * loader/FrameLoaderClient.h:
+ * page/EditorClient.h:
+ * platform/Pasteboard.h:
+ * platform/mac/PasteboardMac.mm:
+ (WebCore::Pasteboard::writeSelection): replaced call to Appkit with one that
+ doesn't calll back into WebKit.
+ (WebCore::Pasteboard::documentFragmentWithImageResource): Re-implemented at the
+ WebCore level.
+ (WebCore::Pasteboard::documentFragmentWithRtf): Re-implemented at the
+ WebCore level.
+ (WebCore::uniqueURLWithRelativePart): Added.
+ (WebCore::Pasteboard::documentFragment): Extended to include all the functionality
+ provided in documentFragmentFromPasteboard in WebHTMLView.mm.
+
+2010-09-13 Alejandro G. Castro <alex@igalia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Gtk] Reduce the size of the shadow buffer in the paths using the clip region
+ https://bugs.webkit.org/show_bug.cgi?id=44699
+
+ Intersect the clip bounding rect with the path that we are going
+ to use to create the shadow in order to reduce the region we have
+ to blur.
+
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::drawPathShadow):
+
+210-09-13 Darin Fisher <darin@chromium.org>
+
+ Reviewed by David Levin.
+
+ Add option to conditionally compile smooth scrolling support.
+ https://bugs.webkit.org/show_bug.cgi?id=45689
+
+ The OS(WINDOWS) conditional becomes unnecessary since
+ ENABLE(SMOOTH_SCROLLING) should only be specified on
+ platforms that have a smooth scrolling implementation.
+
+ * platform/ScrollAnimator.cpp:
+ * platform/ScrollAnimatorWin.cpp:
+ * platform/ScrollAnimatorWin.h:
+
+2010-09-13 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Kent Tamura.
+
+ Move functions of StyledMarkupAccumulator below that of MarkupAccumulator
+ https://bugs.webkit.org/show_bug.cgi?id=45624
+
+ Moved the declaration of StyledMarkupAccumulator and the definitions of its member functions
+ to below the definitions of MarkupAccumulator's member functions.
+
+ No new tests are added since this is a cleanup.
+
+ * editing/markup.cpp:
+ (WebCore::StyledMarkupAccumulator::StyledMarkupAccumulator):
+ (WebCore::StyledMarkupAccumulator::appendElement):
+ (WebCore::StyledMarkupAccumulator::shouldAnnotate):
+ (WebCore::StyledMarkupAccumulator::wrapWithNode):
+ (WebCore::StyledMarkupAccumulator::wrapWithStyleNode):
+ (WebCore::StyledMarkupAccumulator::takeResults):
+ (WebCore::StyledMarkupAccumulator::appendText):
+ (WebCore::StyledMarkupAccumulator::renderedText):
+ (WebCore::StyledMarkupAccumulator::stringValueForRange):
+ (WebCore::styleFromMatchedRulesForElement):
+ (WebCore::StyledMarkupAccumulator::removeExteriorStyles):
+ (WebCore::needInterchangeNewlineAfter):
+ (WebCore::styleFromMatchedRulesAndInlineDecl):
+ (WebCore::removeEnclosingMailBlockquoteStyle):
+ (WebCore::removeDefaultStyles):
+
+2010-09-13 Alejandro G. Castro <alex@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] Leak in the GraphicsContextCairo drawPathShadow
+ https://bugs.webkit.org/show_bug.cgi?id=44959
+
+ Fix a leak of the cairo_path.
+
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::drawPathShadow):
+ * platform/graphics/cairo/OwnPtrCairo.cpp:
+ (WTF::cairo_path_t):
+ * platform/graphics/cairo/OwnPtrCairo.h:
+
+2010-09-13 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Fix </sarcasm>
+ https://bugs.webkit.org/show_bug.cgi?id=45645
+
+ Umm... Yeah.
+
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processEndTagForInBody):
+
+2010-09-13 Gyuyoung Kim <gyuyoung.kim@samsung.com>
+
+ Reviewed by Darin Adler.
+
+ [WML] Fix build breaks when WML is enabled
+ https://bugs.webkit.org/show_bug.cgi?id=45628
+
+ There are build breaks by Bug 22382 when WML is enabled. The handleLinkClick() has an event parameter.
+ So, we need to set an event when wml invoke the handleLinkClick(). And, doTextFieldCommandFromEvent()
+ was moved to editor. So, we need to mofidy the invocation in WMLInputElement.cpp
+
+ * wml/WMLAElement.cpp:
+ (WebCore::WMLAElement::defaultEventHandler):
+ * wml/WMLInputElement.cpp:
+ (WebCore::WMLInputElement::defaultEventHandler):
+
+2010-09-13 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] When a feature is disabled by default, the source necessary to build it are not included in the distribution
+ https://bugs.webkit.org/show_bug.cgi?id=45230
+
+ No new tests as this is just a build change.
+
+ * GNUmakefile.am: Move as many sources as possible to the SOURCES primary.
+ Others should be moved over time as we solve issues with them.
+
+2010-09-13 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Darin Adler.
+
+ REGRESSION (r64816-r64889): Crash in WebCore::AccessibilityRenderObject
+ https://bugs.webkit.org/show_bug.cgi?id=43807
+
+ Ensure that visiblePositionForPoint can handle non RenderBoxModelObject types.
+
+ Test: platform/mac/accessibility/visible-position-crash-for-text-node.html
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::visiblePositionForPoint):
+
+2010-09-13 Martin Robinson <mrobinson@igalia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] DOM listeners get wrong keycodes for some keys
+ https://bugs.webkit.org/show_bug.cgi?id=43365
+
+ Produce the proper keycodes for the print screen key as well as the
+ keypad insert and delete keys.
+
+ * platform/qt/PlatformKeyboardEventQt.cpp:
+ (WebCore::windowsKeyCodeForKeyEvent): Fix keycode translation for the mentioned keys.
+
+2010-09-13 Jonathan Dixon <joth@chromium.org>
+
+ Reviewed by Steve Block.
+
+ [chromium] Port test shell geolocation fixes to DRT
+ https://bugs.webkit.org/show_bug.cgi?id=45313
+
+ Also re-apply rolled out patch http://trac.webkit.org/changeset/66886 :-
+ Add missing virtual destructor to the abstract base class.
+
+ * platform/chromium/GeolocationServiceChromium.cpp:
+ (WebCore::GeolocationServiceBridge::~GeolocationServiceBridge):
+ * platform/chromium/GeolocationServiceChromium.h:
+
+2010-09-13 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: upstream testExpandScope debugger test
+ https://bugs.webkit.org/show_bug.cgi?id=45260
+
+ Test: inspector/debugger-expand-scope.html
+
+ * inspector/front-end/InjectedScript.js: return "Arguments" as class name for arguments variable in v8.
+ (injectedScriptConstructor.):
+
+2010-09-13 Mario Sanchez Prada <msanchez@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] ATs should be able to select/unselect text
+ https://bugs.webkit.org/show_bug.cgi?id=25673
+
+ Implement AtkText's setSelection and removeSelection functions
+
+ * accessibility/AccessibilityObject.cpp:
+ (WebCore::AccessibilityObject::visiblePositionRangeForRange):
+ Moved some GTK specific code from a ifdef-endif region to
+ AccessibilityObjectAtk.cpp
+ * accessibility/AccessibilityObject.h:
+ * accessibility/gtk/AccessibilityObjectAtk.cpp:
+ (WebCore::AccessibilityObject::getLengthForTextRange): New.
+ * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
+ (webkit_accessible_text_remove_selection): Implemented following
+ the lead of GAIL's implementation of the AtkText interface.
+ (webkit_accessible_text_set_selection): Implemented following
+ the lead of GAIL's implementation of the AtkText interface.
+ (webkit_accessible_text_set_caret_offset): Changed to directly use
+ visiblePositionRangeForRange now that there's no longer a problem
+ with that, as it was in the past (only worked for text controls).
+
+2010-08-27 Kenneth Rohde Christiansen <kenneth@webkit.org>
+
+ Reviewed by Antti Koivisto.
+
+ Update support for the viewport meta tag algorithm, to
+ match the following draft spec:
+
+ http://people.opera.com/rune/TR/ED-css-viewport-20100806/
+
+ Add common handling of viewport meta tag based on new Opera spec
+ https://bugs.webkit.org/show_bug.cgi?id=44201
+
+ Tests: fast/viewport/viewport-1.html
+ fast/viewport/viewport-10.html
+ fast/viewport/viewport-100.html
+ fast/viewport/viewport-101.html
+ fast/viewport/viewport-102.html
+ fast/viewport/viewport-103.html
+ fast/viewport/viewport-104.html
+ fast/viewport/viewport-105.html
+ fast/viewport/viewport-106.html
+ fast/viewport/viewport-107.html
+ fast/viewport/viewport-108.html
+ fast/viewport/viewport-109.html
+ fast/viewport/viewport-11.html
+ fast/viewport/viewport-110.html
+ fast/viewport/viewport-111.html
+ fast/viewport/viewport-112.html
+ fast/viewport/viewport-113.html
+ fast/viewport/viewport-114.html
+ fast/viewport/viewport-115.html
+ fast/viewport/viewport-116.html
+ fast/viewport/viewport-117.html
+ fast/viewport/viewport-118.html
+ fast/viewport/viewport-119.html
+ fast/viewport/viewport-12.html
+ fast/viewport/viewport-120.html
+ fast/viewport/viewport-121.html
+ fast/viewport/viewport-122.html
+ fast/viewport/viewport-123.html
+ fast/viewport/viewport-124.html
+ fast/viewport/viewport-125.html
+ fast/viewport/viewport-126.html
+ fast/viewport/viewport-127.html
+ fast/viewport/viewport-13.html
+ fast/viewport/viewport-14.html
+ fast/viewport/viewport-15.html
+ fast/viewport/viewport-16.html
+ fast/viewport/viewport-17.html
+ fast/viewport/viewport-18.html
+ fast/viewport/viewport-19.html
+ fast/viewport/viewport-2.html
+ fast/viewport/viewport-20.html
+ fast/viewport/viewport-21.html
+ fast/viewport/viewport-22.html
+ fast/viewport/viewport-23.html
+ fast/viewport/viewport-24.html
+ fast/viewport/viewport-25.html
+ fast/viewport/viewport-26.html
+ fast/viewport/viewport-27.html
+ fast/viewport/viewport-28.html
+ fast/viewport/viewport-29.html
+ fast/viewport/viewport-3.html
+ fast/viewport/viewport-30.html
+ fast/viewport/viewport-31.html
+ fast/viewport/viewport-32.html
+ fast/viewport/viewport-33.html
+ fast/viewport/viewport-34.html
+ fast/viewport/viewport-35.html
+ fast/viewport/viewport-36.html
+ fast/viewport/viewport-37.html
+ fast/viewport/viewport-38.html
+ fast/viewport/viewport-39.html
+ fast/viewport/viewport-4.html
+ fast/viewport/viewport-40.html
+ fast/viewport/viewport-41.html
+ fast/viewport/viewport-42.html
+ fast/viewport/viewport-43.html
+ fast/viewport/viewport-44.html
+ fast/viewport/viewport-45.html
+ fast/viewport/viewport-46.html
+ fast/viewport/viewport-47.html
+ fast/viewport/viewport-48.html
+ fast/viewport/viewport-49.html
+ fast/viewport/viewport-5.html
+ fast/viewport/viewport-50.html
+ fast/viewport/viewport-51.html
+ fast/viewport/viewport-52.html
+ fast/viewport/viewport-53.html
+ fast/viewport/viewport-54.html
+ fast/viewport/viewport-55.html
+ fast/viewport/viewport-56.html
+ fast/viewport/viewport-57.html
+ fast/viewport/viewport-58.html
+ fast/viewport/viewport-59.html
+ fast/viewport/viewport-6.html
+ fast/viewport/viewport-60.html
+ fast/viewport/viewport-61.html
+ fast/viewport/viewport-62.html
+ fast/viewport/viewport-63.html
+ fast/viewport/viewport-64.html
+ fast/viewport/viewport-65.html
+ fast/viewport/viewport-66.html
+ fast/viewport/viewport-67.html
+ fast/viewport/viewport-68.html
+ fast/viewport/viewport-69.html
+ fast/viewport/viewport-7.html
+ fast/viewport/viewport-70.html
+ fast/viewport/viewport-71.html
+ fast/viewport/viewport-72.html
+ fast/viewport/viewport-73.html
+ fast/viewport/viewport-74.html
+ fast/viewport/viewport-75.html
+ fast/viewport/viewport-76.html
+ fast/viewport/viewport-77.html
+ fast/viewport/viewport-78.html
+ fast/viewport/viewport-79.html
+ fast/viewport/viewport-8.html
+ fast/viewport/viewport-80.html
+ fast/viewport/viewport-81.html
+ fast/viewport/viewport-82.html
+ fast/viewport/viewport-83.html
+ fast/viewport/viewport-84.html
+ fast/viewport/viewport-85.html
+ fast/viewport/viewport-86.html
+ fast/viewport/viewport-87.html
+ fast/viewport/viewport-88.html
+ fast/viewport/viewport-9.html
+ fast/viewport/viewport-90.html
+
+ * dom/ViewportArguments.cpp:
+ (WebCore::findConfigurationForViewportData):
+ (WebCore::findSizeValue):
+ (WebCore::findScaleValue):
+ (WebCore::findUserScalableValue):
+ (WebCore::findTargetDensityDPIValue):
+ (WebCore::setViewportFeature):
+ * dom/ViewportArguments.h:
+ (WebCore::ViewportArguments::):
+ (WebCore::ViewportArguments::ViewportArguments):
+ (WebCore::ViewportArguments::hasCustomArgument):
+
+2010-09-13 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Don't add empty strings to list of supported image MIME types
+ https://bugs.webkit.org/show_bug.cgi?id=45643
+
+ After <http://trac.webkit.org/changeset/67355> getMIMETypeForExtension()
+ returns an empty string instead of "application/octet-stream" for unsupported
+ extensions. Don't add these to the list of supported types, and clean out
+ the logic that removed "application/octet-stream" from supported types.
+
+ Fixes crash in initializeMIMETypeRegistry() due to inserting String() into
+ a HashSet<String>.
+
+ * platform/MIMETypeRegistry.cpp:
+ (WebCore::initializeSupportedImageMIMETypes):
+ (WebCore::initializeSupportedImageMIMETypesForEncoding):
+
+2010-09-13 Adam Barth <abarth@webkit.org>
+
+ Attempted Qt build fix.
+
+ * html/parser/HTMLElementStack.cpp:
+
+2010-09-13 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Apply spec changes to InForeignContentMode
+ https://bugs.webkit.org/show_bug.cgi?id=45636
+
+ Now breaking out of foreign content doesn't always bring you back to
+ HTML. If you have a foreign content element that can contain HTML, you
+ just get brought back to that element.
+
+ * html/parser/HTMLElementStack.cpp:
+ (WebCore::HTMLNames::isForeignContentScopeMarker):
+ (WebCore::HTMLElementStack::popUntilForeignContentScopeMarker):
+ * html/parser/HTMLElementStack.h:
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTag):
+ (WebCore::HTMLTreeBuilder::processEndOfFile):
+
+2010-09-13 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Convert notImplemented() to ASSERT_NOT_REACHED
+ https://bugs.webkit.org/show_bug.cgi?id=45639
+
+ The reason we never implemented this state is because it's not actually
+ reachable.
+
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTag):
+
+2010-09-13 Patrick Gansterer <paroga@paroga.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [WINCE] Buildfix for ScrollAnimatorWin
+ https://bugs.webkit.org/show_bug.cgi?id=45595
+
+ Use fabs() instead of abs().
+
+ * platform/ScrollAnimatorWin.cpp:
+ (WebCore::ScrollAnimatorWin::scroll):
+ (WebCore::ScrollAnimatorWin::animateScroll):
+
+2010-09-13 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Remove fixed FIXME
+ https://bugs.webkit.org/show_bug.cgi?id=45637
+
+ The spec made assertions that were false. Hixie fixed the spec by
+ removing the assertions. There's no need to keep these FIXMEs in the
+ code.
+
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processEndTagForInCell):
+
+2010-09-12 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Remove FIXME now that the HTML5 spec has been updated
+ https://bugs.webkit.org/show_bug.cgi?id=45634
+
+ The spec changed to say what we do here so this FIXME isn't needed
+ anymore.
+
+ Tests: fast/parser/form-pointer-1.html
+ fast/parser/form-pointer-2.html
+ fast/parser/form-pointer-3.html
+ fast/parser/form-pointer-4.html
+
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTagForInTable):
+
+2010-09-12 Robin Qiu <robin.qiu@torchmobile.com.cn>
+
+ Reviewed by Antonio Gomes.
+
+ https://bugs.webkit.org/show_bug.cgi?id=18768
+ Fixed a bug in scroll flow. When we don't have scrollbars, we need to
+ repaintFixedElementsAfterScrolling(), sendScrollEvent() ... as well as
+ scrollContents();
+
+ Tests: scrollbars/scrollevent-iframe-no-scrolling-wheel.html
+ scrollbars/scrollevent-iframe-no-scrolling.html
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::valueChanged): Added.
+ * page/FrameView.h: Added a new method.
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::valueChanged): Added.
+ (WebCore::ScrollView::updateScrollbars):
+ * platform/ScrollView.h: Added a new method.
+
+2010-09-10 MORITA Hajime <morrita@google.com>
+
+ Reviewed by Tony Chang.
+
+ [Chromium] Implement textInputController.hasSpellingMarker() for Chromium
+ https://bugs.webkit.org/show_bug.cgi?id=45441
+
+ Added an API for testing marker state.
+ We locate this here instead of DRT for sharing the logic between
+ multiple ports.
+
+ * WebCore.exp.in:
+ * editing/Editor.cpp:
+ (WebCore::Editor::selectionStartHasSpellingMarkerFor):
+ * editing/Editor.h:
+
+2010-09-12 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Adoption agency should use takeAllChildrenFrom
+ https://bugs.webkit.org/show_bug.cgi?id=45570
+
+ Before this patch, we were using an unsafe pattern of walking the
+ sibling list without grabbing references. Instead, we should use the
+ shiny new takeAllChildrenFrom method that shoves the children into a
+ vector first. Also, update takeAllChildrenFrom to handle the case
+ where the old parent is attached.
+
+ * dom/ContainerNode.cpp:
+ (WebCore::ContainerNode::takeAllChildrenFrom):
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
+ * html/parser/HTMLTreeBuilder.h:
+
+2010-09-12 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ isParsingFragment assert hit in new treebuilder
+ https://bugs.webkit.org/show_bug.cgi?id=45621
+
+ Update our list of special tags to match the spec.
+
+ * html/parser/HTMLTreeBuilder.cpp:
+
+2010-09-12 Robert Hogan <robert@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Fix http/tests/navigation/reload-subframe-object.html
+
+ We need to bring our use of getMimeTypeForPath() and
+ getMimeTypeForExtension() into line with WebCore expectations.
+
+ We should use MIMETypeRegistry::getMIMETypeForExtension() for cases
+ where an empty mimetype should be returned if no match is found, and
+ MIMETypeRegistry::getMIMETypeForPath() for cases where
+ 'application/octet-stream' should be returned if no match is found.
+
+ Fixes http/tests/navigation/reload-subframe-object.html
+
+ Based on findings in webkit.org/b/31398 and webkit.org/b/15554.
+
+ https://bugs.webkit.org/show_bug.cgi?id=45613
+
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
+ * platform/qt/MIMETypeRegistryQt.cpp:
+ (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
+
+2010-09-12 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Adele Peterson.
+
+ Neglect unlikely hyphenation opportunities
+ https://bugs.webkit.org/show_bug.cgi?id=45606
+
+ Avoid looking for hyphenation points in about 40% of the cases at the cost of missing about
+ 3% of the hyphenation opportunities.
+
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::tryHyphenating): Bail out if the widest the prefix before the hyphen can be is no more
+ than 5/4 the font size.
+
+2010-09-12 Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
+
+ Reviewed by Simon Hausmann.
+
+ [Qt] fix qt_webkit_version.pri install for in-Qt builds
+
+ Always add the target, even if building inside Qt - as opposed to the
+ headers and libraries, there are no rules for that coming from
+ qbase.pri.
+
+ Task-number: QTBUG-13306
+
+ * WebCore.pro:
+
+2010-09-12 Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
+
+ Reviewed by Simon Hausmann.
+
+ [Qt] Let QtWebKit inject itself into the qt configuration
+
+ i.e., don't explicitly deal with qt_webkit_version.pri outside of the
+ webkit source directory.
+
+ Task-number: QTBUG-12379
+
+ * WebCore.pro:
+
+2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
+
+ [Qt] Build fix.
+
+ * WebCore.pro: Re-add erroneously removed sources.
+
+2010-09-12 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Remove Path::closeSubpath() workaround for broken miter joins
+ https://bugs.webkit.org/show_bug.cgi?id=45618
+
+ Removed Path::closeCanvasSubpath() and share the logic between Canvas and SVG
+ paths. The problem was actually in Qt's path stroker and has been fixed for Qt 4.7.1.
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::closePath):
+ * platform/graphics/Path.h:
+ * platform/graphics/qt/PathQt.cpp:
+
+2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
+
+ Fix the Gtk and minimal builds.
+
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::npObject): Correct the #ifdefs.
+ (WebCore::PluginView::bindingInstance): Moved npErr variable
+ into npObject() function where it is used.
+
+2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
+
+ [Qt] Prospective build fix for minimal build.
+
+ * plugins/PluginView.cpp: Guard newly added function
+ by ENABLE_NETSCAPE_PLUGIN feature.
+ (WebCore::PluginView::npObject):
+ * plugins/PluginView.h:
+
+2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Add support for binding QtWebKit to a QScriptEngine.
+
+ The ScriptController owns the V8 context, and this patch
+ for the Qt build also gives it a QScriptEngine, that has
+ been instructed to adopt the V8 context.
+
+ This is the enabler for the QObject bindings, used in
+ the API and DRT.
+
+ * WebCore.pro:
+ * bindings/v8/ScriptController.cpp: Include QScriptEngine
+ for the Qt build, to let the ~ScriptController destructor
+ find the QScriptEngine destructor (via OwnPtr).
+ * bindings/v8/ScriptController.h: Declare getters.
+ * bindings/v8/ScriptControllerQt.cpp: Added.
+ (WebCore::ScriptController::qtScriptEngine): Implement
+ engine adoption.
+
+2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Last bits and pieces for a V8 build.
+
+ When building with V8, get it from QtScript.
+
+ * WebCore.pro: Use QtScript, removed non-existant
+ bridge files from the build.
+
+2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Add PlatformBridge for V8 build.
+
+ Add the minimalisting platform bridge with the two
+ methods needed by NPV8Object.cpp.
+
+ * WebCore.pro:
+ * platform/qt/PlatformBridge.h: Added.
+ * platform/qt/PlatformBridgeQt.cpp: Added.
+ (WebCore::PlatformBridge::popupsAllowed):
+ (WebCore::PlatformBridge::pluginScriptableObject):
+ * plugins/PluginView.cpp: Refactor the plugin object
+ retrieval code into a separate function, called by
+ bindingInstance() and PlatformBridge.
+ (WebCore::PluginView::npObject):
+ (WebCore::PluginView::bindingInstance):
+ * plugins/PluginView.h:
+
+2010-09-11 Jer Noble <jer.noble@apple.com>
+
+ Reviewed by Eric Carlson.
+
+ http/tests/media/text-served-as-text.html failing on Windows (Debug+Release)
+ https://bugs.webkit.org/show_bug.cgi?id=45603
+
+ Disable the eat/text components under Windows the same way as we do on the Mac.
+
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
+ * platform/graphics/win/QTMovie.cpp:
+ * platform/graphics/win/QTMovie.h:
+
+2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ Fix compilation of the V8 bindings on X11 with Qt.
+
+ This changes brings the file in sync with its copy in bridge/,
+ adding additional conflicting X11 keywords to undef. This is
+ a temporary fix until the file is removed altogether, which is
+ tracked in https://bugs.webkit.org/show_bug.cgi?id=45617
+
+ * bindings/v8/npruntime_internal.h:
+
+2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ Fix compilation of the V8 bindings on X11 with Qt.
+
+ These headers include npruntime, which drag on X11Resources.h, which
+ among other things #define's None and Boolean. Later on v8.h is included,
+ which declares these in enums and therefore conflicts. npruntime_internal.h
+ was introduced exactly to address this problem by including npruntime.h
+ and undeff'ing the offending constants.
+
+ * bindings/v8/V8Helpers.h:
+ * bindings/v8/V8NPObject.h:
+ * bindings/v8/V8NPUtils.h:
+
+2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
+
+ Gtk build fix.
+
+ Use false instead of False after
+ http://trac.webkit.org/changeset/67323
+
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::updatePluginWidget):
+ (WebCore::PluginView::paint):
+
+2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Fix the compilation of V8Binding.cpp when compiling with Qt.
+
+ * bindings/v8/V8Binding.cpp:
+ (WebCore::WebCoreStringResource::WebCoreStringResource): In this
+ line an AtomicString should be converted to a WTF::String. The former
+ has a conversion operator to the latter, to be able to call the
+ WTF::String copy constructor. When compiling with Qt, then AtomicString
+ also has a conversion operator to QString _and_ WTF::String has an
+ implicit constructor that takes a QString. Therefore the compiler is
+ confused and not sure which conversion to prefer, the one that isn't
+ actually a conversion - going to WTF::String - or the conversion from
+ AtomicString to QString and then constructing the WTF::String from
+ a QString. To resolve this ambiguity we explicitly call the string()
+ helper function on the AtomicString, which is equivalent to the
+ operator WTF::String().
+
+2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ Fix the build without JSC.
+
+ Complement http://trac.webkit.org/changeset/59826 and
+ add missing JSC guards.
+
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::bindingInstance):
+ (WebCore::PluginView::privateBrowsingStateChanged):
+ * plugins/qt/PluginViewQt.cpp:
+ (WebCore::PluginView::dispatchNPEvent):
+ (WebCore::PluginView::setNPWindowIfNeeded):
+ (WebCore::PluginView::platformStart):
+
+2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ Fix compilation with V8 and XPath enabled.
+
+ V8XPathNSResolver.cpp includes V8XPathNSResolver.h,
+ which includes V8DOMWrapper.h as its first header.
+ V8DOMWrapper.h then uses V8XPathNSResolver in an inline
+ function, and gcc doesn't seem to like this, because
+ at this point the type isn't known ("V8XPathNSResolver
+ has not been declared"). Forward declaring the type
+ doesn't help unfortunately: "incomplete type
+ 'WebCore::V8XPathNSResolver' used in nested name
+ specifier".
+
+ To resolve this circular dependency, this patch moves
+ the inline function into the .cpp file.
+
+ * bindings/v8/V8DOMWrapper.cpp:
+ (WebCore::V8DOMWrapper::getXPathNSResolver):
+ * bindings/v8/V8DOMWrapper.h:
+
+2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt][X11] Fix build with V8 against X11 headers.
+
+ Added "True" and "False" to the list of words
+ we free from the X11 macro jail.
+
+ * bridge/npruntime_internal.h:
+ * config.h: The V8 bindings end up indirectly pulling
+ in X11 headers and they use True/False. There's no
+ central header apart from this one, so include the
+ x11 fixing header here for Qt/X11/V8.
+ * plugins/qt/PluginViewQt.cpp:
+ (WebCore::PluginView::paint): Use false instead of False
+ since False isn't available anymore.
+
+2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Fix compilation with V8 and Qt.
+
+ Use WebKit's page cache for ScriptCachedFrameData.
+
+ * bindings/v8/ScriptCachedFrameData.h:
+
+2010-09-12 Simon Hausmann <simon.hausmann@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ Fix compiler warning.
+
+ NPClass has 13 members, the last one (NPConstructFunctionPtr construct) wasn't
+ initialized explicitly.
+
+ * bindings/v8/NPV8Object.cpp:
+
+2010-09-12 Mario Sanchez Prada <msanchez@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [Gtk] get_n_selections and get_selection fail when selecting text across object boundaries
+ https://bugs.webkit.org/show_bug.cgi?id=26991
+
+ Fix AtkText getNSelections() and getSelection() to work properly
+
+ * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
+ (selectionBelongsToObject): Check that both the selection intersects
+ the node AND that the selection is not just "touching" one of the
+ boundaries for the selected node. We want to check whether the
+ node is actually inside the region, at least partially
+ (getSelectionOffsetsForObject): New function to get the start and
+ end offsets of a selection for a given accessible object.
+ (webkit_accessible_text_get_selection): Return zero when both
+ start and end offsets are equal, following the lead of GAIL.
+
+2010-09-11 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Sam Weinig.
+
+ Make SecurityOrigin::canDisplay an instance function
+ https://bugs.webkit.org/show_bug.cgi?id=45219
+
+ This function was secretly an instance function because callers needed
+ to pass in a document (which owns a SecurityOrigin). Only the
+ FrameLoader actually needs the method to be static.
+
+ * WebCore.exp.in:
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::isSafeToLoadURL):
+ * loader/Cache.cpp:
+ (WebCore::Cache::requestResource):
+ - Notice that DocLoader::doc() can never be 0.
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::loadFrameRequest):
+ * loader/PingLoader.cpp:
+ (WebCore::PingLoader::loadImage):
+ * loader/SubframeLoader.cpp:
+ (WebCore::SubframeLoader::loadMediaPlayerProxyPlugin):
+ (WebCore::SubframeLoader::createJavaAppletWidget):
+ (WebCore::SubframeLoader::loadSubframe):
+ (WebCore::SubframeLoader::loadPlugin):
+ * loader/SubresourceLoader.cpp:
+ (WebCore::SubresourceLoader::create):
+ * page/SecurityOrigin.cpp:
+ (WebCore::SecurityOrigin::canDisplay):
+ (WebCore::SecurityOrigin::deprecatedCanDisplay):
+ * page/SecurityOrigin.h:
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::load):
+
+2010-09-11 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Sam Weinig.
+
+ Make SecurityOrigin::canDisplay an instance function
+ https://bugs.webkit.org/show_bug.cgi?id=45219
+
+ This function was secretly an instance function because callers needed
+ to pass in a document (which owns a SecurityOrigin). Only the
+ FrameLoader actually needs the method to be static.
+
+ * WebCore.exp.in:
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::isSafeToLoadURL):
+ * loader/Cache.cpp:
+ (WebCore::Cache::requestResource):
+ - Notice that DocLoader::doc() can never be 0.
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::loadFrameRequest):
+ * loader/PingLoader.cpp:
+ (WebCore::PingLoader::loadImage):
+ * loader/SubframeLoader.cpp:
+ (WebCore::SubframeLoader::loadMediaPlayerProxyPlugin):
+ (WebCore::SubframeLoader::createJavaAppletWidget):
+ (WebCore::SubframeLoader::loadSubframe):
+ (WebCore::SubframeLoader::loadPlugin):
+ * loader/SubresourceLoader.cpp:
+ (WebCore::SubresourceLoader::create):
+ * page/SecurityOrigin.cpp:
+ (WebCore::SecurityOrigin::canDisplay):
+ (WebCore::SecurityOrigin::deprecatedCanDisplay):
+ * page/SecurityOrigin.h:
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::load):
+
+2010-09-11 Simon Hausmann <simon.hausmann@nokia.com>
+
+ Unreviewed.
+
+ [Qt] Trivial V8 build fix.
+
+ * WebCore.pri: Add storage, workers and css to the include paths for the
+ JS code generator.
+
+2010-09-11 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Simon Hausmann.
+
+ [Qt] V8 port: Fix "WTF::String::utf8" returns incomplete type WTF::CString
+ https://bugs.webkit.org/show_bug.cgi?id=45157
+
+ Include CString.h where necessary. Chromium builds would get it from
+ KURLGooglePrivate.h so this is only an issue for Qt + V8.
+
+ * bindings/v8/V8Proxy.cpp:
+ * inspector/InspectorDebuggerAgent.cpp:
+ * inspector/InspectorProfilerAgent.cpp:
+ * plugins/PluginDatabase.cpp:
+
+2010-09-11 Simon Hausmann <simon.hausmann@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] V8 port: webkit project files changes
+ https://bugs.webkit.org/show_bug.cgi?id=45140
+
+ * WebCore.pro: Removed unecessary common.pri inclusion from earlier patch.
+
+2010-09-03 Vlad Burlik <volodimir.burlik@nokia.com>, Simon Hausmann <simon.hausmann@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] V8 port: webcore project files changes
+ https://bugs.webkit.org/show_bug.cgi?id=45141
+
+ Modify webcore project files to include V8 javascript engine. By default disabled.
+
+ * WebCore.pri:
+ * WebCore.pro:
+ * features.pri:
+
+2010-09-11 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Simon Hausmann.
+
+ Web Inspector: Include CString.h in generated files
+
+ This is necessary for generated code that uses the CString
+ returned by String::utf8() (from generateBackendDispatcher)
+
+ Chromium builds already get CString.h from KURLGooglePrivate.h
+ so this issue only occurs when building Qt against V8.
+
+ * inspector/CodeGeneratorInspector.pm:
+
+2010-09-11 Adele Peterson <adele@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=45587
+ Move line clamp code to its own function.
+
+ * rendering/RenderFlexibleBox.cpp:
+ (WebCore::RenderFlexibleBox::layoutVerticalBox):
+ (WebCore::RenderFlexibleBox::applyLineClamp):
+ * rendering/RenderFlexibleBox.h:
+
+2010-09-11 Mihai Parparita <mihaip@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ URIs in styles created via innerHTML are not resolved against the document's base URI
+ https://bugs.webkit.org/show_bug.cgi?id=45565
+
+ The dummy document used for fragment parsing created by
+ FragmentParsingContext should use the base URI of the fragment's
+ document. Since (HTML)Document doesn't expose a setter for the base URI
+ (and shouldn't), we allow it to be set by the constructor/create
+ function.
+
+ Also remove some obsolete code that references the legacy tree builder
+ from HTMLElement that I happened to notice.
+
+ Test: fast/innerHTML/innerHTML-uri-resolution.html
+
+ * dom/Document.cpp:
+ (WebCore::Document::Document):
+ * dom/Document.h:
+ * html/HTMLDocument.cpp:
+ (WebCore::HTMLDocument::HTMLDocument):
+ * html/HTMLDocument.h:
+ (WebCore::HTMLDocument::create):
+ * html/HTMLElement.cpp:
+ (WebCore::createFragmentFromSource):
+ (WebCore::HTMLElement::setInnerHTML):
+ * html/parser/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::FragmentParsingContext::FragmentParsingContext):
+
+2010-09-10 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org>
+
+ Reviewed by Darin Adler.
+
+ Add NetworkingContext to avoid layer violations
+ https://bugs.webkit.org/show_bug.cgi?id=42292
+
+ Activate NetworkingContext:
+
+ Since the ResourceHandle::create, ResourceHandle::start and
+ ResourceHandle::loadResourceSynchronously API's were modified,
+ having their Frame* parameter substituted by a NetworkingContext*,
+ all implementations of them were also modified.
+ This patch also modifies all functions that were calling the above
+ ones.
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::loadResourceSynchronously):
+ * loader/FrameLoader.h:
+ * loader/MainResourceLoader.cpp:
+ (WebCore::MainResourceLoader::loadNow):
+ * loader/PingLoader.cpp:
+ (WebCore::PingLoader::PingLoader):
+ * loader/ResourceLoader.cpp:
+ (WebCore::ResourceLoader::load):
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ (WebCore::ApplicationCacheGroup::createResourceHandle):
+ * loader/icon/IconFetcher.cpp:
+ (WebCore::IconFetcher::loadEntry):
+ * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
+ (webKitWebSrcStart):
+ * platform/network/ResourceHandle.cpp:
+ (WebCore::ResourceHandle::create):
+ * platform/network/ResourceHandle.h:
+ * platform/network/ResourceHandleInternal.h:
+ (WebCore::ResourceHandleInternal::ResourceHandleInternal):
+ * platform/network/cf/ResourceHandleCFNet.cpp:
+ (WebCore::ResourceHandle::start):
+ (WebCore::ResourceHandle::loadResourceSynchronously):
+ * platform/network/curl/ResourceHandleCurl.cpp:
+ (WebCore::ResourceHandle::start):
+ (WebCore::ResourceHandle::loadResourceSynchronously):
+ * platform/network/mac/ResourceHandleMac.mm:
+ (WebCore::ResourceHandle::start):
+ (WebCore::ResourceHandle::loadResourceSynchronously):
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
+ (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
+ (WebCore::QNetworkReplyHandler::start):
+ * platform/network/qt/ResourceHandleQt.cpp:
+ (WebCore::ResourceHandle::start):
+ (WebCore::ResourceHandle::willLoadFromCache):
+ (WebCore::ResourceHandle::loadResourceSynchronously):
+ * platform/network/soup/ResourceHandleSoup.cpp:
+ * platform/network/win/ResourceHandleWin.cpp:
+ (WebCore::ResourceHandle::start):
+
+2010-09-10 Jer Noble <jer.noble@apple.com>
+
+ No review; build fix only.
+
+ <CoreGraphics/CGAffineTransform.h> isn't on the build bots either. Wrap
+ all references to m_movieTransform in #if USE(ACCELERATED_COMPOSITING) guards.
+
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::MediaPlayerPrivateQuickTimeVisualContext):
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::naturalSize):
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::retrieveAndResetMovieTransform):
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
+
+2010-09-10 Jer Noble <jer.noble@apple.com>
+
+ No review; build fix only.
+
+ <CoreGraphics/CGFloat.h> does not exist on the build bots. Replace
+ instances of CGFAbs() with abs().
+
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::naturalSize):
+
+2010-09-10 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Darin Adler.
+
+ <rdar://problem/8414282> Can’t dynamically change first-letter to/from floating
+
+ Test: fast/dynamic/first-letter-display-change.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::styleForFirstLetter): Factored this helper function out.
+ (WebCore::RenderBlock::updateFirstLetter): Renamed variables so that the
+ “update style” and “create new” branches use the same terminology. In the
+ update case, if the style change requires a new renderer, handle it.
+ * rendering/RenderTextFragment.h:
+ (WebCore::toRenderTextFragment): Added.
+
+2010-09-10 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Remove unnecessary constraint in WebCore of choosing either text zoom or full page zoom.
+ Precursor to <rdar://problem/7660657>
+ https://bugs.webkit.org/show_bug.cgi?id=45522
+
+ * GNUmakefile.am:
+ * WebCore.exp.in:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ Remove ZoomMode.h
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize):
+ Remove uses of shouldApplyTextZoom(), it had turned into just a compare to 1.0f.
+
+ * html/HTMLBodyElement.cpp:
+ (WebCore::adjustForZoom):
+ (WebCore::HTMLBodyElement::setScrollLeft):
+ (WebCore::HTMLBodyElement::setScrollTop):
+ Convert these to use the explicit pageZoomFactor() function, it made no sense for text zoom
+ anyway.
+
+ * page/Frame.h:
+ Remove include of ZoomMode.h
+
+ * page/FrameView.cpp:
+ (WebCore::parentPageZoomFactor):
+ (WebCore::parentTextZoomFactor):
+ (WebCore::FrameView::FrameView):
+ (WebCore::FrameView::setPageZoomFactor):
+ (WebCore::FrameView::setTextZoomFactor):
+ (WebCore::FrameView::setPageAndTextZoomFactors):
+ * page/FrameView.h:
+ (WebCore::FrameView::pageZoomFactor):
+ (WebCore::FrameView::textZoomFactor):
+ Change FrameView to store two values for zoom, one for page zoom and one for text zoom.
+
+ * page/Settings.cpp:
+ (WebCore::Settings::Settings):
+ * page/Settings.h:
+ Removed zoom mode.
+
+ * page/ZoomMode.h: Removed.
+
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::zoomFactor):
+ Remove now unnecessary call to shouldApplyPageZoom since it will be 1 if it should
+ be ignored.
+
+ * svg/SVGSVGElement.cpp:
+ (WebCore::SVGSVGElement::setCurrentScale):
+ Use explicit setPageZoomFactor function.
+
+2010-09-10 Ryuan Choi <ryuan.choi@samsung.com>
+
+ Unreviewed build fix for EFL.
+
+ [EFL] REGRESSION(67167) build break because of newly added JSBindingState.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=45537
+
+ * CMakeLists.txt:
+
+2010-09-10 Darin Adler <darin@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Move some Dashboard stuff from WebCore to WebKit along with a bit more FrameMac cleanup
+ https://bugs.webkit.org/show_bug.cgi?id=45582
+
+ * WebCore.exp.in: Updated.
+
+ * WebCore.xcodeproj/project.pbxproj: Removed WebDashboardRegion.h/m.
+ * page/mac/WebDashboardRegion.h: Removed.
+ * page/mac/WebDashboardRegion.m: Removed.
+
+ * page/Frame.h: Removed unneeded #if. Removed dashboardRegionsDictionary function, now
+ handled in WebKit. Removed searchForNSLabelsAboveCell function, which had become dead code.
+ * page/mac/FrameMac.mm: Ditto. Also tweaked a place that said "int unsigned".
+
+2010-09-10 Peter Kasting <pkasting@google.com>
+
+ Reviewed by Darin Adler.
+
+ Make middle clicks not fire DOM onclick events.
+ https://bugs.webkit.org/show_bug.cgi?id=22382
+
+ * html/HTMLAnchorElement.cpp: Explicitly include middle-clicks in the
+ computation of what constitutes a link click, since they're no longer
+ implicitly included.
+ (WebCore::isLinkClick):
+ * html/HTMLInputElement.cpp: Removed unneeded checks that click events
+ are coming from the left mouse button, since they all are now.
+ (WebCore::HTMLInputElement::preDispatchEventHandler):
+ (WebCore::HTMLInputElement::postDispatchEventHandler):
+ (WebCore::HTMLInputElement::defaultEventHandler):
+ * page/EventHandler.cpp: Changed logic to send a click event only for
+ the left button.
+ (WebCore::EventHandler::handleMouseDoubleClickEvent):
+ (WebCore::EventHandler::handleMouseReleaseEvent):
+
+2010-09-10 Adam Barth <abarth@webkit.org>
+
+ Attempted build fix for Qt Minimal.
+
+ * dom/Element.cpp:
+ (WebCore::Element::getBoundingClientRect):
+
+2010-09-10 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ Pseudostyle resolution corrupts cached child index values
+ https://bugs.webkit.org/show_bug.cgi?id=45574
+
+ Covered by fast/dom/firstline-fixed-crash.html and fast/dom/firstletter-tablecell-crash.html.
+
+ RenderBlock::updateFirstLetter() calls getCachedPseudoStyle() passing as the parent style the
+ style of the parent of the first letter, which is not always the parent of the element for
+ which we are getting :first-letter style. As a result, style resolution caches childIndex values
+ in the wrong element’s style.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::pseudoStyleForElement): Create the new style and inherit from
+ the parent style before matching rules, to avoid corrupting the parent style itself.
+ (WebCore::CSSStyleSelector::checkSelector): Always pass the element’s parent style as
+ the parent style here.
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::updateFirstLetter): Removed the null check that was added
+ in r67183.
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::findNextLineBreak): Removed the null check that was added
+ in r67184.
+
+2010-09-10 Jer Noble <jer.noble@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Movies with track or movie matrices don't display in <video> elements (Safari 5/Windows)
+ https://bugs.webkit.org/show_bug.cgi?id=45333
+ rdar://problem/81333126
+
+ QuickTime will refuse to decode video frames for movies whose movie and track matrices
+ are non-identity. To work around this problem, extract the movie and track matrices
+ from the movie, and set that matrix on the video layer instead.
+
+ * WebCore.vcproj/QTMovieWin.vcproj:
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayoutClient::LayoutClient): Added.
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayoutClient::layoutSublayersOfLayer):
+ Layout the video layer according to its superlayer's size.
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::MediaPlayerPrivateQuickTimeVisualContext):
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::platformLayer):
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::naturalSize):
+ Apply the m_movieTransform to the size reported by QTMovie.
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::retrieveAndResetMovieTransform):
+ Calculate m_movieTransform and reset the movie and track matrices in the movie.
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::createLayerForMovie):
+ Create two nested layers instead of one.
+ (WebCore::MediaPlayerPrivateQuickTimeVisualContext::destroyLayerForMovie):
+ Make sure to remove m_qtVideoLayer from any superlayer before dereferencing it.
+ * platform/graphics/win/QTMovie.cpp:
+ (QTMovie::videoTracks): Added.
+ (QTMovie::getTransform): Added.
+ (QTMovie::setTransform): Added.
+ (QTMovie::resetTransform): Added.
+ * platform/graphics/win/QTMovie.h:
+ * platform/graphics/win/QTTrack.cpp: Added.
+ * platform/graphics/win/QTTrack.h: Added.
+ * platform/graphics/win/WKCACFLayer.cpp:
+ (WebCore::WKCACFLayer::setBounds): Call setNeedsLayout() if a layoutClient is present.
+ (WebCore::WKCACFLayer::setFrame): Call setNeedsLayout() if a layoutClient is present.
+
+2010-09-10 Jer Noble <jer.noble@apple.com>
+
+ No review; build fix only.
+
+ Touch mediaControlsQuickTime in order to trigger the UserAgentStyleSheet.h to be rebuilt.
+
+ * css/mediaControlsQuickTime.css:
+ (audio::-webkit-media-controls-volume-slider-mute-button, video::-webkit-media-controls-volume-slider-mute-button):
+
+2010-09-10 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Darin Fisher.
+
+ Move code from WebKit-layer to DocumentLoader
+ https://bugs.webkit.org/show_bug.cgi?id=45569
+
+ There's a bunch of code that's copy/pasted (poorly) across all the
+ ports that really belongs in WebCore. This patch moves that logic into
+ DocumentLoader. This patch is a step on the path to having
+ DocumentLoader own DocumentWriter.
+
+ * WebCore.exp.in:
+ * loader/DocumentLoader.cpp:
+ (WebCore::DocumentLoader::commitData):
+ * loader/DocumentLoader.h:
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::finishedLoadingDocument):
+
+2010-09-10 Cosmin Truta <ctruta@chromium.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ getBoundingClientRect Broken for SVG Elements
+ https://bugs.webkit.org/show_bug.cgi?id=42815
+
+ Use getBBox to retrieve the bounding rectangle for SVG elements.
+
+ Test: svg/dom/getBoundingClientRect.xhtml
+
+ * dom/Element.cpp:
+ (Element::getBoundingClientRect):
+
+2010-09-09 Jer Noble <jer.noble@apple.com>
+
+ Reviewed by Eric Carlson.
+
+ Adopt shared control drawing for <video> controls on Windows
+ https://bugs.webkit.org/show_bug.cgi?id=45490
+
+ * DerivedSources.make: Remove the OS check around mediaControlsQuickTime.css.
+ * rendering/RenderMediaControls.cpp:
+ (WebCore::determineState): Use WKMediaControllerThemeState flags instead of SafariTheme ones.
+ (WebCore::getUnzoomedRectAndAdjustCurrentContext): Added. Copied verbatim from RenderMediaMac.mm.
+ (WebCore::RenderMediaControls::adjustMediaSliderThumbSize): Use wkMeasureMediaUIPart to adjust the thumb size.
+ (WebCore::RenderMediaControls::paintMediaControlsPart): Use wkDrawMediaUIPart instead of paintThemePart.
+ (WebCore::RenderMediaControls::volumeSliderOffsetFromMuteButton): Added. Copied verbatim from RenderMediaMac.mm.
+ * rendering/RenderMediaControls.h:
+ * rendering/RenderThemeWin.cpp:
+ (WebCore::RenderThemeWin::adjustSliderThumbSize): Adjust both sliders and volume sliders.
+ (WebCore::RenderThemeWin::extraMediaControlsStyleSheet): Added. Returns the mediaControlsQuickTime sheet.
+ (WebCore::RenderThemeWin::paintMediaRewindButton): Added. Pass through to RenderMediaControls.
+ (WebCore::RenderThemeWin::paintMediaControlsBackground): Added. Pass through to RenderMediaControls.
+ (WebCore::RenderThemeWin::paintMediaVolumeSliderContainer): Added. Pass through to RenderMediaControls.
+ (WebCore::RenderThemeWin::paintMediaVolumeSliderTrack): Added. Pass through to RenderMediaControls.
+ (WebCore::RenderThemeWin::paintMediaVolumeSliderThumb): Added. Pass through to RenderMediaControls.
+ (WebCore::RenderThemeWin::volumeSliderOffsetFromMuteButton): Added. Pass through to RenderMediaControls.
+ * rendering/RenderThemeWin.h:
+
+2010-09-10 Peter Kasting <pkasting@google.com>
+
+ Reviewed by Darin Adler.
+
+ Cleanup and simplification in advance of making middle clicks not send a
+ click event.
+ https://bugs.webkit.org/show_bug.cgi?id=22382
+
+ * editing/DeleteButton.cpp:
+ (WebCore::DeleteButton::defaultEventHandler): Removed unneeded code to
+ check if the event is a MouseEvent. Any click event will do.
+ * html/HTMLAnchorElement.cpp:
+ (WebCore::appendServerMapMousePosition): Added. Factors out the
+ modifications to the URL to add the mouse position to make the default
+ event handler function easier to read.
+ (WebCore::HTMLAnchorElement::defaultEventHandler): Reorganized to make
+ the enter key logic separate from the link clicking logic and simplify
+ the function. This makes minor functional changes like not calling
+ FrameLoader::urlSelected() for fake "keydown" events constructed from
+ JavaScript.
+ (WebCore::HTMLAnchorElement::isLiveLink): Refactored to use new shared
+ implementation in treatLinkAsLiveForEventType().
+ (WebCore::eventType): Factors out event type calculation (for
+ treatLinkAsLiveForEventType()) from the default event handler to make it
+ easier to read.
+ (WebCore::HTMLAnchorElement::treatLinkAsLiveForEventType):
+ Implementation of the portions of isLiveLink() that are common with the
+ checks defaultEventHandler() wants to do.
+ (WebCore::isEnterKeyKeydownEvent): Added. Shared by the default
+ event handlers for all three anchor elements.
+ (WebCore::isMiddleMouseButtonEvent): Added. Shared by the isLinkClick
+ function below and some code in SVG. Later we can make this private to
+ this source file once we remove the unneeded SVG code.
+ (WebCore::isLinkClick): Added. Shared by the default event handlers for
+ all three anchor elements.
+ (WebCore::handleLinkClick): Ditto.
+ * html/HTMLAnchorElement.h: Added the new functions.
+ * svg/SVGAElement.cpp:
+ (WebCore::SVGAElement::defaultEventHandler): Removed lots of unneeded
+ logic and streamlined the code to more closely match the
+ HTMLAnchorElement code and share functions with it.
+ * wml/WMLAElement.cpp:
+ (WebCore::WMLAElement::defaultEventHandler): Ditto.
+
+2010-09-10 Tony Gentilcore <tonyg@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Implement HTML5 definition of script for-event neutering
+ https://bugs.webkit.org/show_bug.cgi?id=45493
+
+ * dom/ScriptElement.cpp:
+ (WebCore::ScriptElementData::shouldExecuteAsJavaScript): Same behavior, but reads more like the spec. Removed obsolete comments about supporting for-event.
+ * html/parser/HTMLScriptRunner.cpp:
+ (WebCore::HTMLScriptRunner::executeScript): Moved to runScript.
+ (WebCore::HTMLScriptRunner::runScript): Checking shouldExecuteAsJavaScript() here means that external scripts which fail the check will never be requested.
+
+2010-09-10 Nat Duca <nduca@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ [chromium] Accelerated Compositing: screen garbage when scrolling
+ https://bugs.webkit.org/show_bug.cgi?id=45092
+
+ Split LayerRenderChromium::drawLayers into several different
+ functions, responsible for preparing the backbuffer, updating the
+ root texture, compositing and performing the final
+ swapbuffers. This are then used by the new
+ WebViewImpl::composite rendering path.
+
+ * platform/graphics/chromium/LayerChromium.cpp:
+ (WebCore::LayerChromium::setBounds):
+ (WebCore::LayerChromium::setFrame):
+ (WebCore::LayerChromium::setNeedsDisplay):
+ (WebCore::LayerChromium::resetNeedsDisplay):
+ * platform/graphics/chromium/LayerChromium.h:
+ (WebCore::LayerChromium::dirtyRect):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::prepareToDrawLayers):
+ (WebCore::LayerRendererChromium::updateRootLayerTextureRect):
+ (WebCore::LayerRendererChromium::drawLayers):
+ (WebCore::LayerRendererChromium::present):
+ * platform/graphics/chromium/LayerRendererChromium.h:
+
+2010-09-10 David Holloway <dhollowa@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Replace WebCore::HTMLFormElement::submissionTrigger with WebCore::HTMLFormElement::submittedByUserGesture.
+ Chromium AutoFill feature semantics changed with respect to what we mean by "user submitted" form. A
+ more accurate measure of the user manually submitting a form is via user gesture.
+ https://bugs.webkit.org/show_bug.cgi?id=45128
+
+ No new tests as this is only used by the Chromium WebKit API.
+
+ * html/HTMLFormElement.cpp:
+ (WebCore::HTMLFormElement::HTMLFormElement):
+ (WebCore::HTMLFormElement::prepareSubmit):
+ (WebCore::HTMLFormElement::submit):
+ (WebCore::HTMLFormElement::submittedByUserGesture):
+ * html/HTMLFormElement.h:
+
+2010-09-10 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Remove mention of "part" from Document.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=45566
+
+ This is an old KHTML name that's lingering around.
+
+ * dom/Document.cpp:
+ (WebCore::Document::parentDocument):
+
+2010-09-09 Darin Adler <darin@apple.com>
+
+ Reviewed by Adam Barth.
+
+ Move functions from Frame to SelectionController as planned
+ https://bugs.webkit.org/show_bug.cgi?id=45508
+
+ Also removed Frame::dragCaretController since it just called Page::dragCaretController.
+
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::setSelection):
+ (WebCore::SelectionController::modify):
+ (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
+ (WebCore::SelectionController::selectAll):
+ (WebCore::SelectionController::focusedOrActiveStateChanged):
+ (WebCore::SelectionController::notifyRendererOfSelectionChange):
+ (WebCore::isFrameElement):
+ (WebCore::SelectionController::setFocusedNodeIfNeeded):
+ (WebCore::SelectionController::paintDragCaret):
+ (WebCore::SelectionController::shouldDeleteSelection):
+ (WebCore::SelectionController::selectionBounds):
+ (WebCore::SelectionController::selectionTextRects):
+ (WebCore::scanForForm):
+ (WebCore::SelectionController::currentForm):
+ (WebCore::SelectionController::revealSelection):
+ (WebCore::SelectionController::setSelectionFromNone):
+ (WebCore::SelectionController::shouldChangeSelection):
+ * editing/SelectionController.h:
+ Moved functions here from Frame.
+
+ * page/Frame.cpp:
+ * page/Frame.h:
+ Moved functions to SelectionController.
+ Reorganized header to be easier to read and a bit more logical.
+
+ * WebCore.exp.in: Updated.
+
+ * dom/Document.cpp:
+ (WebCore::Document::nodeChildrenWillBeRemoved):
+ (WebCore::Document::nodeWillBeRemoved):
+ Call Page::dragCaretController directly.
+
+ * dom/Element.cpp:
+ (WebCore::Element::updateFocusAppearance):
+ * dom/InputElement.cpp:
+ (WebCore::InputElement::updateFocusAppearance):
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::ApplyStyleCommand::editingStyleAtPosition):
+ * editing/DeleteSelectionCommand.cpp:
+ (WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete):
+ * editing/Editor.cpp:
+ (WebCore::Editor::canSmartCopyOrDelete):
+ (WebCore::Editor::textDirectionForSelection):
+ (WebCore::Editor::appliedEditing):
+ (WebCore::Editor::insertTextWithoutSendingTextEvent):
+ (WebCore::Editor::advanceToNextMisspelling):
+ (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
+ (WebCore::Editor::revealSelectionAfterEditingOperation):
+ (WebCore::Editor::transpose):
+ (WebCore::Editor::changeSelectionAfterCommand):
+ (WebCore::Editor::computeAndSetTypingStyle):
+ (WebCore::Editor::selectionComputedStyle):
+ (WebCore::Editor::styleForSelectionStart):
+ (WebCore::Editor::findString):
+ * editing/EditorCommand.cpp:
+ (WebCore::executeDelete):
+ * editing/InsertLineBreakCommand.cpp:
+ (WebCore::InsertLineBreakCommand::doApply):
+ * editing/InsertTextCommand.cpp:
+ (WebCore::InsertTextCommand::input):
+ * editing/RemoveFormatCommand.cpp:
+ (WebCore::RemoveFormatCommand::doApply):
+ * editing/ReplaceSelectionCommand.cpp:
+ (WebCore::ReplaceSelectionCommand::doApply):
+ * editing/TypingCommand.cpp:
+ (WebCore::TypingCommand::insertTextRunWithoutNewlines):
+ (WebCore::TypingCommand::deleteKeyPressed):
+ (WebCore::TypingCommand::forwardDeleteKeyPressed):
+ * html/HTMLTextAreaElement.cpp:
+ (WebCore::HTMLTextAreaElement::updateFocusAppearance):
+ * page/ContextMenuController.cpp:
+ (WebCore::ContextMenuController::contextMenuItemSelected):
+ * page/DragController.cpp:
+ (WebCore::DragController::concludeEditDrag):
+ (WebCore::dragLocForSelectionDrag):
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::selectClosestWordFromMouseEvent):
+ (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent):
+ (WebCore::EventHandler::handleMousePressEventTripleClick):
+ (WebCore::EventHandler::handleMousePressEventSingleClick):
+ (WebCore::EventHandler::updateSelectionForMouseDrag):
+ (WebCore::EventHandler::handleMouseReleaseEvent):
+ * page/FocusController.cpp:
+ (WebCore::FocusController::advanceFocusInDocumentOrder):
+ * page/chromium/EventHandlerChromium.cpp:
+ (WebCore::EventHandler::passMousePressEventToSubframe):
+ * page/chromium/FrameChromium.cpp:
+ (WebCore::Frame::dragImageForSelection):
+ * page/mac/FrameMac.mm:
+ (WebCore::Frame::selectionImage):
+ * platform/mac/ClipboardMac.mm:
+ (WebCore::ClipboardMac::writeRange):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::paintCaret):
+ Call functions on selection().
+
+2010-09-10 Justin Schuh <jschuh@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ SVGGElement::rendererIsNeeded should return false when parent isn't SVG
+ https://bugs.webkit.org/show_bug.cgi?id=45562
+
+ Test: svg/custom/g-outside-svg.html
+
+ * svg/SVGGElement.cpp:
+ (WebCore::SVGGElement::rendererIsNeeded):
+ * svg/SVGGElement.h:
+
+2010-09-10 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ REGRESSION (HTML Parser): CNN's Money site is not formatted correctly with AdBlock installed
+ https://bugs.webkit.org/show_bug.cgi?id=41371
+
+ Drop support for closing comments with "-- >". This was an attempt to
+ be more IE-like in comment parsing, but it turns out to cause problems
+ for some high-profile sites. Firefox 4 is dropping support as well.
+ We expect the spec to change soon too.
+
+ * html/parser/HTMLTokenizer.cpp:
+ (WebCore::HTMLTokenizer::nextToken):
+ * html/parser/HTMLTokenizer.h:
+
+2010-09-10 Chris Marrin <cmarrin@apple.com>
+
+ Unreviewed.
+
+ Adding file that should have been in http://trac.webkit.org/changeset/67226 but
+ I forgot to svn add.
+
+ * platform/graphics/opengl: Added.
+ * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp: Copied from platform/graphics/mac/GraphicsContext3DMac.mm.
+
+2010-09-10 Paul Sawaya <psawaya@apple.com>
+
+ Reviewed by Chris Marrin.
+
+ Refactored non-Mac specific code into GraphicsContext3DOpenGL.
+
+ Moving this file into platform/graphics/opengl and only building on Mac for now.
+
+ https://bugs.webkit.org/show_bug.cgi?id=30625
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/graphics/mac/GraphicsContext3DMac.mm:
+ (WebCore::GraphicsContext3D::makeContextCurrent):
+ (WebCore::GraphicsContext3D::isErrorGeneratedOnOutOfBoundsAccesses):
+ * platform/graphics/opengl: Added.
+ * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp: Copied from platform/graphics/mac/GraphicsContext3DMac.mm.
+ (WebCore::GraphicsContext3D::prepareTexture):
+ (WebCore::GraphicsContext3D::activeTexture):
+ (WebCore::GraphicsContext3D::attachShader):
+ (WebCore::GraphicsContext3D::bindAttribLocation):
+ (WebCore::GraphicsContext3D::bindBuffer):
+ (WebCore::GraphicsContext3D::bindFramebuffer):
+ (WebCore::GraphicsContext3D::bindRenderbuffer):
+ (WebCore::GraphicsContext3D::bindTexture):
+ (WebCore::GraphicsContext3D::blendColor):
+ (WebCore::GraphicsContext3D::blendEquation):
+ (WebCore::GraphicsContext3D::blendEquationSeparate):
+ (WebCore::GraphicsContext3D::blendFunc):
+ (WebCore::GraphicsContext3D::blendFuncSeparate):
+ (WebCore::GraphicsContext3D::bufferData):
+ (WebCore::GraphicsContext3D::bufferSubData):
+ (WebCore::GraphicsContext3D::checkFramebufferStatus):
+ (WebCore::GraphicsContext3D::clearColor):
+ (WebCore::GraphicsContext3D::clear):
+ (WebCore::GraphicsContext3D::clearDepth):
+ (WebCore::GraphicsContext3D::clearStencil):
+ (WebCore::GraphicsContext3D::colorMask):
+ (WebCore::GraphicsContext3D::compileShader):
+ (WebCore::GraphicsContext3D::copyTexImage2D):
+ (WebCore::GraphicsContext3D::copyTexSubImage2D):
+ (WebCore::GraphicsContext3D::cullFace):
+ (WebCore::GraphicsContext3D::depthFunc):
+ (WebCore::GraphicsContext3D::depthMask):
+ (WebCore::GraphicsContext3D::depthRange):
+ (WebCore::GraphicsContext3D::detachShader):
+ (WebCore::GraphicsContext3D::disable):
+ (WebCore::GraphicsContext3D::disableVertexAttribArray):
+ (WebCore::GraphicsContext3D::drawArrays):
+ (WebCore::GraphicsContext3D::drawElements):
+ (WebCore::GraphicsContext3D::enable):
+ (WebCore::GraphicsContext3D::enableVertexAttribArray):
+ (WebCore::GraphicsContext3D::finish):
+ (WebCore::GraphicsContext3D::flush):
+ (WebCore::GraphicsContext3D::framebufferRenderbuffer):
+ (WebCore::GraphicsContext3D::framebufferTexture2D):
+ (WebCore::GraphicsContext3D::frontFace):
+ (WebCore::GraphicsContext3D::generateMipmap):
+ (WebCore::GraphicsContext3D::getActiveAttrib):
+ (WebCore::GraphicsContext3D::getActiveUniform):
+ (WebCore::GraphicsContext3D::getAttachedShaders):
+ (WebCore::GraphicsContext3D::getAttribLocation):
+ (WebCore::GraphicsContext3D::getError):
+ (WebCore::GraphicsContext3D::getString):
+ (WebCore::GraphicsContext3D::hint):
+ (WebCore::GraphicsContext3D::isBuffer):
+ (WebCore::GraphicsContext3D::isEnabled):
+ (WebCore::GraphicsContext3D::isFramebuffer):
+ (WebCore::GraphicsContext3D::isProgram):
+ (WebCore::GraphicsContext3D::isRenderbuffer):
+ (WebCore::GraphicsContext3D::isShader):
+ (WebCore::GraphicsContext3D::isTexture):
+ (WebCore::GraphicsContext3D::lineWidth):
+ (WebCore::GraphicsContext3D::linkProgram):
+ (WebCore::GraphicsContext3D::pixelStorei):
+ (WebCore::GraphicsContext3D::polygonOffset):
+ (WebCore::GraphicsContext3D::readPixels):
+ (WebCore::GraphicsContext3D::releaseShaderCompiler):
+ (WebCore::GraphicsContext3D::renderbufferStorage):
+ (WebCore::GraphicsContext3D::sampleCoverage):
+ (WebCore::GraphicsContext3D::scissor):
+ (WebCore::GraphicsContext3D::shaderSource):
+ (WebCore::GraphicsContext3D::stencilFunc):
+ (WebCore::GraphicsContext3D::stencilFuncSeparate):
+ (WebCore::GraphicsContext3D::stencilMask):
+ (WebCore::GraphicsContext3D::stencilMaskSeparate):
+ (WebCore::GraphicsContext3D::stencilOp):
+ (WebCore::GraphicsContext3D::stencilOpSeparate):
+ (WebCore::GraphicsContext3D::texParameterf):
+ (WebCore::GraphicsContext3D::texParameteri):
+ (WebCore::GraphicsContext3D::uniform1f):
+ (WebCore::GraphicsContext3D::uniform1fv):
+ (WebCore::GraphicsContext3D::uniform2f):
+ (WebCore::GraphicsContext3D::uniform2fv):
+ (WebCore::GraphicsContext3D::uniform3f):
+ (WebCore::GraphicsContext3D::uniform3fv):
+ (WebCore::GraphicsContext3D::uniform4f):
+ (WebCore::GraphicsContext3D::uniform4fv):
+ (WebCore::GraphicsContext3D::uniform1i):
+ (WebCore::GraphicsContext3D::uniform1iv):
+ (WebCore::GraphicsContext3D::uniform2i):
+ (WebCore::GraphicsContext3D::uniform2iv):
+ (WebCore::GraphicsContext3D::uniform3i):
+ (WebCore::GraphicsContext3D::uniform3iv):
+ (WebCore::GraphicsContext3D::uniform4i):
+ (WebCore::GraphicsContext3D::uniform4iv):
+ (WebCore::GraphicsContext3D::uniformMatrix2fv):
+ (WebCore::GraphicsContext3D::uniformMatrix3fv):
+ (WebCore::GraphicsContext3D::uniformMatrix4fv):
+ (WebCore::GraphicsContext3D::useProgram):
+ (WebCore::GraphicsContext3D::validateProgram):
+ (WebCore::GraphicsContext3D::vertexAttrib1f):
+ (WebCore::GraphicsContext3D::vertexAttrib1fv):
+ (WebCore::GraphicsContext3D::vertexAttrib2f):
+ (WebCore::GraphicsContext3D::vertexAttrib2fv):
+ (WebCore::GraphicsContext3D::vertexAttrib3f):
+ (WebCore::GraphicsContext3D::vertexAttrib3fv):
+ (WebCore::GraphicsContext3D::vertexAttrib4f):
+ (WebCore::GraphicsContext3D::vertexAttrib4fv):
+ (WebCore::GraphicsContext3D::vertexAttribPointer):
+ (WebCore::GraphicsContext3D::viewport):
+ (WebCore::GraphicsContext3D::getBooleanv):
+ (WebCore::GraphicsContext3D::getBufferParameteriv):
+ (WebCore::GraphicsContext3D::getFloatv):
+ (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv):
+ (WebCore::GraphicsContext3D::getIntegerv):
+ (WebCore::GraphicsContext3D::getProgramiv):
+ (WebCore::GraphicsContext3D::getProgramInfoLog):
+ (WebCore::GraphicsContext3D::getRenderbufferParameteriv):
+ (WebCore::GraphicsContext3D::getShaderiv):
+ (WebCore::GraphicsContext3D::getShaderInfoLog):
+ (WebCore::GraphicsContext3D::getShaderSource):
+ (WebCore::GraphicsContext3D::getTexParameterfv):
+ (WebCore::GraphicsContext3D::getTexParameteriv):
+ (WebCore::GraphicsContext3D::getUniformfv):
+ (WebCore::GraphicsContext3D::getUniformiv):
+ (WebCore::GraphicsContext3D::getUniformLocation):
+ (WebCore::GraphicsContext3D::getVertexAttribfv):
+ (WebCore::GraphicsContext3D::getVertexAttribiv):
+ (WebCore::GraphicsContext3D::getVertexAttribOffset):
+ (WebCore::GraphicsContext3D::texImage2D):
+ (WebCore::GraphicsContext3D::texSubImage2D):
+ (WebCore::GraphicsContext3D::createBuffer):
+ (WebCore::GraphicsContext3D::createFramebuffer):
+ (WebCore::GraphicsContext3D::createProgram):
+ (WebCore::GraphicsContext3D::createRenderbuffer):
+ (WebCore::GraphicsContext3D::createShader):
+ (WebCore::GraphicsContext3D::createTexture):
+ (WebCore::GraphicsContext3D::deleteBuffer):
+ (WebCore::GraphicsContext3D::deleteFramebuffer):
+ (WebCore::GraphicsContext3D::deleteProgram):
+ (WebCore::GraphicsContext3D::deleteRenderbuffer):
+ (WebCore::GraphicsContext3D::deleteShader):
+ (WebCore::GraphicsContext3D::deleteTexture):
+
+2010-09-10 Oliver Hunt <oliver@apple.com>
+
+ Qt build fix.
+
+ * bindings/js/SerializedScriptValue.cpp:
+ (WebCore::CloneDeserializer::deserialize):
+
+2010-09-10 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Remove useless FrameLoader method
+ https://bugs.webkit.org/show_bug.cgi?id=45492
+
+ This method has one caller, and that caller already has a more direct
+ way of accessing the correct DocumentLoader.
+
+ * loader/FrameLoader.cpp:
+ * loader/FrameLoader.h:
+ * loader/MainResourceLoader.cpp:
+ (WebCore::MainResourceLoader::addData):
+
+2010-09-10 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Main resource bytes shouldn't bounce through FrameLoader
+ https://bugs.webkit.org/show_bug.cgi?id=45496
+
+ After the MainResourceLoader hands the bytes for the main resource to
+ the DocumentLoader, the DocumentLoader hands the bytes to the
+ FrameLoaderClient. The FrameLoaderClient, in turn, returns the bytes
+ to WebCore. Prior to this patch, the FrameLoaderClient returned the
+ bytes to the FrameLoader. However, the FrameLoader was actually adding
+ any value.
+
+ In this patch, we change the FrameLoaderClient to return the bytes to
+ the DocumentLoader directly. In a future patch, we'll cut out the
+ FrameLoaderClient middleman and handle the bytes internally in the
+ DocumentLoader.
+
+ * WebCore.exp.in:
+ * loader/DocumentLoader.cpp:
+ (WebCore::DocumentLoader::addData):
+ * loader/DocumentLoader.h:
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::finishedLoadingDocument):
+ * loader/FrameLoader.h:
+
+2010-09-10 Oliver Hunt <oliver@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Speed up deserialisation of strings
+ https://bugs.webkit.org/show_bug.cgi?id=45555
+
+ Rather than building a list of Identifiers for the string pool
+ we now build a list of a tuple of UString and JSString*. This
+ doesn't hurt the property name case as ustring->identifier conversion
+ is essentially free if the ustring has already been converted to
+ an Identifier, but saves an unnecessary Identifier creation for
+ strings we only ever use to create JSStrings. We also reduce
+ GC pressure for duplicate strings by caching the JSStrings.
+
+ * bindings/js/SerializedScriptValue.cpp:
+ (WebCore::CloneDeserializer::CachedString::CachedString):
+ (WebCore::CloneDeserializer::CachedString::jsString):
+ (WebCore::CloneDeserializer::CachedString::ustring):
+ (WebCore::CloneDeserializer::readStringData):
+ (WebCore::CloneDeserializer::putProperty):
+ (WebCore::CloneDeserializer::readFile):
+ (WebCore::CloneDeserializer::readTerminal):
+ (WebCore::CloneDeserializer::deserialize):
+
+2010-09-10 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Antonio Gomes.
+
+ REGRESSION(r67176): editing/selection/doubleclick-inline-first-last-contenteditable.html crashes
+ https://bugs.webkit.org/show_bug.cgi?id=45525
+
+ The crash was caused by ancestorToRetainStructureAndAppearance not taking into consideration
+ the case where there is no common block ancestor. Fixed this by adding a null check.
+
+ Test: editing/pasteboard/copy-without-common-block-crash.html
+
+ * editing/markup.cpp:
+ (WebCore::ancestorToRetainStructureAndAppearance): Added a null check.
+
+2010-09-09 Kinuko Yasuda <kinuko@chromium.org>
+
+ Reviewed by Dumitru Daniliuc.
+
+ [FileSystem] Do not call EntriesCallback more than once if there're no entries.
+ https://bugs.webkit.org/show_bug.cgi?id=45498
+
+ No new tests, layout-tests that confirm the behavior will be added in later patches.
+
+ * fileapi/FileSystemCallbacks.cpp:
+ (WebCore::EntriesCallbacks::EntriesCallbacks):
+ (WebCore::EntriesCallbacks::didReadDirectoryEntry):
+ (WebCore::EntriesCallbacks::didReadDirectoryEntries):
+
+2010-09-10 Patrick Gansterer <paroga@paroga.com>
+
+ Reviewed by Darin Adler.
+
+ Use String::fromUTF8 instead of UTF8Encoding().decode
+ in the libxml XMLDocumentParser
+ https://bugs.webkit.org/show_bug.cgi?id=45488
+
+ * dom/XMLDocumentParserLibxml2.cpp:
+ (WebCore::toString):
+
+2010-09-10 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by David Kilzer.
+
+ AX: accessibility not returning strings when visibility is hidden
+ https://bugs.webkit.org/show_bug.cgi?id=45116
+
+ AX code uses plainText() in TextIterator to get the text for a node.
+ However, when that node is not visible, no text is returned because TextIterator ignores
+ clipped nodes and other hidden elements.
+
+ Solution is to add a new text iterator behavior for ignoring style visiblity. This allows
+ for text to allows be returned for accessibility purposes.
+
+ Test: platform/mac/accessibility/clipped-text-under-element.html
+
+ * WebCore.exp.in:
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::textUnderElement):
+ (WebCore::AccessibilityRenderObject::stringValue):
+ Use the new flag for plainText
+ * editing/TextIterator.cpp:
+ (WebCore::TextIterator::TextIterator):
+ (WebCore::TextIterator::handleTextNode):
+ (WebCore::TextIterator::handleTextBox):
+ (WebCore::TextIterator::handleTextNodeFirstLetter):
+ (WebCore::TextIterator::handleReplacedElement):
+ Use the new flag to NOT skip hidden elements.
+ (WebCore::plainTextToMallocAllocatedBuffer):
+ (WebCore::plainText):
+ * editing/TextIterator.h:
+ Add the new text iterator behavior.
+
+2010-09-10 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by David Kilzer.
+
+ Mail crashes with searching for next misspelled word with VoiceOver
+ https://bugs.webkit.org/show_bug.cgi?id=45501
+
+ Test: platform/mac/accessibility/crash-in-element-for-text-marker.html
+
+ * accessibility/mac/AccessibilityObjectWrapper.mm:
+ (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
+ Check that the AX object is not nil before asking for the wrapper().
+
+2010-09-10 Michael Nordman <michaeln@google.com>
+
+ Reviewed by Dumitru Daniliuc.
+
+ Decouple Blob from ScriptExecutionContext.
+ https://bugs.webkit.org/show_bug.cgi?id=45410
+
+ - Removed ScriptExecutionContext pointers from Blob and File constructors.
+ - Removed ScriptExecutionContext's collection of Blobs instance in that context.
+ - Refactored BlobURL to make a distinction between 'public' blob urls and 'internal'
+ urls that are used solely as identifiers. The former requires a SecurityOrigin to
+ to manufacture, the latter does not.
+ - Added a constant and accessor for the blob protocol scheme on the BlobURL class.
+
+ No new tests are added since this is a cleanup.
+
+ * bindings/js/SerializedScriptValue.cpp:
+ (WebCore::CloneDeserializer::readFile):
+ (WebCore::CloneDeserializer::readTerminal):
+ * bindings/v8/SerializedScriptValue.cpp:
+ (WebCore::ZigZag::Reader::readBlob):
+ (WebCore::ZigZag::Reader::readFile):
+ (WebCore::ZigZag::Reader::readFileList):
+ * dom/ScriptExecutionContext.cpp:
+ (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
+ (WebCore::ScriptExecutionContext::createPublicBlobURL):
+ (WebCore::ScriptExecutionContext::revokePublicBlobURL):
+ * dom/ScriptExecutionContext.h:
+ * fileapi/Blob.cpp:
+ (WebCore::Blob::Blob):
+ (WebCore::Blob::~Blob):
+ (WebCore::Blob::slice):
+ * fileapi/Blob.h:
+ (WebCore::Blob::create):
+ (WebCore::Blob::url):
+ * fileapi/Blob.idl:
+ * fileapi/BlobBuilder.cpp:
+ (WebCore::BlobBuilder::getBlob):
+ * fileapi/BlobBuilder.h:
+ * fileapi/BlobBuilder.idl:
+ * fileapi/BlobURL.cpp:
+ (WebCore::BlobURL::createPublicURL):
+ (WebCore::BlobURL::createInternalURL):
+ (WebCore::BlobURL::getOrigin):
+ (WebCore::BlobURL::getIdentifier):
+ (WebCore::BlobURL::createBlobURL):
+ * fileapi/BlobURL.h:
+ (WebCore::BlobURL::blobProtocol):
+ (WebCore::BlobURL::BlobURL):
+ * fileapi/File.cpp:
+ (WebCore::File::File):
+ * fileapi/File.h:
+ (WebCore::File::create):
+ * fileapi/FileReader.cpp: Register a public url to perform the read.
+ (WebCore::FileReader::cleanup):
+ (WebCore::FileReader::start):
+ (WebCore::FileReader::didFinishLoading):
+ (WebCore::FileReader::failed):
+ * fileapi/FileReader.h: Added m_urlForReading data member.
+ * fileapi/FileReaderSync.cpp:
+ (WebCore::FileReaderSync::read): Register a public url to perform the read.
+ * fileapi/ThreadableBlobRegistry.cpp:
+ (WebCore::ThreadableBlobRegistry::registerBlobURL):
+ (WebCore::ThreadableBlobRegistry::unregisterBlobURL):
+ * fileapi/ThreadableBlobRegistry.h:
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::appendFormData):
+ (WebCore::HTMLInputElement::setFileListFromRenderer):
+ * page/SecurityOrigin.cpp: Use BlobURL.blobProtocol().
+ (WebCore::SecurityOrigin::create):
+ (WebCore::SecurityOrigin::canRequest):
+ (WebCore::SecurityOrigin::canDisplay):
+ * platform/chromium/ClipboardChromium.cpp:
+ (WebCore::ClipboardChromium::files):
+ * platform/gtk/ClipboardGtk.cpp:
+ (WebCore::ClipboardGtk::files):
+ * platform/mac/ClipboardMac.mm:
+ (WebCore::ClipboardMac::files):
+ * platform/win/ClipboardWin.cpp:
+ (WebCore::ClipboardWin::files):
+
+2010-09-10 Xan Lopez <xlopez@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ GDK_DISPLAY was removed in GTK+ 3.x, re-declare it when built
+ against that.
+
+ * platform/gtk/GtkVersioning.h:
+
+2010-09-10 Xan Lopez <xlopez@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ Fix compilation with GTK+ 3.x.
+
+ GDK key macros were renamed from GDK_FOO to GDK_KEY_FOO, we need
+ to include the compat header provided if we want to keep using the
+ old names.
+
+ * platform/gtk/GtkVersioning.h: add the compatibility header.
+ * platform/gtk/KeyEventGtk.cpp: include GtkVersioning.h
+
+2010-09-09 Tony Gentilcore <tonyg@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Factor out the NestingLevelIncrementer
+ https://bugs.webkit.org/show_bug.cgi?id=45471
+
+ No new tests because no new functionality.
+
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * html/parser/HTMLDocumentParser.cpp:
+ * html/parser/HTMLDocumentParser.h:
+ * html/parser/HTMLScriptRunner.cpp:
+ * html/parser/NestingLevelIncrementer.h: Added.
+ (WebCore::NestingLevelIncrementer::NestingLevelIncrementer):
+ (WebCore::NestingLevelIncrementer::~NestingLevelIncrementer):
+
+2010-09-10 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Dirk Schulze.
+
+ SVG text chunk concept needs to be integrated in the InlineBox structure
+ https://bugs.webkit.org/show_bug.cgi?id=45533
+
+ Begin rewriting the SVG text layout code. As first step move the text chunk concept right into the inline box structure.
+ This obsoletes the whole text chunk part concept (see SVGTextChunkLayoutInfo.h for details), and will soon simplify the
+ whole layout code a lot. Previously we hacked around the fact that a single InlineTextBox could contain multiple text chunks
+ For example: <text x="20 30 40">ABC</text> only led to the creation of one InlineTextBox containing three chunks. When
+ painting such an InlineTextBox, we had to do nasty hacks (same for text selection etc.)
+
+ This is finally fixed by incorporating the knownledge about text chunks into the line layout algorithm.
+ Note, this has no impact on HTML at all, no worries.
+
+ It's even required to do it this way as BiDi reordering shouldn't happen across text chunks.
+ These are only the first bits, and currently slows down text layouting. Follow-up patches will remove the old layout
+ algorithm, and will rely on the stored SVGTextLayoutAttributes in the RenerSVGInlineText renderers (instead of computing again).
+
+ * Android.mk: Add rendering/svg/SVGTextLayoutAttributes.* & rendering/svg/SVGTextLayoutBuilder.* to build.
+ * CMakeLists.txt: Ditto.
+ * GNUmakefile.am: Ditto.
+ * WebCore.gyp/WebCore.gyp: Ditto.
+ * WebCore.gypi: Ditto.
+ * WebCore.pro: Ditto.
+ * WebCore.vcproj/WebCore.vcproj: Ditto.
+ * WebCore.vcproj/WebCoreCommon.vsprops: Ditto. (Recognize new rendering/svg directory.)
+ * WebCore.vcproj/copyForwardingHeaders.cmd: Ditto. (Copy forwarding headers from rendering/svg directory.)
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * rendering/RenderBlockLineLayout.cpp: This is the key of the new concept, take text chunks into account when building the InlineBox structure.
+ (WebCore::RenderBlock::findNextLineBreak): Split midpointState, if we encounter the beginning of a new text chunk.
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::isSVGInline): New method, which will be used to identify RenderSVGInline objects.
+ * rendering/RenderSVGInline.h:
+ (WebCore::RenderSVGInline::isSVGInline): Return true.
+ * rendering/RenderSVGInlineText.cpp:
+ (WebCore::RenderSVGInlineText::linesBoundingBox): Overriden, to simplify the calculations for SVG.
+ (WebCore::RenderSVGInlineText::characterStartsNewTextChunk): Determines wheter the given position starts a new text chunk.
+ * rendering/RenderSVGInlineText.h:
+ (WebCore::RenderSVGInlineText::storeLayoutAttributes): Stores the layout attributes calculated in the text layout process (will be used everywhere in follow-up patches).
+ * rendering/RenderSVGText.cpp:
+ (WebCore::RenderSVGText::layout): Invoke SVGTextLayoutBuilder before creating the inline box tree, so we can decide which characters start new text chunks.
+ * rendering/RenderText.h: Made linesBoundingBox() virtual so RenderSVGInlineText can override it.
+ * rendering/svg: Added.
+ * rendering/svg/SVGTextLayoutAttributes.cpp: Added. Holds x/y/dx/dy/rotate values and all kerning/ligature information used during layout.
+ * rendering/svg/SVGTextLayoutAttributes.h: Added.
+ * rendering/svg/SVGTextLayoutBuilder.cpp: Added.
+ * rendering/svg/SVGTextLayoutBuilder.h: Added.
+
+2010-09-10 Csaba Osztrogonác <ossy@webkit.org>
+
+ Unreviewed fix after r67085.
+
+ * WebCore.pro: Fix previously moved filenames.
+
+2010-09-10 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Inline FrameLoader::committedLoad into its one caller
+ https://bugs.webkit.org/show_bug.cgi?id=45481
+
+ This saves one round-trip through the FrameLoader when loading
+ documents.
+
+ * loader/DocumentLoader.cpp:
+ (WebCore::DocumentLoader::commitLoad):
+ * loader/FrameLoader.cpp:
+ * loader/FrameLoader.h:
+
+2010-09-10 Patrick Gansterer <paroga@paroga.com>
+
+ Reviewed by Adam Roben.
+
+ [WINCE] Remove ImageBuffer::toDataURL implementation
+ https://bugs.webkit.org/show_bug.cgi?id=45478
+
+ At the moment ImageBuffer::toDataURL uses JPEGEncoder.h and PNGEncoder.h.
+ Both files are not in the repository. So remove the implementation for now.
+
+ * platform/graphics/wince/ImageBufferWince.cpp:
+ (WebCore::ImageBuffer::toDataURL):
+
+2010-09-10 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Antonio Gomes.
+
+ WebGL: Fix GCC warnings about suggested parentheses around && within ||
+ https://bugs.webkit.org/show_bug.cgi?id=45534
+
+ * html/canvas/WebGLRenderingContext.cpp:
+ (WebCore::WebGLRenderingContext::getVertexAttrib):
+ (WebCore::WebGLRenderingContext::readPixels):
+ (WebCore::WebGLRenderingContext::texParameter):
+ (WebCore::WebGLRenderingContext::handleNPOTTextures):
+
+2010-09-09 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Add navigation items into the Elements panel context menu.
+
+ For all anchors that have the class of "webkit-html-resource-link" or "webkit-html-external-link",
+ a custom context menu with the items "Open Link in New Window" (invokes InspectorBackend.openInInspectedWindow() with
+ the related URL) and "Open Link in Resources Panel" (opens the related resource in the Resources panel) is shown
+ (the latter item is displayed only if the corresponding resource is known to the Web Inspector).
+ https://bugs.webkit.org/show_bug.cgi?id=34250
+
+ * English.lproj/localizedStrings.js:
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel.prototype.populateHrefContextMenu):
+ * inspector/front-end/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired):
+ (WebInspector.ElementsTreeElement.prototype._attributeHTML):
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylesSidebarPane.prototype._contextMenuEventFired):
+ * inspector/front-end/inspector.js:
+ (WebInspector.openResource):
+ (WebInspector.resourceURLForRelatedNode):
+
+2010-09-10 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by James Robinson.
+
+ Make sure skia is not Chromium specific
+ https://bugs.webkit.org/show_bug.cgi?id=39672
+
+ Move Image::loadPlatformResource to platform/graphics/chromium/ImageChromium.cpp.
+ Other ports can use ImageSkia.cpp.
+
+ No new tests because this is pure refacotring.
+
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+ * platform/graphics/chromium/ImageChromium.cpp: Added.
+ (WebCore::Image::loadPlatformResource):
+ * platform/graphics/skia/ImageSkia.cpp:
+
+2010-09-09 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Joseph Pecoraro.
+
+ WebInspector: Selecting 'inspect element' always shows body in inspector instead of clicked element.
+
+ 1. Open any page
+ 2. Right-click on any element, select "Inspect Element"
+ 3. Web Inspector is opened but the <body> element (for HTML) is focused rather than the selected element
+ 4. Inspect the Web Inspector. An error message is logged in the console.
+
+ The regression was introduced in http://trac.webkit.org/changeset/66012 - focusNode() is invoked in
+ InspectorController::populateScriptObjects() before the main document is set for the InspectorDOMAgent
+ instance (which makes focusNode() bail out prematurely).
+
+ https://bugs.webkit.org/show_bug.cgi?id=45374
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::populateScriptObjects):
+
+2010-09-10 Cris Neckar <cdn@chromium.org>
+
+ Reviewed by Chris Fleizach.
+
+ Null deref in RenderBlock::updateFirstLetter(). Check for null psuedo style.
+ https://bugs.webkit.org/show_bug.cgi?id=45404
+
+ Test: fast/dom/firstletter-tablecell-crash.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::updateFirstLetter):
+
+2010-09-10 Cris Neckar <cdn@chromium.org>
+
+ Reviewed by Chris Fleizach.
+
+ Null deref in RenderBlock::findNextLineBreak(). Check for null style with
+ first-line style and fixed position.
+ https://bugs.webkit.org/show_bug.cgi?id=45350
+
+ Test: fast/dom/firstline-fixed-crash.html
+
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::findNextLineBreak):
+
+2010-09-10 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Remove support for non-lazy attach and fix frames to load from insertedIntoDocument instead of attach
+ https://bugs.webkit.org/show_bug.cgi?id=45365
+
+ This change is the last piece of the puzzle which was preventing us from
+ removing all eager-attach logic and moving WebCore to using an entirely
+ recalcStyle-driven, on-demand renderer creation system, instead of every
+ element being synchronously attached during parsing, regardless of whether
+ it was ever going to be displayed or not.
+
+ This does not change the places we call lazyAttach vs. attach. This only
+ changes the behavior of frame/plugin elements when lazyAttach is called.
+ Previously lazyAttach would eager-attach those elements (and their ancestors)
+ because they were marked as canLazyAttach() { return false; }.
+
+ This is a very tricky change, please review carefully.
+
+ Mostly I'm moving logic which used to be in attach() into
+ insertedIntoDocument. Once it was there, there was no longer any reason
+ why frame elements couldn't lazyAttach, thus removing the need
+ for the non-lazy attach code path entirely.
+ We've not yet converted all callsites over to using lazyAttach() instead
+ of attach() however.
+
+ In order to move frame loading logic into insertedIntoDocument
+ instead of attach, I needed to make sure that any javascript calls
+ during the load would see an attached element. Thus I needed to mark
+ the element as needing style resolve so that it would attach itself
+ if needed.
+
+ I was not able to just call lazyAttach() from insertedIntoDocument directly
+ due to two conflicting assumptions in the rendering tree:
+ 1. ContainerNode::attach() assumes its "safe" to call attach on all children
+ without checking first if the child is already attached. This seems sane
+ since its strange to think of a subtree as being attached w/o ancestors
+ already being attached. Although it is a hard rule that subtrees may not
+ have renderers w/o ancestors also having renderers, I do not believe it's
+ a hard rule that subtrees may not be attached. Remember, attached() does
+ not imply renderer()! It's possible ContainerNode::attach()'s assumption is wrong here.
+ 2. Node::attach() asserts !attached(). This makes sense and I would not
+ want to remove this assert, however it means that if insertedIntoDocument
+ were to call lazyAttach() (thus marking the element as attached()) then
+ all callers would need to check if the element was already attached after
+ insertedIntoDocument (called by appendChild, parserAppendChild, etc.)
+ before calling attach or lazyAttach(). The following example:
+ element.innerHTML = "<span><iframe></span>" is one case where this
+ ASSERT would be hit if insertedIntoDocument called lazyAttach, since
+ ContainerNode::attach() (called on the span by in appendChild(DocumentFragment) code)
+ does not check if iframe is already attached.
+
+ Note: One subtle change here is that synchronous javascript which results
+ from javascript: or beforeload is now run as part of insertedIntoDocument
+ (thus any insert/append call *even* parserAddChild) instead of being
+ run during attach (technically in the post-attach callbacks).
+
+ This is covered by numerous layout tests.
+
+ * dom/ContainerNode.cpp:
+ (WebCore::willRemoveChild):
+ (WebCore::willRemoveChildren):
+ - Since insertedIntoDocument starts a load and yet does not mark the
+ element as attached, we need to always call willRemove().
+ See note above as to why we don't just mark attached() in insertedIntoDocument.
+ * dom/Node.cpp:
+ (WebCore::Node::markAncestorsWithChildNeedsStyleRecalc):
+ - Share some code between lazyAttach and setNeedsStyleRecalc.
+ (WebCore::Node::setNeedsStyleRecalc):
+ - Use the new markAncestorsWithChildNeedsStyleRecalc
+ (WebCore::Node::lazyAttach):
+ - Remove the non-lazy code path, and use markAncestorsWithChildNeedsStyleRecalc.
+ - Add an option to lazyAttach without marking attached(), used by HTMLFrameElementBase::insertedIntoDocument.
+ * dom/Node.h:
+ * html/HTMLFrameElementBase.cpp:
+ - m_shouldOpenURLAfterAttach is no longer needed, yay!
+ - m_checkAttachedTimer no longer has anything to do with attached(), so renamed it.
+ I also documented that the newly named m_checkInDocumentTimer is all about the
+ "magic iframe" performance quirk. (Which is actually speced in HTML5).
+ I was initially baffled by this code, so I documented it.
+ (WebCore::HTMLFrameElementBase::HTMLFrameElementBase)
+ (WebCore::HTMLFrameElementBase::insertedIntoDocument):
+ - This is the meat of this change, see discussion above.
+ (WebCore::HTMLFrameElementBase::attach):
+ - Code deleted or moved to insertedIntoDocument.
+ (WebCore::HTMLFrameElementBase::width):
+ - Fixed a bug in height()/width() which was probably causing crashes
+ and was causing incorrect behavior after this change.
+ renderBox() is not necessarily valid unless layout is up to date.
+ Updating layout, can cause renderBox() to go invalid, thus this
+ could have been a null-pointer crash.
+ (WebCore::HTMLFrameElementBase::height): see width()
+ (WebCore::HTMLFrameElementBase::setRemainsAliveOnRemovalFromTree): Timer rename.
+ (WebCore::HTMLFrameElementBase::checkInDocumentTimerFired): Timer rename.
+ * html/HTMLFrameElementBase.h:
+ * html/HTMLFrameOwnerElement.cpp:
+ (WebCore::HTMLFrameOwnerElement::willRemove):
+ - Disconnecting the owner element removes the frame from the frame tree.
+ frameDetached() calls Page::frameCount which expects that the frame is
+ already gone at this point and asserts when it's not. It's unclear how
+ this worked before, except that the frame removal was likely done in the
+ post-attach callback, so the frameCount was wrong (too high) during
+ frameDetached(), but was fixed up in the post-detach callback.
+ * html/parser/HTMLConstructionSite.cpp:
+ (WebCore::HTMLConstructionSite::attachAtSite):
+ - Simplified this code, and added a check for the case when the node was already removed.
+ Since the load logic is now run during insertedIntoDocument instead of attach(),
+ synchronous javascript is now running during insertedIntoDocument and we need to
+ make sure that the child is still in the tree.
+
+2010-09-10 Dirk Pranke <dpranke@chromium.org>
+
+ Unreviewed, rolling out r67178.
+ http://trac.webkit.org/changeset/67178
+ https://bugs.webkit.org/show_bug.cgi?id=45524
+
+ re-roll-out patch to put original changes back in
+
+ * html/HTMLObjectElement.cpp:
+ (WebCore::HTMLObjectElement::parametersForPlugin):
+ (WebCore::HTMLObjectElement::updateWidget):
+ * loader/SubframeLoader.cpp:
+ (WebCore::SubframeLoader::resourceWillUsePlugin):
+ * loader/SubframeLoader.h:
+
+2010-09-10 Dirk Pranke <dpranke@chromium.org>
+
+ Reviewed by Kent Tamura.
+
+ roll out r66992 and r66997 - possibly introduced a perf slowdown in chromium tests
+ https://bugs.webkit.org/show_bug.cgi?id=45524
+
+ * html/HTMLObjectElement.cpp:
+ (WebCore::HTMLObjectElement::parametersForPlugin):
+ (WebCore::HTMLObjectElement::updateWidget):
+ * loader/SubframeLoader.cpp:
+ (WebCore::SubframeLoader::requestFrame):
+ * loader/SubframeLoader.h:
+
+2010-09-10 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Tony Chang.
+
+ Extract the code to find special ancestors in createMarkup into a function
+ https://bugs.webkit.org/show_bug.cgi?id=45449
+
+ Extracted the code to find special common ancestors in createMarkup as highestAncestorToWrapMarkup.
+ Also isolated the code to find ancestors required to retain structure and appearance into
+ ancestorToRetainStructureAndAppearance.
+
+ No new tests are added since this is a cleanup.
+
+ * editing/markup.cpp:
+ (WebCore::ancestorToRetainStructureAndAppearance): Added.
+ (WebCore::propertyMissingOrEqualToNone): Moved.
+ (WebCore::isElementPresentational): Moved.
+ (WebCore::shouldIncludeWrapperForFullySelectedRoot): Added. isSpecialAncestorBlock is merged into this function.
+ (WebCore::highestAncestorToWrapMarkup): Extracted from createMarkup.
+ (WebCore::createMarkup): Calls highestAncestorToWrapMarkup.
+
+2010-09-09 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Spurious null check in MediaDocumentParser
+ https://bugs.webkit.org/show_bug.cgi?id=45461
+
+ Trivial change. FrameLoader can never be null.
+
+ * html/MediaDocument.cpp:
+ (WebCore::MediaDocumentParser::createDocumentStructure):
+
+2010-09-09 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ REGRESSION: applying new font size causes font-size outside selection to change
+ https://bugs.webkit.org/show_bug.cgi?id=45026
+
+ The regression was caused by removeImplicitlyStyledElement not converting font size to CSS value properly.
+ Namely, it was treating font size as a pixel value for font-size property. Fixed this by adding fontSizeToCSSValue
+ which uses HTMLFontElement::cssValueFromFontSizeNumber and deployed it in removeImplicitlyStyledElement
+
+ Also fixed a bug in StyleChange::extractTextStyles that it ignores font-size property when the values were
+ relative terms such as x-small and -webkit-xxx-large. And replaced the logic to convert from pixel font size
+ to legacy font size by CSSStyleSelector::legacyFontSize.
+
+ Test: editing/style/push-down-font-styles.html
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::StyleChange::extractTextStyles): Fixed a bug. See above.
+ (WebCore::stringToCSSValue): Converts string to CSSValue.
+ (WebCore::fontSizeToCSSValue): Converts font size number (String) to CSSPrimitiveValue.
+ (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Calls stringToCSSValue and fontSizeToCSSValue.
+ * css/CSSStyleSelector.h: Made fontSizeForKeyword public.
+
+2010-09-09 Kent Tamura <tkent@chromium.org>
+
+ Unreviewed, build fix for Qt.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
+
+2010-09-09 Dominic Cooney <dominicc@google.com>
+
+ Reviewed by Kent Tamura.
+
+ Moves location.replace bindings logic into bindings/generic and
+ instantiates it for JSC and V8.
+
+ https://bugs.webkit.org/show_bug.cgi?id=44891
+
+ Covered by existing location.replace tests.
+
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.vcproj/WebCoreCommon.vsprops:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/generic/BindingDOMWindow.h:
+ * bindings/generic/BindingFrame.h: Added.
+ (WebCore::::navigateIfAllowed):
+ * bindings/generic/BindingLocation.h: Added.
+ (WebCore::::replace):
+ * bindings/generic/GenericBinding.h:
+ (WebCore::completeURL):
+ * bindings/js/JSBinding.h: Added.
+ * bindings/js/JSBindingsAllInOne.cpp:
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::shouldAllowNavigation):
+ (WebCore::toLexicalFrame):
+ (WebCore::toDynamicFrame):
+ (WebCore::processingUserGesture):
+ (WebCore::completeURL):
+ * bindings/js/JSLocationCustom.cpp:
+ (WebCore::navigateIfAllowed):
+ (WebCore::JSLocation::replace):
+ * bindings/js/specialization/JSBindingState.cpp: Added.
+ (WebCore::::getActiveFrame):
+ (WebCore::::getFirstFrame):
+ (WebCore::::processingUserGesture):
+ (WebCore::::allowsAccessFromFrame):
+ * bindings/js/specialization/JSBindingState.h: Added.
+ * bindings/v8/V8Binding.h:
+ * bindings/v8/V8Utilities.cpp:
+ (WebCore::completeURL):
+ (WebCore::navigateIfAllowed):
+ * bindings/v8/custom/V8LocationCustom.cpp:
+ (WebCore::V8Location::replaceCallback):
+ * bindings/v8/specialization/V8BindingState.cpp:
+ (WebCore::::allowsAccessFromFrame):
+ * bindings/v8/specialization/V8BindingState.h:
+
+2010-09-09 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Apply :invalid CSS class to <input type=number> with an unacceptable value
+ https://bugs.webkit.org/show_bug.cgi?id=45376
+
+ Apply :invalid CSS class to <input type=number> elements with an
+ unacceptable value in order to tell users that a value is not
+ valid.
+
+ Introducing Element::hasUnaccceptableValue(), and CSSStyleSelector
+ applies :invalid to not only elements with !isValidFormControlElement()
+ but also elements with hasUnaccceptableValue().
+
+ HTMLInputElement and RenderTextControlSingleLine need some changes
+ to update style and to avoid updating renderer value during style
+ update.
+
+ Test: fast/forms/input-number-unacceptable-style.html
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
+ * dom/Element.h:
+ (WebCore::Element::hasUnacceptableValue):
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::handleBlurEvent):
+ (WebCore::HTMLInputElement::hasUnacceptableValue):
+ * html/HTMLInputElement.h:
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
+ (WebCore::RenderTextControlSingleLine::updateFromElement):
+
+2010-09-09 Kent Tamura <tkent@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ <input type=number> should not have an invalid number as its value
+ https://bugs.webkit.org/show_bug.cgi?id=43973
+
+ This change implements the value sanitization algorithm for
+ type=number, and remove validity.typeMismatch support for
+ type=number in order to improve HTML5 conformance.
+
+ HTMLInputElement::value for type=number always has a valid number
+ string or an empty string. However, the input field for it, a
+ RenderTextControlSingleLine, can have a non-number string. For
+ example, '-' is a non-number string, but a user needs to type
+ '-'. So, the string in the input field has never been committed to
+ HTMLInputElement until the string becomes a valid number string.
+
+ This change is also a preparation of supporting localized
+ numbers. A localized string in the input field would not be
+ matched with HTMLInputElement::value.
+
+ Test: fast/forms/input-number-commit-valid-only.html
+
+ * dom/InputElement.h: Add isAcceptableValue()
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::handleBlurEvent):
+ Set formControlValueMatchesRenderer false to clean an invalid value in the renderer.
+ (WebCore::HTMLInputElement::isAcceptableValue):
+ (WebCore::HTMLInputElement::sanitizeValue):
+ * html/HTMLInputElement.h:
+ * html/ValidityState.cpp:
+ (WebCore::ValidityState::typeMismatch): Always returns false for type=number.
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
+ * wml/WMLInputElement.h:
+ (WebCore::WMLInputElement::isAcceptableValue):
+
+2010-09-09 Tony Gentilcore <tonyg@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Support <script async> as specified by HTML5
+ https://bugs.webkit.org/show_bug.cgi?id=45310
+
+ Tests: fast/dom/HTMLScriptElement/async-inline-script.html
+ fast/dom/HTMLScriptElement/async-onbeforeload.html
+ fast/dom/HTMLScriptElement/async-write.html
+ http/tests/misc/async-and-defer-script.html
+ http/tests/misc/script-async.html
+
+ * dom/AsyncScriptRunner.cpp:
+ (WebCore::AsyncScriptRunner::AsyncScriptRunner):
+ (WebCore::AsyncScriptRunner::~AsyncScriptRunner):
+ (WebCore::AsyncScriptRunner::executeScriptSoon): Increment the delay count when a task to execute scripts is queued up.
+ (WebCore::AsyncScriptRunner::timerFired): decrementLoadEventDelayCount handles calling checkCompleted().
+ * dom/AsyncScriptRunner.h:
+ (WebCore::AsyncScriptRunner::create):
+ * dom/Document.cpp:
+ (WebCore::Document::Document):
+ * dom/ScriptElement.cpp:
+ (WebCore::ScriptElement::insertedIntoDocument): Treats async scripts just like a dynamically inserted script element rather than a parser inserted one.
+ * html/parser/HTMLScriptRunner.cpp:
+ (WebCore::HTMLScriptRunner::runScript):
+
+2010-09-09 Alexey Marinichev <amarinichev@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [chromium] Disable subpixel rendering in Linux when GPU compositor is active
+ https://bugs.webkit.org/show_bug.cgi?id=45087
+
+ This extends windows-only logic to chromium linux as well.
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::updateContents):
+ * platform/graphics/chromium/FontLinux.cpp:
+ (WebCore::adjustTextRenderMode): Added a check to see if the compositor is active.
+ (WebCore::Font::drawGlyphs):
+ (WebCore::Font::drawComplexText):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::setRootLayerCanvasSize):
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+ (WebCore::VideoLayerChromium::updateContents):
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::ImageBuffer::ImageBuffer):
+ (WebCore::ImageBuffer::clip):
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ Made setDrawingToImageBuffer and isDrawingToImageBuffer available to
+ Linux; removed all #if OS(WINDOWS) || OS(LINUX).
+ (WebCore::PlatformContextSkia::State::State):
+ (WebCore::PlatformContextSkia::PlatformContextSkia):
+ (WebCore::PlatformContextSkia::isDrawingToImageBuffer):
+ (WebCore::PlatformContextSkia::save):
+ (WebCore::PlatformContextSkia::beginLayerClippedToImage):
+ (WebCore::PlatformContextSkia::restore):
+ (WebCore::PlatformContextSkia::applyClipFromImage):
+ * platform/graphics/skia/PlatformContextSkia.h:
+
+2010-09-09 Kinuko Yasuda <kinuko@chromium.org>
+
+ Unreviewed, Windows build fix.
+
+ * WebCore.vcproj/WebCore.vcproj:
+
+2010-09-09 Kinuko Yasuda <kinuko@chromium.org>
+
+ Reviewed by Jian Li.
+
+ [FileSystem] Add File and FileWriter accessor methods in FileEntry
+ https://bugs.webkit.org/show_bug.cgi?id=45440
+
+ Adding file() and createWrite() methods in FileEntry.
+ http://dev.w3.org/2009/dap/file-system/file-dir-sys.html#the-fileentry-interface
+
+ No new tests; this patch doesn't have implementation yet.
+
+ * CMakeLists.txt:
+ * DerivedSources.cpp:
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pri:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * fileapi/FileEntry.cpp:
+ (WebCore::FileEntry::createWriter): Added.
+ (WebCore::FileEntry::file): Added.
+ * fileapi/FileEntry.h:
+ * fileapi/FileEntry.idl:
+ * fileapi/FileCallback.h: Added.
+ * fileapi/FileCallback.idl: Added.
+ * fileapi/FileWriterCallback.h: Added.
+ * fileapi/FileWriterCallback.idl: Added.
+
+2010-09-09 Yuzo Fujishima <yuzo@google.com>
+
+ Reviewed by Darin Adler.
+
+ Fix for Bug 24742 - CSS tokenizer allows color in 6 hex digit notation to be followed by the next token without separation
+ Stop checking in the flex definition the number of hexadecimal digits for a hex color.
+ Instead, rely on the checking in Color::parseHexColor().
+ The resultant grammar is actually more close to the one in http://www.w3.org/TR/CSS21/grammar.html .
+
+ https://bugs.webkit.org/show_bug.cgi?id=24742
+
+ Test: fast/css/invalid-hex-color.html
+
+ * css/tokenizer.flex:
+
+2010-09-09 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add AudioSourceNode files
+ https://bugs.webkit.org/show_bug.cgi?id=45010
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/AudioSourceNode.h: Added.
+ (WebCore::AudioSourceNode::AudioSourceNode):
+ * webaudio/AudioSourceNode.idl: Added.
+
+2010-09-09 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Don't call deleteTexture on a texture attached to an FBO that is not currently bound
+ https://bugs.webkit.org/show_bug.cgi?id=45504
+
+ The OpenGL semantics for glDeleteTextures() are that if one of the specified texture is attached
+ to the currently bound FBO, that FBO's color attachment is removed. However, if the specified
+ texture is attached to a non-current FBO then OpenGL states explicitly that that FBO's color
+ attachment is not cleared and that the texture stays alive even though its ID is no longer
+ valid to use. This is not the behavior we want in DrawingBuffer - we actually want the
+ texture to be immediately deleted. This patch makes sure the DrawingBuffer's FBO is bound
+ before deleting its color attachment texture.
+
+ * platform/graphics/chromium/DrawingBufferChromium.cpp:
+ (WebCore::DrawingBuffer::~DrawingBuffer):
+ (WebCore::DrawingBuffer::reset):
+
+2010-09-09 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Chromium mac build should exclude all Skia files in platform/graphics/skia/, not just some
+ https://bugs.webkit.org/show_bug.cgi?id=45516
+
+ This excludes platform/graphics/skia/*Skia.(h|cpp) by pattern instead of individual files.
+ None of these files should be compiled into the Chromium mac build and the old file list had
+ both omissions and stale entries.
+
+ * WebCore.gyp/WebCore.gyp:
+
+2010-09-09 Dirk Pranke <dpranke@chromium.org>
+
+ Unreviewed, rolling out r67145.
+ http://trac.webkit.org/changeset/67145
+ https://bugs.webkit.org/show_bug.cgi?id=45431
+
+ broke editing/inserting/5994480-2.html on Chromium Linux
+
+ * css/CSSStyleSelector.h:
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::StyleChange::init):
+ (WebCore::StyleChange::extractTextStyles):
+ (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement):
+
+2010-09-09 Dumitru Daniliuc <dumi@chromium.org>
+
+ Reviewed by Alexey Proskuryakov.
+
+ Removing an obsolete comment.
+ https://bugs.webkit.org/show_bug.cgi?id=40112
+
+ * bindings/generic/ActiveDOMCallback.cpp:
+
+2010-09-09 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Clear only the uploaded portion of the software backing store when in mixed mode
+ https://bugs.webkit.org/show_bug.cgi?id=45503
+
+ This clears out only the dirty region of the software backing store when uploading results
+ to hardware rather than clearing out the entire software backing store. This is a significant
+ performance improvement when the dirty rects are small relative to the whole canvas.
+
+ This also implements the non-swizzle path of copySubRect() using memcpy() to copy the rows, which
+ is another respectable performance increase.
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ * platform/graphics/gpu/Texture.cpp:
+ (WebCore::copySubRect):
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ (WebCore::PlatformContextSkia::prepareForSoftwareDraw):
+ (WebCore::PlatformContextSkia::uploadSoftwareToHardware):
+ (WebCore::PlatformContextSkia::readbackHardwareToSoftware):
+
+2010-09-09 Kenneth Russell <kbr@google.com>
+
+ Reviewed by James Robinson.
+
+ Add math utilities for cubic curve processing
+ https://bugs.webkit.org/show_bug.cgi?id=45251
+
+ Adding mathematic utilities needed for the GPU accelerated path
+ rendering algorithm from GPU Gems 3. No tests yet; will be tested
+ in conjunction with later code.
+
+ * platform/graphics/gpu/LoopBlinnMathUtils.cpp: Added.
+ (WebCore::LoopBlinnMathUtils::roundToZero):
+ (WebCore::LoopBlinnMathUtils::approxEqual):
+ (WebCore::LoopBlinnMathUtils::linesIntersect):
+ (WebCore::LoopBlinnMathUtils::pointInTriangle):
+ (WebCore::LoopBlinnMathUtils::trianglesOverlap):
+ (WebCore::LoopBlinnMathUtils::chopCubicAt):
+ (WebCore::LoopBlinnMathUtils::xRayCrossesLine):
+ (WebCore::LoopBlinnMathUtils::numXRayCrossingsForCubic):
+ * platform/graphics/gpu/LoopBlinnMathUtils.h: Added.
+
+2010-09-09 Kinuko Yasuda <kinuko@chromium.org>
+
+ Reviewed by Dumitru Daniliuc.
+
+ Add Entry.getMetadata for FileSystem API
+ https://bugs.webkit.org/show_bug.cgi?id=45403
+
+ Add getMetadata to Entry.idl (I had missed to include this
+ in my previous Entry.idl patch.)
+
+ Also make some minor cleanups and nits fixes.
+
+ No new tests; layout test is going be added later.
+
+ * fileapi/DOMFileSystem.cpp: Bug fix.
+ * fileapi/MetadataCallback.h: Nits fix.
+ * fileapi/Entry.idl: Added getMetadata.
+ * fileapi/ErrorCallback.h: Nits fix.
+
+2010-09-09 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ REGRESSION: applying new font size causes font-size outside selection to change
+ https://bugs.webkit.org/show_bug.cgi?id=45026
+
+ The regression was caused by removeImplicitlyStyledElement not converting font size to CSS value properly.
+ Namely, it was treating font size as a pixel value for font-size property. Fixed this by adding fontSizeToCSSValue
+ which uses HTMLFontElement::cssValueFromFontSizeNumber and deployed it in removeImplicitlyStyledElement
+
+ Also fixed a bug in StyleChange::extractTextStyles that it ignores font-size property when the values were
+ relative terms such as x-small and -webkit-xxx-large. And replaced the logic to convert from pixel font size
+ to legacy font size by CSSStyleSelector::legacyFontSize.
+
+ Test: editing/style/push-down-font-styles.html
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::StyleChange::extractTextStyles): Fixed a bug. See above.
+ (WebCore::stringToCSSValue): Converts string to CSSValue.
+ (WebCore::fontSizeToCSSValue): Converts font size number (String) to CSSPrimitiveValue.
+ (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Calls stringToCSSValue and fontSizeToCSSValue.
+ * css/CSSStyleSelector.h: Made fontSizeForKeyword public.
+
+2010-09-09 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r67126.
+ http://trac.webkit.org/changeset/67126
+ https://bugs.webkit.org/show_bug.cgi?id=45510
+
+ broke chromium mac compile, it also uses PlatformContextSkia
+ (Requested by jamesr on #webkit).
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::updateContents):
+ * platform/graphics/chromium/FontLinux.cpp:
+ (WebCore::adjustTextRenderMode):
+ (WebCore::Font::drawGlyphs):
+ (WebCore::Font::drawComplexText):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::setRootLayerCanvasSize):
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+ (WebCore::VideoLayerChromium::updateContents):
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::ImageBuffer::ImageBuffer):
+ (WebCore::ImageBuffer::clip):
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ (WebCore::PlatformContextSkia::State::State):
+ (WebCore::PlatformContextSkia::PlatformContextSkia):
+ (WebCore::PlatformContextSkia::save):
+ (WebCore::PlatformContextSkia::restore):
+ * platform/graphics/skia/PlatformContextSkia.h:
+
+2010-09-09 Simon Fraser <simon.fraser@apple.com>
+
+ Attempt to fix Qt build.
+
+ * WebCore.pro:
+
+2010-09-09 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=45509
+ <rdar://problem/8142166> REGRESSION: WebView setDrawsBackground:NO no
+ longer works without setBackgroundColor:clearColor
+
+ r61215 caused RenderView to paint the viewport background when the
+ document element's renderer is known to not fill opaquely paint
+ the entire viewport, i.e. more often than it did before.
+
+ This exposed a latent, long-standing bug which was introduced
+ in r14638 (the RenderCanvas -> RenderView rename), where a call
+ to view()->isTransparent() was not converted to frameView()->isTransparent(),
+ yet happened to still compile because of RenderObject::isTransparent().
+
+ This resulted in us painting the viewport background, even when
+ WebView clients explicitly said that they wanted a transparent
+ WebView.
+
+ Fixed by calling frameView()->isTransparent(), as intended.
+
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::paintBoxDecorations):
+
+2010-09-09 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ audio engine: add Biquad files
+ https://bugs.webkit.org/show_bug.cgi?id=44795
+
+ No new tests since audio API is not yet implemented.
+
+ * platform/audio/Biquad.cpp: Added.
+ (WebCore::Biquad::Biquad):
+ (WebCore::Biquad::process):
+ (WebCore::Biquad::processFast):
+ (WebCore::Biquad::processSliceFast):
+ (WebCore::Biquad::reset):
+ (WebCore::Biquad::setLowpassParams):
+ (WebCore::Biquad::setHighpassParams):
+ (WebCore::Biquad::setLowShelfParams):
+ (WebCore::Biquad::setZeroPolePairs):
+ (WebCore::Biquad::setAllpassPole):
+ * platform/audio/Biquad.h: Added.
+ (WebCore::Biquad::~Biquad):
+
+2010-09-09 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add AudioBuffer files
+ https://bugs.webkit.org/show_bug.cgi?id=45003
+
+ No new tests since audio API is not yet implemented.
+
+ * webaudio/AudioBuffer.cpp: Added.
+ (WebCore::AudioBuffer::create):
+ (WebCore::AudioBuffer::createFromAudioFileData):
+ (WebCore::AudioBuffer::AudioBuffer):
+ (WebCore::AudioBuffer::releaseMemory):
+ (WebCore::AudioBuffer::getChannelData):
+ (WebCore::AudioBuffer::zero):
+ * webaudio/AudioBuffer.h: Added.
+ (WebCore::AudioBuffer::length):
+ (WebCore::AudioBuffer::duration):
+ (WebCore::AudioBuffer::sampleRate):
+ (WebCore::AudioBuffer::numberOfChannels):
+ (WebCore::AudioBuffer::gain):
+ (WebCore::AudioBuffer::setGain):
+ * webaudio/AudioBuffer.idl: Added.
+
+2010-09-09 Alexey Marinichev <amarinichev@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [chromium] Disable subpixel rendering in Linux when GPU compositor is active
+ https://bugs.webkit.org/show_bug.cgi?id=45087
+
+ Covered by all tests that activate the compositor and contain text.
+
+ * platform/graphics/chromium/ContentLayerChromium.cpp:
+ (WebCore::ContentLayerChromium::updateContents):
+ * platform/graphics/chromium/FontLinux.cpp:
+ (WebCore::adjustTextRenderMode): Added a check to see if the compositor is active.
+ (WebCore::Font::drawGlyphs):
+ (WebCore::Font::drawComplexText):
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::setRootLayerCanvasSize):
+ * platform/graphics/chromium/VideoLayerChromium.cpp:
+ (WebCore::VideoLayerChromium::updateContents):
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::ImageBuffer::ImageBuffer):
+ (WebCore::ImageBuffer::clip):
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ Made setDrawingToImageBuffer and isDrawingToImageBuffer available to
+ Linux; removed all #if OS(WINDOWS) || OS(LINUX).
+ (WebCore::PlatformContextSkia::State::State):
+ (WebCore::PlatformContextSkia::PlatformContextSkia):
+ (WebCore::PlatformContextSkia::isDrawingToImageBuffer):
+ (WebCore::PlatformContextSkia::save):
+ (WebCore::PlatformContextSkia::beginLayerClippedToImage):
+ (WebCore::PlatformContextSkia::restore):
+ (WebCore::PlatformContextSkia::applyClipFromImage):
+ * platform/graphics/skia/PlatformContextSkia.h:
+
+2010-09-09 Simon Fraser <simon.fraser@apple.com>
+
+ Fix windows build by adding missing file.
+
+ * platform/graphics/win/LocalWindowsContext.h: Added.
+ (WebCore::LocalWindowsContext::LocalWindowsContext):
+ (WebCore::LocalWindowsContext::~LocalWindowsContext):
+ (WebCore::LocalWindowsContext::hdc):
+
+2010-09-09 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Adam Roben.
+
+ Scrollbars fail to render in composited iframes.
+ https://bugs.webkit.org/show_bug.cgi?id=45335
+
+ Add a stack-based class, LocalWindowsContext, which does a getWindowsContext/
+ releaseWindowsContext automatically.
+
+ Also fix getWindowsContext to create a bitmap context if mayCreateBitmap
+ is true, and if the context's HDC is null. This fixes scrollbar rendering
+ in compositing layers.
+
+ Use LocalWindowsContext in places where we had bare getWindowsContext() calls.
+
+ * platform/graphics/win/LocalWindowsContext.h
+ (WebCore::LocalWindowsContext::LocalWindowsContext):
+ (WebCore::LocalWindowsContext::~LocalWindowsContext):
+ (WebCore::LocalWindowsContext::hdc):
+ * platform/graphics/win/GraphicsContextCGWin.cpp:
+ (WebCore::GraphicsContext::releaseWindowsContext):
+ * platform/graphics/win/GraphicsContextWin.cpp:
+ (WebCore::GraphicsContext::getWindowsContext):
+ * platform/graphics/win/IconWin.cpp:
+ (WebCore::Icon::paint):
+ * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
+ (WebCore::MediaPlayerPrivate::paint):
+ * platform/win/ScrollbarThemeWin.cpp:
+ (WebCore::ScrollbarThemeWin::paintTrackPiece):
+ (WebCore::ScrollbarThemeWin::paintButton):
+ * plugins/win/PluginViewWin.cpp:
+ (WebCore::PluginView::paintWindowedPluginIntoContext):
+ (WebCore::PluginView::paint):
+ * rendering/RenderThemeWin.cpp:
+ (WebCore::drawControl):
+
+2010-09-09 Vincent Scheib <scheib@chromium.org>
+
+ Reviewed by James Robinson.
+
+ [Chromium] Minimize uploads in canvas 2d mixed mode rendering
+ https://bugs.webkit.org/show_bug.cgi?id=45476
+
+ No new tests - change is for performance, logic fixes only apparent when running hardware acceleration.
+
+ - Enumeration values fixed, "CavasWillDraw" -> "CanvasDidDraw".
+ - markDirtyRect() plumbed through GraphicsContext to PlatformContextSkia.
+ - Texture::updateSubRect() added to allow uploading only a dirty rect.
+ - Logic fix in ImageBuffer::draw(), caused canvas to canvas copies to be incorrect.
+
+ * html/canvas/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::setAllAttributesToDefault):
+ (WebCore::CanvasRenderingContext2D::strokeRect):
+ (WebCore::CanvasRenderingContext2D::drawImage):
+ (WebCore::CanvasRenderingContext2D::didDraw):
+ - Logic fix for drawingContext()->markDirtyRect() call.
+ (WebCore::CanvasRenderingContext2D::putImageData):
+ (WebCore::CanvasRenderingContext2D::drawTextInternal):
+ - Logic fix for calls to "didDraw()", use peer method first.
+ * html/canvas/CanvasRenderingContext2D.h:
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::drawImageBuffer):
+ (WebCore::GraphicsContext::markDirtyRect):
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/gpu/Texture.cpp:
+ (WebCore::Texture::create):
+ (WebCore::Texture::load):
+ (WebCore::Texture::updateSubRect):
+ * platform/graphics/gpu/Texture.h:
+ * platform/graphics/gpu/TilingData.h:
+ (WebCore::TilingData::borderTexels):
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::clipConvexPolygon):
+ (WebCore::GraphicsContext::markDirtyRect):
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::ImageBuffer::draw):
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ (WebCore::PlatformContextSkia::State::cloneInheritedProperties):
+ (WebCore::PlatformContextSkia::drawRect):
+ (WebCore::PlatformContextSkia::setFillColor):
+ (WebCore::PlatformContextSkia::setStrokeColor):
+ (WebCore::PlatformContextSkia::markDirtyRect):
+ (WebCore::PlatformContextSkia::uploadSoftwareToHardware):
+ * platform/graphics/skia/PlatformContextSkia.h:
+
+2010-09-08 Darin Adler <darin@apple.com>
+
+ Reviewed by Adam Barth.
+
+ Move functions from Frame to Editor as planned
+ https://bugs.webkit.org/show_bug.cgi?id=45218
+
+ Just executing the plan that has long been described in Frame.h
+ to move a bunch of functions to Editor.
+
+ * WebCore.exp.in: Updated.
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::fontForSelection):
+ (WebCore::Editor::textDirectionForSelection):
+ (WebCore::Editor::applyStyle):
+ (WebCore::Editor::selectionStartHasStyle):
+ (WebCore::Editor::selectionHasStyle):
+ (WebCore::Editor::selectionStartCSSPropertyValue):
+ (WebCore::Editor::Editor):
+ (WebCore::Editor::cut):
+ (WebCore::Editor::copy):
+ (WebCore::Editor::ignoreSpelling):
+ (WebCore::Editor::learnSpelling):
+ (WebCore::Editor::isSelectionMisspelled):
+ (WebCore::Editor::guessesForMisspelledSelection):
+ (WebCore::Editor::selectedText):
+ (WebCore::Editor::firstRectForRange):
+ (WebCore::Editor::shouldChangeSelection):
+ (WebCore::Editor::computeAndSetTypingStyle):
+ (WebCore::Editor::selectionComputedStyle):
+ (WebCore::Editor::textFieldDidBeginEditing):
+ (WebCore::Editor::textFieldDidEndEditing):
+ (WebCore::Editor::textDidChangeInTextField):
+ (WebCore::Editor::doTextFieldCommandFromEvent):
+ (WebCore::Editor::textWillBeDeletedInTextField):
+ (WebCore::Editor::textDidChangeInTextArea):
+ (WebCore::Editor::applyEditingStyleToBodyElement):
+ (WebCore::Editor::applyEditingStyleToElement):
+ (WebCore::Editor::styleForSelectionStart):
+ (WebCore::Editor::findString):
+ (WebCore::Editor::countMatchesForText):
+ (WebCore::Editor::setMarkedTextMatchesAreHighlighted):
+ (WebCore::Editor::respondToChangedSelection):
+ * editing/Editor.h:
+ * editing/mac/EditorMac.mm:
+ (WebCore::Editor::fontAttributesForSelectionStart):
+ (WebCore::Editor::baseWritingDirectionForSelectionStart):
+ Moved functions here.
+
+ * page/Frame.cpp:
+ (WebCore::Frame::Frame):
+ (WebCore::Frame::shouldChangeSelection):
+ * page/Frame.h:
+ * page/mac/FrameMac.mm:
+ Moved functions out of here.
+
+ * dom/InputElement.cpp:
+ (WebCore::InputElement::dispatchBlurEvent):
+ (WebCore::InputElement::aboutToUnload):
+ * editing/DeleteSelectionCommand.cpp:
+ (WebCore::DeleteSelectionCommand::doApply):
+ * editing/EditorCommand.cpp:
+ (WebCore::executeToggleStyleInList):
+ (WebCore::executeDeleteToMark):
+ (WebCore::executeFindString):
+ (WebCore::executeSelectToMark):
+ (WebCore::executeSetMark):
+ (WebCore::executeSwapWithMark):
+ (WebCore::enabledVisibleSelectionAndMark):
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::setSelection):
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::defaultEventHandler):
+ * page/ContextMenuController.cpp:
+ (WebCore::ContextMenuController::contextMenuItemSelected):
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::find):
+ * page/DragController.cpp:
+ (WebCore::DragController::startDrag):
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::sendContextMenuEventForKey):
+ * page/Page.cpp:
+ (WebCore::Page::findString):
+ (WebCore::Page::markAllMatchesForText):
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::paintTextMatchMarker):
+ * rendering/RenderTextControlMultiLine.cpp:
+ (WebCore::RenderTextControlMultiLine::subtreeHasChanged):
+ * rendering/RenderTextControlSingleLine.cpp:
+ (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
+ Changed call sites to use editor().
+
+2010-09-09 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add AudioDSPKernelProcessor files
+ https://bugs.webkit.org/show_bug.cgi?id=45211
+
+ No new tests since audio API is not yet implemented.
+
+ * platform/audio/AudioDSPKernelProcessor.cpp: Added.
+ (WebCore::AudioDSPKernelProcessor::AudioDSPKernelProcessor):
+ (WebCore::AudioDSPKernelProcessor::initialize):
+ (WebCore::AudioDSPKernelProcessor::uninitialize):
+ (WebCore::AudioDSPKernelProcessor::process):
+ (WebCore::AudioDSPKernelProcessor::reset):
+ (WebCore::AudioDSPKernelProcessor::setNumberOfChannels):
+ * platform/audio/AudioDSPKernelProcessor.h: Added.
+ (WebCore::AudioDSPKernelProcessor::numberOfChannels):
+
+2010-09-09 Chris Rogers <crogers@google.com>
+
+ Reviewed by Kenneth Russell.
+
+ Add setRange() and zeroRange() methods to TypedArrayBase
+ https://bugs.webkit.org/show_bug.cgi?id=45419
+
+ No new tests since adding new methods which are not yet called anywhere.
+
+ * html/canvas/ArrayBufferView.cpp:
+ (WebCore::ArrayBufferView::setRangeImpl):
+ (WebCore::ArrayBufferView::zeroRangeImpl):
+ * html/canvas/ArrayBufferView.h:
+ * html/canvas/TypedArrayBase.h:
+ (WebCore::TypedArrayBase::setRange):
+ (WebCore::TypedArrayBase::zeroRange):
+
+2010-09-09 Robert Hogan <robert@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] always send an Accept header
+
+ Ensure QtWebKit always sends an Accept header. This is required
+ for compatibility with sites that expect the header in requests
+ for subresources.
+
+ See https://bugs.webkit.org/show_bug.cgi?id=33242 for more.
+
+ https://bugs.webkit.org/show_bug.cgi?id=45458
+
+ * platform/network/qt/ResourceRequestQt.cpp:
+ (WebCore::ResourceRequest::toNetworkRequest):
+
+2010-09-09 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Chris Marrin.
+
+ Add media element logging
+ https://bugs.webkit.org/show_bug.cgi?id=45469
+
+ Add logging at interesting points in a media element's lifecycle.
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::urlForLogging):
+ (WebCore::boolString):
+ (WebCore::HTMLMediaElement::scheduleEvent):
+ (WebCore::HTMLMediaElement::asyncEventTimerFired):
+ (WebCore::HTMLMediaElement::canPlayType):
+ (WebCore::HTMLMediaElement::load):
+ (WebCore::HTMLMediaElement::prepareForLoad):
+ (WebCore::HTMLMediaElement::selectMediaResource):
+ (WebCore::HTMLMediaElement::loadResource):
+ (WebCore::HTMLMediaElement::isSafeToLoadURL):
+ (WebCore::HTMLMediaElement::waitForSourceChange):
+ (WebCore::HTMLMediaElement::noneSupported):
+ (WebCore::HTMLMediaElement::mediaEngineError):
+ (WebCore::HTMLMediaElement::cancelPendingEventsAndCallbacks):
+ (WebCore::HTMLMediaElement::setNetworkState):
+ (WebCore::HTMLMediaElement::setReadyState):
+ (WebCore::HTMLMediaElement::rewind):
+ (WebCore::HTMLMediaElement::returnToRealtime):
+ (WebCore::HTMLMediaElement::addPlayedRange):
+ (WebCore::HTMLMediaElement::seek):
+ (WebCore::HTMLMediaElement::finishSeek):
+ (WebCore::HTMLMediaElement::setPlaybackRate):
+ (WebCore::HTMLMediaElement::setWebkitPreservesPitch):
+ (WebCore::HTMLMediaElement::setAutoplay):
+ (WebCore::HTMLMediaElement::setPreload):
+ (WebCore::HTMLMediaElement::play):
+ (WebCore::HTMLMediaElement::playInternal):
+ (WebCore::HTMLMediaElement::pause):
+ (WebCore::HTMLMediaElement::pauseInternal):
+ (WebCore::HTMLMediaElement::setLoop):
+ (WebCore::HTMLMediaElement::setControls):
+ (WebCore::HTMLMediaElement::setVolume):
+ (WebCore::HTMLMediaElement::setMuted):
+ (WebCore::HTMLMediaElement::togglePlayState):
+ (WebCore::HTMLMediaElement::beginScrubbing):
+ (WebCore::HTMLMediaElement::endScrubbing):
+ (WebCore::HTMLMediaElement::selectNextSourceChild):
+ (WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
+ (WebCore::HTMLMediaElement::mediaPlayerVolumeChanged):
+ (WebCore::HTMLMediaElement::mediaPlayerMuteChanged):
+ (WebCore::HTMLMediaElement::mediaPlayerDurationChanged):
+ (WebCore::HTMLMediaElement::mediaPlayerRateChanged):
+ (WebCore::HTMLMediaElement::mediaPlayerPlaybackStateChanged):
+ (WebCore::HTMLMediaElement::mediaPlayerSawUnsupportedTracks):
+ (WebCore::HTMLMediaElement::mediaPlayerSizeChanged):
+ (WebCore::HTMLMediaElement::mediaPlayerRenderingModeChanged):
+ (WebCore::HTMLMediaElement::updatePlayState):
+ (WebCore::HTMLMediaElement::userCancelledLoad):
+ (WebCore::HTMLMediaElement::stop):
+ (WebCore::HTMLMediaElement::suspend):
+ (WebCore::HTMLMediaElement::resume):
+ (WebCore::HTMLMediaElement::hasPendingActivity):
+ (WebCore::HTMLMediaElement::mediaVolumeDidChange):
+ (WebCore::HTMLMediaElement::createMediaPlayerProxy):
+ (WebCore::HTMLMediaElement::enterFullscreen):
+ (WebCore::HTMLMediaElement::exitFullscreen):
+ (WebCore::HTMLMediaElement::setClosedCaptionsVisible):
+ (WebCore::HTMLMediaElement::mediaCanStart):
+ (WebCore::HTMLMediaElement::setShouldDelayLoadEvent):
+
+2010-09-09 Anton Muhin <antonm@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ [v8] bypass caches when query memory usage from post GC and in crash handler.
+ https://bugs.webkit.org/show_bug.cgi?id=45036
+
+ Second part of the whole change: now use API introduced in
+ http://trac.webkit.org/changeset/66818 and now backed by Chromium.
+
+ * bindings/v8/V8DOMWindowShell.cpp:
+ (WebCore::reportFatalErrorInV8):
+ * bindings/v8/V8GCController.cpp:
+ (WebCore::V8GCController::gcEpilogue):
+
+2010-09-09 Kwang Yul Seo <skyul@company100.net>
+
+ Reviewed by James Robinson.
+
+ Make sure skia is not Chromium specific
+ https://bugs.webkit.org/show_bug.cgi?id=39672
+
+ FontCustomPlatformData is not Chromium-specific. Move it to platform/skia.
+
+ No new tests because this is pure refactoring.
+
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gypi:
+ * platform/graphics/chromium/FontCustomPlatformData.cpp: Removed.
+ * platform/graphics/chromium/FontCustomPlatformData.h: Removed.
+ * platform/graphics/skia/FontCustomPlatformData.cpp: Copied from WebCore/platform/graphics/chromium/FontCustomPlatformData.cpp.
+ * platform/graphics/skia/FontCustomPlatformData.h: Copied from WebCore/platform/graphics/chromium/FontCustomPlatformData.h.
+
+2010-09-09 Chris Rogers <crogers@google.com>
+
+ Reviewed by Chris Fleizach.
+
+ Add AudioDSPKernel files
+ https://bugs.webkit.org/show_bug.cgi?id=45319
+
+ No new tests since audio API is not yet implemented.
+
+ * platform/audio/AudioDSPKernel.h: Added.
+ (WebCore::AudioDSPKernel::AudioDSPKernel):
+ (WebCore::AudioDSPKernel::~AudioDSPKernel):
+ (WebCore::AudioDSPKernel::sampleRate):
+ (WebCore::AudioDSPKernel::nyquist):
+ (WebCore::AudioDSPKernel::processor):
+
+2010-09-09 Chris Rogers <crogers@google.com>
+
+ Reviewed by Chris Fleizach.
+
+ Add AudioProcessor.h
+ https://bugs.webkit.org/show_bug.cgi?id=45206
+
+ No new tests since audio API is not yet implemented.
+
+ * platform/audio/AudioProcessor.h: Added.
+ (WebCore::AudioProcessor::AudioProcessor):
+ (WebCore::AudioProcessor::~AudioProcessor):
+ (WebCore::AudioProcessor::isInitialized):
+ (WebCore::AudioProcessor::sampleRate):
+
+2010-09-09 Kenneth Russell <kbr@google.com>
+
+ Reviewed by James Robinson.
+
+ Add cubic texture coordinate computation
+ https://bugs.webkit.org/show_bug.cgi?id=45250
+
+ Adding the texture coordinate computation for cubic curves per the
+ GPU Gems 3 chapter. No tests yet; will be tested in conjunction
+ with later code.
+
+ * platform/graphics/gpu/LoopBlinnConstants.h: Added.
+ * platform/graphics/gpu/LoopBlinnTextureCoords.cpp: Added.
+ (WebCore::LoopBlinnTextureCoords::compute):
+ * platform/graphics/gpu/LoopBlinnTextureCoords.h: Added.
+ (WebCore::LoopBlinnTextureCoords::Result::Result):
+ (WebCore::LoopBlinnTextureCoords::LoopBlinnTextureCoords):
+
+2010-09-09 Kenneth Russell <kbr@google.com>
+
+ Reviewed by James Robinson.
+
+ Add cubic curve classifier
+ https://bugs.webkit.org/show_bug.cgi?id=45249
+
+ Adding the cubic curve classification algorithm per the GPU Gems 3
+ chapter. No tests yet; will be tested in conjunction with later code.
+
+ * platform/graphics/gpu/LoopBlinnClassifier.cpp: Added.
+ (WebCore::LoopBlinnClassifier::classify):
+ * platform/graphics/gpu/LoopBlinnClassifier.h: Added.
+ (WebCore::LoopBlinnClassifier::Result::Result):
+ (WebCore::LoopBlinnClassifier::LoopBlinnClassifier):
+
+2010-09-09 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ QueryCommandValue('FontSize') returns pixel values instead of IE font numbers
+ https://bugs.webkit.org/show_bug.cgi?id=21033
+
+ Modified selectionStartCSSPropertyValue to return legacy font size instead of pixel size.
+ To implement the conversion between pixel font size and legacy font size,
+ added legacyFontSize to CSSStyleSelector with a helper static function findNearestLegacyFontSize.
+
+ Fixed a bug in selectionComputedStyle where it obtains the style of the previous editing position
+ even when the selection is a range. This change revealed a crash in executeToggleStyleInList,
+ which was also fixed.
+
+ Test: editing/execCommand/query-font-size.html
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getFontSizeCSSValuePreferringKeyword): Corrected style.
+ (WebCore::CSSComputedStyleDeclaration::useFixedFontDefaultSize): Added.
+ * css/CSSComputedStyleDeclaration.h:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::fontSizeForKeyword): Renamed fixed/monospace to shouldUseFixedDefaultSize.
+ (WebCore::findNearestLegacyFontSize): Added, a helper for legacyFontSize.
+ (WebCore::CSSStyleSelector::legacyFontSize): Added.
+ * css/CSSStyleSelector.h:
+ * editing/Editor.cpp:
+ (WebCore::Editor::selectionStartCSSPropertyValue): Added a conversion from pixel to legacy font size.
+ * editing/EditorCommand.cpp:
+ (WebCore::executeToggleStyleInList): Crash fix.
+ * page/Frame.cpp:
+ (WebCore::Frame::selectionComputedStyle): See above.
+
+2010-09-09 Robert Hogan <robert@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Give WebKit clients a way to replace window.screen
+ to foil attempts to track users with it.
+
+ This allows clients to overload the values returned by the
+ Screen object through the JSC manipulation API (such as
+ QWebFrame::addToJavaScriptWindowObject() in Qt). Clients will
+ want to do this when they do not want to reveal too much
+ explicit information about the user's desktop configuration.
+
+ https://bugs.webkit.org/show_bug.cgi?id=41802
+
+ * page/DOMWindow.idl:
+
+2010-09-09 Kenneth Russell <kbr@google.com>
+
+ Reviewed by James Robinson.
+
+ Memory leak in red/black tree
+ https://bugs.webkit.org/show_bug.cgi?id=45472
+
+ Fixed memory leak in red/black tree where it was using operator
+ new directly to allocate its internal nodes rather than the arena
+ with which it was configured. Added allocateObject variant to
+ arena supporting single-argument constructors. Added test to
+ red/black tree unit tests to cover this functionality, and
+ refactored TrackedAllocator into helper file to share between
+ arena and red/black tree tests.
+
+ * platform/graphics/gpu/PODArena.h:
+ (WebCore::PODArena::allocateObject):
+ (WebCore::PODArena::allocateBase):
+ * platform/graphics/gpu/PODIntervalTree.h:
+ (WebCore::PODIntervalTree::PODIntervalTree):
+ * platform/graphics/gpu/PODRedBlackTree.h:
+ (WebCore::PODRedBlackTree::add):
+
+2010-09-09 Dean Jackson <dino@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Fill mode is broken with multiple keyframes
+ https://bugs.webkit.org/show_bug.cgi?id=41209
+
+ With a forward fill mode the animation would tick after
+ the end of the animation, causing the fractional
+ duration of the animation to wrap. This meant the last
+ style update would happen using the incorrect keyframes.
+ The solution was to put clamps in for the elapsed time
+ and current iteration count.
+
+ Tests: animations/fill-mode-missing-from-to-keyframes.html
+ animations/fill-mode-multiple-keyframes.html
+
+ * page/animation/KeyframeAnimation.cpp:
+ (WebCore::KeyframeAnimation::fetchIntervalEndpointsForProperty):
+
+2010-09-09 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by David Kilzer.
+
+ AX: Support AccessibilityTextMarkers in DRT
+ https://bugs.webkit.org/show_bug.cgi?id=44778
+
+ Provide support in DRT for accessing and manipulating the text marker system that AX exposes.
+ This will allow future bug fixes in the text marker system to be adequately tested.
+
+ Tests: platform/mac/accessibility/element-for-text-marker.html
+ platform/mac/accessibility/text-marker-length.html
+
+ * accessibility/mac/AccessibilityObjectWrapper.mm:
+ (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
+
+2010-09-09 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ REGRESSION(r58875-r59046): Scrollable content drawn in wrong layer with Flash 10.1
+ https://bugs.webkit.org/show_bug.cgi?id=40743
+
+ We can't do partial compositing layer updates on scrolling if we have to look
+ for overlap, because the overlap map needs to be populated by traversing the
+ compositing layer hierarchy from the root.
+
+ Test: compositing/layer-creation/scroll-partial-update.html
+
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::updateCompositingLayers):
+
+2010-09-09 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Martin Robinson.
+
+ [GTK] testmimehandling falsely succeeds testing Ogg mime type
+ https://bugs.webkit.org/show_bug.cgi?id=45349
+
+ Advertize audio/x-vorbis+ogg so MediaDocuments loading local ogg
+ files work as well.
+
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+ (WebCore::mimeTypeCache):
+
+2010-09-09 Adam Barth <abarth@webkit.org>
+
+ Move FTPDirectoryDocument, ImageDocument, MediaDocument, and
+ PluginDocument from WebCore/loader to WebCore/html. These classes are
+ subclasses of HTMLDocument. They don't belong in the loader. Further
+ cleanup patches to follow.
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * html/FTPDirectoryDocument.cpp: Copied from WebCore/loader/FTPDirectoryDocument.cpp.
+ * html/FTPDirectoryDocument.h: Copied from WebCore/loader/FTPDirectoryDocument.h.
+ * html/ImageDocument.cpp: Copied from WebCore/loader/ImageDocument.cpp.
+ * html/ImageDocument.h: Copied from WebCore/loader/ImageDocument.h.
+ * html/MediaDocument.cpp: Copied from WebCore/loader/MediaDocument.cpp.
+ * html/MediaDocument.h: Copied from WebCore/loader/MediaDocument.h.
+ * html/PluginDocument.cpp: Copied from WebCore/loader/PluginDocument.cpp.
+ * html/PluginDocument.h: Copied from WebCore/loader/PluginDocument.h.
+ * loader/FTPDirectoryDocument.cpp: Removed.
+ * loader/FTPDirectoryDocument.h: Removed.
+ * loader/ImageDocument.cpp: Removed.
+ * loader/ImageDocument.h: Removed.
+ * loader/MediaDocument.cpp: Removed.
+ * loader/MediaDocument.h: Removed.
+ * loader/PluginDocument.cpp: Removed.
+ * loader/PluginDocument.h: Removed.
+
+2010-09-09 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: use string representation of resource type in extension API
+ Fixed Resoruce.Type.toString() to handle Resource.Type.Media.
+ https://bugs.webkit.org/show_bug.cgi?id=45286
+
+ Test: inspector/extensions-resources.html
+
+ * English.lproj/localizedStrings.js: Added "media".
+ * inspector/front-end/ExtensionServer.js: Added webInspector.resources.Types. Return resource types as strings.
+ (WebInspector.ExtensionServer.prototype._convertResource):
+ (WebInspector.ExtensionServer.prototype._buildExtensionAPIInjectedScript):
+ * inspector/front-end/Resource.js: Added toUIString(), changed toString() to return locale-independent representation.
+ (WebInspector.Resource.Type.toUIString):
+ (WebInspector.Resource.Type.toString):
+
+2010-09-09 Kristian Amlie <kristian.amlie@nokia.com>
+
+ Reviewed by Andreas Kling.
+
+ [Qt] Fixed incorrect Symbian scoping.
+
+ The missing install functionality is only true for mmp based systems.
+
+ https://bugs.webkit.org/show_bug.cgi?id=45268
+
+ * WebCore.pro:
+
+2010-09-09 Gyuyoung Kim <gyuyoung.kim@samsung.com>
+
+ Reviewed by Dirk Schulze.
+
+ [WML] Add a parameter to fix build break.
+ https://bugs.webkit.org/show_bug.cgi?id=45437
+
+ In WMLSelectElement.h, the setSelectedIndexByUser() needs to have one more parameter.
+ Because, parent class's setSelectedIndexByUser() has one more param.
+
+ * wml/WMLSelectElement.h:
+
+2010-09-09 Ryuan Choi <ryuan.choi@samsung.com>
+
+ Unreviewed attempt to fix EFL build after r67001.
+
+ [EFL] Regression (67001) Build break
+ https://bugs.webkit.org/show_bug.cgi?id=45422
+
+ * platform/efl/ScrollbarEfl.cpp:
+ (scrollbarEflEdjeMessage):
+
+2010-09-08 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Tony Chang.
+
+ MarkupAccumulator should be broken down into two classes
+ https://bugs.webkit.org/show_bug.cgi?id=44854
+
+ Extracted wrapWithNode, wrapWithStyleNode, stringValueForRange, renderedText, removeExteriorStyles,
+ shouldAnnotate, m_shouldAnnotate, and m_reversedPrecedingMarkup from MarkupAccumulator to create
+ StyledMarkupAccumulator in order to isolate annotation related code and prepending of text.
+
+ Isolating MarkupAccumulator as a separate class has two advantages:
+ 1. Isolated serialization code is easier to understand and easier to security-review.
+ 2. Embedder can use MarkupAccumulator to implement "Save as" feature.
+
+ Also made takeResults, appendText, and appendElement in MarkupAccumulator virtual to override in
+ StyledMarkupAccumulator because prepending text requires overriding takeResults, appendText needs
+ to append only rendered text when shouldAnnotate() is true, and appendElement requires a different
+ behavior when shouldAnnotate() is true or when called inside wrapWithNode with convertBlocksToInlines = true.
+
+ No new tests are added since this is a cleanup.
+
+ * editing/markup.cpp:
+ (WebCore::MarkupAccumulator::MarkupAccumulator): Removed shouldAnnotate from argument.
+ (WebCore::MarkupAccumulator::~MarkupAccumulator): Added.
+ (WebCore::StyledMarkupAccumulator::): Added.
+ (WebCore::StyledMarkupAccumulator::StyledMarkupAccumulator): Added.
+ (WebCore::StyledMarkupAccumulator::appendElement): Added to support annotation.
+ (WebCore::StyledMarkupAccumulator::shouldAnnotate): Moved from MarkupAccumulator.
+ (WebCore::MarkupAccumulator::appendStartTag): No longer takes convertBlocksToInlines and RangeFullySelectsNode.
+ (WebCore::StyledMarkupAccumulator::wrapWithStyleNode): Moved from MarkupAccumulator.
+ (WebCore::MarkupAccumulator::takeResults): No longer accumulates prepended text, and made virtual.
+ (WebCore::StyledMarkupAccumulator::takeResults): Added to support prepended text.
+ (WebCore::MarkupAccumulator::shouldAddNamespaceAttribute): Takes a reference to Attribute instead of a pointer.
+ (WebCore::MarkupAccumulator::entityMaskForText): Extracted from appendText.
+ (WebCore::MarkupAccumulator::appendText): No longer deals with annotation.
+ (WebCore::StyledMarkupAccumulator::appendText): Added to support annotation.
+ (WebCore::StyledMarkupAccumulator::stringValueForRange): Moved from MarkupAccumulator.
+ (WebCore::StyledMarkupAccumulator::renderedText): Moved from MarkupAccumulator.
+ (WebCore::MarkupAccumulator::appendElement): No longer deals with annotation.
+ (WebCore::StyledMarkupAccumulator::wrapWithNode): Moved from MarkupAccumulator.
+ (WebCore::StyledMarkupAccumulator::removeExteriorStyles): Moved from MarkupAccumulator.
+ (WebCore::MarkupAccumulator::appendOpenTag): Added.
+ (WebCore::MarkupAccumulator::appendCloseTag): Added.
+ (WebCore::MarkupAccumulator::appendAttribute): Added.
+ (WebCore::MarkupAccumulator::appendStartMarkup): No longer takes convertBlocksToInlines and RangeFullySelectsNode.
+ (WebCore::serializeNodes): Takes StyledMarkupAccumulator.
+ (WebCore::createMarkup): Range version uses StyledMarkupAccumulator and node version uses MarkupAccumulator.
+
+2010-09-08 Peter Kasting <pkasting@google.com>
+
+ Not reviewed, layout test fix.
+
+ Fix flaky layout test results caused by not initializing members correctly.
+ https://bugs.webkit.org/show_bug.cgi?id=45411
+
+ * platform/ScrollAnimator.cpp:
+ (WebCore::ScrollAnimator::ScrollAnimator):
+ (WebCore::ScrollAnimator::~ScrollAnimator):
+ * platform/ScrollAnimator.h:
+
+2010-09-08 MORITA Hajime <morrita@google.com>
+
+ Reviewed by Tony Chang.
+
+ spelling underline gets lost on backspace
+ https://bugs.webkit.org/show_bug.cgi?id=41423
+
+ moveParagraphs() did make a DOM range by serializing source range
+ and deserializing it back, and markers are gone during the process.
+ This change marks that DOM range again.
+
+ Test: editing/spelling/spelling-backspace-between-lines.html
+
+ * editing/CompositeEditCommand.cpp:
+ (WebCore::CompositeEditCommand::moveParagraphs):
+ * editing/Editor.cpp:
+ (WebCore::Editor::clearMisspellingsAndBadGrammar): Added.
+ (WebCore::Editor::markMisspellingsAndBadGrammar): Added.
+ * editing/Editor.h:
+
+2010-09-08 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ text/plain documents that start with \n trigger ASSERT
+ https://bugs.webkit.org/show_bug.cgi?id=45409
+
+ Because the TextDocumentParser uses a <pre> element to show the text,
+ it ran into a requirement from HTML5 to skip any initial \n character
+ tokens inside a <pre> element. We don't want the behavior for
+ TextDocuments, so I've loosened our ASSERTs and added a comment and a
+ test to document the correct behavior.
+
+ Test: fast/tokenizer/text-plain.html
+
+ * html/parser/HTMLTokenizer.cpp:
+ (WebCore::HTMLTokenizer::nextToken):
+
+2010-09-08 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Always do 2d canvas clearRect() in hardware
+ https://bugs.webkit.org/show_bug.cgi?id=45415
+
+ r67003 forced Canvas 2d's clearRect() to happen in software if a gradient/shadow/etc was
+ active. This is subtly wrong for mixed mode rendering since it results in only the
+ software backing store being cleared and not the hardware. This forces clearRect() to
+ happen in hardware. Since we upload mixed mode results before doing any hardware draw
+ this means we always clear everything.
+
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::clearRect):
+
+2010-09-08 Dean Jackson <dino@apple.com>
+
+ Unreviewed attempt to fix the Mac builds.
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseAnimationTimingFunction):
+
+2010-09-08 Dean Jackson <dino@apple.com>
+
+ Unreviewed attempt to fix QT build.
+
+ * platform/graphics/qt/GraphicsLayerQt.cpp:
+ (WebCore::solveStepsFunction):
+ (WebCore::applyTimingFunction):
+
+2010-09-08 Dean Jackson <dino@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Implement steps() timing function for animations
+ https://bugs.webkit.org/show_bug.cgi?id=44541
+
+ Tests: animations/timing-functions.html
+ transitions/steps-timing-function.html
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::getTimingFunctionValue):
+ - when creating computed style we now test what
+ type of timing function it being used
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseCubicBezierTimingFunctionValue):
+ - rename this method from parseTimingFunctionValue
+ (WebCore::CSSParser::parseAnimationTimingFunction):
+ - support parsing the steps() function
+ * css/CSSParser.h:
+ - method rename
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::mapAnimationTimingFunction):
+ - handle 'step-start' and 'step-end' identifiers. Also
+ now use ::create when constructing objects
+ * css/CSSTimingFunctionValue.cpp:
+ (WebCore::CSSLinearTimingFunctionValue::cssText):
+ (WebCore::CSSCubicBezierTimingFunctionValue::cssText):
+ (WebCore::CSSStepsTimingFunctionValue::cssText):
+ - new text output for computed style. We now produce
+ the text 'linear' when appropriate.
+ * css/CSSTimingFunctionValue.h:
+ (WebCore::CSSTimingFunctionValue::isLinearTimingFunctionValue):
+ (WebCore::CSSTimingFunctionValue::isCubicBezierTimingFunctionValue):
+ (WebCore::CSSTimingFunctionValue::isStepsTimingFunctionValue):
+ (WebCore::CSSTimingFunctionValue::CSSTimingFunctionValue):
+ (WebCore::CSSTimingFunctionValue::isTimingFunctionValue):
+ (WebCore::CSSLinearTimingFunctionValue::create):
+ (WebCore::CSSLinearTimingFunctionValue::isLinearTimingFunctionValue):
+ (WebCore::CSSLinearTimingFunctionValue::CSSLinearTimingFunctionValue):
+ (WebCore::CSSCubicBezierTimingFunctionValue::create):
+ (WebCore::CSSCubicBezierTimingFunctionValue::isCubicBezierTimingFunctionValue):
+ (WebCore::CSSCubicBezierTimingFunctionValue::CSSCubicBezierTimingFunctionValue):
+ (WebCore::CSSStepsTimingFunctionValue::create):
+ (WebCore::CSSStepsTimingFunctionValue::numberOfSteps):
+ (WebCore::CSSStepsTimingFunctionValue::stepAtStart):
+ (WebCore::CSSStepsTimingFunctionValue::isStepsTimingFunctionValue):
+ (WebCore::CSSStepsTimingFunctionValue::CSSStepsTimingFunctionValue):
+ - CSSTimingFunction is now a pure virtual ref-counted base class, with
+ subclasses for each of the three supported timing functions.
+ * css/CSSValueKeywords.in:
+ - new keywords step-start and step-end
+ * page/animation/AnimationBase.cpp:
+ (WebCore::solveStepsFunction):
+ - produces the output value from a stepping function
+ (WebCore::AnimationBase::progress):
+ - now has to switch based on timing function type
+ * page/animation/KeyframeAnimation.cpp:
+ (WebCore::KeyframeAnimation::fetchIntervalEndpointsForProperty):
+ - use ref-counted access
+ * platform/animation/Animation.cpp:
+ (WebCore::Animation::animationsMatch):
+ - change timing function comparison for operator==
+ * platform/animation/Animation.h:
+ (WebCore::Animation::timingFunction):
+ (WebCore::Animation::setTimingFunction):
+ (WebCore::Animation::initialAnimationTimingFunction):
+ - move to ref-counted timing function class
+ * platform/animation/TimingFunction.h:
+ (WebCore::TimingFunction::~TimingFunction):
+ (WebCore::TimingFunction::isLinearTimingFunction):
+ (WebCore::TimingFunction::isCubicBezierTimingFunction):
+ (WebCore::TimingFunction::isStepsTimingFunction):
+ (WebCore::TimingFunction::TimingFunction):
+ (WebCore::LinearTimingFunction::create):
+ (WebCore::LinearTimingFunction::~LinearTimingFunction):
+ (WebCore::LinearTimingFunction::operator==):
+ (WebCore::LinearTimingFunction::LinearTimingFunction):
+ (WebCore::CubicBezierTimingFunction::create):
+ (WebCore::CubicBezierTimingFunction::~CubicBezierTimingFunction):
+ (WebCore::CubicBezierTimingFunction::operator==):
+ (WebCore::CubicBezierTimingFunction::CubicBezierTimingFunction):
+ (WebCore::StepsTimingFunction::create):
+ (WebCore::StepsTimingFunction::~StepsTimingFunction):
+ (WebCore::StepsTimingFunction::operator==):
+ (WebCore::StepsTimingFunction::numberOfSteps):
+ (WebCore::StepsTimingFunction::stepAtStart):
+ (WebCore::StepsTimingFunction::StepsTimingFunction):
+ - TimingFunction is now a ref-counted pure virtual base class,
+ with three subclasses representing the types of timing functions
+ that are supported.
+ * platform/graphics/GraphicsLayer.h:
+ (WebCore::AnimationValue::AnimationValue):
+ (WebCore::FloatAnimationValue::FloatAnimationValue):
+ (WebCore::TransformAnimationValue::TransformAnimationValue):
+ - use PassRefPtr in function parameters
+ * platform/graphics/qt/GraphicsLayerQt.cpp:
+ (WebCore::solveStepsFunction):
+ (WebCore::applyTimingFunction):
+ (WebCore::AnimationQt::AnimationQt):
+ (WebCore::AnimationQt::updateCurrentTime):
+ - implement the timing function switch for QT
+ * platform/graphics/mac/GraphicsLayerCA.mm:
+ (WebCore::getCAMediaTimingFunction):
+ - update for new timing function interface
+ (WebCore::animationHasStepsTimingFunction):
+ - new method to make sure animations with steps() functions
+ never try to execute in Core Animation
+ (WebCore::GraphicsLayerCA::addAnimation):
+ - test for steps() timing function
+ (WebCore::GraphicsLayerCA::timingFunctionForAnimationValue):
+ * rendering/style/RenderStyleConstants.h:
+ - remove old RenderStyle enum for timing function types
+
+2010-09-08 Csaba Osztrogonác <ossy@webkit.org>
+
+ Unreviewed trivial fix after r66960.
+
+ * WebCore.pro: loader/TextDocument.h renamed to html/TextDocument.h
+
+2010-09-08 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ move-during-parse-parent.html crashes
+ https://bugs.webkit.org/show_bug.cgi?id=45210
+
+ When inserting elements into the tree, they need to be associated with
+ their parent's document, not the document for which the parser is
+ running. These two are different when the parent has been moved to a
+ different document during parsing.
+
+ Test: fast/parser/move-during-parsing.html
+
+ * html/parser/HTMLConstructionSite.cpp:
+ (WebCore::HTMLConstructionSite::insertComment):
+ (WebCore::HTMLConstructionSite::insertCommentOnHTMLHtmlElement):
+ (WebCore::HTMLConstructionSite::insertScriptElement):
+ (WebCore::HTMLConstructionSite::insertTextNode):
+ (WebCore::HTMLConstructionSite::createElement):
+ (WebCore::HTMLConstructionSite::createHTMLElement):
+
+2010-09-08 Gabor Loki <loki@webkit.org>
+
+ Reviewed by Andreas Kling.
+
+ Fix increases required alignment of target type warning on ARM
+ https://bugs.webkit.org/show_bug.cgi?id=45301
+
+ No new tests needed.
+
+ * bindings/js/SerializedScriptValue.cpp:
+ (WebCore::CloneDeserializer::readLittleEndian):
+ (WebCore::CloneDeserializer::readString):
+ * plugins/PluginDatabase.cpp:
+ (WebCore::readTime):
+
+2010-09-08 Antonio Gomes <agomes@rim.com>
+
+ Reviewed by Daniel Bates.
+
+ Make FocusController::focusedOrMainFrame method const
+ https://bugs.webkit.org/show_bug.cgi?id=45406
+
+ No new tests.
+
+ * page/FocusController.cpp:
+ (WebCore::FocusController::focusedOrMainFrame):
+ * page/FocusController.h:
+
+2010-09-08 Jian Li <jianli@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Fix a problem in createCanonicalUUIDString that causes the last digit
+ missing on Linux.
+ https://bugs.webkit.org/show_bug.cgi?id=45412
+
+ This is caused by not including the final null character into the count
+ that is provided to fgets.
+
+ This is covered by the existing test: send-form-data-with-sliced-file.html.
+
+ * platform/UUID.cpp:
+ (WebCore::createCanonicalUUIDString):
+
+2010-09-08 Nico Weber <thakis@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ chromium/mac: Fix overrelease in ImageLayerChromium
+ https://bugs.webkit.org/show_bug.cgi?id=45360
+
+ Only release colorSpace if we created it.
+
+ * platform/graphics/chromium/ImageLayerChromium.cpp:
+ (WebCore::ImageLayerChromium::updateContents):
+
+2010-09-08 Robert Hogan <robert@webkit.org>
+
+ Reviewed by Antonio Gomes.
+
+ Remove some unnecessary duplicate calls to string functions
+
+ https://bugs.webkit.org/show_bug.cgi?id=45314
+
+ * platform/network/curl/ResourceHandleManager.cpp:
+ (WebCore::parseDataUrl):
+ * websockets/WebSocketChannel.cpp:
+ (WebCore::WebSocketChannel::send):
+
+2010-09-08 Peter Kasting <pkasting@google.com>
+
+ Not reviewed, fallout from http://trac.webkit.org/changeset/67001
+
+ Fix compile failures and add svn:eol-style on two new files.
+
+ * platform/ScrollAnimator.h: Added property svn:eol-style.
+ * platform/ScrollAnimatorWin.cpp: Added property svn:eol-style.
+ * platform/win/PopupMenuWin.cpp: Fix compile errors.
+ (WebCore::PopupMenuWin::scrollToRevealSelection):
+ (WebCore::PopupMenuWin::scrollSize):
+
+2010-09-08 James Robinson <jamesr@chromium.org>
+
+ Reviewed by Kenneth Russell.
+
+ [chromium] Force canvas 2d draw calls to happen in software if a gradient, pattern, shadow, or clip are active
+ https://bugs.webkit.org/show_bug.cgi?id=45405
+
+ This forces all draw calls to happen in software instead of hardware if there is a fill pattern, gradient,
+ shadow, or clip applied; at least until we can handle these in hardware. Otherwise the pattern/gradient/etc
+ is completely ignored by the hardware drawing routine and we render incorrectly.
+
+ The test is slightly convervative - for example it will force drawImage() calls to happen in software if a
+ fill gradient is set even though it's irrelevant. This doesn't seem to be an issue in practice and we
+ can tighten the checks later if needed.
+
+ Tested by fast/canvas/canvas-incremental-repaint.html.
+
+ * platform/graphics/skia/GraphicsContextSkia.cpp:
+ (WebCore::GraphicsContext::canvasClip):
+ (WebCore::GraphicsContext::fillRect):
+ * platform/graphics/skia/ImageBufferSkia.cpp:
+ (WebCore::ImageBuffer::draw):
+ * platform/graphics/skia/ImageSkia.cpp:
+ (WebCore::BitmapImage::draw):
+ (WebCore::BitmapImageSingleFrameSkia::draw):
+ * platform/graphics/skia/PlatformContextSkia.cpp:
+ (WebCore::PlatformContextSkia::State::State):
+ (WebCore::PlatformContextSkia::canvasClipPath):
+ (WebCore::PlatformContextSkia::canAccelerate):
+ * platform/graphics/skia/PlatformContextSkia.h:
+
+2010-09-08 Peter Kasting <pkasting@google.com>
+
+ Reviewed by David Hyatt.
+
+ Add smooth scrolling framework, and a Windows implementation.
+ https://bugs.webkit.org/show_bug.cgi?id=32356
+
+ * CMakeLists.txt: Add ScrollAnimator.
+ * GNUmakefile.am: Add ScrollAnimator.
+ * WebCore.gyp/WebCore.gyp: Add Windows ScrollAnimator.
+ * WebCore.gypi: Add ScrollAnimator.
+ * WebCore.pro: Add ScrollAnimator.
+ * WebCore.vcproj/WebCore.vcproj: Add ScrollAnimator.
+ * WebCore.xcodeproj/project.pbxproj: Add ScrollAnimator.
+ * platform/ScrollAnimator.cpp: Added base implementation that does no animation.
+ (WebCore::ScrollAnimator::create):
+ (WebCore::ScrollAnimator::scroll):
+ (WebCore::ScrollAnimator::setScrollPositionAndStopAnimation):
+ * platform/ScrollAnimator.h: Added base implementation that does no animation.
+ (WebCore::ScrollAnimator::ScrollAnimator):
+ (WebCore::ScrollAnimator::~ScrollAnimator):
+ * platform/ScrollAnimatorWin.cpp: Added Windows subclass that animates scrolls.
+ (WebCore::ScrollAnimator::create):
+ (WebCore::ScrollAnimatorWin::PerAxisData::PerAxisData):
+ (WebCore::ScrollAnimatorWin::ScrollAnimatorWin):
+ (WebCore::ScrollAnimatorWin::~ScrollAnimatorWin):
+ (WebCore::ScrollAnimatorWin::scroll):
+ (WebCore::ScrollAnimatorWin::setScrollPositionAndStopAnimation):
+ (WebCore::ScrollAnimatorWin::accelerationTime):
+ (WebCore::ScrollAnimatorWin::animationTimerFired):
+ (WebCore::ScrollAnimatorWin::stopAnimationTimerIfNeeded):
+ (WebCore::ScrollAnimatorWin::animateScroll):
+ * platform/ScrollAnimatorWin.h: Added Windows subclass that animates scrolls.
+ * platform/ScrollView.cpp: Implement new ScrollbarClient functions. Allow wheel scrolls to be animated.
+ (WebCore::ScrollView::scrollSize):
+ (WebCore::ScrollView::setScrollOffsetFromAnimation):
+ (WebCore::ScrollView::updateScrollbars):
+ (WebCore::ScrollView::wheelEvent):
+ * platform/ScrollView.h: Implement new ScrollbarClient functions.
+ * platform/Scrollbar.cpp: Allow ScrollAnimator to handle scrolls if present.
+ (WebCore::Scrollbar::setValue):
+ (WebCore::Scrollbar::scroll):
+ (WebCore::Scrollbar::moveThumb):
+ (WebCore::Scrollbar::setCurrentPos):
+ (WebCore::Scrollbar::mouseMoved):
+ * platform/Scrollbar.h:
+ * platform/ScrollbarClient.cpp: Added to avoid having to make ScrollAnimator.h non-private.
+ (WebCore::ScrollbarClient::ScrollbarClient):
+ (WebCore::ScrollbarClient::~ScrollbarClient):
+ (WebCore::ScrollbarClient::scroll):
+ (WebCore::ScrollbarClient::setScrollPositionAndStopAnimation):
+ * platform/ScrollbarClient.h: Add hooks for ScrollAnimator.
+ (WebCore::ScrollbarClient::convertFromScrollbarToContainingView):
+ (WebCore::ScrollbarClient::convertFromContainingViewToScrollbar):
+ * platform/gtk/MainFrameScrollbarGtk.cpp:
+ (MainFrameScrollbarGtk::gtkValueChanged):
+ * platform/qt/ScrollbarQt.cpp: Use scroll() in preference to setValue().
+ (WebCore::Scrollbar::contextMenu):
+ * platform/win/PopupMenuWin.cpp: Implement new ScrollbarClient functions.
+ (WebCore::PopupMenuWin::scrollSize):
+ (WebCore::PopupMenuWin::setScrollOffsetFromAnimation):
+ * platform/win/PopupMenuWin.h: Implement new ScrollbarClient functions.
+ * rendering/RenderDataGrid.cpp: Implement new ScrollbarClient functions.
+ (WebCore::RenderDataGrid::scrollSize):
+ (WebCore::RenderDataGrid::setScrollOffsetFromAnimation):
+ * rendering/RenderDataGrid.h: Implement new ScrollbarClient functions.
+ * rendering/RenderLayer.cpp: Implement new ScrollbarClient functions.
+ (WebCore::RenderLayer::scrollToOffset):
+ (WebCore::RenderLayer::scrollSize):
+ (WebCore::RenderLayer::setScrollOffsetFromAnimation):
+ (WebCore::RenderLayer::updateScrollInfoAfterLayout):
+ * rendering/RenderLayer.h: Implement new ScrollbarClient functions.
+ * rendering/RenderListBox.cpp: Implement new ScrollbarClient functions.
+ (WebCore::RenderListBox::scrollToRevealElementAtListIndex):
+ (WebCore::RenderListBox::scrollSize):
+ (WebCore::RenderListBox::setScrollOffsetFromAnimation):
+ (WebCore::RenderListBox::setScrollTop):
+ * rendering/RenderListBox.h: Implement new ScrollbarClient functions.
+
+2010-09-08 Ryosuke Niwa <rniwa@webkit.org>
+
+ Reviewed by Tony Chang.
+
+ applyInlineStyleToRange needs cleanup
+ https://bugs.webkit.org/show_bug.cgi?id=45008
+
+ Removed rangeIsEmpty and extracted the entire loop into applyInlineStyleToNodeRange.
+ applyInlineStyleToRange is now a wrapper that fixes range and passes it on to applyInlineStyleToNodeRange.
+
+ No new tests are added since this is a cleanup.
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::ApplyStyleCommand::applyInlineStyleToRange): Cleaned up.
+ (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange): Extracted from applyInlineStyleToRange.
+ * editing/ApplyStyleCommand.h:
+
2010-09-08 Andy Estes <aestes@apple.com>
+ Rubber-stamped by Darin Adler.
+
+ Incorporate additional feedback from
+ https://bugs.webkit.org/show_bug.cgi?id=45364.
+
+ * html/HTMLObjectElement.cpp:
+ (WebCore::HTMLObjectElement::parametersForPlugin): Rename urlParam to
+ urlParameter.
+ * loader/SubframeLoader.h: Add argument names to the definition of
+ SubframeLoader::resourceWillUsePlugin().
+
+2010-09-07 Oliver Hunt <oliver@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ Support SerializedScriptValue in WebKit2
+ https://bugs.webkit.org/show_bug.cgi?id=45340
+
+ Add a new constructor that allows WebKit2 to create a SerializedScriptValue
+ directly from serialized data.
+
+ * WebCore.exp.in:
+ * bindings/js/SerializedScriptValue.h:
+ (WebCore::SerializedScriptValue::adopt):
+ (WebCore::SerializedScriptValue::data):
+
+2010-09-08 Andy Estes <aestes@apple.com>
+
Reviewed by Eric Carlson.
Fallback content should be rendered when an <object> doesn't specify a
@@ -46870,7 +64442,7 @@
Continuation outlines are normally painted by the containing block. However, when the
block and the inline are not enclosed by the same self-painting layer, the inline has to
paint its own outlines. This was handled correctly only for the case where the inline had
- its own self-painting layer, but now when an ancestor inline had the self-painting layer.
+ its own self-painting layer, but not when an ancestor inline had the self-painting layer.
* rendering/InlineFlowBox.cpp:
(WebCore::InlineFlowBox::paint): Instead of testing for having a self-painting layer, test
« no previous file with comments | « no previous file | WebCore/platform/ScrollView.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698