WebKit-https.git
6 years agoImplement MouseEvent constructor
haraken@chromium.org [Thu, 24 Jan 2013 07:42:07 +0000 (07:42 +0000)]
Implement MouseEvent constructor
https://bugs.webkit.org/show_bug.cgi?id=107630

Reviewed by Adam Barth.

Spec: https://dvcs.w3.org/hg/d4e/raw-file/tip/source_respec.htm

Source/WebCore:

The MouseEvent constructor should be implemented under a DOM4_EVENTS_CONSTRUCTOR flag.
This significantly simplifies JavaScript code to construct a MouseEvent.

Before:
  event = document.createEvent("MouseEvents");
  event.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);

After:
  event = new MouseEvent("click");

Test: fast/events/constructors/mouse-event-constructor.html

* bindings/scripts/CodeGenerator.pm:
(IsSubType):
(IsInheritExtendedAttribute):
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateHeader):
(GenerateNamedConstructorCallback):
(GenerateImplementation):
* bindings/scripts/test/V8/V8Float64Array.cpp:
(WebCore):
(WebCore::V8Float64Array::createWrapper):
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore):
(WebCore::V8TestActiveDOMObject::createWrapper):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
(WebCore):
(WebCore::V8TestCustomNamedGetter::createWrapper):
* bindings/scripts/test/V8/V8TestEventConstructor.cpp:
(WebCore):
(WebCore::V8TestEventConstructor::createWrapper):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore):
(WebCore::V8TestEventTarget::toEventTarget):
(WebCore::V8TestEventTarget::createWrapper):
* bindings/scripts/test/V8/V8TestEventTarget.h:
(V8TestEventTarget):
* bindings/scripts/test/V8/V8TestException.cpp:
(WebCore):
(WebCore::V8TestException::createWrapper):
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore):
(WebCore::V8TestInterface::toActiveDOMObject):
(WebCore::V8TestInterface::createWrapper):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
(WebCore):
(WebCore::V8TestMediaQueryListListener::createWrapper):
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
(WebCore):
(WebCore::V8TestNamedConstructor::toActiveDOMObject):
(WebCore::V8TestNamedConstructor::createWrapper):
* bindings/scripts/test/V8/V8TestNode.cpp:
(WebCore):
(WebCore::V8TestNode::toEventTarget):
(WebCore::V8TestNode::createWrapper):
* bindings/scripts/test/V8/V8TestNode.h:
(V8TestNode):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore):
(WebCore::V8TestObj::createWrapper):
* bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
(WebCore):
(WebCore::V8TestOverloadedConstructors::createWrapper):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore):
(WebCore::V8TestSerializedScriptValueInterface::createWrapper):
* bindings/v8/Dictionary.cpp:
(WebCore::Dictionary::get):
(WebCore):
* bindings/v8/Dictionary.h:
(Dictionary):
* bindings/v8/NPV8Object.cpp:
(WebCore::npObjectTypeInfo):
* bindings/v8/V8DOMWrapper.cpp:
(WebCore::V8DOMWrapper::isDOMWrapper):
(WebCore):
* bindings/v8/V8DOMWrapper.h:
(V8DOMWrapper):
* bindings/v8/WrapperTypeInfo.h:
(WebCore):
(WebCore::WrapperTypeInfo::toEventTarget):
(WrapperTypeInfo):
* bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
(WebCore):
* dom/MouseEvent.cpp:
(WebCore::MouseEventInit::MouseEventInit):
(WebCore):
(WebCore::MouseEvent::create):
(WebCore::MouseEvent::MouseEvent):
* dom/MouseEvent.h:
(MouseEventInit):
(WebCore):
(MouseEvent):
(WebCore::MouseEvent::create):
(WebCore::MouseEvent::button):
(WebCore::MouseEvent::buttonDown):
(WebCore::MouseEvent::relatedTarget):
(WebCore::MouseEvent::setRelatedTarget):
(WebCore::MouseEvent::clipboard):
(WebCore::MouseEvent::dataTransfer):
* dom/MouseEvent.idl:

LayoutTests:

The MouseEvent constructor should be implemented under a DOM4_EVENTS_CONSTRUCTOR flag.

* fast/dom/constructed-objects-prototypes-expected.txt:
* fast/dom/dom-constructors-expected.txt:
* fast/dom/dom-constructors.html:
* fast/events/constructors/mouse-event-constructor-expected.txt: Added.
* fast/events/constructors/mouse-event-constructor.html: Added.
* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:
* platform/qt/TestExpectations:
* platform/win/TestExpectations:
* platform/wincairo/TestExpectations:

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

6 years ago[EFL] Unreviewed build fix after r140605
gyuyoung.kim@samsung.com [Thu, 24 Jan 2013 07:18:38 +0000 (07:18 +0000)]
[EFL] Unreviewed build fix after r140605
https://bugs.webkit.org/show_bug.cgi?id=107787

Unreviewed build fix.

Build break after r140605.

Patch by Seokju Kwon <seokju.kwon@gmail.com> on 2013-01-23

* UIProcess/WebBatteryManagerProxy.cpp:
* UIProcess/WebBatteryManagerProxy.h:
(WebBatteryManagerProxy):
* UIProcess/WebNetworkInfoManagerProxy.cpp:
* UIProcess/WebNetworkInfoManagerProxy.h:
(WebNetworkInfoManagerProxy):
* UIProcess/WebVibrationProxy.cpp:
* UIProcess/WebVibrationProxy.h:
(WebVibrationProxy):
* UIProcess/soup/WebSoupRequestManagerProxy.cpp:
* UIProcess/soup/WebSoupRequestManagerProxy.h:
(WebSoupRequestManagerProxy):
* WebProcess/Battery/WebBatteryManager.cpp:
* WebProcess/Battery/WebBatteryManager.h:
(WebBatteryManager):
* WebProcess/NetworkInfo/WebNetworkInfoManager.cpp:
* WebProcess/NetworkInfo/WebNetworkInfoManager.h:
(WebNetworkInfoManager):
* WebProcess/soup/WebSoupRequestManager.cpp:
* WebProcess/soup/WebSoupRequestManager.h:
(WebSoupRequestManager):

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

6 years agoAdd form-related instrumentations, and support 33+ features in FeatureObserver
tkent@chromium.org [Thu, 24 Jan 2013 06:08:03 +0000 (06:08 +0000)]
Add form-related instrumentations, and support 33+ features in FeatureObserver
https://bugs.webkit.org/show_bug.cgi?id=107770

Reviewed by Kentaro Hara.

No new tests. This doesn't make behavior changes.

* page/FeatureObserver.h:
- Add form-related features.
- Add a Document* version of observe().
- Use BitVector to represent features to support 33+ features.
(WebCore::FeatureObserver::didObserve):
(FeatureObserver):
* page/FeatureObserver.cpp:
(WebCore::FeatureObserver::FeatureObserver):
(WebCore::FeatureObserver::~FeatureObserver):
(WebCore::FeatureObserver::observe):

* html/ColorInputType.cpp:
(WebCore::ColorInputType::create): Calls FeatureObserver::observe.
* html/DateInputType.cpp:
(WebCore::DateInputType::create): Ditto.
* html/DateTimeInputType.cpp:
(WebCore::DateTimeInputType::create): Ditto.
* html/DateTimeLocalInputType.cpp:
(WebCore::DateTimeLocalInputType::create): Ditto.
* html/EmailInputType.cpp:
(WebCore::EmailInputType::create): Ditto.
* html/HTMLDataListElement.cpp:
(WebCore::HTMLDataListElement::create): Ditto.
* html/HTMLFormControlElement.cpp:
(WebCore::HTMLFormControlElement::parseAttribute): Ditto.
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::parseAttribute): Ditto.
* html/HTMLTextFormControlElement.cpp:
(WebCore::HTMLTextFormControlElement::parseAttribute): Ditto.
* html/InputType.cpp:
(WebCore::InputType::create):
Record type=datetime and type=week even if these types are not enabled.
* html/MonthInputType.cpp:
(WebCore::MonthInputType::create): Calls FeatureObserver::observe.
* html/NumberInputType.cpp:
(WebCore::NumberInputType::create): Ditto.
* html/RangeInputType.cpp:
(WebCore::RangeInputType::create): Ditto.
* html/SearchInputType.cpp:
(WebCore::SearchInputType::create): Ditto.
* html/TelephoneInputType.cpp:
(WebCore::TelephoneInputType::create): Ditto.
* html/TimeInputType.cpp:
(WebCore::TimeInputType::create): Ditto.
* html/URLInputType.cpp:
(WebCore::URLInputType::create): Ditto.
* html/WeekInputType.cpp:
(WebCore::WeekInputType::create): Ditto.

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

6 years agoUnreviewed, rebaseline for Chromium-Linux and Chromium-Win
yosin@chromium.org [Thu, 24 Jan 2013 06:05:28 +0000 (06:05 +0000)]
Unreviewed, rebaseline for Chromium-Linux and Chromium-Win
editing/selection/range-between-block-and-inline.html

* platform/chromium-linux/editing/selection/range-between-block-and-inline-expected.png:
* platform/chromium-win/editing/selection/range-between-block-and-inline-expected.png:

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

6 years ago[Chromium] Give webkit_support a chance to reset state between layout test runs
pilgrim@chromium.org [Thu, 24 Jan 2013 05:52:09 +0000 (05:52 +0000)]
[Chromium] Give webkit_support a chance to reset state between layout test runs
https://bugs.webkit.org/show_bug.cgi?id=107132

Reviewed by Adam Barth.

We currently only have need for this on OS(ANDROID), but now it
would be useful to have a hook for resetting state on all
platforms. Will soon be using this for IDBFactory initialization.

* DumpRenderTree/chromium/TestShell.cpp:
(TestShell::resetTestController): Call webkit_support::ResetTestEnvironment()

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

6 years agoQueueStatusServer crashes in production on next-patch
commit-queue@webkit.org [Thu, 24 Jan 2013 05:49:31 +0000 (05:49 +0000)]
QueueStatusServer crashes in production on next-patch
https://bugs.webkit.org/show_bug.cgi?id=107775

Patch by Alan Cutter <alancutter@chromium.org> on 2013-01-23
Reviewed by Adam Barth.

Replaced Python 2.5 incompatible call to timedelta.total_seconds().

* QueueStatusServer/app.yaml:
* QueueStatusServer/model/patchlog.py:
(PatchLog.calculate_wait_duration):
(PatchLog.calculate_process_duration):
(PatchLog):
(PatchLog._time_delta_to_seconds):

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

6 years ago[Inspector] Add events for tracking page loads and scheduled navigations.
commit-queue@webkit.org [Thu, 24 Jan 2013 05:42:33 +0000 (05:42 +0000)]
[Inspector] Add events for tracking page loads and scheduled navigations.
https://bugs.webkit.org/show_bug.cgi?id=104168

Patch by Ken Kania <kkania@chromium.org> on 2013-01-23
Reviewed by Pavel Feldman.

These events are needed for clients who need to be aware of when a page is
navigating or about to navigate. Some clients may wish to prevent interaction
with the page during this time. Two of the new events track loading start and
stop, as measured by the ProgressTracker. The other two events track when a
page has a new scheduled navigation and when it no longer has a scheduled
navigation. These latter two events won't allow the client to determine if
a load is going to happen in all circumstances, but is sufficient for many cases.
Make sure we hold a reference to the frame in NavigationScheduler::timerFired
in case the redirect causes the frame to be detached.

Also, minor update to InspectorInputAgent::dispatchMouseEvent to reorder params
to match dispatchKeyEvent.

Source/WebCore:

Tests: inspector-protocol/page/frameScheduledNavigation.html
       inspector-protocol/page/frameStartedLoading.html

* inspector/Inspector.json:
* inspector/InspectorInputAgent.cpp:
(WebCore::InspectorInputAgent::dispatchMouseEvent):
* inspector/InspectorInputAgent.h:
(InspectorInputAgent):
* inspector/InspectorInstrumentation.cpp:
(WebCore):
(WebCore::InspectorInstrumentation::frameStartedLoadingImpl):
(WebCore::InspectorInstrumentation::frameStoppedLoadingImpl):
(WebCore::InspectorInstrumentation::frameScheduledNavigationImpl):
(WebCore::InspectorInstrumentation::frameClearedScheduledNavigationImpl):
* inspector/InspectorInstrumentation.h:
(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::frameStartedLoading):
(WebCore):
(WebCore::InspectorInstrumentation::frameStoppedLoading):
(WebCore::InspectorInstrumentation::frameScheduledNavigation):
(WebCore::InspectorInstrumentation::frameClearedScheduledNavigation):
* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::frameStartedLoading):
(WebCore):
(WebCore::InspectorPageAgent::frameStoppedLoading):
(WebCore::InspectorPageAgent::frameScheduledNavigation):
(WebCore::InspectorPageAgent::frameClearedScheduledNavigation):
* inspector/InspectorPageAgent.h:
* inspector/front-end/ResourceTreeModel.js:
(WebInspector.PageDispatcher.prototype.frameDetached):
(WebInspector.PageDispatcher.prototype.frameStartedLoading):
(WebInspector.PageDispatcher.prototype.frameStoppedLoading):
(WebInspector.PageDispatcher.prototype.frameScheduledNavigation):
(WebInspector.PageDispatcher.prototype.frameClearedScheduledNavigation):
* loader/NavigationScheduler.cpp:
(WebCore::NavigationScheduler::clear):
(WebCore::NavigationScheduler::timerFired):
(WebCore::NavigationScheduler::startTimer):
(WebCore::NavigationScheduler::cancel):
* loader/ProgressTracker.cpp:
(WebCore::ProgressTracker::progressStarted):
(WebCore::ProgressTracker::finalProgressComplete):

LayoutTests:

* inspector-protocol/page/frameScheduledNavigation-expected.txt: Added.
* inspector-protocol/page/frameScheduledNavigation.html: Added.
* inspector-protocol/page/frameStartedLoading-expected.txt: Added.
* inspector-protocol/page/frameStartedLoading.html: Added.
* platform/chromium/TestExpectations:

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

6 years agoSource/WebCore: Avoid creating background layers on pages with a fixed background...
simon.fraser@apple.com [Thu, 24 Jan 2013 05:35:37 +0000 (05:35 +0000)]
Source/WebCore: Avoid creating background layers on pages with a fixed background, but no image
https://bugs.webkit.org/show_bug.cgi?id=107783
<rdar://problem/13074450>

Reviewed by Beth Dakin.

http://www.nme.com has background-attachment: fixed on the <body>, but
not background image. In that case there's no point making a layer
for the fixed root background.

Test: platform/mac/tiled-drawing/fixed-background/fixed-background-no-image.html

* rendering/style/RenderStyle.cpp:
(WebCore::allLayersAreFixed): Check to see if we have an image, as well
as fixed attachment.

LayoutTests: Avoid creating background layers on pages with a fixed background, but no image
https://bugs.webkit.org/show_bug.cgi?id=107783

Reviewed by Beth Dakin.

Testcase with body { background-attachment:fixed; } but no image.

* platform/mac/tiled-drawing/fixed-background/fixed-background-no-image-expected.txt: Added.
* platform/mac/tiled-drawing/fixed-background/fixed-background-no-image.html: Added.

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

6 years agoLayout Test platform/chromium-win/fast/events/panScroll-panIcon.html is failing
yosin@chromium.org [Thu, 24 Jan 2013 05:30:31 +0000 (05:30 +0000)]
Layout Test platform/chromium-win/fast/events/panScroll-panIcon.html is failing
https://bugs.webkit.org/show_bug.cgi?id=107729

Reviewed by Hajime Morita.

This patch changes panScroll-panIcon.html test to HTML ref test rather than
pixel ref test to avoid rebaseline among Windows versions, and enables
panScroll-panIcon.html.

* platform/chromium-win/fast/events/panScroll-panIcon.html: Changed not to move mouse pointer to avoid motion of scroll thumb.
* platform/chromium-win/fast/events/panScroll-panIcon-expected.html: Added.
* platform/chromium-win/fast/events/panScroll-panIcon-expected.png: Removed.
* platform/chromium-win/fast/events/panScroll-panIcon-expected.txt: Removed.
* platform/chromium-win/TestExpectations: Changed to enable panScroll-panIcon.html

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

6 years agoEnable autoplay when <video>'s src is from media stream
commit-queue@webkit.org [Thu, 24 Jan 2013 04:56:03 +0000 (04:56 +0000)]
Enable autoplay when <video>'s src is from media stream
https://bugs.webkit.org/show_bug.cgi?id=105224

Patch by Wei Jia <wjia@chromium.org> on 2013-01-23
Reviewed by Eric Carlson.

Source/WebCore:

Enable autoplay when <video>'s src is from media stream. This would avoid requesting multiple gestures when <video> is used for WebRTC.
The test is done by modifying platform/chromium/media/video-capture-preview.html.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::loadResource):

LayoutTests:

Always turns on mediaPlaybackRequiresUserGesture at the beginning.
HTMLMediaElement is supposed to turn it off when <video>'s src is from media stream.
* platform/chromium/media/video-capture-preview.html:

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

6 years agoRemove ForwardingHeaders/wtf from WebCore.
roger_fong@apple.com [Thu, 24 Jan 2013 04:49:21 +0000 (04:49 +0000)]
Remove ForwardingHeaders/wtf from WebCore.
https://bugs.webkit.org/show_bug.cgi?id=107723

The folders are empty, nothings actually being copied over anymore from the ForwardingHeaders/wtf folder.

Reviewed by Benjamin Poulain.

* ForwardingHeaders/wtf: Removed.
* ForwardingHeaders/wtf/dtoa: Removed.
* ForwardingHeaders/wtf/text: Removed.
* ForwardingHeaders/wtf/unicode: Removed.
* ForwardingHeaders/wtf/unicode/icu: Removed.
* ForwardingHeaders/wtf/unicode/wince: Removed.
* ForwardingHeaders/wtf/url: Removed.
* WebCore.vcproj/copyForwardingHeaders.cmd:

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

6 years agoGroup parameters (firstRuleIndex and lastRuleIndex) into a parameter object, RuleRange.
hayato@chromium.org [Thu, 24 Jan 2013 04:45:17 +0000 (04:45 +0000)]
Group parameters (firstRuleIndex and lastRuleIndex) into a parameter object, RuleRange.
https://bugs.webkit.org/show_bug.cgi?id=107095

Reviewed by Darin Adler.

This is a continued effort after r139817.

Factoring, no change in behavior.

* css/StyleResolver.cpp:
(WebCore::StyleResolver::collectMatchingRules):
(WebCore::StyleResolver::collectMatchingRulesForRegion):
(WebCore::StyleResolver::matchScopedAuthorRules):
(WebCore::StyleResolver::matchHostRules):
(WebCore::StyleResolver::matchAuthorRules):
(WebCore::StyleResolver::matchUserRules):
(WebCore::StyleResolver::matchUARules):
(WebCore::StyleResolver::collectMatchingRulesForList):
(WebCore::StyleResolver::styleSharingCandidateMatchesRuleSet):
* css/StyleResolver.h:
(WebCore::StyleResolver::RuleRange::RuleRange):
(RuleRange): Newly introduced to group parameters.
(StyleResolver):
(WebCore::StyleResolver::MatchRanges::UARuleRange):
(WebCore::StyleResolver::MatchRanges::authorRuleRange):
(WebCore::StyleResolver::MatchRanges::userRuleRange):

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

6 years agoSupport variables inside -webkit-box-reflect CSS property.
macpherson@chromium.org [Thu, 24 Jan 2013 04:44:10 +0000 (04:44 +0000)]
Support variables inside -webkit-box-reflect CSS property.
https://bugs.webkit.org/show_bug.cgi?id=106856

Source/WebCore:

Reviewed by Tony Chang.

The primary change is to make the direction parameter a CSSPrimitiveValue style ident,
so that it can also be a variable reference.

Covered by existing LayoutTests/compositing/reflections/ tests.
Added Test: fast/css/variables/var-inside-box-reflect.html

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::valueForReflection):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseReflect):
* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore):
(WebCore::CSSPrimitiveValue::operator CSSReflectionDirection):
(WebCore::CSSPrimitiveValue::convertToLength):
* css/CSSReflectValue.cpp:
(WebCore::CSSReflectValue::customCssText):
Use String addition operator instead of StringBuilder.
(WebCore):
(WebCore::CSSReflectValue::customSerializeResolvingVariables):
Use String addition operator instead of StringBuilder.
* css/CSSReflectValue.h:
(WebCore::CSSReflectValue::create):
(WebCore::CSSReflectValue::direction):
(CSSReflectValue):
(WebCore::CSSReflectValue::CSSReflectValue):
* css/CSSValue.cpp:
(WebCore::CSSValue::serializeResolvingVariables):
* css/StyleResolver.cpp:
(WebCore::hasVariableReference):
(WebCore::StyleResolver::applyProperty):

LayoutTests:

Adds test for variables as -webkit-box-reflect parameters.

Reviewed by Tony Chang.

* fast/css/variables/var-inside-box-reflect-expected.html: Added.
* fast/css/variables/var-inside-box-reflect.html: Added.

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

6 years agoThe previous patch wasn't complete. Finish reverting r139998 for real.
rniwa@webkit.org [Thu, 24 Jan 2013 04:29:04 +0000 (04:29 +0000)]
The previous patch wasn't complete. Finish reverting r139998 for real.

* BuildSlaveSupport/build.webkit.org-config/public_html/LeaksViewer/WebInspectorShims.js:
(ProfilerAgent.getProfile):

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

6 years agoAdd ASSERT_WITH_SECURITY_IMPLICATION to detect bad casts in rendering
inferno@chromium.org [Thu, 24 Jan 2013 04:14:26 +0000 (04:14 +0000)]
Add ASSERT_WITH_SECURITY_IMPLICATION to detect bad casts in rendering
https://bugs.webkit.org/show_bug.cgi?id=107743

Reviewed by Eric Seidel.

* rendering/InlineFlowBox.h:
(WebCore::toInlineFlowBox):
* rendering/RenderBR.h:
(WebCore::toRenderBR):
* rendering/RenderBlock.h:
(WebCore::toRenderBlock):
* rendering/RenderBox.h:
(WebCore::toRenderBox):
* rendering/RenderBoxModelObject.h:
(WebCore::toRenderBoxModelObject):
* rendering/RenderButton.h:
(WebCore::toRenderButton):
* rendering/RenderCombineText.h:
(WebCore::toRenderCombineText):
* rendering/RenderCounter.h:
(WebCore::toRenderCounter):
* rendering/RenderDetailsMarker.h:
(WebCore::toRenderDetailsMarker):
* rendering/RenderEmbeddedObject.h:
(WebCore::toRenderEmbeddedObject):
* rendering/RenderFieldset.h:
(WebCore::toRenderFieldset):
* rendering/RenderFileUploadControl.h:
(WebCore::toRenderFileUploadControl):
* rendering/RenderFlowThread.h:
(WebCore::toRenderFlowThread):
* rendering/RenderFrame.h:
(WebCore::toRenderFrame):
* rendering/RenderFrameSet.h:
(WebCore::toRenderFrameSet):
* rendering/RenderFullScreen.h:
(WebCore::toRenderFullScreen):
* rendering/RenderIFrame.h:
(WebCore::toRenderIFrame):
* rendering/RenderImage.h:
(WebCore::toRenderImage):
* rendering/RenderInline.h:
(WebCore::toRenderInline):
* rendering/RenderLayerModelObject.h:
(WebCore::toRenderLayerModelObject):
* rendering/RenderListBox.h:
(WebCore::toRenderListBox):
* rendering/RenderListItem.h:
(WebCore::toRenderListItem):
* rendering/RenderListMarker.h:
(WebCore::toRenderListMarker):
* rendering/RenderMedia.h:
(WebCore::toRenderMedia):
* rendering/RenderMenuList.h:
(WebCore::toRenderMenuList):
* rendering/RenderMeter.h:
(WebCore::toRenderMeter):
* rendering/RenderMultiColumnBlock.h:
(WebCore::toRenderMultiColumnBlock):
* rendering/RenderMultiColumnSet.h:
(WebCore::toRenderMultiColumnSet):
* rendering/RenderNamedFlowThread.h:
(WebCore::toRenderNamedFlowThread):
* rendering/RenderPart.h:
(WebCore::toRenderPart):
* rendering/RenderProgress.h:
(WebCore::toRenderProgress):
* rendering/RenderQuote.h:
(WebCore::toRenderQuote):
* rendering/RenderRegion.h:
(WebCore::toRenderRegion):
* rendering/RenderRubyRun.h:
(WebCore::toRenderRubyRun):
* rendering/RenderScrollbarPart.h:
(WebCore::toRenderScrollbarPart):
* rendering/RenderSearchField.h:
(WebCore::toRenderSearchField):
* rendering/RenderSlider.h:
(WebCore::toRenderSlider):
* rendering/RenderSnapshottedPlugIn.h:
(WebCore::toRenderSnapshottedPlugIn):
* rendering/RenderTable.h:
(WebCore::toRenderTable):
* rendering/RenderTableCaption.h:
(WebCore::toRenderTableCaption):
* rendering/RenderTableCell.h:
(WebCore::toRenderTableCell):
* rendering/RenderTableCol.h:
(WebCore::toRenderTableCol):
* rendering/RenderTableRow.h:
(WebCore::toRenderTableRow):
* rendering/RenderTableSection.h:
(WebCore::toRenderTableSection):
* rendering/RenderText.h:
(WebCore::toRenderText):
* rendering/RenderTextControl.h:
(WebCore::toRenderTextControl):
* rendering/RenderTextControlMultiLine.h:
(WebCore::toRenderTextControlMultiLine):
* rendering/RenderTextControlSingleLine.h:
(WebCore::toRenderTextControlSingleLine):
* rendering/RenderVideo.h:
(WebCore::toRenderVideo):
* rendering/RenderView.h:
(WebCore::toRenderView):
* rendering/RenderWidget.h:
(WebCore::toRenderWidget):
* rendering/mathml/RenderMathMLBlock.h:
(WebCore::toRenderMathMLBlock):
* rendering/svg/RenderSVGContainer.h:
(WebCore::toRenderSVGContainer):
* rendering/svg/RenderSVGGradientStop.h:
(WebCore::toRenderSVGGradientStop):
* rendering/svg/RenderSVGImage.h:
(WebCore::toRenderSVGImage):
* rendering/svg/RenderSVGInlineText.h:
(WebCore::toRenderSVGInlineText):
* rendering/svg/RenderSVGRoot.h:
(WebCore::toRenderSVGRoot):
* rendering/svg/RenderSVGShape.h:
(WebCore::toRenderSVGShape):
* rendering/svg/RenderSVGText.h:
(WebCore::toRenderSVGText):

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

6 years agoRevert r139998 for now since the Leaks Viewer pulls in a specific version of Inspecto...
rniwa@webkit.org [Thu, 24 Jan 2013 04:08:49 +0000 (04:08 +0000)]
Revert r139998 for now since the Leaks Viewer pulls in a specific version of Inspector code.

* BuildSlaveSupport/build.webkit.org-config/public_html/LeaksViewer/WebInspectorShims.js:
(ProfilerAgent.getProfile):

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

6 years agoDon't allocate rare data on every Element on removal
commit-queue@webkit.org [Thu, 24 Jan 2013 04:06:22 +0000 (04:06 +0000)]
Don't allocate rare data on every Element on removal
https://bugs.webkit.org/show_bug.cgi?id=107756

Patch by Elliott Sprehn <esprehn@gmail.com> on 2013-01-23
Reviewed by Eric Seidel.

We should not allocate an ElementRareData for every element
in Element::removedFrom. Previously calls to setIsInTopLayer
would unconditionally call ensureElementRareData(), and this was
called from Element::removedFrom meaning removing an element
made the entire subtree suddenly balloon to huge in size as each
one got an ElementRareData.

This is a regression from my patch on Bug 103912 where I removed a check
that avoided this allocation.

No new tests needed, covered by existing tests.

* dom/Element.cpp:
(WebCore::Element::setIsInTopLayer):

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

6 years agoUnreviewed. Rolled Chromium DEPS to r178434. Requested by
commit-queue@webkit.org [Thu, 24 Jan 2013 03:52:52 +0000 (03:52 +0000)]
Unreviewed.  Rolled Chromium DEPS to r178434.  Requested by
"Yoshifumi Inoue" <yosin@chromium.org> via sheriffbot.

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-23

* DEPS:

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

6 years agoCleanup the names of the WebKit2 xpc services
weinig@apple.com [Thu, 24 Jan 2013 03:30:45 +0000 (03:30 +0000)]
Cleanup the names of the WebKit2 xpc services
https://bugs.webkit.org/show_bug.cgi?id=107759

Reviewed by Anders Carlsson.

Renames:
    com.apple.WebKit2.WebProcessService -> com.apple.WebKit.WebContent
    com.apple.WebKit2.WebProcessServiceForWebKitDevelopment -> com.apple.WebKit.WebContent.Development

* Configurations/BaseXPCService.xcconfig: Copied from Source/WebKit2/Configurations/WebProcessService.xcconfig.
* Configurations/WebContentService.xcconfig: Copied from Source/WebKit2/Configurations/WebProcessService.xcconfig.
* Configurations/WebContentServiceForDevelopment.xcconfig: Copied from Source/WebKit2/Configurations/WebProcessServiceForWebKitDevelopment.xcconfig.
* Configurations/WebProcessService.xcconfig: Removed.
* Configurations/WebProcessServiceForWebKitDevelopment.xcconfig: Removed.
Rename config files to match new service names and add base config.

* UIProcess/Launcher/mac/ProcessLauncherMac.mm:
(WebKit::connectToWebProcessServiceForWebKitDevelopment):
(WebKit::createWebProcessServiceForWebKitDevelopment):
(WebKit::createWebProcessService):
* WebKit2.xcodeproj/project.pbxproj:
* WebKit2Service: Removed.
* WebProcessService/Info.plist:
* WebProcessServiceForWebKitDevelopment/Info.plist:
Update for new names.

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

6 years agoBackgroundHTMLParser should use more const references to avoid copy constructors
abarth@webkit.org [Thu, 24 Jan 2013 03:24:32 +0000 (03:24 +0000)]
BackgroundHTMLParser should use more const references to avoid copy constructors
https://bugs.webkit.org/show_bug.cgi?id=107763

Reviewed by Tony Gentilcore.

I doubt this optimization is visible anywhere, but it's just a nit.

* html/parser/BackgroundHTMLParser.cpp:
(WebCore::BackgroundHTMLParser::BackgroundHTMLParser):
(WebCore::BackgroundHTMLParser::createPartial):
* html/parser/BackgroundHTMLParser.h:
(WebCore::BackgroundHTMLParser::create):
(BackgroundHTMLParser):

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

6 years agoCoordinated Graphics : Reduce the number of calls to Functional and number of IPC...
commit-queue@webkit.org [Thu, 24 Jan 2013 02:57:46 +0000 (02:57 +0000)]
Coordinated Graphics : Reduce the number of calls to Functional and number of IPC messages by sending the created/deleted layers in a vector.
https://bugs.webkit.org/show_bug.cgi?id=107625

Patch by Seulgi Kim <seulgikim@company100.net> on 2013-01-23
Reviewed by Benjamin Poulain.

Currently, the number of messages sent by CoordinatedLayerTreeHost is
equal to the number of layers created/deleted even though they requested
in the same cycle.
It's not good since CoreIPC creates functional before sending messages,
and CoordinatedLayerTreeHostProxy creates functional before
create/delete layers.

This patch makes CoordinatedLayerTreeHost send just one
CreateCompositingLayers message and CoordinatedLayerTreeHostProxy create
just one functional in a cycle. The same work has been done with
DeleteCompositingLayers message.

This patch will reduce the number of calls to Functional and number of
IPC messages by sending the created/deleted layers in a vector.

No new tests, no change in behavior.

* UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
(WebKit::CoordinatedLayerTreeHostProxy::createCompositingLayers):
(WebKit::CoordinatedLayerTreeHostProxy::deleteCompositingLayers):
* UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
(CoordinatedLayerTreeHostProxy):
* UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.messages.in:
* UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
(WebKit::LayerTreeRenderer::createLayers):
(WebKit):
(WebKit::LayerTreeRenderer::deleteLayers):
* UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
(LayerTreeRenderer):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
(WebKit::CoordinatedLayerTreeHost::createCompositingLayers):
(WebKit::CoordinatedLayerTreeHost::deleteCompositingLayers):

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

6 years agoAdd support for ASSERT_WITH_SECURITY_IMPLICATION.
inferno@chromium.org [Thu, 24 Jan 2013 02:55:32 +0000 (02:55 +0000)]
Add support for ASSERT_WITH_SECURITY_IMPLICATION.
https://bugs.webkit.org/show_bug.cgi?id=107699

Reviewed by Eric Seidel.

Source/WebCore:

* dom/ContainerNode.cpp:
(WebCore::ContainerNode::parserInsertBefore): Use ASSERT_WITH_SECURITY_IMPLICATION
for document confusion ASSERT(document() == newChild->document())
(WebCore::ContainerNode::parserAppendChild): same.

Source/WTF:

* wtf/Assertions.h: Add ASSERT_WITH_SECURITY_IMPLICATION to
indicate possible security vulnerabily and enable it by default
in fuzzing builds.
* wtf/Vector.h: Use ASSERT_WITH_SECURITY_IMPLICATION for
bounds check on [] operator.

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

6 years agoUnreviewed build fix.
vollick@chromium.org [Thu, 24 Jan 2013 02:40:59 +0000 (02:40 +0000)]
Unreviewed build fix.

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

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

6 years agoTemplate element should parse in XHTML just as it does in HTML
rafaelw@chromium.org [Thu, 24 Jan 2013 02:31:35 +0000 (02:31 +0000)]
Template element should parse in XHTML just as it does in HTML
https://bugs.webkit.org/show_bug.cgi?id=106491

Reviewed by Ryosuke Niwa.

Source/WebCore:

https://dvcs.w3.org/hg/webcomponents/raw-file/f33622c39c5e/spec/templates/index.html#parsing-xhtml-documents.
https://dvcs.w3.org/hg/webcomponents/raw-file/f33622c39c5e/spec/templates/index.html#serializing-xhtml-documents.

This patch modifies the XML parser in two ways: (1) when nodes are created, their owner document is
the owner document of the current node, rather than the containing document, and (2) when an HTMLTemplateElement
is encountered, its content document fragment is pushed onto the stack, rather than the element itself, so that children
are appended to the template content. Also, because XSLT operates on the serialized input document, transforms consider
template contents to be descendants.

Tests: fast/dom/HTMLTemplateElement/xhtml-parsing-and-serialization.xml
       fast/xpath/xpath-template-element.html
       fast/xsl/xslt-processor-template.html
       fast/xsl/xslt-xhtml-template.xml

* xml/parser/XMLDocumentParser.cpp:
(WebCore::XMLDocumentParser::enterText):
* xml/parser/XMLDocumentParserLibxml2.cpp:
(WebCore::XMLDocumentParser::startElementNs):
(WebCore::XMLDocumentParser::processingInstruction):
(WebCore::XMLDocumentParser::cdataBlock):
(WebCore::XMLDocumentParser::comment):

LayoutTests:

* fast/dom/HTMLTemplateElement/xhtml-parsing-and-serialization-expected.txt: Added.
* fast/dom/HTMLTemplateElement/xhtml-parsing-and-serialization.xml: Added.
* fast/xpath/xpath-template-element-expected.txt: Added.
* fast/xpath/xpath-template-element.html: Added.
* fast/xsl/resources/xhtml-template.xsl: Added.
* fast/xsl/xslt-processor-template-expected.txt: Added.
* fast/xsl/xslt-processor-template.html: Added.
* fast/xsl/xslt-xhtml-template-expected.txt: Added.
* fast/xsl/xslt-xhtml-template.xml: Added.

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

6 years agoUnreviewew. Rebaseline for Chromium: fast/ruby/select-ruby.html
yosin@chromium.org [Thu, 24 Jan 2013 02:27:58 +0000 (02:27 +0000)]
Unreviewew. Rebaseline for Chromium: fast/ruby/select-ruby.html

* platform/chromium-linux-x86/fast/ruby/select-ruby-expected.txt: Added.
* platform/chromium-linux/fast/ruby/select-ruby-expected.png: Added.
* platform/chromium-linux/fast/ruby/select-ruby-expected.txt: Added.
* platform/chromium-mac-lion/fast/ruby/select-ruby-expected.txt: Added.
* platform/chromium-mac-snowleopard/fast/ruby/select-ruby-expected.txt: Added.
* platform/chromium-mac/fast/ruby/select-ruby-expected.png: Added.
* platform/chromium-mac/fast/ruby/select-ruby-expected.txt: Added.
* platform/chromium-win-xp/fast/ruby/select-ruby-expected.txt: Added.
* platform/chromium-win/fast/ruby/select-ruby-expected.png: Added.
* platform/chromium-win/fast/ruby/select-ruby-expected.txt: Added.

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

6 years agoCoordinated Graphics: Add LegacyReceiver to messages.in files.
commit-queue@webkit.org [Thu, 24 Jan 2013 02:20:17 +0000 (02:20 +0000)]
Coordinated Graphics: Add LegacyReceiver to messages.in files.
https://bugs.webkit.org/show_bug.cgi?id=107760

Patch by Huang Dongsung <luxtella@company100.net> on 2013-01-23
Reviewed by Anders Carlsson.

After r140605, LegacyReceiver attribute is needed to use recevier specific
memeber functions.

* UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.messages.in:
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.messages.in:

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

6 years agoTeach threaded HTML parser to update InspectorInstrumentation when writing HTML
tonyg@chromium.org [Thu, 24 Jan 2013 02:17:24 +0000 (02:17 +0000)]
Teach threaded HTML parser to update InspectorInstrumentation when writing HTML
https://bugs.webkit.org/show_bug.cgi?id=107755

Reviewed by Eric Seidel.

The current length is unused, so it doesn't cause any noticeable behavior difference to not pass it here.

No new tests because covered by existing tests.

* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::processTokensFromBackgroundParser):

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

6 years agoAdd ordering for WebCore __DATA.
slewis@apple.com [Thu, 24 Jan 2013 02:15:35 +0000 (02:15 +0000)]
Add ordering for WebCore __DATA.
https://bugs.webkit.org/show_bug.cgi?id=107765
<rdar://problem/13019603>

Rubber stamped by Oliver Hunt.

No Change in functionality.

* WebCore.order:

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

6 years ago[V8] Make an Isolate parameter mandatory in NativeToJS()
haraken@chromium.org [Thu, 24 Jan 2013 02:11:18 +0000 (02:11 +0000)]
[V8] Make an Isolate parameter mandatory in NativeToJS()
https://bugs.webkit.org/show_bug.cgi?id=107663

Reviewed by Adam Barth.

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateCallbackImplementation):
(NativeToJSValue):
* bindings/scripts/test/V8/V8TestCallback.cpp:
(WebCore::V8TestCallback::callbackWithClass1Param):
(WebCore::V8TestCallback::callbackWithClass2Param):
(WebCore::V8TestCallback::callbackWithStringList):
(WebCore::V8TestCallback::callbackWithBoolean):
(WebCore::V8TestCallback::callbackRequiresThisToPass):

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

6 years agoUnreviewed, rolling out r140612.
commit-queue@webkit.org [Thu, 24 Jan 2013 02:02:25 +0000 (02:02 +0000)]
Unreviewed, rolling out r140612.
http://trac.webkit.org/changeset/140612
https://bugs.webkit.org/show_bug.cgi?id=107768

 broke the build (Requested by smfr on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-23

* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/KeyValueStorage/WebKeyValueStorageManager.cpp: Renamed from Source/WebKit2/WebProcess/Storage/WebKeyValueStorageManager.cpp.
(WebKit):
(WebKit::WebKeyValueStorageManager::supplementName):
(WebKit::WebKeyValueStorageManager::WebKeyValueStorageManager):
(WebKit::WebKeyValueStorageManager::initialize):
(WebKit::keyValueStorageOriginIdentifiers):
(WebKit::WebKeyValueStorageManager::dispatchDidGetKeyValueStorageOrigins):
(WebKit::WebKeyValueStorageManager::getKeyValueStorageOrigins):
(WebKit::WebKeyValueStorageManager::didFinishLoadingOrigins):
(WebKit::WebKeyValueStorageManager::dispatchDidModifyOrigin):
(WebKit::WebKeyValueStorageManager::deleteEntriesForOrigin):
(WebKit::WebKeyValueStorageManager::deleteAllEntries):
* WebProcess/KeyValueStorage/WebKeyValueStorageManager.h: Renamed from Source/WebKit2/WebProcess/Storage/WebKeyValueStorageManager.h.
(WebKit):
(WebKeyValueStorageManager):
(WebKit::WebKeyValueStorageManager::localStorageDirectory):
(WebKit::WebKeyValueStorageManager::indexedDBDatabaseDirectory):
* WebProcess/KeyValueStorage/WebKeyValueStorageManager.messages.in: Renamed from Source/WebKit2/WebProcess/Storage/WebKeyValueStorageManager.messages.in.

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

6 years agoRenderProgress does not repaint on value change
benjamin@webkit.org [Thu, 24 Jan 2013 01:54:13 +0000 (01:54 +0000)]
RenderProgress does not repaint on value change
https://bugs.webkit.org/show_bug.cgi?id=106977

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-01-23
Reviewed by Joseph Pecoraro.

No test because the ouput depends on the code of RenderTheme, and
we use the platform theme for testing.

* rendering/RenderProgress.cpp:
(WebCore::RenderProgress::updateFromElement):
(WebCore::RenderProgress::updateAnimationState):
Previously, repaint() was only called on two occasions:
-On animationTimerFired().
-In response to updateFromElement() if and only if the RenderTheme start/stop an
 animation previously stopped/running.

When changing the value of HTMLProgressElement, no repaint was called until
the next timer fired for the animation.
This is a problem if:
-The animation of RenderTheme is slow.
-If there is no animation (the element is never updated in that case).

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

6 years ago[Chromium] Remove unused header files in chromium/public/platform/
pilgrim@chromium.org [Thu, 24 Jan 2013 01:48:53 +0000 (01:48 +0000)]
[Chromium] Remove unused header files in chromium/public/platform/
https://bugs.webkit.org/show_bug.cgi?id=107741

Reviewed by James Robinson.

These header files have migrated to the new Platform directory.
This patch updates the remaining #include references and removes
the old files that did nothing but redirect to the new ones.

Source/WebKit/chromium:

* WebKit.gyp:
* public/WebAccessibilityObject.h:
* public/WebAccessibilityRole.h:
* public/WebActiveWheelFlingParameters.h:
* public/WebAnimationController.h:
* public/WebApplicationCacheHost.h:
* public/WebApplicationCacheHostClient.h:
* public/WebArrayBuffer.h:
* public/WebArrayBufferView.h:
* public/WebAudioSourceProvider.h:
* public/WebBatteryStatus.h:
* public/WebBindings.h:
* public/WebBlob.h:
* public/WebCache.h:
* public/WebCachedURLRequest.h:
* public/WebColorChooser.h:
* public/WebColorChooserClient.h:
* public/WebColorName.h:
* public/WebCommonWorkerClient.h:
* public/WebCompositionUnderline.h:
* public/WebCompositorInputHandler.h:
* public/WebConsoleMessage.h:
* public/WebContentDetectionResult.h:
* public/WebContextMenuData.h:
* public/WebCrossOriginPreflightResultCache.h:
* public/WebCursorInfo.h:
* public/WebDOMEvent.h:
* public/WebDOMEventListener.h:
* public/WebDOMStringList.h:
* public/WebDataSource.h:
* public/WebDatabase.h:
* public/WebDateTimeChooserCompletion.h:
* public/WebDateTimeChooserParams.h:
* public/WebDeliveredIntentClient.h:
* public/WebDevToolsAgent.h:
* public/WebDevToolsAgentClient.h:
* public/WebDevToolsFrontend.h:
* public/WebDeviceOrientationClient.h:
* public/WebDeviceOrientationClientMock.h:
* public/WebDeviceOrientationController.h:
* public/WebDocument.h:
* public/WebDraggableRegion.h:
* public/WebExternalPopupMenuClient.h:
* public/WebFileChooserCompletion.h:
* public/WebFileChooserParams.h:
* public/WebFileSystemCallbacks.h:
* public/WebFileSystemEntry.h:
* public/WebFileWriter.h:
* public/WebFileWriterClient.h:
* public/WebFindOptions.h:
* public/WebFont.h:
* public/WebFontCache.h:
* public/WebFontDescription.h:
* public/WebFormControlElement.h:
* public/WebFormElement.h:
* public/WebFrame.h:
* public/WebFrameClient.h:
* public/WebGeolocationClientMock.h:
* public/WebGeolocationController.h:
* public/WebGeolocationError.h:
* public/WebGeolocationPermissionRequest.h:
* public/WebGeolocationPermissionRequestManager.h:
* public/WebGeolocationPosition.h:
* public/WebGlyphCache.h:
* public/WebHelperPlugin.h:
* public/WebHistoryItem.h:
* public/WebHitTestResult.h:
* public/WebIDBCallbacks.h:
* public/WebIDBCursor.h:
* public/WebIDBDatabase.h:
* public/WebIDBDatabaseCallbacks.h:
* public/WebIDBDatabaseError.h:
* public/WebIDBFactory.h:
* public/WebIDBKey.h:
* public/WebIDBKeyPath.h:
* public/WebIDBKeyRange.h:
* public/WebIDBMetadata.h:
* public/WebIDBTransaction.h:
* public/WebIDBTransactionCallbacks.h:
* public/WebIconURL.h:
* public/WebImageDecoder.h:
* public/WebInputEvent.h:
* public/WebIntent.h:
* public/WebIntentRequest.h:
* public/WebIntentServiceInfo.h:
* public/WebKit.h:
* public/WebMediaPlayer.h:
* public/WebMediaStreamRegistry.h:
* public/WebMenuItemInfo.h:
* public/WebNetworkStateNotifier.h:
* public/WebNode.h:
* public/WebNodeCollection.h:
* public/WebNodeList.h:
* public/WebNotification.h:
* public/WebNotificationPresenter.h:
* public/WebOptionElement.h:
* public/WebPageOverlay.h:
* public/WebPagePopup.h:
* public/WebPageSerializer.h:
* public/WebPasswordFormData.h:
* public/WebPerformance.h:
* public/WebPlugin.h:
* public/WebPluginContainer.h:
* public/WebPluginParams.h:
* public/WebPopupMenu.h:
* public/WebPopupMenuInfo.h:
* public/WebPrerendererClient.h:
* public/WebPrintParams.h:
* public/WebRange.h:
* public/WebRegularExpression.h:
* public/WebRuntimeFeatures.h:
* public/WebScopedMicrotaskSuppression.h:
* public/WebScopedUserGesture.h:
* public/WebScriptController.h:
* public/WebScriptSource.h:
* public/WebSearchableFormData.h:
* public/WebSecurityOrigin.h:
* public/WebSecurityPolicy.h:
* public/WebSelectElement.h:
* public/WebSerializedScriptValue.h:
* public/WebSettings.h:
* public/WebSharedWorker.h:
* public/WebSharedWorkerRepository.h:
* public/WebSocket.h:
* public/WebSocketClient.h:
* public/WebSpeechGrammar.h:
* public/WebSpeechInputController.h:
* public/WebSpeechInputResult.h:
* public/WebSpeechRecognitionHandle.h:
* public/WebSpeechRecognitionParams.h:
* public/WebSpeechRecognitionResult.h:
* public/WebSpeechRecognizer.h:
* public/WebSpeechRecognizerClient.h:
* public/WebSpellCheckClient.h:
* public/WebStorageEventDispatcher.h:
* public/WebSurroundingText.h:
* public/WebTestingSupport.h:
* public/WebTextCheckingCompletion.h:
* public/WebTextCheckingResult.h:
* public/WebTextFieldDecoratorClient.h:
* public/WebTextInputInfo.h:
* public/WebTextRun.h:
* public/WebTimeRange.h:
* public/WebTouchPoint.h:
* public/WebUserMediaRequest.h:
* public/WebView.h:
* public/WebViewBenchmarkSupport.h:
* public/WebViewClient.h:
* public/WebWidget.h:
* public/WebWidgetClient.h:
* public/WebWindowFeatures.h:
* public/WebWorkerInfo.h:
* public/android/WebInputEventFactory.h:
* public/android/WebSandboxSupport.h:
* public/default/WebRenderTheme.h:
* public/gtk/WebInputEventFactory.h:
* public/linux/WebFontRendering.h:
* public/linux/WebSandboxSupport.h:
* public/mac/WebInputEventFactory.h:
* public/mac/WebSandboxSupport.h:
* public/mac/WebScreenInfoFactory.h:
* public/mac/WebSubstringUtil.h:
* public/platform/WebAudioBus.h: Removed.
* public/platform/WebAudioDevice.h: Removed.
* public/platform/WebBlobData.h: Removed.
* public/platform/WebBlobRegistry.h: Removed.
* public/platform/WebCString.h: Removed.
* public/platform/WebCanvas.h: Removed.
* public/platform/WebClipboard.h: Removed.
* public/platform/WebColor.h: Removed.
* public/platform/WebCommon.h: Removed.
* public/platform/WebCookie.h: Removed.
* public/platform/WebCookieJar.h: Removed.
* public/platform/WebData.h: Removed.
* public/platform/WebDragData.h: Removed.
* public/platform/WebFileSystem.h: Removed.
* public/platform/WebFloatPoint.h: Removed.
* public/platform/WebFloatQuad.h: Removed.
* public/platform/WebFloatRect.h: Removed.
* public/platform/WebGamepad.h: Removed.
* public/platform/WebGamepads.h: Removed.
* public/platform/WebGraphicsContext3D.h: Removed.
* public/platform/WebHTTPBody.h: Removed.
* public/platform/WebHTTPHeaderVisitor.h: Removed.
* public/platform/WebHTTPLoadInfo.h: Removed.
* public/platform/WebImage.h: Removed.
* public/platform/WebLocalizedString.h: Removed.
* public/platform/WebMediaStreamCenter.h: Removed.
* public/platform/WebMediaStreamCenterClient.h: Removed.
* public/platform/WebMediaStreamComponent.h: Removed.
* public/platform/WebMediaStreamDescriptor.h: Removed.
* public/platform/WebMediaStreamSource.h: Removed.
* public/platform/WebMediaStreamSourcesRequest.h: Removed.
* public/platform/WebNonCopyable.h: Removed.
* public/platform/WebPoint.h: Removed.
* public/platform/WebPrivateOwnPtr.h: Removed.
* public/platform/WebPrivatePtr.h: Removed.
* public/platform/WebRect.h: Removed.
* public/platform/WebReferrerPolicy.h: Removed.
* public/platform/WebSize.h: Removed.
* public/platform/WebSocketStreamError.h: Removed.
* public/platform/WebSocketStreamHandle.h: Removed.
* public/platform/WebSocketStreamHandleClient.h: Removed.
* public/platform/WebString.h: Removed.
* public/platform/WebThread.h: Removed.
* public/platform/WebThreadSafeData.h: Removed.
* public/platform/WebURL.h: Removed.
* public/platform/WebURLError.h: Removed.
* public/platform/WebURLLoadTiming.h: Removed.
* public/platform/WebURLLoader.h: Removed.
* public/platform/WebURLLoaderClient.h: Removed.
* public/platform/WebURLRequest.h: Removed.
* public/platform/WebURLResponse.h: Removed.
* public/platform/WebVector.h: Removed.
* public/platform/android/WebSandboxSupport.h: Removed.
* public/platform/android/WebThemeEngine.h: Removed.
* public/platform/default/WebThemeEngine.h: Removed.
* public/platform/linux/WebFontFamily.h: Removed.
* public/platform/linux/WebSandboxSupport.h: Removed.
* public/platform/mac/WebSandboxSupport.h: Removed.
* public/platform/mac/WebThemeEngine.h: Removed.
* public/platform/win/WebSandboxSupport.h: Removed.
* public/platform/win/WebThemeEngine.h: Removed.
* public/win/WebInputEventFactory.h:
* public/win/WebSandboxSupport.h:
* public/win/WebScreenInfoFactory.h:
* public/x11/WebScreenInfoFactory.h:

Tools:

* DumpRenderTree/chromium/TestRunner/src/MockGrammarCheck.cpp:
* DumpRenderTree/chromium/TestRunner/src/MockSpellCheck.h:

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

6 years agoIntroduce the "stacking container" concept.
vollick@chromium.org [Thu, 24 Jan 2013 01:42:08 +0000 (01:42 +0000)]
Introduce the "stacking container" concept.
https://bugs.webkit.org/show_bug.cgi?id=107734

Reviewed by Simon Fraser.

A stacking container is treated just like a stacking context. That
is, it has z-order lists, it and its descendants are stacked as a
unit, and when the RenderLayerCompositor does its overlap testing,
the composited regions for all layer lists take effect only once the
stacking container is done being processed.

This patch also adds the function RenderLayer::isStackingContainer().
Currently, this is equivalent to RenderLayer::isStackingContext(),
but in future, the definition of stacking container will be broadened
to encompass more than just stacking contexts.

Other than the addition of this extra function, the patch is mostly
comprised of name changes. Any code that used to refer to the
stacking context concept, but didn't necessarily require a stacking
context in the strict, CSS-sense, was switched to refer to stacking
container. No functionality was changed.

No new tests, no change in functionality.

Source/WebCore:

* inspector/InspectorLayerTreeAgent.cpp:
(WebCore::InspectorLayerTreeAgent::buildObjectForLayer):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::RenderLayer):
(WebCore):
(WebCore::RenderLayer::updatePagination):
(WebCore::RenderLayer::canBeStackingContainer):
(WebCore::RenderLayer::setHasVisibleContent):
(WebCore::RenderLayer::dirty3DTransformedDescendantStatus):
(WebCore::RenderLayer::stackingContainer):
(WebCore::compositingContainer):
(WebCore::expandClipRectForDescendantsAndReflection):
(WebCore::RenderLayer::addChild):
(WebCore::RenderLayer::removeChild):
(WebCore::RenderLayer::updateNeedsCompositedScrolling):
(WebCore::RenderLayer::updateCompositingLayersAfterScroll):
(WebCore::RenderLayer::paintPaginatedChildLayer):
(WebCore::RenderLayer::hitTestPaginatedChildLayer):
(WebCore::RenderLayer::calculateLayerBounds):
(WebCore::RenderLayer::dirtyZOrderLists):
(WebCore::RenderLayer::dirtyStackingContainerZOrderLists):
(WebCore::RenderLayer::collectLayers):
(WebCore::RenderLayer::updateCompositingAndLayerListsIfNeeded):
(WebCore::RenderLayer::updateStackingContextsAfterStyleChange):
(WebCore::RenderLayer::styleChanged):
* rendering/RenderLayer.h:
(RenderLayer):
(WebCore::RenderLayer::isStackingContainer):
(WebCore::RenderLayer::posZOrderList):
(WebCore::RenderLayer::negZOrderList):
(WebCore::RenderLayer::isDirtyStackingContainer):
(WebCore::RenderLayer::clearZOrderLists):
(WebCore::RenderLayer::updateZOrderLists):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
(WebCore::RenderLayerBacking::compositingOpacity):
(WebCore::RenderLayerBacking::hasVisibleNonCompositingDescendantLayers):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::enclosingNonStackingClippingLayer):
(WebCore::RenderLayerCompositor::addToOverlapMapRecursive):
(WebCore::RenderLayerCompositor::computeCompositingRequirements):
(WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
(WebCore::RenderLayerCompositor::updateLayerTreeGeometry):
(WebCore::RenderLayerCompositor::updateCompositingDescendantGeometry):
(WebCore::RenderLayerCompositor::requiresCompositingForPosition):
(WebCore::RenderLayerCompositor::layerHas3DContent):
(WebCore::isRootmostFixedOrStickyLayer):

Source/WebKit2:

* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
(WebKit::updateOffsetFromViewportForSelf):

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

6 years agoHarden JSC a bit with RELEASE_ASSERT
oliver@apple.com [Thu, 24 Jan 2013 01:40:37 +0000 (01:40 +0000)]
Harden JSC a bit with RELEASE_ASSERT
https://bugs.webkit.org/show_bug.cgi?id=107766

Reviewed by Mark Hahnenberg.

Went through and replaced a pile of ASSERTs that were covering
significantly important details (bounds checks, etc) where
having the checks did not impact release performance in any
measurable way.

* API/JSContextRef.cpp:
(JSContextCreateBacktrace):
* assembler/MacroAssembler.h:
(JSC::MacroAssembler::branchAdd32):
(JSC::MacroAssembler::branchMul32):
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::dumpBytecode):
(JSC::CodeBlock::handlerForBytecodeOffset):
(JSC::CodeBlock::lineNumberForBytecodeOffset):
(JSC::CodeBlock::bytecodeOffset):
* bytecode/CodeBlock.h:
(JSC::CodeBlock::bytecodeOffsetForCallAtIndex):
(JSC::CodeBlock::bytecodeOffset):
(JSC::CodeBlock::exceptionHandler):
(JSC::CodeBlock::codeOrigin):
(JSC::CodeBlock::immediateSwitchJumpTable):
(JSC::CodeBlock::characterSwitchJumpTable):
(JSC::CodeBlock::stringSwitchJumpTable):
(JSC::CodeBlock::setIdentifiers):
(JSC::baselineCodeBlockForInlineCallFrame):
(JSC::ExecState::uncheckedR):
* bytecode/CodeOrigin.cpp:
(JSC::CodeOrigin::inlineStack):
* bytecode/CodeOrigin.h:
(JSC::CodeOrigin::CodeOrigin):
* dfg/DFGCSEPhase.cpp:
* dfg/DFGOSRExit.cpp:
* dfg/DFGScratchRegisterAllocator.h:
(JSC::DFG::ScratchRegisterAllocator::preserveUsedRegistersToScratchBuffer):
(JSC::DFG::ScratchRegisterAllocator::restoreUsedRegistersFromScratchBuffer):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::allocate):
(JSC::DFG::SpeculativeJIT::spill):
(JSC::DFG::SpeculativeJIT::integerResult):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::fillInteger):
(JSC::DFG::SpeculativeJIT::fillDouble):
(JSC::DFG::SpeculativeJIT::fillJSValue):
(JSC::DFG::SpeculativeJIT::nonSpeculativeCompareNull):
(JSC::DFG::SpeculativeJIT::emitCall):
(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::SpeculativeJIT::fillSpeculateIntStrict):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGValueSource.h:
(JSC::DFG::dataFormatToValueSourceKind):
(JSC::DFG::ValueSource::ValueSource):
* dfg/DFGVirtualRegisterAllocationPhase.cpp:
* heap/BlockAllocator.cpp:
(JSC::BlockAllocator::BlockAllocator):
(JSC::BlockAllocator::releaseFreeRegions):
(JSC::BlockAllocator::blockFreeingThreadMain):
* heap/Heap.cpp:
(JSC::Heap::lastChanceToFinalize):
(JSC::Heap::collect):
* interpreter/Interpreter.cpp:
(JSC::Interpreter::throwException):
(JSC::Interpreter::execute):
* jit/GCAwareJITStubRoutine.cpp:
(JSC::GCAwareJITStubRoutine::observeZeroRefCount):
* jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompileSlowCases):
* jit/JITExceptions.cpp:
(JSC::genericThrow):
* jit/JITInlines.h:
(JSC::JIT::emitLoad):
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_end):
(JSC::JIT::emit_resolve_operations):
* jit/JITStubRoutine.cpp:
(JSC::JITStubRoutine::observeZeroRefCount):
* jit/JITStubs.cpp:
(JSC::returnToThrowTrampoline):
* runtime/Arguments.cpp:
(JSC::Arguments::getOwnPropertySlot):
(JSC::Arguments::getOwnPropertyDescriptor):
(JSC::Arguments::deleteProperty):
(JSC::Arguments::defineOwnProperty):
(JSC::Arguments::didTearOffActivation):
* runtime/ArrayPrototype.cpp:
(JSC::shift):
(JSC::unshift):
(JSC::arrayProtoFuncLastIndexOf):
* runtime/ButterflyInlines.h:
(JSC::Butterfly::growPropertyStorage):
* runtime/CodeCache.cpp:
(JSC::CodeCache::getFunctionExecutableFromGlobalCode):
* runtime/CodeCache.h:
(JSC::CacheMap::add):
* runtime/Completion.cpp:
(JSC::checkSyntax):
(JSC::evaluate):
* runtime/Executable.cpp:
(JSC::FunctionExecutable::FunctionExecutable):
(JSC::EvalExecutable::unlinkCalls):
(JSC::ProgramExecutable::compileOptimized):
(JSC::ProgramExecutable::unlinkCalls):
(JSC::ProgramExecutable::initializeGlobalProperties):
(JSC::FunctionExecutable::baselineCodeBlockFor):
(JSC::FunctionExecutable::compileOptimizedForCall):
(JSC::FunctionExecutable::compileOptimizedForConstruct):
(JSC::FunctionExecutable::compileForCallInternal):
(JSC::FunctionExecutable::compileForConstructInternal):
(JSC::FunctionExecutable::unlinkCalls):
(JSC::NativeExecutable::hashFor):
* runtime/Executable.h:
(JSC::EvalExecutable::compile):
(JSC::ProgramExecutable::compile):
(JSC::FunctionExecutable::compileForCall):
(JSC::FunctionExecutable::compileForConstruct):
* runtime/IndexingHeader.h:
(JSC::IndexingHeader::setVectorLength):
* runtime/JSArray.cpp:
(JSC::JSArray::pop):
(JSC::JSArray::shiftCountWithArrayStorage):
(JSC::JSArray::shiftCountWithAnyIndexingType):
(JSC::JSArray::unshiftCountWithArrayStorage):
* runtime/JSGlobalObjectFunctions.cpp:
(JSC::jsStrDecimalLiteral):
* runtime/JSObject.cpp:
(JSC::JSObject::copyButterfly):
(JSC::JSObject::defineOwnIndexedProperty):
(JSC::JSObject::putByIndexBeyondVectorLengthWithoutAttributes):
* runtime/JSString.cpp:
(JSC::JSRopeString::getIndexSlowCase):
* yarr/YarrInterpreter.cpp:
(JSC::Yarr::Interpreter::popParenthesesDisjunctionContext):

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

6 years agoUnreviewed. Add svn:eol-style to solution file, not eol-style.
roger_fong@apple.com [Thu, 24 Jan 2013 01:39:43 +0000 (01:39 +0000)]
Unreviewed. Add svn:eol-style to solution file, not eol-style.

* WebKit.vcxproj/WebKit.sln: Added property svn:eol-style. Removed property eol-style.

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

6 years agoHave scrollperf logging log information about wheel event handlers
simon.fraser@apple.com [Thu, 24 Jan 2013 01:18:37 +0000 (01:18 +0000)]
Have scrollperf logging log information about wheel event handlers
https://bugs.webkit.org/show_bug.cgi?id=107761
<rdar://problem/12281015>

Reviewed by Tim Horton.

Log when the wheel event handler count of a ScrollingTreeScrollingNodeMac changes.

* page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
(WebCore::ScrollingTreeScrollingNodeMac::update):
(WebCore::logWheelEventHandlerCountChanged):

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

6 years ago[V8] Add an optional Isolate parameter to GetTemplate() and GetRawTemplate()
haraken@chromium.org [Thu, 24 Jan 2013 01:01:40 +0000 (01:01 +0000)]
[V8] Add an optional Isolate parameter to GetTemplate() and GetRawTemplate()
https://bugs.webkit.org/show_bug.cgi?id=107679

Reviewed by Adam Barth.

It is important to pass an Isolate to GetTemplate() and GetRawTemplate().
To proceed the work incrementally, this patch adds an optional Isolate parameter
to GetTemplate() and GetRawTemplate(). Once all call sites are updated, the
Isolate parameter will be made mandatory.

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateHeader):
(GenerateNamedConstructorCallback):
(GenerateImplementation):
* bindings/scripts/test/V8/V8Float64Array.cpp:
(WebCore::V8Float64Array::GetRawTemplate):
(WebCore::V8Float64Array::GetTemplate):
* bindings/scripts/test/V8/V8Float64Array.h:
(V8Float64Array):
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore::V8TestActiveDOMObject::GetRawTemplate):
(WebCore::V8TestActiveDOMObject::GetTemplate):
* bindings/scripts/test/V8/V8TestActiveDOMObject.h:
(V8TestActiveDOMObject):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
(WebCore::V8TestCustomNamedGetter::GetRawTemplate):
(WebCore::V8TestCustomNamedGetter::GetTemplate):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.h:
(V8TestCustomNamedGetter):
* bindings/scripts/test/V8/V8TestEventConstructor.cpp:
(WebCore::V8TestEventConstructor::GetRawTemplate):
(WebCore::V8TestEventConstructor::GetTemplate):
* bindings/scripts/test/V8/V8TestEventConstructor.h:
(V8TestEventConstructor):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore::V8TestEventTarget::GetRawTemplate):
(WebCore::V8TestEventTarget::GetTemplate):
* bindings/scripts/test/V8/V8TestEventTarget.h:
(V8TestEventTarget):
* bindings/scripts/test/V8/V8TestException.cpp:
(WebCore::V8TestException::GetRawTemplate):
(WebCore::V8TestException::GetTemplate):
* bindings/scripts/test/V8/V8TestException.h:
(V8TestException):
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore::V8TestInterface::GetRawTemplate):
(WebCore::V8TestInterface::GetTemplate):
* bindings/scripts/test/V8/V8TestInterface.h:
(V8TestInterface):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
(WebCore::V8TestMediaQueryListListener::GetRawTemplate):
(WebCore::V8TestMediaQueryListListener::GetTemplate):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
(V8TestMediaQueryListListener):
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
(WebCore::V8TestNamedConstructorConstructor::GetTemplate):
(WebCore::V8TestNamedConstructor::GetRawTemplate):
(WebCore::V8TestNamedConstructor::GetTemplate):
* bindings/scripts/test/V8/V8TestNamedConstructor.h:
(V8TestNamedConstructorConstructor):
(V8TestNamedConstructor):
* bindings/scripts/test/V8/V8TestNode.cpp:
(WebCore::V8TestNode::GetRawTemplate):
(WebCore::V8TestNode::GetTemplate):
* bindings/scripts/test/V8/V8TestNode.h:
(V8TestNode):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::V8TestObj::GetRawTemplate):
(WebCore::V8TestObj::GetTemplate):
* bindings/scripts/test/V8/V8TestObj.h:
(V8TestObj):
* bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
(WebCore::V8TestOverloadedConstructors::GetRawTemplate):
(WebCore::V8TestOverloadedConstructors::GetTemplate):
* bindings/scripts/test/V8/V8TestOverloadedConstructors.h:
(V8TestOverloadedConstructors):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore::V8TestSerializedScriptValueInterface::GetRawTemplate):
(WebCore::V8TestSerializedScriptValueInterface::GetTemplate):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
(V8TestSerializedScriptValueInterface):
* bindings/v8/WrapperTypeInfo.h:
(WebCore):
(WebCore::WrapperTypeInfo::getTemplate):
* bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
(WebCore::V8HTMLImageElementConstructor::GetTemplate):
* bindings/v8/custom/V8HTMLImageElementConstructor.h:
(V8HTMLImageElementConstructor):

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

6 years ago[V8] Move V8DOMWrapper::getEventListener() to V8EventListerList
haraken@chromium.org [Thu, 24 Jan 2013 00:43:14 +0000 (00:43 +0000)]
[V8] Move V8DOMWrapper::getEventListener() to V8EventListerList
https://bugs.webkit.org/show_bug.cgi?id=107683

Reviewed by Adam Barth.

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateNormalAttrSetter):
(GenerateEventListenerCallback):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore::TestEventTargetV8Internal::addEventListenerCallback):
(WebCore::TestEventTargetV8Internal::removeEventListenerCallback):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjV8Internal::addEventListenerCallback):
(WebCore::TestObjV8Internal::removeEventListenerCallback):
* bindings/v8/V8DOMWrapper.cpp:
* bindings/v8/V8DOMWrapper.h:
(V8DOMWrapper):
* bindings/v8/V8EventListenerList.cpp:
(WebCore::V8EventListenerList::getEventListener):
(WebCore):
* bindings/v8/V8EventListenerList.h:
(WebCore):
(V8EventListenerList):
(WebCore::V8EventListenerList::findWrapper):
(WebCore::V8EventListenerList::clearWrapper):
(WebCore::V8EventListenerList::doFindWrapper):
(WebCore::V8EventListenerList::getHiddenProperty):
(WebCore::V8EventListenerList::findOrCreateWrapper):
* bindings/v8/custom/V8DOMWindowCustom.cpp:
(WebCore::V8DOMWindow::addEventListenerCallback):
(WebCore::V8DOMWindow::removeEventListenerCallback):

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

6 years agoAX: AXObjectCache should be initialized with topDocument
dmazzoni@google.com [Thu, 24 Jan 2013 00:34:42 +0000 (00:34 +0000)]
AX: AXObjectCache should be initialized with topDocument
https://bugs.webkit.org/show_bug.cgi?id=107638

Reviewed by Chris Fleizach.

Initialize AXObjectCache with the top document, not the
document that axObjectCache happened to be called on, which
could be an iframe. Having an AXObjectCache with the wrong
document could cause a heap-use-after-free in
notificationPostTimerFired if the inner document was deleted
while notifications were pending.

* dom/Document.cpp:
(WebCore::Document::axObjectCache):

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

6 years agoREGRESSION: WebKit does not render selection in non-first ruby text nodes.
rniwa@webkit.org [Thu, 24 Jan 2013 00:33:06 +0000 (00:33 +0000)]
REGRESSION: WebKit does not render selection in non-first ruby text nodes.
https://bugs.webkit.org/show_bug.cgi?id=92818

Reviewed by Levi Weintraub.

Source/WebCore:

The patch is based on the one submitted by Sukolsak Sakshuwong.

The bug was caused by the fact isSelectionRoot was returning false on RenderRubyRun even though
it doesn't lay down its children in block direction.

The selection painting code assumes that all blocks in each selection root are laid down in
the containing block direction. In particular, InlineTextBox::paintSelection calls
RootInlineBox::selectionTopAdjustedForPrecedingBlock in order to determine the end of the previous
line, which in turn calls blockBeforeWithinSelectionRoot. blockBeforeWithinSelectionRoot goes
through block nodes that appears before "this" block, and selectionTopAdjustedForPrecedingBlock
assumes that to compute the end of the previous line.

Now suppose we have markup such as <ruby>Ichi<rt>One</rt></ruby><ruby>Ni<rt>Two</rt></ruby>. When
selectionTopAdjustedForPrecedingBlock is called on the line box generated for "Two", it tries to
determine the bottom of the inline box above that of "Two", which blockBeforeWithinSelectionRoot
determines to be that of "One". At this point, everything goes wrong and the selection height is
computed to be 0.

The fix to this problem is to allow RenderRubyRun to be a selection root. Since RenderRubyRun is
already an inline-block, it suffices to bypass the !nonPseudoNode() check. In fact, there is no
need to check this condition anymore as far as I can tell. The check was added in
http://trac.webkit.org/changeset/12986 but all tests added by this change set as well as the rest
of layout tests pass without this condition.

Test: fast/ruby/select-ruby.html

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

LayoutTests:

Add a test, authored by Sukolsak Sakshuwong.

* fast/ruby/select-ruby.html: Added.
* platform/mac/fast/ruby/ruby-base-merge-block-children-crash-expected.png: Added.
* platform/mac/fast/ruby/select-ruby-expected.png: Added.
* platform/mac/fast/ruby/select-ruby-expected.txt: Added.

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

6 years agoMove Move WebKeyValueStorageManager to WebProcess/Storage.
andersca@apple.com [Thu, 24 Jan 2013 00:32:09 +0000 (00:32 +0000)]
Move Move WebKeyValueStorageManager to WebProcess/Storage.

Rubber-stamped by Sam Weinig.

* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/Storage/WebKeyValueStorageManager.cpp: Renamed from Source/WebKit2/WebProcess/KeyValueStorage/WebKeyValueStorageManager.cpp.
* WebProcess/Storage/WebKeyValueStorageManager.h: Renamed from Source/WebKit2/WebProcess/KeyValueStorage/WebKeyValueStorageManager.h.
* WebProcess/Storage/WebKeyValueStorageManager.messages.in: Renamed from Source/WebKit2/WebProcess/KeyValueStorage/WebKeyValueStorageManager.messages.in.

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

6 years ago[V8] Reduce usage of deprecatedV8String() and deprecatedV8Integer()
haraken@chromium.org [Thu, 24 Jan 2013 00:29:59 +0000 (00:29 +0000)]
[V8] Reduce usage of deprecatedV8String() and deprecatedV8Integer()
https://bugs.webkit.org/show_bug.cgi?id=107674

Reviewed by Adam Barth.

No tests. No change in behavior.

* bindings/v8/JavaScriptCallFrame.cpp:
(WebCore::JavaScriptCallFrame::evaluate):
* bindings/v8/NPV8Object.cpp:
(_NPN_Enumerate):
* bindings/v8/PageScriptDebugServer.cpp:
(WebCore::PageScriptDebugServer::addListener):
* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::bindToWindowObject):
(WebCore::ScriptController::disableEval):
* bindings/v8/ScriptDebugServer.cpp:
(WebCore::ScriptDebugServer::setBreakpoint):
(WebCore::ScriptDebugServer::removeBreakpoint):
(WebCore::ScriptDebugServer::setScriptSource):
(WebCore::ScriptDebugServer::ensureDebuggerScriptCompiled):
(WebCore::ScriptDebugServer::compileScript):
* bindings/v8/ScriptFunctionCall.cpp:
(WebCore::ScriptCallArgumentHandler::appendArgument):
(WebCore::ScriptFunctionCall::call):
(WebCore::ScriptFunctionCall::construct):
* bindings/v8/ScriptProfiler.cpp:
(WebCore::ScriptProfiler::start):
(WebCore::ScriptProfiler::stop):
* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::V8DOMWindowShell::initializeIfNeeded):
(WebCore::V8DOMWindowShell::namedItemAdded):
(WebCore::V8DOMWindowShell::namedItemRemoved):
* bindings/v8/V8LazyEventListener.cpp:
(WebCore::V8LazyEventListener::prepareListenerObject):
* bindings/v8/V8MutationCallback.cpp:
(WebCore::V8MutationCallback::handleEvent):
* bindings/v8/WorkerScriptController.cpp:
(WebCore::WorkerScriptController::evaluate):
* bindings/v8/WorkerScriptDebugServer.cpp:
(WebCore::WorkerScriptDebugServer::addListener):
* bindings/v8/custom/V8InjectedScriptManager.cpp:
(WebCore::InjectedScriptManager::createInjectedScript):

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

6 years agoWebKit should support decoding multi-byte entities in XML content
commit-queue@webkit.org [Thu, 24 Jan 2013 00:26:32 +0000 (00:26 +0000)]
WebKit should support decoding multi-byte entities in XML content
https://bugs.webkit.org/show_bug.cgi?id=107459

Patch by Martin Robinson <mrobinson@igalia.com> on 2013-01-23
Reviewed by Adam Barth.

Source/WebCore:

Test: fast/parser/entities-in-xhtml.xhtml

* html/parser/HTMLEntityParser.cpp:
(WebCore::appendUChar32ToUCharArray): Added this helper function. Later patches
may try to move this code to somewhere that it can be shared more easily.
(WebCore::decodeNamedEntityToUCharArray): Modify this function to work on a UChar
array four elements long, so that multi-byte and multi-character entities can be resolved.
* html/parser/HTMLEntityParser.h: Updated function declaratoin.
* xml/parser/XMLDocumentParserLibxml2.cpp:
(WebCore): Modify the statically allocated entity string memory area to accommodate
up to two UTF-8 characters. Each UTF-8 character can be 4 bytes, so this brings the
total size to 9 bytes.
(WebCore::getXHTMLEntity): Use the new entity decoding API.
* xml/parser/XMLDocumentParserQt.cpp:
(WebCore::EntityResolver::resolveUndeclaredEntity): Ditto.
(WebCore::XMLDocumentParser::parse): Ditto.

LayoutTests:

Add a simple test for decoding some entities that resolve to multiple
bytes in XML.

* fast/parser/entities-in-xhtml.xhtml: Added a few multi-bye entities.
* fast/parser/entities-in-xhtml-expected.txt: Updated.

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

6 years agoStop the background-parser during HTMLDocumentParser::detatch to prevent crashes...
eric@webkit.org [Thu, 24 Jan 2013 00:21:18 +0000 (00:21 +0000)]
Stop the background-parser during HTMLDocumentParser::detatch to prevent crashes/asserts
https://bugs.webkit.org/show_bug.cgi?id=107751

Reviewed by Tony Gentilcore.

This appears to fix the 2 intermitent crashers we were seeing while
running fast/parser.  And definitely fixes 8 ASSERTs seen using a Debug build.

* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::detach):

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

6 years agoConstant folding an access to an uncaptured variable that is captured later in the...
fpizlo@apple.com [Thu, 24 Jan 2013 00:09:59 +0000 (00:09 +0000)]
Constant folding an access to an uncaptured variable that is captured later in the same basic block shouldn't lead to assertion failures
https://bugs.webkit.org/show_bug.cgi?id=107750
<rdar://problem/12387265>

Source/JavaScriptCore:

Reviewed by Mark Hahnenberg.

The point of this assertion was that if there is no variable capturing going on, then there should only be one GetLocal
for the variable anywhere in the basic block. But if there is some capturing, then we'll have an unbounded number of
GetLocals. The assertion was too imprecise for the latter case. I want to keep this assertion, so I introduced a
checker that verifies this precisely: if there are any captured accesses to the variable anywhere at or after the
GetLocal we are eliminating, then we allow redundant GetLocals.

* dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::foldConstants):
(ConstantFoldingPhase):
(JSC::DFG::ConstantFoldingPhase::isCapturedAtOrAfter):

LayoutTests:

Reviewed by Mark Hahnenberg.

* fast/js/dfg-constant-fold-uncaptured-variable-that-is-later-captured-expected.txt: Added.
* fast/js/dfg-constant-fold-uncaptured-variable-that-is-later-captured.html: Added.
* fast/js/jsc-test-list:
* fast/js/script-tests/dfg-constant-fold-uncaptured-variable-that-is-later-captured.js: Added.
(bar):
(baz):
(foo):

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

6 years agoRemove LegacyReceiver from a couple of .messages.in files
andersca@apple.com [Wed, 23 Jan 2013 23:30:38 +0000 (23:30 +0000)]
Remove LegacyReceiver from a couple of .messages.in files
https://bugs.webkit.org/show_bug.cgi?id=107749

Reviewed by Beth Dakin.

* UIProcess/Notifications/WebNotificationManagerProxy.cpp:
(WebKit):
* UIProcess/Notifications/WebNotificationManagerProxy.h:
(WebNotificationManagerProxy):
* UIProcess/Notifications/WebNotificationManagerProxy.messages.in:
* UIProcess/WebGeolocationManagerProxy.cpp:
* UIProcess/WebGeolocationManagerProxy.h:
(WebGeolocationManagerProxy):
* UIProcess/WebGeolocationManagerProxy.messages.in:
* UIProcess/WebIconDatabase.cpp:
* UIProcess/WebIconDatabase.h:
(WebIconDatabase):
* UIProcess/WebIconDatabase.messages.in:
* UIProcess/WebKeyValueStorageManagerProxy.cpp:
* UIProcess/WebKeyValueStorageManagerProxy.h:
(WebKeyValueStorageManagerProxy):
* UIProcess/WebKeyValueStorageManagerProxy.messages.in:
* UIProcess/WebMediaCacheManagerProxy.cpp:
* UIProcess/WebMediaCacheManagerProxy.h:
(WebMediaCacheManagerProxy):
* UIProcess/WebMediaCacheManagerProxy.messages.in:
* UIProcess/WebResourceCacheManagerProxy.cpp:
* UIProcess/WebResourceCacheManagerProxy.h:
(WebResourceCacheManagerProxy):
* UIProcess/WebResourceCacheManagerProxy.messages.in:
* WebProcess/Geolocation/WebGeolocationManager.cpp:
* WebProcess/Geolocation/WebGeolocationManager.h:
(WebGeolocationManager):
* WebProcess/Geolocation/WebGeolocationManager.messages.in:
* WebProcess/IconDatabase/WebIconDatabaseProxy.cpp:
* WebProcess/IconDatabase/WebIconDatabaseProxy.h:
(WebIconDatabaseProxy):
* WebProcess/IconDatabase/WebIconDatabaseProxy.messages.in:
* WebProcess/KeyValueStorage/WebKeyValueStorageManager.cpp:
* WebProcess/KeyValueStorage/WebKeyValueStorageManager.h:
(WebKeyValueStorageManager):
* WebProcess/KeyValueStorage/WebKeyValueStorageManager.messages.in:
* WebProcess/MediaCache/WebMediaCacheManager.cpp:
* WebProcess/MediaCache/WebMediaCacheManager.h:
(WebMediaCacheManager):
* WebProcess/MediaCache/WebMediaCacheManager.messages.in:
* WebProcess/Notifications/WebNotificationManager.cpp:
* WebProcess/Notifications/WebNotificationManager.h:
(WebNotificationManager):
* WebProcess/Notifications/WebNotificationManager.messages.in:
* WebProcess/ResourceCache/WebResourceCacheManager.cpp:
* WebProcess/ResourceCache/WebResourceCacheManager.h:
(WebResourceCacheManager):
* WebProcess/ResourceCache/WebResourceCacheManager.messages.in:
* WebProcess/WebPage/WebPageGroupProxy.cpp:
(WebKit):
* WebProcess/WebPage/WebPageGroupProxy.h:
(WebPageGroupProxy):
* WebProcess/WebPage/WebPageGroupProxy.messages.in:

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

6 years ago[CSS Exclusions] Add support for computing first included interval position for polygons
commit-queue@webkit.org [Wed, 23 Jan 2013 23:11:31 +0000 (23:11 +0000)]
[CSS Exclusions] Add support for computing first included interval position for polygons
https://bugs.webkit.org/show_bug.cgi?id=103429

Patch by Hans Muller <hmuller@adobe.com> on 2013-01-23
Reviewed by Dirk Schulze.

Source/WebCore:

Added support for computing the "first fit" location, i.e. the logical shape-inside
location where a line's layout begins. The algorithm for doing so is described here:
http://hansmuller-webkit.blogspot.com/2012/08/revised-algorithm-for-finding-first.html.

Tests: fast/exclusions/shape-inside/shape-inside-first-fit-001.html
       fast/exclusions/shape-inside/shape-inside-first-fit-002.html
       fast/exclusions/shape-inside/shape-inside-first-fit-003.html

* platform/graphics/FloatSize.h:
(WebCore::operator*): Scale a FloatSize. This simplified the final expression in VertexPair::intersection().
* rendering/ExclusionPolygon.cpp:
(WebCore::isPointOnLineSegment): Returns true if the specified point is collinear and within the line segement's bounds.
(WebCore::leftSide): Return a value > 0 if point is on the left side of the line segment, < 0 if it's on the right, 0 if it's collinear.
(WebCore::ExclusionPolygon::contains): Return true if the point is within the polygon or on an edge.
(WebCore::VertexPair::overlapsRect): Returns true if the line segment from vertex1 to vertex2 overlaps the specified FloatRect.
(WebCore::VertexPair::intersection): Finds the intersection of a pair of line segments defined by VertexPairs.
(WebCore::ExclusionPolygon::firstFitRectInPolygon): Returns true if none of the polygon's edges, except the two used
    to define by the offset edges, overlap the FloatRect.
(WebCore::aboveOrToTheLeft): Defines the top/left preference for "first fit" locations.
(WebCore::ExclusionPolygon::firstIncludedIntervalLogicalTop): Replaced the stub implementation of this method.
* rendering/ExclusionPolygon.h:
(ExclusionPolygon): Added declarations noted above.
(VertexPair): Abstract class that defines a pair of FloatPoints.
(OffsetPolygonEdge): Represents an edge that's horizontally offset from a polygon edge.
(WebCore::OffsetPolygonEdge::edgeIndex): The ExclusionPolygon edge index used to define this OffsetEdge.

LayoutTests:

All of the existing shape-inside tests exercise the new code.  Added new tests which
verify that layout works correctly when layout can not begin at the shape's logical top.
Test 001 additionally checks all writing-modes, test 002 verifies that the topmost/leftmost
rule is followed, and test3 checks a self-intersecting polygon.

* fast/exclusions/shape-inside/shape-inside-first-fit-001-expected.html: Added.
* fast/exclusions/shape-inside/shape-inside-first-fit-001.html: Added.
* fast/exclusions/shape-inside/shape-inside-first-fit-002-expected.html: Added.
* fast/exclusions/shape-inside/shape-inside-first-fit-002.html: Added.
* fast/exclusions/shape-inside/shape-inside-first-fit-003-expected.html: Added.
* fast/exclusions/shape-inside/shape-inside-first-fit-003.html: Added.

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

6 years agoMessage receiver generation should work in terms of MessageReceiver objects
andersca@apple.com [Wed, 23 Jan 2013 23:08:08 +0000 (23:08 +0000)]
Message receiver generation should work in terms of MessageReceiver objects
https://bugs.webkit.org/show_bug.cgi?id=107742

Reviewed by Beth Dakin.

The generated message receiver code should generate the MessageReceiver
member functions didReceiveMessage and didReceiveSyncMessage instead of
receiver specific member functions.

* NetworkProcess/NetworkConnectionToWebProcess.messages.in:
* NetworkProcess/NetworkProcess.messages.in:
* NetworkProcess/NetworkResourceLoader.messages.in:
* PluginProcess/PluginControllerProxy.messages.in:
* PluginProcess/PluginProcess.messages.in:
* PluginProcess/WebProcessConnection.messages.in:
* Scripts/webkit2/messages.py:
(generate_message_handler):
* Scripts/webkit2/messages_unittest.py:
* Scripts/webkit2/model.py:
(MessageReceiver.__init__):
(MessageReceiver.has_attribute):
* Scripts/webkit2/parser.py:
(parse):
* Shared/Network/CustomProtocols/CustomProtocolManager.messages.in:
* Shared/Plugins/NPObjectMessageReceiver.messages.in:
* Shared/WebConnection.messages.in:
* Shared/mac/SecItemShim.messages.in:
* SharedWorkerProcess/SharedWorkerProcess.messages.in:
* UIProcess/Downloads/DownloadProxy.messages.in:
* UIProcess/DrawingAreaProxy.messages.in:
* UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.messages.in:
* UIProcess/Network/NetworkProcessProxy.messages.in:
* UIProcess/Notifications/WebNotificationManagerProxy.messages.in:
* UIProcess/Plugins/PluginProcessProxy.messages.in:
* UIProcess/SharedWorkers/SharedWorkerProcessProxy.messages.in:
* UIProcess/WebApplicationCacheManagerProxy.messages.in:
* UIProcess/WebContext.messages.in:
* UIProcess/WebCookieManagerProxy.messages.in:
* UIProcess/WebDatabaseManagerProxy.messages.in:
* UIProcess/WebFullScreenManagerProxy.messages.in:
* UIProcess/WebGeolocationManagerProxy.messages.in:
* UIProcess/WebIconDatabase.messages.in:
* UIProcess/WebInspectorProxy.messages.in:
* UIProcess/WebKeyValueStorageManagerProxy.messages.in:
* UIProcess/WebMediaCacheManagerProxy.messages.in:
* UIProcess/WebPageProxy.messages.in:
* UIProcess/WebProcessProxy.messages.in:
* UIProcess/WebResourceCacheManagerProxy.messages.in:
* UIProcess/mac/RemoteLayerTreeHost.messages.in:
* UIProcess/mac/SecItemShimProxy.messages.in:
* WebProcess/ApplicationCache/WebApplicationCacheManager.messages.in:
* WebProcess/Authentication/AuthenticationManager.h:
* WebProcess/Authentication/AuthenticationManager.messages.in:
* WebProcess/Cookies/WebCookieManager.messages.in:
* WebProcess/FullScreen/WebFullScreenManager.messages.in:
* WebProcess/Geolocation/WebGeolocationManager.messages.in:
* WebProcess/IconDatabase/WebIconDatabaseProxy.messages.in:
* WebProcess/KeyValueStorage/WebKeyValueStorageManager.messages.in:
* WebProcess/MediaCache/WebMediaCacheManager.messages.in:
* WebProcess/Network/NetworkProcessConnection.messages.in:
* WebProcess/Network/WebResourceLoader.messages.in:
* WebProcess/Notifications/WebNotificationManager.messages.in:
* WebProcess/Plugins/PluginProcessConnection.messages.in:
* WebProcess/Plugins/PluginProxy.messages.in:
* WebProcess/ResourceCache/WebResourceCacheManager.messages.in:
* WebProcess/WebCoreSupport/WebDatabaseManager.messages.in:
* WebProcess/WebPage/DrawingArea.messages.in:
* WebProcess/WebPage/EventDispatcher.messages.in:
* WebProcess/WebPage/WebInspector.messages.in:
* WebProcess/WebPage/WebPage.messages.in:
* WebProcess/WebPage/WebPageGroupProxy.messages.in:
* WebProcess/WebProcess.messages.in:

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

6 years agoImplement Canvas Path object
krit@webkit.org [Wed, 23 Jan 2013 23:03:30 +0000 (23:03 +0000)]
Implement Canvas Path object
https://bugs.webkit.org/show_bug.cgi?id=97333

Reviewed by Dean Jackson.

Source/WebCore:

The Canvas part of the WHATWG specification defines a Path object. This Path object
shares several path segment functions (path methods) with the CanvasRenderingContext2D
interface. This patch introduces the Path object and shares the path segment functions
in the class CanvasPathMethods.
This patch does just implement the basic path functions that have a general agreement on
the WHAT WG and W3C mailing lists.
This feature is behind a flag and won't be activated by default.

http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#path-objects

Test: fast/canvas/canvas-path-object.html

* CMakeLists.txt: Add DOMPath and CanvasPathMedthods to build system.
* DerivedSources.cpp: Ditto.
* DerivedSources.make: Ditto.
* DerivedSources.pri: Ditto.
* GNUmakefile.list.am: Ditto.
* Target.pri: Ditto.
* WebCore.gypi: Ditto.
* WebCore.vcproj/WebCore.vcproj: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* html/canvas/CanvasPathMethods.cpp: Added.
(WebCore): This class shares the path segment functions (moveTo, lineTo, ...) between
    DOMPath (the Path object) and CanvasRenderingContext2D.
(WebCore::CanvasPathMethods::closePath):
(WebCore::CanvasPathMethods::moveTo):
(WebCore::CanvasPathMethods::lineTo):
(WebCore::CanvasPathMethods::quadraticCurveTo):
(WebCore::CanvasPathMethods::bezierCurveTo):
(WebCore::CanvasPathMethods::arcTo):
(WebCore::CanvasPathMethods::arc):
(WebCore::CanvasPathMethods::rect):
* html/canvas/CanvasPathMethods.h: Added.
(WebCore):
(CanvasPathMethods):
(WebCore::CanvasPathMethods::~CanvasPathMethods):
(WebCore::CanvasPathMethods::transformIsInvertible):
(WebCore::CanvasPathMethods::CanvasPathMethods):
* html/canvas/CanvasRenderingContext2D.cpp:
* html/canvas/CanvasRenderingContext2D.h: Remove the path segment functions here.
(CanvasRenderingContext2D):
(WebCore::CanvasRenderingContext2D::transformIsInvertible): This checks if the CTM
    of the context is still invertible. Drawing should stop if it is not.
* html/canvas/CanvasRenderingContext2D.idl:
* html/canvas/DOMPath.h: Added.
(WebCore):
(DOMPath):
(WebCore::DOMPath::create):
(WebCore::DOMPath::~DOMPath):
(WebCore::DOMPath::DOMPath):
* html/canvas/DOMPath.idl: Added.
* page/DOMWindow.idl: Added CTOR for Path.

LayoutTests:

Add a test for checking existence of Path object and dependent functions.
The test is supposed to fail if canvas-path is not activated on compile time.

* fast/canvas/canvas-path-object-expected.txt: Added.
* fast/canvas/canvas-path-object.html: Added.
* fast/canvas/script-tests/canvas-path-object.js: Added.
* platform/chromium/TestExpectations: Different error handling on Chromium. Needs rebaseline.

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

6 years agoUnreviewed. Added eol-style=native to solution file.
roger_fong@apple.com [Wed, 23 Jan 2013 22:59:22 +0000 (22:59 +0000)]
Unreviewed. Added eol-style=native to solution file.

* WebKit.vcxproj/WebKit.sln: Added property eol-style.

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

6 years agoIndexedDB: Remove IDBVersionChangeRequest
jsbell@chromium.org [Wed, 23 Jan 2013 22:58:20 +0000 (22:58 +0000)]
IndexedDB: Remove IDBVersionChangeRequest
https://bugs.webkit.org/show_bug.cgi?id=107711

Reviewed by Tony Chang.

Source/WebCore:

When the setVersion() API was removed from the Indexed DB spec the IDBVersionChangeRequest
interface was replaced with IDBOpenDBRequest. We switched over for open(), this completes
the work by switching over for deleteDatabase() and removing the old code. (On the Event
side we still need to combine IDBVersionChangeEvent and IDBUpgradeNeededEvent.)

Test: storage/indexeddb/intversion-long-queue.html
      storage/indexeddb/intversion-upgrades.html

* CMakeLists.txt: Remove references to deleted code.
* DerivedSources.make: Ditto.
* GNUmakefile.list.am: Ditto.
* Modules/indexeddb/IDBCallbacks.h: Remove unused onBlocked() overload.
* Modules/indexeddb/IDBDatabase.cpp: Remove references to deleted code.
* Modules/indexeddb/IDBDatabase.h: Ditto.
* Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
(WebCore::IDBDatabaseBackendImpl::deleteDatabase): Fire onBlocked with current version.
* Modules/indexeddb/IDBFactory.cpp:
(WebCore::IDBFactory::openInternal): Don't need to specify source.
(WebCore::IDBFactory::deleteDatabase): Use an IDBOpenDBRequest.
* Modules/indexeddb/IDBFactory.h: Change return type of deleteDatabase()
* Modules/indexeddb/IDBFactory.idl: Ditto.
* Modules/indexeddb/IDBOpenDBRequest.cpp:
(WebCore::IDBOpenDBRequest::create): Always use a null source.
(WebCore::IDBOpenDBRequest::IDBOpenDBRequest): Pass null source to base class.
(WebCore::IDBOpenDBRequest::dispatchEvent): Don't assume result is a database in existing
special case.
* Modules/indexeddb/IDBOpenDBRequest.h: Don't need a source argument (always null).
* Modules/indexeddb/IDBVersionChangeRequest.cpp: Removed.
* Modules/indexeddb/IDBVersionChangeRequest.h: Removed.
* Modules/indexeddb/IDBVersionChangeRequest.idl: Removed.
* WebCore.gypi: Remove references to deleted code.
* WebCore.xcodeproj/project.pbxproj: Remove references to deleted code.
* dom/EventTarget.h: Remove references to deleted code.
* dom/EventTargetFactory.in: Ditto.

Source/WebKit/chromium:

* public/WebIDBCallbacks.h: Note to delete onBlocked() once Chromium is cleaned up.
* src/IDBCallbacksProxy.cpp: Remove unused onBlocked() overload.
* src/IDBCallbacksProxy.h: Ditto.
* src/WebIDBCallbacksImpl.cpp: Ditto.
* src/WebIDBCallbacksImpl.h: Ditto.
* tests/IDBAbortOnCorruptTest.cpp: Ditto.
* tests/IDBDatabaseBackendTest.cpp: Ditto.

LayoutTests:

Update expectations - change a handful of FAIL to PASS because past-us were awesome.

* storage/indexeddb/intversion-long-queue-expected.txt:
* storage/indexeddb/intversion-upgrades-expected.txt:

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

6 years agoCoordinated Graphics: remove CoordinatedLayerInfo::encode/decode.
commit-queue@webkit.org [Wed, 23 Jan 2013 22:54:39 +0000 (22:54 +0000)]
Coordinated Graphics: remove CoordinatedLayerInfo::encode/decode.
https://bugs.webkit.org/show_bug.cgi?id=107644

Patch by Huang Dongsung <luxtella@company100.net> on 2013-01-23
Reviewed by Anders Carlsson.

We want to remove the dependency on CoreIPC from CoordinatedLayerInfo because we
will extract Coordinated Graphics from WK2.

* CMakeLists.txt:
* Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
(CoreIPC::::encode):
(CoreIPC):
(CoreIPC::::decode):
* Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
(WebKit):
* Shared/CoordinatedGraphics/CoordinatedLayerInfo.cpp: Removed.
* Shared/CoordinatedGraphics/CoordinatedLayerInfo.h:
* Target.pri:

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

6 years ago[WK2] Replace some internal API usage in EwkView with C API
kenneth@webkit.org [Wed, 23 Jan 2013 22:53:10 +0000 (22:53 +0000)]
[WK2] Replace some internal API usage in EwkView with C API
https://bugs.webkit.org/show_bug.cgi?id=107652

Reviewed by Benjamin Poulain.

* UIProcess/API/efl/ewk_view.cpp:
(ewk_view_url_set):
(ewk_view_reload):
(ewk_view_reload_bypass_cache):
(ewk_view_stop):
(ewk_view_load_progress_get):
(ewk_view_scale_set):
(ewk_view_scale_get):
(ewk_view_device_pixel_ratio_get):
(ewk_view_back):
(ewk_view_forward):
(ewk_view_back_possible):
(ewk_view_forward_possible):
(ewk_view_html_string_load):
(ewk_view_text_find):
(ewk_view_text_find_highlight_clear):
(ewk_view_text_matches_count):
(ewk_view_inspector_show):
(ewk_view_inspector_close):

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

6 years ago[GTK] Bump webkitgtk-test-fonts dependency to cover fallbacks for Tamil, Bengali...
commit-queue@webkit.org [Wed, 23 Jan 2013 22:49:46 +0000 (22:49 +0000)]
[GTK] Bump webkitgtk-test-fonts dependency to cover fallbacks for Tamil, Bengali, and others
https://bugs.webkit.org/show_bug.cgi?id=107727

Patch by Martin Robinson <mrobinson@igalia.com> on 2013-01-23
Reviewed by Gustavo Noronha Silva.

Tools:

* gtk/jhbuild.modules: Update the JHBuild moduleset to point to the new webkitgtk-test-fonts.
We are using the git repository now that github has deprecated the downloads feature.

LayoutTests:

Update test results to reflect the new fonts.

* platform/gtk/fast/text/atsui-multiple-renderers-expected.png:
* platform/gtk/fast/text/atsui-multiple-renderers-expected.txt:
* platform/gtk/fast/text/complex-text-opacity-expected.png:
* platform/gtk/fast/text/complex-text-opacity-expected.txt:
* platform/gtk/fast/text/international/bold-bengali-expected.png:
* platform/gtk/fast/text/international/bold-bengali-expected.txt:
* platform/gtk/fast/text/international/complex-character-based-fallback-expected.png:
* platform/gtk/fast/text/international/complex-character-based-fallback-expected.txt:
* platform/gtk/fast/text/international/danda-space-expected.png:
* platform/gtk/fast/text/international/danda-space-expected.txt:
* platform/gtk/fast/text/international/hindi-spacing-expected.png:
* platform/gtk/fast/text/international/hindi-spacing-expected.txt:
* platform/gtk/fast/text/international/hindi-whitespace-expected.png:
* platform/gtk/fast/text/international/hindi-whitespace-expected.txt:
* platform/gtk/fast/text/international/thai-baht-space-expected.png:
* platform/gtk/fast/text/international/thai-baht-space-expected.txt:
* platform/gtk/fast/text/international/thai-line-breaks-expected.png:
* platform/gtk/fast/text/international/thai-line-breaks-expected.txt:
* platform/gtk/svg/text/non-bmp-positioning-lists-expected.png: Added.
* platform/gtk/svg/text/non-bmp-positioning-lists-expected.txt:
* platform/gtk/transforms/2d/hindi-rotated-expected.png:
* platform/gtk/transforms/2d/hindi-rotated-expected.txt:

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

6 years ago[Chromium] Fix inclusion of pch .cpp in webcore_platform and webcore_rendering
commit-queue@webkit.org [Wed, 23 Jan 2013 22:49:35 +0000 (22:49 +0000)]
[Chromium] Fix inclusion of pch .cpp in webcore_platform and webcore_rendering
https://bugs.webkit.org/show_bug.cgi?id=107700

Patch by Scott Graham <scottmg@chromium.org> on 2013-01-23
Reviewed by Dirk Pranke.

No new tests, Chromium should link on VS 2012.

* WebCore.gyp/WebCore.gyp:

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

6 years agoUnreviewed. Checkin the OpenSource WebKit solution.
roger_fong@apple.com [Wed, 23 Jan 2013 22:33:29 +0000 (22:33 +0000)]
Unreviewed. Checkin the OpenSource WebKit solution.

* WebKit.vcxproj/WebKit.sln:

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

6 years agoPartially revert 104427, change WebWidgetClient::didHandleGestureEvent semantics.
commit-queue@webkit.org [Wed, 23 Jan 2013 22:31:21 +0000 (22:31 +0000)]
Partially revert 104427, change WebWidgetClient::didHandleGestureEvent semantics.
https://bugs.webkit.org/show_bug.cgi?id=107605

Patch by Tien-Ren Chen <trchen@chromium.org> on 2013-01-23
Reviewed by Darin Fisher.

Per discussion in https://codereview.chromium.org/11473027/ we decided
not to introduce an enum to WebWidgetClient::didHandleGestureEvent().
Instead, change the semantics of the bool flag to indicate whether the
gesture event is cancelled for disambiguation.

* public/WebWidgetClient.h:
(WebKit::WebWidgetClient::didHandleGestureEvent):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::handleGestureEvent):
* tests/WebViewTest.cpp:

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

6 years agoAvoid unnecessary format conversion for tex{Sub}Image2D() for ImageData of WebGL
commit-queue@webkit.org [Wed, 23 Jan 2013 22:26:38 +0000 (22:26 +0000)]
Avoid unnecessary format conversion for tex{Sub}Image2D() for ImageData of WebGL
https://bugs.webkit.org/show_bug.cgi?id=107532

Patch by Jun Jiang <jun.a.jiang@intel.com> on 2013-01-23
Reviewed by Kenneth Russell.

This patch removes the unnecessary format conversion in tex{Sub}Image2D() for ImageData in WebGL to improve performance.

Already covered by current tests.

* html/canvas/WebGLRenderingContext.cpp:
(WebCore):
(WebCore::WebGLRenderingContext::texImage2D):
(WebCore::WebGLRenderingContext::texSubImage2D):

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

6 years agoReplace ASSERT_NOT_REACHED with RELEASE_ASSERT_NOT_REACHED in JSC
oliver@apple.com [Wed, 23 Jan 2013 22:25:07 +0000 (22:25 +0000)]
Replace ASSERT_NOT_REACHED with RELEASE_ASSERT_NOT_REACHED in JSC
https://bugs.webkit.org/show_bug.cgi?id=107736

Reviewed by Mark Hahnenberg.

Mechanical change with no performance impact.

* API/JSBlockAdaptor.mm:
(BlockArgumentTypeDelegate::typeVoid):
* API/JSCallbackObjectFunctions.h:
(JSC::::construct):
(JSC::::call):
* API/JSScriptRef.cpp:
* API/ObjCCallbackFunction.mm:
(ArgumentTypeDelegate::typeVoid):
* assembler/ARMv7Assembler.h:
(JSC::ARMv7Assembler::link):
(JSC::ARMv7Assembler::replaceWithLoad):
(JSC::ARMv7Assembler::replaceWithAddressComputation):
* assembler/MacroAssembler.h:
(JSC::MacroAssembler::invert):
* assembler/MacroAssemblerARM.h:
(JSC::MacroAssemblerARM::countLeadingZeros32):
(JSC::MacroAssemblerARM::divDouble):
* assembler/MacroAssemblerMIPS.h:
(JSC::MacroAssemblerMIPS::absDouble):
(JSC::MacroAssemblerMIPS::replaceWithJump):
(JSC::MacroAssemblerMIPS::maxJumpReplacementSize):
* assembler/MacroAssemblerSH4.h:
(JSC::MacroAssemblerSH4::absDouble):
(JSC::MacroAssemblerSH4::replaceWithJump):
(JSC::MacroAssemblerSH4::maxJumpReplacementSize):
* assembler/SH4Assembler.h:
(JSC::SH4Assembler::shllImm8r):
(JSC::SH4Assembler::shlrImm8r):
(JSC::SH4Assembler::cmplRegReg):
(JSC::SH4Assembler::branch):
* assembler/X86Assembler.h:
(JSC::X86Assembler::replaceWithLoad):
(JSC::X86Assembler::replaceWithAddressComputation):
* bytecode/CallLinkInfo.cpp:
(JSC::CallLinkInfo::unlink):
* bytecode/CodeBlock.cpp:
(JSC::debugHookName):
(JSC::CodeBlock::printGetByIdOp):
(JSC::CodeBlock::printGetByIdCacheStatus):
(JSC::CodeBlock::visitAggregate):
(JSC::CodeBlock::finalizeUnconditionally):
(JSC::CodeBlock::usesOpcode):
* bytecode/DataFormat.h:
(JSC::needDataFormatConversion):
* bytecode/ExitKind.cpp:
(JSC::exitKindToString):
(JSC::exitKindIsCountable):
* bytecode/MethodOfGettingAValueProfile.cpp:
(JSC::MethodOfGettingAValueProfile::getSpecFailBucket):
* bytecode/Opcode.h:
(JSC::opcodeLength):
* bytecode/PolymorphicPutByIdList.cpp:
(JSC::PutByIdAccess::fromStructureStubInfo):
(JSC::PutByIdAccess::visitWeak):
* bytecode/StructureStubInfo.cpp:
(JSC::StructureStubInfo::deref):
* bytecompiler/BytecodeGenerator.cpp:
(JSC::ResolveResult::checkValidity):
(JSC::BytecodeGenerator::emitGetLocalVar):
(JSC::BytecodeGenerator::beginSwitch):
* bytecompiler/NodesCodegen.cpp:
(JSC::BinaryOpNode::emitBytecode):
(JSC::emitReadModifyAssignment):
* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::execute):
(JSC::DFG::AbstractState::mergeStateAtTail):
(JSC::DFG::AbstractState::mergeToSuccessors):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::makeSafe):
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGCFGSimplificationPhase.cpp:
(JSC::DFG::CFGSimplificationPhase::fixPossibleGetLocal):
(JSC::DFG::CFGSimplificationPhase::fixTailOperand):
* dfg/DFGCSEPhase.cpp:
(JSC::DFG::CSEPhase::setLocalStoreElimination):
* dfg/DFGCapabilities.cpp:
(JSC::DFG::canHandleOpcodes):
* dfg/DFGCommon.h:
(JSC::DFG::useKindToString):
* dfg/DFGDoubleFormatState.h:
(JSC::DFG::mergeDoubleFormatStates):
(JSC::DFG::doubleFormatStateToString):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::blessArrayOperation):
* dfg/DFGGraph.h:
(JSC::DFG::Graph::clobbersWorld):
* dfg/DFGNode.h:
(JSC::DFG::Node::valueOfJSConstant):
(JSC::DFG::Node::successor):
* dfg/DFGNodeFlags.cpp:
(JSC::DFG::nodeFlagsAsString):
* dfg/DFGNodeType.h:
(JSC::DFG::defaultFlags):
* dfg/DFGRepatch.h:
(JSC::DFG::dfgResetGetByID):
(JSC::DFG::dfgResetPutByID):
* dfg/DFGSlowPathGenerator.h:
(JSC::DFG::SlowPathGenerator::call):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::silentSavePlanForGPR):
(JSC::DFG::SpeculativeJIT::silentSpill):
(JSC::DFG::SpeculativeJIT::silentFill):
(JSC::DFG::SpeculativeJIT::checkArray):
(JSC::DFG::SpeculativeJIT::checkGeneratedTypeForToInt32):
(JSC::DFG::SpeculativeJIT::compileValueToInt32):
(JSC::DFG::SpeculativeJIT::compileGetByValOnFloatTypedArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForFloatTypedArray):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::bitOp):
(JSC::DFG::SpeculativeJIT::shiftOp):
(JSC::DFG::SpeculativeJIT::integerResult):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::fillInteger):
(JSC::DFG::SpeculativeJIT::fillDouble):
(JSC::DFG::SpeculativeJIT::fillJSValue):
(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::fillInteger):
(JSC::DFG::SpeculativeJIT::fillDouble):
(JSC::DFG::SpeculativeJIT::fillJSValue):
(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGStructureCheckHoistingPhase.cpp:
(JSC::DFG::StructureCheckHoistingPhase::run):
* dfg/DFGValueSource.h:
(JSC::DFG::ValueSource::valueRecovery):
* dfg/DFGVariableEvent.cpp:
(JSC::DFG::VariableEvent::dump):
* dfg/DFGVariableEventStream.cpp:
(JSC::DFG::VariableEventStream::reconstruct):
* heap/BlockAllocator.h:
(JSC::BlockAllocator::regionSetFor):
* heap/GCThread.cpp:
(JSC::GCThread::gcThreadMain):
* heap/MarkedBlock.cpp:
(JSC::MarkedBlock::sweepHelper):
* heap/MarkedBlock.h:
(JSC::MarkedBlock::isLive):
* interpreter/CallFrame.h:
(JSC::ExecState::inlineCallFrame):
* interpreter/Interpreter.cpp:
(JSC::getCallerInfo):
(JSC::getStackFrameCodeType):
(JSC::Interpreter::execute):
* jit/ExecutableAllocatorFixedVMPool.cpp:
(JSC::FixedVMPoolExecutableAllocator::notifyPageIsFree):
* jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompileSlowCases):
(JSC::JIT::privateCompile):
* jit/JITArithmetic.cpp:
(JSC::JIT::emitSlow_op_mod):
* jit/JITArithmetic32_64.cpp:
(JSC::JIT::emitBinaryDoubleOp):
(JSC::JIT::emitSlow_op_mod):
* jit/JITPropertyAccess.cpp:
(JSC::JIT::isDirectPutById):
* jit/JITStubs.cpp:
(JSC::getPolymorphicAccessStructureListSlot):
(JSC::DEFINE_STUB_FUNCTION):
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::jitCompileAndSetHeuristics):
* parser/Lexer.cpp:
(JSC::::lex):
* parser/Nodes.h:
(JSC::ExpressionNode::emitBytecodeInConditionContext):
* parser/Parser.h:
(JSC::Parser::getTokenName):
(JSC::Parser::updateErrorMessageSpecialCase):
* parser/SyntaxChecker.h:
(JSC::SyntaxChecker::operatorStackPop):
* runtime/Arguments.cpp:
(JSC::Arguments::tearOffForInlineCallFrame):
* runtime/DatePrototype.cpp:
(JSC::formatLocaleDate):
* runtime/Executable.cpp:
(JSC::samplingDescription):
* runtime/Executable.h:
(JSC::ScriptExecutable::unlinkCalls):
* runtime/Identifier.cpp:
(JSC):
* runtime/InternalFunction.cpp:
(JSC::InternalFunction::getCallData):
* runtime/JSArray.cpp:
(JSC::JSArray::push):
(JSC::JSArray::sort):
* runtime/JSCell.cpp:
(JSC::JSCell::defaultValue):
(JSC::JSCell::getOwnPropertyNames):
(JSC::JSCell::getOwnNonIndexPropertyNames):
(JSC::JSCell::className):
(JSC::JSCell::getPropertyNames):
(JSC::JSCell::customHasInstance):
(JSC::JSCell::putDirectVirtual):
(JSC::JSCell::defineOwnProperty):
(JSC::JSCell::getOwnPropertyDescriptor):
* runtime/JSCell.h:
(JSCell):
* runtime/JSNameScope.cpp:
(JSC::JSNameScope::put):
* runtime/JSObject.cpp:
(JSC::JSObject::getOwnPropertySlotByIndex):
(JSC::JSObject::putByIndex):
(JSC::JSObject::ensureArrayStorageSlow):
(JSC::JSObject::deletePropertyByIndex):
(JSC::JSObject::getOwnPropertyNames):
(JSC::JSObject::putByIndexBeyondVectorLength):
(JSC::JSObject::putDirectIndexBeyondVectorLength):
(JSC::JSObject::getOwnPropertyDescriptor):
* runtime/JSObject.h:
(JSC::JSObject::canGetIndexQuickly):
(JSC::JSObject::getIndexQuickly):
(JSC::JSObject::tryGetIndexQuickly):
(JSC::JSObject::canSetIndexQuickly):
(JSC::JSObject::canSetIndexQuicklyForPutDirect):
(JSC::JSObject::setIndexQuickly):
(JSC::JSObject::initializeIndex):
(JSC::JSObject::hasSparseMap):
(JSC::JSObject::inSparseIndexingMode):
* runtime/JSScope.cpp:
(JSC::JSScope::isDynamicScope):
* runtime/JSSymbolTableObject.cpp:
(JSC::JSSymbolTableObject::putDirectVirtual):
* runtime/JSSymbolTableObject.h:
(JSSymbolTableObject):
* runtime/LiteralParser.cpp:
(JSC::::parse):
* runtime/RegExp.cpp:
(JSC::RegExp::compile):
(JSC::RegExp::compileMatchOnly):
* runtime/StructureTransitionTable.h:
(JSC::newIndexingType):
* tools/CodeProfile.cpp:
(JSC::CodeProfile::sample):
* yarr/YarrCanonicalizeUCS2.h:
(JSC::Yarr::getCanonicalPair):
(JSC::Yarr::areCanonicallyEquivalent):
* yarr/YarrInterpreter.cpp:
(JSC::Yarr::Interpreter::matchCharacterClass):
(JSC::Yarr::Interpreter::matchBackReference):
(JSC::Yarr::Interpreter::backtrackParenthesesTerminalEnd):
(JSC::Yarr::Interpreter::matchParentheses):
(JSC::Yarr::Interpreter::backtrackParentheses):
(JSC::Yarr::Interpreter::matchDisjunction):
* yarr/YarrJIT.cpp:
(JSC::Yarr::YarrGenerator::generateTerm):
(JSC::Yarr::YarrGenerator::backtrackTerm):
* yarr/YarrParser.h:
(JSC::Yarr::Parser::CharacterClassParserDelegate::assertionWordBoundary):
(JSC::Yarr::Parser::CharacterClassParserDelegate::atomBackReference):
* yarr/YarrPattern.cpp:
(JSC::Yarr::YarrPatternConstructor::atomCharacterClassBuiltIn):

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

6 years agoShould update compositing state when an out-of-view fixed position element becomes...
wangxianzhu@chromium.org [Wed, 23 Jan 2013 22:24:49 +0000 (22:24 +0000)]
Should update compositing state when an out-of-view fixed position element becomes in-view
https://bugs.webkit.org/show_bug.cgi?id=107410

Reviewed by Simon Fraser.

Source/WebCore:

When a non-compositing page contains some not-composited fixed position element because of bounds out-of-view, when the element changes position and RenderLayerCompositor::updateCompositingLayers() is called, the function may return early because of "if (!m_reevaluateCompositingAfterLayout && !m_compositing)" without updating the compositing layers.

Set m_reevaluateCompositingAfterLayout when a fixed position element is not composited because of bounds out-of-view.

Test: compositing/layer-creation/fixed-position-change-out-of-view-in-view.html

* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::requiresCompositingForPosition):

LayoutTests:

Tests if compositing status is properly updated when fixed position elements change from out-of-view to in-view and back.

* compositing/layer-creation/fixed-position-change-out-of-view-in-view-expected.txt: Added.
* compositing/layer-creation/fixed-position-change-out-of-view-in-view.html: Added.

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

6 years ago Build fix.
ap@apple.com [Wed, 23 Jan 2013 22:18:59 +0000 (22:18 +0000)]
    Build fix.

        * Platform/CoreIPC/Connection.cpp: (CoreIPC::Connection::sendSyncMessage):
        Copy/paste trouble fix.

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

6 years agoUnreviewed, set svn:eol-style to CRLF on Windows .sln files.
tony@chromium.org [Wed, 23 Jan 2013 22:17:36 +0000 (22:17 +0000)]
Unreviewed, set svn:eol-style to CRLF on Windows .sln files.

Source/JavaScriptCore:

* JavaScriptCore.vcproj/JavaScriptCore.sln: Modified property svn:eol-style.
* JavaScriptCore.vcproj/JavaScriptCoreSubmit.sln: Modified property svn:eol-style.

Source/ThirdParty:

* gtest/msvc/gtest-md.sln: Added property svn:eol-style.
* gtest/msvc/gtest.sln: Added property svn:eol-style.

Source/WebCore:

* WebCore.vcproj/WebCore.sln: Modified property svn:eol-style.
* WebCore.vcproj/WebCore.submit.sln: Modified property svn:eol-style.

Source/WebKit:

* WebKit.vcxproj/WebKit.sln: Added property svn:eol-style.

Source/WebKit/win:

* WebKit.vcproj/WebKit.sln: Modified property svn:eol-style.
* WebKit.vcproj/WebKit.submit.sln: Modified property svn:eol-style.

Source/WTF:

* WTF.vcproj/WTF.sln: Added property svn:eol-style.

Tools:

* CLWrapper/CLWrapper.sln: Modified property svn:eol-style.
* DumpRenderTree/DumpRenderTree.sln: Modified property svn:eol-style.
* MIDLWrapper/MIDLWrapper.sln: Modified property svn:eol-style.
* WebKitTestRunner/WebKitTestRunner.sln: Modified property svn:eol-style.

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

6 years agoBackgroundHTMLParser::sendTokensToMainThread should use bind
abarth@webkit.org [Wed, 23 Jan 2013 22:15:54 +0000 (22:15 +0000)]
BackgroundHTMLParser::sendTokensToMainThread should use bind
https://bugs.webkit.org/show_bug.cgi?id=107637

Reviewed by Eric Seidel.

Source/WebCore:

This patch replaces our hand-written implementation of bind for
didReceiveTokensFromBackgroundParser with bind from Functional.h. To
use the generic version of bind, we need to switch to using WeakPtr to
hold a reference to the main thread parser in the BackgroundHTMLParser.

* html/parser/BackgroundHTMLParser.cpp:
(WebCore::BackgroundHTMLParser::BackgroundHTMLParser):
(WebCore::BackgroundHTMLParser::sendTokensToMainThread):
(WebCore::BackgroundHTMLParser::createPartial):
* html/parser/BackgroundHTMLParser.h:
(WebCore::BackgroundHTMLParser::create):
(BackgroundHTMLParser):
(ParserMap):
* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::HTMLDocumentParser):
(WebCore::HTMLDocumentParser::startBackgroundParser):
(WebCore::HTMLDocumentParser::stopBackgroundParser):
* html/parser/HTMLDocumentParser.h:
(HTMLDocumentParser):

Source/WTF:

* wtf/Functional.h:
    - I had to re-work the approach to validating WeakPtr |this|
      arguments a bit. Previously you couldn't pass a WeakPtr as a
      non-|this| argument to a function because we would try to unwrap
      it into a raw pointer.
* wtf/WeakPtr.h:
(WTF::WeakPtrFactory::revokeAll):
(WeakPtrFactory):
    - Let clients revoke all outstanding WeakPtrs without needing to
      destroy the WeakPtrFactory.
* wtf/chromium/MainThreadChromium.cpp:
(WTF::callFunctionObject):
(WTF::callOnMainThread):
    - Implement callOnMainThread for Function objects. The non-Chromium
      implementation of MainThread.cpp already implements this feature.

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

6 years agoUnreviewed. Cleanup VS2010 WebCore project.
roger_fong@apple.com [Wed, 23 Jan 2013 22:14:47 +0000 (22:14 +0000)]
Unreviewed. Cleanup VS2010 WebCore project.
Lots of files that no longer exist in solution.

* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:

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

6 years ago[Chromium] Remove WebArrayBufferView and WebSerializedScriptValue from chromium/publi...
pilgrim@chromium.org [Wed, 23 Jan 2013 21:56:20 +0000 (21:56 +0000)]
[Chromium] Remove WebArrayBufferView and WebSerializedScriptValue from chromium/public/platform/
https://bugs.webkit.org/show_bug.cgi?id=107720

Reviewed by Darin Fisher.

These headers have been moved to chromium/public/ and all
references downstream were changed in
https://codereview.chromium.org/11946050/.
No DEPS roll necessary because it's already above 177695.

* WebKit.gyp:
* public/platform/WebArrayBufferView.h: Removed.
* public/platform/WebSerializedScriptValue.h: Removed.
* src/DeliveredIntentClientImpl.cpp:
* src/IDBCallbacksProxy.cpp:
* src/IDBCursorBackendProxy.cpp:
* src/WebArrayBufferView.cpp:
* src/WebBindings.cpp:
* src/WebDOMCustomEvent.cpp:
* src/WebDOMMessageEvent.cpp:
* src/WebFrameImpl.cpp:
* src/WebHistoryItem.cpp:
* src/WebIDBCallbacksImpl.cpp:
* src/WebIntent.cpp:
* src/WebIntentRequest.cpp:
* src/WebSerializedScriptValue.cpp:

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

6 years agoLayout Test platform/chromium-win/fast/events/panScroll-panIcon.html is failing
arv@chromium.org [Wed, 23 Jan 2013 21:55:54 +0000 (21:55 +0000)]
Layout Test platform/chromium-win/fast/events/panScroll-panIcon.html is failing
https://bugs.webkit.org/show_bug.cgi?id=107729

Unreviewed gardening.

* platform/chromium/TestExpectations:

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

6 years agoReplace numerous manual CRASH's in JSC with RELEASE_ASSERT
oliver@apple.com [Wed, 23 Jan 2013 21:44:29 +0000 (21:44 +0000)]
Replace numerous manual CRASH's in JSC with RELEASE_ASSERT
https://bugs.webkit.org/show_bug.cgi?id=107726

Reviewed by Filip Pizlo.

Fairly manual change from if (foo) CRASH(); to RELEASE_ASSERT(!foo);

* assembler/MacroAssembler.h:
(JSC::MacroAssembler::branchAdd32):
(JSC::MacroAssembler::branchMul32):
* bytecode/CodeBlockHash.cpp:
(JSC::CodeBlockHash::CodeBlockHash):
* heap/BlockAllocator.h:
(JSC::Region::create):
(JSC::Region::createCustomSize):
* heap/GCAssertions.h:
* heap/HandleSet.cpp:
(JSC::HandleSet::visitStrongHandles):
(JSC::HandleSet::writeBarrier):
* heap/HandleSet.h:
(JSC::HandleSet::allocate):
* heap/Heap.cpp:
(JSC::Heap::collect):
* heap/SlotVisitor.cpp:
(JSC::SlotVisitor::validate):
* interpreter/Interpreter.cpp:
(JSC::Interpreter::execute):
* jit/ExecutableAllocator.cpp:
(JSC::DemandExecutableAllocator::allocateNewSpace):
(JSC::ExecutableAllocator::allocate):
* jit/ExecutableAllocator.h:
(JSC::roundUpAllocationSize):
* jit/ExecutableAllocatorFixedVMPool.cpp:
(JSC::FixedVMPoolExecutableAllocator::FixedVMPoolExecutableAllocator):
(JSC::ExecutableAllocator::allocate):
* runtime/ButterflyInlines.h:
(JSC::Butterfly::createUninitialized):
* runtime/Completion.cpp:
(JSC::evaluate):
* runtime/JSArray.h:
(JSC::constructArray):
* runtime/JSGlobalObject.cpp:
(JSC::slowValidateCell):
* runtime/JSObject.cpp:
(JSC::JSObject::enterDictionaryIndexingModeWhenArrayStorageAlreadyExists):
(JSC::JSObject::createArrayStorage):
* tools/TieredMMapArray.h:
(JSC::TieredMMapArray::append):
* yarr/YarrInterpreter.cpp:
(JSC::Yarr::Interpreter::allocDisjunctionContext):
(JSC::Yarr::Interpreter::allocParenthesesDisjunctionContext):
(JSC::Yarr::Interpreter::InputStream::readChecked):
(JSC::Yarr::Interpreter::InputStream::uncheckInput):
(JSC::Yarr::Interpreter::InputStream::atEnd):
(JSC::Yarr::Interpreter::interpret):

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

6 years ago[CSS Grid Layout] Add support for max-content
jchaffraix@webkit.org [Wed, 23 Jan 2013 21:36:53 +0000 (21:36 +0000)]
[CSS Grid Layout] Add support for max-content
https://bugs.webkit.org/show_bug.cgi?id=107604

Reviewed by Tony Chang.

Source/WebCore:

Tests: fast/css-grid-layout/minmax-max-content-resolution-columns.html
       fast/css-grid-layout/minmax-max-content-resolution-rows.html

This change implements max-content on top of the infrastructure introduced as part
of implementing min-content (bug 106474). No effort was made to share code, which
is what was done for min-content. The sharing will occur in follow-up refactoring(s)
to benefit from the extra testing but also the extra code to make the direction more
obvious.

* rendering/RenderGrid.cpp:
(WebCore::RenderGrid::maxContentForChild):
Added this helper, similar to minContentForChild.

(WebCore::RenderGrid::resolveContentBasedTrackSizingFunctions):
Patched the function to handle max-content per the specification's algorithm.

* rendering/RenderGrid.h:
Added maxContentForChild.

LayoutTests:

* fast/css-grid-layout/minmax-max-content-resolution-columns-expected.txt: Added.
* fast/css-grid-layout/minmax-max-content-resolution-columns.html: Added.
* fast/css-grid-layout/minmax-max-content-resolution-rows-expected.txt: Added.
* fast/css-grid-layout/minmax-max-content-resolution-rows.html: Added.

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

6 years ago <rdar://problem/13064414> REGRESSION(r139514): didFailToSendSyncMessage is...
ap@apple.com [Wed, 23 Jan 2013 21:34:24 +0000 (21:34 +0000)]
    <rdar://problem/13064414> REGRESSION(r139514): didFailToSendSyncMessage is not called by Connection
        https://bugs.webkit.org/show_bug.cgi?id=107715

        Reviewed by Anders Carlsson.

        * Platform/CoreIPC/Connection.cpp:
        (CoreIPC::Connection::sendSyncMessage):
        (CoreIPC::Connection::sendSyncMessageFromSecondaryThread):
        Correcting a misapplied edit - didFailToSendSyncMessage should be kept in main
        thread message sending, not in secondary thread.

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

6 years ago[chromium] Layout test rebaselines
arv@chromium.org [Wed, 23 Jan 2013 21:31:15 +0000 (21:31 +0000)]
[chromium] Layout test rebaselines

Unreviewed rebaseline

* platform/chromium-win-xp/media/media-can-play-ogg-expected.txt: Added.
* platform/chromium-win/media/media-can-play-ogg-expected.txt: Added.

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

6 years agoAssert that Supplementable objects is only used in their creator thread.
mark.lam@apple.com [Wed, 23 Jan 2013 21:26:11 +0000 (21:26 +0000)]
Assert that Supplementable objects is only used in their creator thread.
https://bugs.webkit.org/show_bug.cgi?id=107717.

Reviewed by Adam Barth.

No new tests.

* platform/Supplementable.h:
(WebCore):
(WebCore::Supplementable::provideSupplement):
(WebCore::Supplementable::removeSupplement):
(WebCore::Supplementable::requireSupplement):
(Supplementable):
(WebCore::Supplementable::Supplementable):

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

6 years ago[CHROMIUM] Suppress c4267 build warnings in WTF for Win64 targets
jschuh@chromium.org [Wed, 23 Jan 2013 21:23:28 +0000 (21:23 +0000)]
[CHROMIUM] Suppress c4267 build warnings in WTF for Win64 targets
https://bugs.webkit.org/show_bug.cgi?id=107721

Reviewed by Abhishek Arya.

* WTF.gyp/WTF.gyp:

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

6 years ago[Chromium] Fix some #includes to headers in chromium/public/platform/ that have been...
pilgrim@chromium.org [Wed, 23 Jan 2013 21:20:06 +0000 (21:20 +0000)]
[Chromium] Fix some #includes to headers in chromium/public/platform/ that have been moved to the new Platform directory
https://bugs.webkit.org/show_bug.cgi?id=107722

Reviewed by Darin Fisher.

These headers just redirect to the new versions, so call the new
versions directly.

* src/linux/WebFontInfo.cpp:
* src/mac/WebSubstringUtil.mm:

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

6 years agoAdd RELEASE_ASSERT (and a few friends)
oliver@apple.com [Wed, 23 Jan 2013 21:15:29 +0000 (21:15 +0000)]
Add RELEASE_ASSERT (and a few friends)
https://bugs.webkit.org/show_bug.cgi?id=107725

Reviewed by Filip Pizlo.

Adding a few macros to make release mode assertions easier and more readable.
Also makes same assertions more useful in debug builds.

* wtf/Assertions.h:

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

6 years agoIncorrect scrollable height during simplified layout
tony@chromium.org [Wed, 23 Jan 2013 20:54:07 +0000 (20:54 +0000)]
Incorrect scrollable height during simplified layout
https://bugs.webkit.org/show_bug.cgi?id=107193

Reviewed by David Hyatt.

Source/WebCore:

When computing overflow we need the height of the block before
it was clamped (i.e., before updateLogicalHeight() has been called).

During simplified layout, we don't have this information and we were
using the clamped height by mistake. To fix this, we now store the
pre-clamped height on RenderOverflow so we can properly compute
overflow.

Test: fast/overflow/height-during-simplified-layout.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::computeOverflow): Save the height if we have overflow.
(WebCore::RenderBlock::simplifiedLayout): If we have overflow, use the height that we saved
in computeOverflow.
* rendering/RenderOverflow.h:
(WebCore::RenderOverflow::layoutClientAfterEdge):
(WebCore::RenderOverflow::setLayoutClientAfterEdge):
(RenderOverflow): Add a member variable to save the height.

LayoutTests:

* fast/overflow/height-during-simplified-layout-expected.txt: Added.
* fast/overflow/height-during-simplified-layout.html: Added.

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

6 years ago[chromium] harden ScriptWrappable::m_wrapper against tampering
tsepez@chromium.org [Wed, 23 Jan 2013 20:51:48 +0000 (20:51 +0000)]
[chromium] harden ScriptWrappable::m_wrapper against tampering
https://bugs.webkit.org/show_bug.cgi?id=107318

Reviewed by Adam Barth.

Patch is correct if existing tests past without crashing.

* bindings/v8/ScriptWrappable.h:
(WebCore::ScriptWrappable::ScriptWrappable):
(WebCore::ScriptWrappable::wrapper):
(WebCore::ScriptWrappable::setWrapper):
(WebCore::ScriptWrappable::clearWrapper):
(WebCore::ScriptWrappable::disposeWrapper):
(WebCore::ScriptWrappable::reportMemoryUsage):
(ScriptWrappable):
(WebCore::ScriptWrappable::maskOrUnmaskPointer):

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

6 years agoWebCore property sheets, modified build scripts, and project files for compiling...
roger_fong@apple.com [Wed, 23 Jan 2013 20:42:41 +0000 (20:42 +0000)]
WebCore property sheets, modified build scripts, and project files for compiling in VS2010.
https://bugs.webkit.org/show_bug.cgi?id=106988

Reviewed by Brent Fulgham.

* WebCore.vcproj/WebCore.sln:
* WebCore.vcxproj: Added.
* WebCore.vcxproj/MigrateScripts: Added.
* WebCore.vcxproj/QTMovieWin: Added.
* WebCore.vcxproj/QTMovieWin/QTMovieWin.vcxproj: Added.
* WebCore.vcxproj/QTMovieWin/QTMovieWin.vcxproj.filters: Added.
* WebCore.vcxproj/QTMovieWin/QTMovieWin.vcxproj.user: Added.
* WebCore.vcxproj/QTMovieWin/QTMovieWinCommon.props: Added.
* WebCore.vcxproj/QTMovieWin/QTMovieWinDebug.props: Added.
* WebCore.vcxproj/QTMovieWin/QTMovieWinRelease.props: Added.
* WebCore.vcxproj/WebCore.vcxproj: Added.
* WebCore.vcxproj/WebCore.vcxproj.filters: Added.
* WebCore.vcxproj/WebCore.vcxproj.user: Added.
* WebCore.vcxproj/WebCoreCFNetwork.props: Added.
* WebCore.vcxproj/WebCoreCG.props: Added.
* WebCore.vcxproj/WebCoreCommon.props: Added.
* WebCore.vcxproj/WebCoreDebug.props: Added.
* WebCore.vcxproj/WebCoreGenerated.make: Added.
* WebCore.vcxproj/WebCoreGenerated.vcxproj: Added.
* WebCore.vcxproj/WebCoreGenerated.vcxproj.filters: Added.
* WebCore.vcxproj/WebCoreGenerated.vcxproj.user: Added.
* WebCore.vcxproj/WebCoreGeneratedCommon.props: Added.
* WebCore.vcxproj/WebCoreGeneratedDebug.props: Added.
* WebCore.vcxproj/WebCoreGeneratedRelease.props: Added.
* WebCore.vcxproj/WebCoreMediaQT.props: Added.
* WebCore.vcxproj/WebCorePostBuild.cmd: Added.
* WebCore.vcxproj/WebCorePreBuild.cmd: Added.
* WebCore.vcxproj/WebCorePreLink.cmd: Added.
* WebCore.vcxproj/WebCorePthreads.props: Added.
* WebCore.vcxproj/WebCoreQuartzCore.props: Added.
* WebCore.vcxproj/WebCoreRelease.props: Added.
* WebCore.vcxproj/build-generated-files.sh: Added.
* WebCore.vcxproj/copyForwardingHeaders.cmd: Added.
* WebCore.vcxproj/copyWebCoreResourceFiles.cmd: Added.
* WebCore.vcxproj/migrate-scripts.sh: Added.
* WebCore.vcxproj/xcopy.excludes: Added.
* WebCorePrefix.h:
* config.h:

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

6 years agoHTMLCompactToken needs to include the forceQuirks bool from HTMLToken
eric@webkit.org [Wed, 23 Jan 2013 20:36:01 +0000 (20:36 +0000)]
HTMLCompactToken needs to include the forceQuirks bool from HTMLToken
https://bugs.webkit.org/show_bug.cgi?id=107713

Reviewed by Tony Gentilcore.

Before we were only getting "quirks mode" when the system/public identifiers
were known quirks identifiers.  Now we'll correctly get quirks mode for any
parse error during DOCTYPE parsing.
This passes a bunch more tests.

* html/parser/CompactHTMLToken.cpp:
(WebCore::CompactHTMLToken::CompactHTMLToken):
* html/parser/CompactHTMLToken.h:
(WebCore::CompactHTMLToken::doctypeForcesQuirks):
(CompactHTMLToken):
* html/parser/HTMLToken.h:
(WebCore::AtomicHTMLToken::AtomicHTMLToken):

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

6 years agoRecursion handling cancelled authentication challenges in NetworkProcess
beidson@apple.com [Wed, 23 Jan 2013 20:21:19 +0000 (20:21 +0000)]
Recursion handling cancelled authentication challenges in NetworkProcess
<rdar://problem/13024541> and https://bugs.webkit.org/show_bug.cgi?id=107702

Reviewed by Alexey Proskuryakov.

Source/WebCore:

* WebCore.exp.in:

Source/WebKit2:

This turned in to both a bug fix with authentication and a minimal refactoring of NetworkResourceLoader.

- Rename ::stop to ::resourceHandleStopped
- Move all cleanup code to ::resourceHandleStopped
- Schedule a resourceHandleStopped call when an authentication cancellation occurs
- Tell the WebResourceLoader to cancel when an authentication cancellation occurs

* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::~NetworkResourceLoader):
(WebKit::NetworkResourceLoader::start):
(WebKit::NetworkResourceLoader::performStops):
(WebKit::NetworkResourceLoader::resourceHandleStopped):
(WebKit::NetworkResourceLoader::didFail):
(WebKit::NetworkResourceLoader::receivedAuthenticationCancellation):
* NetworkProcess/NetworkResourceLoader.h:

* WebProcess/Network/WebResourceLoader.cpp:
(WebKit::WebResourceLoader::cancelResourceLoader):
* WebProcess/Network/WebResourceLoader.h:
* WebProcess/Network/WebResourceLoader.messages.in:

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

6 years agohttps://bugs.webkit.org/show_bug.cgi?id=107628
bdakin@apple.com [Wed, 23 Jan 2013 20:17:01 +0000 (20:17 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=107628
Sometimes scroll position is jerky during rubber-band, affects nytimes.com
-and corresponding-
<rdar://problem/12679549>

Reviewed by Simon Fraser.

The basic problem here is that isRubberBandInProgress() was only implemented for
main thread scrolling. So when we were actually scrolling on the scrolling thread,
that function would always return false regardless.

New ScrollableArea virtual function isRubberBandInProgress() will allow us to ask
the ScrollingCoordinator when the scrolling thread is scrolling, or the
ScrollAnimator otherwise.
* page/FrameView.cpp:
(WebCore::FrameView::isRubberBandInProgress):
* page/FrameView.h:
(FrameView):
* platform/ScrollableArea.h:
(WebCore::ScrollableArea::isRubberBandInProgress):

New ScrollingCoordinator function isRubberBandInProgress() always returns false
for non-Mac ports, and is overridden in ScrollingCoordinatorMac to consult the
ScrollingTree.
* page/scrolling/ScrollingCoordinator.h:
(WebCore::ScrollingCoordinator::isRubberBandInProgress):
* page/scrolling/mac/ScrollingCoordinatorMac.h:
(ScrollingCoordinatorMac):
* page/scrolling/mac/ScrollingCoordinatorMac.mm:
(WebCore::ScrollingCoordinatorMac::isRubberBandInProgress):

New variable m_mainFrameIsRubberBanding keeps track of whether there is currently
a rubber-band happening on the scrolling thread.
* page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::ScrollingTree):
(WebCore::ScrollingTree::isRubberBandInProgress):
(WebCore::ScrollingTree::setMainFrameIsRubberBanding):
* page/scrolling/ScrollingTree.h:
(ScrollingTree):
(WebCore::ScrollingTree::rootNode):

Call setMainFrameIsRubberBanding() whenever the stretchAmount is calculated and
whenever we stop the rubber-band timer.
* page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
(WebCore::ScrollingTreeScrollingNodeMac::stretchAmount):
(WebCore::ScrollingTreeScrollingNodeMac::stopSnapRubberbandTimer):

Consult FrameView for isRubberBandInProgress().
* platform/ScrollView.cpp:
(WebCore::ScrollView::updateScrollbars):

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

6 years agoAbspos Inline block not positioned correctly in text-aligned container
robert@webkit.org [Wed, 23 Jan 2013 20:15:12 +0000 (20:15 +0000)]
Abspos Inline block not positioned correctly in text-aligned container
https://bugs.webkit.org/show_bug.cgi?id=105695

Reviewed by Ojan Vafai.

Source/WebCore:

Inline positioned elements should still obey the text-alignment of their container
even when we don't do a line layout.

Test: fast/text/container-align-with-inlines.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::adjustPositionedBlock):
(WebCore::RenderBlock::updateStaticInlinePositionForChild):
(WebCore):
* rendering/RenderBlock.h:
(RenderBlock):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::setStaticPositions):

LayoutTests:

* fast/text/container-align-with-inlines-expected.txt: Added.
* fast/text/container-align-with-inlines.html: Added.

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

6 years agoRemove DocType support from MarkupTokenBase now that NEW_XML is gone
eric@webkit.org [Wed, 23 Jan 2013 20:13:00 +0000 (20:13 +0000)]
Remove DocType support from MarkupTokenBase now that NEW_XML is gone
https://bugs.webkit.org/show_bug.cgi?id=107709

Reviewed by Adam Barth.

Just moving code out of MarkupTokenBase and into HTMLToken.
The test for this change is if it compiles. :)  Which it does.

* html/parser/HTMLToken.h:
(DoctypeData):
(WebCore::DoctypeData::DoctypeData):
(WebCore):
(WebCore::HTMLToken::appendToName):
(WebCore::HTMLToken::name):
(HTMLToken):
(WebCore::HTMLToken::beginDOCTYPE):
(WebCore::HTMLToken::publicIdentifier):
(WebCore::HTMLToken::systemIdentifier):
(WebCore::HTMLToken::setPublicIdentifierToEmptyString):
(WebCore::HTMLToken::setSystemIdentifierToEmptyString):
(WebCore::HTMLToken::appendToPublicIdentifier):
(WebCore::HTMLToken::appendToSystemIdentifier):
(WebCore::HTMLToken::releaseDoctypeData):
(WebCore::AtomicHTMLToken::AtomicHTMLToken):
(AtomicHTMLToken):
* html/parser/HTMLTokenTypes.h:
* xml/parser/MarkupTokenBase.h:
(WebCore):
(MarkupTokenBase):

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

6 years agoAdd the VS2010 WebKit solution folder and solution file.
roger_fong@apple.com [Wed, 23 Jan 2013 20:11:56 +0000 (20:11 +0000)]
Add the VS2010 WebKit solution folder and solution file.
The solution of course will not load until the dependent projects are all completed.
https://bugs.webkit.org/show_bug.cgi?id=106949.

Reviewed by Brent Fulgham.

* WebKit.vcxproj: Added.
* WebKit.vcxproj/WebKit.sln: Added.

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

6 years agoAdd WebKitLibraries property sheets for compiling WebKit in VS2010.
roger_fong@apple.com [Wed, 23 Jan 2013 19:59:32 +0000 (19:59 +0000)]
Add WebKitLibraries property sheets for compiling WebKit in VS2010.
https://bugs.webkit.org/show_bug.cgi?id=106949

Reviewed by Brent Fulgham.

* win/tools/vsprops/FeatureDefines.props: Added.
* win/tools/vsprops/common.props: Added.
* win/tools/vsprops/debug.props: Added.
* win/tools/vsprops/release.props: Added.
* win/tools/vsprops/releaseproduction.props: Added.

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

6 years ago[Chromium] Fix some #includes for WebSerializedScriptValue
pilgrim@chromium.org [Wed, 23 Jan 2013 19:56:36 +0000 (19:56 +0000)]
[Chromium] Fix some #includes for WebSerializedScriptValue
https://bugs.webkit.org/show_bug.cgi?id=107697

Reviewed by Adam Barth.

WebSerializedScriptValue has been moved to chromium/public/.

* public/WebDOMCustomEvent.h:
* public/WebDOMMessageEvent.h:
* public/WebIDBCursor.h:

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

6 years ago[Chromium] Update some #includes in DumpRenderTree for headers in the new Platform...
pilgrim@chromium.org [Wed, 23 Jan 2013 19:55:35 +0000 (19:55 +0000)]
[Chromium] Update some #includes in DumpRenderTree for headers in the new Platform directory
https://bugs.webkit.org/show_bug.cgi?id=107145

Reviewed by Adam Barth.

Part of a larger refactoring series; see tracking bug 82948.

* DumpRenderTree/chromium/DRTDevToolsAgent.cpp:
* DumpRenderTree/chromium/DRTDevToolsAgent.h:
* DumpRenderTree/chromium/DRTDevToolsClient.h:
* DumpRenderTree/chromium/DRTTestRunner.cpp:
* DumpRenderTree/chromium/DRTTestRunner.h:
* DumpRenderTree/chromium/MockWebPrerenderingSupport.h:
* DumpRenderTree/chromium/MockWebSpeechInputController.cpp:
* DumpRenderTree/chromium/MockWebSpeechInputController.h:
* DumpRenderTree/chromium/NotificationPresenter.cpp:
* DumpRenderTree/chromium/TestNavigationController.h:
* DumpRenderTree/chromium/TestRunner/src/AccessibilityControllerChromium.cpp:
* DumpRenderTree/chromium/TestRunner/src/AccessibilityUIElementChromium.cpp:
* DumpRenderTree/chromium/TestRunner/src/CppBoundClass.cpp:
* DumpRenderTree/chromium/TestRunner/src/EventSender.cpp:
(WebTestRunner):
* DumpRenderTree/chromium/TestRunner/src/EventSender.h:
* DumpRenderTree/chromium/TestRunner/src/GamepadController.h:
* DumpRenderTree/chromium/TestRunner/src/TestDelegate.h:
* DumpRenderTree/chromium/TestRunner/src/TestInterfaces.cpp:
* DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:
* DumpRenderTree/chromium/TestRunner/src/TestRunner.h:
* DumpRenderTree/chromium/TestRunner/src/TextInputController.cpp:
* DumpRenderTree/chromium/TestRunner/src/WebPermissions.cpp:
* DumpRenderTree/chromium/TestRunner/src/WebTestPlugin.cpp:
* DumpRenderTree/chromium/TestRunner/src/WebTestProxy.cpp:
* DumpRenderTree/chromium/TestShell.cpp:
* DumpRenderTree/chromium/WebThemeEngineDRTMac.h:
* DumpRenderTree/chromium/WebThemeEngineDRTMac.mm:
* DumpRenderTree/chromium/WebThemeEngineDRTWin.cpp:
* DumpRenderTree/chromium/WebThemeEngineDRTWin.h:
* DumpRenderTree/chromium/WebViewHost.cpp:

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

6 years ago[BlackBerry] Take a better guess as to what text the user wants learned
nghanavatian@rim.com [Wed, 23 Jan 2013 19:49:52 +0000 (19:49 +0000)]
[BlackBerry] Take a better guess as to what text the user wants learned
https://bugs.webkit.org/show_bug.cgi?id=107706

Reviewed by Rob Buis.

If we still have a valid caret position, use it to give priority to a region
of text.  We now take the text before the caret, instead of the text at the end
of the field.  If the caret is not present, we start from the beginning of the field.
This helps learning in email where the region of interest is generally at the start,
not end of the field.

Internally reviewed by Mike Fenton

* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::learnText):

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

6 years agoUnreviewed.
zandobersek@gmail.com [Wed, 23 Jan 2013 19:49:21 +0000 (19:49 +0000)]
Unreviewed.

Speculative build fix for the GTK port after 140539.

* Source/autotools/symbols.filter:

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

6 years ago[BlackBerry] Optimize spellchecking by coalescing messages
nghanavatian@rim.com [Wed, 23 Jan 2013 19:48:17 +0000 (19:48 +0000)]
[BlackBerry] Optimize spellchecking by coalescing messages
https://bugs.webkit.org/show_bug.cgi?id=107707

Reviewed by Rob Buis.

PR233604
Instead of taking chunks one line at a time, coalesce them together
to fire off messages as close to our character limit as possible.
This should dramatically reduce the total number of messages in email
giving us a little performance bump.

Internally reviewed by Mike Fenton and Gen Mak.

* WebKitSupport/DOMSupport.cpp:
(BlackBerry::WebKit::DOMSupport::trimWhitespaceFromRange):
(DOMSupport):
* WebKitSupport/DOMSupport.h:
* WebKitSupport/InputHandler.cpp:
* WebKitSupport/InputHandler.h:
(InputHandler):
* WebKitSupport/SpellingHandler.cpp:
(BlackBerry::WebKit::SpellingHandler::spellCheckTextBlock):
(BlackBerry::WebKit::SpellingHandler::createSpellCheckRequest):
(BlackBerry::WebKit::SpellingHandler::parseBlockForSpellChecking):
(BlackBerry::WebKit::SpellingHandler::getRangeForSpellCheckWithFineGranularity):
* WebKitSupport/SpellingHandler.h:

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

6 years ago[chromium] Use after free in plugins/geturlnotify-during-document-teardown.html
jochen@chromium.org [Wed, 23 Jan 2013 19:45:52 +0000 (19:45 +0000)]
[chromium] Use after free in plugins/geturlnotify-during-document-teardown.html
https://bugs.webkit.org/show_bug.cgi?id=107556

Reviewed by Tony Chang.

WebViewHost initiates a navigation to about:blank in its destructor.
However, since WebTestProxy inherits from WebViewHost, at this point
the WebViewClient and WebFrameClient interfaces are already partially
destructed resulting in the use after free.

This does not affect the chromium implementation since it doesn't
invoke WebKit API methods in its destructor.

* DumpRenderTree/chromium/TestShell.cpp:
(TestShell::~TestShell):
(TestShell::closeWindow):
* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::WebViewHost):
(WebViewHost::~WebViewHost):
(WebViewHost::shutdown):
* DumpRenderTree/chromium/WebViewHost.h:
(WebViewHost):

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

6 years agotransition-property accepts incorrect "all, none" as value
alexis@webkit.org [Wed, 23 Jan 2013 19:27:38 +0000 (19:27 +0000)]
transition-property accepts incorrect "all, none" as value
https://bugs.webkit.org/show_bug.cgi?id=105428

Reviewed by Dean Jackson.

Source/WebCore:

http://www.w3.org/TR/css3-transitions/#transition-property-property
disallows any value like none, all or all, none as it doesn't make
sense. This patch fixes the problem by rejecting the value if set by
the user.

Test: transitions/transitions-parsing.html

* css/CSSParser.cpp:
(WebCore::CSSParser::parseAnimationProperty):
* css/CSSParser.h:

LayoutTests:

Extend the existing tests to cover the bug.

* transitions/transitions-parsing-expected.txt:
* transitions/transitions-parsing.html:

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

6 years agoClarify some usage of shouldUseThreading vs m_haveBackgroundParser, fixing about...
eric@webkit.org [Wed, 23 Jan 2013 19:23:41 +0000 (19:23 +0000)]
Clarify some usage of shouldUseThreading vs m_haveBackgroundParser, fixing about:blank parsing
https://bugs.webkit.org/show_bug.cgi?id=107664

Reviewed by Adam Barth.

The HTMLDocumentParser can be "supposed" to use a background parser
but not end up ever doing so for blank documents.  It's important
that we spin the forground parser at least once, so we end up
actually creating the about:blank document.

shouldUseThreading() means that threading is enabled and we should use it if we can.
m_haveBackgroundParser means that we actually are already using threading.
When we add full document.write support this will get a bit trickier still as
we'll need to be using both the foreground and background parsers.

This fixes about 20 tests in fast/frames and many others outside of fast/frames. :)

* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::prepareToStopParsing):
(WebCore::HTMLDocumentParser::resumeParsingAfterYield):
(WebCore::HTMLDocumentParser::finish):
(WebCore::HTMLDocumentParser::lineNumber):
(WebCore::HTMLDocumentParser::textPosition):

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

6 years ago[Win] Remove dependence on Microsoft Embedded OpenType Font Engine (T2EMBED.DLL)...
roger_fong@apple.com [Wed, 23 Jan 2013 19:15:58 +0000 (19:15 +0000)]
[Win] Remove dependence on Microsoft Embedded OpenType Font Engine (T2EMBED.DLL)  from FontCustomPlatformData.cpp.
https://bugs.webkit.org/show_bug.cgi?id=107153

Reviewed by Dan Bernstein.

* platform/graphics/win/FontCustomPlatformData.cpp:
(WebCore):
(WebCore::FontCustomPlatformData::~FontCustomPlatformData):
(WebCore::FontCustomPlatformData::fontPlatformData):
(WebCore::createFontCustomPlatformData):

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

6 years ago[GTK] Avoid reset title for navigation within the page
commit-queue@webkit.org [Wed, 23 Jan 2013 19:13:50 +0000 (19:13 +0000)]
[GTK] Avoid reset title for navigation within the page
https://bugs.webkit.org/show_bug.cgi?id=106908

Patch by Manuel Rego Casasnovas <rego@igalia.com> on 2013-01-23
Reviewed by Martin Robinson.

* WebCoreSupport/FrameLoaderClientGtk.cpp:
(WebKit::FrameLoaderClient::dispatchDidNavigateWithinPage): Call
dispatchDidCommitLoad with true as param.
(WebKit::FrameLoaderClient::dispatchDidCommitLoad): The method has been
overloaded. The default implementation (without params) simply calls
dispatchDidCommitLoad with false. The new private method with
isNavigatingWithinPage as param will avoid to reset the title for
navigation within the page.
* WebCoreSupport/FrameLoaderClientGtk.h:
(FrameLoaderClient): Add new private method dispatchDidCommitLoad with a
boolean parameter to know if it is navigating withing the same page or
not.

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

6 years agoWeb Inspector: speedup highlight regex API in DefaultTextEditor
commit-queue@webkit.org [Wed, 23 Jan 2013 19:10:03 +0000 (19:10 +0000)]
Web Inspector: speedup highlight regex API in DefaultTextEditor
https://bugs.webkit.org/show_bug.cgi?id=107238

Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-01-23
Reviewed by Pavel Feldman.

Source/WebCore:

Move overlay highlight measurement (highlight regex API) from DefaultTextEditor._paintLine
method to the DefaultTextEditor._paintLines method which allows to relayout dom only
once. This is a significant improvement to the current state of the
art which does relayout on each regex occurence.
In addition, use "left" css attribute instead of "margin-left": this
way it will be possible to avoid an unnecessary relayouting during
appending overlay highlight.

No new tests: no change in behaviour.

* inspector/front-end/DefaultTextEditor.js:
(WebInspector.TextEditorMainPanel.prototype.markAndRevealRange):
(WebInspector.TextEditorMainPanel.prototype._paintLines):
(WebInspector.TextEditorMainPanel.prototype._measureRegexHighlight):
(WebInspector.TextEditorMainPanel.prototype._measureSpans):
(WebInspector.TextEditorMainPanel.prototype._appendOverlayHighlight):
(WebInspector.TextEditorMainPanel.prototype._paintLine):
(WebInspector.TextEditorMainPanel.ElementMetrics):
(WebInspector.TextEditorMainPanel.LineOverlayHighlight):
(WebInspector.TextEditorMainChunk.prototype.expand):

LayoutTests:

Corrected layout test expectations to correspond to refactoring.

* inspector/editor/text-editor-highlight-regexp-expected.txt:

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

6 years agoAssert that computePreferredLogicalWidths never calls setNeedsLayout
ojan@chromium.org [Wed, 23 Jan 2013 18:54:56 +0000 (18:54 +0000)]
Assert that computePreferredLogicalWidths never calls setNeedsLayout
https://bugs.webkit.org/show_bug.cgi?id=107613

Reviewed by Eric Seidel.

computePreferredLogicalWidths should only set m_minPreferredLogicalWidth
and m_maxPreferredLogicalWidth. It shouldn't have other side-effects.
The mathml bits can be removed once https://bugs.webkit.org/show_bug.cgi?id=107353
is resolved.

* rendering/RenderBox.cpp:
(WebCore::RenderBox::minPreferredLogicalWidth):
* rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::RenderMathMLOperator::computePreferredLogicalWidths):
* rendering/mathml/RenderMathMLRoot.cpp:
(WebCore::RenderMathMLRoot::computePreferredLogicalWidths):
* rendering/mathml/RenderMathMLRow.cpp:
(WebCore::RenderMathMLRow::computePreferredLogicalWidths):

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

6 years agoFollow up to 140539, adding exports for Win build.
pfeldman@chromium.org [Wed, 23 Jan 2013 18:53:57 +0000 (18:53 +0000)]
Follow up to 140539, adding exports for Win build.

Not reviewed.

* WebKit.vcproj/WebKitExports.def.in:

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

6 years ago[GTK][WK2] Unflag tests related to layoutTestController.setViewModeMediaFeature
commit-queue@webkit.org [Wed, 23 Jan 2013 18:48:33 +0000 (18:48 +0000)]
[GTK][WK2] Unflag tests related to layoutTestController.setViewModeMediaFeature
https://bugs.webkit.org/show_bug.cgi?id=107660

Patch by Manuel Rego Casasnovas <rego@igalia.com> on 2013-01-23
Reviewed by Philippe Normand.

* platform/gtk-wk2/TestExpectations: Remove tests related to
layoutTestController.setViewModeMediaFeature as they are passing now.

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

6 years agoREGRESSION(r140518): Broke Chromium Win build (gyp file not updated) (Requested by...
commit-queue@webkit.org [Wed, 23 Jan 2013 18:42:10 +0000 (18:42 +0000)]
REGRESSION(r140518): Broke Chromium Win build (gyp file not updated) (Requested by arv on #webkit).
https://bugs.webkit.org/show_bug.cgi?id=107691

Unreviewed build fix. Removed TextureMapperShaderManager.* from WebCore.gypi.

Patch by Noam Rosenthal <noam@webkit.org> on 2013-01-23

* WebCore.gypi:

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

6 years agoUnreviewed, rolling out r140307, r140411, and r140512.
commit-queue@webkit.org [Wed, 23 Jan 2013 18:25:06 +0000 (18:25 +0000)]
Unreviewed, rolling out r140307, r140411, and r140512.
http://trac.webkit.org/changeset/140307
http://trac.webkit.org/changeset/140411
http://trac.webkit.org/changeset/140512
https://bugs.webkit.org/show_bug.cgi?id=107689

Perf regression on DOMDivWalk (bug 106726) (Requested by
falken on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-23

Source/WebCore:

* dom/Element.cpp:
(WebCore::Element::removedFrom):
(WebCore):
(WebCore::Element::isInTopLayer):
(WebCore::Element::setIsInTopLayer):
* dom/Element.h:
* dom/ElementRareData.h:
(ElementRareData):
(WebCore::ElementRareData::isInTopLayer):
(WebCore::ElementRareData::setIsInTopLayer):
(WebCore::ElementRareData::ElementRareData):
* dom/Node.cpp:
* dom/Node.h:
(Node):
* dom/NodeRenderingContext.cpp:
(WebCore::isRendererReparented):
(WebCore::NodeRenderingContext::previousRenderer):
(WebCore::NodeRenderingContext::parentRenderer):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::isInTopLayer):
(WebCore::RenderLayer::rebuildZOrderLists):

LayoutTests:

* fast/dom/HTMLDialogElement/removed-element-is-removed-from-top-layer-expected.html: Removed.
* fast/dom/HTMLDialogElement/removed-element-is-removed-from-top-layer.html: Removed.
* fast/dom/HTMLDialogElement/top-layer-stacking-correct-order-remove-readd-expected.html: Removed.
* fast/dom/HTMLDialogElement/top-layer-stacking-correct-order-remove-readd.html: Removed.

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