Timeline



Feb 2, 2014:

11:52 PM Changeset in webkit [163289] by Darin Adler
  • 12 edits
    3 deletes in trunk/Source

Obey "delete this" comments, including deleting String::characters and friends
https://bugs.webkit.org/show_bug.cgi?id=126865

Reviewed by Andreas Kling.

Source/WebCore:

  • CMakeLists.txt: Deleted HTMLParserErrorCodes.cpp.
  • GNUmakefile.list.am: Deleted HTMLParserErrorCodes.cpp/h, and HTMLParserQuirks.h.
  • WebCore.vcxproj/WebCore.vcxproj: Deleted HTMLParserErrorCodes.cpp/h.
  • WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • html/HTMLParserErrorCodes.cpp: Removed.
  • html/HTMLParserErrorCodes.h: Removed.
  • html/HTMLParserQuirks.h: Removed.
  • rendering/RenderText.h: Deleted the characters function, leaving behind the

deprecatedCharacters function.

Source/WTF:

  • wtf/text/AtomicString.h: Deleted the characters function.
  • wtf/text/StringBuilder.h: Deleted the characters function, leaving behind the

deprecatedCharacters function.

  • wtf/text/StringImpl.h: Ditto.
  • wtf/text/WTFString.h: Ditto. Also added a constructor that takes a StringImpl&,

helpful for later string refactoring.

11:31 PM Changeset in webkit [163288] by mitz@apple.com
  • 10 edits in trunk/Source/WTF

Stop using PLATFORM(MAC) in WTF except where it means “OS X but not iOS”
https://bugs.webkit.org/show_bug.cgi?id=128089

Reviewed by Darin Adler.

Replaced all uses of PLATFORM(MAC) that weren’t accompanied by !PLATFORM(IOS) with
equivalent(*) tests that are more idiomatic and will not change once PLATFORM(MAC) changes to
be false when building for iOS.

  • - One exception noted below.
  • wtf/AutodrainedPool.h: Changed PLATFORM(MAC) to USE(FOUNDATION), because NSAutoreleasePool

is a Foundation class.

  • wtf/CurrentTime.cpp:

(WTF::monotonicallyIncreasingTime): Changed PLATFORM(MAC) to OS(DARWIN), because Mach is
part of the Darwin kernel, but reordered such that the EFL and GLIB implementations continue
to take precedence regardless of the OS.

  • wtf/MainThread.cpp: Changed PLATFORM(MAC) to OS(DARWIN) && !PLATFORM(EFL) && !PLATFORM(GTK).
  • wtf/MainThread.h: Ditto.
  • wtf/Platform.h: Changed USE(CG) and USE(CA) to depend on COCOA, rather than MAC or IOS.

Ditto for USE(CFURLCACHE), HAVE(ACCESSIBILITY), USE(PROTECTION_SPACE_AUTH_CALLBACK),
USE(ACCESSIBILITY_CONTEXT_MENUS), USE(EXPORT_MACROS), USE(AVFOUNDATION),
USE(REQUEST_ANIMATION_FRAME_TIMER), USE(REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR),
USE(CONTENT_FILTERING), USE(UNIFIED_TEXT_CHECKING), USE(MARKER_REMOVAL_UPON_EDITING),
USE(AUDIO_SESSION), USE(IOSURFACE), and ENABLE(CSS3_TEXT_DECORATION_SKIP_INK). Changed
PLATFORM(MAC) to OS(DARWIN) && !PLATFORM(EFL) && !PLATFORM(GTK) in controlling various
JavaScriptCore or JavaScriptCore-dependent behaviors.

  • wtf/RunLoop.h: Changed PLATFORM(MAC) to PLATFORM(COCOA).
  • wtf/RunLoopTimerCF.cpp: Ditto.
  • wtf/SchedulePair.h: Changed PLATFORM(MAC) to USE(FOUNDATION), since it was used to guard

usage of Foundation API.

  • wtf/Threading.cpp: Added an explicit !PLATFORM(IOS) in a guard around something needed

only on OS X and Windows.

10:19 PM Changeset in webkit [163287] by beidson@apple.com
  • 5 edits in trunk/Source

IDB: Cannot open new databases with the default version
https://bugs.webkit.org/show_bug.cgi?id=128096

Reviewed by Tim Horton.

Source/WebCore:

  • Modules/indexeddb/IDBDatabaseBackend.cpp:

(WebCore::IDBDatabaseBackend::openConnectionInternal): Update logic to handle the

current version being NoIntVersion.

  • Modules/indexeddb/IDBTransactionBackendOperations.cpp:

(WebCore::IDBDatabaseBackend::VersionChangeOperation::perform): Update ASSERT.

Source/WebKit2:

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::createAndPopulateInitialMetadata): New databases should

have the magic "no version set" version.

10:18 PM Changeset in webkit [163286] by Darin Adler
  • 2 edits in trunk/Source/WebCore

Fix context save/restore mistake spotted in SVGInlineTextBox::paintTextWithShadows
https://bugs.webkit.org/show_bug.cgi?id=128095

Reviewed by Andreas Kling.

  • rendering/svg/SVGInlineTextBox.cpp:

(WebCore::SVGInlineTextBox::paintTextWithShadows): Move calls to GraphicsContext::restore
and GraphicsContext::clearShadow before restoreGraphicsContextAfterTextPainting, since that
function can swap contexts.

9:04 PM Changeset in webkit [163285] by akling@apple.com
  • 9 edits in trunk/Source/WebCore

Modernize RenderSVGText::locateRenderSVGTextAncestor().
<https://webkit.org/b/128093>

Make locateRenderSVGTextAncestor() take a reference, and simplify it
internally with lineageOfType.

Switched callers to use 'auto' for the return type so we get some
devirtualization freebies.

Reviewed by Anders Carlsson.

  • rendering/svg/RenderSVGInline.cpp:

(WebCore::RenderSVGInline::objectBoundingBox):
(WebCore::RenderSVGInline::strokeBoundingBox):
(WebCore::RenderSVGInline::repaintRectInLocalCoordinates):
(WebCore::RenderSVGInline::absoluteQuads):
(WebCore::RenderSVGInline::addChild):
(WebCore::RenderSVGInline::removeChild):

  • rendering/svg/RenderSVGInlineText.cpp:

(WebCore::RenderSVGInlineText::setTextInternal):
(WebCore::RenderSVGInlineText::styleDidChange):

  • rendering/svg/RenderSVGResourceGradient.cpp:

(WebCore::createMaskAndSwapContextForTextGradient):
(WebCore::clipToTextMask):

  • rendering/svg/RenderSVGText.cpp:

(WebCore::RenderSVGText::locateRenderSVGTextAncestor):

  • rendering/svg/RenderSVGText.h:

(WebCore::RenderSVGText>):

  • rendering/svg/SVGTextLayoutAttributesBuilder.cpp:

(WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForTextRenderer):

  • rendering/svg/SVGTextMetricsBuilder.cpp:

(WebCore::SVGTextMetricsBuilder::measureTextRenderer):

  • svg/SVGTextPositioningElement.cpp:

(WebCore::SVGTextPositioningElement::svgAttributeChanged):

8:54 PM Changeset in webkit [163284] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Add a logic for checking multi touch in GestureRecognizer::noGesture
https://bugs.webkit.org/show_bug.cgi?id=127675

Patch by Sanghyup Lee <sh53.lee@samsung.com> on 2014-02-02
Reviewed by Gyuyoung Kim.

When processing TouchStart event in GestureRecognizer::noGesture(), we should
check the number of touch points to distinguish if the gesture is single tap
or pinch zoom. Current logic only considers the event as single tap.

  • UIProcess/API/efl/GestureRecognizer.cpp:

(WebKit::GestureRecognizer::noGesture):

8:50 PM Changeset in webkit [163283] by akling@apple.com
  • 13 edits in trunk/Source/WebCore

Modernize the toRenderSVGResourceContainer() helper.
<https://webkit.org/b/128091>

Make toRenderSVGResourceContainer() a free function like all the
other casting helpers. Use references instead of pointers where
applicable.

Reviewed by Anders Carlsson.

  • rendering/RenderLayerFilterInfo.cpp:

(WebCore::RenderLayer::FilterInfo::updateReferenceFilterClients):
(WebCore::RenderLayer::FilterInfo::removeReferenceFilterClients):

  • rendering/RenderObject.cpp:
  • rendering/RenderObject.h:
  • rendering/svg/RenderSVGGradientStop.cpp:

(WebCore::RenderSVGGradientStop::styleDidChange):

  • rendering/svg/RenderSVGResource.cpp:

(WebCore::RenderSVGResource::markForLayoutAndParentResourceInvalidation):

  • rendering/svg/RenderSVGResourceContainer.cpp:

(WebCore::RenderSVGResourceContainer::markAllClientsForInvalidation):

  • rendering/svg/RenderSVGResourceContainer.h:
  • rendering/svg/RenderSVGResourceFilter.cpp:

(WebCore::RenderSVGResourceFilter::buildPrimitives):

  • rendering/svg/RenderSVGResourceFilter.h:
  • rendering/svg/SVGRenderTreeAsText.cpp:

(WebCore::writeSVGResourceContainer):

  • rendering/svg/SVGResourcesCycleSolver.cpp:

(WebCore::SVGResourcesCycleSolver::resolveCycles):

  • svg/SVGElement.cpp:

(WebCore::SVGElement::svgAttributeChanged):

8:44 PM Changeset in webkit [163282] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Minor SVGRootInlineBox cleanup.
<https://webkit.org/b/128094>

Remove two virtual functions and sprinkle some missing overrides.

Reviewed by Anders Carlsson.

  • rendering/svg/SVGRootInlineBox.h:
6:35 PM Changeset in webkit [163281] by oliver@apple.com
  • 1 edit in trunk/Source/WebCore/ChangeLog

I forgot to save the changelog prior to submitting.

6:25 PM Changeset in webkit [163280] by oliver@apple.com
  • 41 edits in trunk

Push DOM attributes into the prototype chain
https://bugs.webkit.org/show_bug.cgi?id=127969

Reviewed by Mark Lam.

Source/WebCore:

Start redoing code generation for attributes.

  • bindings/js/JSDOMBinding.h:

(WebCore::getStaticPropertySlotEntryWithoutCaching):
(WebCore::getStaticPropertySlotEntryWithoutCaching<JSDOMWrapper>):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateGetOwnPropertySlotBody):
(HasComplexGetOwnProperty):
(ConstructorShouldBeOnInstance):
(AttributeShouldBeOnInstance):
(InstanceAttributeCount):
(PrototypeAttributeCount):
(InstanceOverridesGetOwnPropertySlot):
(PrototypeOverridesGetOwnPropertySlot):
(GenerateAttributesHashTable):
(GenerateImplementation):

LayoutTests:

Update layout test results

  • fast/dom/wrapper-classes-expected.txt:
  • js/dom/constructor-attributes-expected.txt:
  • js/dom/dom-static-property-for-in-iteration-expected.txt:
  • js/dom/script-tests/constructor-attributes.js:
6:15 PM Changeset in webkit [163279] by akling@apple.com
  • 4 edits in trunk/Source/WebCore

RenderSVGResourceContainer clients are always RenderElement.
<https://webkit.org/b/128088>

All clients of RenderSVGResourceContainer are going to be RenderElement,
so make the interface take RenderElement& instead of RenderObject*.

Also modernized the code a bit with C++11 range for loops.

Reviewed by Sam Weinig.

  • rendering/svg/RenderSVGResourceContainer.cpp:

(WebCore::RenderSVGResourceContainer::addClient):
(WebCore::RenderSVGResourceContainer::removeClient):

  • rendering/svg/RenderSVGResourceContainer.h:
  • rendering/svg/SVGResourcesCache.cpp:

(WebCore::SVGResourcesCache::addResourcesFromRenderer):
(WebCore::SVGResourcesCache::removeResourcesFromRenderer):

5:40 PM Changeset in webkit [163278] by Alan Bujtas
  • 3 edits in trunk/Source/WebCore

Subpixel rendering: Use floorf/roundf/fabs in device snapping helpers.
https://bugs.webkit.org/show_bug.cgi?id=128075

Reviewed by Darin Adler.

No change in functionality.

  • platform/LayoutUnit.h:

(WebCore::roundToDevicePixel):
(WebCore::floorToDevicePixel):

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::platformInit):

5:05 PM Changeset in webkit [163277] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

SVGDocumentExtensions::resourcesCache() should return a reference.
<https://webkit.org/b/128087>

The SVGResourcesCache is always present when the Document is using
SVG extensions, so make this return a reference and propagate that
knowledge to the call site.

This gets rid of an assertion and some rickety looking ->'s.
Also converted a loop to use C++11 range for syntax.

Reviewed by Sam Weinig.

  • rendering/svg/SVGResourcesCache.cpp:

(WebCore::resourcesCacheFromRenderer):
(WebCore::SVGResourcesCache::cachedResourcesForRenderObject):
(WebCore::SVGResourcesCache::clientStyleChanged):
(WebCore::SVGResourcesCache::clientWasAddedToTree):
(WebCore::SVGResourcesCache::clientWillBeRemovedFromTree):
(WebCore::SVGResourcesCache::clientDestroyed):
(WebCore::SVGResourcesCache::resourceDestroyed):

  • svg/SVGDocumentExtensions.h:

(WebCore::SVGDocumentExtensions::resourcesCache):

5:03 PM Changeset in webkit [163276] by akling@apple.com
  • 12 edits in trunk/Source/WebCore

RenderSVGInlineText::computeNewScaledFontForStyle() should take references.
<https://webkit.org/b/128086>

Make computeNewScaledFontForStyle() take renderer and style by reference
instead of taking a pointer and asserting that it's non-null.

Reviewed by Darin Adler.

  • rendering/svg/RenderSVGInlineText.cpp:

(WebCore::RenderSVGInlineText::updateScaledFont):
(WebCore::RenderSVGInlineText::computeNewScaledFontForStyle):

  • rendering/svg/RenderSVGInlineText.h:
  • rendering/svg/RenderSVGResourceClipper.cpp:

(WebCore::RenderSVGResourceClipper::applyClippingToContext):

  • rendering/svg/RenderSVGResourceContainer.cpp:

(WebCore::RenderSVGResourceContainer::shouldTransformOnTextPainting):

  • rendering/svg/RenderSVGResourceFilter.cpp:

(WebCore::RenderSVGResourceFilter::applyResource):

  • rendering/svg/RenderSVGResourceGradient.cpp:

(WebCore::createMaskAndSwapContextForTextGradient):
(WebCore::clipToTextMask):

  • rendering/svg/RenderSVGResourceMasker.cpp:

(WebCore::RenderSVGResourceMasker::applyResource):

  • rendering/svg/RenderSVGResourcePattern.cpp:

(WebCore::RenderSVGResourcePattern::buildPattern):

  • rendering/svg/SVGInlineTextBox.cpp:

(WebCore::SVGInlineTextBox::paintDecorationWithStyle):

  • rendering/svg/SVGRenderingContext.cpp:

(WebCore::SVGRenderingContext::calculateScreenFontSizeScalingFactor):
(WebCore::SVGRenderingContext::calculateTransformationToOutermostCoordinateSystem):

  • rendering/svg/SVGRenderingContext.h:
4:38 PM Changeset in webkit [163275] by Darin Adler
  • 16 edits in trunk/Source

Still more characters -> deprecatedCharacters (EWS keeps finding more)
https://bugs.webkit.org/show_bug.cgi?id=128076

Reviewed by Andreas Kling.

Source/WebCore:

  • platform/graphics/harfbuzz/HarfBuzzShaper.cpp:

(WebCore::HarfBuzzShaper::setFontFeatures):
(WebCore::HarfBuzzShaper::shapeHarfBuzzRuns):
Use deprecatedCharacters.

Source/WebKit/win:

  • AccessibleTextImpl.cpp:

(AccessibleText::get_text):
(AccessibleText::get_textBeforeOffset):
(AccessibleText::get_textAfterOffset):
(AccessibleText::get_textAtOffset):
(AccessibleText::get_attributes):

  • DOMCSSClasses.cpp:

(DOMCSSStyleDeclaration::getPropertyValue):

  • DOMCoreClasses.cpp:

(DOMNode::nodeValue):
(DOMElement::getAttribute):
(DOMElement::font):

  • DOMHTMLClasses.cpp:

(DOMHTMLElement::innerText):
(DOMHTMLFormElement::action):
(DOMHTMLFormElement::method):
(DOMHTMLInputElement::value):
(DOMHTMLTextAreaElement::value):

  • MarshallingHelpers.cpp:

(MarshallingHelpers::PathStringToFileCFURLRef):

  • WebDataSource.cpp:

(WebDataSource::unreachableURL):

  • WebDownload.cpp:

(WebDownload::bundlePathForTargetPath):

  • WebDownloadCFNet.cpp:

(WebDownload::didFinish):

  • WebElementPropertyBag.cpp:

(convertStringToVariant):

  • WebFrame.cpp:

(WebFrame::searchForLabelsBeforeElement):
(WebFrame::matchLabelsAgainstElement):

  • WebHistory.cpp:

(WebHistory::addVisitedLinksToPageGroup):

  • WebKitGraphics.cpp:

(CenterTruncateStringToWidth):
(RightTruncateStringToWidth):

  • WebView.cpp:

(WebView::applicationNameForUserAgent):
(WebView::customUserAgent):
(WebView::groupName):
(WebView::selectedText):
(WebView::onIMERequestReconvertString):
Use deprecatedCharacters.

4:22 PM Changeset in webkit [163274] by mark.lam@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Repatch code is passing the wrong args to lookupExceptionHandler.
<https://webkit.org/b/128085>

Reviewed by Oliver Hunt.

lookupExceptionHandler() is expecting 2 args: VM*, ExecState*.
The repatch code was only passing an ExecState*. A crash ensues.
This is now fixed.

  • jit/JIT.cpp:

(JSC::JIT::privateCompileExceptionHandlers):

  • jit/Repatch.cpp:

(JSC::generateProtoChainAccessStub):

3:46 PM Changeset in webkit [163273] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

WK2: Selection is non editable content is not cleared when navigating to a different page.
https://bugs.webkit.org/show_bug.cgi?id=128084
<rdar://problem/15966166>

Reviewed by Dan Bernstein.

When resigning first responder, we need to cleanup the selection.

  • UIProcess/API/ios/WKInteractionView.mm:

(-[WKInteractionView resignFirstResponder]):

1:59 PM Changeset in webkit [163272] by Alan Bujtas
  • 4 edits in trunk/Source/WebCore

Subpixel rendering: Enable subpixel positioning/sizing/hairline border painting.
https://bugs.webkit.org/show_bug.cgi?id=128009

Reviewed by Simon Fraser.

Snap and clip to device pixels when painting boxes. Enable hairline painting
for solid border.

No existing context to test this functionality yet.

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintFillLayerExtended):
(WebCore::RenderBoxModelObject::drawBoxSideFromPath):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::drawLineForBoxSide):

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::getRoundedBorderFor):
(WebCore::RenderStyle::getRoundedInnerBorderFor):

1:56 PM Changeset in webkit [163271] by weinig@apple.com
  • 5 edits in trunk/Source/WebCore

Add some missing override keywords
https://bugs.webkit.org/show_bug.cgi?id=128082

Reviewed by Antti Koivisto.

  • loader/DocumentThreadableLoader.h:
  • loader/LinkLoader.h:
  • loader/TextTrackLoader.h:
  • xml/parser/XMLDocumentParser.h:
1:07 PM Changeset in webkit [163270] by Alan Bujtas
  • 2 edits in trunk/LayoutTests

Unreviewed Mac gardering after r163265.

  • platform/mac/TestExpectations:
12:37 PM Changeset in webkit [163269] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

WK2: Cannot focus a second field in a page after the first has been focused.
https://bugs.webkit.org/show_bug.cgi?id=128055
<rdar://problem/15943652>

Reviewed by Simon Fraser.

When handling singleTap, we always need to send
a click to WebKit when we are already interacting with text.
Also, when we stop assisting the node, we should not call
resign responder, since that will trigger another unwanted blur.

  • UIProcess/API/ios/WKInteractionView.mm:

(-[WKInteractionView _singleTapRecognized:]):
(-[WKInteractionView _stopAssistingNode]):

12:31 PM Changeset in webkit [163268] by dbates@webkit.org
  • 2 edits in trunk/Tools

WebKit Bot Watcher's Dashboard: Access restricted queue should only prompt for HTTP credentials once per page load
https://bugs.webkit.org/show_bug.cgi?id=127849

I inadvertently used the equality operator instead of the identity operator when comparing the
value of the error HTTP status code with the numeric literal 401.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js:

(BuildbotQueue.prototype.update):

12:29 PM Changeset in webkit [163267] by dbates@webkit.org
  • 2 edits in trunk/Tools

Attempt to fix production dashboard after <http://trac.webkit.org/changeset/163222>

Actually pass option dictionary to JSON.load(); JSON.load() takes four arguments with the
last-most argument being the option dictionary.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:

(BuildbotIteration.prototype.update):

11:55 AM Changeset in webkit [163266] by beidson@apple.com
  • 17 edits in trunk/Source

IDB: Support IDBFactory.deleteDatabase()
https://bugs.webkit.org/show_bug.cgi?id=128060

Reviewed by Filip Pizlo and Maciej Stachowiak (filesystem parts also Tim Hatcher and Simon Fraser)

Source/WebCore:

  • Modules/indexeddb/IDBDatabaseBackend.cpp:

(WebCore::IDBDatabaseBackend::deleteDatabaseAsync):

  • Modules/indexeddb/IDBFactory.cpp:

(WebCore::IDBFactory::deleteDatabase):

Change factory-level deleteDatabase to take opening and main frame origins:

  • Modules/indexeddb/IDBFactoryBackendInterface.h:
  • Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:

(WebCore::IDBFactoryBackendLevelDB::deleteDatabase):

  • Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:
  • Modules/indexeddb/IDBServerConnection.h:
  • Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.h:
  • WebCore.exp.in:

Source/WebKit2:

  • DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:

(WebKit::DatabaseProcessIDBConnection::deleteDatabase):

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:

(WebKit::UniqueIDBDatabase::calculateAbsoluteDatabaseFilename): Central place to

calculate the database filename.

(WebKit::UniqueIDBDatabase::unregisterConnection):
(WebKit::UniqueIDBDatabase::shutdown): Pass shutdown type along.
(WebKit::UniqueIDBDatabase::shutdownBackingStore): If this is a delete shutdown, delete the DB.
(WebKit::UniqueIDBDatabase::didShutdownBackingStore):
(WebKit::UniqueIDBDatabase::deleteDatabase):
(WebKit::UniqueIDBDatabase::postMainThreadTask): All some tasks to bypass the no-more-request restriction.
(WebKit::UniqueIDBDatabase::postDatabaseTask): Ditto.

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:
  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::~UniqueIDBDatabaseBackingStoreSQLite):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::getOrEstablishMetadata): Use

calculateAbsoluteDatabaseFilename from UniqueIDBDatabase.

  • WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:

(WebKit::WebIDBFactoryBackend::open): Update logging channel.
(WebKit::WebIDBFactoryBackend::deleteDatabase): Implement.

  • WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:
  • Shared/WebCrossThreadCopier.h:
10:38 AM Changeset in webkit [163265] by Alan Bujtas
  • 6 edits in trunk/Source/WebCore

Subpixel rendering: Introduce device pixel snapping helper functions.
https://bugs.webkit.org/show_bug.cgi?id=128049

Reviewed by Simon Fraser.

These functions help device pixel snapping during painting. They follow the logic of
the corresponding pixelSnappedInt* functions.

No change in functionality.

  • platform/LayoutUnit.h:

(WebCore::roundToDevicePixel):
(WebCore::floorToDevicePixel):
(WebCore::snapSizeToPixel):
(WebCore::snapSizeToDevicePixel):

  • platform/graphics/GraphicsContext.cpp:

(WebCore::GraphicsContext::GraphicsContext):

  • platform/graphics/GraphicsContext.h:

(WebCore::GraphicsContext::pixelSnappingFactor):

  • platform/graphics/LayoutRect.h:

(WebCore::pixelSnappedForPainting):

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::platformInit):

9:44 AM Changeset in webkit [163264] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

Floor thickness and length after switching from int to float.
https://bugs.webkit.org/show_bug.cgi?id=128071

Reviewed by Antti Koivisto.

This is a temporary solution to fix the assertion on empty line drawing until after
device pixel snapping is added.

Covered by existing tests.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::drawLineForBoxSide):

9:27 AM Changeset in webkit [163263] by Antti Koivisto
  • 12 edits
    2 deletes in trunk/Source/WebCore

Remove StyleScopeResolver
https://bugs.webkit.org/show_bug.cgi?id=128069

Reviewed by Anders Carlsson.

This is dead code.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.xcodeproj/project.pbxproj:
  • css/DocumentRuleSets.cpp:

(WebCore::DocumentRuleSets::appendAuthorStyleSheets):
(WebCore::DocumentRuleSets::collectFeatures):

  • css/DocumentRuleSets.h:
  • css/ElementRuleCollector.h:

(WebCore::ElementRuleCollector::ElementRuleCollector):

  • css/RuleSet.cpp:

(WebCore::RuleSet::addChildRules):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::pushParentElement):
(WebCore::StyleResolver::popParentElement):
(WebCore::StyleResolver::locateSharedStyle):
(WebCore::StyleResolver::styleForElement):

  • css/StyleResolver.h:

(WebCore::StyleResolver::document):

  • css/StyleScopeResolver.cpp: Removed.
  • css/StyleScopeResolver.h: Removed.
  • style/StyleResolveTree.cpp:

(WebCore::Style::attachShadowRoot):
(WebCore::Style::resolveShadowTree):

8:15 AM Changeset in webkit [163262] by Alan Bujtas
  • 12 edits in trunk

Subpixel rendering: Make BorderEdge/RoundedRect::Radii LayoutUnit aware.
https://bugs.webkit.org/show_bug.cgi?id=128036

Reviewed by Darin Adler.

Source/WebCore:

Covered by existing tests.

  • platform/LayoutUnit.h:

(WebCore::LayoutUnit::operator++):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::BorderEdge::BorderEdge):
(WebCore::BorderEdge::usedWidth):
(WebCore::BorderEdge::getDoubleBorderStripeWidths):
(WebCore::RenderBoxModelObject::paintOneBorderSide):
(WebCore::RenderBoxModelObject::paintBorder):
(WebCore::RenderBoxModelObject::drawBoxSideFromPath):
(WebCore::calculateSideRectIncludingInner):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::drawLineForBoxSide):

  • rendering/RenderObject.h:
  • rendering/style/BorderData.h:

(WebCore::BorderData::borderLeftWidth):
(WebCore::BorderData::borderRightWidth):
(WebCore::BorderData::borderTopWidth):
(WebCore::BorderData::borderBottomWidth):

  • rendering/style/RenderStyle.cpp:

(WebCore::calcRadiiFor):
(WebCore::calcConstraintScaleFor):
(WebCore::RenderStyle::getRoundedInnerBorderFor):

  • rendering/style/RenderStyle.h:

LayoutTests:

Bug 128061: Subpixel rendering: borders are reporting float values.

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/win/TestExpectations:
12:02 AM Changeset in webkit [163261] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

REGRESSION(r163234) Debug build is broken
https://bugs.webkit.org/show_bug.cgi?id=128059

Unreviewed. Debug build is broken with INDEXED_DATABASE.

Patch by Hunseop Jeong <Hunseop Jeong> on 2014-02-01

  • Modules/indexeddb/IDBKeyData.cpp:

(WebCore::IDBKeyData::loggingString): Added the default: case.

Feb 1, 2014:

11:45 PM Changeset in webkit [163260] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

Subpixel rendering: LayoutUnit operator++ is broken.
https://bugs.webkit.org/show_bug.cgi?id=128056

Reviewed by Darin Adler.

Add pre-increment operator++.

  • platform/LayoutUnit.h:

(WebCore::LayoutUnit::operator++):

10:38 PM Changeset in webkit [163259] by fpizlo@apple.com
  • 6 edits in trunk

JSC profiler's stub info profiling support should work again
https://bugs.webkit.org/show_bug.cgi?id=128057

Reviewed by Mark Lam.

Source/JavaScriptCore:

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::printGetByIdCacheStatus): We want to know if the cache was ever reset by GC, since the DFG uses this information.
(JSC::CodeBlock::printLocationAndOp): This shouldn't have been inline.
(JSC::CodeBlock::printLocationOpAndRegisterOperand): Ditto.
(JSC::CodeBlock::dumpBytecode): Dump the profiling field, and make sure that the caller can pass a StubInfoMap, which is necessary for dumping StructureStubInfo profiling.

  • bytecode/CodeBlock.h: Out-of-line some methods and add the StubInfoMap parameter.
  • profiler/ProfilerBytecodeSequence.cpp:

(JSC::Profiler::BytecodeSequence::BytecodeSequence): Create a StubInfoMap before dumping bytecodes.

Tools:

  • Scripts/display-profiler-output: Just make sure that there's always a space between the origin stack dump and the top bytecode index.
10:38 PM Changeset in webkit [163258] by Darin Adler
  • 5 edits in trunk/Source

More characters -> deprecatedCharacters (based on more EWS complaints)
https://bugs.webkit.org/show_bug.cgi?id=128063

Reviewed by Anders Carlsson.

Source/WebCore:

  • editing/SmartReplace.cpp:

(WebCore::addAllCodePoints):
(WebCore::getSmartSet):

  • platform/win/WebCoreTextRenderer.cpp:

(WebCore::doDrawTextAtPoint):
Use deprecatedCharacters.

Source/WebKit2:

  • Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:

(WebKit::truncateToSingleLine): Use deprecatedCharacters.

8:59 PM Changeset in webkit [163257] by Darin Adler
  • 9 edits in trunk/Source/WebCore

Use deprecatedCharacters in a few more places (non-Mac-build sites found by EWS)
https://bugs.webkit.org/show_bug.cgi?id=128042

Reviewed by Sam Weinig.

  • Modules/indexeddb/leveldb/IDBLevelDBCoding.cpp:

(WebCore::IDBLevelDBCoding::encodeString):

  • platform/graphics/win/FontCacheWin.cpp:

(WebCore::FontCache::systemFallbackForCharacters):
(WebCore::createGDIFont):
(WebCore::FontCache::getTraitsInFamily):

  • platform/network/DataURL.cpp:

(WebCore::handleDataURL):

  • platform/win/BString.cpp:

(WebCore::BString::BString):

  • platform/win/ClipboardUtilitiesWin.cpp:

(WebCore::createGlobalData):

  • platform/win/FileSystemWin.cpp:

(WebCore::pathByAppendingComponent):
(WebCore::fileSystemRepresentation):

  • platform/win/PasteboardWin.cpp:

(WebCore::filesystemPathFromUrlOrTitle):
(WebCore::Pasteboard::writeURLToDataObject):
(WebCore::createGlobalImageFileDescriptor):

  • platform/win/PopupMenuWin.cpp:

(WebCore::PopupMenuWin::calculatePositionAndSize):
Call deprecatedCharacters instead of characters.

6:45 PM Changeset in webkit [163256] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

Speculative OSX build fix.

Excluding WKActionSheet.mm and WKActionSheetAssistant.mm.

  • Configurations/WebKit2.xcconfig:
6:37 PM Changeset in webkit [163255] by enrica@apple.com
  • 18 edits
    4 adds in trunk/Source

Add support for ActionSheets in WK2 for iOS.
https://bugs.webkit.org/show_bug.cgi?id=127586
<rdar://problem/15283667>

Reviewed by Benjamin Poulain.

Source/WebCore:

Updates the localizable strings for action sheets.

  • English.lproj/Localizable.strings:

Source/WebKit2:

This patch adds the default support for Action Sheets
in WK2 for iOS. WKActionSheet is the implementation of the
sheet itself that inherits from UIActionSheet and handles
the repositioning of the sheet after rotation for iPad.
WKActionSheetAssistant is the controller class that implements
the delegate methods, controls the lifetime of the action sheet
object and performs the actions.
We have 3 different types of sheets:

  • link sheet, displayed when the target element is a link
  • image sheet, when the target element is an image
  • data detector sheet when the target is an element recognized by the data detectors library.

Both link and image sheet have a set of default buttons, whereas
datadetector sheet in only populated by custom actions provided
by data detectors.
The link sheet provides the following default actions:

  • open, navigates to the URL
  • copy, copies the URL to the pasteboard
  • add to reading list

The image sheet provides the following actions depending on whether
the image is contained inside an anchor element or not.
If the image is NOT inside a link the following actions are provided:

  • copy, copies the image to the pasteboard
  • save image, saves the image in the photo library

Instead, if the image is inside an link:

  • open, navigates to the URL spcified by the link
  • copy, copies the link URL to the pasteboard
    • save image, saves the image in the photo library
    • add to reading list, adds the link URL to reading list.
  • Shared/InteractionInformationAtPosition.cpp:

(WebKit::InteractionInformationAtPosition::encode):
(WebKit::InteractionInformationAtPosition::decode):

  • Shared/InteractionInformationAtPosition.h:
  • Shared/ios/WKGestureTypes.h:
  • UIProcess/API/ios/PageClientImplIOS.h:
  • UIProcess/API/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::saveImageToLibrary):

  • UIProcess/API/ios/WKActionSheet.h: Added.
  • UIProcess/API/ios/WKActionSheet.mm: Added.

(-[WKActionSheet initWithView:]):
(-[WKActionSheet dealloc]):
(-[WKActionSheet presentSheet]):
(-[WKActionSheet presentSheetFromRect:]):
(-[WKActionSheet doneWithSheet]):
(-[WKActionSheet willRotate]):
(-[WKActionSheet updateSheetPosition]):
(-[WKActionSheet didRotate]):
(-[WKElementActionInfo initWithInfo:location:title:rect:]):
(-[WKElementActionInfo dealloc]):
(-[WKElementAction initWithTitle:actionHandler:type:]):
(-[WKElementAction dealloc]):
(+[WKElementAction customElementActionWithTitle:actionHandler:]):
(copyElement):
(saveImage):
(addToReadingList):
(+[WKElementAction standardElementActionWithType:customTitle:]):
(+[WKElementAction standardElementActionWithType:]):
(-[WKElementAction runActionWithElementInfo:view:]):

  • UIProcess/API/ios/WKActionSheetAssistant.h: Added.
  • UIProcess/API/ios/WKActionSheetAssistant.mm: Added.

(-[WKActionSheetAssistant initWithView:]):
(-[WKActionSheetAssistant dealloc]):
(-[WKActionSheetAssistant setPage:WebKit::]):
(-[WKActionSheetAssistant superviewForSheet]):
(-[WKActionSheetAssistant _presentationRectForSheetGivenPoint:inHostView:]):
(-[WKActionSheetAssistant hostViewForSheet]):
(-[WKActionSheetAssistant initialPresentationRectInHostViewForSheet]):
(-[WKActionSheetAssistant presentationRectInHostViewForSheet]):
(-[WKActionSheetAssistant presentSheet]):
(-[WKActionSheetAssistant actionSheet:clickedButtonAtIndex:]):
(-[WKActionSheetAssistant updateSheetPosition]):
(-[WKActionSheetAssistant _createSheetWithElementActions:showLinkTitle:]):
(-[WKActionSheetAssistant showImageSheet]):
(-[WKActionSheetAssistant showLinkSheet]):
(-[WKActionSheetAssistant showDataDetectorsSheet]):
(-[WKActionSheetAssistant cleanupSheet]):

  • UIProcess/API/ios/WKInteractionView.h:
  • UIProcess/API/ios/WKInteractionView.mm:

(-[WKInteractionView initWithFrame:]):
(-[WKInteractionView dealloc]):
(-[WKInteractionView setPage:WebKit::]):
(-[WKInteractionView _showImageSheet]):
(-[WKInteractionView _showLinkSheet]):
(-[WKInteractionView _showDataDetectorsSheet]):
(-[WKInteractionView _actionForLongPress]):
(-[WKInteractionView _updatePositionInformation]):
(-[WKInteractionView _longPressRecognized:]):
(-[WKInteractionView _positionInformationDidChange:]):
(-[WKInteractionView _performAction:]):
(-[WKInteractionView _updateAccessory]):

  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::startInteractionWithElementAtPosition):
(WebKit::WebPageProxy::stopInteraction):
(WebKit::WebPageProxy::performActionOnElement):
(WebKit::WebPageProxy::saveImageToLibrary):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::containingLinkElement):
(WebKit::WebPage::getPositionInformation):
(WebKit::WebPage::startInteractionWithElementAtPosition):
(WebKit::WebPage::stopInteraction):
(WebKit::WebPage::performActionOnElement):

6:25 PM Changeset in webkit [163254] by fpizlo@apple.com
  • 17 edits
    2 adds in trunk

JSC profiler should show reasons for jettison
https://bugs.webkit.org/show_bug.cgi?id=128047

Source/JavaScriptCore:

Reviewed by Geoffrey Garen.

Henceforth if you want to jettison a CodeBlock, you gotta tell the Profiler why you did
it. This makes figuring out convergence issues - where some code seems to take a long
time to get into the top tier compiler - a lot easier.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::finalizeUnconditionally):
(JSC::CodeBlock::jettison):
(JSC::CodeBlock::addBreakpoint):
(JSC::CodeBlock::setSteppingMode):

  • bytecode/CodeBlock.h:
  • bytecode/CodeBlockJettisoningWatchpoint.cpp:

(JSC::CodeBlockJettisoningWatchpoint::fireInternal):

  • bytecode/ProfiledCodeBlockJettisoningWatchpoint.cpp:

(JSC::ProfiledCodeBlockJettisoningWatchpoint::fireInternal):

  • dfg/DFGOperations.cpp:
  • jit/JITOperations.cpp:
  • profiler/ProfilerCompilation.cpp:

(JSC::Profiler::Compilation::Compilation):
(JSC::Profiler::Compilation::toJS):

  • profiler/ProfilerCompilation.h:

(JSC::Profiler::Compilation::setJettisonReason):

  • profiler/ProfilerJettisonReason.cpp: Added.

(WTF::printInternal):

  • profiler/ProfilerJettisonReason.h: Added.
  • runtime/CommonIdentifiers.h:
  • runtime/VM.cpp:

(JSC::SetEnabledProfilerFunctor::operator()):

Tools:

Reviewed by Geoffrey Garen.

Gave the tool a "log" command, that tells you all of the interesting things
that happened to a piece of bytecode, from the standpoint of optimization.
It's a great summary view for seeing how our tier-up machinery works.

This uses a lot of information that was already available, plus the newly
added jettisonReason field.

  • Scripts/display-profiler-output:
6:18 PM Changeset in webkit [163253] by mjs@apple.com
  • 7 edits
    1 add in trunk/Source/WebCore

Factor URL decomposition methods (from URLUtils interface) into a base template
https://bugs.webkit.org/show_bug.cgi?id=128052

Reviewed by Sam Weinig.

Refactoring only; no new tests.

  • html/DOMURL.cpp:
  • html/DOMURL.h:

(WebCore::DOMURL::href): Moved to header and made inline.

  • html/URLUtils.h: Added.

(WebCore::URLUtils::href): Downcast and call the derived class.
(WebCore::URLUtils::setHref): Downcast and call the derived class.
Functions below factored out from DOMURL.cpp.
(WebCore::URLUtils<T>::toString):
(WebCore::URLUtils<T>::origin):
(WebCore::URLUtils<T>::protocol):
(WebCore::URLUtils<T>::setProtocol):
(WebCore::URLUtils<T>::username):
(WebCore::URLUtils<T>::setUsername):
(WebCore::URLUtils<T>::password):
(WebCore::URLUtils<T>::setPassword):
(WebCore::URLUtils<T>::host):
(WebCore::parsePortFromStringPosition):
(WebCore::URLUtils<T>::setHost):
(WebCore::URLUtils<T>::hostname):
(WebCore::URLUtils<T>::setHostname):
(WebCore::URLUtils<T>::port):
(WebCore::URLUtils<T>::setPort):
(WebCore::URLUtils<T>::pathname):
(WebCore::URLUtils<T>::setPathname):
(WebCore::URLUtils<T>::search):
(WebCore::URLUtils<T>::setSearch):
(WebCore::URLUtils<T>::hash):
(WebCore::URLUtils<T>::setHash):

Add mention of new header.

  • GNUmakefile.list.am:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
5:58 PM Changeset in webkit [163252] by beidson@apple.com
  • 3 edits in trunk/Source/WebKit2

IDB: Implement IDBCursor.delete()
<rdar://problem/15944203> and https://bugs.webkit.org/show_bug.cgi?id=127882

Reviewed by Sam Weinig.

IDBCursor.delete() actually relies on deleteRange(), which was implemented earlier.
So the only thing keeping it from working was a "Cursors iterate past their end" bug,
causing the delete transaction to be aborted.

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp:

(WebKit::SQLiteIDBCursor::advanceOnce): When the cursor does the final iteration,

clear the previous values to indicate completion.

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.cpp:

(WebKit::SQLiteIDBTransaction::clearCursors): Noticed this opportunistic cleanup to

iterate over unique_ptr<>s with an auto& instead of an auto.

4:16 PM Changeset in webkit [163251] by benjamin@webkit.org
  • 3 edits in trunk/Source/WebCore

Improve the JavaScript bindings of DatasetDOMStringMap
https://bugs.webkit.org/show_bug.cgi?id=127971

Unriewed.

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-02-01

  • dom/DatasetDOMStringMap.cpp:
  • dom/DatasetDOMStringMap.h:

Follow up for r163239. Darin pointed out the #includes are wrong.

4:10 PM Changeset in webkit [163250] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

Text interaction assistant is not deleted when dismissing the keyboard on iPad.
https://bugs.webkit.org/show_bug.cgi?id=128034
<rdar://problem/15915695>

Reviewed by Dan Bernstein.

In iPhone mode, tapping on 'Done' in the accessory view
calls the delegate accessoryDone where we correctly blur
the assisted node and tear down the text interaction assistant.
The code path for the keyboard in iPad mode is different,
all we get is resignFirstResponder.
The fix is just to move the blurring in resignFirstResponder
and it works for both iPhone and iPad.

  • UIProcess/API/ios/WKInteractionView.mm:

(-[WKInteractionView resignFirstResponder]):
(-[WKInteractionView accessoryDone]):

1:00 PM Changeset in webkit [163249] by beidson@apple.com
  • 13 edits in trunk/Source

IDB: Implement IDBObjectStore.delete()
https://bugs.webkit.org/show_bug.cgi?id=127880

Reviewed by Sam Weinig.

Source/WebCore:

  • Modules/indexeddb/IDBKeyData.cpp:

(WebCore::IDBKeyData::compare): Make this const.

  • Modules/indexeddb/IDBKeyData.h:
  • Modules/indexeddb/IDBKeyRangeData.cpp:

(WebCore::IDBKeyRangeData::isExactlyOneKey): Returns whether or not

the key range is known to represent precisely one key.

  • Modules/indexeddb/IDBKeyRangeData.h:
  • WebCore.exp.in:

Source/WebKit2:

Implementing IDBObjectStore.delete() involves filling in the already-stubbed deleteRange() method.

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:

(WebKit::UniqueIDBDatabase::deleteRangeInBackingStore): Call through to the backing store.

  • DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::deleteRange): Call deleteRecord on each key represented

by the passed-in keyRange. This involves collecting each key using a cursor.

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::deleteRecord): Delete an individual record from the

object store and all associated indexes.

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:

Teach the SQLiteIDBCursor to remember if it ended in an error condition:

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp:

(WebKit::SQLiteIDBCursor::SQLiteIDBCursor):
(WebKit::SQLiteIDBCursor::advanceOnce):

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.h:

(WebKit::SQLiteIDBCursor::didError):

12:37 PM Changeset in webkit [163248] by andersca@apple.com
  • 3 edits in trunk/Source/WebCore

SVGTextLayoutAttributesBuilder shouldn't use RenderText::deprecatedCharacters()
https://bugs.webkit.org/show_bug.cgi?id=128048

Reviewed by Sam Weinig.

Change UChar*& lastCharacter to bool& lastCharacterWasSpace since that's what the parameter was used for.

  • rendering/svg/SVGTextLayoutAttributesBuilder.cpp:

(WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForTextRenderer):
Initialize lastCharacterWasSpace to true to match the previous behavior.

(WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForForSubtree):
Ditto.

(WebCore::processRenderSVGInlineText):
Take a reference instead of a pointer, get the character using RenderText::operator[] and compute lastCharacterWasSpace.

(WebCore::SVGTextLayoutAttributesBuilder::collectTextPositioningElements):
This now takes a bool reference instead.

  • rendering/svg/SVGTextLayoutAttributesBuilder.h:
12:29 PM Changeset in webkit [163247] by mark.lam@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Saying "jitType() == JITCode::DFGJIT" is almost never correct.
<http://webkit.org/b/128045>

Reviewed by Filip Pizlo.

JITCode::isOptimizingJIT(jitType()) is the right way to say it.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::addBreakpoint):
(JSC::CodeBlock::setSteppingMode):

  • runtime/VM.cpp:

(JSC::SetEnabledProfilerFunctor::operator()):

11:11 AM Changeset in webkit [163246] by beidson@apple.com
  • 5 edits in trunk/Source/WebKit2

IDB: Index reading
<rdar://problem/15899973> and https://bugs.webkit.org/show_bug.cgi?id=127868

Reviewed by Jer Noble.

  • DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:

(WebKit::UniqueIDBDatabase::getRecordFromBackingStore):

  • DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

(WebKit::UniqueIDBDatabaseBackingStoreSQLite::getIndexRecord): Using an index cursor, read a value.

  • DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:
11:04 AM Changeset in webkit [163245] by beidson@apple.com
  • 4 edits in trunk/Source

IDB: Index cursor complete advance() and iterate() support
<rdar://problem/15941916> and https://bugs.webkit.org/show_bug.cgi?id=127870

Reviewed by Dan Bernstein.

Source/WebCore:

  • Modules/indexeddb/IDBRequest.cpp:

(WebCore::IDBRequest::onSuccess): Always use the value buffer for the script object.

Source/WebKit2:

  • DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp:

(WebKit::SQLiteIDBCursor::advanceOnce): Look up the found record value from the

object store records based on the key we found from the index.

10:14 AM Changeset in webkit [163244] by ap@apple.com
  • 23 edits in trunk

Update WebCrypto JWK mapping to use key_ops
https://bugs.webkit.org/show_bug.cgi?id=127609

Reviewed by Sam Weinig.

Source/WebCore:

Updated JWK support ot match current editor draft.

  • bindings/js/JSCryptoKeySerializationJWK.cpp:

(WebCore::getJSArrayFromJSON): Fixed this previously untested function to actually work.
(WebCore::tryJWKKeyOpsValue):
(WebCore::JSCryptoKeySerializationJWK::reconcileUsages):
(WebCore::JSCryptoKeySerializationJWK::reconcileExtractable): Removed an old comment,
these things are now specced.
(WebCore::addToJSON): Made static functions file static, there is no reason for
them to be class members.
(WebCore::buildJSONForOctetSequence):
(WebCore::buildJSONForRSAComponents):
(WebCore::addBoolToJSON):
(WebCore::addJWKAlgorithmToJSON):
(WebCore::addUsagesToJSON):
(WebCore::JSCryptoKeySerializationJWK::serialize):

  • bindings/js/JSCryptoKeySerializationJWK.h:
  • crypto/mac/CryptoAlgorithmAES_KWMac.cpp:

(WebCore::CryptoAlgorithmAES_KW::platformEncrypt):
(WebCore::CryptoAlgorithmAES_KW::platformDecrypt):
Check for length, so that we don't fail silently.

LayoutTests:

  • crypto/subtle/aes-kw-wrap-unwrap-aes-expected.txt:
  • crypto/subtle/aes-kw-wrap-unwrap-aes.html:

Removed a subtest for wrapping JWK. That doesn't really work per the spec, because
JWK is arbitatry length, and AES-KW requires 8*n bytes.

  • crypto/subtle/aes-export-key-expected.txt:
  • crypto/subtle/aes-export-key.html:
  • crypto/subtle/hmac-export-key-expected.txt:
  • crypto/subtle/hmac-export-key.html:
  • crypto/subtle/jwk-export-use-values-expected.txt:
  • crypto/subtle/jwk-export-use-values.html:
  • crypto/subtle/jwk-import-use-values-expected.txt:
  • crypto/subtle/jwk-import-use-values.html:
  • crypto/subtle/rsa-export-key-expected.txt:
  • crypto/subtle/rsa-export-key.html:
  • crypto/subtle/rsa-export-private-key-expected.txt:
  • crypto/subtle/rsa-export-private-key.html:
  • crypto/subtle/rsa-oaep-key-manipulation-expected.txt:
  • crypto/subtle/rsa-oaep-key-manipulation.html:
  • crypto/subtle/rsa-postMessage-expected.txt:
  • crypto/subtle/rsa-postMessage.html:

Updated for the fix.

9:31 AM Changeset in webkit [163243] by andersca@apple.com
  • 10 edits in trunk/Source/WebKit2

Add webView:didFailNavigation:withError: delegate method
https://bugs.webkit.org/show_bug.cgi?id=128022

Reviewed by Darin Adler.

  • UIProcess/API/APILoaderClient.h:

(API::LoaderClient::didFailLoadWithErrorForFrame):

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetPageLoaderClient):

  • UIProcess/API/Cocoa/WKNavigationDelegate.h:
  • UIProcess/Cocoa/NavigationState.h:
  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::setNavigationDelegate):
(WebKit::NavigationState::LoaderClient::didFailLoadWithErrorForFrame):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didFailLoadForFrame):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidFailLoad):

8:32 AM Changeset in webkit [163242] by ddkilzer@apple.com
  • 14 edits in trunk/Source/WebCore

Add security-checked casts for all WebCore::CachedResource subclasses
<http://webkit.org/b/127988>

Reviewed by Darin Adler.

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::cachedResourceContent):

  • inspector/InspectorResourceAgent.cpp:

(WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):

  • Switch from static_cast<>() to security-checked cast.
  • loader/cache/CachedCSSStyleSheet.h:

(WebCore::toCachedCSSStyleSheet): Add.

  • loader/cache/CachedFont.h:

(WebCore::toCachedFont): Add.

  • loader/cache/CachedImage.h: Make CachedImageManual final.
  • loader/cache/CachedRawResource.cpp:

(WebCore::CachedRawResource::CachedRawResource): Add assert that
only MainResource or RawResource types are used to construct a
CachedRawResource. This may be a security issue depending on
what code exists that uses the type() value to cast to a
CachedResource subclass.
(WebCore::CachedRawResource::switchClientsToRevalidatedResource):
Switch from static_cast<>() to toCachedRawResource().

  • loader/cache/CachedRawResource.h:

(WebCore::toCachedRawResource): Add.

  • loader/cache/CachedResource.h:

(WebCore::CachedResource::isMainOrRawResource): Add. A
CachedRawResource could be either a MainResource or a
RawResource. Currently only used in assertions.

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::requestFont):
(WebCore::CachedResourceLoader::requestTextTrack):
(WebCore::CachedResourceLoader::requestCSSStyleSheet):
(WebCore::CachedResourceLoader::requestUserCSSStyleSheet):
(WebCore::CachedResourceLoader::requestScript):
(WebCore::CachedResourceLoader::requestXSLStyleSheet):
(WebCore::CachedResourceLoader::requestSVGDocument):
(WebCore::CachedResourceLoader::requestRawResource):
(WebCore::CachedResourceLoader::requestMainResource):

  • Switch from static_cast<>() to security-checked cast.
  • loader/cache/CachedSVGDocument.h:

(WebCore::toCachedSVGDocument): Add.

  • loader/cache/CachedScript.h:

(WebCore::toCachedScript): Add.

  • loader/cache/CachedTextTrack.h:

(WebCore::toCachedTextTrack): Add.

  • loader/cache/CachedXSLStyleSheet.h:

(WebCore::toCachedXSLStyleSheet): Add.

7:30 AM Changeset in webkit [163241] by msaboff@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

REGRESSION (r163027?): CrashTracer: [USER] com.apple.WebKit.WebContent.Development at com.apple.JavaScriptCore: JSC::ArrayProfile::computeUpdatedPrediction + 4
https://bugs.webkit.org/show_bug.cgi?id=128037

Reviewed by Mark Lam.

op_call_varargs ops now needs an ArrayProfile since DFG inlines these since
change set r162739.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::CodeBlock):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitCallVarargs):

7:15 AM Changeset in webkit [163240] by calvaris@igalia.com
  • 2 edits in trunk/Source/WebCore

Unreviewed. Fixed GTK+ CMake build after r162922.

  • PlatformGTK.cmake: Removed SoupURIUtils.cpp from the

compilation.

12:10 AM Changeset in webkit [163239] by benjamin@webkit.org
  • 6 edits
    2 adds in trunk

Improve the JavaScript bindings of DatasetDOMStringMap
https://bugs.webkit.org/show_bug.cgi?id=127971

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-02-01
Reviewed by Sam Weinig.

Source/WebCore:

Instead of querying contains() followed by item(), just get the item
at once in the custom binding.

Test: fast/dom/dataset-name-getter-properties.html

  • bindings/js/JSDOMStringMapCustom.cpp:

(WebCore::JSDOMStringMap::getOwnPropertySlotDelegate):

  • dom/DOMStringMap.idl:
  • dom/DatasetDOMStringMap.cpp:

(WebCore::DatasetDOMStringMap::item):

  • dom/DatasetDOMStringMap.h:

LayoutTests:

  • fast/dom/dataset-name-getter-properties-expected.txt: Added.
  • fast/dom/dataset-name-getter-properties.html: Added.
12:05 AM Changeset in webkit [163238] by benjamin@webkit.org
  • 9 edits in trunk

Remove LEGACY_VIEWPORT_ADAPTION
https://bugs.webkit.org/show_bug.cgi?id=128028

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-31
Reviewed by Anders Carlsson.

.:

  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/WebCore:

The code is incorrect and was only supported by Nix.

  • dom/Document.cpp:

(WebCore::Document::childrenChanged):

  • dom/ViewportArguments.h:
  • html/HTMLMetaElement.cpp:

(WebCore::HTMLMetaElement::process):

Source/WTF:

  • wtf/FeatureDefines.h:
Note: See TracTimeline for information about the timeline view.