Timeline



Dec 1, 2014:

8:28 PM Changeset in webkit [176626] by jpfau@apple.com
  • 5 edits in trunk/Source

Add cancelable version of willSendRequest
https://bugs.webkit.org/show_bug.cgi?id=138987

Reviewed by Anders Carlsson.

Source/WebCore:

Covered by existing tests.

  • loader/ResourceLoader.cpp:

(WebCore::ResourceLoader::willSendRequest):

  • loader/ResourceLoader.h:

Source/WebKit2:

  • WebProcess/Network/WebResourceLoader.cpp:

(WebKit::WebResourceLoader::willSendRequest):

8:09 PM Changeset in webkit [176625] by msaboff@apple.com
  • 13 edits in trunk/Source/JavaScriptCore

Remove GetMyScope node from DFG
https://bugs.webkit.org/show_bug.cgi?id=139166

Reviewed by Oliver Hunt.

Eliminated GetMyScope DFG node type.

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):

  • dfg/DFGDoesGC.cpp:

(JSC::DFG::doesGC):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::isLiveInBytecode):

  • dfg/DFGNodeType.h:
  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):

  • dfg/DFGSafeToExecute.h:

(JSC::DFG::safeToExecute):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileGetMyScope): Deleted.

6:50 PM Changeset in webkit [176624] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Crash (integer overflow) beneath ByteCodeParser::handleGetById typing in search field on weather.com
https://bugs.webkit.org/show_bug.cgi?id=139165

Reviewed by Oliver Hunt.

If we don't have any getById or putById variants, emit non-cached versions of these operations.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleGetById):
(JSC::DFG::ByteCodeParser::handlePutById):

6:29 PM Changeset in webkit [176623] by benjamin@webkit.org
  • 6 edits
    16 adds in trunk

Add the dynamic specificity of the selector list argument when matching :nth-child() and :nth-last-child()
https://bugs.webkit.org/show_bug.cgi?id=139001

Reviewed by Andreas Kling.

Source/WebCore:

When matching :nth-child(An+B of selector list) or :nth-last-child(An+B of selector list),
we were previously ignoring the arguments.

That behavior seems to be confusing for users. We made the proposal to include the selector list
like when using :matches():

http://lists.w3.org/Archives/Public/www-style/2014Oct/0533.html

David Baron also agrees with this behavior:

http://lists.w3.org/Archives/Public/www-style/2014Oct/0534.html

This patch adds the specificity computation.

Tests: fast/css/nth-child-specificity-1.html

fast/css/nth-child-specificity-2.html
fast/css/nth-last-child-specificity-1.html
fast/css/nth-last-child-specificity-2.html

  • css/CSSSelector.cpp:

(WebCore::simpleSelectorFunctionalPseudoClassStaticSpecificity):

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOne):
(WebCore::SelectorChecker::matchSelectorList):

  • css/SelectorChecker.h:
  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::addPseudoClassType):

LayoutTests:

  • fast/css/nth-child-specificity-1-expected.html: Added.
  • fast/css/nth-child-specificity-1.html: Added.
  • fast/css/nth-child-specificity-2-expected.html: Added.
  • fast/css/nth-child-specificity-2.html: Added.
  • fast/css/nth-child-specificity-3-expected.html: Added.
  • fast/css/nth-child-specificity-3.html: Added.
  • fast/css/nth-child-specificity-4-expected.html: Added.
  • fast/css/nth-child-specificity-4.html: Added.
  • fast/css/nth-last-child-specificity-1-expected.html: Added.
  • fast/css/nth-last-child-specificity-1.html: Added.
  • fast/css/nth-last-child-specificity-2-expected.html: Added.
  • fast/css/nth-last-child-specificity-2.html: Added.
  • fast/css/nth-last-child-specificity-3-expected.html: Added.
  • fast/css/nth-last-child-specificity-3.html: Added.
  • fast/css/nth-last-child-specificity-4-expected.html: Added.
  • fast/css/nth-last-child-specificity-4.html: Added.
6:21 PM Changeset in webkit [176622] by akling@apple.com
  • 6 edits in trunk/Source

Optimize constructing JSC::Identifier from AtomicString.
<https://webkit.org/b/139157>

Reviewed by Michael Saboff.

Source/JavaScriptCore:

Add constructors for Identifier taking AtomicString and AtomicStringImpl.
This avoids branching on the string's isAtomic flag, which is obviously
always true for AtomicString & AtomicStringImpl.

Had to add a Identifier(const char*) constructor to resolve implicit
ambiguity between String / AtomicString.

Also made PrivateName::uid() return AtomicStringImpl* to take advantage
of the new constructor in a few places.

  • runtime/Identifier.h:

(JSC::Identifier::Identifier):

  • runtime/IdentifierInlines.h:

(JSC::Identifier::Identifier):

  • runtime/PrivateName.h:

(JSC::PrivateName::uid):

Source/WTF:

Make AtomicString::isInAtomicStringTable() public so it can be used
in some Identifier assertions.

  • wtf/text/AtomicString.h:
6:16 PM Changeset in webkit [176621] by Chris Dumez
  • 4 edits in trunk/Source/WebCore

Move 'text-shadow' / 'box-shadow' / '-webkit-box-shadow' to the new StyleBuilder
https://bugs.webkit.org/show_bug.cgi?id=138938

Reviewed by Sam Weinig.

Move 'text-shadow' / 'box-shadow' / '-webkit-box-shadow' CSS properties
from StyleResolver to the new StyleBuilder by using custom code.

No new tests, no behavior change.

  • css/CSSPropertyNames.in:
  • css/StyleBuilderCustom.h:

(WebCore::StyleBuilderCustom::applyTextOrBoxShadowValue):
(WebCore::StyleBuilderCustom::applyInitialTextShadow):
(WebCore::StyleBuilderCustom::applyInheritTextShadow):
(WebCore::StyleBuilderCustom::applyValueTextShadow):
(WebCore::StyleBuilderCustom::applyInitialBoxShadow):
(WebCore::StyleBuilderCustom::applyInheritBoxShadow):
(WebCore::StyleBuilderCustom::applyValueBoxShadow):
(WebCore::StyleBuilderCustom::applyInitialWebkitBoxShadow):
(WebCore::StyleBuilderCustom::applyInheritWebkitBoxShadow):
(WebCore::StyleBuilderCustom::applyValueWebkitBoxShadow):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::applyProperty):

6:02 PM Changeset in webkit [176620] by gyuyoung.kim@samsung.com
  • 6 edits in trunk

[EFL] Add a ENABLE_CSS_SCROLL_SNAP macro to CMake build system
https://bugs.webkit.org/show_bug.cgi?id=139085

Reviewed by Andreas Kling.

.:

  • Source/cmake/OptionsEfl.cmake: Add ENABLE_CSS_SCROLL_SNAP.
  • Source/cmake/WebKitFeatures.cmake: ditto.
  • Source/cmakeconfig.h.cmake: ditto.

Source/WebCore:

  • PlatformEfl.cmake:

Include page/scrolling/AxisScrollSnapOffsets.cpp to EFL build files to fix build break.

5:59 PM Changeset in webkit [176619] by Alan Bujtas
  • 3 edits
    2 adds in trunk

Twitter avatar moves when hovering/unhovering the "follow" button.
https://bugs.webkit.org/show_bug.cgi?id=139147
rdar://problem/19096508

Reviewed by Simon Fraser.

This patch ensures that the out of flow positioned render boxes (RenderReplaced) do not
get repositioned when their inline box wrappers move.
Ideally, out of flow positioned renderers do not have inline wrappers by the time we start
placing inline boxes, but in certain case (optimized code path for descendantsHaveSameLineHeightAndBaseline()),
they are still part of the inline box tree.
This patch prevents those renderer boxes from getting positioned as part of the inline box placement.
They will get removed later at RenderBlockFlow::computeBlockDirectionPositionsForLine().

Source/WebCore:

Test: fast/inline/out-of-flow-positioned-render-replaced-box-moves.html

  • rendering/InlineBox.cpp:

(WebCore::InlineBox::adjustPosition):

LayoutTests:

  • fast/inline/out-of-flow-positioned-render-replaced-box-moves-expected.html: Added.
  • fast/inline/out-of-flow-positioned-render-replaced-box-moves.html: Added.
5:49 PM Changeset in webkit [176618] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Try to fix the Mac build.

  • WebView/WebView.mm:

(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView _close]):

5:29 PM Changeset in webkit [176617] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Null deref under TextIndicator::createWithSelectionInFrame using find-in-page on bugzilla
https://bugs.webkit.org/show_bug.cgi?id=139164
<rdar://problem/19107247>

Reviewed by Beth Dakin.

  • page/TextIndicator.cpp:

(WebCore::TextIndicator::createWithSelectionInFrame):
Null-check the ImageBuffer in addition to the Image.

5:16 PM Changeset in webkit [176616] by oliver@apple.com
  • 2 edits in trunk/Source/WTF

Fix non-mac builds.

  • wtf/IndexedIterator.h:
5:12 PM Changeset in webkit [176615] by dbates@webkit.org
  • 2 edits in trunk/LayoutTests

[iOS] Unskip LayoutTests/dom tests

  • platform/ios-simulator/TestExpectations:
4:55 PM Changeset in webkit [176614] by andersca@apple.com
  • 13 edits
    5 deletes in trunk/Source

Remove IWebCookieManager on Windows
https://bugs.webkit.org/show_bug.cgi?id=139144

Reviewed by Sam Weinig.

Source/WebCore:

Remove code that handles overriding the cookie storage.

  • platform/network/NetworkStorageSession.h:
  • platform/network/cf/NetworkStorageSessionCFNet.cpp:

(WebCore::cookieStorageOverride): Deleted.
(WebCore::overrideCookieStorage): Deleted.
(WebCore::overridenCookieStorage): Deleted.

  • platform/network/cf/ResourceHandleCFNet.cpp:

(WebCore::ResourceHandle::createCFURLConnection):

Source/WebKit:

Remove files.

  • WebKit.vcxproj/Interfaces/Interfaces.vcxproj:
  • WebKit.vcxproj/Interfaces/Interfaces.vcxproj.filters:
  • WebKit.vcxproj/WebKit/WebKit.vcxproj:
  • WebKit.vcxproj/WebKit/WebKit.vcxproj.filters:

Source/WebKit/win:

Remove WebCookieManager.

  • ForEachCoClass.h:
  • Interfaces/IWebCookieManager.idl: Removed.
  • Interfaces/WebKit.idl:
  • WebCookieManager.cpp: Removed.
  • WebCookieManager.h: Removed.
  • WebCookieManagerCFNet.cpp: Removed.
  • WebCookieManagerCurl.cpp: Removed.
  • WebKitClassFactory.cpp:
4:49 PM Changeset in webkit [176613] by Conrad Shultz
  • 5 edits in trunk/Source/WebKit2

Clients need a way to explicitly set the title of a page preview
https://bugs.webkit.org/show_bug.cgi?id=139161

Reviewed by Beth Dakin.

This implicitly assumes that only one page preview can be associate with a given WKView at a time.

  • UIProcess/API/Cocoa/WKViewPrivate.h:
  • UIProcess/API/mac/WKView.mm:

(-[WKView _setPreviewTitle:]):
Wrap -[WKActionMenuController setPreviewTitle:]

  • UIProcess/mac/WKActionMenuController.h:
  • UIProcess/mac/WKActionMenuController.mm:

Add ivars for the title and the title text field (previously not independently exposed).
(-[WKPagePreviewViewController previewTitle]):
Accessor.
(-[WKPagePreviewViewController setPreviewTitle:]):
Accessor; set the text field's string value.
(-[WKPagePreviewViewController loadView]):
Adopt the _titleTextField ivar; assume that if a client has explicitly set the previewTitle then we don't
need to ask for it again.
(-[WKActionMenuController setPreviewTitle:]):
Wrap -[WKPagePreviewViewController setPreviewTitle:].

4:18 PM Changeset in webkit [176612] by dino@apple.com
  • 2 edits in trunk/Source/WebCore

[iOS Media] Slider knob should not have a border
https://bugs.webkit.org/show_bug.cgi?id=139160
<rdar://problem/19075185>

Reviewed by Jer Noble.

The change in r175715 required adding !important to a bunch
of rules for pseudo elements. The border width of slider knobs
for media controls should be zero, so add an !important there.

  • Modules/mediacontrols/mediaControlsiOS.css:

(audio::-webkit-media-controls-timeline::-webkit-slider-thumb): Change
border to border-width and force it to zero.

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

Make WebKit2 work slightly better with garbage collection
https://bugs.webkit.org/show_bug.cgi?id=139159
<rdar://problem/19108390>

Reviewed by Dan Bernstein.

  • Shared/Cocoa/APIObject.mm:

(API::Object::ref):
(API::Object::deref):
Call CFRetain/CFRelease to prevent the memory from being collected.

(API::Object::newObject):
Call CFRetain under GC so we'll prevent memory from being collected prematurely.

4:10 PM Changeset in webkit [176610] by benjamin@webkit.org
  • 11 edits in trunk/Source/WebInspectorUI

Web Inspector: add more :not() and :matches() awesomeness
https://bugs.webkit.org/show_bug.cgi?id=138997

Reviewed by Joseph Pecoraro.

Simplify the Inspector's CSS when possible.

  • UserInterface/Views/DatabaseContentView.css:

(:matches(.database-user-query, .database-query-prompt, .database-query-result)::before):
(.database-user-query::before, .database-query-prompt::before, .database-query-result::before): Deleted.

  • UserInterface/Views/GradientSlider.css:

(.gradient-slider-knob > :matches(img, div)):
(.gradient-slider-knob > div): Deleted.

  • UserInterface/Views/HoverMenu.css:

(.hover-menu > svg > :matches(path, rect)):
(.hover-menu > svg > rect): Deleted.

  • UserInterface/Views/LayerTreeDetailsSidebarPanel.css:

(.panel.details.layer-tree .name-column :matches(.pseudo-element, .reflection)):
(.panel.details.layer-tree tr.selected .name-column :matches(.pseudo-element, .reflection)):
(.panel.details.layer-tree .name-column .reflection): Deleted.
(.panel.details.layer-tree tr.selected .name-column .reflection): Deleted.

  • UserInterface/Views/ProbeDetailsSidebarPanel.css:

(.details-section.probe-set .options > :matches(.probe-remove, .probe-clear-samples, .probe-add)):
(.details-section.probe-set .options > .probe-add): Deleted.

  • UserInterface/Views/ResourceSidebarPanel.css:

(.sidebar > .panel.navigation.resource > :matches(.content, .empty-content-placeholder)):
(body.mac-platform.legacy .sidebar > .panel.navigation.resource > :matches(.content, .empty-content-placeholder)):
(.sidebar > .panel.navigation.resource > .empty-content-placeholder): Deleted.
(body.mac-platform.legacy .sidebar > .panel.navigation.resource > .empty-content-placeholder): Deleted.

  • UserInterface/Views/ScopeBar.css:

(.scope-bar > li:matches(.selected, :active)):
(.scope-bar > li:active): Deleted.

  • UserInterface/Views/SyntaxHighlightingDefaultTheme.css:

(.syntax-highlighted :matches(.css-comment, .javascript-comment, .html-comment)):
(.syntax-highlighted :matches(.css-keyword, .css-tag, .css-at-rule, .css-important, .javascript-keyword, .html-tag)):
(.syntax-highlighted :matches(.css-number, .javascript-number)):
(.syntax-highlighted :matches(.css-property, .css-selector, .javascript-ident)):
(.syntax-highlighted :matches(.css-string, .javascript-string, .javascript-regexp, .html-attribute-value)):
(.syntax-highlighted :matches(.html-doctype, .html-processing-instruction)):
(.syntax-highlighted .html-comment): Deleted.
(.syntax-highlighted .html-tag): Deleted.
(.syntax-highlighted .javascript-number): Deleted.
(.syntax-highlighted .javascript-ident): Deleted.
(.syntax-highlighted .html-attribute-value): Deleted.
(.syntax-highlighted .html-processing-instruction): Deleted.
It looks like ".cm-tag.cm-bracket" was there only to override the rule below.
From basic testing, it looks like "cm-tag" and "cm-bracket" always appear together. I removed the "cm-bracket" rule
from the second rule, and simplified the first rule.

  • UserInterface/Views/TimelineSidebarPanel.css:

(body.mac-platform.legacy .sidebar > .panel.navigation.timeline > :matches(.content, .empty-content-placeholder)):
(body.mac-platform.legacy .sidebar > .panel.navigation.timeline > .empty-content-placeholder): Deleted.

  • UserInterface/Views/Toolbar.css:

(body.mac-platform:not(.legacy, .docked) .toolbar):
(body.mac-platform:not(.legacy, .docked) .toolbar.icon-and-label-vertical):
(body.mac-platform:not(.legacy, .docked) .toolbar.icon-and-label-vertical.small-size):
(body.mac-platform:not(.legacy, .docked) .toolbar:matches(.icon-and-label-horizontal, .icon-only)):
(body.mac-platform:not(.legacy, .docked) .toolbar:matches(.icon-and-label-horizontal.small-size, .icon-only.small-size, .label-only)):
(.toolbar:matches(.icon-and-label-horizontal.small-size, .icon-only.small-size, .label-only) .control-section):
(body.mac-platform:not(.legacy):not(.docked) .toolbar): Deleted.
(body.mac-platform:not(.legacy):not(.docked) .toolbar.icon-and-label-vertical): Deleted.
(body.mac-platform:not(.legacy):not(.docked) .toolbar.icon-and-label-vertical.small-size): Deleted.
(body.mac-platform:not(.legacy):not(.docked) .toolbar.icon-only): Deleted.
(body.mac-platform:not(.legacy):not(.docked) .toolbar.label-only): Deleted.
(.toolbar.label-only .control-section): Deleted.

4:09 PM Changeset in webkit [176609] by Chris Dumez
  • 6 edits
    4 adds in trunk

Take into consideration canvas drawing for throttling DOM timers
https://bugs.webkit.org/show_bug.cgi?id=139140
<rdar://problem/19102218>

Reviewed by Andreas Kling.

Source/WebCore:

Take into consideration canvas drawing for throttling DOM timers so
that:

  • Timers drawing on a visible canvas can no longer get throttled. This fixes the following sites:
  • Timers that are drawing on a canvas that is not user observable now get throttled, thus using less CPU. As an example, on http://hint.fm/wind/, CPU usage is at 110% when the canvas is inside the viewport on my machine. CPU usage would remain at 110% when scrolling the canvas outside the viewport before this patch. After this patch, the CPU usage goes down to 5% when the canvas is outside the viewport.

Tests: fast/canvas/canvas-inside-viewport-timer-throttling.html

fast/canvas/canvas-outside-viewport-timer-throttling.html

  • bindings/js/JSCSSStyleDeclarationCustom.cpp:

(WebCore::JSCSSStyleDeclaration::putDelegate):

  • html/HTMLCanvasElement.cpp:

(WebCore::HTMLCanvasElement::notifyObserversCanvasChanged):

  • page/DOMTimer.cpp:

(WebCore::DOMTimerFireState::setScriptMadeNonUserObservableChangesToElement):
(WebCore::DOMTimer::scriptDidCauseElementRepaint):
(WebCore::DOMTimerFireState::setScriptMadeNonUserObservableChangesToElementStyle): Deleted.
(WebCore::DOMTimer::scriptDidUpdateStyleOfElement): Deleted.

  • page/DOMTimer.h:

LayoutTests:

Add layout tests to test that we take into consideration canvas drawing
when considering if we should throttle DOM timers.

  • fast/canvas/canvas-inside-viewport-timer-throttling-expected.txt: Added.
  • fast/canvas/canvas-inside-viewport-timer-throttling.html: Added.
  • fast/canvas/canvas-outside-viewport-timer-throttling-expected.txt: Added.
  • fast/canvas/canvas-outside-viewport-timer-throttling.html: Added.
3:56 PM Changeset in webkit [176608] by timothy_horton@apple.com
  • 8 edits in trunk/Source/WebKit/mac

Fix the iOS build.

  • WebView/WebActionMenuController.h:
  • WebView/WebActionMenuController.mm:
  • WebView/WebHTMLView.mm:

(-[WebHTMLView scrollWheel:scrollWheel:]):
(-[WebHTMLView mouseDown:mouseDown:]):

  • WebView/WebView.mm:
  • WebView/WebViewData.h:
  • WebView/WebViewData.mm:

(-[WebViewPrivate dealloc]):

  • WebView/WebViewInternal.h:
3:54 PM Changeset in webkit [176607] by mmaxfield@apple.com
  • 4 edits
    2 adds in trunk

Crash in Font::dashesForIntersectionsWithRect() due to underlining SVG fonts
https://bugs.webkit.org/show_bug.cgi?id=139158

Reviewed by Simon Fraser.

Source/WebCore:

RenderingContexts are only created if the primary SimpleFontData is an SVG font,
but dashesForIntersectionWithRect() uses the first character's SimpleFontData.
One might be an SVG font but the other might not be.

Note that this brittle design will be fixed with the SVG -> OTF translator.

Test: fast/css3-text/css3-text-decoration/text-decoration-skip/decoration-skip-crash-fallback-svg.html

  • platform/graphics/mac/FontMac.mm:

(WebCore::Font::dashesForIntersectionsWithRect):

LayoutTests:

Test for no crashes when the primary SimpleFontData and the first character's
SimpleFontData differ in their SVG-ness.

  • fast/css3-text/css3-text-decoration/text-decoration-skip/decoration-skip-crash-fallback-svg-expected.html: Added.
  • fast/css3-text/css3-text-decoration/text-decoration-skip/decoration-skip-crash-fallback-svg.html: Added.
3:40 PM Changeset in webkit [176606] by dbates@webkit.org
  • 2 edits in trunk/LayoutTests

[iOS] Update expected results for LayoutTests/crypto

  • platform/ios-simulator/TestExpectations:
3:37 PM Changeset in webkit [176605] by dbates@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

[iOS] Skip some animation tests that time out in iOS WebKit2

  • platform/ios-simulator-wk2/TestExpectations: Added.
2:04 PM Changeset in webkit [176604] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[MSE] Fix not always calling mediaPlayer seek.
https://bugs.webkit.org/show_bug.cgi?id=139139

Patch by Bartlomiej Gajda <b.gajda@samsung.com> on 2014-12-01
Reviewed by Jer Noble.

Original comment states that media source shall always be notified of seek if it's not closed.

No new tests needed.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::seekTimerFired):

1:49 PM Changeset in webkit [176603] by oliver@apple.com
  • 2 edits in trunk/Source/WTF

Fix 32-bit build.

  • wtf/IndexedIterator.h:
1:15 PM Changeset in webkit [176602] by ap@apple.com
  • 6 edits
    2 adds
    1 delete in trunk/LayoutTests

http tests should not use shared temporary files, part 3
https://bugs.webkit.org/show_bug.cgi?id=139135

Reviewed by Tim Horton.

Fix ping tests, using the same techniques as before.

  • http/tests/navigation/image-load-in-unload-handler.html:
  • http/tests/navigation/ping-cross-origin-from-https.html:
  • http/tests/navigation/resources/check-ping.php:
  • http/tests/navigation/resources/delete-ping.php:
  • http/tests/navigation/resources/image-load-in-unload-handler-2.html: Copied from LayoutTests/http/tests/navigation/resources/ping-redirect.html.
  • http/tests/navigation/resources/ping-file-path.php: Copied from LayoutTests/http/tests/security/contentSecurityPolicy/resources/report-file-path.php.
  • http/tests/navigation/resources/ping-redirect.html: Removed.
  • http/tests/navigation/resources/save-Ping.php:
1:14 PM Changeset in webkit [176601] by ap@apple.com
  • 10 edits in trunk/Source/JavaScriptCore

Several JavaScriptCore date tests are flaky, because they expect time to be frozen during execution
https://bugs.webkit.org/show_bug.cgi?id=139138

Reviewed by Mark Lam.

Merged a fix by Bob Clary.

  • tests/mozilla/ecma/Date/15.9.1.1-1.js:
  • tests/mozilla/ecma/Date/15.9.1.1-2.js:
  • tests/mozilla/ecma/Date/15.9.2.1.js:
  • tests/mozilla/ecma/Date/15.9.2.2-1.js:
  • tests/mozilla/ecma/Date/15.9.2.2-2.js:
  • tests/mozilla/ecma/Date/15.9.2.2-3.js:
  • tests/mozilla/ecma/Date/15.9.2.2-4.js:
  • tests/mozilla/ecma/Date/15.9.2.2-5.js:
  • tests/mozilla/ecma/Date/15.9.2.2-6.js:
1:10 PM Changeset in webkit [176600] by ap@apple.com
  • 3 edits in trunk/LayoutTests

<rdar://problem/11358748> http/tests/multipart/multipart-wait-before-boundary.html fails on ML as of r115745

Looks like it no longer fails.

  • platform/mac/TestExpectations:
  • platform/wk2/TestExpectations:

Removed it from test expectations.

12:48 PM Changeset in webkit [176599] by timothy_horton@apple.com
  • 15 edits in trunk/Source

Implement yellow highlight for WebKit1 data detectors
https://bugs.webkit.org/show_bug.cgi?id=138956
<rdar://problem/18992185>

Reviewed by Beth Dakin.

  • page/TextIndicator.cpp:

(WebCore::TextIndicator::createWithSelectionInFrame):
(WebCore::TextIndicator::TextIndicator):

  • page/TextIndicator.h:

(WebCore::TextIndicator::selectionRectInScreenCoordinates):
(WebCore::TextIndicator::textBoundingRectInScreenCoordinates):
(WebCore::TextIndicator::selectionRectInWindowCoordinates): Deleted.
(WebCore::TextIndicator::textBoundingRectInWindowCoordinates): Deleted.
Store TextIndicator rects in screen coordinates, since that's what we
want anyway, and this makes it easier to share this code between the WebKits.

  • page/mac/TextIndicatorWindow.mm:

(-[WebTextIndicatorView initWithFrame:textIndicator:margin:]):
(WebCore::TextIndicatorWindow::setTextIndicator):
Avoid some rect conversion because the TextIndicator rects are already in screen coordinates.

  • WebView/WebActionMenuController.h:
  • WebView/WebActionMenuController.mm:

(-[WebActionMenuController webView:willHandleMouseDown:]):
(-[WebActionMenuController webView:didHandleScrollWheel:]):
(-[WebActionMenuController prepareForMenu:withEvent:]):
(-[WebActionMenuController didCloseMenu:withEvent:]):
(-[WebActionMenuController _defaultMenuItemsForDataDetectedText]):
(-[WebActionMenuController _showTextIndicator]):
(-[WebActionMenuController _hideTextIndicator]):
(-[WebActionMenuController _dismissActionMenuPopovers]):
Copy the WebKit2 WKActionMenuController TextIndicator implementation
into WebActionMenuController. The only significant difference is
that we build the TextIndicator right at menu construction time
instead of in the Web process.

  • WebView/WebHTMLView.mm:

(-[WebHTMLView scrollWheel:]):
Let the WebActionMenuController know that we're handling a scroll.

(-[WebHTMLView mouseDown:]):
Let the WebActionMenuController know that we're handling a mouseDown.

  • WebView/WebView.mm:

(-[WebView _setTextIndicator:fadeOut:animationCompletionHandler:]):
(-[WebView _clearTextIndicator]):
(-[WebView _actionMenuController]):
(-[WebView _convertRectFromRootView:]): Deleted.

  • WebView/WebViewData.h:
  • WebView/WebViewData.mm:
  • WebView/WebViewInternal.h:

Keep a TextIndicatorWindow on WebView, just like WKView does.
Expose the WebActionMenuController on WebView (internally).

  • Shared/WebCoreArgumentCoders.cpp:

(IPC::ArgumentCoder<TextIndicatorData>::encode):
(IPC::ArgumentCoder<TextIndicatorData>::decode):

  • WebProcess/WebPage/FindController.cpp:

(WebKit::FindController::updateFindIndicator):
(WebKit::FindController::drawRect):
Adjust to the fact that TextIndicator keeps screen-relative rects.

12:18 PM Changeset in webkit [176598] by andersca@apple.com
  • 12 edits in trunk/Source

Remove old site specific quirks code that was added in 2009
https://bugs.webkit.org/show_bug.cgi?id=139141

Reviewed by Antti Koivisto.

Source/WebCore:

  • platform/network/NetworkingContext.h:
  • platform/network/ResourceHandleInternal.h:

(WebCore::ResourceHandleInternal::ResourceHandleInternal):

  • platform/network/mac/ResourceHandleMac.mm:

(WebCore::ResourceHandle::start):

Source/WebKit/mac:

  • WebCoreSupport/WebFrameNetworkingContext.h:
  • WebCoreSupport/WebFrameNetworkingContext.mm:

(WebFrameNetworkingContext::needsSiteSpecificQuirks): Deleted.

Source/WebKit2:

  • NetworkProcess/RemoteNetworkingContext.h:
  • NetworkProcess/mac/RemoteNetworkingContext.mm:

(WebKit::RemoteNetworkingContext::needsSiteSpecificQuirks): Deleted.

  • WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
  • WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:

(WebKit::WebFrameNetworkingContext::needsSiteSpecificQuirks): Deleted.

12:06 PM Changeset in webkit [176597] by dburkart@apple.com
  • 5 edits in branches/safari-600.3-branch/Source

Bump versioning

11:59 AM Changeset in webkit [176596] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Web Inspector: Crash in WebInspectorClient::hideHighlight when page is destroyed
https://bugs.webkit.org/show_bug.cgi?id=139136

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-12-01
Reviewed by Simon Fraser.

  • WebProcess/WebCoreSupport/WebInspectorClient.cpp:

(WebKit::WebInspectorClient::hideHighlight):
Speculatively fix by null-checking the main frame which
can be null during page destruction.

11:11 AM Changeset in webkit [176595] by Joseph Pecoraro
  • 4 edits in trunk

Web Inspector: DOMExceptions do not show the error message string in Pause Reason section
https://bugs.webkit.org/show_bug.cgi?id=138988

Reviewed by Timothy Hatcher.

Source/WebCore:

  • inspector/WebInjectedScriptHost.cpp:

(WebCore::WebInjectedScriptHost::type):
Give all DOM Exception types the "error" RemoteObject subtype.

LayoutTests:

  • inspector/debugger/command-line-api-exception-expected.txt:
11:01 AM Changeset in webkit [176594] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk

[MSE] Unset timestamps of trackbuffers during Reset Parser State algorithm.
https://bugs.webkit.org/show_bug.cgi?id=139075.

Patch by Bartlomiej Gajda <b.gajda@samsung.com> on 2014-12-01
Reviewed by Jer Noble.

Source/WebCore:

Specification requires from us to unset timestamps for trackBuffers
during abort() method.

Test: media/media-source/media-source-append-nonsync-sample-after-abort.html

  • Modules/mediasource/SourceBuffer.cpp:

(WebCore::SourceBuffer::resetParserState):
(WebCore::SourceBuffer::abort):

  • Modules/mediasource/SourceBuffer.h:

LayoutTests:

Specification requires from us to unset timestamps for trackBuffers during abort() method.
Tests appendBuffer() with first sync sample, then aborts after a few more samples, and emits
a few more non-sync samples, so they should be dropped, as trackBuffer will have
needRandomAccessFlag set.

  • media/media-source/media-source-append-nonsync-sample-after-abort-expected.txt: Added.
  • media/media-source/media-source-append-nonsync-sample-after-abort.html: Added.
10:42 AM Changeset in webkit [176593] by Chris Dumez
  • 4 edits in trunk/Source/WebCore

Transform StyleBuilderCustom into a class and mark it as a friend of RenderStyle
https://bugs.webkit.org/show_bug.cgi?id=138999

Reviewed by Sam Weinig.

Transform StyleBuilderCustom into a class and mark it as a friend of
RenderStyle. This is needed because some of the StyleBuilderCustom
functions need to access RenderStyle's private API.

No new tests, no behavior change.

  • css/StyleBuilderCustom.h: Move functions from StyleBuilderFunctions namespace to StyleBuilderCustom class.
  • css/makeprop.pl: Use StyleBuilderCustom scope instead of StyleBuilderFunctions for custom implementation.
  • rendering/style/RenderStyle.h: Mark StyleBuilderCustom class as a friend, similarly to what was already done for DeprecatedStyleBuilder and StyleResolver.
9:50 AM Changeset in webkit [176592] by oliver@apple.com
  • 29 edits
    1 add in trunk/Source

Make sure range based iteration of Vector<> still receives bounds checking
https://bugs.webkit.org/show_bug.cgi?id=138821

Reviewed by Mark Lam.

Source/JavaScriptCore:

There are a few uses of begin()/end() that explicitly require pointers,
so we use getPtr() to extract the underlying pointer generically.

  • bytecode/UnlinkedCodeBlock.cpp:

(JSC::UnlinkedCodeBlock::visitChildren):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitComplexPopScopes):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::emitSwitchIntJump):

  • ftl/FTLAbbreviations.h:

(JSC::FTL::mdNode):
(JSC::FTL::buildCall):

  • llint/LLIntData.cpp:

(JSC::LLInt::Data::performAssertions):

  • parser/Parser.h:

(JSC::Scope::Scope):

  • profiler/ProfileNode.cpp:

(JSC::ProfileNode::debugPrintRecursively):

  • runtime/JSArray.cpp:

(JSC::JSArray::setLengthWithArrayStorage):
(JSC::JSArray::sortCompactedVector):

  • tools/ProfileTreeNode.h:

(JSC::ProfileTreeNode::dumpInternal):

  • yarr/YarrJIT.cpp:

(JSC::Yarr::YarrGenerator::matchCharacterClass):

Source/WebCore:

There are a few uses of begin()/end() that explicitly require pointers,
so we use getPtr() to extract the underlying pointer generically.

  • bindings/js/SerializedScriptValue.cpp:

(WebCore::CloneDeserializer::deserializeString):

  • editing/TextIterator.cpp:

(WebCore::SearchBuffer::isBadMatch):

  • page/mac/ServicesOverlayController.mm:

(WebCore::ServicesOverlayController::buildSelectionHighlight):

  • platform/graphics/SegmentedFontData.cpp:

(WebCore::SegmentedFontData::fontDataForCharacter):
(WebCore::SegmentedFontData::containsCharacter):
(WebCore::SegmentedFontData::isLoading):

  • platform/graphics/WOFFFileFormat.cpp:

(WebCore::convertWOFFToSfnt):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::paintFillLayers):

  • rendering/style/GridResolvedPosition.cpp:

(WebCore::firstNamedGridLineBeforePosition):
(WebCore::GridResolvedPosition::resolveRowEndColumnEndNamedGridLinePositionAgainstOppositePosition):

  • svg/SVGFontElement.cpp:

(WebCore::kerningForPairOfStringsAndGlyphs):

  • svg/SVGPathByteStream.h:

(WebCore::SVGPathByteStream::append):

  • xml/XPathNodeSet.h:

(WebCore::XPath::NodeSet::begin):
(WebCore::XPath::NodeSet::end):

Source/WTF:

Add a new IndexedIterator struct to WTF that wraps a
Vector type and index to provide pointer like semantics
while still performing runtime bounds checking, even in
release builds. We store a simple index into the vector
which means that this iterator allows vector resizing
during iteration. If the vector is resized such that the
iterator is out of bounds, then any attempt to dereference
the iterator will crash safely. Any other errors, including
overflows, and over extending the iterator will likewise
crash.

For the purpose of retaining semantically equivalent
behaviour, the iterator can be moved to m_index == size()
as that is the standard "end" terminator for these types.
Attempting to dereference at that point will still crash
rather than perform an unsafe memory operation.

In order to maintain the validity of all the bounds checking,
we perform full integer range checking prior to any mutation
of the iterator location. If we detect an arithmetic overflow
we will crash rather than attempting to carry on.

By necessity there are many overrides for operator + and - as
we otherwise hit many different type promotion ambiguities when
performing arithmetic with iterators. These ambiguities are also
different for 32- vs. 64-bit, so duplicating the functions
and then forwarding to the core implementations that performed
the bounds checking and mutation seemed like the right call.

  • WTF.xcodeproj/project.pbxproj:
  • wtf/IndexedIterator.h: Added.

(WTF::IndexedIterator::IndexedIterator):
(WTF::IndexedIterator::operator->):
(WTF::IndexedIterator::operator*):
(WTF::IndexedIterator::get):
(WTF::IndexedIterator::operator++):
(WTF::IndexedIterator::operator--):
(WTF::IndexedIterator::operator UnspecifiedBoolType):
(WTF::IndexedIterator::operator+=):
(WTF::IndexedIterator::operator-=):
(WTF::IndexedIterator::operator+):
(WTF::IndexedIterator::operator-):
(WTF::IndexedIterator::operator=):
(WTF::IndexedIterator::operator==):
(WTF::IndexedIterator::operator!=):
(WTF::IndexedIterator::operator<):
(WTF::IndexedIterator::operator<=):
(WTF::IndexedIterator::operator>):
(WTF::IndexedIterator::operator>=):
(WTF::IndexedIterator::operator const_iterator):
(WTF::IndexedIterator::isSafeToCompare):
(WTF::IndexedIterator::unsafeGet):
(WTF::getPtr):
(WTF::operator-):
(WTF::operator==):
(WTF::operator!=):
(WTF::operator<=):
(WTF::operator>=):
(WTF::operator<):
(WTF::operator>):
(WTF::IndexedIteratorSelector::makeIterator):
(WTF::IndexedIteratorSelector::makeConstIterator):

  • wtf/RefCountedArray.h:

(WTF::RefCountedArray::RefCountedArray):

  • wtf/Vector.h:

(WTF::Vector::Vector):
(WTF::Vector::begin):
(WTF::Vector::end):
(WTF::OverflowHandler>::Vector):
(WTF::=):
(WTF::OverflowHandler>::fill):
(WTF::OverflowHandler>::expandCapacity):
(WTF::OverflowHandler>::tryExpandCapacity):
(WTF::OverflowHandler>::resize):
(WTF::OverflowHandler>::shrink):
(WTF::OverflowHandler>::grow):
(WTF::OverflowHandler>::reserveCapacity):
(WTF::OverflowHandler>::tryReserveCapacity):
(WTF::OverflowHandler>::shrinkCapacity):
(WTF::OverflowHandler>::append):
(WTF::OverflowHandler>::tryAppend):
(WTF::OverflowHandler>::appendSlowCase):
(WTF::OverflowHandler>::uncheckedAppend):
(WTF::OverflowHandler>::appendVector):
(WTF::OverflowHandler>::insert):
(WTF::OverflowHandler>::insertVector):
(WTF::OverflowHandler>::remove):

6:48 AM Changeset in webkit [176591] by commit-queue@webkit.org
  • 4 edits in trunk/Tools

Unreviewed, rolling out r176566.
https://bugs.webkit.org/show_bug.cgi?id=139124

It broke the GTK performance tests. (Requested by clopez on
#webkit).

Reverted changeset:

"[GTK] Use GMainLoopSource in WebKitTestRunner"
https://bugs.webkit.org/show_bug.cgi?id=138831
http://trac.webkit.org/changeset/176566

Nov 30, 2014:

11:36 PM Changeset in webkit [176590] by ljaehun.lim@samsung.com
  • 2 edits in trunk/Source/WebKit2

[EFL] Add eldbus to the library list
https://bugs.webkit.org/show_bug.cgi?id=139120

Reviewed by Gyuyoung Kim.

Fix undefined reference errors for eldbus APIs.

  • PlatformEfl.cmake:
7:48 PM Changeset in webkit [176589] by ryuan.choi@navercorp.com
  • 4 edits
    9 deletes in trunk

[EFL] Drop support for the EFL 1.7
https://bugs.webkit.org/show_bug.cgi?id=139114

Reviewed by Gyuyoung Kim.

.:

  • Source/cmake/EFLHelpers.cmake: Removed.
  • Source/cmake/FindEcore.cmake: Removed.
  • Source/cmake/FindEdje.cmake: Removed.
  • Source/cmake/FindEet.cmake: Removed.
  • Source/cmake/FindEeze.cmake: Removed.
  • Source/cmake/FindEfreet.cmake: Removed.
  • Source/cmake/FindEina.cmake: Removed.
  • Source/cmake/FindElementary.cmake: Removed.
  • Source/cmake/FindEvas.cmake: Removed.
  • Source/cmake/OptionsEfl.cmake:

Source/WTF:

  • wtf/efl/EflTypedefs.h: Removed old definitions which EFL 1.7 used.
4:20 PM Changeset in webkit [176588] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit/mac

Fix a test failure.

  • History/WebHistory.mm:

(+[WebHistory _setVisitedLinkTrackingEnabled:]):
Call through to the visited link store.

(+[WebHistory _removeAllVisitedLinks]):
Ditto.

  • WebCoreSupport/WebVisitedLinkStore.mm:

(WebVisitedLinkStore::isLinkVisited):
Make sure to populate visited links.

2:48 PM Changeset in webkit [176587] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Switch over to the visited link store from the WebViewGroup
https://bugs.webkit.org/show_bug.cgi?id=139112

Reviewed by Sam Weinig.

  • WebView/WebView.mm:

(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView setGroupName:]):

2:45 PM Changeset in webkit [176586] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit/mac

Add WebVisitedLinkStore::removeVisitedLink and use it on iOS
https://bugs.webkit.org/show_bug.cgi?id=139111

Reviewed by Sam Weinig.

  • WebCoreSupport/WebVisitedLinkStore.h:
  • WebCoreSupport/WebVisitedLinkStore.mm:

(WebVisitedLinkStore::removeVisitedLink):

  • WebView/WebView.mm:

(-[WebView removeVisitedLink:]):

Note: See TracTimeline for information about the timeline view.