Web Inspector: Minor ResourceScriptMapping polish.
https://bugs.webkit.org/show_bug.cgi?id=95350

Reviewed by Alexander Pavlov.

Added some compiler annotations.
ResourceScriptMapping is no longer a UISourceCodeProvider, removed unused methods and obsolete compiler annotations.

* inspector/front-end/ResourceScriptMapping.js:
(WebInspector.ResourceScriptMapping):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127005 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, rolling out r126972.
http://trac.webkit.org/changeset/126972
https://bugs.webkit.org/show_bug.cgi?id=95349

accessibility/canvas-description-and-role.html has been
failing consistently on several bots and Dominic needs some
time to investigate why (Requested by jchaffraix on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-08-29

Source/WebCore:

* accessibility/AccessibilityNodeObject.cpp:
* accessibility/AccessibilityNodeObject.h:
* accessibility/AccessibilityObject.h:
(AccessibilityObject):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::accessibilityDescription):
(WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):
(WebCore::AccessibilityRenderObject::canHaveChildren):
* accessibility/gtk/WebKitAccessibleWrapperAtk.cpp:
(atkRole):
* accessibility/mac/WebAccessibilityObjectWrapper.mm:
(createAccessibilityRoleMap):
(-[WebAccessibilityObjectWrapper role]):

Source/WebKit/chromium:

* public/WebAccessibilityRole.h:
* src/AssertMatchingEnums.cpp:

Source/WebKit/win:

* AccessibleBase.cpp:
(MSAARole):

Tools:

* DumpRenderTree/chromium/TestRunner/AccessibilityUIElementChromium.cpp:
(roleToString):

LayoutTests:

* accessibility/canvas-description-and-role.html: Removed.
* accessibility/canvas-expected.txt: Renamed from LayoutTests/platform/mac/accessibility/canvas-expected.txt.
* accessibility/canvas.html: Renamed from LayoutTests/platform/mac/accessibility/canvas.html.
* platform/chromium/accessibility/canvas-description-and-role-expected.txt: Removed.
* platform/gtk/TestExpectations:
* platform/mac/accessibility/canvas-description-and-role-expected.txt: Removed.

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

* platform/chromium-linux/fast/css/absolute-child-with-percent-height-inside-relative-parent-expected.png: Added.
Added missing baseline for this test.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127007 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[New Multicolumn] Implement column contents painting.
https://bugs.webkit.org/show_bug.cgi?id=95251

Reviewed by Simon Fraser.

This patch implements paintColumnContents for the new multicolumn blocks. There are a number of
improvements made over the current multi-column implementation. They include the fact that left
and right columns will now be unclipped, so contents of columns can actually spill out of the block now.
Outlines now also work properly. The contents of the first column and last column can also now overflow
visually out of the top and bottom of those columns respectively.

* rendering/RenderMultiColumnSet.cpp:
(WebCore::RenderMultiColumnSet::flowThreadPortionRectAt):
This method returns the exact portion of the flow thread that matches the column dimensions.
The width and height are the column width and height. It is equivalent to RenderRegion::flowThreadPortionRect,
but is applied only for a specific column in the set.

(WebCore::RenderMultiColumnSet::flowThreadPortionOverflowRect):
This method expands the flowThreadPortionRect to unclip the edges of left and right columns, the top and
bottom edges of first and last columns, and it also expands the painting to go into half of the column
gap. It is analogous to RenderRegion::flowThreadPortionOverflowRect, but it's doing the right thing
for each individual column.

(WebCore::RenderMultiColumnSet::paintColumnContents):
The implementation of column contents painting. Each column is iterated over, and the two rects above
are computed and passed in to RenderFlowThread::paintFlowThreadPortionInRegion. This code does the right
thing with offsets and clipping when handed these two rects and handles all of the rest.

* rendering/RenderMultiColumnSet.h:
Declare the new functions that return the flow thread portion rects.

* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::flowThreadPortionOverflowRect):
(WebCore):
(WebCore::RenderRegion::overflowRectForFlowThreadPortion):
* rendering/RenderRegion.h:
(RenderRegion):
* rendering/RenderRegionSet.cpp:
Refactor this so that it can be invoked by column sets and operate on the first and last columns instead
of only being tied to the first and last regions.

(WebCore::RenderRegionSet::expandToEncompassFlowThreadContentsIfNeeded):
Fix a bug here where the flowThread.y() should not have been subtracted. We're in local flow thread
coordinates.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127008 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Mac] Add iconURL to WebNotification
https://bugs.webkit.org/show_bug.cgi?id=95249
<rdar://problem/12192060>

Reviewed by Jessie Berlin.

* WebView/WebNotification.h: Expose iconURL.
* WebView/WebNotification.mm: Remove unnecessary ASSERTs.
(-[WebNotification title]):
(-[WebNotification body]):
(-[WebNotification tag]):
(-[WebNotification iconURL]): Added.
(-[WebNotification origin]):
(-[WebNotification notificationID]):
(-[WebNotification dispatchShowEvent]):
(-[WebNotification dispatchCloseEvent]):
(-[WebNotification dispatchClickEvent]):
(-[WebNotification dispatchErrorEvent]):

Reviewed by Jessie Berlin.

* WebView/WebNotification.h: Expose iconURL.
* WebView/WebNotification.mm:
(-[WebNotification iconURL]):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127009 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Introduced JSWithScope, making all scope objects subclasses of JSScope
https://bugs.webkit.org/show_bug.cgi?id=95295

Reviewed by Filip Pizlo.

This is a step toward removing ScopeChainNode. With a uniform representation
for objects in the scope chain, we can move data from ScopeChainNode
into JSScope.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri: Build!

* interpreter/Interpreter.cpp:
(JSC::Interpreter::privateExecute):
* jit/JITStubs.cpp:
(JSC::DEFINE_STUB_FUNCTION):
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL): Use an explicit JSWithScope object
for 'with' statements. Since 'with' can put any object in the scope
chain, we'll need an adapter object to hold the data ScopeChainNode
currently holds.

* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData):
* runtime/JSGlobalData.h:
(JSGlobalData): Support for JSWithScope.

* runtime/JSScope.cpp:
(JSC::JSScope::objectAtScope):
* runtime/JSScope.h: Check for and unwrap JSWithScope.

* runtime/JSType.h: Support for JSWithScope.

* runtime/StrictEvalActivation.cpp:
(JSC::StrictEvalActivation::StrictEvalActivation):
* runtime/StrictEvalActivation.h:
(StrictEvalActivation): Inherit from JSScope, to make the scope chain uniform.

* runtime/JSWithScope.cpp: Added.
(JSC::JSWithScope::visitChildren):
* runtime/JSWithScope.h: Added.
(JSWithScope):
(JSC::JSWithScope::create):
(JSC::JSWithScope::object):
(JSC::JSWithScope::createStructure):
(JSC::JSWithScope::JSWithScope): New adapter object. Since this object
is never exposed to scripts, it doesn't need any meaningful implementation
of property access or other callbacks.


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

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127011 268f45cc-cd09-0410-ab3c-d52691b4dbfc
'\r's in test expectations files confuse chromium-android layout test driver
https://bugs.webkit.org/show_bug.cgi?id=95353

Reviewed by Adam Barth.

Modified the test cases not to output '\r's.
Removed the '\r's from expectation files.

* fast/dom/Window/window-property-clearing-expected.txt:
* fast/dom/Window/window-property-clearing.html:
* fast/dom/simultaneouslyRegsiteredTimerFireOrder-expected.txt:
* fast/dom/simultaneouslyRegsiteredTimerFireOrder.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127012 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] CCLayerTreeHostTestScrollChildLayer makes the wrong assumptions
https://bugs.webkit.org/show_bug.cgi?id=95358

Unreviewed gardening.

* tests/CCLayerTreeHostTest.cpp:
Disabled the test until it is fixed.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127013 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] Unskip 2 willSendRequest tests that are passing consistently
https://bugs.webkit.org/show_bug.cgi?id=95289

Unreviewed EFL gardening.

Unskip the following tests are EFL port:
fast/loader/onload-willSendRequest-null-for-script.html
fast/loader/willSendRequest-null-for-preload.html

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-08-29

* platform/efl/Skipped:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127014 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2012-08-29  Geoffrey Garen  <ggaren@apple.com>

        Try to fix the Windows build.

        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def: Export!



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127015 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Remove unused tapGesture in WebPage.cpp
https://bugs.webkit.org/show_bug.cgi?id=95357

Reviewed by Rob Buis.
Patch by Jacky Jiang <zhajiang@rim.com>

Remove unused variable tapGesture in WebPage.cpp.
Internally reviewed by Gen Mak.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPage::touchEvent):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127016 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Do not clip root layer's subtree to viewport
https://bugs.webkit.org/show_bug.cgi?id=95235

Reviewed by Adrienne Walker.

Source/WebCore:

The root layer's renderSurface already correctly clips everything
to the viewport's bounds.  There are some useful reasons that we
should not cause the root layer itself to clip the subtree any
further, in particular so that surfaces can remain more cacheable,
and to make root layer semantics more homogeneous.

Existing tests updated, and otherwise this change is already
covered by layout and unit tests.

* platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
(WebCore::calculateDrawTransformsInternal):

Source/WebKit/chromium:

Existing tests updated, and otherwise this change is already
covered by layout and unit tests.

* tests/CCLayerTreeHostCommonTest.cpp:
* tests/CCOcclusionTrackerTest.cpp:
(WebKitTests::CCOcclusionTrackerTestChildInRotatedChild::runMyTest):
(WebKitTests::CCOcclusionTrackerTestVisitTargetTwoTimes::runMyTest):
(WebKitTests::CCOcclusionTrackerTestSurfaceWithTwoOpaqueChildren::runMyTest):
(WebKitTests::CCOcclusionTrackerTestOverlappingSurfaceSiblings::runMyTest):
(WebKitTests::CCOcclusionTrackerTestOverlappingSurfaceSiblingsWithTwoTransforms::runMyTest):
(WebKitTests::CCOcclusionTrackerTestFilters::runMyTest):
(WebKitTests::CCOcclusionTrackerTestReplicaWithClipping::runMyTest):
(WebKitTests::CCOcclusionTrackerTestLargePixelsOccludeInsideClipRect::runMyTest):
(WebKitTests::CCOcclusionTrackerTestSurfaceOcclusionTranslatesWithClipping::runMyTest):
(WebKitTests::CCOcclusionTrackerTestSurfaceChildOfClippingSurface::runMyTest):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127017 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Update TestRunner API for web notifications
https://bugs.webkit.org/show_bug.cgi?id=95093
<rdar://problem/12179649>

Reviewed by Alexey Proskuryakov.

As it turns out the patch for this accidentally got squashed into the commit for
bug 95099 (r126909). This amendment patch adds some comments about the renaming
of the older TestRunner API for web notifications.

* DumpRenderTree/TestRunner.h:
(TestRunner):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127018 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[WK2] Add SPI to retrieve internal IDs for web notifications
https://bugs.webkit.org/show_bug.cgi?id=95100
<rdar://problem/12180208>

Reviewed by Alexey Proskuryakov.

This is work toward providing Mac support for web notifications in DRT and WTR (77969).

Add function to retrieve the internal ID for a notification. This is needed by tests to support simulating
a user click on a notification.

* DerivedSources.pri: Expose JSNotification.h as private header.
* WebProcess/InjectedBundle/API/c/WKBundle.cpp:
(WKBundleGetWebNotificationID): Calls into notification manager to get internal ID.
* WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: Add WKBundleGetWebNotificationID() to be able
retrieve notification ID.
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::webNotificationID):
(WebKit):
* WebProcess/InjectedBundle/InjectedBundle.h:
(InjectedBundle):
* WebProcess/Notifications/WebNotificationManager.cpp:
(WebKit::WebNotificationManager::notificationIDForTesting):
(WebKit):
* WebProcess/Notifications/WebNotificationManager.h:
(WebNotificationManager):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127019 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] CCThreadImpl / WebCompositorImpl shouldn't compile from webkit when use_libcc_for_compositor=1
https://bugs.webkit.org/show_bug.cgi?id=94995

Reviewed by Adam Barth.

* WebKit.gyp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127020 268f45cc-cd09-0410-ab3c-d52691b4dbfc
ASSERTION FAILED: enclosingIntRect(rendererMappedResult) == enclosingIntRect(FloatQuad(result).boundingBox()) : WebCore::FloatRect WebCore::RenderGeometryMap::absoluteRect(const WebCore::FloatRect &) const
https://bugs.webkit.org/show_bug.cgi?id=92464

Skip fast/events/tabindex-focus-blur-all.html since it is manifesting as a crash on the WK2
Debug Testers.

* platform/mac-wk2/Skipped:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127022 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Link highlight should clear on page navigation.
https://bugs.webkit.org/show_bug.cgi?id=95129

Reviewed by James Robinson.

Modified WebViewImpl to clear link highlight when navigating to new url.

Source/WebKit/chromium:

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::didCommitLoad):

LayoutTests:

* platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-navigate.html: Added.
* platform/chromium-linux/compositing/gestures/resources/gesture-tapHighlight-simple-navigate-destination.html: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-navigate-expected.png: Added.
* platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-navigate-expected.txt: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127023 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] Add setting API for allow universal/file access from file URLs.
https://bugs.webkit.org/show_bug.cgi?id=83121

Patch by Kamil Blank <k.blank@samsung.com> on 2012-08-29
Reviewed by Eric Seidel.

Source/WebKit/efl:

Make it possible to enable allow universal/file access from file URLs.
Default value for both settings is true.

* ewk/ewk_view.cpp:
(_Ewk_View_Private_Data):
(_ewk_view_priv_new):
(ewk_view_setting_allow_universal_access_from_file_urls_set): Function sets if locally loaded documents
are allowed to access remote urls.
(ewk_view_setting_allow_universal_access_from_file_urls_get):
(ewk_view_setting_allow_file_access_from_file_urls_set): Function sets if locally loaded documents
are allowed to access other local urls.
(ewk_view_setting_allow_file_access_from_file_urls_get):
* ewk/ewk_view.h:

Tools:

Implementation of setAllowUniversalAccessFromFileURLs and setAllowFileAccessFromFileURLs.

* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
(DumpRenderTreeChrome::resetDefaultsToConsistentValues):
* DumpRenderTree/efl/TestRunnerEfl.cpp:
(TestRunner::setAllowUniversalAccessFromFileURLs):
(TestRunner::setAllowFileAccessFromFileURLs):

LayoutTests:

Enable test connected with setAllowUniversalAccessFromFileURLs and setAllowFileAccessFromFileURLs.

* platform/efl/Skipped:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127024 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Tell git-archive to not export .gitattributes and .gitignore

Patch by Thiago Macieira <thiago.macieira@intel.com> on 2012-08-29
Reviewed by Simon Hausmann.

Exclude git specific files from archives created via git-archive.

* .gitattributes:

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