WebKit-https.git
6 years agoInitialize a char* that needs to be initialized.
beidson@apple.com [Fri, 6 Jun 2014 23:07:47 +0000 (23:07 +0000)]
Initialize a char* that needs to be initialized.
<rdar://problem/15840022> and https://bugs.webkit.org/show_bug.cgi?id=133585

Reviewed by Mark Rowe.

r152134 (erroneously) removed this initialization.

* platform/sql/SQLiteStatement.cpp:
(WebCore::SQLiteStatement::prepare): tail should start out initialized to 0.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169665 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoAdopt the new UIAlertController API to replace UIActionSheet.
enrica@apple.com [Fri, 6 Jun 2014 22:06:25 +0000 (22:06 +0000)]
Adopt the new UIAlertController API to replace UIActionSheet.
https://bugs.webkit.org/show_bug.cgi?id=133582
<rdar://problem/16845223>

Reviewed by Joseph Pecoraro.

UIActionSheet is deprecated. We need to move out action sheets
implementation to UIAlertView.

* UIProcess/API/Cocoa/_WKElementAction.h:
* UIProcess/API/Cocoa/_WKElementAction.mm:
* UIProcess/ios/WKActionSheet.h:
* UIProcess/ios/WKActionSheet.mm:
(-[WKActionSheet presentSheetFromRect:]):
(-[WKActionSheet doneWithSheet]):
(-[WKActionSheet willRotate]):
(-[WKActionSheet updateSheetPosition]):
(-[WKActionSheet _didRotateAndLayout]):
(-[WKActionSheet didRotate]):
* UIProcess/ios/WKActionSheetAssistant.h:
* UIProcess/ios/WKActionSheetAssistant.mm:
(-[WKActionSheetAssistant _createSheetWithElementActions:showLinkTitle:]):
(-[WKActionSheetAssistant showImageSheet]):
(-[WKActionSheetAssistant showLinkSheet]):
(-[WKActionSheetAssistant showDataDetectorsSheet]):
(-[WKActionSheetAssistant cleanupSheet]):
(-[WKActionSheetAssistant actionSheet:clickedButtonAtIndex:]): Deleted.
* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _longPressRecognized:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169664 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoShould boost ChildProcesses on iOS
barraclough@apple.com [Fri, 6 Jun 2014 21:43:52 +0000 (21:43 +0000)]
Should boost ChildProcesses on iOS
https://bugs.webkit.org/show_bug.cgi?id=133583

Reviewed by Sam Weinig.

* UIProcess/Launcher/mac/ProcessLauncherMac.mm:
(WebKit::connectToService):
    - boost all child processes on iOS.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169663 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago32-bit build fix.
simon.fraser@apple.com [Fri, 6 Jun 2014 21:08:34 +0000 (21:08 +0000)]
32-bit build fix.

* WebKitTestRunner/mac/EventSenderProxy.mm:
(WTR::EventSenderProxy::mouseMoveTo):
(WTR::EventSenderProxy::mouseScrollByWithWheelAndMomentumPhases):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169662 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[iOS] Support pasting HTML
ap@apple.com [Fri, 6 Jun 2014 21:04:07 +0000 (21:04 +0000)]
[iOS] Support pasting HTML
https://bugs.webkit.org/show_bug.cgi?id=133581
<rdar://problem/17070305>

Reviewed by Enrica Casucci.

We can probably share a lot of code between Mac and iOS here, but for now, just
implement the unimplemented functions.

* editing/ios/EditorIOS.mm: (WebCore::Editor::WebContentReader::readHTML):
Implemented based on WebArchive reading code above, and on Mac version of readHTML.
Unlike on Mac, we don't need to support Microsoft CF_HTML format, as nothing
generates it.

* platform/ios/PasteboardIOS.mm:
(WebCore::Pasteboard::read):
(WebCore::Pasteboard::supportedPasteboardTypes):
Added HTML support, as the second preferred format after WebArchive.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169660 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoFix builds on 10.8; -firstObject isn't declared on NSArray there.
simon.fraser@apple.com [Fri, 6 Jun 2014 20:59:00 +0000 (20:59 +0000)]
Fix builds on 10.8; -firstObject isn't declared on NSArray there.

* DumpRenderTree/mac/DumpRenderTree.mm:
(createWebViewAndOffscreenWindow):
* DumpRenderTree/mac/EventSendingController.mm:
(-[EventSendingController mouseScrollByX:andY:continuously:]):
(-[EventSendingController mouseScrollByX:andY:withWheel:andMomentumPhases:]):
* WebKitTestRunner/mac/EventSenderProxy.mm:
(WTR::EventSenderProxy::mouseScrollBy):
(WTR::EventSenderProxy::mouseScrollByWithWheelAndMomentumPhases):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169659 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoBuild fix after <http://trac.webkit.org/changeset/169655>.
ap@apple.com [Fri, 6 Jun 2014 20:34:26 +0000 (20:34 +0000)]
Build fix after <trac.webkit.org/changeset/169655>.

The SPIs used do not exist on Mac, limit the code to iOS.

* Shared/Authentication/mac/AuthenticationManager.mac.mm:
* Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<Credential>::encode):
(IPC::ArgumentCoder<Credential>::decode):
* Shared/cf/ArgumentCodersCF.cpp:
(IPC::typeFromCFTypeRef):
(IPC::encode):
(IPC::decode):
* Shared/cf/ArgumentCodersCF.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169658 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoTry to fix the build after http://trac.webkit.org/changeset/169655
ap@apple.com [Fri, 6 Jun 2014 20:07:29 +0000 (20:07 +0000)]
Try to fix the build after trac.webkit.org/changeset/169655

Unfortunately, the fix is very fragile, and will likely not work for some SDKs
or possibly local headers - all OS versions have multiple SecBase.h headers with
different definitions for SecIdentityRef.

We'll see.

* WebCore.exp.in:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169657 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoSource/WebCore: WebCore part of <rdar://problem/17095692> [iOS] Client-certificate...
mitz@apple.com [Fri, 6 Jun 2014 19:04:10 +0000 (19:04 +0000)]
Source/WebCore: WebCore part of <rdar://problem/17095692> [iOS] Client-certificate authentication isn’t working
https://bugs.webkit.org/show_bug.cgi?id=133527

Reviewed by Darin Adler.

* WebCore.exp.in: Exported some Credential member functions.

Source/WebKit2: <rdar://problem/17095692> [iOS] Client-certificate authentication isn’t working
https://bugs.webkit.org/show_bug.cgi?id=133527

Reviewed by Darin Adler.

* Configurations/Network-iOS.entitlements: Enabled the Network process to access the keys
needed to create identities to authenticate with.

* Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<Credential>::encode): Encode the credential type, and if it is a client
certificate, encode the identity and the certificates.
(IPC::ArgumentCoder<Credential>::decode): Decode the credential type. If it is a client
certificate, decode the identity and the certificates and use the proper Credential
constructor.

* Shared/cf/ArgumentCodersCF.cpp:
(IPC::typeFromCFTypeRef): Handle SecIdentityRef.
(IPC::encode): Encode an identity by encoding its certificate and a persistent reference to
its key.
(IPC::decode): Decode a certificate and a persistent reference to a key, find the key, and
create an identity.
* Shared/cf/ArgumentCodersCF.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169655 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[iOS WebGL] Float texture extension has a slightly different name
dino@apple.com [Fri, 6 Jun 2014 18:37:08 +0000 (18:37 +0000)]
[iOS WebGL] Float texture extension has a slightly different name
https://bugs.webkit.org/show_bug.cgi?id=133580
<rdar://problem/17113451>

Reviewed by Brady Eidson.

Floating point textures were not available on iOS, because we were
looking for the wrong extension.

Covered by the Khronos test (and in LayoutTests):
conformance/extensions/oes-texture-float.html

* platform/graphics/opengl/Extensions3DOpenGL.cpp:
(WebCore::Extensions3DOpenGL::supportsExtension): Look for GL_OES_texture_float
as well as GL_ARB_texture_float.
* platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
(WebCore::GraphicsContext3D::texImage2D): Increase the set of things skipped
on PLATFORM(IOS) since they are supported natively there.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169654 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoVersioning.
matthew_hanson@apple.com [Fri, 6 Jun 2014 18:00:04 +0000 (18:00 +0000)]
Versioning.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169653 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoREGRESSION: Hit testing of composited elements is broken in new multicolumn layout.
hyatt@apple.com [Fri, 6 Jun 2014 17:57:44 +0000 (17:57 +0000)]
REGRESSION: Hit testing of composited elements is broken in new multicolumn layout.
https://bugs.webkit.org/show_bug.cgi?id=133522 (<rdar://problem/17060556>)

Reviewed by Simon Fraser.

Source/WebCore:
Hit testing for the new columns doesn't care about compositing but does still
need a pagination layer set to work. The old column code didn't care about this
because it was top down (and wrong). The new code lets each layer paint and hit
test its own fragments, so having a pagination layer set suddenly becomes relevant
for composited layers.

The solution is to cache whether or not the pagination layer crosses a compositing
boundary, and then to force call sites of enclosingPaginationLayer to pass an argument
indicating whether compositing layers should be included. Typically painting wants to
exclude them but hit testing wants to include them.

* page/FrameView.cpp:
(WebCore::updateLayerPositionFlags):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::RenderLayer):
(WebCore::RenderLayer::updateLayerPositions):
(WebCore::RenderLayer::updatePagination):
(WebCore::transparencyClipBox):
(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::enclosingPaginationLayerInSubtree):
(WebCore::RenderLayer::collectFragments):
(WebCore::RenderLayer::paintTransformedLayerIntoFragments):
(WebCore::RenderLayer::hitTestLayer):
(WebCore::RenderLayer::hitTestTransformedLayerInFragments):
(WebCore::RenderLayer::calculateClipRects):
* rendering/RenderLayer.h:
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::requiresCompositingForPosition):

LayoutTests:
* compositing/columns/hittest-composited-in-paginated-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169651 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoLatched scrolling tests are flakey on Mavericks
simon.fraser@apple.com [Fri, 6 Jun 2014 17:41:36 +0000 (17:41 +0000)]
Latched scrolling tests are flakey on Mavericks
https://bugs.webkit.org/show_bug.cgi?id=133578
<rdar://problem/17180591>

Reviewed by Brent Fulgham.

Tools:
The latched scrolling tests rely on synthetic mousewheel events whose coordinates can
be wrong on machines with more than one screen. This is because we use
[NSScreen mainScreen] when computing the global coordinates of the events, but
[NSScreen mainScreen] returns the screen with the key window, not the first screen.

So replace calls to [NSScreen mainScreen] with [[NSScreen screens] firstObject]. Also
add comments clarifying why the coordinate math works (which is not obvious given
the events have no target window).

Some scrolling tests also dispatched events outside the 800x600 test window, so
fix those tests, and add logging that will appear in test output when this happens.

* DumpRenderTree/mac/DumpRenderTree.mm:
(createWebViewAndOffscreenWindow):
* DumpRenderTree/mac/EventSendingController.mm:
(-[EventSendingController mouseScrollByX:andY:continuously:]):
(-[EventSendingController mouseScrollByX:andY:withWheel:andMomentumPhases:]):
* WebKitTestRunner/mac/EventSenderProxy.mm:
(WTR::EventSenderProxy::mouseMoveTo):
(WTR::EventSenderProxy::mouseScrollBy):
(WTR::EventSenderProxy::continuousMouseScrollBy):
(WTR::EventSenderProxy::mouseScrollByWithWheelAndMomentumPhases):

LayoutTests:
Fix these tests to not dispatch events outside the window, and correct some of the wording
in the tests.

* platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-expected.txt:
* platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-with-handler-expected.txt:
* platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div-with-handler.html:
* platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-div.html:
* platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe-with-handler.html:
* platform/mac-wk2/tiled-drawing/fast-scroll-div-latched-mainframe.html:
* platform/mac-wk2/tiled-drawing/fast-scroll-iframe-latched-mainframe.html:
* platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe-with-handler.html:
* platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-mainframe.html:
* platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-expected.txt:
* platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-with-handler-expected.txt:
* platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select-with-handler.html:
* platform/mac-wk2/tiled-drawing/fast-scroll-select-latched-select.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169650 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoRun passing WebGL tests on Windows.
commit-queue@webkit.org [Fri, 6 Jun 2014 16:54:18 +0000 (16:54 +0000)]
Run passing WebGL tests on Windows.
https://bugs.webkit.org/show_bug.cgi?id=133563

Patch by Alex Christensen <achristensen@webkit.org> on 2014-06-06
Reviewed by Brent Fulgham.

* platform/win/TestExpectations:
Replaced all WebGL tests with lists of failing and crashing tests to fix.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169649 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[MediaStream] 'get' prefix is missing for capabilities and constraints.
commit-queue@webkit.org [Fri, 6 Jun 2014 16:33:42 +0000 (16:33 +0000)]
[MediaStream] 'get' prefix is missing for capabilities and constraints.
https://bugs.webkit.org/show_bug.cgi?id=133573

Patch by Kiran <kiran.guduru@samsung.com> on 2014-06-06
Reviewed by Eric Carlson.

Source/WebCore:
Modified the existing MediaStreamTrack.html to test the changes.

As per the Media Capture and Streams spec method names constreaints and
capabilities should be prefixed by 'get'. So updated the method names.

* Modules/mediastream/MediaStreamTrack.cpp:
(WebCore::MediaStreamTrack::getConstraints):
(WebCore::MediaStreamTrack::getCapabilities):
(WebCore::MediaStreamTrack::constraints): Deleted.
(WebCore::MediaStreamTrack::capabilities): Deleted.
* Modules/mediastream/MediaStreamTrack.h:
* Modules/mediastream/MediaStreamTrack.idl:

LayoutTests:
* fast/mediastream/MediaStreamTrack-expected.txt:
* fast/mediastream/MediaStreamTrack.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169648 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoREGRESSION(169440): Repro crash when playing a video with captions
bfulgham@apple.com [Fri, 6 Jun 2014 16:20:31 +0000 (16:20 +0000)]
REGRESSION(169440): Repro crash when playing a video with captions
https://bugs.webkit.org/show_bug.cgi?id=133459
<rdar://problem/17079081>

Reviewed by Eric Carlson.

The change I made in r169440 introduced a crash for paint-on captions. This
resolves the problem as follows:
1. No longer attempt to modify the start/endTime in the TextTrack implementation.
2. Check for extensions to existing cues when we are about to add new arriving
   cues. If they extend a current pending cue, don't set an end-time for the
   pending cue, and throw away the new duplicate. Otherwise set the end time
   as previously and continue.

* html/track/TextTrack.cpp:
(WebCore::TextTrack::hasCue): Remove 'doesExtendCue' case since this is
no longer possible.
* platform/graphics/InbandTextTrackPrivateClient.h:
(WebCore::GenericCueData::doesExtendCueData): Added.
* platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:
(WebCore::InbandTextTrackPrivateAVF::processCue): Check for cues extending
other cues and handle appropriately.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169647 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[GTK] Layout Test accessibility/table-fallback-roles-expose-element-attributes.html...
mario.prada@samsung.com [Fri, 6 Jun 2014 16:19:54 +0000 (16:19 +0000)]
[GTK] Layout Test accessibility/table-fallback-roles-expose-element-attributes.html is failing
https://bugs.webkit.org/show_bug.cgi?id=133519

Reviewed by Chris Fleizach.

Adapted test to play nicely with the different types of
accessibility hierarchies exposed for Mac and ATK.

* accessibility/table-fallback-roles-expose-element-attributes.html:
Updated text to print information of cells from every platform but
only print information of their children in the Mac.

* accessibility/table-fallback-roles-expose-element-attributes-expected.txt:
Updated expectation to match ATK platforms (GTK & EFL).
* platform/mac/accessibility/table-fallback-roles-expose-element-attributes-expected.txt:
Copied from LayoutTests/accessibility/table-fallback-roles-expose-element-attributes-expected.txt.

* platform/gtk/TestExpectations: Removed expected failure.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169646 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoROLLOUT: r169630: Caused a retain cycle.
bfulgham@apple.com [Fri, 6 Jun 2014 15:49:08 +0000 (15:49 +0000)]
ROLLOUT: r169630: Caused a retain cycle.
https://bugs.webkit.org/show_bug.cgi?id=133463
<rdar://problem/17098100>

Rolling out this change as it introduced a retain cycle.

* Modules/mediacontrols/MediaControlsHost.cpp:
(WebCore::MediaControlsHost::setControllerJSObject): Deleted.
* Modules/mediacontrols/MediaControlsHost.h:
(WebCore::MediaControlsHost::controllerJSValue):
(WebCore::MediaControlsHost::setControllerJSValue):
(WebCore::MediaControlsHost::controllerJSObject): Deleted.
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::parseAttribute):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169645 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoAdd test references for horizontal stretchy operators.
fred.wang@free.fr [Fri, 6 Jun 2014 07:37:20 +0000 (07:37 +0000)]
Add test references for horizontal stretchy operators.
https://bugs.webkit.org/show_bug.cgi?id=72828

Unreviewed Win and EFL gardening.

* platform/efl/mathml/opentype/horizontal-LatinModern-expected.txt: Added.
* platform/efl/mathml/opentype/horizontal-LatinModern-munderover-expected.txt: Added.
* platform/efl/mathml/opentype/opentype-stretchy-horizontal-expected.txt: Added.
* platform/win/mathml/opentype/horizontal-LatinModern-expected.txt: Added.
* platform/win/mathml/opentype/horizontal-LatinModern-munderover-expected.txt: Added.
* platform/win/mathml/opentype/opentype-stretchy-horizontal-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169644 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoAdd test references for horizontal stretchy operators.
fred.wang@free.fr [Fri, 6 Jun 2014 07:26:32 +0000 (07:26 +0000)]
Add test references for horizontal stretchy operators.
https://bugs.webkit.org/show_bug.cgi?id=72828

Unreviewed Mac gardening.

* platform/mac/mathml/horizontal-LatinModern-expected.txt: Added.
* platform/mac/mathml/horizontal-LatinModern-munderover-expected.txt: Added.
* platform/mac/mathml/opentype-stretchy-horizontal-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169643 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoStyleResolver doesn't compile without CSS_GRID_LAYOUT enabled
dino@apple.com [Fri, 6 Jun 2014 06:53:15 +0000 (06:53 +0000)]
StyleResolver doesn't compile without CSS_GRID_LAYOUT enabled
https://bugs.webkit.org/show_bug.cgi?id=133568

Reviewed by Tim Horton.

* css/StyleResolver.cpp:
(WebCore::isDisplayGridBox): Add UNUSED_PARAM.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169640 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[CSSRegions] Region box incorrectly overlaps floating box
mihnea@adobe.com [Fri, 6 Jun 2014 06:44:55 +0000 (06:44 +0000)]
[CSSRegions] Region box incorrectly overlaps floating box
https://bugs.webkit.org/show_bug.cgi?id=133545

Reviewed by David Hyatt.

Source/WebCore:
A region box creates a BFC and it should not overlap a floating box in the same formatting context: http://www.w3.org/TR/CSS21/visuren.html#bfc-next-to-float

Test: fast/regions/region-as-bfc-avoids-float.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::avoidsFloats):

LayoutTests:
Add test to check that a region does not incorrectly overlap a floating
element in the same formatting context.

* fast/regions/region-as-bfc-avoids-float-expected.html: Added.
* fast/regions/region-as-bfc-avoids-float.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169639 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoAlign srcset parser with recent spec changes
yoav@yoav.ws [Fri, 6 Jun 2014 06:06:15 +0000 (06:06 +0000)]
Align srcset parser with recent spec changes
https://bugs.webkit.org/show_bug.cgi?id=133504

Reviewed by Darin Adler.

Source/WebCore:
New tests were added to fast/hidpi/image-srcset-invalid-descriptor.html

The srcset parser changes align it with the spec:
http://picture.responsiveimages.org/#parse-srcset-attr.
The spec changes are meant to give the parser better future
compatibility, and enable it to work well with the 'w' descriptor, the
soon to be added 'h' descriptor and function descriptors (e.g.
future-descriptor(a, b, c) ).

* CMakeLists.txt:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* html/HTMLImageElement.cpp:
(WebCore::HTMLImageElement::setBestFitURLAndDPRFromImageCandidate):
(WebCore::HTMLImageElement::parseAttribute):
* html/HTMLImageElement.h:
* html/parser/HTMLParserIdioms.h:
(WebCore::isHTMLSpace):
(WebCore::isComma):
(WebCore::isHTMLSpaceOrComma):
* html/parser/HTMLPreloadScanner.cpp:
(WebCore::TokenPreloadScanner::StartTagScanner::processAttributes):
* html/parser/HTMLSrcsetParser.cpp:
(WebCore::compareByDensity):
(WebCore::appendDescriptorAndReset):
(WebCore::appendCharacter):
(WebCore::isEOF):
(WebCore::tokenizeDescriptors):
(WebCore::stringViewToFloat):
(WebCore::stringViewToInt):
(WebCore::parseDescriptors):
(WebCore::parseImageCandidatesFromSrcsetAttribute):
(WebCore::pickBestImageCandidate):
(WebCore::bestFitSourceForImageAttributes):
(WebCore::compareByScaleFactor): Deleted.
(WebCore::parseImagesWithScaleFromSrcsetAttribute): Deleted.
* html/parser/HTMLSrcsetParser.h:
(WebCore::DescriptorParsingResult::DescriptorParsingResult):
(WebCore::DescriptorParsingResult::hasDensity):
(WebCore::DescriptorParsingResult::hasWidth):
(WebCore::DescriptorParsingResult::hasHeight):
(WebCore::DescriptorParsingResult::density):
(WebCore::DescriptorParsingResult::resourceWidth):
(WebCore::DescriptorParsingResult::resourceHeight):
(WebCore::DescriptorParsingResult::setResourceWidth):
(WebCore::DescriptorParsingResult::setResourceHeight):
(WebCore::DescriptorParsingResult::setDensity):
(WebCore::ImageCandidate::ImageCandidate):
(WebCore::ImageCandidate::toString):
(WebCore::ImageCandidate::url):
(WebCore::ImageCandidate::setDensity):
(WebCore::ImageCandidate::density):
(WebCore::ImageCandidate::resourceWidth):
(WebCore::ImageCandidate::srcOrigin):
(WebCore::ImageCandidate::isEmpty):
(WebCore::ImageWithScale::ImageWithScale): Deleted.
(WebCore::ImageWithScale::imageURL): Deleted.
(WebCore::ImageWithScale::scaleFactor): Deleted.
* html/parser/ParsingUtilities.h: Renamed from Source/WebCore/html/track/ParsingUtilities.h.
(skipExactly):
(skipUntil):
(skipWhile):
(reverseSkipWhile):

Source/WTF:
I've added toInt and toFloat methods to StringView, and exposed
charactersToInt so that they can be used by
HTMLSrcsetParser.cpp.

* wtf/text/WTFString.h:
* wtf/text/StringView.h:
(WTF::StringView::toInt):
(WTF::StringView::toFloat):

LayoutTests:
I have changed the "invalid-descriptor" test and removed the "invalid
inputs correct src" test to reflect the fact that invalid descriptors
are now treated identically to null descriptors. That is according to
the spec.
I've also added new tests that make sure that the spec's future
compatible changes are working.

* fast/hidpi/image-srcset-invalid-descriptor-expected.txt:
* fast/hidpi/image-srcset-invalid-descriptor.html:
* fast/hidpi/image-srcset-invalid-inputs-correct-src-expected.txt: Removed.
* fast/hidpi/image-srcset-invalid-inputs-correct-src.html: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169637 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoSource/WebCore: Current media controls look different from previous media controls...
jonlee@apple.com [Fri, 6 Jun 2014 05:11:02 +0000 (05:11 +0000)]
Source/WebCore: Current media controls look different from previous media controls. Adjusted CSS to make media elements more similar by adding padding, adjusting hues/svg, resizing elements, etc.

https://bugs.webkit.org/show_bug.cgi?id=133521

Patch by Wenson Hsieh <wenson_hsieh@apple.com> on 2014-06-05
Reviewed by Eric Carlson.

The main issues:
- The widths between elements of both audio and video players are incorrect.
- The hues of audio player elements are incorrect.
- The hues of video player elements are content dependent (refer to full-screen mode), and this cannot be exactly replicated using just css. This patch only attempts to make them more similar.
- The height of the audio player is incorrect.

Test: platform/ios-sim/media/audio-width.html

* Modules/mediacontrols/mediaControlsiOS.css: Updated style elements for audio/video elements.
(::-webkit-media-controls): Enforce a minimum width on audio/video controls.
(audio): Enforce a minimum width on audio elements.
(audio::-webkit-media-controls): see below
(audio::-webkit-media-controls-wireless-playback-picker-button): modified SVG, hue and width/height.
(audio::-webkit-media-controls-panel): adjusted hue, added left/right padding.
(audio::-webkit-media-controls-fullscreen-button): removed. There's no fullscreen for audio anyways.
(audio::-webkit-media-controls-current-time-display): adjusted font size, added left padding.
(audio::-webkit-media-controls-time-remaining-display): adjusted font size, added right padding.

(video::-webkit-media-controls-panel): adjusted hue, added left/right padding.
(video::-webkit-media-controls-current-time-display): added left padding.
(video::-webkit-media-controls-time-remaining-display): added right padding.
(video::-webkit-media-controls-wireless-playback-picker-button): modified SVG, hue, opacity and width/height.
(video::-webkit-media-controls-fullscreen-button): modified SVG, hue, opacity, and width/height. In particular, made the svg seem sharper.
(video::-webkit-media-controls-play-button): modified SVG, hue, opacity, and width/height.

LayoutTests: REGRESSION (Pluginless): Media controls look different from iOS7 media controls.
https://bugs.webkit.org/show_bug.cgi?id=133521

Patch by Wenson Hsieh <wenson_hsieh@apple.com> on 2014-06-05
Reviewed by Eric Carlson.

Tests that audio elements are properly sized. Will add tests for video players in the (near) future.

* platform/ios-sim/media/audio-width-expected.txt: Checks that audio width tests were OK'd
* platform/ios-sim/media/audio-width.html: Checks that minimum audio width is properly enforced

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169636 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUnreviewed, rolling out r169570.
commit-queue@webkit.org [Fri, 6 Jun 2014 02:22:26 +0000 (02:22 +0000)]
Unreviewed, rolling out r169570.
https://bugs.webkit.org/show_bug.cgi?id=133565

It breaks Baidu (Requested by benjaminp on #webkit).

Reverted changeset:

"[iOS] Start ignoring common bogus viewport parameters"
https://bugs.webkit.org/show_bug.cgi?id=133466
http://trac.webkit.org/changeset/169570

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169635 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoAX: Add support for ARIA 1.1 'none' role
commit-queue@webkit.org [Fri, 6 Jun 2014 00:23:00 +0000 (00:23 +0000)]
AX: Add support for ARIA 1.1 'none' role
https://bugs.webkit.org/show_bug.cgi?id=133367

Patch by Michael Timbrook <timbrook@apple.com> on 2014-06-05
Reviewed by Chris Fleizach.

Source/WebCore:
Added support for the 'none' role by added a lookup for it to go to PresentationalRole
Test: accessibility/aria-none-role.html

* accessibility/AccessibilityObject.cpp:
(WebCore::initializeRoleMap):

LayoutTests:
Added the tests to cover the behavior of the 'none' role
* accessibility/aria-none-role-expected.txt: Added.
* accessibility/aria-none-role.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169632 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoAX: [ATK] Children of tables and lists with role='presentation' should each be expose...
jdiggs@igalia.com [Thu, 5 Jun 2014 23:53:17 +0000 (23:53 +0000)]
AX: [ATK] Children of tables and lists with role='presentation' should each be exposed as if they were div elements
https://bugs.webkit.org/show_bug.cgi?id=133133

Reviewed by Chris Fleizach.

Source/WebCore:
When a table or list has role='presentation', accessibility is "ignored"
for that element, but not for the required children. The default roles
for the children (CellRole and ListItemRole) do not make sense without
the parent, therefore map them to DivRole in ATK if they inherit the
presentational role.

Test: accessibility/aria-inherits-presentational.html

* accessibility/AccessibilityObject.h:
(WebCore::AccessibilityObject::inheritsPresentationalRole):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::inheritsPresentationalRole):
* accessibility/AccessibilityRenderObject.h:
* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(atkRole):

LayoutTests:
Added a new test with platform-specific expectations due to differences
in accessible hierarchies.

* accessibility/aria-inherits-presentational.html: Added.
* platform/gtk/accessibility/aria-inherits-presentational-expected.txt: Added.
* platform/mac/accessibility/aria-inherits-presentational-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169631 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoREGRESSION (r167962): Out of bounds read in JSC::StructureIDTable::get()
bfulgham@apple.com [Thu, 5 Jun 2014 23:46:33 +0000 (23:46 +0000)]
REGRESSION (r167962): Out of bounds read in JSC::StructureIDTable::get()
https://bugs.webkit.org/show_bug.cgi?id=133463
<rdar://problem/17098100>

Reviewed by Dean Jackson.

Revise MediaControllerHost implementation so that it holds a Strong
reference to the JavaScript 'Controller' object it mirrors. The
MediaControllerHost is constructed when we create an HTMLMediaElement,
and is the logical place to retain ownership of the JS object so that
it does not get garbage collected as long as HTMLMediaElement exists.

* Modules/mediacontrols/MediaControlsHost.cpp:
(WebCore::MediaControlsHost::setControllerJSObject): Create a strong
reference to the JavaScript Controller object.
* Modules/mediacontrols/MediaControlsHost.h: Use JSC::Strong to hold a
JSObject, rather than a bare JSValue.
(WebCore::MediaControlsHost::controllerJSObject): Change name to reflect
that we are working with JSObjects, not JSValues.
(WebCore::MediaControlsHost::controllerJSValue): Deleted.
(WebCore::MediaControlsHost::setControllerJSValue): Deleted.
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::parseAttribute): Revise for changed method
signature.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169630 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoShare platform/mac/editing/spelling/move-cursor-around-misspelled-word.html with...
g.czajkowski@samsung.com [Thu, 5 Jun 2014 23:19:54 +0000 (23:19 +0000)]
Share platform/mac/editing/spelling/move-cursor-around-misspelled-word.html with other platforms
https://bugs.webkit.org/show_bug.cgi?id=133208

Reviewed by Darin Adler.

Move the test to common editing/spelling since it just verifies spelling
markers and other platforms might be interested in running it as well.

Due to bug 125688, the test starts using asynchronous spellchecking.
Add additional test case which checks spelling marker after typing
the text, before any caret change.

* editing/spelling/move-cursor-around-misspelled-word-expected.txt:
Renamed from platform/mac/editing/spelling/move-cursor-around-misspelled-word-expected.txt
* editing/spelling/move-cursor-around-misspelled-word.html:
Renamed from platform/mac/editing/spelling/move-cursor-around-misspelled-word.html

* platform/gtk/TestExpectations:
* platform/mac-wk2/TestExpectations:
* platform/win/TestExpectations:
Add failing expectation for platforms which didn't switch to
asynchronous spellchecking.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169629 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoRemove unsused method _setAcceleratedImageDecoding
psolanki@apple.com [Thu, 5 Jun 2014 21:40:08 +0000 (21:40 +0000)]
Remove unsused method _setAcceleratedImageDecoding
https://bugs.webkit.org/show_bug.cgi?id=133554

Reviewed by Jon Honeycutt.

* WebView/WebView.mm:
(+[WebView _setAcceleratedImageDecoding:]): Deleted.
* WebView/WebViewPrivate.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169627 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[iOS][WK2] WebPage sometimes forces two resize events on animated resize
benjamin@webkit.org [Thu, 5 Jun 2014 21:36:40 +0000 (21:36 +0000)]
[iOS][WK2] WebPage sometimes forces two resize events on animated resize
https://bugs.webkit.org/show_bug.cgi?id=133534

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-05
Reviewed by Enrica Casucci.

When I updated the patch for resize events (r168556) to use the unobscured rect in scrollview coordinates,
I forgot to update a snippet of code in dynamicViewportSizeUpdate(). Since that code was still using
the scaled unobscured rect, there was sometimes a difference of 1 pixel between the size set by that
call site and the others.

This path nukes the bad code and use the unobscured rect in scrollview coordinates given by the UIProcess.

* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::dynamicViewportSizeUpdate):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169626 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[iOS][WK2] Add device orientation
benjamin@webkit.org [Thu, 5 Jun 2014 21:14:52 +0000 (21:14 +0000)]
[iOS][WK2] Add device orientation
https://bugs.webkit.org/show_bug.cgi?id=133530

Source/WebCore:

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-05
Reviewed by Tim Horton.

Previously, WebCore was getting the orientation directly from the WebKit layer.
This had to be done during the frame creation and was very fragile.

Frame is changed to pull the value from the chrome client. That way we avoid races
and we can maintain a single value for all frames.

Sending the values to all the subframes is aslo done here so that we do not have to repeat
it in both WebKit layers.

* WebCore.exp.in:
* loader/EmptyClients.h:
* page/ChromeClient.h:
* page/Frame.cpp:
(WebCore::Frame::Frame):
(WebCore::Frame::orientationChanged):
(WebCore::Frame::orientation):
(WebCore::Frame::sendOrientationChangeEvent): Deleted.
* page/Frame.h:
(WebCore::Frame::orientation): Deleted.

Source/WebKit/ios:

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-05
Reviewed by Tim Horton.

Change WebKit1 to provide the deviceOrientation as pull instead of push.

* DefaultDelegates/WebDefaultUIKitDelegate.m:
(-[WebDefaultUIKitDelegate deviceOrientation]):
* WebCoreSupport/WebChromeClientIOS.h:
* WebCoreSupport/WebChromeClientIOS.mm:
(WebChromeClientIOS::deviceOrientation):
* WebView/WebUIKitDelegate.h:

Source/WebKit/mac:

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-05
Reviewed by Tim Horton.

* WebView/WebFrame.mm:
(-[WebFrame deviceOrientationChanged]):
(-[WebFrame sendOrientationChangeEvent:]):
* WebView/WebFramePrivate.h:

Source/WebKit2:
<rdar://problem/16680041>

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-05
Reviewed by Tim Horton.

Add device orientation for WebKit2.

For the public API, WKWebView get the updates through the notification UIWindowDidRotateNotification.
We do not have any control over how the API is used, but we can expect the size will be updated before
the end of rotation in most cases and the events should be sent in the right order.

For Safari, we use an override to support animated resize (and some tabs corner cases).

On the WebProcess side, we just get the new orientation directly or on DynamicViewportSizeUpdate.

* UIProcess/API/Cocoa/WKWebView.mm:
(deviceOrientationForUIInterfaceOrientation):
(deviceOrientation):
(-[WKWebView initWithFrame:configuration:]):
(-[WKWebView _windowDidRotate:]):
(-[WKWebView _setInterfaceOrientationOverride:]):
(-[WKWebView _interfaceOrientationOverride]):
(-[WKWebView _beginAnimatedResizeWithUpdates:]):
* UIProcess/API/Cocoa/WKWebViewPrivate.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
* UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::deviceOrientation):
* UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::dynamicViewportSizeUpdate):
(WebKit::WebPageProxy::setDeviceOrientation):
* WebProcess/WebCoreSupport/WebChromeClient.h:
* WebProcess/WebCoreSupport/ios/WebChromeClientIOS.mm:
(WebKit::WebChromeClient::deviceOrientation):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
* WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::deviceOrientation):
* WebProcess/WebPage/WebPage.messages.in:
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::setDeviceOrientation):
(WebKit::WebPage::dynamicViewportSizeUpdate):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169625 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agomedia/video-rtl.html is flaky
ap@apple.com [Thu, 5 Jun 2014 21:10:15 +0000 (21:10 +0000)]
media/video-rtl.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=133363

* platform/mac/TestExpectations: Marked as such.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169624 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoFix the !CACHE_SUBIMAGES build
timothy_horton@apple.com [Thu, 5 Jun 2014 21:00:15 +0000 (21:00 +0000)]
Fix the !CACHE_SUBIMAGES build

* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::drawNativeImage):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169623 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoEnable SANDBOX_EXTENSIONS build flag universally on cocoa
oliver@apple.com [Thu, 5 Jun 2014 19:49:56 +0000 (19:49 +0000)]
Enable SANDBOX_EXTENSIONS build flag universally on cocoa
https://bugs.webkit.org/show_bug.cgi?id=133556

Reviewed by Alexey Proskuryakov.

Remove unnecessary iOS exception.

* WebKit2Prefix.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169622 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoCSS JIT: Clean up StackAllocator
commit-queue@webkit.org [Thu, 5 Jun 2014 18:40:23 +0000 (18:40 +0000)]
CSS JIT: Clean up StackAllocator
https://bugs.webkit.org/show_bug.cgi?id=133506

Patch by Yusuke Suzuki <utatane.tea@gmail.com> on 2014-06-05
Reviewed by Benjamin Poulain.

Cleaning up CSS JIt StackAllocator code. Sharing push / pop code and
using information provided by MacroAssembler more aggressively
to drop ifdefs.

* cssjit/StackAllocator.h:
(WebCore::StackAllocator::allocateUninitialized):
(WebCore::StackAllocator::push):
(WebCore::StackAllocator::pop):
(WebCore::StackAllocator::popAndDiscard):
(WebCore::StackAllocator::popAndDiscardUpTo):
(WebCore::StackAllocator::alignStackPreFunctionCall):
(WebCore::StackAllocator::unalignStackPostFunctionCall):
(WebCore::StackAllocator::stackUnitInBytes):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169621 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoSubpixel rendering: border-radius painting falls back to rectangle when the snapped...
zalan@apple.com [Thu, 5 Jun 2014 18:18:40 +0000 (18:18 +0000)]
Subpixel rendering: border-radius painting falls back to rectangle when the snapped rounded rect becomes non-renderable.
https://bugs.webkit.org/show_bug.cgi?id=133491

Reviewed by Simon Fraser.

Pixel snapping can change the rectangle's size when it is on a certain subpixel position. (usually it does not)
This patch ensures that the snapped rect is still renderable by adjusting the radii as well.

Source/WebCore:
Test: fast/borders/hidpi-border-radius-with-subpixel-margin-not-renderable.html

* platform/graphics/RoundedRect.cpp:
(WebCore::RoundedRect::Radii::scale):
(WebCore::RoundedRect::pixelSnappedRoundedRectForPainting):
* platform/graphics/RoundedRect.h:

LayoutTests:
* fast/borders/hidpi-border-radius-with-subpixel-margin-not-renderable-expected.html: Added.
* fast/borders/hidpi-border-radius-with-subpixel-margin-not-renderable.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169620 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUnreviewed, rolling out r169587.
commit-queue@webkit.org [Thu, 5 Jun 2014 17:21:20 +0000 (17:21 +0000)]
Unreviewed, rolling out r169587.
https://bugs.webkit.org/show_bug.cgi?id=133552

Calls a pure virtual method, crashes (Requested by ap on
#webkit).

Reverted changeset:

"WebKit should adopt journal_mode=wal for all SQLite
databases."
https://bugs.webkit.org/show_bug.cgi?id=133496
http://trac.webkit.org/changeset/169587

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169619 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[Mac] Tweak plug-in sandbox profiles
ap@apple.com [Thu, 5 Jun 2014 17:21:00 +0000 (17:21 +0000)]
[Mac] Tweak plug-in sandbox profiles
https://bugs.webkit.org/show_bug.cgi?id=133549

Fix <rdar://problem/17068055> and <rdar://problem/17148837>.

Reviewed by Sam Weinig and Simon Cooper.

* Resources/PlugInSandboxProfiles/com.apple.ist.ds.appleconnect.webplugin.sb:
* Resources/PlugInSandboxProfiles/com.microsoft.SilverlightPlugin.sb:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169618 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoApply Character-level mirroring to stretchy operators in RTL mode.
fred.wang@free.fr [Thu, 5 Jun 2014 16:23:08 +0000 (16:23 +0000)]
Apply Character-level mirroring to stretchy operators in RTL mode.
https://bugs.webkit.org/show_bug.cgi?id=130839

Reviewed by Chris Fleizach.

Source/WebCore:
We add support for character-level mirroring for stretchy MathML operators in RTL mode.
Glyph-level mirroring (via the rtlm OpenType feature) will be handled in bug 130840.

Test: mathml/presentation/stretchy-rtl.html

* rendering/mathml/RenderMathMLOperator.cpp: reorganize the Unicode stretchyCharacters table to make mirroring easy.
(WebCore::RenderMathMLOperator::computePreferredLogicalWidths): pass the right boolean to glyphDataForCharacter.
(WebCore::RenderMathMLOperator::getDisplayStyleLargeOperator): ditto
(WebCore::RenderMathMLOperator::findStretchyData): ditto and change the index for the stretchyCharacters fallback.
(WebCore::RenderMathMLOperator::updateStyle): pass the right boolean to glyphDataForCharacter.
(WebCore::RenderMathMLOperator::paint): remove the FIXME comment.
(WebCore::RenderMathMLOperator::paintVerticalGlyphAssembly): switch the leading/trailing space in RTL mode.

LayoutTests:
Add some tests to verify that stretchy operators are correctly mirrored in RTL mode.

* mathml/presentation/stretchy-rtl-expected.html: Added.
* mathml/presentation/stretchy-rtl.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169617 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[CSS Regions][CSS Shapes] Add Shapes tests which flow through multiple regions
zoltan@webkit.org [Thu, 5 Jun 2014 16:16:16 +0000 (16:16 +0000)]
[CSS Regions][CSS Shapes] Add Shapes tests which flow through multiple regions
https://bugs.webkit.org/show_bug.cgi?id=133487

Reviewed by Mihnea Ovidenie.

The test verifies if the content with the shape wraps correctly through a region chain.

* fast/regions/shape-outside-floats/regions-shape-outside-content-flows-multiple-regions-expected.html: Added.
* fast/regions/shape-outside-floats/regions-shape-outside-content-flows-multiple-regions.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169616 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoSubpixel rendering: Buttons in default media controls shift vertically when controls...
zalan@apple.com [Thu, 5 Jun 2014 15:59:37 +0000 (15:59 +0000)]
Subpixel rendering: Buttons in default media controls shift vertically when controls fade in or out.
https://bugs.webkit.org/show_bug.cgi?id=133488

Reviewed by Simon Fraser.

Filter effects are not subpixel aware yet. They paint to integrally sized image buffers.
In order to ensure that the content is rendered to the the same position on the filter
source context as if there was no filter, the repaint rects need to be adjusted to match with
the internal filter snapping (enclosingIntRect).
This is a temporary change until after filter effects get subpixelized.

However, this changeset regresses RenderNameFlow clipping when the content is on subpixel position
and filter effect is present. Instead of adding the failing test cases to TestExpectations, I removed
the video controls from the <video> to make the tests pass, when possible (they just happen to have <video>)
and filed webkit.org/b/133523 to track the regression.

Source/WebCore:

Test: css3/filters/filter-is-on-subpixel-position.html

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::setupFilters):

LayoutTests:

* css3/filters/filter-is-on-subpixel-position-expected.html: Added.
* css3/filters/filter-is-on-subpixel-position.html: Added.
* fast/regions/inline-block-inside-anonymous-overflow.html:
* fast/regions/inline-block-overflow.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169615 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[GTK] run-perf-tests should run the tests inside the jhbuild shell.
commit-queue@webkit.org [Thu, 5 Jun 2014 13:45:17 +0000 (13:45 +0000)]
[GTK] run-perf-tests should run the tests inside the jhbuild shell.
https://bugs.webkit.org/show_bug.cgi?id=133533

Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-06-05
Reviewed by Carlos Garcia Campos.

* Scripts/webkitpy/common/multiprocessing_bootstrap.py:
(run): Remove the jhbuild-wrapper wrapper from here. It should be
on Scripts/webkitpy/port/gtk.py.
* Scripts/webkitpy/port/base.py:
(Port.set_option): Add a set_option(name, value) function to set
the optparse parameter "name" to the value "value", even if the
parameter "name" is already initialized.
* Scripts/webkitpy/port/gtk.py:
(GtkPort.__init__): Set the default wrapper to jhbuild-wrapper.
If another wrapper is specified via the option "-l --wrapper=x",
then prepend the jhbuild-wrapper to the one specified.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169614 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[EFL] Change expectations for three layout tests.
commit-queue@webkit.org [Thu, 5 Jun 2014 12:47:00 +0000 (12:47 +0000)]
[EFL] Change expectations for three layout tests.
https://bugs.webkit.org/show_bug.cgi?id=133538

Unreviewed EFL gardening.

Patch by Andrzej Badowski <a.badowski@samsung.com> on 2014-06-05

* platform/efl-wk2/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169613 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoResolve compiler error (call of overloaded 'schedule' function is ambiguous)
commit-queue@webkit.org [Thu, 5 Jun 2014 11:30:13 +0000 (11:30 +0000)]
Resolve compiler error (call of overloaded 'schedule' function is ambiguous)
https://bugs.webkit.org/show_bug.cgi?id=133467

Patch by Tanay C <tanay.c@samsung.com> on 2014-06-05
Reviewed by Carlos Garcia Campos.

* Shared/Downloads/soup/DownloadSoup.cpp:
(WebKit::DownloadClient::handleResponseLater): Explicitly casting second parameter to std::function<void()>

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169612 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[MediaStream] MediaStream.addTrack should not check for tracks ended state.
commit-queue@webkit.org [Thu, 5 Jun 2014 09:41:29 +0000 (09:41 +0000)]
[MediaStream] MediaStream.addTrack should not check for tracks ended state.
https://bugs.webkit.org/show_bug.cgi?id=133510

Patch by Kiran <kiran.guduru@samsung.com> on 2014-06-05
Reviewed by Eric Carlson.

Source/WebCore:
Adding and removing of tracks to a MediaStream should not have dependency
on tracks state. So the check for MediaStreamTrack's ended state has been
removed while adding a track in MediaStreamPrivate.cpp.

Test: fast/mediastream/MediaStream-add-ended-tracks.html

* platform/mediastream/MediaStreamPrivate.cpp:
(WebCore::MediaStreamPrivate::addTrack):

LayoutTests:
* fast/mediastream/MediaStream-add-ended-tracks-expected.txt: Added.
* fast/mediastream/MediaStream-add-ended-tracks.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169611 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[GTK] Remove ScrollViewGtk.cpp
yoon@igalia.com [Thu, 5 Jun 2014 09:25:30 +0000 (09:25 +0000)]
[GTK] Remove ScrollViewGtk.cpp
https://bugs.webkit.org/show_bug.cgi?id=133535

Reviewed by Carlos Garcia Campos.

Because GTK+ WK1 was removed, we don't have to consider special cases
handled in ScrollViewGtk.cpp.

No new tests are necessary because there is no behavior change.

* PlatformGTK.cmake:
* platform/ScrollView.cpp:
(WebCore::ScrollView::setScrollbarModes):
(WebCore::ScrollView::visibleContentRectInternal):
* platform/gtk/ScrollViewGtk.cpp: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169610 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[EFL] Add expectations for two accessibility layout tests.
commit-queue@webkit.org [Thu, 5 Jun 2014 09:23:08 +0000 (09:23 +0000)]
[EFL] Add expectations for two accessibility layout tests.
https://bugs.webkit.org/show_bug.cgi?id=133485

Unreviewed EFL gardening.

Patch by Andrzej Badowski <a.badowski@samsung.com> on 2014-06-05

* platform/efl-wk2/TestExpectations:
* platform/efl-wk2/accessibility/lists-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169609 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoVersioning.
bshafiei@apple.com [Thu, 5 Jun 2014 07:31:56 +0000 (07:31 +0000)]
Versioning.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169608 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoMathML operators not stretched horizontally
fred.wang@free.fr [Thu, 5 Jun 2014 06:35:04 +0000 (06:35 +0000)]
MathML operators not stretched horizontally
https://bugs.webkit.org/show_bug.cgi?id=72828

Reviewed by Chris Fleizach.

Source/WebCore:
This patch adds basic horizontal stretching rules for operators inside
an <munder>, <mover> or <munderover> elements. The stretchy operators
in such an element stretch to cover the size of the non-stretchy
operators. This only works when fonts that have an OpenType MATH table
are used.

Tests: mathml/opentype/horizontal-LatinModern.html
       mathml/opentype/opentype-stretchy-horizontal.html
       mathml/opentype/horizontal-LatinModern-munderover.html

* rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::MathMLOperatorDictionary::ExtractKeyHorizontal): We add an ordered list of operators that have horizontal stretch direction.
(WebCore::RenderMathMLOperator::RenderMathMLOperator): init m_Vertical
(WebCore::RenderMathMLOperator::SetOperatorProperties): set m_Vertical by checking whether the operator is in the horizontalOperators list.
(WebCore::RenderMathMLOperator::stretchTo): We do not stretch vertically
if the operator has horizontal direction.
We also add a new version stretchTo(LayoutUnit width) for horizontal stretching only.
(WebCore::RenderMathMLOperator::computePreferredLogicalWidths): Handle horizontal stretching: the maximumGlyphWidth is the maximum of
the base size or of the stretch size.
(WebCore::RenderMathMLOperator::getDisplayStyleLargeOperator): Add an ASSERT to ensure that this function is only called for vertical stretching.
(WebCore::RenderMathMLOperator::findStretchyData): Add an ASSERT to ensure that this function is not called to get the maximum width of a horizontal stretchy operator.
We take into account m_isVertical when calling getMathVariants or computing sizes.
There is not any Unicode-only construction for horizontal stretching, so a MATH table is required for horizontal stretching.
(WebCore::RenderMathMLOperator::updateStyle): Ignore some code paths specific to vertical stretching and take into account the m_Vertical parameters.
For horizontal stretching, the m_stretch*Baseline parameters are now updated to match the metrics of the size variant or of the maximum of the parts in the glyph assembly.
(WebCore::RenderMathMLOperator::computeLogicalHeight): logicalHeight is now explicitely the sum of m_stretchHeightAboveBaseline and m_stretchDepthBelowBaseline, since it can be different from the stretchSize() in horizontal stretching.
(WebCore::RenderMathMLOperator::paintGlyph): handle trimming for horizontal stretching.
(WebCore::RenderMathMLOperator::fillWithVerticalExtensionGlyph): rename the function and ensure it is only call for m_isVertical.
(WebCore::RenderMathMLOperator::fillWithHorizontalExtensionGlyph): same as fillWithVerticalExtensionGlyph, but for horizontal stretching.
(WebCore::RenderMathMLOperator::paint): For glyph assembly, choose between paintVerticalGlyphAssembly or paintHorizontalGlyphAssembly.
(WebCore::RenderMathMLOperator::paintVerticalGlyphAssembly): rename the function and ensure it is only call for m_isVertical.
(WebCore::RenderMathMLOperator::paintHorizontalGlyphAssembly): same as paintVerticalGlyphAssembly but for horizontal stretching.
* rendering/mathml/RenderMathMLOperator.h: we add a m_isVertical member to indicate the stretch direction and a m_stretchWidth to indicate the width of the stretchy character.
We define the horizontal counterparts of fillWith*ExtensionGlyph, paint*GlyphAssembly, GlyphPaintTrimming  StretchyData.
Finally stretchSize() takes into account the stretch direction.
* rendering/mathml/RenderMathMLUnderOver.cpp: We override the layout() function to stretch munderover children horizontally.
(WebCore::RenderMathMLUnderOver::layout):
* rendering/mathml/RenderMathMLUnderOver.h: we declare layout().

LayoutTests:
Add some tests to verify horizontal stretching with the MATH data.

* mathml/opentype/horizontal-LatinModern-munderover.html: Added.
* mathml/opentype/horizontal-LatinModern.html: Added.
* mathml/opentype/opentype-stretchy-horizontal.html: Added.
* platform/efl/TestExpectations: mark tests as failing.
* platform/gtk/mathml/opentype/horizontal-LatinModern-expected.png: Added.
* platform/gtk/mathml/opentype/horizontal-LatinModern-expected.txt: Added.
* platform/gtk/mathml/opentype/horizontal-LatinModern-munderover-expected.png: Added.
* platform/gtk/mathml/opentype/horizontal-LatinModern-munderover-expected.txt: Added.
* platform/gtk/mathml/opentype/opentype-stretchy-horizontal-expected.png: Added.
* platform/gtk/mathml/opentype/opentype-stretchy-horizontal-expected.txt: Added.
* platform/mac/TestExpectations: mark tests as failing.
* platform/win/TestExpectations: ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169607 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[CSS Shapes] Image lifetime is not properly handled for gradient shapes
bjonesbe@adobe.com [Thu, 5 Jun 2014 04:52:57 +0000 (04:52 +0000)]
[CSS Shapes] Image lifetime is not properly handled for gradient shapes
https://bugs.webkit.org/show_bug.cgi?id=133414

Reviewed by Simon Fraser.

Source/WebCore:
Refactor computedShape() and it's helpers to be able to properly
manage the lifetime of the image returned from StyleImage.

This is a port of a Blink patch by Hans Muller.

Test: fast/shapes/shape-outside-floats/shape-outside-uncached-gradient.html

* rendering/shapes/ShapeOutsideInfo.cpp:
(WebCore::ShapeOutsideInfo::createShapeForImage): Properly handle the
    lifetime of the image. Changed to use StyleImage::image() to get
    the image in all cases there's no need to special case cached
    images.
(WebCore::ShapeOutsideInfo::computedShape): Call createShapeForImage.
(WebCore::getShapeImageAndRect): Deleted.
* rendering/shapes/ShapeOutsideInfo.h:

LayoutTests:
* fast/shapes/shape-outside-floats/shape-outside-uncached-gradient-expected.txt: Added.
* fast/shapes/shape-outside-floats/shape-outside-uncached-gradient.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169606 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoiOS Debug build fix
timothy_horton@apple.com [Thu, 5 Jun 2014 01:05:45 +0000 (01:05 +0000)]
iOS Debug build fix

Rubber-stamped by Filip Pizlo.

* Configurations/LLVMForJSC.xcconfig:
Dead-code strip the llvmForJSC library unconditionally, to work around <rdar://problem/16920916>.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169605 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[CSS Shapes] Fix off by one in creating a RasterShape
bjonesbe@adobe.com [Thu, 5 Jun 2014 00:45:38 +0000 (00:45 +0000)]
[CSS Shapes] Fix off by one in creating a RasterShape
https://bugs.webkit.org/show_bug.cgi?id=133499

Reviewed by Darin Adler.

Source/WebCore:
Test: fast/shapes/shape-outside-floats/shape-outside-floats-shape-margin-crash.html

* rendering/shapes/RasterShape.cpp:
(WebCore::RasterShapeIntervals::computeShapeMarginIntervals):
    marginY1 is supposed to be an inclusive endpoint, however, maxY()
    is an exclusive endpoint. This simply changes marginY1 into an
    exclusive endpoint.

LayoutTests:
* fast/shapes/shape-outside-floats/shape-outside-floats-shape-margin-crash-expected.txt: Added.
* fast/shapes/shape-outside-floats/shape-outside-floats-shape-margin-crash.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169604 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[iOS][WK2] Restore the visual scroll position instead of the dom scroll position...
benjamin@webkit.org [Wed, 4 Jun 2014 23:41:15 +0000 (23:41 +0000)]
[iOS][WK2] Restore the visual scroll position instead of the dom scroll position when restoring states from the history
https://bugs.webkit.org/show_bug.cgi?id=133490

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-04
Reviewed by Tim Horton.

Source/WebCore:
Expose the WebKit1 parameter "ScaleIsInitial". It is used for a similar concept in WebKit2 (userHasChangedPageScaleFactor).

Add "exposedContentPosition", which is the scroll position of the exposed rect.

* history/HistoryItem.h:
(WebCore::HistoryItem::exposedContentPosition):
(WebCore::HistoryItem::setExposedContentPosition):
(WebCore::HistoryItem::setScaleIsInitial):
* loader/HistoryController.cpp:
(WebCore::HistoryController::saveScrollPositionAndViewStateToItem):

Source/WebKit2:
Instead of restoring the scroll position, restore the visual position. This makes pages appear at the same position
on screen ignoring changes in the obscured top inset.

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
* WebProcess/WebCoreSupport/ios/WebFrameLoaderClientIOS.mm:
(WebKit::WebFrameLoaderClient::saveViewStateToItem):
(WebKit::WebFrameLoaderClient::restoreViewState):
Save and restore userHasChangedPageScaleFactor to handle rescaling correctly.
Limit the scale into valid viewport limits in case the viewport meta tag has changed or the device has rotated.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
* WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::userHasChangedPageScaleFactor):
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::restorePageState):
(WebKit::WebPage::updateVisibleContentRects):
In updateVisibleContentRects, we keep track or the current difference between the exposed rect and the unobscured rect.
When restoring the page position, we use the current top inset and the saved exposed rect to restore the visual
scroll position.

It is not very robust as it does not resolve races between the two processes, but that is not worse than what we is there now.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169603 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoEnable WebGL on Windows.
achristensen@apple.com [Wed, 4 Jun 2014 22:22:23 +0000 (22:22 +0000)]
Enable WebGL on Windows.
https://bugs.webkit.org/show_bug.cgi?id=133503

Reviewed by Brent Fulgham.

Source/ThirdParty/ANGLE:
* changes.diff
Recorded additional changes from ANGLE.
* ANGLE.vcxproj/libEGL.vcxproj:
* ANGLE.vcxproj/libEGL.vcxproj.filters:
* ANGLE.vcxproj/libGLESv2.vcxproj:
* ANGLE.vcxproj/libGLESv2.vcxproj.filters:
* include/EGL/egl.h:
* include/EGL/eglsoftlinking.h: Added.
* include/GLES2/gl2.h:
* include/GLES2/gl2softlinking.h: Added.
Resurrected soft linking headers from r153664.
* src/libGLESv2/renderer/VertexBuffer.cpp:
(rx::VertexBufferInterface::directStoragePossible):
Compile fix for Win64.

Source/WebCore:
No new tests, but we should enable the webgl tests soon.

* html/canvas/WebGLRenderingContext.cpp:
(WebCore::WebGLRenderingContext::markContextChanged):
Check if the context and RenderBox are accelerated to use accelerated code path.
* html/canvas/WebGLRenderingContext.h:
Disable accelerated compositing on WebGL canvases until that works.
* platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp:
(WebCore::GraphicsContext3D::reshapeFBOs):
Compile fix after r166563.

Source/WebKit:
* WebKit.vcxproj/WebKit.sln:
Build ANGLE projects and add them as a dependency for linking WebKit.dll.
* WebKit.vcxproj/WebKit/WebKitCommon.props:
Link to ANGLE libraries to get EGL, GLESv2, and GLSL translator symbols.
* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
Added 64-bit linker symbol.

Source/WTF:
* wtf/FeatureDefines.h:
Enable WebGL for AppleWin and WinCairo ports.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169601 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoRegression(r169547): Crash in WebCore::styleForFirstLetter() while loading http:...
benjamin@webkit.org [Wed, 4 Jun 2014 22:08:44 +0000 (22:08 +0000)]
Regression(r169547): Crash in WebCore::styleForFirstLetter() while loading thenextweb.com/apple/2014/02/21/apple-confirms-acquired-testflight-creator-burstly/
https://bugs.webkit.org/show_bug.cgi?id=133500

Reviewed by Antti Koivisto.

Source/WebCore:
Unlike the other tree marking optimization, adding HasPseudoStyle() on an element style
during style resolution must be conservative and not set the flag unless every other filter
matched first.

After r169547, the SelectorChecker was setting flags on HasPseudoStyle() during the pseudo
element matching. If that passed but the remaining filter did not match, the element style
could have the flag "FIRST_LETTER" while not being able to resolve a style for "FIRST_LETTER".

When the layout code was creating the renderer, it would find the FIRST_LETTER flag on the main style
and try to get the specific style for FIRST_LETTER. Since no rule would resolve for FIRST_LETTER,
the style would be null and the code would be crashing when accessing its parameters.

This patch fixes the issue by moving the style marking for pseudo element at the end of the matching.

Test: fast/css/first-letter-on-non-matching-selectors.html

* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::match):
(WebCore::SelectorChecker::matchRecursively):
* css/SelectorChecker.h:
(WebCore::SelectorChecker::match): Deleted.

LayoutTests:
* fast/css/first-letter-on-non-matching-selectors-expected.txt: Added.
* fast/css/first-letter-on-non-matching-selectors.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169599 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoArrayIterator should not be exposed in Safari 8
oliver@apple.com [Wed, 4 Jun 2014 21:54:46 +0000 (21:54 +0000)]
ArrayIterator should not be exposed in Safari 8
https://bugs.webkit.org/show_bug.cgi?id=133494

Reviewed by Michael Saboff.

Source/JavaScriptCore:
Separate out types that require constructor objects, and don't
include the iterator types in that list.

* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::reset):
* runtime/JSGlobalObject.h:

LayoutTests:
Add tests.

* js/no-iterator-constructors.html: Added.
* js/script-tests/no-iterator-constructors.js: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169598 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[iOS] allow UA to specify network interface
eric.carlson@apple.com [Wed, 4 Jun 2014 21:40:31 +0000 (21:40 +0000)]
[iOS] allow UA to specify network interface
https://bugs.webkit.org/show_bug.cgi?id=133396

Reviewed by Jer Noble.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::mediaPlayerInterfaceName): Return settings->networkInterfaceName.
* html/HTMLMediaElement.h:

* platform/graphics/MediaPlayer.cpp:
(WebCore::MediaPlayer::mediaPlayerNetworkInterfaceName): Pass through the media element.
* platform/graphics/MediaPlayer.h:
(WebCore::MediaPlayerClient::mediaPlayerNetworkInterfaceName):

* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL): If the media player
    wants to use a specific netork interface name, pass it to the AVAsset allocator.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169596 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoDFG::Safepoint::begin() should set m_didCallBegin before releasing the rightToRun...
fpizlo@apple.com [Wed, 4 Jun 2014 21:28:57 +0000 (21:28 +0000)]
DFG::Safepoint::begin() should set m_didCallBegin before releasing the rightToRun lock, because otherwise, Safepoint::checkLivenessAndVisitChildren() may assert due to a race
https://bugs.webkit.org/show_bug.cgi?id=133525
<rdar://problem/16790296>

Reviewed by Oliver Hunt.

* dfg/DFGSafepoint.cpp:
(JSC::DFG::Safepoint::begin):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169595 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoPasting multiple photos on iOS only pastes one photo
jhoneycutt@apple.com [Wed, 4 Jun 2014 20:46:39 +0000 (20:46 +0000)]
Pasting multiple photos on iOS only pastes one photo

<https://bugs.webkit.org/show_bug.cgi?id=133495>
<rdar://problem/16138616>

Reviewed by Alexey Proskuryakov.

* editing/ios/EditorIOS.mm:
(WebCore::Editor::pasteWithPasteboard):
Create a WebContentReader. For each pasteboard item, get the document
fragment for that item, and add it to the reader. If we fail to get
the fragment from the delegate, fall back to using
webContentFromPasteboard() as before.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169594 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUse references instead of pointers for non-optional arguments during text layout
commit-queue@webkit.org [Wed, 4 Jun 2014 20:42:33 +0000 (20:42 +0000)]
Use references instead of pointers for non-optional arguments during text layout
https://bugs.webkit.org/show_bug.cgi?id=133501

Patch by Myles C. Maxfield <litherum@gmail.com> on 2014-06-04
Reviewed by Tim Horton.

This patch applies some cleanup to InlineBox layout functions to take
references instead of pointers where appropriate.

No new tests are necessary because there is no behavior change.

* rendering/InlineFlowBox.cpp:
(WebCore::InlineFlowBox::computeLogicalBoxHeights): Make the function take a
reference to the RootInlineBox instead of a pointer. This function does some
rounding.
(WebCore::InlineFlowBox::addTextBoxVisualOverflow): Make the function take a
reference to the InlineTextBox instead of a pointer.
(WebCore::InlineFlowBox::computeOverflow): Update call to addTextBoxVisualOverflow
to pass a reference instead of a pointer.
* rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::alignBoxesInBlockDirection): Update call to
computeLogicalBoxHeights to pass a reference instead of a pointer.
(WebCore::RootInlineBox::ascentAndDescentForBox): Make the function take a
reference to the InlineBox instead of a pointer.
(WebCore::RootInlineBox::includeLeadingForBox): Make the function take a reference
instead of a pointer.
(WebCore::RootInlineBox::includeFontForBox): Ditto.
(WebCore::RootInlineBox::includeGlyphsForBox): Ditto.
(WebCore::RootInlineBox::includeMarginForBox): Ditto.
* rendering/RootInlineBox.h: Move functions that are not externally called into
a private: section. In addition, update function signatures to take references
instead of pointers.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169593 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoLists styled with SVG fonts are not rendered as expected
mmaxfield@apple.com [Wed, 4 Jun 2014 20:22:16 +0000 (20:22 +0000)]
Lists styled with SVG fonts are not rendered as expected
https://bugs.webkit.org/show_bug.cgi?id=133198

Reviewed by Simon Fraser.

Source/WebCore:
There were a couple places in RenderListMarker and RenderMenuList that were
implicitly creating TextRuns by passing a String to a function which
expected a TextRun. Because TextRun has a constructor which takes a single
String and isn't marked explicit, TextRuns were being created without
any of the associated code that initializes the TextRun (such as creating
a RenderingContext if necessary).

There is currently one more client of this code that needs to be fixed.
This is in RenderThemeIOS::adjustMenuListButtonStyle(). However, fixing
this will be a somewhat large change, and is out of scope for this patch.
I will submit a follow-up patch that fixes this permanently. Once this is
fixed, I can mark TextRun's constructors as explicit.

Test: svg/custom/list-items-with-svg-font-family.html

* platform/graphics/TextRun.h:
(WebCore::TextRun::TextRun): Mark constructors as explicit.
* rendering/RenderListMarker.cpp:
(WebCore::RenderListMarker::computePreferredLogicalWidths): Call
RenderBlock::constructTextRun.
(WebCore::RenderListMarker::getRelativeMarkerRect): Ditto.
* rendering/RenderMenuList.cpp:
(RenderMenuList::updateOptionsWidth): Ditto.
* rendering/RenderThemeIOS.mm:
(WebCore::adjustInputElementButtonStyle): Instead of crashing, mark
form controls rendered with SVG fonts as having 0 width. This isn't
perfect, but fixing this is out of scope for this patch.

LayoutTests:
See per-file comments.

* platform/ios-sim/fonts/input-style-with-svg-font-crash.html: Added. Make sure
that iOS input elements don't crash when styled with SVG fonts.
* platform/ios-sim/fonts/resources/graffiti.svg: Added. SVG font for above test.
* svg/custom/list-items-with-svg-font-family-expected.txt: Added.
* svg/custom/list-items-with-svg-font-family.html: Added. Make sure there is
no crash when styling list elements with SVG fonts.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169591 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[GTK] Unreviewed GTK gardening.
commit-queue@webkit.org [Wed, 4 Jun 2014 19:25:23 +0000 (19:25 +0000)]
[GTK] Unreviewed GTK gardening.

Add the new HiDPI tests to the bug that tracks support for this
feature on GTK.
Mark and report the new tests introduced on r169407 that timeout.
Mark and report the new accesibility test introduced on r169427
that fails.
Move the reported timeout tests to the timeout section of the
TestExpectations file.

Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-06-04

* platform/gtk/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169590 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoBuild ASan WebKit for iOS Simulator
dfarler@apple.com [Wed, 4 Jun 2014 18:18:09 +0000 (18:18 +0000)]
Build ASan WebKit for iOS Simulator
https://bugs.webkit.org/show_bug.cgi?id=133489

Reviewed by Darin Adler.

* DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig:
* DumpRenderTree/mac/Configurations/DumpRenderTreeApp.xcconfig:
- Add missing ASan LDFLAGS.
* asan/asan.xcconfig:
- Split compiler-rt linker flags for OS X and iOS Simulator

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169589 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoWebKit should adopt journal_mode=wal for all SQLite databases.
akling@apple.com [Wed, 4 Jun 2014 16:24:03 +0000 (16:24 +0000)]
WebKit should adopt journal_mode=wal for all SQLite databases.
<https://webkit.org/b/133496>
<rdar://problem/15600186>

We already had code to enable write-ahead logging, but it didn't work
since calling SQLiteStatement::step() without first calling prepare()
is a no-op.

Converted it to use into a simple executeCommand() instead.

Reviewed by Brady Eidson.

* platform/sql/SQLiteDatabase.cpp:
(WebCore::SQLiteDatabase::open):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169587 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoREGRESSION: [CSS Regions] Regions with overflow:auto generate scrollbars even if...
stavila@adobe.com [Wed, 4 Jun 2014 12:41:27 +0000 (12:41 +0000)]
REGRESSION: [CSS Regions] Regions with overflow:auto generate scrollbars even if the content flows into the following regions and as such, should not be scrolled
https://bugs.webkit.org/show_bug.cgi?id=133481

Reviewed by Antti Koivisto.

Source/WebCore:
When enlarging the layout overflow of a scrollable region, the portion of the content that flows
in the region must be taken into consideration. If the content continues to flow into the next
region, the layout overflow of the current region must not be enlarged.

Test: fast/regions/scrollable-first-region.html

* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::addRegionsOverflowFromChild):

LayoutTests:
Added test for a large item flowed through two regions with the first region having overflow:auto.
The region must NOT scroll.

* fast/regions/scrollable-first-region-expected.html: Added.
* fast/regions/scrollable-first-region.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169586 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoFix some corner cases of :hover and :active in quirks mode
benjamin@webkit.org [Wed, 4 Jun 2014 07:25:29 +0000 (07:25 +0000)]
Fix some corner cases of :hover and :active in quirks mode
https://bugs.webkit.org/show_bug.cgi?id=133493

Reviewed by Andreas Kling.

Source/WebCore:
Previously, the quirks mode of :hover and :active were evaluated from the SelectorFragment
in fragmentOnlyMatchesLinksInQuirksMode(). There were two problems with that approach:
1) The FragmentGenerator optimizes out some filter when they always match or can never match.
   Those fragment should still qualify :hover and :active, but they were lost
   for fragmentOnlyMatchesLinksInQuirksMode().
2) Explicitely listing every attribute of SelectorFragment in fragmentOnlyMatchesLinksInQuirksMode()
   was extremly fragile. When :not() and :-webkit-any() were added, we forgot to update the quirks
   exceptions.

This patch moves the quirks mode exception code from the code generator to the Fragment generator.
The useless filters are no longer ignored for the quirks, and we don't need to update the quirks mode detection
with every change of SelectorFragment.

It is inefficient and ugly, but that is how that quirks is defined. It is only a problem for compilation,
execution time remains unchanged.

* cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::SelectorFragment::SelectorFragment):
(WebCore::SelectorCompiler::addPseudoClassType):
(WebCore::SelectorCompiler::SelectorCodeGenerator::SelectorCodeGenerator):
(WebCore::SelectorCompiler::pseudoClassOnlyMatchesLinksInQuirksMode):
(WebCore::SelectorCompiler::constructFragments):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateSpecialFailureInQuirksModeForActiveAndHoverIfNeeded):
(WebCore::SelectorCompiler::fragmentOnlyMatchesLinksInQuirksMode): Deleted.

LayoutTests:
Add test case for the corner cases.

* fast/selectors/active-hover-quirks-expected.txt:
* fast/selectors/active-quirks-expected.txt:
* fast/selectors/hover-quirks-expected.txt:
* fast/selectors/resources/hover-active-quirks-utility.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169585 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoNeed to check invalid scheme in navigator content utils
gyuyoung.kim@samsung.com [Wed, 4 Jun 2014 03:33:30 +0000 (03:33 +0000)]
Need to check invalid scheme in navigator content utils
https://bugs.webkit.org/show_bug.cgi?id=133296

Reviewed by Darin Adler.

Source/WebCore:
* Modules/navigatorcontentutils/NavigatorContentUtils.cpp:
(WebCore::verifyProtocolHandlerScheme): Just fix a wrong typo.

LayoutTests:
Add tests that check that schemes with colons in their names are rejected.
Spec: http://www.whatwg.org/specs/web-apps/current-work/#custom-handlers

* fast/dom/NavigatorContentUtils/is-protocol-handler-registered-expected.txt:
* fast/dom/NavigatorContentUtils/is-protocol-handler-registered.html:
* fast/dom/NavigatorContentUtils/register-protocol-handler-expected.txt:
* fast/dom/NavigatorContentUtils/register-protocol-handler.html:
* fast/dom/NavigatorContentUtils/unregister-protocol-handler-expected.txt:
* fast/dom/NavigatorContentUtils/unregister-protocol-handler.html:
* platform/efl/fast/dom/NavigatorContentUtils/register-protocol-handler-expected.txt:
* platform/efl/fast/dom/NavigatorContentUtils/unregister-protocol-handler-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169579 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoWebKit2 View Gestures (Zoom): Can show unpainted regions when zoom-pinching-out
timothy_horton@apple.com [Wed, 4 Jun 2014 01:27:00 +0000 (01:27 +0000)]
WebKit2 View Gestures (Zoom): Can show unpainted regions when zoom-pinching-out
https://bugs.webkit.org/show_bug.cgi?id=133472
<rdar://problem/15686848>

Reviewed by Simon Fraser.

* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::flushLayers):
(WebKit::TiledCoreAnimationDrawingArea::applyTransientZoomToLayers):
(WebKit::TiledCoreAnimationDrawingArea::adjustTransientZoom):
Use prepopulateRect() when zooming out to ensure that we have tiles for the current exposed area.

Factor applyTransientZoomToLayers out of adjustTransientZoom, so that
flushLayers can call applyTransientZoomToLayers without ending up calling prepopulateRect()
during layer flushing, which causes trouble.

It is OK to populate layers at the current scale even when zooming out, because the overdraw
already covers most of the zoomed out area, and we're only adding a few more tiles at worst.

* WebCore.exp.in:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169576 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoAdd myself (yoav@yoav.ws) to contributors.json
yoav@yoav.ws [Tue, 3 Jun 2014 22:50:00 +0000 (22:50 +0000)]
Add myself (yoav@yoav.ws) to contributors.json

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169574 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoRefactor the srcset parser into its own file
yoav@yoav.ws [Tue, 3 Jun 2014 22:44:26 +0000 (22:44 +0000)]
Refactor the srcset parser into its own file
https://bugs.webkit.org/show_bug.cgi?id=133480

Reviewed by Andreas Kling.

No new tests, since this patch doesn't change the parser's behavior.

This patch moves the srcset parser into its own file,
in order to prepare the code for alignment with recent spec changes.

* CMakeLists.txt:
* html/HTMLImageElement.cpp:
* html/parser/HTMLParserIdioms.cpp:
(WebCore::compareByScaleFactor): Deleted.
(WebCore::parseDescriptors): Deleted.
(WebCore::parseImagesWithScaleFromSrcsetAttribute): Deleted.
(WebCore::bestFitSourceForImageAttributes): Deleted.
* html/parser/HTMLParserIdioms.h:
(WebCore::ImageWithScale::ImageWithScale): Deleted.
(WebCore::ImageWithScale::imageURL): Deleted.
(WebCore::ImageWithScale::scaleFactor): Deleted.
* html/parser/HTMLPreloadScanner.cpp:
* html/parser/HTMLSrcsetParser.cpp: Added.
(WebCore::compareByScaleFactor):
(WebCore::parseDescriptors):
(WebCore::parseImagesWithScaleFromSrcsetAttribute):
(WebCore::bestFitSourceForImageAttributes):
* html/parser/HTMLSrcsetParser.h: Added.
(WebCore::ImageWithScale::ImageWithScale):
(WebCore::ImageWithScale::imageURL):
(WebCore::ImageWithScale::scaleFactor):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169573 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[ATK] accessibility/textarea-selected-text-range.html is failing
mario.prada@samsung.com [Tue, 3 Jun 2014 21:38:00 +0000 (21:38 +0000)]
[ATK] accessibility/textarea-selected-text-range.html is failing
https://bugs.webkit.org/show_bug.cgi?id=133479

Reviewed by Chris Fleizach.

Implement atk_text_set_caret_offset() in terms of
atk_text_set_selection() for zero-length selections.

No new tests needed, the following test should just start
passing again now: accessibility/textarea-selected-text-range.html.

* accessibility/atk/WebKitAccessibleInterfaceText.cpp:
(webkitAccessibleTextSetCaretOffset): Reimplemented this function
in terms of webkitAccessibleTextSetSelection().

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169572 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoCorrected arm64 assertion in css jit.
achristensen@apple.com [Tue, 3 Jun 2014 21:37:06 +0000 (21:37 +0000)]
Corrected arm64 assertion in css jit.

Rubber stamped by Benjamin Poulain.

* cssjit/StackAllocator.h:
(WebCore::StackAllocator::pop):
Changed assertion from incorrectly matching x86_64 to using the correct minimum offset,
taking into account that a stackUnitInBytes is used for two registers on arm64
except the last stack unit, which could only be used for one register if there are
an odd number of registers.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169571 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[iOS] Start ignoring common bogus viewport parameters
benjamin@webkit.org [Tue, 3 Jun 2014 21:31:26 +0000 (21:31 +0000)]
[iOS] Start ignoring common bogus viewport parameters
https://bugs.webkit.org/show_bug.cgi?id=133466
<rdar://problem/16203396>

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

Incorrect viewports are spreading really quickly lately. We have to start ignoring
some combinations of arguments as they are almost always used incorrectly, causing
a poor user experience on those websites.

* dom/ViewportArguments.cpp:
(WebCore::finalizeViewportArguments):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169570 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoCSS JIT: add support for the "any" pseudo class
commit-queue@webkit.org [Tue, 3 Jun 2014 21:26:50 +0000 (21:26 +0000)]
CSS JIT: add support for the "any" pseudo class
https://bugs.webkit.org/show_bug.cgi?id=133473

Patch by Yusuke Suzuki <utatane.tea@gmail.com> on 2014-06-03
Reviewed by Benjamin Poulain.

Add support for the :any pseudo class.

Source/WebCore:
Test: fast/selectors/pseudo-class-any.html

* cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::addPseudoClassType):
(WebCore::SelectorCompiler::minimumRegisterRequirements):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatchesAnyPseudoClass):

LayoutTests:
* fast/selectors/pseudo-class-any-expected.txt: Added.
* fast/selectors/pseudo-class-any.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169569 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUpdate PlatformTimeRanges to use MediaTime rather than doubles for time values.
jer.noble@apple.com [Tue, 3 Jun 2014 21:09:07 +0000 (21:09 +0000)]
Update PlatformTimeRanges to use MediaTime rather than doubles for time values.
https://bugs.webkit.org/show_bug.cgi?id=133454

Reviewed by Eric Carlson.

Source/WebCore:
PlatformTimeRanges will now use MediaTime, so operations at the platform level won't
lose precision when converting to and from doubles and rational time values like CMTime.

* Modules/mediasource/SourceBuffer.cpp:
(WebCore::currentTimeFudgeFactor):
(WebCore::SourceBuffer::hasCurrentTime):
(WebCore::SourceBuffer::hasFutureTime):
(WebCore::SourceBuffer::canPlayThrough):
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::parseAttribute):
* html/TimeRanges.cpp:
(WebCore::TimeRanges::TimeRanges):
(WebCore::TimeRanges::start):
(WebCore::TimeRanges::end):
(WebCore::TimeRanges::add):
(WebCore::TimeRanges::contain):
(WebCore::TimeRanges::find):
(WebCore::TimeRanges::nearest):
(WebCore::TimeRanges::totalDuration):
* platform/graphics/MediaPlayerPrivate.h:
(WebCore::MediaPlayerPrivateInterface::seekable):
* platform/graphics/PlatformTimeRanges.cpp:
(WebCore::PlatformTimeRanges::create):
(WebCore::PlatformTimeRanges::PlatformTimeRanges):
(WebCore::PlatformTimeRanges::invert):
(WebCore::PlatformTimeRanges::start):
(WebCore::PlatformTimeRanges::end):
(WebCore::PlatformTimeRanges::add):
(WebCore::PlatformTimeRanges::contain):
(WebCore::PlatformTimeRanges::find):
(WebCore::PlatformTimeRanges::nearest):
(WebCore::PlatformTimeRanges::totalDuration):
* platform/graphics/PlatformTimeRanges.h:
(WebCore::PlatformTimeRanges::Range::Range):
(WebCore::PlatformTimeRanges::Range::isPointInRange):
* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
(WebCore::MediaPlayerPrivateAVFoundation::extraMemoryCost):
* platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
(WebCore::MediaPlayerPrivateAVFoundationCF::platformBufferedTimeRanges):
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::platformBufferedTimeRanges):
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekable):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::buffered): Deleted.
* platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
(WebCore::MediaPlayerPrivateQTKit::buffered):
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::buffered):
* platform/mock/mediasource/MockMediaPlayerMediaSource.cpp:
(WebCore::MockMediaPlayerMediaSource::advanceCurrentTime):

LayoutTests:
Update the video-pause-immediately to allow for small floating point differences.

* media/video-pause-immediately-expected.txt:
* media/video-pause-immediately.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169568 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[iOS][WK2] Align the highlight rects with device pixels
benjamin@webkit.org [Tue, 3 Jun 2014 20:59:04 +0000 (20:59 +0000)]
[iOS][WK2] Align the highlight rects with device pixels
https://bugs.webkit.org/show_bug.cgi?id=133464

Source/WebCore:

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-03
Reviewed by Enrica Casucci.

Add utility functions to pixel align points and rects.

* WebCore.exp.in:
* platform/graphics/FloatPoint.h:
(WebCore::flooredToDevicePixels):
(WebCore::ceiledToDevicePixels):
* platform/graphics/FloatRect.cpp:
(WebCore::enclosingRectExtendedToDevicePixels):
* platform/graphics/FloatRect.h:

Source/WebKit2:
<rdar://problem/16708861>

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-03
Reviewed by Enrica Casucci.

* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _showTapHighlightWithColor:WebCore::quads:WebCore::topLeftRadius:WebCore::topRightRadius:WebCore::bottomLeftRadius:WebCore::bottomRightRadius:WebCore::]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169567 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoAdd Igalia WebKit blog to the planet
rego@igalia.com [Tue, 3 Jun 2014 20:13:32 +0000 (20:13 +0000)]
Add Igalia WebKit blog to the planet
https://bugs.webkit.org/show_bug.cgi?id=133446

Reviewed by Bem Jones-Bey.

* config.ini: Add Igalia WebKit blog to the planet and remove Martin's
and Xan's blogs as they will be included there.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169566 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoPrepopulated tiles may never be unparented from TileGrids with aggressive tile retent...
timothy_horton@apple.com [Tue, 3 Jun 2014 18:59:28 +0000 (18:59 +0000)]
Prepopulated tiles may never be unparented from TileGrids with aggressive tile retention on
https://bugs.webkit.org/show_bug.cgi?id=133471

Reviewed by Simon Fraser.

* platform/graphics/ca/mac/TileController.h:
* platform/graphics/ca/mac/TileGrid.h:
(WebCore::TileGrid::TileCohortInfo::TileCohortInfo):
* platform/graphics/ca/mac/TileGrid.mm:
(WebCore::TileGrid::TileCohortInfo::timeUntilExpiration):
(WebCore::TileGrid::cohortRemovalTimerFired):
Factor timeUntilExpiration() out of cohortRemovalTimerFired().

(WebCore::TileGrid::revalidateTiles):
Ensure that secondary tiles that never touch the primary coverage rect
are still unparented eventually (after 2 seconds, the same lifetime we use
for cohorts in non-aggressive retention).
Schedule another revalidateTiles if we left parented secondary tiles behind.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169565 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoTileGrid::prepopulateRect populates the wrong tiles if scale != 1
timothy_horton@apple.com [Tue, 3 Jun 2014 18:13:28 +0000 (18:13 +0000)]
TileGrid::prepopulateRect populates the wrong tiles if scale != 1
https://bugs.webkit.org/show_bug.cgi?id=133470

Reviewed by Simon Fraser.

* page/FrameView.cpp:
(WebCore::FrameView::requestScrollPositionUpdate):
* platform/graphics/ca/mac/TileGrid.mm:
(WebCore::TileGrid::prepopulateRect):
(WebCore::TileGrid::revalidateTiles):
prepopulateRect takes rects in "content" coordinates, but when later passed to
ensureTilesForRect, they're expected to be in the same coordinate space as the layer's
visible rect, and are scaled up. So, apply the inverse scale to counter that.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169564 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoMinor TileCoverageMap refinements
timothy_horton@apple.com [Tue, 3 Jun 2014 18:12:44 +0000 (18:12 +0000)]
Minor TileCoverageMap refinements
https://bugs.webkit.org/show_bug.cgi?id=133468

Reviewed by Simon Fraser.

* platform/graphics/ca/mac/TileController.mm:
(WebCore::TileController::setContentsScale):
* platform/graphics/ca/mac/TileCoverageMap.h:
* platform/graphics/ca/mac/TileCoverageMap.mm:
(WebCore::TileCoverageMap::TileCoverageMap):
(WebCore::TileCoverageMap::setDeviceScaleFactor):
Keep the TileCoverageMap's contentsScale at the device scale factor, so that it
looks sharp on non-1x displays.

(WebCore::TileCoverageMap::update):
Decrease the height available for the TileCoverageMap by the topContentInset;
it's already being vertically offset by the topContentInset, but the height was
not adjusted, so it would run off the bottom of the window.

* platform/graphics/ca/mac/TileGrid.mm:
(WebCore::TileGrid::drawTileMapContents):
If using aggressive tile retention (and thus not coloring tiles based on age),
dim tiles that aren't in the visible cohort.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169563 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoFix a typo, TileGrid::updateTilerLayerProperties
timothy_horton@apple.com [Tue, 3 Jun 2014 18:11:31 +0000 (18:11 +0000)]
Fix a typo, TileGrid::updateTilerLayerProperties
https://bugs.webkit.org/show_bug.cgi?id=133474

Reviewed by Anders Carlsson.

* platform/graphics/ca/mac/TileController.mm:
(WebCore::TileController::setAcceleratesDrawing):
(WebCore::TileController::setTilesOpaque):
(WebCore::TileController::setTileDebugBorderWidth):
(WebCore::TileController::setTileDebugBorderColor):
* platform/graphics/ca/mac/TileGrid.h:
* platform/graphics/ca/mac/TileGrid.mm:
(WebCore::TileGrid::updateTileLayerProperties):
(WebCore::TileGrid::updateTilerLayerProperties):
s/updateTilerLayerProperties/updateTileLayerProperties/g

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169562 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoLLVM soft-linking should be truly fail-silent
fpizlo@apple.com [Tue, 3 Jun 2014 16:42:00 +0000 (16:42 +0000)]
LLVM soft-linking should be truly fail-silent
https://bugs.webkit.org/show_bug.cgi?id=133482

Reviewed by Mark Lam.

* llvm/InitializeLLVMPOSIX.cpp:
(JSC::initializeLLVMPOSIX): Missing return statement in the dlsym() returning null case.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169561 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[SOUP] ResourceLoadTiming.responseStart is always 0
carlosgc@webkit.org [Tue, 3 Jun 2014 12:04:01 +0000 (12:04 +0000)]
[SOUP] ResourceLoadTiming.responseStart is always 0
https://bugs.webkit.org/show_bug.cgi?id=133469

Reviewed by Sergio Villar Senin.

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::sendRequestCallback): Record the responseStart time.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169560 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoREGRESSION(r169092 and r169102): Skip failing JSC tests poperly on non-x86 Darwin...
commit-queue@webkit.org [Tue, 3 Jun 2014 11:40:34 +0000 (11:40 +0000)]
REGRESSION(r169092 and r169102): Skip failing JSC tests poperly on non-x86 Darwin platforms
https://bugs.webkit.org/show_bug.cgi?id=133149

Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-06-03
Reviewed by Csaba Osztrogonác.

PerformanceTests/SunSpider:
* profiler-test.yaml: Skip profiler tests only if the architecture isn't x86 and the host is Darwin.

Source/JavaScriptCore:
* tests/mozilla/mozilla-tests.yaml: Skip js1_5/Regress/regress-159334.js only if the architecture isn't x86 and the host is Darwin.

Tools:
* Scripts/run-jsc-stress-tests: Added determineOS to determine the host operating system the script run on.

LayoutTests:
* js/script-tests/function-apply-many-args.js: Skip it only if the architecture isn't x86 and the host is Darwin.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169559 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoAdd a verbose flag to binding tests
commit-queue@webkit.org [Tue, 3 Jun 2014 06:51:26 +0000 (06:51 +0000)]
Add a verbose flag to binding tests
https://bugs.webkit.org/show_bug.cgi?id=122303

Patch by Tibor Meszaros <tmeszaros.u-szeged@partner.samsung.com> on 2014-06-02
Reviewed by Csaba Osztrogonác.

This patch will:
- Add a verbose keyword argument to the BindingsTests constructor,
- Add --no-verbose option to the run-bindigs-test.
Verbose mode, which is on by default, prints positive results to stdout as before.
When the --no-verbose option added to run-bindings-tests, positive results are not printed at all.

Original patch from Matthew Hanson <matthew_hanson@apple.com>

* Scripts/run-bindings-tests:
(main):
* Scripts/webkitpy/bindings/main.py:
(BindingsTests.__init__):
(BindingsTests.detect_changes):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169558 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUnreviewed EFL gardening. Rebaseline after r169522.
jinwoo7.song@samsung.com [Tue, 3 Jun 2014 05:47:13 +0000 (05:47 +0000)]
Unreviewed EFL gardening. Rebaseline after r169522.

* platform/efl/svg/W3C-SVG-1.1/animate-elem-32-t-expected.png:
* platform/efl/svg/W3C-SVG-1.1/shapes-circle-02-t-expected.png:
* platform/efl/svg/W3C-SVG-1.1/shapes-ellipse-02-t-expected.png:
* platform/efl/svg/W3C-SVG-1.1/shapes-intro-01-t-expected.png:
* platform/efl/svg/W3C-SVG-1.1/shapes-rect-02-t-expected.png:
* svg/W3C-SVG-1.1/animate-elem-32-t-expected.txt:
* svg/W3C-SVG-1.1/shapes-circle-02-t-expected.txt:
* svg/W3C-SVG-1.1/shapes-ellipse-02-t-expected.txt:
* svg/W3C-SVG-1.1/shapes-intro-01-t-expected.txt:
* svg/W3C-SVG-1.1/shapes-rect-02-t-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169557 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUnreviewed EFL gardening. Rebaseline.
jinwoo7.song@samsung.com [Tue, 3 Jun 2014 04:59:18 +0000 (04:59 +0000)]
Unreviewed EFL gardening. Rebaseline.

* platform/efl/mathml/opentype/large-operators-LatinModern-expected.txt:
* platform/efl/mathml/opentype/opentype-stretchy-expected.txt:
* platform/efl/mathml/opentype/vertical-LatinModern-expected.txt:
* platform/efl/mathml/presentation/mo-stretch-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169556 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUnreviewed EFL gardening.
jinwoo7.song@samsung.com [Tue, 3 Jun 2014 02:04:39 +0000 (02:04 +0000)]
Unreviewed EFL gardening.

Move the EFL specific test result to platform directory.

* platform/efl/fast/events/ghostly-mousemoves-in-subframe-expected.txt: Renamed from LayoutTests/fast/events/ghostly-mousemoves-in-subframe-expected.txt.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169555 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoUnreviewed EFL gardening.
jinwoo7.song@samsung.com [Tue, 3 Jun 2014 01:59:23 +0000 (01:59 +0000)]
Unreviewed EFL gardening.

Added expectation result after r167684, r169257, and r169390.

* fast/events/ghostly-mousemoves-in-subframe-expected.txt: Added.
* platform/efl/fast/box-shadow/hidpi-webkit-box-shadow-subpixel-position-expected.txt: Added.
* platform/efl/fast/multicol/pagination/nested-transforms-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169554 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoREGRESSION (iOS WebKit2): Single tap in pages with focus on load will clear the selec...
enrica@apple.com [Tue, 3 Jun 2014 01:26:10 +0000 (01:26 +0000)]
REGRESSION (iOS WebKit2): Single tap in pages with focus on load will clear the selection after the keyboard appears.
https://bugs.webkit.org/show_bug.cgi?id=133465
<rdar://problem/17059189>

Reviewed by Benjamin Poulain.

If a page focuses an input field on load we don't bring the keyboard on screen
since the keyboard is only shown when the user interacts with the page with gestures.
Still the WebProcess sets the focus and the selection according to the rules.
We need to make sure the UI process doesn't accidentally clear this selection
when the user starts the interaction with the page.
This patch also improves the function that retrieves the autocorrection data
to be returned to the keyboard, making sure that we always send back a reply
even when we don't have a valid selection.

* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _singleTapCommited:]):
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::requestAutocorrectionData):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169553 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoError running copy-webkitlibraries-to-product-directory
ddkilzer@apple.com [Tue, 3 Jun 2014 01:15:43 +0000 (01:15 +0000)]
Error running copy-webkitlibraries-to-product-directory
<http://webkit.org/b/133449>
<rdar://problem/17047638>

Reviewed by Filip Pizlo.

* Makefile: Ignore the mysterious future.  Use "@true" to
suppress the annoying "Nothing to be done for `libs'." message.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169552 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[iOS] WebCore fails to build: platform/network/mac/ResourceHandleMac.mm:729:62: error...
ddkilzer@apple.com [Tue, 3 Jun 2014 00:37:02 +0000 (00:37 +0000)]
[iOS] WebCore fails to build: platform/network/mac/ResourceHandleMac.mm:729:62: error: use of undeclared identifier '_CFURLConnectionCopyTimingData'
<http://webkit.org/b/133445>
<rdar://problem/17090035>

Reviewed by Alexey Proskuryakov.

* platform/network/mac/ResourceHandleMac.mm: Attempt to fix the
build by including a private header and local declaration.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169551 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoChange DeferrableOneShotTimer to use std::function instead of being a class template
andersca@apple.com [Mon, 2 Jun 2014 23:44:48 +0000 (23:44 +0000)]
Change DeferrableOneShotTimer to use std::function instead of being a class template
https://bugs.webkit.org/show_bug.cgi?id=133423

Reviewed by Antti Koivisto.

Source/WebCore:
Also, add a new constructor to DeferrableOneShotTimer that takes an std::function. Change the callback
to not pass a DeferrableOneShotTimer& anymore. Change the delay parameter to use std::chrono::milliseconds.

* css/CSSImageGeneratorValue.cpp:
(WebCore::CSSImageGeneratorValue::CachedGeneratedImage::CachedGeneratedImage):
(WebCore::CSSImageGeneratorValue::CachedGeneratedImage::evictionTimerFired):
* css/CSSImageGeneratorValue.h:
* html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::simulatedMouseClickTimerFired):
* html/HTMLPlugInImageElement.h:
* loader/cache/CachedResource.cpp:
(WebCore::deadDecodedDataDeletionIntervalForResourceType):
(WebCore::CachedResource::destroyDecodedDataIfNeeded):
(WebCore::CachedResource::decodedDataDeletionTimerFired):
* loader/cache/CachedResource.h:
* loader/cache/MemoryCache.cpp:
(WebCore::MemoryCache::MemoryCache):
* loader/cache/MemoryCache.h:
(WebCore::MemoryCache::setDeadDecodedDataDeletionInterval):
(WebCore::MemoryCache::deadDecodedDataDeletionInterval):
* platform/Timer.h:
(WebCore::Timer::Timer):
(WebCore::DeferrableOneShotTimer::DeferrableOneShotTimer):
* platform/graphics/cg/SubimageCacheWithTimer.cpp:
(WebCore::SubimageCacheWithTimer::invalidateCacheTimerFired):
* platform/graphics/cg/SubimageCacheWithTimer.h:

Source/WebKit/mac:
* WebView/WebView.mm:
(+[WebView _setCacheModel:]):

Source/WebKit2:
* NetworkProcess/cocoa/NetworkProcessCocoa.mm:
(WebKit::NetworkProcess::platformSetCacheModel):
* Shared/CacheModel.cpp:
(WebKit::calculateCacheSizes):
* Shared/CacheModel.h:
* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::pluginSnapshotTimerFired):
* WebProcess/Plugins/PluginView.h:
* WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformSetCacheModel):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169550 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years ago[iOS][WK2] Round the UIScrollView content size to device pixel
benjamin@webkit.org [Mon, 2 Jun 2014 22:18:54 +0000 (22:18 +0000)]
[iOS][WK2] Round the UIScrollView content size to device pixel
https://bugs.webkit.org/show_bug.cgi?id=133417
<rdar://problem/15922440>

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-06-02
Reviewed by Simon Fraser.

We should really have the scaled content size floored to device pixels, but that will be for another
time.
This patch ensure the content size as seen by the API is rounded to device pixels. The value is floored
to avoid showing partial pixels when the content is stable.

* UIProcess/API/Cocoa/WKWebView.mm:
(floorFloatToPixels):
(roundScrollViewCountentSize):
(-[WKWebView _setHasCustomContentView:loadedMIMEType:WTF::]):
(-[WKWebView _didCommitLayerTree:WebKit::]):
(-[WKWebView scrollView:contentSizeForZoomScale:withProposedSize:]):
(-[WKWebView _beginAnimatedResizeWithUpdates:]):
(-[WKWebView _endAnimatedResize]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169549 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoMove ifdef to the right place.
oliver@apple.com [Mon, 2 Jun 2014 22:13:43 +0000 (22:13 +0000)]
Move ifdef to the right place.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169548 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoMake pseudo element matching for style resolution more JIT friendly
benjamin@webkit.org [Mon, 2 Jun 2014 22:07:24 +0000 (22:07 +0000)]
Make pseudo element matching for style resolution more JIT friendly
https://bugs.webkit.org/show_bug.cgi?id=133441

Reviewed by Antti Koivisto.

Source/WebCore:
Sharing pseudo elements is a complicated mess shared between the SelectorChecker
and the RuleCollector.

For compiling pseudo element matching, it would be best if all the complexity could
be moved to compile time instead of runtime. It is also preferable to keep the compiler
independant of the RuleCollector implementation's detail.

This patch is a first step toward that goal. The main objective here is to make
"dynamicPseudo" completely internal to the SelectorChecker.
This is mostly a mechanical change, it is likely PseudoElement matching could be simplified
further but that is not attempted here.

Test: fast/css/style-sharing-empty-rule-modification.html

* css/ElementRuleCollector.cpp:
(WebCore::ElementRuleCollector::ruleMatches):
The condition regarding pseudo element matching has been moved into SelectorChecker::match().

This creates an extra cost for querySelector(), but that should be fine since the vast majority
of selectors are JIT compiled and never use SelectorChecker in the first place.

(WebCore::ElementRuleCollector::collectMatchingRulesForList):
The loop is changed such that the tree marking (Style::setHasPseudoStyle) could be moved
to SelectorChecker.

The conditions about the security origin for getMatchedCSSRules() and the empty style rules
are moved prior to the call to ElementRuleCollector::ruleMatches(). This ensure we keep the same
behavior of not adding the pseudo style for empty rules (this could also help with tree marking
in general but empty rules are probably uncommon).

There is one behavior change from making this loop simpler: the SharingRules and StyleInvalidation
modes now update their ruleRange. It is useless but it is simpler.

* css/ElementRuleCollector.h:
* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::matchRecursively):
The tree marking has been moved here.

* css/SelectorChecker.h:
(WebCore::SelectorChecker::match):
The pseudo element matching has been moved here.

* css/StyleResolver.h:
(WebCore::checkRegionSelector):
* dom/SelectorQuery.cpp:
(WebCore::SelectorDataList::selectorMatches):

LayoutTests:
Add more coverage for style sharing with empty rules, just in case.

* fast/css/style-sharing-empty-rule-modification-expected.txt: Added.
* fast/css/style-sharing-empty-rule-modification.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169547 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoSet default voucher for XPC client processes
barraclough@apple.com [Mon, 2 Jun 2014 21:54:15 +0000 (21:54 +0000)]
Set default voucher for XPC client processes
https://bugs.webkit.org/show_bug.cgi?id=133458

Reviewed by Geoff Garen.

* Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h:
(WebKit::XPCServiceInitializer):
    - add voucher_replace_default_voucher.
* config.h:
    - add HAVE_VOUCHERS.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169546 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoSend external playback properties to fullscreen.
commit-queue@webkit.org [Mon, 2 Jun 2014 21:13:12 +0000 (21:13 +0000)]
Send external playback properties to fullscreen.
https://bugs.webkit.org/show_bug.cgi?id=133366

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-06-02
Reviewed by Simon Fraser.

Source/WebCore:
Refactor property updates in WebVideoFullscreenModelMediaElement and update
setExternalPlayback on webkitcurrentplaybacktargetiswirelesschangedEvent.

* WebCore.exp.in: Add export for setExternalPlayback.
* platform/ios/WebVideoFullscreenInterface.h: add setExternalPlayback
* platform/ios/WebVideoFullscreenInterfaceAVKit.h: add setExternalPlayback
* platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
(-[WebAVPlayerController isPlayingOnExternalScreen]): added
(+[WebAVPlayerController keyPathsForValuesAffectingPlayingOnExternalScreen]): added
(WebVideoFullscreenInterfaceAVKit::setExternalPlayback): added
(WebVideoFullscreenInterfaceAVKit::enterFullscreen): added
* platform/ios/WebVideoFullscreenModelMediaElement.h: add updateForEventName
* platform/ios/WebVideoFullscreenModelMediaElement.mm:
(WebVideoFullscreenModelMediaElement::setMediaElement): refactor property changes into updateForEventName()
(WebVideoFullscreenModelMediaElement::handleEvent): refactor property changes into updateForEventName()
(WebVideoFullscreenModelMediaElement::updateForEventName): remove duplicate code, implement for setExternalPlayback

Source/WebKit2:
Forward setExternalPlayback.

* UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in: add setExternalPlaybackProperties
* WebProcess/ios/WebVideoFullscreenManager.h: add setExternalPlaybackProperties
* WebProcess/ios/WebVideoFullscreenManager.mm: add setExternalPlaybackProperties
(WebKit::WebVideoFullscreenManager::setExternalPlaybackProperties): added

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169545 268f45cc-cd09-0410-ab3c-d52691b4dbfc

6 years agoWebCore build fix for webreplay
commit-queue@webkit.org [Mon, 2 Jun 2014 20:53:58 +0000 (20:53 +0000)]
WebCore build fix for webreplay
https://bugs.webkit.org/show_bug.cgi?id=133401

Patch by Zsolt Borbely <zsborbely.u-szeged@partner.samsung.com> on 2014-06-02
Reviewed by Darin Adler.

* replay/MemoizedDOMResult.cpp:
(WebCore::MemoizedDOMResultBase::createFromEncodedResult):
Add a default nullptr return in order to avoid a gcc warning.
The warning is because of a non-void method that has a case which doesn't return.
* replay/ReplayController.cpp:
(WebCore::ReplayController::setForceDeterministicSettings):
Guard the ScrollingCoordinator with the appropriate #ifdef.
* replay/SerializationMethods.cpp:
Guard the KeypressCommand with COCOA as it is only present there.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@169544 268f45cc-cd09-0410-ab3c-d52691b4dbfc