rniwa@webkit.org [Thu, 9 Oct 2014 00:19:14 +0000 (00:19 +0000)]
Unreviewed build fix after r174477.
* init-database.sql: Removed build_commits_index since it's redundant with build_commit's primary key.
Also fixed a syntax error that we were missing "," after line that declared build_commit column.
* public/api/runs.php: Fixed the query so that test_runs without commits data will be retrieved.
This is necessary for baseline and target values manually added via admin pages.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174486
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dino@apple.com [Thu, 9 Oct 2014 00:12:55 +0000 (00:12 +0000)]
PopupMenus should indicate if they are using a custom rendering
https://bugs.webkit.org/show_bug.cgi?id=137543
<rdar://problem/
18544212>
Reviewed by Beth Dakin.
On Yosemite there is an animation as a popup menu closes. We can't use
this when there is a custom rendering, since the animation doesn't match
the final result. Implement this by hooking into the existing code
for hiding the arrows during animation - a WebKitSystemInterface update
will implement the other side.
* platform/mac/WebCoreSystemInterface.h: Rename parameter to be more clear.
* platform/mac/WebCoreSystemInterface.mm:
* rendering/RenderMenuList.cpp:
(RenderMenuList::menuStyle): We need to check that we are a native-looking
button, not just something with appearance.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174485
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
joepeck@webkit.org [Thu, 9 Oct 2014 00:08:47 +0000 (00:08 +0000)]
Web Inspector: CSS Pretty Printing fails to put space between value functions around ending parenthesis
https://bugs.webkit.org/show_bug.cgi?id=137415
Reviewed by Timothy Hatcher.
Add a space after a closing parenthesis if we are still inside a property.
This adds space between space separated function lists such as
-webkit-transform:foo(...)bar(...). Also add a test for keyframe syntax.
* Tools/PrettyPrinting/CodeMirrorFormatters.js:
* Tools/PrettyPrinting/css-tests/keyframes-expected.css: Added.
* Tools/PrettyPrinting/css-tests/keyframes.css: Added.
* Tools/PrettyPrinting/index.html:
* UserInterface/Views/CodeMirrorFormatters.js:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174484
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
joepeck@webkit.org [Thu, 9 Oct 2014 00:08:45 +0000 (00:08 +0000)]
Web Inspector: CSS Pretty Printing fails to put space between rgb(...) and numbers in minified gradients
https://bugs.webkit.org/show_bug.cgi?id=137414
Reviewed by Timothy Hatcher.
Add whitespace between rgb(...) and a number, possible in gradient
syntax like "linear-gradient(rgb(...)0%,rgb(...)100%)".
* Tools/PrettyPrinting/CodeMirrorFormatters.js:
* Tools/PrettyPrinting/css-tests/gradient-expected.css: Added.
(.dot-nav:nth-child(1n) li a.active):
* Tools/PrettyPrinting/css-tests/gradient.css: Added.
(.dot-nav:nth-child(1n) li a.active):
* Tools/PrettyPrinting/index.html:
* UserInterface/Views/CodeMirrorFormatters.js:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174483
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
joepeck@webkit.org [Thu, 9 Oct 2014 00:08:44 +0000 (00:08 +0000)]
Web Inspector: CSS Pretty Printing fails to wrap long lines of selectors with pseudo classes/elements
https://bugs.webkit.org/show_bug.cgi?id=137413
Reviewed by Timothy Hatcher.
Long line wrapping was breaking as soon as there was a ':' for a psuedo
class or element. Likewise it was counting comment strings as part of
the length of the line even though it would get a newline after it.
* Tools/PrettyPrinting/CodeMirrorFormatters.js:
* Tools/PrettyPrinting/css-tests/basic-expected.css:
(progress, section, summary, time):
* Tools/PrettyPrinting/css-tests/wrapping-expected.css: Added.
(a.tryamacs, a.upgradenows):
(a.tryamacs:hover, a.upgradenows:hover):
* Tools/PrettyPrinting/css-tests/wrapping.css: Added.
(a.browsewebappss,a.businessstores,a.buyiphones,a.buynows,a.buynows-arrow,a.comingsoons,p::before,a.descargarahoras,a.downloadituness,a.downloadnows,a.finds,a.freetrials,a.getstarteds,a.gos,a.howtoapplys,a.howtobuys,a.joinnows,a.learnmores,a.nikebuynows,a.notifymes,a.ordernows,a.preordernows,a.preorders,a.reserves,a.startyoursearchs,a.submits,a.tryamacs,a.upgradenows):
(a.browsewebappss:hover,a.businessstores:hover,a.buyiphones:hover,a.buynows:hover,a.buynows-arrow:hover,a.comingsoons:hover,p::before,a.descargarahoras:hover,a.downloadituness:hover,a.downloadnows:hover,a.finds:hover,a.freetrials:hover,a.getstarteds:hover,a.gos:hover,a.howtoapplys:hover,a.howtobuys:hover,a.joinnows:hover,a.learnmores:hover,a.nikebuynows:hover,a.notifymes:hover,a.ordernows:hover,a.preordernows:hover,a.preorders:hover,a.reserves:hover,a.startyoursearchs:hover,a.submits:hover,a.tryamacs:hover,a.upgradenows:hover):
* Tools/PrettyPrinting/index.html:
* UserInterface/Views/CodeMirrorFormatters.js:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174482
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Wed, 8 Oct 2014 23:37:58 +0000 (23:37 +0000)]
Re-marking fast/hidpi/image-srcset-svg-canvas.html as an expected image failure.
* platform/mac/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174481
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Wed, 8 Oct 2014 23:33:43 +0000 (23:33 +0000)]
Use is<>() / downcast<>() for RenderBlock objects
https://bugs.webkit.org/show_bug.cgi?id=137512
Reviewed by Darin Adler.
Source/WebCore:
Use is<>() / downcast<>() for RenderBlock objects and clean up the
surrounding code.
No new tests, no behavior change.
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::firstChildConsideringContinuation):
(WebCore::lastChildConsideringContinuation):
(WebCore::AccessibilityRenderObject::firstChild):
(WebCore::startOfContinuations):
(WebCore::endOfContinuations):
(WebCore::childBeforeConsideringContinuations):
(WebCore::AccessibilityRenderObject::previousSibling):
(WebCore::AccessibilityRenderObject::nextSibling):
(WebCore::nextContinuation):
(WebCore::AccessibilityRenderObject::renderParentObject):
(WebCore::AccessibilityRenderObject::anchorElement):
(WebCore::AccessibilityRenderObject::setValue):
* bindings/objc/DOMUIKitExtensions.mm:
(-[DOMNode containsOnlyInlineObjects]):
(-[DOMNode isSelectableBlock]):
(-[DOMHTMLElement structuralComplexityContribution]):
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::valueForGridTrackList):
* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded):
* editing/TextIterator.cpp:
(WebCore::TextIterator::shouldRepresentNodeOffsetZero):
* page/ios/FrameIOS.mm:
(WebCore::Frame::preferredHeight):
* rendering/LogicalSelectionOffsetCaches.h:
(WebCore::containingBlockForFixedPosition):
(WebCore::containingBlockForAbsolutePosition):
(WebCore::containingBlockForObjectInFlow):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::styleWillChange):
(WebCore::RenderBlock::continuationBefore):
(WebCore::RenderBlock::splitBlocks):
(WebCore::RenderBlock::addChildIgnoringContinuation):
(WebCore::canMergeAnonymousBlock):
(WebCore::canMergeContiguousAnonymousBlocks):
(WebCore::RenderBlock::collapseAnonymousBoxChild):
(WebCore::RenderBlock::removeChild):
(WebCore::RenderBlock::blockElementContinuation):
(WebCore::RenderBlock::blockSelectionGaps):
(WebCore::RenderBlock::blockBeforeWithinSelectionRoot):
(WebCore::isChildHitTestCandidate):
(WebCore::RenderBlock::firstLineBlock):
(WebCore::findFirstLetterBlock):
(WebCore::RenderBlock::childBecameNonInline):
(WebCore::RenderBlock::hasMarginBeforeQuirk):
(WebCore::RenderBlock::hasMarginAfterQuirk):
* rendering/RenderBlock.h:
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::marginBeforeEstimateForChild):
(WebCore::RenderBlockFlow::estimateLogicalTopPosition):
(WebCore::RenderBlockFlow::adjustBlockChildForPagination):
(WebCore::RenderBlockFlow::positionNewFloats):
(WebCore::RenderBlockFlow::markSiblingsWithFloatsForLayout):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlockFlow::positionNewFloatOnLine):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::computeReplacedLogicalHeightUsing):
(WebCore::RenderBox::availableLogicalHeightUsing):
(WebCore::RenderBox::containingBlockLogicalWidthForPositioned):
(WebCore::RenderBox::containingBlockLogicalHeightForPositioned):
(WebCore::computeInlineStaticDistance):
(WebCore::RenderBox::computePositionedLogicalWidth):
(WebCore::RenderBox::computePositionedLogicalHeight):
* rendering/RenderBoxModelObject.cpp:
(WebCore::accumulateInFlowPositionOffsets):
(WebCore::RenderBoxModelObject::moveChildTo):
(WebCore::RenderBoxModelObject::moveChildrenTo):
* rendering/RenderElement.cpp:
(WebCore::RenderElement::propagateStyleToAnonymousChildren):
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::adjustedPositionRelativeToOffsetParent):
* rendering/RenderFullScreen.cpp:
(WebCore::RenderFullScreen::unwrapRenderer):
* rendering/RenderInline.cpp:
(WebCore::RenderInline::inlineElementContinuation):
(WebCore::updateStyleOfAnonymousBlockContinuations):
(WebCore::RenderInline::styleDidChange):
(WebCore::nextContinuation):
(WebCore::RenderInline::splitFlow):
(WebCore::RenderInline::positionForPoint):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateScrollbarsAfterLayout):
(WebCore::RenderLayer::calculateClipRects):
* rendering/RenderListItem.cpp:
(WebCore::getParentOfFirstLineBox):
(WebCore::RenderListItem::insertOrMoveMarkerRendererIfNeeded):
(WebCore::RenderListItem::positionListMarker):
* rendering/RenderNamedFlowFragment.cpp:
(WebCore::RenderNamedFlowFragment::maxPageLogicalHeight):
* rendering/RenderObject.cpp:
(WebCore::includeNonFixedHeight):
(WebCore::RenderObject::checkBlockPositionedObjectsNeedLayout):
(WebCore::RenderObject::containingBlock):
(WebCore::RenderObject::handleDynamicFloatPositionChange):
(WebCore::RenderObject::removeAnonymousWrappersForInlinesIfNecessary):
(WebCore::RenderObject::getTextDecorationColors):
* rendering/RenderRuby.cpp:
(WebCore::rubyBeforeBlock):
(WebCore::rubyAfterBlock):
* rendering/RenderRubyBase.cpp:
(WebCore::RenderRubyBase::moveInlineChildren):
(WebCore::RenderRubyBase::moveBlockChildren):
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::paintSnapshottedPluginOverlay):
* rendering/TextAutosizer.cpp:
(WebCore::TextAutosizer::processSubtree):
(WebCore::TextAutosizer::processContainer):
(WebCore::TextAutosizer::measureDescendantTextWidth):
(WebCore::TextAutosizer::findDeepestBlockContainingAllText):
(WebCore::TextAutosizer::findFirstTextLeafNotInCluster):
* rendering/mathml/RenderMathMLRoot.cpp:
(WebCore::RenderMathMLRoot::layout):
Source/WebKit2:
Use is<>() / downcast<>() for RenderBlock objects and clean up the
surrounding code.
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::rangeForWebSelectionAtPosition):
(WebKit::WebPage::contractedRangeFromHandle):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174480
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Wed, 8 Oct 2014 22:11:41 +0000 (22:11 +0000)]
[Win] Mark two inspector-protocol tests as crashing.
https://bugs.webkit.org/show_bug.cgi?id=137529
* platform/win/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174479
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver@apple.com [Wed, 8 Oct 2014 20:54:24 +0000 (20:54 +0000)]
Make sure arguments tearoff is performed through the environment record if necessary
https://bugs.webkit.org/show_bug.cgi?id=137538
Reviewed by Michael Saboff.
Fairly simple change. If we have a lexical record we need to pull the unmodified
arguments object from the record and then use the standard op_tear_off_arguments
instruction on the temporary.
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::emitGetOwnScope):
(JSC::BytecodeGenerator::emitReturn):
* bytecompiler/BytecodeGenerator.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174478
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Wed, 8 Oct 2014 20:40:18 +0000 (20:40 +0000)]
Add v2 UI for the perf dashboard
https://bugs.webkit.org/show_bug.cgi?id=137537
Rubber-stamped by Andreas Kling.
* public/v2: Added.
* public/v2/app.css: Added.
* public/v2/app.js: Added.
* public/v2/chart-pane.css: Added.
* public/v2/data.js: Added.
* public/v2/index.html: Added.
* public/v2/js: Added.
* public/v2/js/d3: Added.
* public/v2/js/d3/LICENSE: Added.
* public/v2/js/d3/d3.js: Added.
* public/v2/js/d3/d3.min.js: Added.
* public/v2/js/ember-data.js: Added.
* public/v2/js/ember.js: Added.
* public/v2/js/handlebars.js: Added.
* public/v2/js/jquery.min.js: Added.
* public/v2/js/statistics.js: Added.
* public/v2/manifest.js: Added.
* public/v2/popup.js: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174477
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jer.noble@apple.com [Wed, 8 Oct 2014 20:30:04 +0000 (20:30 +0000)]
Unreviewed clean up of inadventant double-ChangeLog.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174476
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jer.noble@apple.com [Wed, 8 Oct 2014 20:26:41 +0000 (20:26 +0000)]
Unreviewed follow-up fix for r174460. Do not register for KVOs if the object does not respond to the requested property.
* platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.mm:
(-[CDMSessionMediaSourceAVFObjCObserver beginObserving:]):
(-[CDMSessionMediaSourceAVFObjCObserver stopObserving:]):
(-[CDMSessionMediaSourceAVFObjCObserver invalidate]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174475
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jer.noble@apple.com [Wed, 8 Oct 2014 20:26:39 +0000 (20:26 +0000)]
Layout Test media/track/track-forced-subtitles-in-band.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=137505
Reviewed by Simon Fraser.
Now that the media controls can have audio as well as text tracks, use the aria-labelledby attribute
to get the <ul> containing the text track menu list items.
* media/track/track-forced-subtitles-in-band.html:
* media/track/track-user-preferences-expected.txt:
* media/track/track-user-preferences.html:
* media/trackmenu-test.js:
(trackMenuListByLabel):
(captionTrackMenuList):
(audioTrackMenuList):
(indexOfMenuItemBeginningWith):
(indexOfCaptionMenuItemBeginningWith):
(indexOfAudioTrackMenuItemBeginningWith):
(selectMenuItemFromList):
(selectCaptionMenuItem):
(selectAudioTrackMenuItem):
(listTrackMenu):
(trackMenuList): Deleted.
* media/video-controls-audiotracks-trackmenu.html:
* media/video-controls-captions-trackmenu-includes-enabled-track.html:
* media/video-controls-captions-trackmenu-only-captions-descriptions-and-subtitles.html:
* media/video-controls-captions-trackmenu.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174474
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 8 Oct 2014 20:16:46 +0000 (20:16 +0000)]
[WinCairo] Enable JIT on 32-bit.
https://bugs.webkit.org/show_bug.cgi?id=137521
Patch by peavo@outlook.com <peavo@outlook.com> on 2014-10-08
Reviewed by Mark Lam.
Enable JIT on Windows 32-bit, but disable it at runtime if SSE2 is not present.
Source/JavaScriptCore:
* JavaScriptCore.vcxproj/LLInt/LLIntAssembly/build-LLIntAssembly.pl:
* runtime/Options.cpp:
(JSC::recomputeDependentOptions):
Source/WTF:
* wtf/Platform.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174473
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jer.noble@apple.com [Wed, 8 Oct 2014 20:04:33 +0000 (20:04 +0000)]
Layout Test media/track/track-forced-subtitles-in-band.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=137505
Reviewed by Simon Fraser.
Now that the media controls can have audio as well as text tracks, use the aria-labelledby attribute
to get the <ul> containing the text track menu list items.
* media/track/track-forced-subtitles-in-band.html:
* media/track/track-user-preferences-expected.txt:
* media/track/track-user-preferences.html:
* media/trackmenu-test.js:
(trackMenuListByLabel):
(captionTrackMenuList):
(audioTrackMenuList):
(indexOfMenuItemBeginningWith):
(indexOfCaptionMenuItemBeginningWith):
(indexOfAudioTrackMenuItemBeginningWith):
(selectMenuItemFromList):
(selectCaptionMenuItem):
(selectAudioTrackMenuItem):
(listTrackMenu):
(trackMenuList): Deleted.
* media/video-controls-audiotracks-trackmenu.html:
* media/video-controls-captions-trackmenu-includes-enabled-track.html:
* media/video-controls-captions-trackmenu-only-captions-descriptions-and-subtitles.html:
* media/video-controls-captions-trackmenu.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174472
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Wed, 8 Oct 2014 20:01:28 +0000 (20:01 +0000)]
[Win] Resolve various static analyzer warnings in Tools.
https://bugs.webkit.org/show_bug.cgi?id=137534
Reviewed by Dean Jackson.
* DumpRenderTree/cg/ImageDiffCG.cpp:
(main): User proper printf specifiers.
* DumpRenderTree/win/AccessibilityUIElementWin.cpp:
(AccessibilityUIElement::childrenCount): Handle possibility that
gcc_accChildCount returns with an error.
(accessibilityState): Ditto for gcc_accState.
* DumpRenderTree/win/DRTDesktopNotificationPresenter.cpp:
(DRTDesktopNotificationPresenter::showDesktopNotification): Use proper
check for return value from 'isHTML'. HRESULT is not a boolean and cannot
be treated as such.
* DumpRenderTree/win/DumpRenderTree.cpp:
(DumpRenderTreeWndProc): Avoid possible infinite loop on teardown caused
by comparing an unsigned value as being greater-than zero.
* DumpRenderTree/win/EditingDelegate.cpp:
(dump): Pass proper character pointer type to printf.
(EditingDelegate::shouldBeginEditingInDOMRange): Ditto.
(EditingDelegate::shouldEndEditingInDOMRange): Ditto.
(EditingDelegate::shouldInsertNode): Ditto.
(EditingDelegate::shouldInsertText): Ditto.
(EditingDelegate::shouldDeleteDOMRange): Ditto.
(EditingDelegate::shouldChangeSelectedDOMRange): Ditto.
(EditingDelegate::shouldApplyStyle): Ditto.
* DumpRenderTree/win/EventSender.cpp:
(beginDragWithFilesCallback): Handle possible error case for GlobalAlloc.
* DumpRenderTree/win/EventSender.h: Add proper declaration for HRESULT to match
system headers.
* DumpRenderTree/win/PixelDumpSupportWin.cpp: Handle possible failure
from CreateDIBSection.
* DumpRenderTree/win/UIDelegate.cpp: Ensure proper type is passed to printf.
* TestWebKitAPI/Tests/WTF/MediaTime.cpp: Get rid of workaround for NaN under
older versions of MSVC we no longer support.
* TestWebKitAPI/Tests/WebKit/win/WebViewDestruction.cpp: Use proper types and API
for 64-bit builds.
* TestWebKitAPI/TestsController.cpp: Use NeverDestroyed like a good citizen.
* TestWebKitAPI/TestsController.h: Ditto.
* WinLauncher/Common.cpp: Handle possible failure from GetModuleFileName.
* WinLauncher/WinLauncher.cpp: Make order of operations explicit to avoid
performing bitwise | before the comparison is done.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174471
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Wed, 8 Oct 2014 19:34:03 +0000 (19:34 +0000)]
[Win] Resolve various static analyzer warnings in WebKit.
https://bugs.webkit.org/show_bug.cgi?id=137531
Reviewed by Dean Jackson.
* MarshallingHelpers.cpp:
(MarshallingHelpers::safeArrayToIntArray): Handle possible failure of
SafeArrayGetElement call.
(MarshallingHelpers::safeArrayToIUnknownArray): Ditto.
* MemoryStream.cpp:
(MemoryStream::CopyTo): Zero-initialize 'written' to silence warning.
* WebCoreSupport/WebChromeClient.cpp:
(WebChromeClient::exceededDatabaseQuota): Handle possible failure of
GetModuleFileName.
* WebHistory.cpp:
(getDayBoundaries): Handle possible failure of TzSpecificLocalTimeToSystemTime
* WebView.cpp:
(WebView::shouldInitializeTrackPointHack): Zero initialize return value.
(WebView::dispatchDidReceiveIconFromWebFrame): Avoid possible DeleteObject
call on a null bitmap handle.
(WebView::standardUserAgentWithApplicationName): Get rid of spurious
pointer dereference.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174470
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dino@apple.com [Wed, 8 Oct 2014 19:24:43 +0000 (19:24 +0000)]
Add deprecation warning for CSSKeyframesRule::appendRule
https://bugs.webkit.org/show_bug.cgi?id=137532
<rdar://problem/
18585745>
Reviewed by Brent Fulgham.
Source/WebCore:
In r173982 (webkit.org/b/57910) we added insertRule to match
the spec. We should print a warning to the JS console suggesting
users move to insertRule.
* css/WebKitCSSKeyframesRule.cpp:
(WebCore::WebKitCSSKeyframesRule::appendRule): Add a message to the system
console.
* css/WebKitCSSKeyframesRule.h:
LayoutTests:
Update test expectations to include console message.
* animations/change-keyframes-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174469
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Wed, 8 Oct 2014 19:21:58 +0000 (19:21 +0000)]
Remove superfluously duplicated code in public/api/report-commits.php.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174468
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Wed, 8 Oct 2014 19:21:36 +0000 (19:21 +0000)]
[Win] Use proper v120 target for 64-bit builds.
* ANGLE.vcxproj/libEGL.vcxproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174467
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mmaxfield@apple.com [Wed, 8 Oct 2014 18:55:59 +0000 (18:55 +0000)]
Text drawn with an SVG font has no spaces when word-rounding hacks are enabled
https://bugs.webkit.org/show_bug.cgi?id=137463
Reviewed by Darin Adler.
Source/WebCore:
When rounding hacks are enabled, we use the "adjusted space width" instead of the
regular space width. However, the SVG-font-specific implementation of the
SimpleFontData constructor doesn't initialize this value, so it was getting set
to an undefined value (which happened to be close to 0 in my tests).
Test: svg/text/svg-font-word-rounding-hacks-spaces.html
* css/CSSFontFaceSource.cpp:
(WebCore::CSSFontFaceSource::getFontData):
(WebCore::CSSFontFaceSource::ensureFontData):
* loader/cache/CachedFont.cpp:
(WebCore::CachedFont::ensureCustomFontData):
(WebCore::CachedFont::getSVGFontById):
* platform/graphics/SimpleFontData.h:
* svg/SVGFontData.cpp:
(WebCore::SVGFontData::initializeFontData):
LayoutTests:
Make sure that spaces are present.
* svg/text/svg-font-word-rounding-hacks-spaces.html:
* svg/text/svg-font-word-rounding-hacks-spaces-expected.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174466
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Wed, 8 Oct 2014 18:32:12 +0000 (18:32 +0000)]
[Win] Resolve various static analyzer warnings in WebCore.
https://bugs.webkit.org/show_bug.cgi?id=137526
Reviewed by Dean Jackson.
A series of small changes to resolve various issues found by the MSVC static analyzer.
* inspector/NetworkResourcesData.cpp:
(WebCore::NetworkResourcesData::clear): Add assertion that it->value should never be null.
* page/SessionIDHash.h:
(WTF::HashTraits<WebCore::SessionID>::constructDeletedValue): Add explicit cast to avoid
compiler warning.
(WTF::HashTraits<WebCore::SessionID>::isDeletedValue): Ditto.
* page/win/FrameCGWin.cpp:
(WebCore::imageFromRect): Resolve static analyzer warnings by initializing bits, and
checking the return value of ::CreateDIBSection, which return nullptr on error.
* platform/graphics/ca/win/PlatformCALayerWin.cpp:
(printLayer): Use correct MSVC format specifier for size_t.
* platform/graphics/win/FontCacheWin.cpp:
(WebCore::getLinkedFonts): Handle possibility that a font link key does not exist.
(WebCore::FontCache::systemFallbackForCharacters): Handle error case when a valid code page
does not exist for a given character.
* platform/graphics/win/SimpleFontDataWin.cpp:
(WebCore::SimpleFontData::containsCharacters): Handle error cases for mapping to the CP_ACP code page,
and related failures when attempting to access the contents of a given code page.
* platform/graphics/win/UniscribeController.cpp:
(WebCore::UniscribeController::itemizeShapeAndPlace): Handle possible failure in the
ScriptItemize API call.
(WebCore::UniscribeController::shapeAndPlaceItem): Ditto for ScriptXtoCP API call.
* platform/win/BString.h: Use consistent SAL annotations for our typedeof of BSTR as in
the system header.
* platform/win/COMPtr.h: Ditto for HRESULT.
* platform/win/DragImageCGWin.cpp:
(WebCore::allocImage): Handle case of failing CreateDIBSection API call.
* platform/win/PopupMenuWin.cpp:
(WebCore::PopupMenuWin::show): Handle case of failing SystemParamtersInfo API call.
(WebCore::PopupMenuWin::wndProc): Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174465
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Wed, 8 Oct 2014 18:31:14 +0000 (18:31 +0000)]
Remove tests that always pass from the TestExpectations files.
* TestExpectations:
* platform/mac-wk2/TestExpectations:
* platform/mac/TestExpectations:
* platform/win/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174464
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adachan@apple.com [Wed, 8 Oct 2014 18:20:12 +0000 (18:20 +0000)]
Source/WebKit2:
Implement WKPageIsPlayingAudio().
https://bugs.webkit.org/show_bug.cgi?id=137048
Reviewed by Darin Adler.
* UIProcess/API/C/WKPage.cpp:
(WKPageIsPlayingAudio):
Tools:
Add a test for WKPageIsPlayingAudio().
https://bugs.webkit.org/show_bug.cgi?id=137048
Reviewed by Darin Adler.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
Add file-with-video.html, test.mp4, and WKPageIsPlayingAudio.cpp to the project.
* TestWebKitAPI/Tests/WebKit2/WKPageIsPlayingAudio.cpp: Added.
(TestWebKitAPI::nullJavaScriptCallback):
(TestWebKitAPI::didFinishLoadForFrame):
(TestWebKitAPI::isPlayingAudioDidChangeCallback):
(TestWebKitAPI::setUpClients):
(TestWebKitAPI::TEST):
This test loads a page with a video in it. When the page is loaded, we first check that
WKPageIsPlayingAudio() returns false for the page. Then we call a method to start the video.
When the WKPageUIClient::isPlayingAudioDidChange callback gets called, check that WKPageIsPlayingAudio()
now returns true for the page.
* TestWebKitAPI/Tests/WebKit2/file-with-video.html: Added.
* TestWebKitAPI/Tests/WebKit2/test.mp4: Added.
This is a video copied from LayoutTests/media/content.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174463
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Wed, 8 Oct 2014 17:56:49 +0000 (17:56 +0000)]
[Win] Resolve warnings about missing __has_include macro under MSVC
https://bugs.webkit.org/show_bug.cgi?id=137524
Reviewed by Anders Carlsson.
* wtf/Compiler.h: Provide a dummy implementation of __has_include that
avoids the warning without changing compile behavior.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174462
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Wed, 8 Oct 2014 17:40:09 +0000 (17:40 +0000)]
[webkitpy] Use python-irclib-0.4.8.tar.gz instead of zip in AutoInstaller
https://bugs.webkit.org/show_bug.cgi?id=137516
Reviewed by Alexey Proskuryakov.
* Scripts/webkitpy/thirdparty/__init__.py:
(AutoinstallImportHook._install_irc):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174461
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jer.noble@apple.com [Wed, 8 Oct 2014 17:32:41 +0000 (17:32 +0000)]
[EME][Mac] Update CDMSessionMediaSourceAVFObjC to match new API provided by AVStreamSession
https://bugs.webkit.org/show_bug.cgi?id=137469
Reviewed by Brent Fulgham.
Update our forward declaration to match the API provided by AVStreamSession.
AVStreamSession now takes an error: parameter in its initialiazer. It also provides the
sessionIdentifier used by the CDM, which CDMSessionMediaSourceAVFObjC will use as the
value of sessionId. Having this identifier allows us to fire a
secure-proof-of-key-release message after the client calls MediaKeySession.close().
Because this call will now generate messages, which have to be responded to in order
to remove those proofs from storage, do not clear the CDMSession from MediaKeySession
after calling close().
* Modules/encryptedmedia/MediaKeySession.cpp:
(WebCore::MediaKeySession::~MediaKeySession):
(WebCore::MediaKeySession::close):
(WebCore::MediaKeySession::setError): Deleted.
(WebCore::MediaKeySession::sessionId): Deleted.
* platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.h:
(WebCore::CDMSessionMediaSourceAVFObjC::setSessionId):
* platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.mm:
(-[CDMSessionMediaSourceAVFObjCListener initWithParent:]):
(-[CDMSessionMediaSourceAVFObjCObserver dealloc]):
(-[CDMSessionMediaSourceAVFObjCObserver beginObserving:]):
(-[CDMSessionMediaSourceAVFObjCObserver stopObserving:]):
(-[CDMSessionMediaSourceAVFObjCObserver invalidate]):
(-[CDMSessionMediaSourceAVFObjCListener observeValueForKeyPath:ofObject:change:context:]):
(WebCore::CDMSessionMediaSourceAVFObjC::CDMSessionMediaSourceAVFObjC):
(WebCore::CDMSessionMediaSourceAVFObjC::~CDMSessionMediaSourceAVFObjC):
(WebCore::CDMSessionMediaSourceAVFObjC::releaseKeys):
(WebCore::CDMSessionMediaSourceAVFObjC::update):
(WebCore::CDMSessionMediaSourceAVFObjC::addSourceBuffer):
(WebCore::CDMSessionMediaSourceAVFObjC::removeSourceBuffer):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174460
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Wed, 8 Oct 2014 17:20:32 +0000 (17:20 +0000)]
Perf dashboard should store commit logs
https://bugs.webkit.org/show_bug.cgi?id=137510
Reviewed by Darin Adler.
For the v2 version of the perf dashboard, we would like to be able to see commit logs in the dashboard itself.
This patch replaces "build_revisions" table with "commits" and "build_commits" relations to store commit logs,
and add JSON APIs to report and retrieve them. It also adds a tools/pull-svn.py to pull commit logs from
a subversion directory. The git version of this script will be added in a follow up patch.
In the new database schema, each revision in each repository is represented by exactly one row in "commits"
instead of one row for each build in "build_revisions". "commits" and "builds" now have a proper many-to-many
relationship via "build_commits" relations.
In order to migrate an existing instance of this application, run the following SQL commands:
BEGIN;
INSERT INTO commits (commit_repository, commit_revision, commit_time)
(SELECT DISTINCT ON (revision_repository, revision_value)
revision_repository, revision_value, revision_time FROM build_revisions);
INSERT INTO build_commits (commit_build, build_commit) SELECT revision_build, commit_id
FROM commits, build_revisions
WHERE commit_repository = revision_repository AND commit_revision = revision_value;
DROP TABLE build_revisions;
COMMIT;
The helper script to submit commit logs can be used as follows:
python ./tools/pull-svn.py "WebKit" https://svn.webkit.org/repository/webkit/ https://perf.webkit.org
feeder-slave feeder-slave-password 60 "webkit-patch find-users"
The above command will pull the subversion server at https://svn.webkit.org/repository/webkit/ every 60 seconds
to retrieve at most 10 commits, and submits the results to https://perf.webkit.org using "feeder-slave" and
"feeder-slave-password" as the builder name and the builder password respectively.
The last, optional, argument is the shell command to convert a subversion account to the corresponding username.
e.g. "webkit-patch find-users rniwa@webkit.org" yields "Ryosuke Niwa" <rniwa@webkit.org> in the stdout.
* init-database.sql: Replaced "build_revisions" relation with "commits" and "build_commits" relations.
* public/api/commits.php: Added. Retrieves a list of commits based on arguments in its path of the form
/api/commits/<repository-name>/<filter>. The behavior of this API depends on <filter> as follows:
- Not specified - It returns every single commit for a given repository.
- Matches "oldest" - It returns the commit with the oldest timestamp.
- Matches "latest" - It returns the commit with the latest timestamp.
- Matches "last-reported" - It returns the commit with the latest timestamp added via report-commits.php.
- Is entirely alphanumeric - It returns the commit whose revision matches the filter.
- Is of the form <alphanumeric>:<alphanumeric> or <alphanumeric>-<alphanumeric> - It retrieves the list
of commits added via report-commits.php between two timestamps retrieved from commits whose revisions
match the two alphanumeric values specified. Because it retrieves commits based on their timestamps,
the list may contain commits that do not appear as neither hash's ancestor in git/mercurial.
(main):
(commit_from_revision):
(fetch_commits_between):
(format_commits):
* public/api/report-commits.php: Added. A JSON API to report new subversion, git, or mercurial commits.
See tests/api-report-commits.js for examples on how to use this API.
* public/api/runs.php: Updated the query to use "commit_builds" and "commits" relations instead of
"build_revisions". Regrettably, the new query is 20% slower but I'm going to wait until the new UI is ready
to optimize this and other JSON APIs.
* public/include/db.php:
(Database::select_or_insert_row):
(Database::update_or_insert_row): Added.
(Database::_select_update_or_insert_row): Extracted from select_or_insert_row. Try to update first and then
insert if the update fails for update_or_insert_row. Preserves the old behavior when $should_update is false.
(Database::select_first_row):
(Database::select_last_row): Added.
(Database::select_first_or_last_row): Extracted from select_first_row. Fixed a bug that we were asserting
$order_by to be not alphanumeric/underscore. Retrieve the last row instead of the first if $descending_order.
* public/include/report-processor.php:
(ReportProcessor::resolve_build_id): Store commits instead of build_revisions. We don't worry about the race
condition for adding "build_commits" rows since we shouldn't have a single tester submitting the same result
concurrently. Even if it happened, it will only result in a PHP error and the database will stay consistent.
* run-tests.js:
(pathToTests): Don't call path.resolve with "undefined" testName; It throws an exception in the latest node.js.
* tests/api-report-commits.js: Added.
* tests/api-report.js: Fixed a test per build_revisions to build_commits/commits replacement.
* tools: Added.
* tools/pull-svn.py: Added. See above for how to use this script.
(main):
(determine_first_revision_to_fetch):
(fetch_revision_from_dasbhoard):
(fetch_commit_and_resolve_author):
(fetch_commit):
(textContent):
(resolve_author_name_from_email):
(submit_commits):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174459
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aestes@apple.com [Wed, 8 Oct 2014 17:16:25 +0000 (17:16 +0000)]
REGRESSION (r174403): media/track/track-forced-subtitles-in-band.html fails
https://bugs.webkit.org/show_bug.cgi?id=137525
* TestExpectations: Marked media/track/track-forced-subtitles-in-band.html as an expected failure.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174458
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Wed, 8 Oct 2014 17:14:04 +0000 (17:14 +0000)]
Unreviewed build fix after r174456.
I was comparing a signed int to an unsigned one.
* platform/graphics/mac/FontCacheMac.mm:
(WebCore::shouldAutoActivateFontIfNeeded):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174457
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Wed, 8 Oct 2014 16:20:37 +0000 (16:20 +0000)]
[Mac] We are spending a lot of time loading fonts when loading weather.com
https://bugs.webkit.org/show_bug.cgi?id=137454
Reviewed by Darin Adler.
We are spending a lot of time loading fonts when loading weather.com:
~4.2% of WebProcess's cpu time in FontCache::getCachedFrontData().
In particular, we are spending a lot of time doing font auto-activation
because we don't have the Open Sans fonts installed and weather.com is
trying to load those.
Before this patch, we were doing font auto-activation ~250 times when
loading weather.com, even though the site is loading ~10 distinct font
families.
This patch adds a cache of font families we already tried to
auto-activate so that we don't try again. This results in ~10 font
auto-activations when loading weather.com instead of 250. It reduces
the amount of time spent in getCachedFrontData() to 62.6ms from 276ms
(4.4x less) when loading weather.com.
No new tests, no behavior change.
* platform/graphics/mac/FontCacheMac.mm:
(WebCore::shouldAutoActivateFontIfNeeded):
(WebCore::FontCache::createFontPlatformData):
* platform/mac/WebFontCache.h:
* platform/mac/WebFontCache.mm:
(+[WebFontCache fontWithFamily:traits:weight:size:shouldAutoActivateIfNeeded:]):
(+[WebFontCache fontWithFamily:traits:weight:size:]):
(+[WebFontCache fontWithFamily:traits:size:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174456
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Wed, 8 Oct 2014 16:18:03 +0000 (16:18 +0000)]
[Win] Resolve some static analysis warnings in JavaScriptCore
https://bugs.webkit.org/show_bug.cgi?id=137508
Reviewed by Geoffrey Garen.
* API/tests/testapi.c:
(assertEqualsAsCharactersPtr): MSVC insists on using %Iu as its format specifier
for size_t. Make the format string conditional on Windows.
* bytecode/Watchpoint.h:
(JSC::InlineWatchpointSet::encodeState): Silence warning about left-shifting 'state'
as a 32-bit value before OR-ing it with a 64-bit value.
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode): Silence warning about operator prescedence
causing the || operation to take place before the >= test.
* dfg/DFGInPlaceAbstractState.cpp:
(JSC::DFG::InPlaceAbstractState::endBasicBlock): Ditto (|| before !=)
* testRegExp.cpp:
(testOneRegExp): Ditto %Iu format specifier.
* yarr/YarrInterpreter.cpp:
(JSC::Yarr::Interpreter::allocParenthesesDisjunctionContext): Silence warning about
using a 32-bit value as part of a 64-bit calculation.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174455
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
clopez@igalia.com [Wed, 8 Oct 2014 14:44:56 +0000 (14:44 +0000)]
[GTK] install-dependencies should install libjpeg-turbo on Debian and derivatives.
https://bugs.webkit.org/show_bug.cgi?id=137520
Reviewed by Philippe Normand.
Debian is switching is default JPEG library to libjpeg-turbo <https://wiki.debian.org/LJTTransition#Text>
For other distributions, we are already installing libjpeg-turbo.
So, do the same for Debian and derivatives.
* gtk/install-dependencies: Install libjpeg-dev that depends on the default implementation of libjpeg.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174453
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Wed, 8 Oct 2014 13:25:09 +0000 (13:25 +0000)]
ASSERTION FAILED: underlyingStringIsValid()
https://bugs.webkit.org/show_bug.cgi?id=137502
Reviewed by Anders Carlsson.
* rendering/RenderTreeAsText.cpp:
(WebCore::quoteAndEscapeNonPrintables): Take a StringView instead of a String.
(WebCore::writeTextRun): Ditto.
(WebCore::writeSimpleLine): Ditto.
* rendering/RenderTreeAsText.h: Removed unneeded include, tweaked formatting,
changed quoteAndEscapeNonPrintables to take a StringView.
* rendering/SimpleLineLayoutFunctions.cpp:
(WebCore::SimpleLineLayout::paintFlow): Tighten code using a modern for loop.
(WebCore::SimpleLineLayout::showLineLayoutForFlow): Update to work with a
StringView result for SimpleLineLayout::RunResolver::Run::text.
* rendering/SimpleLineLayoutResolver.h:
(WebCore::SimpleLineLayout::RunResolver::Run::text): Changed return type to
StringView to fix the lifetime bug and also to improve performance by getting
rid of the need to allocate and destroy a StringImpl object.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174451
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
evab.u-szeged@partner.samsung.com [Wed, 8 Oct 2014 13:19:26 +0000 (13:19 +0000)]
[webkitpy] Add back the workaround to replace ZipFile.extractall()
https://bugs.webkit.org/show_bug.cgi?id=137519
Reviewed by Csaba Osztrogonác.
It was removed by <http://trac.webkit.org/changeset/174266>,
because the comment stated it is a workaround for buggy python
2.6.1 which shipped on Snow Leopard. But it turned out the bug
is still valid with python 2.7 shipped on the latest Ubuntu
(12.04 and 14.04) and OS X 10.9.
* Scripts/webkitpy/common/system/autoinstall.py:
(AutoInstaller):
(AutoInstaller._extract_all):
(AutoInstaller._unzip):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174448
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
gyuyoung.kim@samsung.com [Wed, 8 Oct 2014 11:38:32 +0000 (11:38 +0000)]
[EFL][CoordinatedGraphics] All EFL layout tests are broken since r174231
https://bugs.webkit.org/show_bug.cgi?id=137443
Reviewed by Zoltan Herczeg.
EFL layout test and MiniBrowser have broken since r174231. r174231 was to move PageOverlay implementation
from WebKit2 to WebCore with lazy initializing of PageOverlayController. It caused all EFL layout tests
crash and build break. To restore EFL layout test, this patch sets viewOverlayRootLayer through
attachViewOverlayGraphicsLayer() as mac port's one in r174231.
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp:
(WebKit::CoordinatedDrawingArea::attachViewOverlayGraphicsLayer):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.h:
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
(WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
(WebKit::CoordinatedLayerTreeHost::updateRootLayers):
(WebKit::CoordinatedLayerTreeHost::setViewOverlayRootLayer):
(WebKit::CoordinatedLayerTreeHost::setRootCompositingLayer):
(WebKit::CoordinatedLayerTreeHost::didFlushRootLayer):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174435
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
gyuyoung.kim@samsung.com [Wed, 8 Oct 2014 08:48:46 +0000 (08:48 +0000)]
Unreviewed, rolling out r174335.
https://bugs.webkit.org/show_bug.cgi?id=137515
It broke EFL layout test totally (Requested by gyuyoung on
#webkit).
Reverted changeset:
"[EFL] Introduce EWebKit_Extension"
https://bugs.webkit.org/show_bug.cgi?id=134921
http://trac.webkit.org/changeset/174335
Patch by Commit Queue <commit-queue@webkit.org> on 2014-10-08
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174423
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
carlosgc@webkit.org [Wed, 8 Oct 2014 07:37:50 +0000 (07:37 +0000)]
[GTK] Make forwarding headers generation depend on source code
https://bugs.webkit.org/show_bug.cgi?id=137394
Reviewed by Philippe Normand.
Source/WebKit2:
Only run generate-forwarding-headers.pl when source code changes
and use a different target for the symlinks.
* PlatformGTK.cmake:
Tools:
* TestWebKitAPI/CMakeLists.txt: Add missing dependency rule.
* TestWebKitAPI/PlatformGTK.cmake: Only run
generate-forwarding-headers.pl when source code changes.
* WebKitTestRunner/PlatformGTK.cmake: Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174422
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 8 Oct 2014 06:37:40 +0000 (06:37 +0000)]
[EFL] Enable custom URI schemes with CustomProtocols
https://bugs.webkit.org/show_bug.cgi?id=128177
Patch by Pascal Jacquemart <p.jacquemart@samsung.com> on 2014-10-07
Reviewed by Gyuyoung Kim.
Fixing ewk_context_url_scheme_register() ewebkit2 API
rely on r162449 - CustomProtocols implementation from Carlos Garcia Campos
.:
* Source/cmake/OptionsEfl.cmake: Forcing CUSTOM_PROTOCOLS flag
Source/WebKit2:
* PlatformEfl.cmake:
* UIProcess/API/efl/ewk_context.h:
* UIProcess/API/efl/ewk_url_scheme_request.cpp:
(EwkUrlSchemeRequest::EwkUrlSchemeRequest):
(EwkUrlSchemeRequest::finish):
* UIProcess/API/efl/ewk_url_scheme_request_private.h:
(EwkUrlSchemeRequest::create):
* UIProcess/API/efl/tests/test_ewk2_context.cpp:
(TEST_F):
* UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManager.cpp:
* UIProcess/efl/RequestManagerClientEfl.cpp:
(WebKit::RequestManagerClientEfl::RequestManagerClientEfl):
(WebKit::RequestManagerClientEfl::startLoading):
(WebKit::RequestManagerClientEfl::stopLoading):
(WebKit::RequestManagerClientEfl::registerURLSchemeHandler):
(WebKit::EwkUrlSchemeHandler::EwkUrlSchemeHandler): Deleted.
(WebKit::RequestManagerClientEfl::didReceiveURIRequest): Deleted.
* UIProcess/efl/RequestManagerClientEfl.h:
* UIProcess/efl/WebContextEfl.cpp:
(WebKit::WebContext::platformInitializeWebProcess):
* UIProcess/soup/WebContextSoup.cpp:
(WebKit::WebContext::platformInitializeNetworkProcess):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174419
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 8 Oct 2014 05:36:24 +0000 (05:36 +0000)]
Remove build warnings in Hashmap API tests
https://bugs.webkit.org/show_bug.cgi?id=137484
Patch by Tanay C <tanay.c@samsung.com> on 2014-10-07
Reviewed by Darin Adler.
* TestWebKitAPI/Tests/WTF/HashMap.cpp:
(TestWebKitAPI::TEST): Changed EXPECT_EQ(false, addResult.isNewEntry) to EXPECT_FALSE(addResult.isNewEntry)
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174418
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 8 Oct 2014 05:17:29 +0000 (05:17 +0000)]
Remove WKPageCreateSnapshotOfVisibleContent API.
https://bugs.webkit.org/show_bug.cgi?id=66979
Patch by Sungmann Cho <sungmann.cho@navercorp.com> on 2014-10-07
Reviewed by Darin Adler.
After the landing of the first patch of webkit.org/b/66979,
WKPageCreateSnapshotOfVisibleContent API has been neglected for years.
Currently, this is not used anywhere and does not break the nightlies.
So we can remove this.
* UIProcess/API/C/WKPage.cpp:
(WKPageCreateSnapshotOfVisibleContent): Deleted.
* UIProcess/API/C/WKPagePrivate.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174417
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
gyuyoung.kim@samsung.com [Wed, 8 Oct 2014 04:51:35 +0000 (04:51 +0000)]
[EFL] Call requestScrollPositionUpdate() instead of delegatedScrollRequested() in ScrollView::scrollTo()
https://bugs.webkit.org/show_bug.cgi?id=137478
Reviewed by Benjamin Poulain.
As r174380 did, ScrollView::scrollTo() also calls requestScrollPositionUpdate() instead of delegatedScrollRequested().
delegatedScrollRequested() will be only called by requestScrollPositionUpdate(), and it needs to be merged by existing
other scroll request function.
No new tests, no behavior changes.
* platform/ScrollView.cpp:
(WebCore::ScrollView::scrollTo):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174416
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 8 Oct 2014 03:48:00 +0000 (03:48 +0000)]
Remove WKPageSetInvalidMessageFunction.
https://bugs.webkit.org/show_bug.cgi?id=137509
Patch by Sungmann Cho <sungmann.cho@navercorp.com> on 2014-10-07
Reviewed by Benjamin Poulain.
According to the FIXME comment in WKPageSetInvalidMessageFunction,
we can remove this function when doing so won't break the nightlies.
Currently, this is not used anywhere and does not break the nightlies.
So we can remove this.
* UIProcess/API/C/WKPage.cpp:
(WKPageSetInvalidMessageFunction): Deleted.
* UIProcess/API/C/WKPagePrivate.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174415
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dino@apple.com [Wed, 8 Oct 2014 02:23:10 +0000 (02:23 +0000)]
Safari 8 on OSX 10.10 does not run WebGL in Retina HiDPI mode.
https://bugs.webkit.org/show_bug.cgi?id=134854
<rdar://problem/
18465263>
Reviewed by Tim Horton.
The NSOpenGLLayer has to have its contentScale property
set accordingly when on a retina display. Do this by
adding another value to the GraphicsContext3D creation
attribute dictionary, representing the device pixel ratio.
Then, when we come to draw into the layer, make sure
we set our GL viewport to the correct value.
This is currently untestable because:
- we can't just read from the GL buffer as it is always correct
- WebGL isn't working in reftests
- a layer dump doesn't show the change since it was done in a CALayer subclass.
* html/canvas/WebGLRenderingContext.cpp:
(WebCore::WebGLRenderingContext::create): Pass the devicePixelRatio into the attribute dictionary.
* platform/graphics/GraphicsContext3D.h:
(WebCore::GraphicsContext3D::Attributes::Attributes): Add a devicePixelRatio attribute.
* platform/graphics/mac/WebGLLayer.h: New property to save us looking up the attributes
each frame.
* platform/graphics/mac/WebGLLayer.mm:
(-[WebGLLayer initWithGraphicsContext3D:]): Store the devicePixelRatio, and set our
contents scale appropriately.
(-[WebGLLayer drawInCGLContext:pixelFormat:forLayerTime:displayTime:]): Draw into
a correctly sized backbuffer.
(-[WebGLLayer copyImageSnapshotWithColorSpace:]): Generate an image of the correct size.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174414
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Wed, 8 Oct 2014 00:41:42 +0000 (00:41 +0000)]
[WK2] Use is<>() / downcast<>() for DrawingArea subclasses
https://bugs.webkit.org/show_bug.cgi?id=137497
Reviewed by Benjamin Poulain.
Use is<>() / downcast<>() for DrawingArea subclasses.
* WebProcess/WebPage/DrawingArea.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::didCommitLoad):
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::synchronizeDynamicViewportUpdate):
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174413
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Tue, 7 Oct 2014 23:17:04 +0000 (23:17 +0000)]
[Win] Resolve some MSVC static analyzer warnings
https://bugs.webkit.org/show_bug.cgi?id=137504
Reviewed by Dean Jackson.
* wtf/GregorianDateTime.cpp:
(WTF::GregorianDateTime::setToCurrentLocalTime): Properly handle
possible timezone error case.
* wtf/OSAllocatorWin.cpp:
(WTF::OSAllocator::decommit): Silence a spurious warning about using
MEM_DECOMMIT instead of MEM_RELEASE.
* wtf/ThreadingWin.cpp: Silence a spurious warning about how the
tryLock method is implemented.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174412
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Tue, 7 Oct 2014 22:28:25 +0000 (22:28 +0000)]
Roll-over Changelogs.
Source/JavaScriptCore:
* ChangeLog-2014-10-07: Copied from Source/JavaScriptCore/ChangeLog.
Source/WebCore:
* ChangeLog-2014-10-07: Copied from Source/WebCore/ChangeLog.
Source/WebKit2:
* ChangeLog-2014-10-07: Copied from Source/WebKit2/ChangeLog.
LayoutTests:
* ChangeLog-2014-10-07: Copied from LayoutTests/ChangeLog.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174411
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Tue, 7 Oct 2014 22:26:25 +0000 (22:26 +0000)]
Use more Ref and PassRef for Gradient.
<https://webkit.org/b/137490>
Codify the fact that CanvasGradient always has an internal WebCore::Gradient
and make GraphicsContext gradient setters take PassRef, exposing some
unnecessary null checks.
Reviewed by Christophe Dumez.
* WebCore.exp.in:
* html/canvas/CanvasGradient.h:
(WebCore::CanvasGradient::gradient):
* platform/graphics/Gradient.h:
(WebCore::Gradient::create):
* platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::setStrokeGradient):
(WebCore::GraphicsContext::setFillGradient):
* platform/graphics/GraphicsContext.h:
* rendering/RenderThemeIOS.mm:
(WebCore::RenderThemeIOS::paintProgressBar):
* rendering/svg/RenderSVGPath.cpp:
(WebCore::useStrokeStyleToFill):
* rendering/svg/RenderSVGResourceGradient.cpp:
(WebCore::RenderSVGResourceGradient::applyResource):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174410
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Tue, 7 Oct 2014 22:17:09 +0000 (22:17 +0000)]
Bug link should be at the beginning of the line.
* platform/mac/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174409
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 7 Oct 2014 22:14:01 +0000 (22:14 +0000)]
Commit queue doesn't drop obsolete patches sometimes
https://bugs.webkit.org/show_bug.cgi?id=137460
Patch by Jake Nielsen <jacob_nielsen@apple.com> on 2014-10-07
Reviewed by Alexey Proskuryakov.
* Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
Adds another test patch for use in queues_unittest.py.
courtesy of Csaba Osztrogonác <ossy@webkit.org>
(MockBugzilla):
* Scripts/webkitpy/tool/bot/commitqueuetask.py:
Raises a PatchIsNotValid exception in the case of validate() returning
false.
(CommitQueueTask.run):
* Scripts/webkitpy/tool/bot/earlywarningsystemtask.py:
Raises a PatchIsNotValid exception in the case of validate() returning
false.
(EarlyWarningSystemTask.run):
* Scripts/webkitpy/tool/bot/patchanalysistask.py:
Defines PatchIsNotValid exception.
(PatchIsNotValid):
(PatchIsNotValid.__init__):
* Scripts/webkitpy/tool/commands/earlywarningsystem.py:
Remove call to validate() and instead catches the PatchIsNotValid
exception.
(AbstractEarlyWarningSystem.review_patch):
* Scripts/webkitpy/tool/commands/queues.py:
Adds logic to catch the PatchIsNotValid exception.
(CommitQueue.process_work_item):
* Scripts/webkitpy/tool/commands/queues_unittest.py:
Adds the test_non_valid_patch test to ensure that invalid patches are
handled properly, and don't just result in indefinite spinning.
courtesy of Csaba Osztrogonác <ossy@webkit.org>
(test_non_valid_patch):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174408
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Tue, 7 Oct 2014 21:35:26 +0000 (21:35 +0000)]
Unreviewed iOS build fix after r174400.
Missing explicit WebKit:: namespace.
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _didCommitLoadForMainFrame]):
(-[WKWebView _restorePageStateToExposedRect:scale:]):
(-[WKWebView _restorePageStateToUnobscuredCenter:scale:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174407
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 7 Oct 2014 21:35:06 +0000 (21:35 +0000)]
[iOS] Teach run-webkit-tests to honor TestExpectation file for iOS Simulator 64-bit builds
https://bugs.webkit.org/show_bug.cgi?id=137499
Patch by Daniel Bates <dabates@apple.com> on 2014-10-07
Reviewed by Simon Fraser.
Tools:
Fixes an issue where the TestExpectation file for the iOS Simulator platform was only
honored when running run-webkit-tests with a 32-bit simulator build of iOS WebKit. We
should honor the TestExpectation file for the iOS Simulator platform for both 32- and 64-
bit simulator builds of iOS WebKit.
* Scripts/webkitpy/port/ios.py:
(IOSSimulatorPort._generate_all_test_configurations):
LayoutTests:
Add a new platform directory, called ios-simulator, and associated TestExpectation file.
For now, there is a single entry to skip all accessibility tests on iOS due to significant
API differences. We'll likely update TestExpectations as we rebaseline iOS Simulator
layout test results.
* platform/ios-simulator/TestExpectations: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174406
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mhock@apple.com [Tue, 7 Oct 2014 20:52:26 +0000 (20:52 +0000)]
Defer resolution of viewport size.
https://bugs.webkit.org/show_bug.cgi?id=137376
rdar://problem/
18558094
Reviewed by Benjamin Poulain.
ViewportConfiguration should resolve the viewport size on configuration update.
* dom/Document.cpp:
(WebCore::Document::processViewport): Defer resolution of viewport size.
* dom/ViewportArguments.cpp:
(WebCore::finalizeViewportArguments): Deleted.
* dom/ViewportArguments.h:
* page/ViewportConfiguration.cpp:
(WebCore::ViewportConfiguration::updateConfiguration): Resolve viewport size.
(WebCore::ViewportConfiguration::viewportArgumentsLength): Resolves width or height based on viewport arguments.
* page/ViewportConfiguration.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174405
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
psolanki@apple.com [Tue, 7 Oct 2014 20:37:48 +0000 (20:37 +0000)]
[iOS] WebKit1 clients crash in DiskCacheMonitor::tryGetFileBackedSharedBufferFromCFURLCachedResponse()
https://bugs.webkit.org/show_bug.cgi?id=137495
<rdar://problem/
18495034>
Reviewed by Andreas Kling.
Retain/release the CFCachedURLResponseRef object otherwise we could access a deleted object
and crash on the web thread.
* loader/cocoa/DiskCacheMonitorCocoa.mm:
(WebCore::DiskCacheMonitor::DiskCacheMonitor):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174404
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Tue, 7 Oct 2014 19:33:53 +0000 (19:33 +0000)]
Use is<>() / downcast<>() for RenderText / RenderTextFragment
https://bugs.webkit.org/show_bug.cgi?id=137476
Reviewed by Darin Adler.
Source/WebCore:
Use is<>() / downcast<>() for RenderText / RenderTextFragment, and
clean up the surrounding code.
No new tests, no behavior change.
* WebCore.exp.in:
Export symbol for RenderInline::linesBoundingBox() as it is used by
RenderInline::orderBoundingBox() which is inlined and now called in
WebRenderNode.mm.
* WebCore.xcodeproj/project.pbxproj:
Make RenderInline.h header as Private so that it can be included by
WebRenderNode.mm, similarly to RenderText.h.
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::textUnderElement):
(WebCore::AccessibilityRenderObject::boundingBoxRect):
(WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
(WebCore::AccessibilityRenderObject::passwordFieldValue):
* accessibility/atk/AccessibilityObjectAtk.cpp:
(WebCore::AccessibilityObject::getLengthForTextRange):
* bindings/objc/DOMUIKitExtensions.mm:
(-[DOMNode textHeight]):
(-[DOMNode findExplodedTextNodeAtPoint:]):
* dom/ContainerNode.cpp:
(WebCore::ContainerNode::getUpperLeftCorner):
(WebCore::ContainerNode::getLowerRightCorner):
* dom/DocumentMarkerController.cpp:
(WebCore::DocumentMarkerController::addMarker):
* dom/Position.cpp:
(WebCore::hasInlineBoxWrapper):
(WebCore::Position::upstream):
(WebCore::Position::downstream):
(WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
(WebCore::Position::isCandidate):
(WebCore::Position::rendersInDifferentPosition):
(WebCore::searchAheadForBetterMatch):
(WebCore::Position::getInlineBoxAndOffset):
* dom/PositionIterator.cpp:
(WebCore::PositionIterator::isCandidate):
* dom/Range.cpp:
(WebCore::Range::textRects):
(WebCore::Range::textQuads):
(WebCore::Range::getBorderAndTextQuads):
* editing/FrameSelection.cpp:
(WebCore::FrameSelection::debugRenderer):
* editing/TextIterator.cpp:
(WebCore::hasVisibleTextNode):
(WebCore::TextIterator::handleTextNode):
(WebCore::maxOffsetIncludingCollapsedSpaces):
(WebCore::SimplifiedBackwardsTextIterator::handleFirstLetter):
* editing/VisibleUnits.cpp:
(WebCore::startOfParagraph):
(WebCore::endOfParagraph):
* page/FrameView.cpp:
(WebCore::countRenderedCharactersInRenderObjectWithThreshold):
* rendering/BidiRun.cpp:
(WebCore::BidiRun::BidiRun):
* rendering/InlineIterator.cpp:
(WebCore::InlineIterator::surrogateTextDirection):
* rendering/InlineIterator.h:
(WebCore::InlineIterator::atTextParagraphSeparator):
(WebCore::InlineIterator::atParagraphSeparator):
(WebCore::isEmptyInline):
(WebCore::InlineIterator::fastIncrementInTextNode):
(WebCore::InlineIterator::increment):
(WebCore::InlineIterator::characterAt):
(WebCore::InlineIterator::direction):
* rendering/InlineTextBox.h:
(WebCore::InlineTextBox::renderer):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::updateFirstLetterStyle):
(WebCore::RenderBlock::updateFirstLetter):
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::deleteLineBoxesBeforeSimpleLineLayout):
(WebCore::isVisibleRenderText):
(WebCore::RenderBlockFlow::adjustComputedFontSizes):
(WebCore::stripTrailingSpace):
(WebCore::RenderBlockFlow::computeInlinePreferredLogicalWidths):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::createInlineBoxForRenderer):
(WebCore::dirtyLineBoxesForRenderer):
(WebCore::reachedEndOfTextRenderer):
(WebCore::RenderBlockFlow::computeInlineDirectionPositionsForSegment):
(WebCore::RenderBlockFlow::computeBlockDirectionPositionsForLine):
(WebCore::RenderBlockFlow::handleTrailingSpaces):
(WebCore::RenderBlockFlow::determineStartPosition):
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::moveChildrenTo):
* rendering/RenderElement.cpp:
(WebCore::RenderElement::hasImmediateNonWhitespaceTextChildOrBorderOrOutline):
(WebCore::RenderElement::addChild):
* rendering/RenderInline.cpp:
(WebCore::RenderInline::generateCulledLineBoxRects):
(WebCore::RenderInline::culledInlineFirstLineBox):
(WebCore::RenderInline::culledInlineLastLineBox):
(WebCore::RenderInline::culledInlineVisualOverflowBoundingBox):
(WebCore::RenderInline::dirtyLineBoxes):
* rendering/RenderInline.h:
Make borderBoundingBox() public so that call sites (here
WebRenderNode.mm) can use tighter typing and benefit from the virtual
function being final.
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::calculateClipRects):
* rendering/RenderLineBoxList.cpp:
(WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
* rendering/RenderNamedFlowThread.cpp:
(WebCore::RenderNamedFlowThread::getRanges):
* rendering/RenderRubyRun.cpp:
(WebCore::RenderRubyRun::getOverhang):
* rendering/RenderSelectionInfo.cpp:
(WebCore::RenderSelectionInfo::RenderSelectionInfo):
* rendering/RenderText.cpp:
(WebCore::isInlineFlowOrEmptyText):
(WebCore::RenderText::previousCharacter):
* rendering/RenderText.h:
(WebCore::Text::renderer):
* rendering/RenderTextFragment.h:
(isType):
* rendering/RenderTreeAsText.cpp:
(WebCore::RenderTreeAsText::writeRenderObject):
(WebCore::write):
* rendering/SimpleLineLayout.cpp:
(WebCore::SimpleLineLayout::canUseFor):
(WebCore::SimpleLineLayout::create):
* rendering/SimpleLineLayoutFunctions.cpp:
(WebCore::SimpleLineLayout::paintFlow):
(WebCore::SimpleLineLayout::hitTestFlow):
* rendering/SimpleLineLayoutResolver.h:
(WebCore::SimpleLineLayout::RunResolver::RunResolver):
* rendering/TextAutoSizing.cpp:
(WebCore::TextAutoSizingValue::addNode):
* rendering/TextAutosizer.cpp:
(WebCore::TextAutosizer::containerIsRowOfLinks):
(WebCore::TextAutosizer::measureDescendantTextWidth):
* rendering/line/BreakingContextInlineHeaders.h:
(WebCore::BreakingContext::commitLineBreakAtCurrentWidth):
(WebCore::shouldAddBorderPaddingMargin):
(WebCore::shouldSkipWhitespaceAfterStartObject):
(WebCore::BreakingContext::handleText):
(WebCore::textBeginsWithBreakablePosition):
(WebCore::BreakingContext::canBreakAtThisPosition):
Source/WebKit/mac:
* WebView/WebRenderNode.mm:
(copyRenderNode):
Source/WebKit2:
Use is<>() / downcast<>() for RenderText / RenderTextFragment.
* Shared/WebRenderObject.cpp:
(WebKit::WebRenderObject::WebRenderObject):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174403
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jer.noble@apple.com [Tue, 7 Oct 2014 19:11:53 +0000 (19:11 +0000)]
[Media] Expose AudioTracks in the "captions" menu.
https://bugs.webkit.org/show_bug.cgi?id=137472
Reviewed by Brent Fulgham.
Source/WebCore:
Test: media/video-controls-audiotracks-trackmenu.html
If more than one AudioTrack is present in the video element, add those tracks to the
captions menu:
* English.lproj/mediaControlsLocalizedStrings.js:
* Modules/mediacontrols/mediaControlsApple.js:
(Controller.prototype.addVideoListeners):
(Controller.prototype.removeVideoListeners):
(Controller.prototype.handleAudioTrackChange):
(Controller.prototype.handleAudioTrackAdd):
(Controller.prototype.handleAudioTrackRemove):
(Controller.prototype.updateCaptionButton):
(Controller.prototype.buildCaptionMenu):
(Controller.prototype.handleCaptionItemKeyUp):
(Controller.prototype.audioTrackItemSelected):
(Controller.prototype.focusSiblingAudioTrackItem):
(Controller.prototype.handleAudioTrackItemKeyUp):
Add support to MediaControlHost for retrieving the sorted audio track list, and the
localized names for every audio track:
* Modules/mediacontrols/MediaControlsHost.cpp:
(WebCore::MediaControlsHost::sortedTrackListForMenu):
(WebCore::MediaControlsHost::displayNameForTrack):
* Modules/mediacontrols/MediaControlsHost.h:
* Modules/mediacontrols/MediaControlsHost.idl:
* page/CaptionUserPreferences.cpp:
(WebCore::trackDisplayName):
(WebCore::CaptionUserPreferences::displayNameForTrack):
(WebCore::CaptionUserPreferences::sortedTrackListForMenu):
* page/CaptionUserPreferences.h:
* platform/LocalizedStrings.cpp:
(WebCore::audioTrackNoLabelText):
* platform/LocalizedStrings.h:
* platform/efl/LocalizedStringsEfl.cpp:
(WebCore::audioTrackNoLabelText):
* platform/gtk/LocalizedStringsGtk.cpp:
(WebCore::audioTrackNoLabelText):
Drive-by fix; do not recurse into AudioTrackPrivate->setEnabled() when the enabled
state changes.
* html/track/AudioTrack.cpp:
(WebCore::AudioTrack::enabledChanged):
Fix possible out-of-bounds Vector access when adding tracks to a track list by
sorting the list at insert time, rather than inserting into the track's reported
position in the Vector:
* html/track/AudioTrackList.cpp:
(AudioTrackList::append):
* html/track/VideoTrackList.cpp:
(VideoTrackList::append):
Correctly report the trackIndex of audio and video tracks from AVFoundation:
* platform/graphics/avfoundation/AudioTrackPrivateAVF.h:
(WebCore::AudioTrackPrivateAVF::trackIndex):
(WebCore::AudioTrackPrivateAVF::setTrackIndex):
(WebCore::AudioTrackPrivateAVF::AudioTrackPrivateAVF):
* platform/graphics/avfoundation/VideoTrackPrivateAVF.h:
(WebCore::VideoTrackPrivateAVF::trackIndex):
(WebCore::VideoTrackPrivateAVF::setTrackIndex):
(WebCore::VideoTrackPrivateAVF::VideoTrackPrivateAVF):
* platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.mm:
(WebCore::AudioTrackPrivateAVFObjC::resetPropertiesFromTrack):
* platform/graphics/avfoundation/objc/VideoTrackPrivateAVFObjC.cpp:
(WebCore::VideoTrackPrivateAVFObjC::resetPropertiesFromTrack):
LayoutTests:
* media/content/audio-tracks.mp4: Added.
* media/content/audio-tracks.ogg: Added.
* media/content/audio-tracks.webm: Added.
* media/video-controls-audiotracks-trackmenu-expected.txt: Added.
* media/video-controls-audiotracks-trackmenu.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174402
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver@apple.com [Tue, 7 Oct 2014 18:57:57 +0000 (18:57 +0000)]
Remove op_new_captured_func
https://bugs.webkit.org/show_bug.cgi?id=137491
Reviewed by Mark Lam.
Removes the op_captured_new_func opcode as part of the work
towards having any magical opcodes that write directly to
named "registers" and then have a follow on op to ensure that
the environment record correctly represents the stack state.
For this we add a non-captured scratch register so we don't
have to have any kind of magic opcode, and instead simply
have sensible creation and move semantics for capturing new
functions.
* bytecode/BytecodeList.json:
* bytecode/BytecodeUseDef.h:
(JSC::computeUsesForBytecodeOffset):
(JSC::computeDefsForBytecodeOffset):
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::dumpBytecode):
(JSC::CodeBlock::CodeBlock):
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::emitNewFunction):
(JSC::BytecodeGenerator::emitLazyNewFunction):
(JSC::BytecodeGenerator::emitNewFunctionInternal):
* bytecompiler/BytecodeGenerator.h:
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGCapabilities.cpp:
(JSC::DFG::capabilityLevel):
* jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):
* jit/JIT.h:
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_new_captured_func): Deleted.
* llint/LowLevelInterpreter32_64.asm:
* llint/LowLevelInterpreter64.asm:
* runtime/CommonSlowPaths.cpp:
(JSC::SLOW_PATH_DECL): Deleted.
* runtime/CommonSlowPaths.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174401
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Tue, 7 Oct 2014 18:41:49 +0000 (18:41 +0000)]
[WK2] Use is<>() / downcast<>() for DrawingAreaProxy subclasses
https://bugs.webkit.org/show_bug.cgi?id=137477
Reviewed by Andreas Kling.
Source/WebCore:
Include TypeCastsCF.h now that the header was renamed.
No new tests, no behavior change.
* platform/cf/SharedBufferCF.cpp:
Source/WebKit2:
Use is<>() / downcast<>() for DrawingAreaProxy subclasses.
* Shared/cf/KeyedDecoder.cpp:
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _didCommitLoadForMainFrame]):
(-[WKWebView _restorePageStateToExposedRect:scale:]):
(-[WKWebView _restorePageStateToUnobscuredCenter:scale:]):
* UIProcess/Cocoa/WebPageProxyCocoa.mm:
* UIProcess/DrawingAreaProxy.h:
* UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:
(WebKit::RemoteScrollingCoordinatorProxy::layerTreeHost):
* UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::updateVisibleContentRects):
(WebKit::WebPageProxy::dynamicViewportUpdateChangedTarget):
* UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
(WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID):
* UIProcess/mac/LegacySessionStateCoding.cpp:
* UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
* UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
Source/WTF:
Rename wtf/cf/TypeCasts.h to wtf/cf/TypeCastsCF.h to avoid conflict
with wtf/TypeCasts.h. They were using the same #ifndef guard and it
was causing problems when both were included in the same context.
* WTF.xcodeproj/project.pbxproj:
* wtf/cf/TypeCastsCF.h: Renamed from Source/WTF/wtf/cf/TypeCasts.h.
(WTF::dynamic_cf_cast):
(WTF::checked_cf_cast):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174400
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 7 Oct 2014 17:15:40 +0000 (17:15 +0000)]
Try to fix the Mountain Lion build.
* wtf/text/StringView.h:
(WTF::StringView::underlyingStringIsValid):
(WTF::StringView::setUnderlyingString):
(WTF::StringView::invalidate):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174399
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 7 Oct 2014 16:36:00 +0000 (16:36 +0000)]
Use "1", not "true".
* wtf/text/StringView.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174398
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 7 Oct 2014 16:20:35 +0000 (16:20 +0000)]
Temporarily disable the StringView lifetime checking.
* wtf/text/StringView.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174397
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Tue, 7 Oct 2014 16:12:02 +0000 (16:12 +0000)]
[GTK] jhbuild modules should build xserver with the --without-dtrace option.
https://bugs.webkit.org/show_bug.cgi?id=137482
Patch by Youenn Fablet <youenn.fablet@crf.canon.fr> on 2014-10-07
Reviewed by Martin Robinson.
* gtk/jhbuild.modules: Added --without-dtrace option to xserver jhbuild.modules config.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174396
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 7 Oct 2014 16:06:53 +0000 (16:06 +0000)]
Another build fix attempt.
* wtf/text/StringView.cpp:
(WTF::StringView::UnderlyingString::UnderlyingString):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174395
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
carlosgc@webkit.org [Tue, 7 Oct 2014 15:49:07 +0000 (15:49 +0000)]
[SOUP] TLS errors should take precedence over HTTP authentication
https://bugs.webkit.org/show_bug.cgi?id=137300
Reviewed by Sergio Villar Senin.
Source/WebCore:
Handle TLS errors in got-headers callback to make sure it happens
before starting the authentication process.
* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::handleUnignoredTLSErrors): Refactored to receive the
soup message.
(WebCore::gotHeadersCallback): Return early and cancel the request in case of TLS errors.
(WebCore::sendRequestCallback): Do not handle TLS errors here, the request should have already been
cancelled at this point in case of TLS errors.
Tools:
Add a test case to check that authenticate signal is not emitted
in case of TLS errors, and the load fails instead.
* TestWebKitAPI/Tests/WebKit2Gtk/TestSSL.cpp:
(webViewAuthenticationCallback):
(testTLSErrorsHTTPAuth):
(httpsServerCallback):
(beforeAll):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174394
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Tue, 7 Oct 2014 15:47:15 +0000 (15:47 +0000)]
Try to fix the Windows build.
* wtf/text/StringView.cpp:
(WTF::StringView::UnderlyingString::UnderlyingString):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174393
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aestes@apple.com [Tue, 7 Oct 2014 07:06:27 +0000 (07:06 +0000)]
Fix a warning when passing an NSInteger to abs().
https://bugs.webkit.org/show_bug.cgi?id=137480
Reviewed by Mark Rowe.
Use std::abs() instead, which is overloaded for both long (a.k.a. NSInteger) and int.
* platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.mm:
(WebCore::CDMSessionMediaSourceAVFObjC::layerDidReceiveError):
(WebCore::CDMSessionMediaSourceAVFObjC::rendererDidReceiveError):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174389
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Tue, 7 Oct 2014 06:58:41 +0000 (06:58 +0000)]
Make StringView check the lifetime of the StringImpl it's created from
https://bugs.webkit.org/show_bug.cgi?id=137202
Reviewed by Anders Carlsson.
Source/WebCore:
* platform/graphics/TextRun.cpp: Update since TextRun's definition now
uses a StringView.
Source/WTF:
* WTF.vcxproj/WTF.vcxproj: Added StringView.cpp.
* WTF.vcxproj/WTF.vcxproj.filters: Added StringView.cpp.
* WTF.xcodeproj/project.pbxproj: Added StringView.cpp.
* wtf/CMakeLists.txt: Added StringView.cpp.
* wtf/text/StringImpl.cpp:
(WTF::StringImpl::~StringImpl): Call StringView::invalidate.
* wtf/text/StringView.cpp: Added.
(WTF::underlyingStrings): Returns map from StringImpl to the underlying
string object used by StringView to track validity.
(WTF::StringView::invalidate): Mark the underlying string object invalid,
and remove it from the map, so any future StringImpl will get a new one,
even if it has the same pointer.
(WTF::StringView::underlyingStringIsValid): Return true only if the
underlying string is still valid.
(WTF::StringView::setUnderlyingString): Create and manage reference counts
of underlying string objects as needed.
* wtf/text/StringView.h: Moved function bodies out of the class definition,
so we can now read a clean class definition to see the class design and what
functions it offers.
(WTF::StringView::StringView): Added a comment to the default constructor.
Also added copy and move constructors so they can call setUnderlyingString
and assert the underlying string is valid as needed, replacing the
compiler-generated ones.
(WTF::StringView::~StringView): Added a call to setUnderlyingString.
(WTF::StringView::operator=): Added these assignment operators with the same
job as the constructors above.
(WTF::StringView::initialize): Added a comment.
(WTF::StringView::characters8): Added an assertion that the underlying
string is valid.
(WTF::StringView::characters16): Ditto.
(WTF::StringView::substring): Added code to propagate the underlying string
from the original string to the substring.
(WTF::StringView::invalidate): Inline empty version of this function for
non-debug builds.
(WTF::StringView::underlyingStringIsValid): Ditto.
(WTF::StringView::setUnderlyingString): Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174388
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vivek.vg@samsung.com [Tue, 7 Oct 2014 06:54:48 +0000 (06:54 +0000)]
Remove unused warning in WebPageOverlay
https://bugs.webkit.org/show_bug.cgi?id=137444
Reviewed by Darin Adler.
Commenting the unused parameter to supress the warning.
* WebProcess/WebPage/WebPageOverlay.h:
(WebKit::WebPageOverlay::Client::copyAccessibilityAttributeStringValueForPoint):
(WebKit::WebPageOverlay::Client::copyAccessibilityAttributeBoolValueForPoint):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174387
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aestes@apple.com [Tue, 7 Oct 2014 06:19:57 +0000 (06:19 +0000)]
Objective-C objects must be fully defined when used in a WTF::Vector
https://bugs.webkit.org/show_bug.cgi?id=137479
Reviewed by Mark Rowe.
When compiling an Objective-C++ file under ARC, @class types are considered non-trivially destructable, so
Vector needs to see their definition in order to call their destructor.
See <http://clang.llvm.org/docs/AutomaticReferenceCounting.html#ownership-qualified-fields-of-structs-and-unions> for details.
* API/ObjcRuntimeExtras.h: Imported <objc/Protocol.h>.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174386
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Tue, 7 Oct 2014 05:26:20 +0000 (05:26 +0000)]
Make webkit-patch find-users useful
https://bugs.webkit.org/show_bug.cgi?id=137475
Reviewed by Alexey Proskuryakov.
Make find-users use the CommitterList instead of accessing Bugzilla.
This essentially exposes the same functionality as webkitbot's whois command.
* Scripts/webkitpy/tool/commands/findusers.py:
(FindUsers.execute):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174385
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adachan@apple.com [Tue, 7 Oct 2014 04:42:01 +0000 (04:42 +0000)]
Call WKPageUIClient::isPlayingAudioDidChange() whenever audio starts/stops playing on a page.
https://bugs.webkit.org/show_bug.cgi?id=137050
Reviewed by Anders Carlsson.
Implement WebChromeClient::isPlayingAudioDidChange() which sends the new isPlayingAudio state
over to the UI process. WebPageProxy caches the isPlayingAudio state, and when that changes,
it calls WKPageUIClient::isPlayingAudioDidChange().
* UIProcess/API/APIUIClient.h:
(API::UIClient::isPlayingAudioDidChange):
* UIProcess/API/C/WKPage.cpp:
(WKPageSetPageUIClient):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::isPlayingAudioDidChange):
* UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::isPlayingAudio):
* UIProcess/WebPageProxy.messages.in:
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::isPlayingAudioDidChange):
* WebProcess/WebCoreSupport/WebChromeClient.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174384
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aestes@apple.com [Tue, 7 Oct 2014 03:32:55 +0000 (03:32 +0000)]
[iOS] Fix remaining misuses of abs() and fabsf()
https://bugs.webkit.org/show_bug.cgi?id=130947
Reviewed by Simon Fraser.
Fixed issues found when compiling with -Wabsolute-value.
* platform/ios/ScrollAnimatorIOS.mm:
(WebCore::ScrollAnimatorIOS::handleTouchEvent): Called abs() instead of fabsf for integral types. Explicitly
cast the divisor to float in the call to atanf().
* platform/ios/wak/WKView.mm:
(_WKViewAutoresizeCoord): Explicitly cast origMarginsTotal to an int before calling abs(). Added a FIXME
indicating the strange behavior when origMarginsTotal is in the range (0, 1) (as pointed out by Darin).
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174383
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Tue, 7 Oct 2014 03:28:32 +0000 (03:28 +0000)]
CanvasPattern always has an internal WebCore::Pattern.
<https://webkit.org/b/137456>
Use more Ref & PassRef for CanvasPattern and Pattern.
Removed some impossible null checks in GraphicsContext that
got exposed as compile errors with these changes.
Reviewed by Anders Carlsson.
* html/canvas/CanvasPattern.h:
(WebCore::CanvasPattern::pattern):
* platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::setStrokePattern):
(WebCore::GraphicsContext::setFillPattern):
* platform/graphics/GraphicsContext.h:
* platform/graphics/Pattern.cpp:
(WebCore::Pattern::create):
* platform/graphics/Pattern.h:
* platform/graphics/filters/FETile.cpp:
(WebCore::FETile::platformApplySoftware):
* rendering/svg/RenderSVGPath.cpp:
(WebCore::useStrokeStyleToFill):
* rendering/svg/RenderSVGResourcePattern.cpp:
(WebCore::RenderSVGResourcePattern::applyResource):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174382
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Tue, 7 Oct 2014 03:10:05 +0000 (03:10 +0000)]
[Win] Use of 1-bit Enum type behaves improperly
https://bugs.webkit.org/show_bug.cgi?id=137471
<rdar://problem/
18559172>
Reviewed by Mark Lam.
Represent 1-bit enum element as 'unsigned', as we have done elsewhere
in WebKit to avoid problems when building with MSVC.
* debugger/Debugger.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174381
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
gyuyoung.kim@samsung.com [Tue, 7 Oct 2014 02:33:20 +0000 (02:33 +0000)]
[EFL] Restore previous scroll position using restoreViewState()
https://bugs.webkit.org/show_bug.cgi?id=136999
Reviewed by Benjamin Poulain.
There are duplicating code paths to restore previous scroll position and scale factor in
HistoryController::restoreScrollPositionAndViewState. EFL port has processed the two code paths.
It causes wrong rendering update or scroll position change when previous page's scroll position
is restored. Thus EFL port begins to use restoreViewState() to restore scroll position and scale factor.
This patch is first step to support it.
Additionally EFL port has supported to use ScrollingCoordinatorCoordinatedGraphics::requestScrollPositionUpdate()
since r173785. So EFL port can use the requestScrollPositionUpdate() to restore scroll position on previous page
instead of delegatedScrollRequested(). However setScrollPosition() can't be used there for now, because iOS port
should call it when delegatesScrolling is disabled. On the other hand, EFL port supports it only when delegatesScrolling
is enabled.
Source/WebCore:
Test covered by WKViewRestoreZoomAndScrollBackForward API test.
* loader/HistoryController.cpp:
(WebCore::HistoryController::restoreScrollPositionAndViewState):
EFL port only calls restoreViewState() to restore previous page's view state.
* page/Page.cpp:
(WebCore::Page::setPageScaleFactor):
Source/WebKit2:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::saveViewStateToItem):
Move iOS saveViewStateToItem() to common place in order to share iOS implementation with EFL port.
(WebKit::WebFrameLoaderClient::restoreViewState):
EFL begins to share restoreViewState() of iOS, thus move iOS restoreViewState() to common place.
* WebProcess/WebCoreSupport/ios/WebFrameLoaderClientIOS.mm:
(WebKit::WebFrameLoaderClient::saveViewStateToItem): Deleted.
(WebKit::WebFrameLoaderClient::restoreViewState): Deleted.
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/efl/WebPageEfl.cpp:
(WebKit::WebPage::restorePageState):
Call scalePage() to update previous scaleFactor and scrollPosition of historyItem both to WebProcess and UIProcess.
(WebKit::WebPage::savePageState):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174380
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
benjamin@webkit.org [Tue, 7 Oct 2014 01:55:17 +0000 (01:55 +0000)]
Web Inspector: Highlighted selectors in Rules sidebar break with selectors that contain nested selector lists
https://bugs.webkit.org/show_bug.cgi?id=137378
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-10-06
Reviewed by Joseph Pecoraro.
We should not update the parser's selectorRange when matching a nested selector list.
To implement this with low risk of unbalanced start+end and good error recovery,
I have wrapped the parsing of selector_list between a start/end function at the grammar
level. Whenever the parser enter a nested selector list, m_nestedSelectorLevel goes up
by one. Any time the parsing is currently in a nested selector list, we never update
the selector ranges.
* css/CSSGrammar.y.in:
* css/CSSParser.cpp:
(WebCore::CSSParser::CSSParser):
(WebCore::CSSParser::markSelectorStart):
(WebCore::CSSParser::markSelectorEnd):
* css/CSSParser.h:
(WebCore::CSSParser::startNestedSelectorList):
(WebCore::CSSParser::endNestedSelectorList):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174379
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
roger_fong@apple.com [Tue, 7 Oct 2014 01:16:47 +0000 (01:16 +0000)]
[Windows] Build fix for EWS bots.
* WebCore.vcxproj/WebCoreGenerated.make: Make sure we always regenerate WebCore derived sources.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174378
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Tue, 7 Oct 2014 01:15:19 +0000 (01:15 +0000)]
[Win] DateMath's calculateUTFOffset does not account for DST.
https://bugs.webkit.org/show_bug.cgi?id=137458
<rdar://problem/
18559172>
Reviewed by Geoffrey Garen.
Check the return value of GetTimeZoneInformation and use the
proper bias against UTC (depending on whether we are in daylight
savings time, or standard time).
Also, handle possible error cases in the FileTimeToSystemTime
and SystemTimeToTzSpecificLocalTime, rather than using potentially
uninitialized values.
* wtf/DateMath.cpp:
(WTF::calculateUTCOffset): Use proper daylight-savings-time state.
(WTF::calculateDSTOffset): Avoid uninitialized data due to failing
API calls.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174377
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cfleizach@apple.com [Tue, 7 Oct 2014 01:10:04 +0000 (01:10 +0000)]
AX: iOS8: Crash at -[WebAccessibilityObjectWrapper accessibilityElementAtIndex:]
https://bugs.webkit.org/show_bug.cgi?id=137289
Unreviewed build fix.
* DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
(AccessibilityUIElement::getChildrenWithRange):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174376
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Tue, 7 Oct 2014 00:26:25 +0000 (00:26 +0000)]
Add is<>() / downcast<>() support for RenderObject subclasses
https://bugs.webkit.org/show_bug.cgi?id=137424
Reviewed by Benjamin Poulain.
Source/WebCore:
Add is<>() / downcast<>() support for RenderObject subclasses, and
get rid of IsRendererOfType traits struct as we can now rely on the
TypeCastsTraits instead.
toRender*() is still supported for most render objects because I did
not want to remove all usages in this patch, to keep the size small.
For now, only the MathML render objects were ported over to using
is<>() / downcast<>(). Other render objects will be taken care of in
follow-up patches and I will drop support for toRender*()
incrementally.
No new tests, no behavior change.
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::isMathFenceOperator):
(WebCore::AccessibilityRenderObject::isMathSeparatorOperator):
(WebCore::AccessibilityRenderObject::mathLineThickness):
* dom/make_names.pl:
(printTypeHelpers):
* mathml/MathMLInlineContainerElement.cpp:
(WebCore::MathMLInlineContainerElement::childrenChanged):
* mathml/MathMLTextElement.cpp:
(WebCore::MathMLTextElement::didAttachRenderers):
(WebCore::MathMLTextElement::childrenChanged):
* rendering/RenderAncestorIterator.h:
(WebCore::lineageOfType):
* rendering/RenderBlock.h:
* rendering/RenderBlockFlow.h:
* rendering/RenderBox.h:
* rendering/RenderBoxModelObject.h:
* rendering/RenderButton.h:
* rendering/RenderCombineText.h:
* rendering/RenderCounter.h:
* rendering/RenderDetailsMarker.h:
* rendering/RenderElement.h:
* rendering/RenderEmbeddedObject.h:
* rendering/RenderFieldset.h:
* rendering/RenderFileUploadControl.h:
* rendering/RenderFlexibleBox.h:
* rendering/RenderFlowThread.h:
* rendering/RenderFrame.h:
* rendering/RenderFrameSet.h:
* rendering/RenderFullScreen.h:
* rendering/RenderGrid.h:
* rendering/RenderHTMLCanvas.h:
* rendering/RenderIFrame.h:
* rendering/RenderImage.h:
* rendering/RenderInline.h:
* rendering/RenderIterator.h:
(WebCore::isRendererOfType):
(WebCore::RenderTraversal::firstChild):
(WebCore::RenderTraversal::lastChild):
(WebCore::RenderTraversal::nextSibling):
(WebCore::RenderTraversal::previousSibling):
(WebCore::RenderTraversal::findAncestorOfType):
* rendering/RenderLayerModelObject.h:
* rendering/RenderLineBreak.h:
* rendering/RenderListBox.h:
* rendering/RenderListItem.h:
* rendering/RenderListMarker.h:
* rendering/RenderMedia.h:
* rendering/RenderMenuList.h:
* rendering/RenderMeter.h:
* rendering/RenderMultiColumnFlowThread.h:
* rendering/RenderMultiColumnSet.h:
* rendering/RenderMultiColumnSpannerPlaceholder.h:
* rendering/RenderNamedFlowFragment.h:
* rendering/RenderNamedFlowThread.h:
* rendering/RenderObject.h:
(WebCore::RenderObject>): Deleted.
* rendering/RenderProgress.h:
* rendering/RenderQuote.h:
* rendering/RenderRegion.h:
* rendering/RenderReplaced.h:
* rendering/RenderRubyRun.h:
* rendering/RenderScrollbarPart.h:
* rendering/RenderSearchField.h:
* rendering/RenderSlider.h:
* rendering/RenderSnapshottedPlugIn.h:
* rendering/RenderTable.h:
* rendering/RenderTableCaption.h:
* rendering/RenderTableCell.h:
* rendering/RenderTableCol.h:
* rendering/RenderTableRow.h:
* rendering/RenderTableSection.h:
* rendering/RenderText.h:
* rendering/RenderTextControl.h:
* rendering/RenderTextControlMultiLine.h:
* rendering/RenderTextControlSingleLine.h:
* rendering/RenderTextFragment.h:
* rendering/RenderVideo.h:
* rendering/RenderView.h:
* rendering/RenderWidget.h:
* rendering/mathml/RenderMathMLBlock.h:
* rendering/mathml/RenderMathMLFenced.cpp:
(WebCore::RenderMathMLFenced::updateFromElement):
* rendering/mathml/RenderMathMLFraction.cpp:
(WebCore::RenderMathMLFraction::unembellishedOperator):
* rendering/mathml/RenderMathMLFraction.h:
* rendering/mathml/RenderMathMLOperator.h:
* rendering/mathml/RenderMathMLRadicalOperator.h:
* rendering/mathml/RenderMathMLRoot.cpp:
(WebCore::RenderMathMLRoot::baseWrapper):
(WebCore::RenderMathMLRoot::radicalWrapper):
(WebCore::RenderMathMLRoot::indexWrapper):
(WebCore::RenderMathMLRoot::radicalOperator):
(WebCore::RenderMathMLRootWrapper::removeChild):
* rendering/mathml/RenderMathMLRoot.h:
* rendering/mathml/RenderMathMLRow.cpp:
(WebCore::RenderMathMLRow::updateOperatorProperties):
(WebCore::RenderMathMLRow::layout):
* rendering/mathml/RenderMathMLRow.h:
* rendering/mathml/RenderMathMLScripts.cpp:
(WebCore::RenderMathMLScripts::addChildInternal):
(WebCore::RenderMathMLScripts::removeChildInternal):
(WebCore::RenderMathMLScripts::unembellishedOperator):
(WebCore::RenderMathMLScripts::layout):
(WebCore::RenderMathMLScriptsWrapper::addChildInternal):
(WebCore::RenderMathMLScriptsWrapper::addChild):
(WebCore::RenderMathMLScriptsWrapper::removeChildInternal):
(WebCore::RenderMathMLScriptsWrapper::removeChild):
* rendering/mathml/RenderMathMLScripts.h:
* rendering/mathml/RenderMathMLSpace.h:
* rendering/mathml/RenderMathMLSquareRoot.h:
* rendering/mathml/RenderMathMLToken.h:
* rendering/mathml/RenderMathMLUnderOver.cpp:
(WebCore::RenderMathMLUnderOver::unembellishedOperator):
* rendering/svg/RenderSVGContainer.h:
* rendering/svg/RenderSVGGradientStop.h:
* rendering/svg/RenderSVGImage.h:
* rendering/svg/RenderSVGInlineText.h:
* rendering/svg/RenderSVGModelObject.h:
* rendering/svg/RenderSVGPath.h:
* rendering/svg/RenderSVGResourceContainer.h:
* rendering/svg/RenderSVGResourceFilter.h:
* rendering/svg/RenderSVGRoot.h:
* rendering/svg/RenderSVGShape.h:
* rendering/svg/RenderSVGText.h:
* rendering/svg/RenderSVGTextPath.h:
* rendering/svg/RenderSVGViewportContainer.h:
Source/WTF:
Handle correctly calling TypeCastTraits<ExpectedType, ArgType>::isOfType(ArgType&)
with ExpectedType being a base class of ArgType (or the same as ArgType). The
previous template specialization was only meant to support the case where
ExpectedType is the same as ArgType but even that wasn't working as the compiler
would complain about ambiguous partial specializations. Since this is needed by
RenderTraversal functions, this patch adds an extra isBaseType template parameter
to TypeCastTraits to resolve the ambiguity and relies on std::is_base_of for the
detection.
* wtf/TypeCasts.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174375
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Tue, 7 Oct 2014 00:15:07 +0000 (00:15 +0000)]
Use is<>() / downcast<>() for ScrollingTreeNode subclasses
https://bugs.webkit.org/show_bug.cgi?id=137451
Reviewed by Tim Horton.
Use is<>() / downcast<>() for ScrollingTreeNode subclasses.
No new tests, no behavior change.
* page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::handleWheelEvent):
(WebCore::ScrollingTree::viewportChangedViaDelegatedScrolling):
(WebCore::ScrollingTree::scrollPositionChangedViaDelegatedScrolling):
* page/scrolling/ScrollingTreeFrameScrollingNode.h:
* page/scrolling/ScrollingTreeNode.h:
* page/scrolling/ScrollingTreeOverflowScrollingNode.h:
* page/scrolling/ScrollingTreeScrollingNode.h:
* page/scrolling/mac/ScrollingTreeFixedNode.h:
* page/scrolling/mac/ScrollingTreeStickyNode.h:
* page/scrolling/mac/ScrollingTreeStickyNode.mm:
(WebCore::ScrollingTreeStickyNode::updateLayersAfterAncestorChange):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174374
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mmaxfield@apple.com [Mon, 6 Oct 2014 23:54:27 +0000 (23:54 +0000)]
Addressing post-review comment on r174297.
https://bugs.webkit.org/show_bug.cgi?id=137355
Unreviewed.
* rendering/RenderText.cpp:
(WebCore::RenderText::stringView):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174373
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mmaxfield@apple.com [Mon, 6 Oct 2014 22:44:33 +0000 (22:44 +0000)]
Unreviewed merge fix for r174279.
https://bugs.webkit.org/show_bug.cgi?id=137097
* svg/SVGToOTFFontConversion.cpp:
(WebCore::SVGToOTFFontConverter::convertSVGToOTFFont):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174372
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mark.lam@apple.com [Mon, 6 Oct 2014 22:17:09 +0000 (22:17 +0000)]
Fixed compiler warnings on Windows build.
<https://webkit.org/b/135205>
Reviewed by Geoffrey Garen.
Benchmarking with jsc shows that perf is neutral with this change.
* assembler/MacroAssemblerX86_64.h:
(JSC::MacroAssemblerX86_64::call):
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::CodeBlock):
* dfg/DFGArgumentPosition.h:
(JSC::DFG::ArgumentPosition::mergeShouldNeverUnbox):
(JSC::DFG::ArgumentPosition::mergeArgumentUnboxingAwareness):
* dfg/DFGEdge.h:
(JSC::DFG::Edge::makeWord):
* dfg/DFGNodeFlags.h:
(JSC::DFG::nodeMayOverflow):
(JSC::DFG::nodeMayNegZero):
* dfg/DFGOSRExitCompilerCommon.cpp:
(JSC::DFG::reifyInlinedCallFrames):
* dfg/DFGVariableAccessData.cpp:
(JSC::DFG::VariableAccessData::mergeIsCaptured):
* dfg/DFGVariableAccessData.h:
(JSC::DFG::VariableAccessData::mergeIsProfitableToUnbox):
(JSC::DFG::VariableAccessData::mergeStructureCheckHoistingFailed):
(JSC::DFG::VariableAccessData::mergeCheckArrayHoistingFailed):
(JSC::DFG::VariableAccessData::mergeIsArgumentsAlias):
(JSC::DFG::VariableAccessData::mergeIsLoadedFrom):
* runtime/JSDataViewPrototype.cpp:
(JSC::getData):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174371
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Mon, 6 Oct 2014 22:07:33 +0000 (22:07 +0000)]
REGRESSION (Simple Line Layout): Inline block baselines computed incorrectly
https://bugs.webkit.org/show_bug.cgi?id=137461
Reviewed by Simon Fraser.
Source/WebCore:
Added fast/inline-block/simple-line-layout.html
* rendering/SimpleLineLayoutFunctions.h:
(WebCore::SimpleLineLayout::computeFlowFirstLineBaseline):
(WebCore::SimpleLineLayout::computeFlowLastLineBaseline):
Fix the baseline computation functions in simple line layout to
use lineCount rather than runCount.
LayoutTests:
* fast/inline-block/simple-line-layout-expected.html: Added.
* fast/inline-block/simple-line-layout.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174370
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Mon, 6 Oct 2014 22:07:24 +0000 (22:07 +0000)]
[Mac] We are spending too much time serializing ProtectionSpace objects
https://bugs.webkit.org/show_bug.cgi?id=137367
Reviewed by Dan Bernstein.
When profiling the load of nytimes.com, I noticed that we were spending
a lot of CPU time serializing ProtectionSpace objects (in particular
the NSURLProtectionSpace platform data):
- 5.6% of CPU time for Network Process
- 2.5% of CPU time for WebProcess
Serializing an NSURLProtectionSpace seems to be costly due to server
trust verification. We do this for every sub-resource load over HTTPS
due to the canAuthenticateAgainstProtectionSpace() callback for server
trust validation, from the NetworkProcess to the WebProcess and then to
the UIProcess.
This patch adds a WKContextSetCanHandleHTTPSServerTrustEvaluation(bool)
WK2 private API that the client can call to indicate that it cannot
handle HTTPS server trust evaluation and that it is thus unnecessary to
call the canAuthenticateAgainstProtectionSpace() callback for such
evaluations. This reduces the amount of IPC between the process and
thus the number of times we have to serialize the ProtectionSpace.
In the case of the nytimes.com load, there is no longer any
ProtectionSpace serialization happening as
canAuthenticateAgainstProtectionSpace() was only called for HTTPS
server trust evaluation.
* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::NetworkProcess):
(WebKit::NetworkProcess::initializeNetworkProcess):
(WebKit::NetworkProcess::setCanHandleHTTPSServerTrustEvaluation):
* NetworkProcess/NetworkProcess.h:
(WebKit::NetworkProcess::canHandleHTTPSServerTrustEvaluation):
* NetworkProcess/NetworkProcess.messages.in:
* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpaceAsync):
* Shared/Network/NetworkProcessCreationParameters.cpp:
(WebKit::NetworkProcessCreationParameters::encode):
(WebKit::NetworkProcessCreationParameters::decode):
* Shared/Network/NetworkProcessCreationParameters.h:
* UIProcess/API/C/WKContext.cpp:
(WKContextSetCanHandleHTTPSServerTrustEvaluation):
* UIProcess/API/C/WKContextPrivate.h:
* UIProcess/API/Cocoa/WKProcessPool.mm:
(-[WKProcessPool _setCanHandleHTTPSServerTrustEvaluation:]):
* UIProcess/API/Cocoa/WKProcessPoolPrivate.h:
* UIProcess/WebContext.cpp:
(WebKit::WebContext::WebContext):
(WebKit::WebContext::ensureNetworkProcess):
(WebKit::WebContext::setCanHandleHTTPSServerTrustEvaluation):
* UIProcess/WebContext.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174369
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Mon, 6 Oct 2014 21:53:21 +0000 (21:53 +0000)]
[Win] Unreviewed 64-bit build fix after r174315.
* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Update exports for
64-bit symbol names.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174368
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Mon, 6 Oct 2014 21:52:42 +0000 (21:52 +0000)]
Don't attempt to paint into zero-sized backing store
https://bugs.webkit.org/show_bug.cgi?id=137465
Reviewed by Tim Horton.
Page scale could cause the backing store for a small composited element to become empty,
in which case we'd try to allocate, and paint into a graphics context with no surface
behind it.
Fix by bailing from RemoteLayerBackingStore::display() when checking the backing store
size after accounting for scale.
* Shared/mac/RemoteLayerBackingStore.h:
* Shared/mac/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::backingStoreSize):
(WebKit::RemoteLayerBackingStore::swapToValidFrontBuffer):
(WebKit::RemoteLayerBackingStore::display):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174367
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Mon, 6 Oct 2014 21:37:28 +0000 (21:37 +0000)]
build.webkit.org/dashboard: Add commit queue
https://bugs.webkit.org/show_bug.cgi?id=137462
Reviewed by Tim Horton.
Generalizes EWS into "bubble queue", which also includes commit queue and style queue.
Style queue is still invisible, as it doesn't have an associated platform, and also
we never have problems with it anyway, so it's not worth watching.
The UI now allows for adding more bots to the Other column (such as leaks bot).
To make that actually happen, we'll need to refactor QueueView, allowing for multiple
sources of data in a cell.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueue.js: Copied from Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/EWSQueue.js.
(BubbleQueue):
(BubbleQueue.prototype.get statusPageURL):
(BubbleQueue.prototype.update):
(BubbleQueue.prototype.loadDetailedStatus):
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js: Copied from Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/EWS.js.
(BubbleQueueServer):
(BubbleQueueServer.prototype.jsonQueueLengthURL):
(BubbleQueueServer.prototype.jsonQueueStatusURL):
(BubbleQueueServer.prototype.queueStatusURL):
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueView.js: Copied from Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/EWSQueueView.js.
(BubbleQueueView):
(BubbleQueueView.prototype.update.appendQueue):
(BubbleQueueView.prototype.update):
(BubbleQueueView.prototype._addQueueHeadingToPopover):
(BubbleQueueView.prototype._popoverContentForBubbleQueue):
(BubbleQueueView.prototype._presentPopoverForBubbleQueue):
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/EWS.js: Removed.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/EWSQueue.js: Removed.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/EWSQueueView.js: Removed.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Initialization.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/QueueView.css:
(.bubble-server-popover .popover-queue-heading .queue-charts-link):
(.bubble-server-popover .latest-status-no-link):
(.bubble-server-popover .bot-status-description):
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/index.html:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/MetricsMain.js:
(buildAggregateTable):
(buildQueuesTable):
Removed dysfunctional support for EWS for now. It will be different.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174366
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adachan@apple.com [Mon, 6 Oct 2014 21:36:31 +0000 (21:36 +0000)]
Add ChromeClient::isPlayingAudioDidChange().
https://bugs.webkit.org/show_bug.cgi?id=137220
Reviewed by Jer Noble.
This is called when the Page's m_isPlayingAudio changes.
No new tests, no behavior change.
* page/ChromeClient.h:
(WebCore::ChromeClient::isPlayingAudioDidChange):
* page/Page.cpp:
(WebCore::Page::updateIsPlayingAudio):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174365
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Mon, 6 Oct 2014 20:58:26 +0000 (20:58 +0000)]
One more case of incorrect comparison in recordpatchevent.py
https://bugs.webkit.org/show_bug.cgi?id=137459
Reviewed by Tim Horton.
* QueueStatusServer/app.yaml:
* QueueStatusServer/loggers/recordpatchevent.py:
(RecordPatchEvent.started):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174364
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
benjamin@webkit.org [Mon, 6 Oct 2014 20:45:02 +0000 (20:45 +0000)]
Unreviewed, rolling out r174336.
Mozilla's Dromaeo still relies on the deprecated function.
Reverted changeset:
"Add a deprecation warning for Element.webkitMatchesSelector"
https://bugs.webkit.org/show_bug.cgi?id=137417
http://trac.webkit.org/changeset/174336
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174363
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver@apple.com [Mon, 6 Oct 2014 20:42:21 +0000 (20:42 +0000)]
Remove incorrect assertion.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174362
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver@apple.com [Mon, 6 Oct 2014 20:27:16 +0000 (20:27 +0000)]
Fix cloop build.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174361
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mark.lam@apple.com [Mon, 6 Oct 2014 20:18:05 +0000 (20:18 +0000)]
Unreviewed build fix.
<https://webkit.org/b/137279>
* jit/CCallHelpers.h:
(JSC::CCallHelpers::setupArgumentsWithExecState):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174360
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver@apple.com [Mon, 6 Oct 2014 19:29:27 +0000 (19:29 +0000)]
REGRESSION(r174226): [JSC] Crash when running the perf test Speedometer/Full.html
https://bugs.webkit.org/show_bug.cgi?id=137404
Reviewed by Michael Saboff.
Update the Arguments object to recognise that it must always have an
environment record if the referenced callee has one, and if such is not
present it should not try to extract one from the callframe, as that
path leads to madness.
Happily this makes some of the other code more sensible, and removes a
bunch of unnecessary and icky logic.
* interpreter/Interpreter.cpp:
(JSC::unwindCallFrame):
* jit/JITOperations.cpp:
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
* runtime/Arguments.cpp:
(JSC::Arguments::tearOff):
(JSC::Arguments::didTearOffActivation): Deleted.
* runtime/Arguments.h:
(JSC::Arguments::argument):
(JSC::Arguments::finishCreation):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174359
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Mon, 6 Oct 2014 19:20:19 +0000 (19:20 +0000)]
Use is<>() / downcast<>() for CryptoKey subclasses
https://bugs.webkit.org/show_bug.cgi?id=137436
Reviewed by Ryosuke Niwa.
Use is<>() / downcast<>() for CryptoKey subclasses.
No new tests, no behavior change.
* bindings/js/JSCryptoKeySerializationJWK.cpp:
(WebCore::addJWKAlgorithmToJSON):
* bindings/js/SerializedScriptValue.cpp:
(WebCore::CloneSerializer::write):
* crypto/CryptoKey.h:
* crypto/algorithms/CryptoAlgorithmAES_CBC.cpp:
(WebCore::CryptoAlgorithmAES_CBC::keyAlgorithmMatches):
(WebCore::CryptoAlgorithmAES_CBC::encrypt):
(WebCore::CryptoAlgorithmAES_CBC::decrypt):
* crypto/algorithms/CryptoAlgorithmAES_KW.cpp:
(WebCore::CryptoAlgorithmAES_KW::keyAlgorithmMatches):
(WebCore::CryptoAlgorithmAES_KW::encryptForWrapKey):
(WebCore::CryptoAlgorithmAES_KW::decryptForUnwrapKey):
* crypto/algorithms/CryptoAlgorithmHMAC.cpp:
(WebCore::CryptoAlgorithmHMAC::keyAlgorithmMatches):
(WebCore::CryptoAlgorithmHMAC::sign):
(WebCore::CryptoAlgorithmHMAC::verify):
* crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.cpp:
(WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::keyAlgorithmMatches):
(WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::encrypt):
(WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::decrypt):
* crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.cpp:
(WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::keyAlgorithmMatches):
(WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::sign):
(WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::verify):
* crypto/algorithms/CryptoAlgorithmRSA_OAEP.cpp:
(WebCore::CryptoAlgorithmRSA_OAEP::keyAlgorithmMatches):
(WebCore::CryptoAlgorithmRSA_OAEP::encrypt):
(WebCore::CryptoAlgorithmRSA_OAEP::decrypt):
* crypto/keys/CryptoKeyAES.h:
(WebCore::isCryptoKeyAES): Deleted.
* crypto/keys/CryptoKeyHMAC.h:
(WebCore::isCryptoKeyHMAC): Deleted.
* crypto/keys/CryptoKeyRSA.h:
(WebCore::isCryptoKeyRSA): Deleted.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174358
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Mon, 6 Oct 2014 19:09:55 +0000 (19:09 +0000)]
webkit-queues PatchLog is incorrect for patches that took less than a second
https://bugs.webkit.org/show_bug.cgi?id=137453
Reviewed by Tim Horton.
* QueueStatusServer/app.yaml: Updated app version.
* QueueStatusServer/loggers/recordpatchevent.py: (RecordPatchEvent.stopped):
Don't bail out for patches that took 0 seconds to process (as frequently happens
when a patch is obsolete).
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174357
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Mon, 6 Oct 2014 18:57:59 +0000 (18:57 +0000)]
Some compositing logic cleanup
https://bugs.webkit.org/show_bug.cgi?id=133060
Reviewed by Zalan Bujtas.
Move compositing-related code from RenderLayer::styleChanged() to
RenderLayerCompositor::layerStyleChanged(). Combine various tests
(many clip-related) for changes that require layer rebuilding into
styleChangeRequiresLayerRebuild().
Remove code that calls setBackingNeedsRepaint() after filters change
between being composited or not; I verified that existing "repaint after
style change" code takes care those repaints.
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::calculateClipRects):
(WebCore::RenderLayer::checkIfDescendantClippingContextNeedsUpdate): Deleted.
* rendering/RenderLayer.h:
* rendering/RenderLayerCompositor.cpp:
(WebCore::checkIfDescendantClippingContextNeedsUpdate):
(WebCore::styleChangeRequiresLayerRebuild):
(WebCore::RenderLayerCompositor::layerStyleChanged):
* rendering/RenderLayerCompositor.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174356
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adachan@apple.com [Mon, 6 Oct 2014 18:56:44 +0000 (18:56 +0000)]
Fix the iOS build after https://trac.webkit.org/changeset/174353.
* platform/audio/ios/AudioDestinationIOS.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174355
268f45cc-cd09-0410-ab3c-
d52691b4dbfc