Remove custom overhang area painting code
https://bugs.webkit.org/show_bug.cgi?id=124282

Reviewed by Andreas Kling.

This code was only used by the Mac port, to draw the linen background color on Lion.
We now do that on the GPU instead so get rid of this code.

* WebProcess/InjectedBundle/API/c/WKBundlePage.h:
* WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
* WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
* WebProcess/WebCoreSupport/WebChromeClient.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159196 268f45cc-cd09-0410-ab3c-d52691b4dbfc
API::Object::Type should be a strongly typed enum
https://bugs.webkit.org/show_bug.cgi?id=124258

Reviewed by Tim Horton.

* Shared/API/Cocoa/WKRemoteObjectRegistry.mm:
(-[WKRemoteObjectRegistry _handleMessageWithName:body:]):
* Shared/APIObject.h:
* Shared/Cocoa/APIObject.mm:
(API::Object::newObject):
* Shared/ImmutableArray.h:
* Shared/ImmutableDictionary.h:
* Shared/UserMessageCoders.h:
(WebKit::UserMessageEncoder::baseEncode):
(WebKit::UserMessageDecoder::baseDecode):
* Shared/WebArchive.h:
* Shared/WebArchiveResource.h:
* Shared/WebBackForwardListItem.h:
* Shared/WebCertificateInfo.h:
* Shared/WebConnection.h:
* Shared/WebContextMenuItem.h:
* Shared/WebData.h:
* Shared/WebError.h:
* Shared/WebGeolocationPosition.h:
* Shared/WebGeometry.h:
* Shared/WebGraphicsContext.h:
* Shared/WebHitTestResult.h:
* Shared/WebImage.h:
* Shared/WebNumber.h:
* Shared/WebOpenPanelParameters.h:
* Shared/WebRenderLayer.h:
* Shared/WebRenderObject.h:
* Shared/WebSecurityOrigin.h:
* Shared/WebSerializedScriptValue.h:
* Shared/WebString.h:
* Shared/WebURL.h:
* Shared/WebURLRequest.h:
* Shared/WebURLResponse.h:
* Shared/WebUserContentURLPattern.h:
* Shared/mac/ObjCObjectGraph.h:
* UIProcess/Authentication/AuthenticationChallengeProxy.h:
* UIProcess/Authentication/AuthenticationDecisionListener.h:
* UIProcess/Authentication/WebCredential.h:
* UIProcess/Authentication/WebProtectionSpace.h:
* UIProcess/Downloads/DownloadProxy.h:
* UIProcess/GeolocationPermissionRequestProxy.h:
* UIProcess/Notifications/NotificationPermissionRequest.h:
* UIProcess/Notifications/WebNotification.h:
* UIProcess/Notifications/WebNotificationManagerProxy.h:
* UIProcess/Plugins/WebPluginSiteDataManager.h:
* UIProcess/WebApplicationCacheManagerProxy.h:
* UIProcess/WebBackForwardList.h:
* UIProcess/WebColorPickerResultListenerProxy.h:
* UIProcess/WebContext.h:
* UIProcess/WebContextUserMessageCoders.h:
(WebKit::WebContextUserMessageEncoder::encode):
(WebKit::WebContextUserMessageDecoder::decode):
* UIProcess/WebCookieManagerProxy.h:
* UIProcess/WebDatabaseManagerProxy.h:
* UIProcess/WebEditCommandProxy.h:
* UIProcess/WebFormSubmissionListenerProxy.h:
* UIProcess/WebFramePolicyListenerProxy.h:
* UIProcess/WebFrameProxy.h:
* UIProcess/WebGeolocationManagerProxy.h:
* UIProcess/WebGrammarDetail.h:
* UIProcess/WebIconDatabase.h:
* UIProcess/WebInspectorProxy.h:
* UIProcess/WebKeyValueStorageManager.h:
* UIProcess/WebMediaCacheManagerProxy.h:
* UIProcess/WebNavigationData.h:
* UIProcess/WebOpenPanelResultListenerProxy.h:
* UIProcess/WebOriginDataManagerProxy.h:
* UIProcess/WebPageGroup.h:
* UIProcess/WebPageProxy.h:
* UIProcess/WebPreferences.h:
* UIProcess/WebResourceCacheManagerProxy.h:
* WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h:
* WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.h:
* WebProcess/InjectedBundle/InjectedBundle.h:
* WebProcess/InjectedBundle/InjectedBundleBackForwardList.h:
* WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.h:
* WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.h:
* WebProcess/InjectedBundle/InjectedBundleHitTestResult.h:
* WebProcess/InjectedBundle/InjectedBundleNavigationAction.h:
* WebProcess/InjectedBundle/InjectedBundleScriptWorld.h:
* WebProcess/InjectedBundle/InjectedBundleUserMessageCoders.h:
(WebKit::InjectedBundleUserMessageEncoder::encode):
(WebKit::InjectedBundleUserMessageDecoder::decode):
* WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
(WebKit::InjectedBundle::load):
* WebProcess/WebPage/PageBanner.h:
* WebProcess/WebPage/PageOverlay.h:
* WebProcess/WebPage/WebFrame.h:
* WebProcess/WebPage/WebInspector.h:
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPageGroupProxy.h:
* WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
(-[WKAccessibilityWebPageObject accessibilityParameterizedAttributeNames]):
(-[WKAccessibilityWebPageObject accessibilityAttributeValue:forParameter:]):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159197 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Restrict UserGestureIndicator to main thread
https://bugs.webkit.org/show_bug.cgi?id=124277

Reviewed by Andreas Kling.

Certain classes that interact with UserGestureIndicators, e.g.
the DOMTimer, can also live on worker threads. Since a
background thread cannot possible get a user gesture in the
first place, and to avoid races, we turn a UserGestureIndicator
on a background thread into a no-op.

* dom/UserGestureIndicator.cpp:
(WebCore::UserGestureIndicator::UserGestureIndicator):
(WebCore::UserGestureIndicator::~UserGestureIndicator):
(WebCore::UserGestureIndicator::processingUserGesture):
* dom/UserGestureIndicator.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159198 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add WKDeprecatedFunctions.cpp and move WKArrayIsMutable there
https://bugs.webkit.org/show_bug.cgi?id=124284

Reviewed by Andreas Kling.

* Shared/API/c/WKDeprecatedFunctions.cpp: Copied from Source/WebKit2/Shared/API/c/WKMutableArray.h.
(WKArrayIsMutable):
* Shared/API/c/WKMutableArray.cpp:
* Shared/API/c/WKMutableArray.h:
* WebKit2.xcodeproj/project.pbxproj:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159199 268f45cc-cd09-0410-ab3c-d52691b4dbfc
URTBF after r159199 to make cmake and GTK build happy.

* CMakeLists.txt:
* GNUmakefile.list.am:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159200 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove prefixed template class processing from message receiver generator.
https://bugs.webkit.org/show_bug.cgi?id=123095

Patch by Tamas Gergely <gertom@inf.u-szeged.hu> on 2013-11-13
Reviewed by Anders Carlsson.

There was a FIXME in messages.py to remove unprefixed WTF template classes,
but in the discussion of the bug report we concluded that in the messages.in
files we should follow the C++ naming convention where none of the WTF
classes require the WTF prefix.

* NetworkProcess/NetworkConnectionToWebProcess.messages.in:
* Scripts/webkit2/messages.py:
(class_template_headers):
* Scripts/webkit2/messages_unittest.py:
(std):
* UIProcess/Storage/StorageManager.messages.in:
* UIProcess/WebPageProxy.messages.in:
* WebProcess/WebPage/WebPage.messages.in:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159201 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add a Vector constructor that takes an std::initializer_list
https://bugs.webkit.org/show_bug.cgi?id=124287

Reviewed by Antti Koivisto.

Source/WTF:

* wtf/Compiler.h:
* wtf/Vector.h:
(WTF::Vector::Vector):

Tools:

* TestWebKitAPI/Tests/WTF/Vector.cpp:
(TestWebKitAPI::TEST):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159202 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[sh4] Protect repatchCompact from flushConstantPool.
https://bugs.webkit.org/show_bug.cgi?id=124278

Patch by Julien Brianceau <jbriance@cisco.com> on 2013-11-13
Reviewed by Michael Saboff.

Random crashes may occur with sh4 architecture, when a flushConstantPool occurs in
movlMemRegCompact. As in this case a branch opcode and the constant pool are put
before the movlMemRegCompact, the branch itself is patched when calling repatchCompact
instead of the mov instruction, which is really bad.

* assembler/SH4Assembler.h:
(JSC::SH4Assembler::repatchCompact): Handle this specific case and add an ASSERT.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159203 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Gtk][EFL] Fix builds by updating Object::TypeX to Object::Type::X
https://bugs.webkit.org/show_bug.cgi?id=124289

Patch by Brendan Long <b.long@cablelabs.com> on 2013-11-13
Reviewed by Alexey Proskuryakov.

* Shared/API/c/WKContextMenuItem.cpp:
(WKContextMenuItemGetTypeID):
* Shared/WebBatteryStatus.h:
* Shared/WebNetworkInfo.h:
* UIProcess/API/C/WKGrammarDetail.cpp:
(WKGrammarDetailGetTypeID):
* UIProcess/API/C/WKPluginSiteDataManager.cpp:
(WKPluginSiteDataManagerGetTypeID):
* UIProcess/CoordinatedGraphics/WebView.h:
* UIProcess/WebBatteryManagerProxy.h:
* UIProcess/WebNetworkInfoManagerProxy.h:
* UIProcess/WebTextChecker.h:
* UIProcess/WebVibrationProxy.h:
* UIProcess/WebViewportAttributes.h:
* UIProcess/efl/WebPopupItemEfl.h:
* UIProcess/soup/WebSoupRequestManagerProxy.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159204 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSS Shapes] Determining if a line is inside of a shape should only happen in one place
https://bugs.webkit.org/show_bug.cgi?id=121708

Reviewed by Andreas Kling.

The ShapeInfo::lineOverlapsShapeBounds() methods now delegate to the Shape object. The
logic for the Shape overlap test is now the same for ShapeInsideInfo and ShapeOutsideInfo.

No new tests, this is just a refactoring of existing code.

* rendering/shapes/Shape.h:
(WebCore::Shape::lineOverlapsShapeMarginBounds): Apply lineOverlapsLayoutRect() to the shape-margin bounds LayoutRect.
(WebCore::Shape::lineOverlapsShapePaddingBounds): Apply lineOverlapsLayoutRect() to the shape-padding bounds LayoutRect.
(WebCore::Shape::lineOverlapsLayoutRect): The common code for checking if a line and a LayoutRect overlap.
* rendering/shapes/ShapeInsideInfo.h: Use lineOverlapsShapePaddingBounds() for lineOverlapShapeBounds().
* rendering/shapes/ShapeOutsideInfo.h: Use lineOverlapsShapeMarginBounds() for lineOverlapShapeBounds().


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@159205 268f45cc-cd09-0410-ab3c-d52691b4dbfc
One more fix after r159197.

* UIProcess/efl/EwkTouchEvent.h:
* UIProcess/efl/EwkTouchPoint.h:

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