⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



Jan 11, 2015:

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

Enable Vector bounds checking for ElementDescendantIterator.
<https://webkit.org/b/140346>

Reviewed by Sam Weinig.

I had originally disabled Vector bounds checking for
ElementDescendantIterator's internal ancestor stack, but upon
re-running performance benchmarks, it appears to have little-to-no
measurable benefit.

This change adds back the bounds checking.

  • dom/ElementDescendantIterator.h:
6:47 PM Changeset in webkit [178252] by ryuan.choi@navercorp.com
  • 3 edits in trunk/Source/WebKit2

[CoordinatedGraphics] Suspend or resume when visibility is changed
https://bugs.webkit.org/show_bug.cgi?id=140285

Reviewed by Gyuyoung Kim.

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp: Copied the logic from TiledCoreAnimationDrawingArea.

(WebKit::CoordinatedDrawingArea::viewStateDidChange):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.h:
4:17 PM Changeset in webkit [178251] by Chris Dumez
  • 10 edits
    1 delete in trunk/Source/WebCore

Drop legacy SVGCSSStyleSelector.cpp
https://bugs.webkit.org/show_bug.cgi?id=140342

Reviewed by Antti Koivisto.

Drop legacy SVGCSSStyleSelector.cpp by porting the remaining SVG CSS
properties to the generated StyleBuilder. This patch also removes
support for the "LegacyStyleBuilder" option in CSSPropertyNames.in
as all properties have now been ported over.

  • CMakeLists.txt:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:

Drop SVGCSSStyleSelector.cpp file as it was removed.

  • css/CSSPropertyNames.in:
  • css/SVGCSSStyleSelector.cpp: Removed.
  • css/StyleBuilder.h:

StyleBuilder::applyProperty() no longer need to return a boolean as
it now handles ALL CSS properties.

  • css/StyleBuilderCustom.h:

(WebCore::StyleBuilderCustom::applyValueBaselineShift):
(WebCore::StyleBuilderCustom::applyInitialFill):
(WebCore::StyleBuilderCustom::applyInheritFill):
(WebCore::StyleBuilderCustom::applyValueFill):
(WebCore::StyleBuilderCustom::applyInitialStroke):
(WebCore::StyleBuilderCustom::applyInheritStroke):
(WebCore::StyleBuilderCustom::applyValueStroke):
(WebCore::StyleBuilderCustom::applyInitialWebkitSvgShadow):
(WebCore::StyleBuilderCustom::applyInheritWebkitSvgShadow):
(WebCore::StyleBuilderCustom::applyValueWebkitSvgShadow):
Move 'fill', 'stroke' and '-webkit-svg-shadow' to the new
StyleBuilder.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::applyProperty):

  • css/makeprop.pl:
2:58 PM Changeset in webkit [178250] by Antti Koivisto
  • 23 edits in trunk/Source

Remove FontCachePurgePreventer
https://bugs.webkit.org/show_bug.cgi?id=139628

Reviewed by Anders Carlsson.

This stack type is bug prone and invasive. A missing FontCachePurgePreventer in a code that touches fonts is always
a hard-to-detect bug and there are many places that need it. Instead purge the font cache on top of the runloop.

The purge timer could in principle fire in a nested runloop. However we should never have unreferenced
SimpleFontData objects in the stack in such case (GlyphData objects don't currently ref the font) because those
only occur during layout and painting. Layout and painting can't trigger a nested runloops as there would be
bigger problems.

Purging may also be triggered synchronously by a memory notification. That case won't have any GlyphDatas in the stack either.

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::measureText):
(WebCore::CanvasRenderingContext2D::drawTextInternal):

  • page/FrameView.cpp:

(WebCore::FrameView::layout):
(WebCore::FrameView::paintContents):

  • platform/graphics/FontCache.cpp:

(WebCore::FontCache::FontCache):
(WebCore::FontCache::fontForFamily):
(WebCore::FontCache::purgeTimerFired):
(WebCore::FontCache::purgeInactiveFontData):

  • platform/graphics/FontCache.h:

(WebCore::FontCache::disablePurging): Deleted.
(WebCore::FontCache::enablePurging): Deleted.
(WebCore::FontCachePurgePreventer::FontCachePurgePreventer): Deleted.
(WebCore::FontCachePurgePreventer::~FontCachePurgePreventer): Deleted.

  • platform/graphics/FontFastPath.cpp:

(WebCore::Font::emphasisMarkAscent):
(WebCore::Font::emphasisMarkDescent):
(WebCore::Font::emphasisMarkHeight):
(WebCore::Font::drawEmphasisMarks):

  • platform/graphics/ca/win/PlatformCALayerWinInternal.cpp:

(PlatformCALayerWinInternal::displayCallback):

  • platform/mac/DragImageMac.mm:

(WebCore::widthWithFont):
(WebCore::drawAtPoint):
(WebCore::createDragImageForLink):

  • platform/win/DragImageWin.cpp:

(WebCore::createDragImageForLink):

  • platform/win/WebCoreTextRenderer.cpp:

(WebCore::doDrawTextAtPoint):
(WebCore::WebCoreTextFloatWidth):

  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::localSelectionRect):
(WebCore::InlineTextBox::offsetForPosition):
(WebCore::InlineTextBox::positionForOffset):

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::setImageSizeForAltText):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::paintIntoLayer):

  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::updateFromElement):
(WebCore::RenderListBox::paintItemForeground):

  • rendering/RenderMenuList.cpp:

(RenderMenuList::updateOptionsWidth):

  • rendering/RenderThemeIOS.mm:

(WebCore::adjustInputElementButtonStyle):

  • rendering/mathml/RenderMathMLOperator.cpp:

(WebCore::RenderMathMLOperator::updateStyle):

  • rendering/svg/RenderSVGText.cpp:

(WebCore::RenderSVGText::subtreeChildWasAdded):
(WebCore::RenderSVGText::subtreeStyleDidChange):
(WebCore::RenderSVGText::subtreeTextDidChange):
(WebCore::RenderSVGText::removeChild):

  • rendering/svg/SVGInlineTextBox.cpp:

(WebCore::SVGInlineTextBox::selectionRectForTextFragment):

2:55 PM Changeset in webkit [178249] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

[SVG -> OTF Converter] Implement ligatures
https://bugs.webkit.org/show_bug.cgi?id=137094

Reviewed by Dan Bernstein.

Use the "liga" OpenType feature to implement ligatures inside the GSUB table.

Tests: svg/W3C-SVG-1.1/fonts-glyph-04-t.svg

svg/W3C-SVG-1.1/text-text-06-t.svg
svg/text/kerning.svg
svg/text/multichar-glyph.svg

  • svg/SVGToOTFFontConversion.cpp:

(WebCore::SVGToOTFFontConverter::grow):
(WebCore::SVGToOTFFontConverter::appendCMAPTable): Use StringView::codePoints().
(WebCore::SVGToOTFFontConverter::firstGlyph): Returns the first element of the input
vector, along with some ASSERTs.
(WebCore::SVGToOTFFontConverter::appendLigatureSubtable):
(WebCore::SVGToOTFFontConverter::appendScriptSubtable): Used inside appendGSUBTable.
(WebCore::SVGToOTFFontConverter::appendGSUBTable): Updating for ligatures.
(WebCore::codepointToString): Wrapper around U16_APPEND().
(WebCore::SVGToOTFFontConverter::glyphsForCodepoint): Call codepointToString and look
in internal map.
(WebCore::SVGToOTFFontConverter::addCodepointRanges): Use glyphsForCodepoint().
(WebCore::SVGToOTFFontConverter::appendLigatureGlyphs): Ligatures are implemented as
mapping a sequence of glyphs to another glyph inside OpenType. However, SVG models
ligatures as mapping a sequence of codepoints to a glyph. This function makes dummy
glyphs for all the codepoints that we don't have glyphs for and appends them to
m_glyphs.
(WebCore::SVGToOTFFontConverter::compareCodepointsLexicographically):
(WebCore::SVGToOTFFontConverter::SVGToOTFFontConverter): Use appendEmptyGlyph() and
call appendLigatureGlyphs().

2:39 PM Changeset in webkit [178248] by mark.lam@apple.com
  • 4 edits in branches/safari-600.1.4.15-branch/Source/JavaScriptCore

Update WebKit branch to build with newer LLVM.
<https://webkit.org/b/140341>

Reviewed by Filip Pizlo.

  • Configurations/LLVMForJSC.xcconfig:
  • Add the ability to pick up LLVM_LIBS_iphoneos from AspenLLVM.xcconfig.
  • llvm/LLVMAPIFunctions.h:
  • Removed some erroneous and unused APIs.
  • llvm/library/LLVMExports.cpp:

(initializeAndGetJSCLLVMAPI):

  • Removed an unneeded option that is also not supported by the new LLVM.
2:14 PM Changeset in webkit [178247] by eric.carlson@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix typo in testate.c error messages
https://bugs.webkit.org/show_bug.cgi?id=140305

Reviewed by Geoffrey Garen.

  • API/tests/testapi.c:

(main): "... script did not timed out ..." -> "... script did not time out ..."

12:04 PM Changeset in webkit [178246] by Chris Dumez
  • 5 edits in trunk/Source/WebCore

Move more SVG CSS properties to the new StyleBuilder
https://bugs.webkit.org/show_bug.cgi?id=140340

Reviewed by Antti Koivisto.

Move more SVG CSS properties to the new StyleBuilder by introducing
the necessary converters in StyleBuilderConverter.

  • css/CSSPropertyNames.in:
  • css/SVGCSSStyleSelector.cpp:

(WebCore::StyleResolver::applySVGProperty):
(WebCore::roundToNearestGlyphOrientationAngle): Deleted.
(WebCore::angleToGlyphOrientation): Deleted.
(WebCore::colorFromSVGColorCSSValue): Deleted.

  • css/StyleBuilderConverter.h:

(WebCore::StyleBuilderConverter::convertNumber):
(WebCore::StyleBuilderConverter::convertNumberOrAuto):
(WebCore::StyleBuilderConverter::convertOpacity):
(WebCore::StyleBuilderConverter::convertSVGURIReference):
(WebCore::StyleBuilderConverter::convertSVGColor):
(WebCore::StyleBuilderConverter::convertGlyphOrientation):
(WebCore::StyleBuilderConverter::convertGlyphOrientationOrAuto):

  • rendering/style/RenderStyle.h:
10:20 AM Changeset in webkit [178245] by mitz@apple.com
  • 2 edits in trunk/Source/bmalloc

Geoff is organized, but he is not an organization.

Rubber-stamped by Anders Carlsson.

  • bmalloc.xcodeproj/project.pbxproj: Removed the ORGANIZATIONNAME project attribute.
1:17 AM Changeset in webkit [178244] by ap@apple.com
  • 2 edits in trunk/LayoutTests

editing/spelling/grammar-paste.html is flaky in debug after r177682
https://bugs.webkit.org/show_bug.cgi?id=139903

  • TestExpectations: The test if flaky on release bots too, updating expectations.

Jan 10, 2015:

3:29 PM Changeset in webkit [178243] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

build-webkit: silence output of 'which'
https://bugs.webkit.org/show_bug.cgi?id=140278

Patch by Michael Catanzaro <Michael Catanzaro> on 2015-01-10
Reviewed by Daniel Bates.

Use a more elegent test for the existance of ninja and eclipse.

  • Scripts/webkitdirs.pm:

(commandExists): Don't assume the command supports --version
(canUseNinja): Use commandExists()
(canUseEclipse): Use commandExists()

2:02 PM Changeset in webkit [178242] by rniwa@webkit.org
  • 2 edits in trunk/Websites/perf.webkit.org

Unreviewed build fix. Removed the stale code.

  • public/admin/triggerables.php:
1:57 PM Changeset in webkit [178241] by mitz@apple.com
  • 2 edits in trunk

[Xcode, iOS] Files are recompiled when alternating between using make and the Xcode IDE
https://bugs.webkit.org/show_bug.cgi?id=140339

Reviewed by Mark Rowe.

  • Makefile.shared: Run xcodebuild with the same PATH with which the Xcode IDE runs. This

prevents unnecessary rebuilding due to PATH differences.

10:59 AM Changeset in webkit [178240] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebCore

Unreviewed buildfix for !ENABLE(INSPECTOR) builds after r178201.

  • inspector/InspectorInstrumentation.h:

(WebCore::InspectorInstrumentation::willReceiveResourceResponse):

6:57 AM Changeset in webkit [178239] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/win

[WinCairo] Accelerated compositing has stopped working.
https://bugs.webkit.org/show_bug.cgi?id=140334

Patch by peavo@outlook.com <peavo@outlook.com> on 2015-01-10
Reviewed by Brent Fulgham.

The method GraphicsLayerTextureMapper::flushCompositingStateForThisLayerOnly()
is not updating the backingstore anymore, we need to call the new method
GraphicsLayerTextureMapper::updateBackingStoreIncludingSubLayers().

  • WebCoreSupport/AcceleratedCompositingContext.cpp:

(AcceleratedCompositingContext::flushPendingLayerChanges):
(AcceleratedCompositingContext::flushAndRenderLayers):

4:07 AM Changeset in webkit [178238] by yoon@igalia.com
  • 3 edits in trunk/Source/WebKit2

[ThreadedCompositor] Prevent excessive rendering call.
https://bugs.webkit.org/show_bug.cgi?id=140297

Reviewed by Žan Doberšek.

Not to waste CPU time on waiting V-Sync interval, the update timer of
compositing thread should be throttled.

In case of updating scene state, this update timer should be called as
soon as possible. However, when CoordinatedGraphicsScene requests update
viewport to advance the animations, this call should be scheduled for
a next frame.

No new tests. No change in functionality.

  • Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:

(WebKit::CompositingRunLoop::CompositingRunLoop):
(WebKit::CompositingRunLoop::setUpdateTimer):
(WebKit::CompositingRunLoop::updateTimerFired):
(WebKit::ThreadedCompositor::setNeedsDisplay):
(WebKit::ThreadedCompositor::updateViewport):
(WebKit::ThreadedCompositor::scheduleDisplayImmediately):
(WebKit::ThreadedCompositor::didChangeVisibleRect):
(WebKit::ThreadedCompositor::scheduleDisplayIfNeeded): Deleted.

  • Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h:
12:49 AM Changeset in webkit [178237] by Chris Dumez
  • 6 edits in trunk/Source/WebCore

Move 'kerning' / 'paint-order' / 'stroke-dasharray' SVG CSS properties to the new StyleBuilder
https://bugs.webkit.org/show_bug.cgi?id=140327

Reviewed by Sam Weinig.

Move 'kerning' / 'paint-order' / 'stroke-dasharray' SVG CSS properties
to the new StyleBuilder by introducing the necessary converters in
StyleBuilderConverter.

  • css/CSSPropertyNames.in:
  • css/SVGCSSStyleSelector.cpp:

(WebCore::StyleResolver::applySVGProperty):

  • css/StyleBuilderConverter.h:

(WebCore::StyleBuilderConverter::convertSVGLength):
(WebCore::StyleBuilderConverter::convertSVGLengthVector):
(WebCore::StyleBuilderConverter::convertStrokeDashArray):
(WebCore::StyleBuilderConverter::convertPaintOrder):

  • svg/SVGLength.cpp:

(WebCore::SVGLength::fromCSSPrimitiveValue):

  • svg/SVGLength.h:
12:01 AM Changeset in webkit [178236] by weinig@apple.com
  • 3 edits in trunk/Tools

Update the output format for run-api-tests
https://bugs.webkit.org/show_bug.cgi?id=140332

Reviewed by Dan Bernstein.

Changes the output format for run-api-tests be a bit simpler (no longer
indented based on suite, as we were not really using suite very well) but
also include details in the case of failure.

Changes verbose mode to no longer spew out the gtest default printer output,
as the custom printer now includes the failure information.

  • Scripts/run-api-tests:

(runTestsBySuite):
(runTest):
Augment the custom gtest printer by replacing the tokens "PASS" and "FAIL"
with colorized variants and strip out leaks spew (the leaks can be added back using
the new --show-leaks argument).

  • TestWebKitAPI/TestsController.cpp:

(TestWebKitAPI::Printer::OnTestPartResult):
(TestWebKitAPI::Printer::OnTestEnd):
(TestWebKitAPI::TestsController::run):
Implement a custom result printer that just prints out the information we want.

Note: See TracTimeline for information about the timeline view.