Clean up FormDataElement
https://bugs.webkit.org/show_bug.cgi?id=132483

Reviewed by Sam Weinig.

Source/WebCore:
* platform/network/FormData.cpp:
(WebCore::FormData::FormData):
(WebCore::FormData::deepCopy):
(WebCore::FormData::expandDataStore):
(WebCore::FormData::flatten):
(WebCore::FormData::resolveBlobReferences):
(WebCore::FormData::generateFiles):
(WebCore::FormData::hasGeneratedFiles):
(WebCore::FormData::hasOwnedGeneratedFiles):
(WebCore::FormData::removeGeneratedFilesIfNeeded):
(WebCore::encodeElement):
(WebCore::decodeElement):
* platform/network/FormData.h:
(WebCore::FormDataElement::FormDataElement):
(WebCore::operator==):
* platform/network/cf/FormDataStreamCFNet.cpp:
(WebCore::advanceCurrentStream):
(WebCore::setHTTPBody):
* platform/network/curl/FormDataStreamCurl.cpp:
(WebCore::FormDataStream::read):
* platform/network/curl/ResourceHandleManager.cpp:
(WebCore::setupFormData):
* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::addFormElementsToSoupMessage):

Source/WebKit2:
* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::NetworkResourceLoader):
* Shared/Network/NetworkResourceLoadParameters.cpp:
(WebKit::NetworkResourceLoadParameters::encode):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@168188 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix cloop build after r168178

* bytecode/CodeBlock.cpp:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@168189 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[iOS WK2] Don't create backing store for -webkit-overflow-scrolling:touch that can't scroll
https://bugs.webkit.org/show_bug.cgi?id=132487
<rdar://problem/16758041>

Reviewed by Sam Weinig.

Source/WebCore:

Previously, -webkit-overflow-scrolling:touch would cause us to make compositing
layers for any element that had overflow: auto or scroll on either axis. This
created lots of backing store when not required.

Improve this to only create compositing for scrolling when there is actually
scrollable overflow. This makes things slightly more complex, because we can
only know when layout is up to date.

* rendering/RenderBox.cpp:
(WebCore::RenderBox::computeRectForRepaint): usesCompositedScrolling() tells
us if we're actually doing composited overflow.
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::hasTouchScrollableOverflow):
(WebCore::RenderLayer::handleTouchEvent):
* rendering/RenderLayer.h:
* rendering/RenderLayerBacking.cpp:
(WebCore::layerOrAncestorIsTransformedOrUsingCompositedScrolling):
(WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration): Only update
scrolling and clipping layers if layout is not pending.
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
(WebCore::RenderLayerBacking::updateScrollingLayers): The caller calls
updateInternalHierarchy(), so no need to do it here.
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::requiresCompositingForScrolling): We
can only determine that we're scrollable after layout.
(WebCore::isStickyInAcceleratedScrollingLayerOrViewport):
(WebCore::isMainFrameScrollingOrOverflowScrolling):

LayoutTests:

These are all progressions, and show that we make layers in fewer cases.

* platform/ios-sim/compositing/overflow/iframe-inside-overflow-clipping-expected.txt:
* platform/ios-sim/compositing/overflow/overflow-auto-with-touch-no-overflow-expected.txt:
* platform/ios-sim/compositing/overflow/overflow-overlay-with-touch-no-overflow-expected.txt:
* platform/ios-sim/compositing/overflow/overflow-scroll-with-touch-no-overflow-expected.txt:
* platform/ios-sim/compositing/overflow/subpixel-overflow-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@168190 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[iOS] deviceScaleFactor is being double-applied when rendering captions in full screen mode
https://bugs.webkit.org/show_bug.cgi?id=132481

Reviewed by Jer Noble.

* html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlTextTrackContainerElement::updateDisplay): Don't set the platform scale factor here. It is already
being accounted for in the createTextTrackRepresentationImage method.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@168192 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Implement new delegate method -sharingService:sourceFrameOnScreenForShareItem:.
<rdar://problem/16797425> and https://bugs.webkit.org/show_bug.cgi?id=132484

Reviewed by Tim Horton.

* Misc/WebSharingServicePickerController.mm:
(-[WebSharingServicePickerController sharingService:sourceFrameOnScreenForShareItem:]):

* WebCoreSupport/WebContextMenuClient.h:
* WebCoreSupport/WebContextMenuClient.mm:
(WebContextMenuClient::screenRectForHitTestNode):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@168193 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-[_WKThumbnailView _requestSnapshotIfNeeded] assumes that taking a snapshot will always succeed
<https://webkit.org/b/132489> / <rdar://problem/16704660>

Reviewed by Tim Horton.

* UIProcess/API/Cocoa/_WKThumbnailView.mm:
(-[_WKThumbnailView _requestSnapshotIfNeeded]): Don't attempt to create a CGImageRef if we failed
to create a ShareableBitmap. This handles both the callback receiving a null Handle and a failure
within ShareableBitmap::create.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@168195 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[iOS][WK2] Adapt the rubberband constraints when the page get smaller than the scrollview - insets
https://bugs.webkit.org/show_bug.cgi?id=132457

Reviewed by Enrica Casucci.

It is quite common for us to have a WKContentView that is scalled smaller than the WKWebView, content
insets included.

In those cases, update the constraints to fit the content properly in the view.

* UIProcess/ios/WKScrollView.mm:
(valuesAreWithinOnePixel):
(-[WKScrollView _rubberBandOffsetForOffset:maxOffset:minOffset:range:outside:]):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@168196 268f45cc-cd09-0410-ab3c-d52691b4dbfc
"arm64 function not 4-byte aligned" warnings when building JSC
https://bugs.webkit.org/show_bug.cgi?id=132495

Reviewed by Geoffrey Garen.

Added ".align 4" for both ARM Thumb2 and ARM 64 to silence the linker.

* llint/LowLevelInterpreter.cpp:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@168197 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add Jeremy as a committer.
https://bugs.webkit.org/show_bug.cgi?id=132492

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-05-02
Reviewed by Jer Noble.

Add Jeremy Jones to the committers file.

* Scripts/webkitpy/common/config/contributors.json:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@168198 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Implement FormData decoding using KeyedDecoder
https://bugs.webkit.org/show_bug.cgi?id=132494

Reviewed by Tim Horton.

* platform/KeyedCoding.h:
(WebCore::KeyedDecoder::decodeEnum):
* platform/network/FormData.cpp:
(WebCore::decodeElement):
(WebCore::FormData::decode):
* platform/network/FormData.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@168199 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove Blob contentDisposition handling
https://bugs.webkit.org/show_bug.cgi?id=132490

Reviewed by Sam Weinig.


Source/WebCore: 
Dead code.

* platform/network/BlobData.h:
(WebCore::BlobData::contentDisposition): Deleted.
(WebCore::BlobData::setContentDisposition): Deleted.
* platform/network/BlobRegistryImpl.cpp:
(WebCore::BlobRegistryImpl::registerBlobURL):
(WebCore::BlobRegistryImpl::registerBlobURLForSlice):
* platform/network/BlobResourceHandle.cpp:
(WebCore::BlobResourceHandle::notifyResponseOnSuccess):
* platform/network/BlobStorageData.h:
(WebCore::BlobStorageData::create):
(WebCore::BlobStorageData::contentType):
(WebCore::BlobStorageData::BlobStorageData):
(WebCore::BlobStorageData::contentDisposition): Deleted.

Source/WebKit2: 
* Shared/FileAPI/BlobRegistrationData.cpp:
(WebKit::BlobRegistrationData::encode):
(WebKit::BlobRegistrationData::decode):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@168201 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add Jeremy Jones as a committer. https://bugs.webkit.org/show_bug.cgi?id=132492

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@168202 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[iOS][WK2] More animation madness for when the extendedBackground is modified in an animation block
https://bugs.webkit.org/show_bug.cgi?id=132497

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-05-02
Reviewed by Beth Dakin.

* UIProcess/API/Cocoa/WKWebView.mm:
(updateTopAndBottomExtendedBackgroundExclusionIfNecessary):
Do not early return when _extendedBackgroundExclusionInsets.left is empty. That way, if executed in an animation block,
the top of bottom view will animate from their current size to an empty width.

When creating the layer, set up their height without animation. Otherwise it is possible to see the height animating
while the left inset is animating.

(-[WKWebView _setExtendedBackgroundExclusionInsets:]):
When replacing the scrollview, make sure the frame and color are not animated. Otherwise the transition between
scrollView and _mainExtendedBackgroundView can be visible if _setExtendedBackgroundExclusionInsets: is invoked
in an animation block.

(-[WKWebView _endAnimatedResize]):
Nuke the top and bottom insets when possible. [WKWebView _endAnimatedResize] is unfrequent, so it is a good opportunity
to free the memory.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@168203 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, rolling out r168192.
https://bugs.webkit.org/show_bug.cgi?id=132498

Was not the correct fix (blurry!) (Requested by bfulgham_ on
#webkit).

Reverted changeset:

"[iOS] deviceScaleFactor is being double-applied when
rendering captions in full screen mode"
https://bugs.webkit.org/show_bug.cgi?id=132481
http://trac.webkit.org/changeset/168192

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