[Qt] Fix failing assertions when using JSC C API in QObject bridge
https://bugs.webkit.org/show_bug.cgi?id=93720

Reviewed by Kenneth Rohde Christiansen.

Avoid calling JSValueProtect and JSValueIsEqual with null JSValueRefs, as in debug
builds they trigger failing assertions about the arguments being non-null.

In these signal & slot connections the receiver can be null, when the signal is connected
just to a function, for example using obj.mySignal.connect(function() { .... }).

* bridge/qt/qt_runtime.cpp:
(JSC::Bindings::QtConnectionObject::QtConnectionObject):
(JSC::Bindings::QtConnectionObject::~QtConnectionObject):
(JSC::Bindings::QtConnectionObject::match):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125276 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: add frame ids to TimeStamp, Time and TimeEnd records in Timeline
https://bugs.webkit.org/show_bug.cgi?id=93699

Reviewed by Pavel Feldman.

Source/WebCore:

- plumb Frame from Console to TimelineAgent and use it to add frameId to 3 timeline records;

* inspector/InspectorConsoleInstrumentation.h:
(WebCore::InspectorInstrumentation::startConsoleTiming):
(WebCore::InspectorInstrumentation::stopConsoleTiming):
(WebCore::InspectorInstrumentation::consoleTimeStamp):
* inspector/InspectorInstrumentation.cpp:
(WebCore):
(WebCore::InspectorInstrumentation::startConsoleTimingImpl):
(WebCore::InspectorInstrumentation::stopConsoleTimingImpl):
(WebCore::InspectorInstrumentation::consoleTimeStampImpl):
* inspector/InspectorInstrumentation.h:
(InspectorInstrumentation):
* inspector/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::didTimeStamp):
(WebCore::InspectorTimelineAgent::time):
(WebCore::InspectorTimelineAgent::timeEnd):
* inspector/InspectorTimelineAgent.h:
(InspectorTimelineAgent):
* page/Console.cpp:
(WebCore::Console::markTimeline):
(WebCore::Console::time):
(WebCore::Console::timeEnd):
(WebCore::Console::timeStamp):

LayoutTests:

- rebased expectations to include frameId field;
- removed platform overrides for chromium as these are identical to the default ones;

* inspector/timeline/timeline-mark-timeline-expected.txt:
* inspector/timeline/timeline-time-stamp-expected.txt:
* platform/chromium/inspector/timeline/timeline-mark-timeline-expected.txt: Removed.
* platform/chromium/inspector/timeline/timeline-time-stamp-expected.txt: Removed.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125277 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Unreviewed trivial build fix: Avoid passing a non-existance WebCore/websockets directory
to the generators, which produces unnecessary warnings. The module lives now in WebCore/Modules/websockets.

* DerivedSources.pri:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125278 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[V8] Remove collectIsolatedContexts() from V8Proxy
https://bugs.webkit.org/show_bug.cgi?id=93682

Reviewed by Adam Barth.

We want to remove V8Proxy. This patch removes V8Proxy::collectIsolatedContexts().

No tests. No change in behavior.

* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::collectIsolatedContexts):
* bindings/v8/V8Proxy.cpp:
(WebCore::V8Proxy::collectIsolatedContexts):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125279 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Change Notification.permissionLevel() to Notification.permission
https://bugs.webkit.org/show_bug.cgi?id=88919
<rdar://problem/11650319>

Reviewed by Kentaro Hara.

Source/WebCore:

Retrieving the permission level has changed to Notification.permission, per this discussion:
http://lists.w3.org/Archives/Public/public-web-notification/2012Jun/0000.html

Test: fast/notifications/notifications-permission.html

* Modules/notifications/Notification.cpp: Rename to match attribute name.
(WebCore::Notification::permission):
* Modules/notifications/Notification.h: Rename to match attribute name.
(Notification):
* Modules/notifications/Notification.idl: Change to static readonly attribute.

LayoutTests:

* fast/notifications/notifications-permission-expected.txt: Added.
* fast/notifications/notifications-permission.html: Added.
* platform/chromium/TestExpectations: V8 does not properly support IDL static
attributes. This is tracked in bug 93488.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125280 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Remove scissor from the namings in CCOcclusionTracker
https://bugs.webkit.org/show_bug.cgi?id=93630

Reviewed by Adrienne Walker.

Source/WebCore:

As a followup to wkb.ug/91800 which stops using partial-swap scissor
in the occlusion tracker, this does a large rename to the occlusion
tracker and affected tests to remove "scissor" from the names of its
variables and methods, instead reflecting their new behaviour.

* platform/graphics/chromium/cc/CCOcclusionTracker.cpp:
(WebCore::::CCOcclusionTrackerBase):
(WebCore::addOcclusionBehindLayer):
(WebCore::::markOccludedBehindLayer):
(WebCore::testContentRectOccluded):
(WebCore::::occluded):
(WebCore::computeUnoccludedContentRect):
(WebCore::::unoccludedContentRect):
(WebCore::::unoccludedContributingSurfaceContentRect):
(WebCore::::layerClipRectInTarget):
(WebCore):
* platform/graphics/chromium/cc/CCOcclusionTracker.h:
(CCOcclusionTrackerBase):
(WebCore::CCOcclusionTrackerBase::computeVisibleRegionInScreen):

Source/WebKit/chromium:

* tests/CCOcclusionTrackerTest.cpp:
(WebKitTests::TestCCOcclusionTrackerWithClip::TestCCOcclusionTrackerWithClip):
(WebKitTests::TestCCOcclusionTrackerWithClip::setLayerClipRect):
(WebKitTests::TestCCOcclusionTrackerWithClip::useDefaultLayerClipRect):
(WebKitTests::TestCCOcclusionTrackerWithClip::layerClipRectInTarget):
(TestCCOcclusionTrackerWithClip):
(WebKitTests::CCOcclusionTrackerTestIdentityTransforms::runMyTest):
(WebKitTests::CCOcclusionTrackerTestRotatedChild::runMyTest):
(WebKitTests::CCOcclusionTrackerTestTranslatedChild::runMyTest):
(WebKitTests::CCOcclusionTrackerTestChildInRotatedChild::runMyTest):
(WebKitTests::CCOcclusionTrackerTestVisitTargetTwoTimes::runMyTest):
(WebKitTests::CCOcclusionTrackerTestSurfaceRotatedOffAxis::runMyTest):
(WebKitTests::CCOcclusionTrackerTestSurfaceWithTwoOpaqueChildren::runMyTest):
(WebKitTests::CCOcclusionTrackerTestOverlappingSurfaceSiblings::runMyTest):
(WebKitTests::CCOcclusionTrackerTestOverlappingSurfaceSiblingsWithTwoTransforms::runMyTest):
(WebKitTests::CCOcclusionTrackerTestFilters::runMyTest):
(WebKitTests::CCOcclusionTrackerTestReplicaDoesOcclude::runMyTest):
(WebKitTests::CCOcclusionTrackerTestReplicaWithClipping::runMyTest):
(WebKitTests::CCOcclusionTrackerTestReplicaWithMask::runMyTest):
(WebKitTests::CCOcclusionTrackerTestLayerClipRectOutsideChild::runMyTest):
(WebKitTests):
(WebKitTests::CCOcclusionTrackerTestViewportRectOutsideChild::runMyTest):
(WebKitTests::CCOcclusionTrackerTestLayerClipRectOverChild::runMyTest):
(WebKitTests::CCOcclusionTrackerTestViewportRectOverChild::runMyTest):
(WebKitTests::CCOcclusionTrackerTestLayerClipRectPartlyOverChild::runMyTest):
(WebKitTests::CCOcclusionTrackerTestViewportRectPartlyOverChild::runMyTest):
(WebKitTests::CCOcclusionTrackerTestLayerClipRectOverNothing::runMyTest):
(WebKitTests::CCOcclusionTrackerTestViewportRectOverNothing::runMyTest):
(WebKitTests::CCOcclusionTrackerTestLayerClipRectForLayerOffOrigin::runMyTest):
(WebKitTests::CCOcclusionTrackerTestOpaqueContentsRegionEmpty::runMyTest):
(WebKitTests::CCOcclusionTrackerTestOpaqueContentsRegionNonEmpty::runMyTest):
(WebKitTests::CCOcclusionTrackerTest3dTransform::runMyTest):
(WebKitTests::CCOcclusionTrackerTestUnsorted3dLayers::runMyTest):
(WebKitTests::CCOcclusionTrackerTestPerspectiveTransform::runMyTest):
(WebKitTests::CCOcclusionTrackerTestPerspectiveTransformBehindCamera::runMyTest):
(WebKitTests::CCOcclusionTrackerTestLayerBehindCameraDoesNotOcclude::runMyTest):
(WebKitTests::CCOcclusionTrackerTestLargePixelsOccludeInsideClipRect::runMyTest):
(WebKitTests::CCOcclusionTrackerTestAnimationOpacity1OnMainThread::runMyTest):
(WebKitTests::CCOcclusionTrackerTestAnimationOpacity0OnMainThread::runMyTest):
(WebKitTests::CCOcclusionTrackerTestAnimationTranslateOnMainThread::runMyTest):
(WebKitTests::CCOcclusionTrackerTestSurfaceOcclusionTranslatesToParent::runMyTest):
(WebKitTests::CCOcclusionTrackerTestSurfaceOcclusionTranslatesWithClipping::runMyTest):
(WebKitTests::CCOcclusionTrackerTestReplicaOccluded::runMyTest):
(WebKitTests::CCOcclusionTrackerTestSurfaceWithReplicaUnoccluded::runMyTest):
(WebKitTests::CCOcclusionTrackerTestSurfaceAndReplicaOccludedDifferently::runMyTest):
(WebKitTests::CCOcclusionTrackerTestSurfaceChildOfSurface::runMyTest):
(WebKitTests::CCOcclusionTrackerTestTopmostSurfaceIsClippedToViewport::runMyTest):
(WebKitTests::CCOcclusionTrackerTestSurfaceChildOfClippingSurface::runMyTest):
(WebKitTests::CCOcclusionTrackerTestDontOccludePixelsNeededForBackgroundFilter::runMyTest):
(WebKitTests::CCOcclusionTrackerTestTwoBackgroundFiltersReduceOcclusionTwice::runMyTest):
(WebKitTests::CCOcclusionTrackerTestDontOccludePixelsNeededForBackgroundFilterWithClip::runMyTest):
(WebKitTests::CCOcclusionTrackerTestDontReduceOcclusionBelowBackgroundFilter::runMyTest):
(WebKitTests::CCOcclusionTrackerTestDontReduceOcclusionIfBackgroundFilterIsOccluded::runMyTest):
(WebKitTests::CCOcclusionTrackerTestReduceOcclusionWhenBackgroundFilterIsPartiallyOccluded::runMyTest):
(WebKitTests::CCOcclusionTrackerTestMinimumTrackingSize::runMyTest):
* tests/TiledLayerChromiumTest.cpp:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125282 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Fix the colors in the debugging HUD
https://bugs.webkit.org/show_bug.cgi?id=93656

Reviewed by Adrienne Walker.

The R and B channels became swapped in our compositor debug HUD when
wkb.ug/92182 happened. This corrects the problem by swizzling the
color channels when we draw to the SkCanvas, so that it matches the
expectations of the shader.

Chromium bug: crbug.com/139908

* platform/graphics/chromium/cc/CCFontAtlas.cpp:
(WebCore::CCFontAtlas::drawText):
(WebCore::CCFontAtlas::drawOneLineOfTextInternal):
* platform/graphics/chromium/cc/CCFontAtlas.h:
(CCFontAtlas):
* platform/graphics/chromium/cc/CCHeadsUpDisplayLayerImpl.cpp:
(WebCore::createPaint):
(WebCore):
(WebCore::CCHeadsUpDisplayLayerImpl::drawHudContents):
(WebCore::CCHeadsUpDisplayLayerImpl::drawFPSCounter):
(WebCore::CCHeadsUpDisplayLayerImpl::drawFPSCounterText):
(WebCore::CCHeadsUpDisplayLayerImpl::drawDebugRects):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125283 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: render arrays as dir in case they were logged into console prior to the front-end opening.
https://bugs.webkit.org/show_bug.cgi?id=93713

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Dumping potentially outdated arrays using the "dir" representation.

* inspector/front-end/ConsoleMessage.js:
(WebInspector.ConsoleMessageImpl):
(WebInspector.ConsoleMessageImpl.prototype._formatParameterAsArray):
(WebInspector.ConsoleMessageImpl.prototype.clone):
* inspector/front-end/ConsoleModel.js:
(WebInspector.ConsoleModel.prototype.enableAgent.callback):
(WebInspector.ConsoleModel.prototype.enablingConsole):
(WebInspector.ConsoleMessage.create):
(WebInspector.ConsoleDispatcher.prototype.messageAdded):
* inspector/front-end/ConsoleView.js:
(WebInspector.ConsoleMessage.create):

LayoutTests:

* inspector/console/console-dirxml-expected.txt:
* inspector/console/console-external-array-expected.txt:
* inspector/console/console-format-collections-expected.txt:
* inspector/console/console-format-expected.txt:
* inspector/console/console-format.html:
* inspector/console/console-tests-expected.txt:
* platform/chromium/inspector/console/console-format-collections-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125284 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Dotted borders not drawn with rounded dots
https://bugs.webkit.org/show_bug.cgi?id=92383

Patch by Martin Leutelt <martin.leutelt@basyskom.com> on 2012-08-10
Reviewed by Noam Rosenthal.

The dots in borders with dotted style were previously drawn with
rectangular dots. The CSS spec specifies that the dots should be
rounded dots. This patch fixes this behavior for the Qt port.

No new tests, existing ones have been updated with new expected
results.

Source/WebCore:

* platform/graphics/qt/GraphicsContextQt.cpp:
(WebCore::adjustPointsForDottedLine):
(WebCore):
(WebCore::drawLineEndpointsForStyle):
(WebCore::GraphicsContext::drawLine):

LayoutTests:

* platform/qt/css2.1/t170602-bdr-conflct-w-04-d-expected.png:
* platform/qt/css2.1/t170602-bdr-conflct-w-14-d-expected.png:
* platform/qt/css2.1/t170602-bdr-conflct-w-24-d-expected.png:
* platform/qt/css2.1/t170602-bdr-conflct-w-34-d-expected.png:
* platform/qt/css2.1/t170602-bdr-conflct-w-41-d-expected.png:
* platform/qt/css2.1/t170602-bdr-conflct-w-42-d-expected.png:
* platform/qt/css2.1/t170602-bdr-conflct-w-43-d-expected.png:
* platform/qt/css2.1/t170602-bdr-conflct-w-44-d-expected.png:
* platform/qt/css2.1/t170602-bdr-conflct-w-49-d-expected.png:
* platform/qt/css2.1/t170602-bdr-conflct-w-94-d-expected.png:
* platform/qt/editing/inserting/editing-empty-divs-expected.png:
* platform/qt/fast/backgrounds/repeat/negative-offset-repeat-expected.png:
* platform/qt/fast/css/margin-top-bottom-dynamic-expected.png:
* platform/qt/fast/layers/opacity-outline-expected.png:
* platform/qt/fast/lists/ordered-list-with-no-ol-tag-expected.png:
* platform/qt/fast/multicol/progression-reverse-expected.png:
* platform/qt/fast/overflow/overflow-with-local-background-attachment-expected.png:
* platform/qt/fast/table/border-collapsing/001-expected.png:
* platform/qt/fast/table/border-collapsing/001-vertical-expected.png:
* platform/qt/svg/custom/no-inherited-dashed-stroke-expected.png:
* platform/qt/svg/transforms/svg-css-transforms-expected.png:
* platform/qt/tables/mozilla/bugs/bug22019-expected.png:
* platform/qt/tables/mozilla/bugs/bug2947-expected.png:
* platform/qt/tables/mozilla/bugs/bug6674-expected.png:
* platform/qt/tables/mozilla/marvin/backgr_layers-opacity-expected.png:
* platform/qt/tables/mozilla/marvin/backgr_position-table-expected.png:
* platform/qt/tables/mozilla/marvin/backgr_simple-table-cell-expected.png:
* platform/qt/tables/mozilla/marvin/backgr_simple-table-column-expected.png:
* platform/qt/tables/mozilla/marvin/backgr_simple-table-column-group-expected.png:
* platform/qt/tables/mozilla/marvin/backgr_simple-table-expected.png:
* platform/qt/tables/mozilla/marvin/backgr_simple-table-row-expected.png:
* platform/qt/tables/mozilla/marvin/backgr_simple-table-row-group-expected.png:
* platform/qt/tables/mozilla_expected_failures/marvin/backgr_border-table-cell-expected.png:
* platform/qt/tables/mozilla_expected_failures/marvin/backgr_border-table-column-expected.png:
* platform/qt/tables/mozilla_expected_failures/marvin/backgr_border-table-column-group-expected.png:
* platform/qt/tables/mozilla_expected_failures/marvin/backgr_border-table-expected.png:
* platform/qt/tables/mozilla_expected_failures/marvin/backgr_border-table-quirks-expected.png:
* platform/qt/tables/mozilla_expected_failures/marvin/backgr_border-table-row-expected.png:
* platform/qt/tables/mozilla_expected_failures/marvin/backgr_border-table-row-group-expected.png:
* platform/qt/tables/mozilla_expected_failures/marvin/backgr_fixed-bg-expected.png:
* platform/qt/tables/mozilla_expected_failures/marvin/backgr_layers-hide-expected.png:
* platform/qt/tables/mozilla_expected_failures/marvin/backgr_position-table-cell-expected.png:
* platform/qt/tables/mozilla_expected_failures/marvin/backgr_position-table-column-expected.png:
* platform/qt/tables/mozilla_expected_failures/marvin/backgr_position-table-column-group-expected.png:
* platform/qt/tables/mozilla_expected_failures/marvin/backgr_position-table-row-expected.png:
* platform/qt/tables/mozilla_expected_failures/marvin/backgr_position-table-row-group-expected.png:
* platform/qt/transforms/svg-vs-css-expected.png:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125285 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: Unreviewed, fix frontend compilability after r125268.

* inspector/front-end/CSSStyleModel.js:
(WebInspector.NamedFlow):
(WebInspector.NamedFlow.parsePayloadArray):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125287 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Uninitialized flags in CoordinatedGraphicsLayer
https://bugs.webkit.org/show_bug.cgi?id=93719

Reviewed by Kenneth Rohde Christiansen.

* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125288 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Horizontal scrollbar appears in the month-year selector of input[type=date]
https://bugs.webkit.org/show_bug.cgi?id=93517

Patch by Kevin Ellis <kevers@chromium.org> on 2012-08-10
Reviewed by Kent Tamura.

Update size of the month-year selector popup to account for the
width of the vertical scrollbar being platform dependent.

* Resources/calendarPicker.css:
(.month-selector-popup): Suppress horizontal scrolling.
* Resources/calendarPicker.js:
(YearMonthController.prototype.attachTo): Add a sizer element to facilitate determining the scrollbar width.
(YearMonthController.prototype._showPopup): Use computed scrollbar width for popup resizing.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125289 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] GCActivityCallback should always schedule GC even allocated bytes is a small number
https://bugs.webkit.org/show_bug.cgi?id=93650

Patch by Yong Li <yoli@rim.com> on 2012-08-10
Reviewed by Rob Buis.

Even a small number of allocated JS objects could hold expensive resources.

* runtime/GCActivityCallbackBlackBerry.cpp:
(JSC::DefaultGCActivityCallback::didAllocate):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125290 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] WebViewLoadFavIcon::test_favIconLoad() fails
https://bugs.webkit.org/show_bug.cgi?id=91888

Reviewed by Simon Hausmann.

* UIProcess/API/qt/tests/qmltests/WebView/tst_favIconLoad.qml:
We should wait for iconChanged signal instead of loadFinished,
there was no guarantee that at that point we would get it already.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125291 268f45cc-cd09-0410-ab3c-d52691b4dbfc
REGRESSION (r123848): Heap-use-after-free in WebCore::CachedResource::didAddClient.
https://bugs.webkit.org/show_bug.cgi?id=93632
-and corresponding-
<http://crbug.com/140656>

Patch by Huang Dongsung <luxtella@company100.net> on 2012-08-10
Reviewed by Antti Koivisto.

CachedCSSStyleSheet::didAddClient() calls CachedStyleSheetClient::setCSSStyleSheet
and HTMLLnkElement can be CachedStyleSheetClient.
HTMLLinkElement::setCSSStyleSheet may cause scripts to be executed, which could
destroy the HTMLLinkElement instance. After calliing
CachedStyleSheetClient::setCSSStyleSheet, using the CachedStyleSheetClient
instance can cause Heap-use-after-free.

r115625 prevents HTMLLinkElement from being destroyed during
HTMLLinkElement::setCSSStyleSheet, but r115625 doesn't prevent HTMLLinkElement
from being destroyed after HTMLLinkElement::setCSSStyleSheet.

So this patch calls CachedResource::didAddClient() before calling
setCSSStyleSheet() to make sure its client is not destroyed.

No new tests. it's covered by fast/css/cached-sheet-restore-crash.html.

* loader/cache/CachedCSSStyleSheet.cpp:
(WebCore::CachedCSSStyleSheet::didAddClient):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125292 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove custom bindings from WaveShaperNode.
https://bugs.webkit.org/show_bug.cgi?id=93613

Patch by Vineet Chaudhary <rgf748@motorola.com> on 2012-08-10
Reviewed by Kentaro Hara.

We should remove custom bindings as CodeGenerator uses UNUSED_PARAM macro.

TestObj.idl
No behavioural changes.
All tests under webaudio/* should behave same.

* GNUmakefile.list.am: Removed JSWaveShaperNodeCustom.cpp from builds.
* Modules/webaudio/WaveShaperNode.idl: Removed [JSCustomSetter].
* UseJSC.cmake: Removed JSWaveShaperNodeCustom.cpp from builds.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* bindings/js/JSWaveShaperNodeCustom.cpp: Removed.
* bindings/scripts/CodeGeneratorCPP.pm:
(SkipAttribute): Skip TypedArray attribute.
* bindings/scripts/CodeGeneratorGObject.pm:
(SkipAttribute): Skip TypedArray attribute.
* bindings/scripts/CodeGeneratorObjC.pm:
(SkipAttribute): Skip TypedArray attribute.
* bindings/scripts/test/JS/JSTestObj.cpp: Bindings tests.
(WebCore::jsTestObjTypedArrayAttr):
(WebCore::setJSTestObjReflectedCustomURLAttr):
(WebCore::setJSTestObjTypedArrayAttr):
* bindings/scripts/test/JS/JSTestObj.h:
* bindings/scripts/test/TestObj.idl: Test.
* bindings/scripts/test/V8/V8TestObj.cpp: Bindings tests.
(WebCore::TestObjV8Internal::typedArrayAttrAttrGetter):
(TestObjV8Internal):
(WebCore::TestObjV8Internal::typedArrayAttrAttrSetter):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125293 268f45cc-cd09-0410-ab3c-d52691b4dbfc
CSS: Shrink RuleData by storing selector as index rather than pointer.
<http://webkit.org/b/93712>

Reviewed by Antti Koivisto.

Pack the selector's index in the rule in the RuleData bitfield, effectively
shrinking each RuleData by 8 bytes.

* css/CSSSelectorList.h:
(WebCore::CSSSelectorList::selectorAt):
(WebCore::CSSSelectorList::indexOfNextSelectorAfter):

    Add helpers to CSSSelectorList to iterate by index.

* css/StyleResolver.cpp:
(RuleData):
(WebCore::RuleData::selector):
(WebCore::RuleData::selectorIndex):
(SameSizeAsRuleData):
(RuleSet):
(WebCore::makeRuleSet):
(WebCore::StyleResolver::collectMatchingRulesForList):
* css/StyleResolver.h:
(WebCore::StyleResolver::RuleFeature::RuleFeature):
(RuleFeature):

    Store selector indices instead of CSSSelector* pointers.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125294 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[V8] Introduce V8DOMConfiguration class and make batchConfigureXXX() methods static
https://bugs.webkit.org/show_bug.cgi?id=93615

Reviewed by Adam Barth.

Per the discussion in bug 93239,

(1) Rename V8ConfigureDOMAttributesAndMethods to V8DOMConfiguration.
(2) Introduce V8DOMConfiguration class and make batchConfigureXXX() methods static.

No tests. No change in behavior.

* UseV8.cmake:
* WebCore.gypi:
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateImplementation):
* bindings/scripts/test/V8/V8Float64Array.cpp:
(WebCore):
(WebCore::ConfigureV8Float64ArrayTemplate):
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore):
(WebCore::ConfigureV8TestActiveDOMObjectTemplate):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
(WebCore):
(WebCore::ConfigureV8TestCustomNamedGetterTemplate):
* bindings/scripts/test/V8/V8TestEventConstructor.cpp:
(WebCore):
(WebCore::ConfigureV8TestEventConstructorTemplate):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore):
(WebCore::ConfigureV8TestEventTargetTemplate):
* bindings/scripts/test/V8/V8TestException.cpp:
(WebCore):
(WebCore::ConfigureV8TestExceptionTemplate):
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore):
(WebCore::ConfigureV8TestInterfaceTemplate):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
(WebCore):
(WebCore::ConfigureV8TestMediaQueryListListenerTemplate):
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
(WebCore::ConfigureV8TestNamedConstructorTemplate):
* bindings/scripts/test/V8/V8TestNode.cpp:
(WebCore::ConfigureV8TestNodeTemplate):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore):
(WebCore::ConfigureV8TestObjTemplate):
(WebCore::V8TestObj::installPerContextProperties):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore):
(WebCore::ConfigureV8TestSerializedScriptValueInterfaceTemplate):
* bindings/v8/V8Binding.h:
* bindings/v8/V8ConfigureDOMAttributesAndMethods.h: Removed.
* bindings/v8/V8DOMConfiguration.cpp: Renamed from Source/WebCore/bindings/v8/V8ConfigureDOMAttributesAndMethods.cpp.
(WebCore):
(WebCore::V8DOMConfiguration::batchConfigureAttributes):
(WebCore::V8DOMConfiguration::batchConfigureConstants):
(WebCore::V8DOMConfiguration::batchConfigureCallbacks):
(WebCore::V8DOMConfiguration::configureTemplate):
* bindings/v8/V8DOMConfiguration.h: Added.
(WebCore):
(V8DOMConfiguration):
(BatchedAttribute):
(WebCore::V8DOMConfiguration::configureAttribute):
(BatchedConstant):
(BatchedCallback):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125295 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[V8] Enable es5_readonly
https://bugs.webkit.org/show_bug.cgi?id=91031

Reviewed by Adam Barth.

This turns on the es5_readonly flag for V8. This makes V8 match the ES5 spec regarding
non writable properties on the prototype chain. JSC already behaves the right so this
just makes V8 behave the same.

Source/WebCore:

Updated test expectations.

* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::V8DOMWindowShell::initContextIfNeeded):
* bindings/v8/WorkerContextExecutionProxy.cpp:
(WebCore::WorkerContextExecutionProxy::initIsolate):

LayoutTests:

* platform/chromium/media/network-no-source-const-shadow-expected.txt: Added.


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

Adding failure expectations for failures introduced in r125133 and r125262.

* platform/gtk/TestExpectations:


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