WebKit-https.git
5 years ago[iOS] Upstream changes in Tools/DumpRenderTree
aestes@apple.com [Mon, 27 Jan 2014 00:01:15 +0000 (00:01 +0000)]
[iOS] Upstream changes in Tools/DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=127412

Reviewed by Simon Fraser.

Source/WebKit/mac:

* Misc/WebCoreStatistics.h: Included CGContext.h.

Tools:

Upstream all iOS changes. Added a new target called DumpRenderTree.app,
which builds the DumpRenderTree static library into an app bundle as
expected by the iOS Simulator.

* DumpRenderTree/AccessibilityTextMarker.h:
* DumpRenderTree/AccessibilityUIElement.h:
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* DumpRenderTree/DumpRenderTreeFileDraggingSource.h:
* DumpRenderTree/DumpRenderTreePrefix.h:
* DumpRenderTree/PixelDumpSupport.cpp:
* DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:
* DumpRenderTree/TestNetscapePlugIn/PluginObject.h:
* DumpRenderTree/TestNetscapePlugIn/PluginObjectMac.mm:
* DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:
* DumpRenderTree/TestNetscapePlugIn/PluginTest.h:
* DumpRenderTree/TestNetscapePlugIn/TestObject.cpp:
* DumpRenderTree/TestNetscapePlugIn/TestObject.h:
* DumpRenderTree/TestNetscapePlugIn/Tests/DocumentOpenInDestroyStream.cpp:
* DumpRenderTree/TestNetscapePlugIn/Tests/EvaluateJSAfterRemovingPluginElement.cpp:
* DumpRenderTree/TestNetscapePlugIn/Tests/GetUserAgentWithNullNPPFromNPPNew.cpp:
* DumpRenderTree/TestNetscapePlugIn/Tests/NPRuntimeObjectFromDestroyedPlugin.cpp:
* DumpRenderTree/TestNetscapePlugIn/Tests/NPRuntimeRemoveProperty.cpp:
* DumpRenderTree/TestNetscapePlugIn/Tests/NullNPPGetValuePointer.cpp:
* DumpRenderTree/TestNetscapePlugIn/Tests/PassDifferentNPPStruct.cpp:
* DumpRenderTree/TestNetscapePlugIn/Tests/PluginScriptableNPObjectInvokeDefault.cpp:
* DumpRenderTree/TestNetscapePlugIn/main.cpp:
* DumpRenderTree/TestRunner.cpp:
* DumpRenderTree/TestRunner.h:
* DumpRenderTree/cg/ImageDiffCG.cpp:
* DumpRenderTree/cg/PixelDumpSupportCG.cpp:
* DumpRenderTree/ios/AccessibilityControllerIOS.mm:
* DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
* DumpRenderTree/ios/DumpRenderTreeBrowserView.h: Added.
* DumpRenderTree/ios/DumpRenderTreeBrowserView.mm: Added.
* DumpRenderTree/ios/Info.plist: Added.
* DumpRenderTree/ios/PerlSupport/DumpRenderTreeSupport.c: Added.
* DumpRenderTree/ios/PerlSupport/DumpRenderTreeSupportPregenerated.pm: Added.
* DumpRenderTree/ios/PerlSupport/DumpRenderTreeSupport_wrapPregenerated.c: Added.
* DumpRenderTree/ios/PerlSupport/IPhoneSimulatorNotification/Changes: Added.
* DumpRenderTree/ios/PerlSupport/IPhoneSimulatorNotification/IPhoneSimulatorNotification.xs: Added.
* DumpRenderTree/ios/PerlSupport/IPhoneSimulatorNotification/MANIFEST: Added.
* DumpRenderTree/ios/PerlSupport/IPhoneSimulatorNotification/Makefile.PL: Added.
* DumpRenderTree/ios/PerlSupport/IPhoneSimulatorNotification/README: Added.
* DumpRenderTree/ios/PerlSupport/IPhoneSimulatorNotification/lib/IPhoneSimulatorNotification.pm: Added.
* DumpRenderTree/ios/PerlSupport/IPhoneSimulatorNotification/ppport.h: Added.
* DumpRenderTree/ios/PerlSupport/IPhoneSimulatorNotification/t/IPhoneSimulatorNotification.t: Added.
* DumpRenderTree/ios/PerlSupport/Makefile: Added.
* DumpRenderTree/ios/PixelDumpSupportIOS.mm: Added.
* DumpRenderTree/mac/AccessibilityNotificationHandler.mm:
* DumpRenderTree/mac/AccessibilityTextMarkerMac.mm:
* DumpRenderTree/mac/AppleScriptController.m:
* DumpRenderTree/mac/Configurations/Base.xcconfig:
* DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
* DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig:
* DumpRenderTree/mac/Configurations/DumpRenderTreeApp.xcconfig: Added.
* DumpRenderTree/mac/Configurations/DumpRenderTreeLibrary.xcconfig:
* DumpRenderTree/mac/Configurations/ImageDiff.xcconfig:
* DumpRenderTree/mac/Configurations/LayoutTestHelper.xcconfig: Added.
* DumpRenderTree/mac/Configurations/TestNetscapePlugIn.xcconfig:
* DumpRenderTree/mac/DumpRenderTree.mm:
* DumpRenderTree/mac/DumpRenderTreeDraggingInfo.h:
* DumpRenderTree/mac/DumpRenderTreeDraggingInfo.mm:
* DumpRenderTree/mac/DumpRenderTreeMac.h:
* DumpRenderTree/mac/DumpRenderTreePasteboard.h:
* DumpRenderTree/mac/DumpRenderTreePasteboard.m:
* DumpRenderTree/mac/DumpRenderTreeWindow.h:
* DumpRenderTree/mac/DumpRenderTreeWindow.mm:
* DumpRenderTree/mac/EditingDelegate.h:
* DumpRenderTree/mac/EventSendingController.h:
* DumpRenderTree/mac/EventSendingController.mm:
* DumpRenderTree/mac/FrameLoadDelegate.mm:
* DumpRenderTree/mac/HistoryDelegate.h:
* DumpRenderTree/mac/LayoutTestHelper.m:
* DumpRenderTree/mac/MockGeolocationProvider.mm:
* DumpRenderTree/mac/NavigationController.h:
* DumpRenderTree/mac/ObjCPlugin.h:
* DumpRenderTree/mac/ObjCPlugin.m:
* DumpRenderTree/mac/ObjCPluginFunction.h:
* DumpRenderTree/mac/PolicyDelegate.h:
* DumpRenderTree/mac/ResourceLoadDelegate.h:
* DumpRenderTree/mac/ResourceLoadDelegate.mm:
* DumpRenderTree/mac/TestRunnerMac.mm:
* DumpRenderTree/mac/TextInputController.h:
* DumpRenderTree/mac/TextInputController.m:
* DumpRenderTree/mac/UIDelegate.h:
* DumpRenderTree/mac/UIDelegate.mm:

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

5 years agoAX: Disable accessibility after every test run
cfleizach@apple.com [Sun, 26 Jan 2014 23:40:41 +0000 (23:40 +0000)]
AX: Disable accessibility after every test run
https://bugs.webkit.org/show_bug.cgi?id=127439

Reviewed by Alexey Proskuryakov.

../WebCore:

If accessibility is disabled, we may still need to return the existing
AXObjectCache, so that objects can be cleaned up appropriately.

A such we have to be prepared to handle a nullptr return value in more cases.

* accessibility/AXObjectCache.h:
(WebCore::AXObjectCache::disableAccessibility):
* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::childrenChanged):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::remoteSVGRootElement):
* dom/Document.cpp:
(WebCore::Document::existingAXObjectCache):

../WebKit:

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:

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

5 years agoFollow-up build fix.
andersca@apple.com [Sun, 26 Jan 2014 22:55:41 +0000 (22:55 +0000)]
Follow-up build fix.

* WebHistoryItem.cpp:
(WebHistoryItem::visitedWithTitle):

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

5 years agoRemove even more Windows history code.
andersca@apple.com [Sun, 26 Jan 2014 22:52:17 +0000 (22:52 +0000)]
Remove even more Windows history code.

* WebHistory.cpp:
(WebHistory::removeItemForURLString):
* WebHistoryItem.cpp:
(WebHistoryItem::initFromDictionaryRepresentation):
(WebHistoryItem::dictionaryRepresentation):
(WebHistoryItem::getDailyVisitCounts):
(WebHistoryItem::getWeeklyVisitCounts):
(WebHistoryItem::recordInitialVisit):
(WebHistoryItem::initWithURLString):

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

5 years agoAnother follow-up build fix.
andersca@apple.com [Sun, 26 Jan 2014 22:46:32 +0000 (22:46 +0000)]
Another follow-up build fix.

* WebHistory.cpp:
(WebHistory::removeAllItems):
(WebHistory::orderedItemsLastVisitedOnDay):
* WebHistoryItem.cpp:
(WebHistoryItem::initFromDictionaryRepresentation):
(WebHistoryItem::dictionaryRepresentation):
(WebHistoryItem::visitCount):
(WebHistoryItem::setVisitCount):

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

5 years agoRemove more history gunk.
andersca@apple.com [Sun, 26 Jan 2014 22:41:13 +0000 (22:41 +0000)]
Remove more history gunk.

* WebHistory.cpp:
(WebHistory::orderedLastVisitedDays):
(WebHistory::addItem):
(WebHistory::visitedURL):
(WebHistory::removeItemForURLString):
* WebHistory.h:
* WebHistoryItem.cpp:
(WebHistoryItem::initFromDictionaryRepresentation):
(WebHistoryItem::dictionaryRepresentation):
(WebHistoryItem::mergeAutoCompleteHints):
(WebHistoryItem::setLastVisitedTimeInterval):
(WebHistoryItem::initWithURLString):
(WebHistoryItem::lastVisitedTimeInterval):

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

5 years agoBuild fix.
andersca@apple.com [Sun, 26 Jan 2014 22:34:13 +0000 (22:34 +0000)]
Build fix.

* WebHistoryItem.cpp:
(WebHistoryItem::initFromDictionaryRepresentation):
(WebHistoryItem::dictionaryRepresentation):

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

5 years agoSome more Apple Windows port rebaseline.
zalan@apple.com [Sun, 26 Jan 2014 22:29:06 +0000 (22:29 +0000)]
Some more Apple Windows port rebaseline.

* platform/win/svg/custom/foreign-object-skew-expected.txt: Added.

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

5 years agoMove history item visit count handling to WebKit
andersca@apple.com [Sun, 26 Jan 2014 22:22:05 +0000 (22:22 +0000)]
Move history item visit count handling to WebKit
https://bugs.webkit.org/show_bug.cgi?id=127659

Reviewed by Dan Bernstein.

Source/WebCore:

Remove all members dealing with visit handling - they're going back to WebKit.

* WebCore.exp.in:
* history/HistoryItem.cpp:
(WebCore::HistoryItem::HistoryItem):
(WebCore::HistoryItem::reset):
(WebCore::HistoryItem::decodeBackForwardTree):
* history/HistoryItem.h:
(WebCore::HistoryItem::create):

Source/WebKit/mac:

Move code to deal with visit count and visit dates here from WebCore.

* History/HistoryPropertyList.mm:
(HistoryPropertyListWriter::writeHistoryItem):
* History/WebHistoryItem.mm:
(-[WebHistoryItem initWithURLString:title:lastVisitedTimeInterval:]):
(-[WebHistoryItem copyWithZone:]):
(-[WebHistoryItem lastVisitedTimeInterval]):
(-[WebHistoryItem initWithURLString:title:displayTitle:lastVisitedTimeInterval:]):
(-[WebHistoryItem setVisitCount:]):
(-[WebHistoryItem _mergeAutoCompleteHints:]):
(-[WebHistoryItem initFromDictionaryRepresentation:]):
(-[WebHistoryItem _visitedWithTitle:increaseVisitCount:]):
(-[WebHistoryItem _recordInitialVisit]):
(timeToDay):
(-[WebHistoryItem _padDailyCountsForNewVisit:]):
(-[WebHistoryItem _collapseDailyVisitsToWeekly]):
(-[WebHistoryItem _recordVisitAtTime:increaseVisitCount:]):
(-[WebHistoryItem _setLastVisitedTimeInterval:]):
* History/WebHistoryItemInternal.h:

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

5 years agoSource/WebKit: Fix build.
andersca@apple.com [Sun, 26 Jan 2014 21:32:59 +0000 (21:32 +0000)]
Source/WebKit: Fix build.

Make HistoryPropertyList an Objective-C++ class.

* WebKit.xcodeproj/project.pbxproj:

Source/WebKit/mac: Fix build.

Pass a WebHistoryItem to writeHistoryItem so we can extract _lastVisitWasHTTPNonGet from it.

* History/HistoryPropertyList.h:
* History/HistoryPropertyList.mm:
(HistoryPropertyListWriter::HistoryPropertyListWriter):
(HistoryPropertyListWriter::buffer):
(HistoryPropertyListWriter::releaseData):
(HistoryPropertyListWriter::writeObjects):
(HistoryPropertyListWriter::writeHistoryItem):
* History/WebHistory.mm:
(WebHistoryWriter::writeHistoryItems):
* History/WebHistoryItem.mm:

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

5 years agoMove lastVisitWasHTTPNonGet out to WebHistoryItem
andersca@apple.com [Sun, 26 Jan 2014 21:21:39 +0000 (21:21 +0000)]
Move lastVisitWasHTTPNonGet out to WebHistoryItem
https://bugs.webkit.org/show_bug.cgi?id=127657

Reviewed by Dan Bernstein.

Source/WebCore:

Remove m_lastVisitWasHTTPNonGet, it's only used by WebKit.

* history/HistoryItem.cpp:
(WebCore::HistoryItem::HistoryItem):
(WebCore::HistoryItem::reset):
* history/HistoryItem.h:

Source/WebKit/mac:

Keep track of _lastVisitWasHTTPNonGet inside WebHistoryItem.

* History/WebHistory.mm:
(-[WebHistory _visitedURL:withTitle:method:wasFailure:increaseVisitCount:]):
Set entry->_private->_lastVisitWasHTTPNonGet.

* History/WebHistoryItem.h:
Change @private to @package so we can get at WebHistoryItemPrivate from WebHistory.

* History/WebHistoryItem.mm:
(-[WebHistoryItem copyWithZone:]):
Assign _private->_lastVisitWasHTTPNonGet.

(-[WebHistoryItem initFromDictionaryRepresentation:]):
Set _private->_lastVisitWasHTTPNonGet.

* History/WebHistoryItemInternal.h:
Move WebHistoryItemPrivate interface here.

Source/WebKit/win:

Remove uses of lastVisitWasHTTPNonGet.

* WebHistory.cpp:
(WebHistory::visitedURL):
* WebHistoryItem.cpp:
(WebHistoryItem::initFromDictionaryRepresentation):
(WebHistoryItem::lastVisitWasHTTPNonGet):
(WebHistoryItem::setLastVisitWasHTTPNonGet):

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

5 years agoUnreviewed Apple Windows port rebaseline after r162803.
zalan@apple.com [Sun, 26 Jan 2014 20:04:29 +0000 (20:04 +0000)]
Unreviewed Apple Windows port rebaseline after r162803.

* platform/win/editing/selection/3690703-2-expected.txt: Added.
* platform/win/editing/selection/3690703-expected.txt: Added.
* platform/win/editing/selection/3690719-expected.txt: Added.
* platform/win/editing/selection/4397952-expected.txt: Added.
* platform/win/editing/selection/5240265-expected.txt: Added.
* platform/win/editing/selection/selection-button-text-expected.txt: Added.
* platform/win/fast/block/float/float-avoidance-expected.txt: Added.
* platform/win/fast/css/continuationCrash-expected.txt: Added.
* platform/win/fast/css/margin-top-bottom-dynamic-expected.txt: Added.
* platform/win/fast/dom/HTMLTextAreaElement/reset-textarea-expected.txt: Added.
* platform/win/fast/forms/001-expected.txt: Added.
* platform/win/fast/forms/blankbuttons-expected.txt: Added.
* platform/win/fast/forms/button-table-styles-expected.txt: Added.
* platform/win/fast/forms/control-restrict-line-height-expected.txt: Added.
* platform/win/fast/forms/file/file-input-direction-expected.txt: Added.
* platform/win/fast/forms/file/input-file-re-render-expected.txt: Added.
* platform/win/fast/forms/formmove3-expected.txt: Added.
* platform/win/fast/forms/input-appearance-height-expected.txt: Added.
* platform/win/fast/forms/input-button-sizes-expected.txt: Added.
* platform/win/fast/forms/input-value-expected.txt: Added.
* platform/win/fast/forms/targeted-frame-submission-expected.txt: Added.
* platform/win/fast/html/details-replace-summary-child-expected.txt: Added.
* platform/win/fast/html/details-replace-text-expected.txt: Added.
* platform/win/fast/overflow/scroll-nested-positioned-layer-in-overflow-expected.txt: Added.
* platform/win/fast/overflow/scrollRevealButton-expected.txt: Added.
* platform/win/fast/replaced/width100percent-button-expected.txt: Added.
* platform/win/fast/text/textIteratorNilRenderer-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug138725-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug18359-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug2479-3-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug2479-4-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug26178-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug28928-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug33855-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug39209-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug4429-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug46368-1-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug46368-2-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug51037-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug51727-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug52505-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug52506-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug60749-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug7342-expected.txt: Added.
* platform/win/tables/mozilla/collapsing_borders/bug41262-4-expected.txt: Added.
* platform/win/tables/mozilla/dom/tableDom-expected.txt: Added.
* platform/win/tables/mozilla/other/move_row-expected.txt: Added.
* platform/win/tables/mozilla_expected_failures/bugs/bug1725-expected.txt: Added.
* platform/win/tables/mozilla_expected_failures/bugs/bug2479-5-expected.txt: Added.
* platform/win/tables/mozilla_expected_failures/bugs/bug58402-2-expected.txt: Added.

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

5 years agoTurn WebHistoryItemPrivate back into a real Objective-C class
andersca@apple.com [Sun, 26 Jan 2014 18:54:11 +0000 (18:54 +0000)]
Turn WebHistoryItemPrivate back into a real Objective-C class
https://bugs.webkit.org/show_bug.cgi?id=127653

Reviewed by Sam Weinig.

This is a first step towards moving some history specific code from WebCore::HistoryItem back into WebKit.

* History/WebHistoryItem.mm:
(-[WebHistoryItem dealloc]):
(-[WebHistoryItem finalize]):
(-[WebHistoryItem initWithWebCoreHistoryItem:]):

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

5 years agoSubpixel Layout: Align <input type="button", submit etc (PushButtonPart) top and...
zalan@apple.com [Sun, 26 Jan 2014 18:28:26 +0000 (18:28 +0000)]
Subpixel Layout: Align <input type="button", submit etc (PushButtonPart) top and bottom paddings with <button>
https://bugs.webkit.org/show_bug.cgi?id=127640

Reviewed by Simon Fraser.

<button> sets padding-top: 2px and padding-bottom: 3px as default values (html.css),
while <input type="button" (submit, etc) has the hardcoded values of 0, 0 and we center the text using the available space.
This results in different baseline text position in normal cases. This adjustment puts the <input type='button'
rendering back to the pre-subpixel layout state.

Source/WebCore:

* platform/mac/ThemeMac.mm:
(WebCore::ThemeMac::controlPadding):

LayoutTests:

* platform/mac/css3/flexbox/button-expected.txt:
* platform/mac/editing/selection/3690703-2-expected.txt:
* platform/mac/editing/selection/3690703-expected.txt:
* platform/mac/editing/selection/3690719-expected.txt:
* platform/mac/editing/selection/4397952-expected.txt:
* platform/mac/editing/selection/5240265-expected.txt:
* platform/mac/editing/selection/selection-button-text-expected.txt:
* platform/mac/fast/block/float/float-avoidance-expected.txt:
* platform/mac/fast/css/continuationCrash-expected.txt:
* platform/mac/fast/css/margin-top-bottom-dynamic-expected.txt:
* platform/mac/fast/css/rtl-ordering-expected.txt:
* platform/mac/fast/dom/HTMLTextAreaElement/reset-textarea-expected.txt:
* platform/mac/fast/forms/001-expected.png:
* platform/mac/fast/forms/001-expected.txt:
* platform/mac/fast/forms/basic-buttons-expected.png:
* platform/mac/fast/forms/basic-buttons-expected.txt:
* platform/mac/fast/forms/blankbuttons-expected.txt:
* platform/mac/fast/forms/box-shadow-override-expected.png:
* platform/mac/fast/forms/box-shadow-override-expected.txt:
* platform/mac/fast/forms/button-positioned-expected.png:
* platform/mac/fast/forms/button-positioned-expected.txt:
* platform/mac/fast/forms/button-sizes-expected.png:
* platform/mac/fast/forms/button-sizes-expected.txt:
* platform/mac/fast/forms/button-style-color-expected.png:
* platform/mac/fast/forms/button-style-color-expected.txt:
* platform/mac/fast/forms/button-table-styles-expected.png:
* platform/mac/fast/forms/button-table-styles-expected.txt:
* platform/mac/fast/forms/button-text-transform-expected.png:
* platform/mac/fast/forms/button-text-transform-expected.txt:
* platform/mac/fast/forms/control-restrict-line-height-expected.png:
* platform/mac/fast/forms/control-restrict-line-height-expected.txt:
* platform/mac/fast/forms/file/file-input-direction-expected.png:
* platform/mac/fast/forms/file/file-input-direction-expected.txt:
* platform/mac/fast/forms/file/file-input-disabled-expected.txt:
* platform/mac/fast/forms/file/input-file-re-render-expected.txt:
* platform/mac/fast/forms/form-element-geometry-expected.png:
* platform/mac/fast/forms/form-element-geometry-expected.txt:
* platform/mac/fast/forms/formmove3-expected.txt:
* platform/mac/fast/forms/input-appearance-height-expected.png:
* platform/mac/fast/forms/input-appearance-height-expected.txt:
* platform/mac/fast/forms/input-button-sizes-expected.png:
* platform/mac/fast/forms/input-button-sizes-expected.txt:
* platform/mac/fast/forms/input-value-expected.png:
* platform/mac/fast/forms/input-value-expected.txt:
* platform/mac/fast/forms/targeted-frame-submission-expected.txt:
* platform/mac/fast/forms/validation-message-appearance-expected.png:
* platform/mac/fast/forms/validation-message-appearance-expected.txt:
* platform/mac/fast/html/details-replace-summary-child-expected.txt:
* platform/mac/fast/html/details-replace-text-expected.txt:
* platform/mac/fast/overflow/scroll-nested-positioned-layer-in-overflow-expected.txt:
* platform/mac/fast/overflow/scrollRevealButton-expected.txt:
* platform/mac/fast/replaced/replaced-breaking-expected.txt:
* platform/mac/fast/replaced/width100percent-button-expected.txt:
* platform/mac/fast/text/textIteratorNilRenderer-expected.txt:
* platform/mac/http/tests/navigation/javascriptlink-frames-expected.txt:
* platform/mac/svg/custom/foreign-object-skew-expected.txt: Added.
* platform/mac/tables/mozilla/bugs/bug1188-expected.txt:
* platform/mac/tables/mozilla/bugs/bug1318-expected.txt:
* platform/mac/tables/mozilla/bugs/bug138725-expected.txt:
* platform/mac/tables/mozilla/bugs/bug18359-expected.txt:
* platform/mac/tables/mozilla/bugs/bug2479-2-expected.txt:
* platform/mac/tables/mozilla/bugs/bug2479-3-expected.txt:
* platform/mac/tables/mozilla/bugs/bug2479-4-expected.txt:
* platform/mac/tables/mozilla/bugs/bug26178-expected.txt:
* platform/mac/tables/mozilla/bugs/bug28928-expected.txt:
* platform/mac/tables/mozilla/bugs/bug33855-expected.txt:
* platform/mac/tables/mozilla/bugs/bug39209-expected.txt:
* platform/mac/tables/mozilla/bugs/bug4429-expected.txt:
* platform/mac/tables/mozilla/bugs/bug46368-1-expected.txt:
* platform/mac/tables/mozilla/bugs/bug46368-2-expected.txt:
* platform/mac/tables/mozilla/bugs/bug51037-expected.txt:
* platform/mac/tables/mozilla/bugs/bug51727-expected.txt:
* platform/mac/tables/mozilla/bugs/bug52505-expected.txt:
* platform/mac/tables/mozilla/bugs/bug52506-expected.txt:
* platform/mac/tables/mozilla/bugs/bug60749-expected.txt:
* platform/mac/tables/mozilla/bugs/bug7342-expected.txt:
* platform/mac/tables/mozilla/collapsing_borders/bug41262-4-expected.txt:
* platform/mac/tables/mozilla/dom/tableDom-expected.txt:
* platform/mac/tables/mozilla/other/move_row-expected.txt:
* platform/mac/tables/mozilla_expected_failures/bugs/bug1725-expected.txt:
* platform/mac/tables/mozilla_expected_failures/bugs/bug2479-5-expected.txt:
* platform/mac/tables/mozilla_expected_failures/bugs/bug58402-2-expected.txt:

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

5 years agoUnreviewed GTK gardening. Rebaselining after r162553, r162742, r162791 and possibly...
zandobersek@gmail.com [Sun, 26 Jan 2014 13:33:44 +0000 (13:33 +0000)]
Unreviewed GTK gardening. Rebaselining after r162553, r162742, r162791 and possibly other revisions.

* platform/gtk/css1/box_properties/padding-expected.txt:
* platform/gtk/css1/box_properties/padding_top-expected.txt:
* platform/gtk/css1/formatting_model/vertical_formatting-expected.txt:
* platform/gtk/css2.1/t080301-c411-vt-mrgn-00-b-expected.txt:
* platform/gtk/css2.1/t0804-c5510-padn-00-b-ag-expected.txt:
* platform/gtk/css2.1/t0905-c414-flt-wrap-00-e-expected.txt:
* platform/gtk/css3/selectors3/html/css3-modsel-25-expected.txt:
* platform/gtk/css3/selectors3/html/css3-modsel-70-expected.txt:
* platform/gtk/css3/selectors3/xhtml/css3-modsel-25-expected.txt:
* platform/gtk/css3/selectors3/xhtml/css3-modsel-70-expected.txt:
* platform/gtk/css3/selectors3/xml/css3-modsel-25-expected.txt:
* platform/gtk/css3/selectors3/xml/css3-modsel-70-expected.txt:
* platform/gtk/fast/block/basic/011-expected.txt:
* platform/gtk/fast/block/float/032-expected.txt:
* platform/gtk/fast/block/margin-collapse/103-expected.txt:
* platform/gtk/fast/css/empty-pseudo-class-expected.txt:
* platform/gtk/fast/css/fieldset-display-row-expected.txt:
* platform/gtk/fast/css/first-child-pseudo-class-expected.txt:
* platform/gtk/fast/css/input-search-padding-expected.txt:
* platform/gtk/fast/css/last-child-pseudo-class-expected.txt:
* platform/gtk/fast/css/non-standard-checkbox-size-expected.txt:
* platform/gtk/fast/css/only-child-pseudo-class-expected.txt:
* platform/gtk/fast/forms/001-expected.txt:
* platform/gtk/fast/forms/basic-inputs-expected.txt:
* platform/gtk/fast/forms/box-shadow-override-expected.txt:
* platform/gtk/fast/forms/file/file-input-disabled-expected.txt:
* platform/gtk/fast/forms/form-element-geometry-expected.txt:
* platform/gtk/fast/forms/formmove-expected.txt:
* platform/gtk/fast/forms/formmove2-expected.txt:
* platform/gtk/fast/forms/indeterminate-expected.txt:
* platform/gtk/fast/forms/input-appearance-height-expected.txt:
* platform/gtk/fast/forms/input-text-word-wrap-expected.txt:
* platform/gtk/fast/forms/input-value-expected.txt:
* platform/gtk/fast/forms/large-toggle-elements-expected.txt:
* platform/gtk/fast/inline/positionedLifetime-expected.txt:
* platform/gtk/fast/parser/bad-xml-slash-expected.txt:
* platform/gtk/fast/repaint/reflection-redraw-expected.txt:
* platform/gtk/fast/replaced/replaced-breaking-expected.txt:
* platform/gtk/fast/replaced/width100percent-checkbox-expected.txt:
* platform/gtk/fast/replaced/width100percent-radio-expected.txt:
* platform/gtk/fast/table/dynamic-caption-add-remove-before-child-expected.txt:
* platform/gtk/fast/text/textIteratorNilRenderer-expected.txt:
* platform/gtk/fast/text/whitespace/normal-after-nowrap-breaking-expected.txt:
* platform/gtk/http/tests/navigation/javascriptlink-frames-expected.txt:
* platform/gtk/tables/mozilla/bugs/bug1318-expected.txt:
* platform/gtk/tables/mozilla/bugs/bug4527-expected.txt:
* platform/gtk/tables/mozilla/marvin/body_col-expected.txt:
* platform/gtk/tables/mozilla/marvin/x_th_valign_baseline-expected.txt:
* platform/gtk/tables/mozilla/other/body_col-expected.txt:
* platform/gtk/tables/mozilla_expected_failures/bugs/bug10140-expected.txt:
* platform/gtk/tables/mozilla_expected_failures/bugs/bug10216-expected.txt:
* platform/gtk/tables/mozilla_expected_failures/core/captions1-expected.txt:
* platform/gtk/tables/mozilla_expected_failures/core/captions2-expected.txt:
* platform/gtk/tables/mozilla_expected_failures/core/captions3-expected.txt:
* platform/gtk/tables/mozilla_expected_failures/other/test4-expected.txt:

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

5 years agoImprove the bindings of NodeList's name accessor
benjamin@webkit.org [Sun, 26 Jan 2014 10:30:47 +0000 (10:30 +0000)]
Improve the bindings of NodeList's name accessor
https://bugs.webkit.org/show_bug.cgi?id=127358

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-26
Reviewed by Geoffrey Garen.

Source/WebCore:

When accessing an item of NodeList by name, the default bindings was
going through the list of node twice:
-First, getOwnProperty calls canGetItemsForName() to find if a property exists for
 the given name. This in turn used NodeList::namedItem() which is a slow operation.
-Then, the value itself was queried through nameGetter(), calling NodeList::namedItem()
 a second time to find the same value.

This patch kills the default name getter in favor of a getOwnPropertySlotDelegate() returning
the value directly on the PropertySlot.

Ad Hoc testing show about 15% speed up for simple cases.

* bindings/js/JSNodeListCustom.cpp:
(WebCore::JSNodeList::getOwnPropertySlotDelegate):
* dom/NodeList.idl:

LayoutTests:

* fast/dom/NodeList/nodelist-name-getter-properties-expected.txt: Added.
* fast/dom/NodeList/nodelist-name-getter-properties.html: Added.

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

5 years agoASSERTION FAILED: !m_hasPendingCharacter
benjamin@webkit.org [Sun, 26 Jan 2014 10:26:44 +0000 (10:26 +0000)]
ASSERTION FAILED: !m_hasPendingCharacter
https://bugs.webkit.org/show_bug.cgi?id=110118

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-01-26
Reviewed by Sam Weinig.

Add more test coverage for r144552 with a use case that use to hit the assertion.

* fast/dom/xml-parser-entity-in-attribute-value-expected.txt: Added.
* fast/dom/xml-parser-entity-in-attribute-value.html: Added.

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

5 years agoWeb Inspector: Move InspectorDebuggerAgent into JavaScriptCore
joepeck@webkit.org [Sun, 26 Jan 2014 08:39:12 +0000 (08:39 +0000)]
Web Inspector: Move InspectorDebuggerAgent into JavaScriptCore
https://bugs.webkit.org/show_bug.cgi?id=127629

Rubber-stamped by Sam Weinig.

Source/JavaScriptCore:

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
* JavaScriptCore.xcodeproj/project.pbxproj:
- Add new files to the build.
- Also, since non REMOTE_INSPECTOR ports cannot yet connect to a
  JSGlobalObject for inspection remove those files as they don't
  need to be built.

* inspector/EventLoop.cpp: Added.
(Inspector::EventLoop::cycle):
* inspector/EventLoop.h: Added.
(Inspector::EventLoop::EventLoop):
(Inspector::EventLoop::ended):
Add a JavaScriptCore version of EventLoop. This is currently only
used by the Mac port for JSGlobalObject remote inspection. Keep
the WebCore/platform version alive because for the Mac port it does
slightly different things involving AppKit.

* inspector/JSGlobalObjectInspectorController.cpp:
(Inspector::JSGlobalObjectInspectorController::JSGlobalObjectInspectorController):
Create DebuggerAgent and hook up ScriptDebugServer where needed.

* inspector/JSGlobalObjectScriptDebugServer.cpp: Added.
(Inspector::JSGlobalObjectScriptDebugServer::JSGlobalObjectScriptDebugServer):
(Inspector::JSGlobalObjectScriptDebugServer::addListener):
(Inspector::JSGlobalObjectScriptDebugServer::removeListener):
(Inspector::JSGlobalObjectScriptDebugServer::recompileAllJSFunctions):
(Inspector::JSGlobalObjectScriptDebugServer::runEventLoopWhilePaused):
* inspector/JSGlobalObjectScriptDebugServer.h: Added.
Simple implementation of ScriptDebugServer with a JSGlobalObject.

* inspector/agents/InspectorDebuggerAgent.cpp: Renamed from Source/WebCore/inspector/InspectorDebuggerAgent.cpp.
* inspector/agents/InspectorDebuggerAgent.h: Renamed from Source/WebCore/inspector/InspectorDebuggerAgent.h.
Copied from WebCore. A few methods need to be made virtual so that Web implementations
can override and extend the funcitonality. E.g. sourceMapURLForScript and enable/disable.

* inspector/agents/JSGlobalObjectDebuggerAgent.cpp: Added.
* inspector/agents/JSGlobalObjectDebuggerAgent.h: Added.
(Inspector::JSGlobalObjectDebuggerAgent::JSGlobalObjectDebuggerAgent):
(Inspector::JSGlobalObjectDebuggerAgent::startListeningScriptDebugServer):
(Inspector::JSGlobalObjectDebuggerAgent::stopListeningScriptDebugServer):
(Inspector::JSGlobalObjectDebuggerAgent::injectedScriptForEval):
Simple implementation of DebuggerAGent with a JSGlobalObject.

Source/WebCore:

Test: inspector-protocol/debugger/pause-on-assert.html

* CMakeLists.txt:
* ForwardingHeaders/inspector/agents/InspectorDebuggerAgent.h: Added.
* GNUmakefile.list.am:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* inspector/InspectorAllInOne.cpp:
- Remove InspectorDebuggerAgent.
- Add WebDebuggerAgent (shared between Page and Worker).

* inspector/WebDebuggerAgent.h: Added.
(WebCore::WebDebuggerAgent::~WebDebuggerAgent):
* inspector/WebDebuggerAgent.cpp: Added.
(WebCore::WebDebuggerAgent::WebDebuggerAgent):
(WebCore::WebDebuggerAgent::enable):
(WebCore::WebDebuggerAgent::disable):
Shared code for Page and Worker debugger agents.
Instrumenting agents is a concept in WebCore only,
and the Debugger agent is only in the instrumenting
agents list when it is enabled and removed when disabled.

* inspector/InstrumentingAgents.h:
(WebCore::InstrumentingAgents::inspectorDebuggerAgent):
(WebCore::InstrumentingAgents::setInspectorDebuggerAgent):
* inspector/InspectorDOMDebuggerAgent.cpp:
* inspector/InspectorDOMDebuggerAgent.h:
Update namespace for debugger agent.

* inspector/InspectorInstrumentation.cpp:
(WebCore::isConsoleAssertMessage):
(WebCore::InspectorInstrumentation::addMessageToConsoleImpl):
DebuggerAgent in JavaScriptCore does not yet know about console
types. So temporarily handle it here. We need to give JavaScriptCore
some concept of Console messages and types.

* inspector/PageDebuggerAgent.cpp:
(WebCore::PageDebuggerAgent::PageDebuggerAgent):
(WebCore::PageDebuggerAgent::enable):
(WebCore::PageDebuggerAgent::disable):
(WebCore::PageDebuggerAgent::sourceMapURLForScript):
(WebCore::PageDebuggerAgent::injectedScriptForEval):
* inspector/PageDebuggerAgent.h:
* inspector/WorkerDebuggerAgent.cpp:
(WebCore::WorkerDebuggerAgent::WorkerDebuggerAgent):
(WebCore::WorkerDebuggerAgent::injectedScriptForEval):
* inspector/WorkerDebuggerAgent.h:
Modernize the Page and Worker debugger agents.

* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
* inspector/InspectorController.h:
* inspector/WorkerInspectorController.cpp:
(WebCore::WorkerInspectorController::WorkerInspectorController):
New constructors for the debugger agents.

LayoutTests:

Add a test that we pause in the debugger for console.assert failures
when the DebuggerAgent is enabled.

* inspector-protocol/debugger/pause-on-assert-expected.txt: Added.
* inspector-protocol/debugger/pause-on-assert.html: Added.
* inspector-protocol/debugger/resources/assert.js: Added.
(assertTrue):
(assertFalse):
(assertCondition):
(assertConditionWithMessage):

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

5 years agoGardening: fix build breakage from previous commit.
mark.lam@apple.com [Sun, 26 Jan 2014 06:53:00 +0000 (06:53 +0000)]
Gardening: fix build breakage from previous commit.

Not reviewed.

* profiler/ProfileNode.cpp:
(JSC::ProfileNode::debugPrintData):
- Removed obsolete references to "visible" timers.

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

5 years agoRemove dead code from the JSC profiler.
timothy@apple.com [Sun, 26 Jan 2014 06:30:38 +0000 (06:30 +0000)]
Remove dead code from the JSC profiler.

https://bugs.webkit.org/show_bug.cgi?id=127643

Reviewed by Mark Lam.

Source/JavaScriptCore:

* profiler/Profile.cpp:
* profiler/Profile.h:
* profiler/ProfileGenerator.cpp:
(JSC::ProfileGenerator::stopProfiling):
* profiler/ProfileNode.cpp:
(JSC::ProfileNode::ProfileNode):
(JSC::ProfileNode::stopProfiling):
(JSC::ProfileNode::endAndRecordCall):
(JSC::ProfileNode::debugPrintData):
(JSC::ProfileNode::debugPrintDataSampleStyle):
* profiler/ProfileNode.h:
(JSC::ProfileNode::totalTime):
(JSC::ProfileNode::setTotalTime):
(JSC::ProfileNode::selfTime):
(JSC::ProfileNode::setSelfTime):
(JSC::ProfileNode::totalPercent):
(JSC::ProfileNode::selfPercent):
Remove support for things like focus and exclude. The Inspector does those in JS now.

Source/WebCore:

Passes existing tests in fast/profiler.

* bindings/js/ScriptProfile.cpp:
(WebCore::buildInspectorObjectFor): Remove visible.
* inspector/ScriptProfileNode.idl: Ditto.
* inspector/protocol/Profiler.json: Ditto.

Source/WebInspectorUI:

* Versions/Inspector-iOS-7.0.json: Remove visible from CPUProfileNode.

LayoutTests:

* fast/profiler/resources/profiler-test-JS-resources.js:
(printProfileNodeWithoutTime): Don't use visible. It was always true.

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

5 years agoRemove unused support for DRAGGABLE_REGION
commit-queue@webkit.org [Sun, 26 Jan 2014 06:25:55 +0000 (06:25 +0000)]
Remove unused support for DRAGGABLE_REGION
https://bugs.webkit.org/show_bug.cgi?id=127642

Patch by Sam Weinig <sam@webkit.org> on 2014-01-25
Reviewed by Simon Fraser.

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

* Configurations/FeatureDefines.xcconfig:
* DerivedSources.make:
* WebCore.exp.in:
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::propertyValue):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
* css/CSSPropertyNames.in:
* css/CSSValueKeywords.in:
* css/StyleResolver.cpp:
(WebCore::StyleResolver::applyProperty):
* dom/Document.cpp:
(WebCore::Document::Document):
* dom/Document.h:
* page/Chrome.cpp:
* page/ChromeClient.h:
* page/FrameView.cpp:
(WebCore::FrameView::layout):
(WebCore::FrameView::paintContents):
* page/FrameView.h:
* rendering/RenderElement.cpp:
(WebCore::RenderElement::styleWillChange):
* rendering/RenderInline.cpp:
(WebCore::RenderInline::addAnnotatedRegions):
* rendering/RenderInline.h:
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::scrollTo):
(WebCore::RenderLayer::setHasHorizontalScrollbar):
(WebCore::RenderLayer::setHasVerticalScrollbar):
(WebCore::RenderLayer::updateScrollbarsAfterLayout):
* rendering/RenderListBox.cpp:
(WebCore::RenderListBox::setHasVerticalScrollbar):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::addAnnotatedRegions):
* rendering/RenderObject.h:
(WebCore::AnnotatedRegionValue::operator==):
* rendering/style/RenderStyle.h:
* rendering/style/RenderStyleConstants.h:
* rendering/style/StyleRareNonInheritedData.cpp:
(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator==):
* rendering/style/StyleRareNonInheritedData.h:

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

* Configurations/FeatureDefines.xcconfig:

Source/WTF:

* wtf/FeatureDefines.h:

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

5 years agoRemove FIXME in CSSKeywordCompletions.js about "inherit" keyword
commit-queue@webkit.org [Sun, 26 Jan 2014 04:15:18 +0000 (04:15 +0000)]
Remove FIXME in CSSKeywordCompletions.js about "inherit" keyword
https://bugs.webkit.org/show_bug.cgi?id=127638

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-01-25
Reviewed by Timothy Hatcher.

* UserInterface/CSSKeywordCompletions.js:
(WebInspector.CSSKeywordCompletions.forProperty):
Replace FIXME with a descriptive comment about why the code is what it is.

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

5 years agoAdd FALLTHROUGH and -Wimplicit-fallthrough to warn about unannotated implicit fallthr...
commit-queue@webkit.org [Sun, 26 Jan 2014 03:54:55 +0000 (03:54 +0000)]
Add FALLTHROUGH and -Wimplicit-fallthrough to warn about unannotated implicit fallthroughs in switches
https://bugs.webkit.org/show_bug.cgi?id=127637

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-01-25
Reviewed by Darin Adler.

For information about [[clang::fallthrough]], see:
<http://clang.llvm.org/docs/LanguageExtensions.html#the-clang-fallthrough-attribute>

* Configurations/Base.xcconfig:
Enable -Wimplicit-fallthrough warnings.

* wtf/Compiler.h:
Define FALLTHROUGH on clang and fallback to outputing nothing when unsupported.

* wtf/dtoa/fast-dtoa.cc:
* wtf/unicode/UTF8.cpp:
(WTF::Unicode::convertLatin1ToUTF8):
(WTF::Unicode::convertUTF16ToUTF8):
(WTF::Unicode::isLegalUTF8):
(WTF::Unicode::readUTF8Sequence):
Explicitly annotate implicit fallthroughs with FALLTHROUGH.

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

5 years agoClean up SVGPatternElement::collectPatternAttributes
gyuyoung.kim@samsung.com [Sun, 26 Jan 2014 03:43:21 +0000 (03:43 +0000)]
Clean up SVGPatternElement::collectPatternAttributes
https://bugs.webkit.org/show_bug.cgi?id=127612

Reviewed by Andreas Kling.

This patch refactors SVGPatternElement::collectPatternAttributes() by extracting
the setPatternAttributes logic into a new function. This patch also changes the
while loop to be easier to understand and similar to collectGradientAttributes.

* svg/SVGPatternElement.cpp:
(WebCore::setPatternAttributes):
(WebCore::SVGPatternElement::collectPatternAttributes):

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

5 years agoSubpixel layout: RenderInline is not centered when child RenderTextControl's innerTex...
zalan@apple.com [Sun, 26 Jan 2014 01:27:28 +0000 (01:27 +0000)]
Subpixel layout: RenderInline is not centered when child RenderTextControl's innerTextRenderer needs bias centering.
https://bugs.webkit.org/show_bug.cgi?id=125659

Source/WebCore:

Reviewed by Andreas Kling

layoutMod(logicalHeightDiff, 2) fails to bias round when subpixel layout is enabled. It sets
the denominator value to 2, which returns incorrect modulo result.
(subpixel off: 3px % 2 = 1 vs subpixel on: (3px * 64) -> 192 % 2 = 0)

Covered by existing tests.

* platform/LayoutUnit.h:
* rendering/RenderSearchField.cpp:
(WebCore::RenderSearchField::centerContainerIfNeeded):
* rendering/RenderTextControlSingleLine.cpp:
(WebCore::RenderTextControlSingleLine::centerRenderer):
(WebCore::RenderTextControlSingleLine::layout):
* rendering/RenderTextControlSingleLine.h:

LayoutTests:

Reviewed by Andreas Kling.

layoutMod(logicalHeightDiff, 2) fails to bias round when subpixel layout is enabled. It sets
the denominator value to 2, which returns incorrect modulo result.
(subpixel off: 3px % 2 = 1 vs subpixel on: (3px * 64) -> 192 % 2 = 0)

Covered by existing tests.

* platform/mac/fast/block/float/032-expected.txt:
* platform/mac/fast/forms/search-vertical-alignment-expected.png:
* platform/mac/fast/forms/search-vertical-alignment-expected.txt:
* platform/mac-mountainlion/fast/forms/search-vertical-alignment-expected.txt:

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

5 years agoWeb Inspector: Position the completion suggestions popup below if there is room
commit-queue@webkit.org [Sun, 26 Jan 2014 01:08:21 +0000 (01:08 +0000)]
Web Inspector: Position the completion suggestions popup below if there is room
https://bugs.webkit.org/show_bug.cgi?id=127615

Patch by Diego Pino Garcia <dpino@igalia.com> on 2014-01-25
Reviewed by Joseph Pecoraro.

* UserInterface/CompletionSuggestionsView.js:
(WebInspector.CompletionSuggestionsView.prototype.show):

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

5 years agoRemove more unnecessary #if PLATFORM(IOS)s in ApplicationCacheStorage.cpp
weinig@apple.com [Sun, 26 Jan 2014 00:50:21 +0000 (00:50 +0000)]
Remove more unnecessary #if PLATFORM(IOS)s in ApplicationCacheStorage.cpp
https://bugs.webkit.org/show_bug.cgi?id=127635

Reviewed by Antti Koivisto.

* loader/appcache/ApplicationCacheStorage.cpp:
(WebCore::ApplicationCacheStorage::executeSQLCommand):
(WebCore::ApplicationCacheStorage::verifySchemaVersion):
(WebCore::ApplicationCacheStorage::executeStatement):
(WebCore::ApplicationCacheStorage::store):
(WebCore::ApplicationCacheStorage::ensureOriginRecord):
(WebCore::ApplicationCacheStorage::loadCache):

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

5 years agoRemove some iOS #ifdefs by adding SQLiteDatabaseTracker to all the builds
weinig@apple.com [Sun, 26 Jan 2014 00:36:23 +0000 (00:36 +0000)]
Remove some iOS #ifdefs by adding SQLiteDatabaseTracker to all the builds
https://bugs.webkit.org/show_bug.cgi?id=127632

Reviewed by Darin Adler.

Move the SQLiteDatabaseTracker and client from platform/sql/ios to platform/sql,
as there is nothing iOS specific about it. Then, un-#ifdef all its uses. For
ports that don't setup a client, this has no change in behavior.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Modules/webdatabase/DatabaseBackendBase.cpp:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* loader/appcache/ApplicationCacheStorage.cpp:
* platform/ScrollableArea.h:
(WebCore::ScrollableArea::sendWillRevealEdgeEventsIfNeeded):
* platform/sql/SQLiteDatabaseTracker.cpp: Copied from Source/WebCore/platform/sql/ios/SQLiteDatabaseTracker.cpp.
* platform/sql/SQLiteDatabaseTracker.h: Copied from Source/WebCore/platform/sql/ios/SQLiteDatabaseTracker.h.
* platform/sql/SQLiteDatabaseTrackerClient.h: Copied from Source/WebCore/platform/sql/ios/SQLiteDatabaseTrackerClient.h.
* platform/sql/ios: Removed.
* platform/sql/ios/SQLiteDatabaseTracker.cpp: Removed.
* platform/sql/ios/SQLiteDatabaseTracker.h: Removed.
* platform/sql/ios/SQLiteDatabaseTrackerClient.h: Removed.
* storage/StorageAreaSync.cpp:
(WebCore::StorageAreaSync::openDatabase):
(WebCore::StorageAreaSync::sync):
* storage/StorageTracker.cpp:

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

5 years agoRemove an unused FrameLoaderClient function
andersca@apple.com [Sat, 25 Jan 2014 23:04:54 +0000 (23:04 +0000)]
Remove an unused FrameLoaderClient function
https://bugs.webkit.org/show_bug.cgi?id=127628

Reviewed by Andreas Kling.

Source/WebCore:

All implementations of FrameLoaderClient::shouldStopLoadingForHistoryItem return true and this function
was only used by Chromium so we can get rid of it.

* loader/EmptyClients.h:
* loader/FrameLoaderClient.h:
* loader/HistoryController.cpp:
(WebCore::HistoryController::shouldStopLoadingForHistoryItem):

Source/WebKit/efl:

* WebCoreSupport/FrameLoaderClientEfl.cpp:
* WebCoreSupport/FrameLoaderClientEfl.h:

Source/WebKit/gtk:

* WebCoreSupport/FrameLoaderClientGtk.cpp:
* WebCoreSupport/FrameLoaderClientGtk.h:

Source/WebKit/mac:

* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:

Source/WebKit/win:

* WebCoreSupport/WebFrameLoaderClient.cpp:
* WebCoreSupport/WebFrameLoaderClient.h:

Source/WebKit/wince:

* WebCoreSupport/FrameLoaderClientWinCE.cpp:
* WebCoreSupport/FrameLoaderClientWinCE.h:

Source/WebKit2:

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.h:

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

5 years agoTry to fix Mac build.
darin@apple.com [Sat, 25 Jan 2014 22:58:43 +0000 (22:58 +0000)]
Try to fix Mac build.

* runtime/DatePrototype.cpp: Put the include of <unicode/udat.h> inside
a conditional since we don't have that header in our Mac build configuration.

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

5 years agoCall deprecatedCharacters instead of characters at more call sites
darin@apple.com [Sat, 25 Jan 2014 22:47:20 +0000 (22:47 +0000)]
Call deprecatedCharacters instead of characters at more call sites
https://bugs.webkit.org/show_bug.cgi?id=127631

Reviewed by Sam Weinig.

Source/JavaScriptCore:

* API/JSValueRef.cpp:
(JSValueMakeFromJSONString):
* API/OpaqueJSString.cpp:
(OpaqueJSString::~OpaqueJSString):
* bindings/ScriptValue.cpp:
(Deprecated::jsToInspectorValue):
* inspector/ContentSearchUtilities.cpp:
(Inspector::ContentSearchUtilities::createSearchRegexSource):
* inspector/InspectorValues.cpp:
* runtime/Identifier.h:
(JSC::Identifier::deprecatedCharacters):
* runtime/JSStringBuilder.h:
(JSC::JSStringBuilder::append):
Use the new name.

Source/WebCore:

* bindings/objc/WebScriptObject.mm:
(+[WebScriptObject _convertValueToObjcValue:JSC::originRootObject:rootObject:]):
* editing/CompositeEditCommand.cpp:
(WebCore::containsOnlyWhitespace):
* editing/TypingCommand.cpp:
(WebCore::TypingCommand::insertText):
* editing/VisibleUnits.cpp:
(WebCore::startOfParagraph):
(WebCore::endOfParagraph):
* html/parser/HTMLParserIdioms.cpp:
(WebCore::stripLeadingAndTrailingHTMLSpaces):
(WebCore::parseHTMLNonNegativeInteger):
* inspector/InspectorStyleSheet.cpp:
(WebCore::InspectorStyle::newLineAndWhitespaceDelimiters):
* inspector/InspectorStyleTextEditor.cpp:
(WebCore::InspectorStyleTextEditor::insertProperty):
(WebCore::InspectorStyleTextEditor::internalReplaceProperty):
* platform/Length.cpp:
(WebCore::newCoordsArray):
* platform/LinkHash.cpp:
(WebCore::visitedLinkHash):
* platform/graphics/Color.cpp:
(WebCore::Color::parseHexColor):
(WebCore::Color::Color):
* platform/graphics/TextRun.h:
(WebCore::TextRun::TextRun):
* platform/text/TextEncodingRegistry.cpp:
(WebCore::atomicCanonicalTextEncodingName):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::constructTextRun):
* rendering/RenderCombineText.cpp:
(WebCore::RenderCombineText::width):
* svg/SVGFontElement.cpp:
(WebCore::SVGFontElement::registerLigaturesInGlyphCache):
* xml/XPathFunctions.cpp:
(WebCore::XPath::FunId::evaluate):
Use the new name.

Source/WTF:

* wtf/text/StringImpl.cpp:
(WTF::StringImpl::replace):
* wtf/text/WTFString.h:
(WTF::String::isAllSpecialCharacters):
Use the new name.

Tools:

* TestWebKitAPI/Tests/WTF/StringBuilder.cpp:
(TestWebKitAPI::expectBuilderContent):
(TestWebKitAPI::expectEmpty):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WTF/StringImpl.cpp:
(TestWebKitAPI::TEST):
Use the new name.

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

5 years agoAdd a new separate LChar.h header file, to be used after we remove Unicode.h
darin@apple.com [Sat, 25 Jan 2014 22:46:42 +0000 (22:46 +0000)]
Add a new separate LChar.h header file, to be used after we remove Unicode.h
https://bugs.webkit.org/show_bug.cgi?id=127630

Reviewed by Sam Weinig.

* GNUmakefile.list.am: Added the new file
* WTF.vcxproj/WTF.vcxproj: Ditto.
* WTF.vcxproj/WTF.vcxproj.filters: Ditto.
* WTF.xcodeproj/project.pbxproj: Ditto.
* wtf/CMakeLists.txt: Ditto.
* wtf/text/LChar.h: Added.

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

5 years agoGet rid of ICU_UNICODE and WCHAR_UNICODE remnants
darin@apple.com [Sat, 25 Jan 2014 21:36:37 +0000 (21:36 +0000)]
Get rid of ICU_UNICODE and WCHAR_UNICODE remnants
https://bugs.webkit.org/show_bug.cgi?id=127623

Reviewed by Anders Carlsson.

.:

* Source/cmake/OptionsEfl.cmake: Removed ICU_UNICODE and WCHAR_UNICODE flags.
* Source/cmake/OptionsGTK.cmake: Ditto.
* Source/cmake/OptionsWinCE.cmake: Ditto.

Source/JavaScriptCore:

* runtime/DatePrototype.cpp: Removed USE(ICU_UNICODE) checks, since that's always true now.

Source/WebCore:

* CMakeLists.txt: Removed SmartReplaceICU.cpp.
* GNUmakefile.list.am: Ditto.
* PlatformEfl.cmake: Ditto.
* PlatformGTK.cmake: Ditto.

* editing/FrameSelection.cpp:
(WebCore::FrameSelection::modifyMovingRight): Ditto.
(WebCore::FrameSelection::modifyMovingLeft): Ditto.

* editing/SmartReplace.cpp: Moved code here from SmartReplaceICU,
since we always support ICU now. Added some FIXME comments about
bugs and mistakes I spotted in the code as I was moving it.
* editing/SmartReplaceICU.cpp: Removed.

* editing/TextIterator.cpp: Removed unneeded checks.
* platform/ThreadGlobalData.cpp:
(WebCore::ThreadGlobalData::ThreadGlobalData): Ditto.
(WebCore::ThreadGlobalData::destroy): Ditto.
* platform/ThreadGlobalData.h: Ditto.
* platform/URL.cpp:
(WebCore::appendEncodedHostname): Ditto.
* platform/graphics/SurrogatePairAwareTextIterator.cpp: Ditto.
Also removed unneeded "using namespace".
* platform/text/TextCodecICU.cpp: Ditto.
* platform/text/TextEncoding.cpp:
(WebCore::TextEncoding::encode): Ditto.
* platform/text/TextEncodingRegistry.cpp:
(WebCore::extendTextCodecMaps): Ditto.

Source/WTF:

* wtf/CMakeLists.txt: Removed WTF_USE_ICU_UNICODE and
WTF_USE_WCHAR_UNICODE since they are true and false respectively.

* wtf/Platform.h: Removed code to set WTF_USE_ICU_UNICODE.

* wtf/unicode/Collator.h: Removed ifdefs.
* wtf/unicode/CollatorDefault.cpp: Ditto.
* wtf/unicode/Unicode.h: Ditto.
* wtf/unicode/icu/CollatorICU.cpp: Ditto.

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

5 years ago[Mac] Rewrite locale-specific date formatting code to remove strange string creation
darin@apple.com [Sat, 25 Jan 2014 21:31:51 +0000 (21:31 +0000)]
[Mac] Rewrite locale-specific date formatting code to remove strange string creation
https://bugs.webkit.org/show_bug.cgi?id=127624

Reviewed by Anders Carlsson.

* runtime/DatePrototype.cpp:
(JSC::formatLocaleDate): Use some smart pointers and conversion operators we already
have to do the formatting in a more straightforward way.

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

5 years agoGet rid of UnicodeRange.h/cpp, using ICU instead
darin@apple.com [Sat, 25 Jan 2014 21:31:00 +0000 (21:31 +0000)]
Get rid of UnicodeRange.h/cpp, using ICU instead
https://bugs.webkit.org/show_bug.cgi?id=127622

Reviewed by Anders Carlsson.

* CMakeLists.txt: Remove UnicodeRange.h/cpp.
* GNUmakefile.list.am: Ditto.
* WebCore.vcxproj/WebCore.vcxproj: Ditto.
* WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.

* platform/graphics/win/FontCacheWin.cpp:
(WebCore::FontCache::systemFallbackForCharacters): To check if a character has
multiple code pages, use UCHAR_UNIFIED_IDEOGRAPH instead of cRangeSetCJK.
* platform/graphics/wince/FontCacheWinCE.cpp:
(WebCore::FontCache::systemFallbackForCharacters): Ditto. Also, to check if a
character is in the Thai block, use UBLOCK_THAI.

* platform/graphics/wince/FontPlatformData.cpp: Removed include of UnicodeRange.h.

* platform/text/UnicodeRange.cpp: Removed.
* platform/text/UnicodeRange.h: Removed.

* rendering/svg/SVGTextLayoutEngineBaseline.cpp:
(WebCore::SVGTextLayoutEngineBaseline::calculateGlyphOrientationAngle): To figure
out if a character is full width, use UCHAR_EAST_ASIAN_WIDTH, instead of hard-coding
"not Latin or Arabic" as the rule.

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

5 years agoRemove an unnecessary platform #if in BitmapImage(CG)::checkForSolidColor()
timothy_horton@apple.com [Sat, 25 Jan 2014 21:25:58 +0000 (21:25 +0000)]
Remove an unnecessary platform #if in BitmapImage(CG)::checkForSolidColor()
https://bugs.webkit.org/show_bug.cgi?id=127610

Reviewed by Simon Fraser.

* platform/graphics/cg/BitmapImageCG.cpp:
(WebCore::BitmapImage::checkForSolidColor):
Over time, the two sides of this #if !PLATFORM(IOS) converged. Remove the #if
and merge the code. We explicitly use kCGBitmapByteOrder32Big to be correct everywhere.

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

5 years ago[cg] Look in the PNG dictionary for image duration information
timothy_horton@apple.com [Sat, 25 Jan 2014 21:24:10 +0000 (21:24 +0000)]
[cg] Look in the PNG dictionary for image duration information
https://bugs.webkit.org/show_bug.cgi?id=127611
<rdar://problem/15408643>

Reviewed by Simon Fraser.

We should look in the PNG properties dictionary for frame duration and loop count data.

* platform/graphics/cg/ImageSourceCG.cpp:
(WebCore::ImageSource::repetitionCount):
Mush repetitionCount a bit more to make it easier to read (early returns, etc.)
Also, look in the PNG properties dictionary for a loop count.

(WebCore::ImageSource::frameDurationAtIndex):
Look in the PNG properties dictionary for delay time.
Get rid of WebCoreCGImagePropertyGIFUnclampedDelayTime; it hasn't
been needed since Snow Leopard.

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

5 years agoRemove atomicIncrement/atomicDecrement
andersca@apple.com [Sat, 25 Jan 2014 21:16:42 +0000 (21:16 +0000)]
Remove atomicIncrement/atomicDecrement
https://bugs.webkit.org/show_bug.cgi?id=127625

Reviewed by Andreas Kling.

Replace atomicIncrement/atomicDecrement with std::atomic.

Source/JavaScriptCore:

* bytecode/Watchpoint.h:
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::lower):
* profiler/ProfilerDatabase.cpp:
(JSC::Profiler::Database::Database):
(JSC::Profiler::Database::addDatabaseToAtExit):

Source/WebCore:

* Modules/webaudio/AudioContext.cpp:
(WebCore::AudioContext::incrementActiveSourceCount):
(WebCore::AudioContext::decrementActiveSourceCount):
* Modules/webaudio/AudioContext.h:
* Modules/webaudio/AudioNode.cpp:
(WebCore::AudioNode::~AudioNode):
(WebCore::AudioNode::ref):
(WebCore::AudioNode::finishDeref):
* Modules/webaudio/AudioNode.h:
* Modules/webdatabase/OriginLock.h:

Source/WebKit2:

* Platform/IPC/Connection.cpp:
(IPC::Connection::createSyncMessageEncoder):
* Shared/mac/SecItemShim.cpp:
(WebKit::generateSecItemRequestID):
* UIProcess/StatisticsRequest.cpp:
(WebKit::StatisticsRequest::addOutstandingRequest):

Source/WTF:

* wtf/Atomics.h:
* wtf/RefCountedLeakCounter.cpp:
(WTF::RefCountedLeakCounter::~RefCountedLeakCounter):
(WTF::RefCountedLeakCounter::increment):
(WTF::RefCountedLeakCounter::decrement):
* wtf/RefCountedLeakCounter.h:
* wtf/ThreadSafeRefCounted.h:
(WTF::ThreadSafeRefCountedBase::ref):
(WTF::ThreadSafeRefCountedBase::refCount):
(WTF::ThreadSafeRefCountedBase::derefBase):

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

5 years agoSource/WebCore: Unreviewed build fix for WinCairo.
alex.christensen@flexsim.com [Sat, 25 Jan 2014 20:49:23 +0000 (20:49 +0000)]
Source/WebCore: Unreviewed build fix for WinCairo.

* platform/network/curl/CurlDownload.h:
Included wtf/Threading.h for ThreadIdentifier definition.

Source/WebKit: Unreviewed build fix for Win64.

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
Corrected 64-bit linker symbol.

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

5 years agoBuild fix.
andersca@apple.com [Sat, 25 Jan 2014 20:10:46 +0000 (20:10 +0000)]
Build fix.

* WebView/WebViewData.h:

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

5 years agoModernize HashTable threading code
andersca@apple.com [Sat, 25 Jan 2014 19:24:14 +0000 (19:24 +0000)]
Modernize HashTable threading code
https://bugs.webkit.org/show_bug.cgi?id=127621

Reviewed by Darin Adler.

Source/WebCore:

Explicitly include headers that used to be brought in by HashTable.h

* platform/DragData.h:
Change a Windows-specific typedef to avoid having to include WindDef.h from a header.

* platform/audio/AudioSession.h:
* platform/network/cf/SocketStreamHandle.h:

Source/WebKit/win:

Explicitly include headers that used to be brought in by HashTable.h

* WebLocalizableStrings.cpp:

Source/WebKit2:

Explicitly include headers that used to be brought in by HashTable.h

* Shared/BlockingResponseMap.h:

Source/WTF:

Use std::mutex and std::atomic instead of WTF threading primitives.

* wtf/DynamicAnnotations.h:
Include Platform.h here since this file relies on USE macros.

* wtf/HashTable.cpp:
(WTF::HashTableStats::recordCollisionAtCount):
Change this to take an unsigned.

(WTF::HashTableStats::dumpStats):
* wtf/HashTable.h:
(WTF::KeyTraits>::HashTable):
(WTF::KeyTraits>::remove):
(WTF::KeyTraits>::invalidateIterators):
Use a single probe counter.

(WTF::addIterator):
(WTF::removeIterator):

Tools:

Explicitly include headers that used to be brought in by HashTable.h

* DumpRenderTree/JavaScriptThreading.cpp:

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

5 years agoMove CSSGroupingRule, CSSStyleSheet, ElementRuleCollector to std::unique_ptr
zandobersek@gmail.com [Sat, 25 Jan 2014 18:55:51 +0000 (18:55 +0000)]
Move CSSGroupingRule, CSSStyleSheet, ElementRuleCollector to std::unique_ptr
https://bugs.webkit.org/show_bug.cgi?id=127575

Reviewed by Andreas Kling.

Use std::unique_ptr and std::make_unique in place of OwnPtr and adoptPtr
in the CSSGroupingRule, CSSStyleSheet and ElementRuleCollector classes.

* css/CSSFunctionValue.cpp: Remove the unnecessary PassOwnPtr header inclusion.
* css/CSSGroupingRule.cpp:
(WebCore::CSSGroupingRule::cssRules):
* css/CSSGroupingRule.h:
* css/CSSStyleSheet.cpp:
(WebCore::CSSStyleSheet::cssRules):
* css/CSSStyleSheet.h:
* css/ElementRuleCollector.cpp:
(WebCore::ElementRuleCollector::addMatchedRule):
* css/ElementRuleCollector.h:

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

5 years agoMove MediaQueryMatcher, SelectorFilter to std::unique_ptr
zandobersek@gmail.com [Sat, 25 Jan 2014 18:54:02 +0000 (18:54 +0000)]
Move MediaQueryMatcher, SelectorFilter to std::unique_ptr
https://bugs.webkit.org/show_bug.cgi?id=127574

Reviewed by Andreas Kling.

Replace the use of OwnPtr and adoptPtr with std::unique_ptr and std::make_unique
in the MediaQueryMatcher and SelectorFilter classes.

* css/MediaQueryMatcher.cpp:
(WebCore::MediaQueryMatcher::prepareEvaluator):
(WebCore::MediaQueryMatcher::evaluate):
(WebCore::MediaQueryMatcher::addListener):
(WebCore::MediaQueryMatcher::styleResolverChanged):
* css/MediaQueryMatcher.h:
* css/SelectorFilter.cpp:
(WebCore::SelectorFilter::popParentStackFrame):
(WebCore::SelectorFilter::setupParentStack):
* css/SelectorFilter.h:

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

5 years agoMove PropertySetCSSStyleDeclaration, WebKitCSSKeyframesRule to std::unique_ptr
zandobersek@gmail.com [Sat, 25 Jan 2014 18:52:42 +0000 (18:52 +0000)]
Move PropertySetCSSStyleDeclaration, WebKitCSSKeyframesRule to std::unique_ptr
https://bugs.webkit.org/show_bug.cgi?id=127572

Reviewed by Andreas Kling.

Switch the PropertySetCSSStyleDeclaration and WebKitCSSKeyframesRule classes from using
OwnPtr and adoptPtr to using std::unique_ptr and std::make_unique.

* css/PropertySetCSSStyleDeclaration.cpp:
(WebCore::PropertySetCSSStyleDeclaration::cloneAndCacheForCSSOM):
(WebCore::StyleRuleCSSStyleDeclaration::didMutate):
(WebCore::InlineCSSStyleDeclaration::didMutate):
* css/PropertySetCSSStyleDeclaration.h:
* css/WebKitCSSKeyframesRule.cpp:
(WebCore::WebKitCSSKeyframesRule::cssRules):
* css/WebKitCSSKeyframesRule.h:

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

5 years agoMove StyleProperties, StyleResolver to std::unique_ptr
zandobersek@gmail.com [Sat, 25 Jan 2014 18:51:20 +0000 (18:51 +0000)]
Move StyleProperties, StyleResolver to std::unique_ptr
https://bugs.webkit.org/show_bug.cgi?id=127570

Reviewed by Andreas Kling.

Move the StyleProperties and StyleResolver classes from using OwnPtr and adoptPtr
to using std::unique_ptr and std::make_unique.

* css/StyleInvalidationAnalysis.h: Remove the PassOwnPtr.h header inclusion.
* css/StyleProperties.cpp:
(WebCore::MutableStyleProperties::ensureCSSStyleDeclaration):
(WebCore::MutableStyleProperties::ensureInlineCSSStyleDeclaration):
* css/StyleProperties.h:
* css/StyleResolver.cpp:
(WebCore::StyleResolver::StyleResolver):
(WebCore::StyleResolver::addViewportDependentMediaQueryResult):
* css/StyleResolver.h:
* css/StyleScopeResolver.h:

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

5 years agoMove CSSFontFace, CSSFontSelector to std::unique_ptr
zandobersek@gmail.com [Sat, 25 Jan 2014 18:49:50 +0000 (18:49 +0000)]
Move CSSFontFace, CSSFontSelector to std::unique_ptr
https://bugs.webkit.org/show_bug.cgi?id=127569

Reviewed by Andreas Kling.

Move the CSSFontFace and CSSFontSelector classes from using OwnPtr, PassOwnPtr and adoptPtr
to using std::unique_ptr, move semantics and std::make_unique.

* css/CSSFontFace.cpp:
(WebCore::CSSFontFace::addSource):
* css/CSSFontFace.h:
* css/CSSFontSelector.cpp:
(WebCore::CSSFontSelector::addFontFaceRule):
(WebCore::CSSFontSelector::getFontFace):
* css/CSSFontSelector.h:

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

5 years ago[GTK] Remove null check for WebPopupMenuProxy::Client in WebPopupMenuProxyGtk::showPo...
zandobersek@gmail.com [Sat, 25 Jan 2014 18:48:02 +0000 (18:48 +0000)]
[GTK] Remove null check for WebPopupMenuProxy::Client in WebPopupMenuProxyGtk::showPopupMenu
https://bugs.webkit.org/show_bug.cgi?id=107036

Reviewed by Andreas Kling.

* UIProcess/gtk/WebPopupMenuProxyGtk.cpp:
(WebKit::WebPopupMenuProxyGtk::showPopupMenu): Don't perform an early return
if the client is not available - it always should be. The client is set to null
only when the proxy is invalidated. This happens immediately after this function
returns, either with the popup being forced to close or being closed by the user
with possibly an item being chosen. Rather than the early return, use an ASSERT.

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

5 years agoWeb Inspector: Move InspectorRuntimeAgent into JavaScriptCore
joepeck@webkit.org [Sat, 25 Jan 2014 17:48:16 +0000 (17:48 +0000)]
Web Inspector: Move InspectorRuntimeAgent into JavaScriptCore
https://bugs.webkit.org/show_bug.cgi?id=127605

Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
* JavaScriptCore.xcodeproj/project.pbxproj:
Add new files to the build.

* inspector/agents/InspectorRuntimeAgent.h: Renamed from Source/WebCore/inspector/InspectorRuntimeAgent.h.
* inspector/agents/InspectorRuntimeAgent.cpp: Renamed from Source/WebCore/inspector/InspectorRuntimeAgent.cpp.
(Inspector::InspectorRuntimeAgent::InspectorRuntimeAgent):
(Inspector::InspectorRuntimeAgent::parse):
(Inspector::InspectorRuntimeAgent::evaluate):
(Inspector::InspectorRuntimeAgent::callFunctionOn):
(Inspector::InspectorRuntimeAgent::getProperties):
- Move the agent into JavaScriptCore.
- Modernize and cleanup.
- Make globalVM a pure virtual function for subclasses to implement.

* inspector/agents/JSGlobalObjectRuntimeAgent.h: Added.
* inspector/agents/JSGlobalObjectRuntimeAgent.cpp: Added.
(Inspector::JSGlobalObjectRuntimeAgent::JSGlobalObjectRuntimeAgent):
(Inspector::JSGlobalObjectRuntimeAgent::didCreateFrontendAndBackend):
(Inspector::JSGlobalObjectRuntimeAgent::willDestroyFrontendAndBackend):
(Inspector::JSGlobalObjectRuntimeAgent::globalVM):
(Inspector::JSGlobalObjectRuntimeAgent::injectedScriptForEval):
Straightforward JSGlobalObject implementation.

* inspector/JSGlobalObjectInspectorController.cpp:
(Inspector::JSGlobalObjectInspectorController::JSGlobalObjectInspectorController):
Add a runtime agent when inspecting a JSContext!

Source/WebCore:

Covered by existing tests. No change in functionality.

* CMakeLists.txt:
* GNUmakefile.list.am:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* inspector/InspectorAllInOne.cpp:
Remove WebCore InspectorRuntimeAgent.

* ForwardingHeaders/inspector/agents/InspectorRuntimeAgent.h: Added.
Add JavaScriptCore InspectorRuntimeAgent.

* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
* inspector/WorkerInspectorController.h:
* inspector/WorkerInspectorController.cpp:
(WebCore::WorkerInspectorController::WorkerInspectorController):
New constructors for the runtime agent.

* inspector/PageRuntimeAgent.h:
* inspector/PageRuntimeAgent.cpp:
(WebCore::PageRuntimeAgent::PageRuntimeAgent):
(WebCore::PageRuntimeAgent::enable):
(WebCore::PageRuntimeAgent::disable):
(WebCore::PageRuntimeAgent::didCreateMainWorldContext):
(WebCore::PageRuntimeAgent::didCreateIsolatedContext):
(WebCore::PageRuntimeAgent::globalVM):
Modernize and implement globalVM.

* inspector/WorkerRuntimeAgent.h:
* inspector/WorkerRuntimeAgent.cpp:
(WebCore::WorkerRuntimeAgent::WorkerRuntimeAgent):
(WebCore::WorkerRuntimeAgent::injectedScriptForEval):
(WebCore::WorkerRuntimeAgent::globalVM):
Modernize and implement globalVM.

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

5 years ago[GTK] Add parameters from 'DOM Object Model Core' spec and 'DOM CSS' spec that can...
commit-queue@webkit.org [Sat, 25 Jan 2014 17:25:03 +0000 (17:25 +0000)]
[GTK] Add parameters from 'DOM Object Model Core' spec and 'DOM CSS' spec that can be NULL

https://bugs.webkit.org/show_bug.cgi?id=117536

Patch by Diego Pino Garcia <dpino@igalia.com> on 2014-01-25
Reviewed by Xan Lopez.

* bindings/scripts/CodeGeneratorGObject.pm:
(ParamCanBeNull): Add new pairs (function, parameter) that can be NULL

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

5 years agoRestore alphabetical order in Compiler.h
darin@apple.com [Sat, 25 Jan 2014 17:18:37 +0000 (17:18 +0000)]
Restore alphabetical order in Compiler.h
https://bugs.webkit.org/show_bug.cgi?id=127620

Reviewed by Sam Weinig.

* wtf/Compiler.h: Resorted some things into alphabetical order

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

5 years agoGet rid of BackForwardController::isActive()
andersca@apple.com [Sat, 25 Jan 2014 17:16:49 +0000 (17:16 +0000)]
Get rid of BackForwardController::isActive()
https://bugs.webkit.org/show_bug.cgi?id=127604

Reviewed by Sam Weinig.

Source/WebCore:

BackForwardController::isActive() used to mean "my page maintains a back forward
list that has zero capacity". Move that logic into WebKit instead, namely the
WebFrameLoaderClient::canCachePage function so we can simplify WebCore.

* history/BackForwardClient.h:
* history/BackForwardController.cpp:
* history/BackForwardController.h:
* history/BackForwardList.h:
* history/PageCache.cpp:
(WebCore::logCanCachePageDecision):
(WebCore::PageCache::canCache):

Source/WebKit/mac:

* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::canCachePage):
Move isActive logic here.

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

5 years agoREGRESSION(r162744): wsj.com paints white
antti@apple.com [Sat, 25 Jan 2014 17:15:51 +0000 (17:15 +0000)]
REGRESSION(r162744): wsj.com paints white
https://bugs.webkit.org/show_bug.cgi?id=127619

Reviewed by Sam Weinig.

Source/WebCore:

Test: fast/css/stylesheet-layout-with-pending-paint.html

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

    Ensure we switch out from IgnoreLayoutWithPendingSheets state after stylesheet loads complete.

LayoutTests:

* fast/css/stylesheet-layout-with-pending-paint-expected.html: Added.
* fast/css/stylesheet-layout-with-pending-paint.html: Added.

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

5 years ago[EFL][WK1] Fix broken rendering while navigating history in EWebLauncher
ryuan.choi@samsung.com [Sat, 25 Jan 2014 14:19:50 +0000 (14:19 +0000)]
[EFL][WK1] Fix broken rendering while navigating history in EWebLauncher
https://bugs.webkit.org/show_bug.cgi?id=127601

Reviewed by Anders Carlsson.

When scrolled after requested repaints, rendering was broken because scrollDelta
changed repaints area.

* ewk/ewk_view.cpp:
(ewk_view_scroll):

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

5 years agoReverted r162760. It broke more things.
mitz@apple.com [Sat, 25 Jan 2014 07:44:27 +0000 (07:44 +0000)]
Reverted r162760. It broke more things.

* WebCore.exp.in:

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

5 years agoTry to fix some 32-bit builds.
mitz@apple.com [Sat, 25 Jan 2014 07:10:31 +0000 (07:10 +0000)]
Try to fix some 32-bit builds.

* WebCore.exp.in:

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

5 years ago[EFL] Replace usage of DEFINE_STATIC_LOCAL with NeverDestroyed in WebCore/platform/efl
jinwoo7.song@samsung.com [Sat, 25 Jan 2014 06:40:43 +0000 (06:40 +0000)]
[EFL] Replace usage of DEFINE_STATIC_LOCAL with NeverDestroyed in WebCore/platform/efl
https://bugs.webkit.org/show_bug.cgi?id=127607

Reviewed by Anders Carlsson.

* platform/efl/EflKeyboardUtilities.cpp:
(WebCore::keyMap): Use NeverDestroyed instead of DEFINE_STATIC_LOCAL.
(WebCore::windowsKeyMap): Ditto.
(WebCore::keyDownCommandsMap): Ditto.
(WebCore::keyPressCommandsMap): Ditto.
* platform/efl/GamepadsEfl.cpp:
(WebCore::sampleGamepads): Ditto.
* platform/efl/RenderThemeEfl.cpp:
(WebCore::RenderThemeEfl::systemFont): Do not use unnecessary DEFINE_STATIC_LOCAL.

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

5 years agoWebKit2 View Gestures (Smart Zoom): Can't double-tap zoom-out on the body
timothy_horton@apple.com [Sat, 25 Jan 2014 06:01:29 +0000 (06:01 +0000)]
WebKit2 View Gestures (Smart Zoom): Can't double-tap zoom-out on the body
https://bugs.webkit.org/show_bug.cgi?id=127602

Reviewed by Anders Carlsson.

* UIProcess/mac/ViewGestureController.h:
* UIProcess/mac/ViewGestureController.mm:
(WebKit::ViewGestureController::ViewGestureController):
(WebKit::ViewGestureController::didCollectGeometryForSmartMagnificationGesture):
Use an explicit boolean instead of the emptiness of the renderRect() to determine
whether or not the user has already smart-zoomed. renderRect() can be 0x0
if our hit-test hits the body element.

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

5 years agoMove JavaScriptCallFrame and ScriptDebugServer into JavaScriptCore for inspector
joepeck@webkit.org [Sat, 25 Jan 2014 04:42:25 +0000 (04:42 +0000)]
Move JavaScriptCallFrame and ScriptDebugServer into JavaScriptCore for inspector
https://bugs.webkit.org/show_bug.cgi?id=127543

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
Add new files.

* inspector/ScriptDebugListener.h:
Extract WebCore knowledge from ScriptDebugServer. This will
eventually be made to work outside of WebCore.

* inspector/ScriptDebugServer.h: Renamed from Source/WebCore/bindings/js/ScriptDebugServer.h.
* inspector/ScriptDebugServer.cpp: Renamed from Source/WebCore/bindings/js/ScriptDebugServer.cpp.
(Inspector::ScriptDebugServer::evaluateBreakpointAction):
(Inspector::ScriptDebugServer::dispatchDidPause):
(Inspector::ScriptDebugServer::dispatchBreakpointActionLog):
(Inspector::ScriptDebugServer::dispatchBreakpointActionSound):
(Inspector::ScriptDebugServer::sourceParsed):
(Inspector::ScriptDebugServer::dispatchFunctionToListeners):
(Inspector::ScriptDebugServer::handlePause):
Modernize code, and call the new ScriptDebugListener callbacks where appropriate.

* inspector/JSJavaScriptCallFrame.cpp: Renamed from Source/WebCore/bindings/js/JSJavaScriptCallFrameCustom.cpp.
(Inspector::JSJavaScriptCallFrame::JSJavaScriptCallFrame):
(Inspector::JSJavaScriptCallFrame::finishCreation):
(Inspector::JSJavaScriptCallFrame::createPrototype):
(Inspector::JSJavaScriptCallFrame::destroy):
(Inspector::JSJavaScriptCallFrame::releaseImpl):
(Inspector::JSJavaScriptCallFrame::~JSJavaScriptCallFrame):
(Inspector::JSJavaScriptCallFrame::evaluate):
(Inspector::JSJavaScriptCallFrame::scopeType):
(Inspector::JSJavaScriptCallFrame::caller):
(Inspector::JSJavaScriptCallFrame::sourceID):
(Inspector::JSJavaScriptCallFrame::line):
(Inspector::JSJavaScriptCallFrame::column):
(Inspector::JSJavaScriptCallFrame::functionName):
(Inspector::JSJavaScriptCallFrame::scopeChain):
(Inspector::JSJavaScriptCallFrame::thisObject):
(Inspector::JSJavaScriptCallFrame::type):
(Inspector::toJS):
(Inspector::toJSJavaScriptCallFrame):
* inspector/JSJavaScriptCallFrame.h: Added.
(Inspector::JSJavaScriptCallFrame::createStructure):
(Inspector::JSJavaScriptCallFrame::create):
(Inspector::JSJavaScriptCallFrame::impl):
* inspector/JSJavaScriptCallFramePrototype.cpp: Added.
(Inspector::JSJavaScriptCallFramePrototype::finishCreation):
(Inspector::jsJavaScriptCallFramePrototypeFunctionEvaluate):
(Inspector::jsJavaScriptCallFramePrototypeFunctionScopeType):
(Inspector::jsJavaScriptCallFrameAttributeCaller):
(Inspector::jsJavaScriptCallFrameAttributeSourceID):
(Inspector::jsJavaScriptCallFrameAttributeLine):
(Inspector::jsJavaScriptCallFrameAttributeColumn):
(Inspector::jsJavaScriptCallFrameAttributeFunctionName):
(Inspector::jsJavaScriptCallFrameAttributeScopeChain):
(Inspector::jsJavaScriptCallFrameAttributeThisObject):
(Inspector::jsJavaScriptCallFrameAttributeType):
(Inspector::jsJavaScriptCallFrameConstantGLOBAL_SCOPE):
(Inspector::jsJavaScriptCallFrameConstantLOCAL_SCOPE):
(Inspector::jsJavaScriptCallFrameConstantWITH_SCOPE):
(Inspector::jsJavaScriptCallFrameConstantCLOSURE_SCOPE):
(Inspector::jsJavaScriptCallFrameConstantCATCH_SCOPE):
* inspector/JSJavaScriptCallFramePrototype.h: Added.
(Inspector::JSJavaScriptCallFramePrototype::create):
(Inspector::JSJavaScriptCallFramePrototype::createStructure):
(Inspector::JSJavaScriptCallFramePrototype::JSJavaScriptCallFramePrototype):
* inspector/JavaScriptCallFrame.cpp: Renamed from Source/WebCore/bindings/js/JavaScriptCallFrame.cpp.
(Inspector::JavaScriptCallFrame::caller):
* inspector/JavaScriptCallFrame.h: Renamed from Source/WebCore/bindings/js/JavaScriptCallFrame.h.
Port of JavaScriptCallFrame.idl to a set of native JS classes.

Source/WebCore:

Covered by existing tests.

* ForwardingHeaders/inspector/ScriptDebugServer.h: Added.
* GNUmakefile.list.am:
* UseJSC.cmake:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSBindingsAllInOne.cpp:
* inspector/JavaScriptCallFrame.idl: Removed.
Update builds now that ScriptDebugServer moved to JavaScriptCore.

* bindings/js/PageScriptDebugServer.h:
* bindings/js/PageScriptDebugServer.cpp:
(WebCore::PageScriptDebugServer::runEventLoopWhilePaused):
(WebCore::PageScriptDebugServer::isContentScript):
(WebCore::PageScriptDebugServer::reportException):
* bindings/js/WorkerScriptDebugServer.h:
* bindings/js/WorkerScriptDebugServer.cpp:
(WebCore::WorkerScriptDebugServer::runEventLoopWhilePaused):
(WebCore::WorkerScriptDebugServer::reportException):
Handle ScriptDebugServer functionality depending on WebCore knowledge.

* inspector/InspectorDebuggerAgent.h:
* inspector/InspectorDebuggerAgent.cpp:
(WebCore::InspectorDebuggerAgent::breakpointActionSound):
Handle ScriptDebugServer functionality that depended on WebCore knowledge.
This will eventually be written in a non-WebCore specific way.

* inspector/InspectorRuntimeAgent.cpp:
* inspector/InspectorRuntimeAgent.h:
Update ScriptDebugServer type now that it is in namespace Inspector.

* workers/WorkerGlobalScope.h:
Make addConsoleMessage public again so the inspector can call it.

* inspector/PageDebuggerAgent.cpp:
(WebCore::PageDebuggerAgent::breakpointActionLog):
* inspector/PageDebuggerAgent.h:
* inspector/WorkerDebuggerAgent.cpp:
(WebCore::WorkerDebuggerAgent::breakpointActionLog):
* inspector/WorkerDebuggerAgent.h:
Let each of these handle console logs in their own way. Both of these
eventually go through the PageConsole and log through the InspectorConsoleAgent
and ChromeClient.

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

5 years agoFix EFL WebKit2 build.
jinwoo7.song@samsung.com [Sat, 25 Jan 2014 04:42:00 +0000 (04:42 +0000)]
Fix EFL WebKit2 build.

* WebProcess/WebPage/efl/WebPageEfl.cpp:
(WebKit::WebPage::performDefaultBehaviorForKeyEvent):

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

5 years agoImprove latching behavior for wheel events
bfulgham@apple.com [Sat, 25 Jan 2014 04:33:48 +0000 (04:33 +0000)]
Improve latching behavior for wheel events
https://bugs.webkit.org/show_bug.cgi?id=127386
<rdar://problem/12176858>

Reviewed by Simon Fraser.

* page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::ScrollingTree): Initialize new values used for tracking
scroll latching state.
(WebCore::ScrollingTree::shouldHandleWheelEventSynchronously): Check for an existing
latched node and stay in fast scrolling mode if possible.
(WebCore::ScrollingTree::removeDestroyedNodes): Clear latched node if it's being removed.
(WebCore::ScrollingTree::latchedNode): Added
(WebCore::ScrollingTree::setLatchedNode): Added
(WebCore::ScrollingTree::clearLatchedNode): Added
* page/scrolling/ScrollingTree.h:
(WebCore::ScrollingTree::hasLatchedNode): Added
* page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
(WebCore::shouldConsiderLatching): Added
(WebCore::ScrollingTreeScrollingNodeMac::handleWheelEvent): Determine latching state
based on wheel event state and position of mouse pointer in the document.

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

5 years agoFix GTK+ WebKit2 build.
andersca@apple.com [Sat, 25 Jan 2014 03:38:35 +0000 (03:38 +0000)]
Fix GTK+ WebKit2 build.

* WebProcess/WebPage/gtk/WebPageGtk.cpp:
(WebKit::WebPage::performDefaultBehaviorForKeyEvent):

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

5 years agoASSERT(time.isFinite()) in SVGSMILElement::createInstanceTimesFromSyncbase
commit-queue@webkit.org [Sat, 25 Jan 2014 03:25:28 +0000 (03:25 +0000)]
ASSERT(time.isFinite()) in SVGSMILElement::createInstanceTimesFromSyncbase
<https://webkit.org/b/108184>

Patch by Tamas Gergely <tgergely.u-szeged@partner.samsung.com> on 2014-01-24
Reviewed by Philip Rogers.

Additional test to detect the crash in debug mode. It is merged back
from blink commit https://src.chromium.org/viewvc/blink?revision=165498&view=revision

* svg/animations/self-dependency-crash-expected.txt: Added.
* svg/animations/self-dependency-crash.html: Added.

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

5 years agoDebuggerCallFrame::evaluateWithCallFrame() should not execute a null executable.
mark.lam@apple.com [Sat, 25 Jan 2014 03:15:13 +0000 (03:15 +0000)]
DebuggerCallFrame::evaluateWithCallFrame() should not execute a null executable.
<https://webkit.org/b/127600>

Reviewed by Oliver Hunt.

In DebuggerCallFrame::evaluateWithCallFrame(), if the script string that
is passed in is bad, it will fail to create an Executable i.e.
EvalExecutable::create() returns a null pointer. However,
DebuggerCallFrame::evaluateWithCallFrame() was just clearing the
exception and proceeded to execute the null pointer as an Executable.
A crash ensues.

Now, if an exception is detected while creating the Executable, we
abort instead.

* debugger/DebuggerCallFrame.cpp:
(JSC::DebuggerCallFrame::evaluateWithCallFrame):

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

5 years agoGTK+ build fix.
andersca@apple.com [Sat, 25 Jan 2014 03:00:54 +0000 (03:00 +0000)]
GTK+ build fix.

* webkit/webkitwebview.cpp:
(webkit_web_view_can_go_back):

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

5 years agoAnother attempted build fix.
andersca@apple.com [Sat, 25 Jan 2014 02:58:58 +0000 (02:58 +0000)]
Another attempted build fix.

Use wildcards in the the std::duration symbol.

* WebCore.exp.in:

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

5 years agoUnreviewed Apple Windows port gardering.
zalan@apple.com [Sat, 25 Jan 2014 02:58:08 +0000 (02:58 +0000)]
Unreviewed Apple Windows port gardering.

* platform/win/fast/forms/file/file-input-disabled-expected.txt:
* platform/win/tables/mozilla/marvin/body_col-expected.txt: Added.

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

5 years agoStart using the RemoteScrollingCoordinatorProxy on iOS
simon.fraser@apple.com [Sat, 25 Jan 2014 02:32:26 +0000 (02:32 +0000)]
Start using the RemoteScrollingCoordinatorProxy on iOS
https://bugs.webkit.org/show_bug.cgi?id=127598

Reviewed by Tim Horton.

Source/WebCore:

Add a scrollPositionChangedViaDelegatedScrolling() function to
ScrollingTree, allowing the ScrollingTree to be informed about
external sources of scrolling.

Also add a convenience getter for nodes, nodeForID().

* WebCore.exp.in:
* page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::scrollPositionChangedViaDelegatedScrolling):
(WebCore::ScrollingTree::nodeForID):
* page/scrolling/ScrollingTree.h:
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::registerAllViewportConstrainedLayers):
To avoid assertions on iOS, bail from iOS WK1 fixed position code if
we have a ScrollingCoordinator.
(WebCore::RenderLayerCompositor::unregisterAllViewportConstrainedLayers):
Ditto.

Source/WebKit2:

Add a scrollPositionChangedViaDelegatedScrolling() function to
ScrollingTree, allowing the ScrollingTree to be informed about
external sources of scrolling.

Call it from -[WKContentView didScrollTo:] for the root node.

* UIProcess/API/ios/WKContentView.mm:
(-[WKContentView didScrollTo:]):
* UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:
(WebKit::RemoteScrollingCoordinatorProxy::rootScrollingNodeID):
(WebKit::RemoteScrollingCoordinatorProxy::scrollPositionChangedViaDelegatedScrolling):
* UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.h:

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

5 years agoAdd typesafe casts for ScrollingTreeNode classes
simon.fraser@apple.com [Sat, 25 Jan 2014 02:32:23 +0000 (02:32 +0000)]
Add typesafe casts for ScrollingTreeNode classes
https://bugs.webkit.org/show_bug.cgi?id=127597

Reviewed by Tim Horton.

Add a ScrollingNodeType member to ScrollingTreeNodes and
use it for type-safe casting.

* page/scrolling/ScrollingTreeNode.cpp:
(WebCore::ScrollingTreeNode::ScrollingTreeNode):
* page/scrolling/ScrollingTreeNode.h:
(WebCore::ScrollingTreeNode::nodeType):
(WebCore::ScrollingTreeNode::scrollingNodeID):
* page/scrolling/ScrollingTreeScrollingNode.cpp:
(WebCore::ScrollingTreeScrollingNode::ScrollingTreeScrollingNode):
* page/scrolling/ScrollingTreeScrollingNode.h:
* page/scrolling/mac/ScrollingTreeFixedNode.h:
* page/scrolling/mac/ScrollingTreeFixedNode.mm:
(WebCore::ScrollingTreeFixedNode::ScrollingTreeFixedNode):
* page/scrolling/mac/ScrollingTreeStickyNode.h:
* page/scrolling/mac/ScrollingTreeStickyNode.mm:
(WebCore::ScrollingTreeStickyNode::ScrollingTreeStickyNode):

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

5 years agoTry to fix the GTK+ build.
andersca@apple.com [Sat, 25 Jan 2014 02:11:39 +0000 (02:11 +0000)]
Try to fix the GTK+ build.

* GNUmakefile.list.am:

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

5 years agoRemove back/forward list related functions from Page
andersca@apple.com [Sat, 25 Jan 2014 02:08:56 +0000 (02:08 +0000)]
Remove back/forward list related functions from Page
https://bugs.webkit.org/show_bug.cgi?id=127596

Reviewed by Andreas Kling.

Source/WebCore:

* WebCore.exp.in:
* history/BackForwardController.cpp:
(WebCore::BackForwardController::canGoBackOrForward):
(WebCore::BackForwardController::goBackOrForward):
(WebCore::BackForwardController::goBack):
(WebCore::BackForwardController::goForward):
(WebCore::BackForwardController::count):
* page/EventHandler.cpp:
(WebCore::EventHandler::defaultBackspaceEventHandler):
* page/Page.cpp:
* page/Page.h:

Source/WebKit/efl:

* ewk/ewk_frame.cpp:
(ewk_frame_navigate):
(ewk_frame_navigate_possible):

Source/WebKit/gtk:

* webkit/webkitwebview.cpp:
(webkit_web_view_set_maintains_back_forward_list):
(webkit_web_view_get_back_forward_list):
(webkit_web_view_go_back):
(webkit_web_view_go_back_or_forward):
(webkit_web_view_go_forward):
(webkit_web_view_can_go_back_or_forward):
(webkit_web_view_can_go_forward):

Source/WebKit/mac:

* WebView/WebFrameView.mm:
(-[WebFrameView keyDown:keyDown:]):
* WebView/WebView.mm:
(-[WebView _loadBackForwardListFromOtherView:]):
(-[WebView initWithCoder:]):
(-[WebView encodeWithCoder:]):
(-[WebView backForwardList]):
(-[WebView setMaintainsBackForwardList:]):
(-[WebView goBack]):
(-[WebView goForward]):
(-[WebView canGoBack]):
(-[WebView canGoForward]):

Source/WebKit/win:

* WebView.cpp:
(WebView::keyDown):
(WebView::goBack):
(WebView::goForward):

Source/WebKit2:

* WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::performNonEditingBehaviorForSelector):

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

5 years agoUpdate style asynchronously after style sheet load
antti@apple.com [Sat, 25 Jan 2014 02:04:38 +0000 (02:04 +0000)]
Update style asynchronously after style sheet load
https://bugs.webkit.org/show_bug.cgi?id=127563

Reviewed by Andreas Kling.

Since we don't attach synchronously we don't need to recalc style synchronously either.

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

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

5 years agoUnreviewed build fix attemp on the EFL after r162728.
jinwoo7.song@samsung.com [Sat, 25 Jan 2014 02:02:23 +0000 (02:02 +0000)]
Unreviewed build fix attemp on the EFL after r162728.

* CMakeLists.txt: Removed WebLoaderClient.cpp

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

5 years agoSubpixel layout: Default style of input type=checkbox/radio (0.5ex) adds 1px extra...
zalan@apple.com [Sat, 25 Jan 2014 01:34:09 +0000 (01:34 +0000)]
Subpixel layout: Default style of input type=checkbox/radio (0.5ex) adds 1px extra margin on both left and right.
https://bugs.webkit.org/show_bug.cgi?id=125728

Reviewed by Simon Fraser.

Using the 0.5ex value to set checkbox/radio left and right margins is a long-standing
(khtml) behavior. While it indicates dynamic behavior, in order to get the margins changed,
the widget's font size needs to be set, which is rather rare for such input types.
It also results in odd layout, where the checkbox's indentation may seem to change randomly.

'<input style="font-size: 30px;" type="checkbox">foo' changes neither the checkbox
nor the text size, but it indents the line by about 15px.

Other browsers (FF, Opera with Presto) disagree and they set static margins values.
2px is the current default computed value.

Source/WebCore:

* css/html.css:
(input[type="radio"], input[type="checkbox"]):

LayoutTests:

* platform/mac-mountainlion/fast/block/margin-collapse/103-expected.txt:
* platform/mac-mountainlion/fast/forms/basic-inputs-expected.txt:
* platform/mac-mountainlion/fast/forms/box-shadow-override-expected.txt:
* platform/mac-mountainlion/fast/forms/form-element-geometry-expected.txt:
* platform/mac-mountainlion/fast/forms/input-appearance-height-expected.txt:
* platform/mac-mountainlion/fast/forms/input-value-expected.txt:
* platform/mac-mountainlion/fast/replaced/replaced-breaking-expected.txt:
* platform/mac-mountainlion/fast/text/textIteratorNilRenderer-expected.txt:
* platform/mac-mountainlion/http/tests/navigation/javascriptlink-frames-expected.txt:
* platform/mac-mountainlion/tables/mozilla/bugs/bug4527-expected.txt:
* platform/mac/compositing/overflow/theme-affects-visual-overflow-expected.txt:
* platform/mac/css1/box_properties/acid_test-expected.txt:
* platform/mac/css2.1/t09-c5526c-display-00-e-expected.txt:
* platform/mac/css3/selectors3/html/css3-modsel-25-expected.txt:
* platform/mac/css3/selectors3/html/css3-modsel-70-expected.txt:
* platform/mac/css3/selectors3/xhtml/css3-modsel-25-expected.txt:
* platform/mac/css3/selectors3/xhtml/css3-modsel-70-expected.txt:
* platform/mac/css3/selectors3/xml/css3-modsel-25-expected.txt:
* platform/mac/css3/selectors3/xml/css3-modsel-70-expected.txt:
* platform/mac/fast/block/basic/011-expected.txt:
* platform/mac/fast/block/margin-collapse/103-expected.txt:
* platform/mac/fast/css/non-standard-checkbox-size-expected.txt:
* platform/mac/fast/forms/001-expected.txt:
* platform/mac/fast/forms/basic-inputs-expected.txt:
* platform/mac/fast/forms/box-shadow-override-expected.txt:
* platform/mac/fast/forms/file/file-input-disabled-expected.txt:
* platform/mac/fast/forms/form-element-geometry-expected.txt:
* platform/mac/fast/forms/formmove-expected.txt:
* platform/mac/fast/forms/formmove2-expected.txt:
* platform/mac/fast/forms/indeterminate-expected.txt:
* platform/mac/fast/forms/input-appearance-height-expected.txt:
* platform/mac/fast/forms/input-value-expected.txt:
* platform/mac/fast/inline/positionedLifetime-expected.txt:
* platform/mac/fast/parser/bad-xml-slash-expected.txt:
* platform/mac/fast/replaced/replaced-breaking-expected.txt:
* platform/mac/fast/replaced/width100percent-checkbox-expected.txt:
* platform/mac/fast/replaced/width100percent-radio-expected.txt:
* platform/mac/fast/text/textIteratorNilRenderer-expected.txt:
* platform/mac/fast/text/whitespace/normal-after-nowrap-breaking-expected.txt:
* platform/mac/http/tests/navigation/javascriptlink-frames-expected.txt:
* platform/mac/tables/mozilla/bugs/bug1318-expected.txt:
* platform/mac/tables/mozilla/bugs/bug4527-expected.txt:
* platform/mac/tables/mozilla_expected_failures/core/captions1-expected.txt:
* platform/mac/tables/mozilla_expected_failures/core/captions2-expected.txt:

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

5 years agoPut functions need to take a base object and a this value, and perform type checks...
oliver@apple.com [Sat, 25 Jan 2014 01:26:49 +0000 (01:26 +0000)]
Put functions need to take a base object and a this value, and perform type checks on |this|
https://bugs.webkit.org/show_bug.cgi?id=127594

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Change the signature for static setter functions, and update uses

* create_hash_table:
* runtime/Lookup.h:
(JSC::putEntry):
* runtime/PutPropertySlot.h:
* runtime/RegExpConstructor.cpp:
(JSC::setRegExpConstructorInput):
(JSC::setRegExpConstructorMultiline):

Source/WebCore:

Update bindings generator to emit setters with correct type, and perform
type checks on |this|, instead of the baseObject.

Test: js/dom/dom-as-prototype-assignment-exception.html

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
(GenerateImplementation):
(GenerateHashTable):
* bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
* bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
* bindings/scripts/test/JS/JSTestEventConstructor.cpp:
* bindings/scripts/test/JS/JSTestEventTarget.cpp:
* bindings/scripts/test/JS/JSTestException.cpp:
* bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
* bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::setJSTestInterfaceConstructorImplementsStaticAttr):
(WebCore::setJSTestInterfaceImplementsStr2):
(WebCore::setJSTestInterfaceImplementsStr3):
(WebCore::setJSTestInterfaceImplementsNode):
(WebCore::setJSTestInterfaceConstructorSupplementalStaticAttr):
(WebCore::setJSTestInterfaceSupplementalStr2):
(WebCore::setJSTestInterfaceSupplementalStr3):
(WebCore::setJSTestInterfaceSupplementalNode):
* bindings/scripts/test/JS/JSTestInterface.h:
* bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
* bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
* bindings/scripts/test/JS/JSTestNode.cpp:
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::setJSTestObjConstructorStaticStringAttr):
(WebCore::setJSTestObjTestSubObjEnabledBySettingConstructor):
(WebCore::setJSTestObjEnumAttr):
(WebCore::setJSTestObjByteAttr):
(WebCore::setJSTestObjOctetAttr):
(WebCore::setJSTestObjShortAttr):
(WebCore::setJSTestObjUnsignedShortAttr):
(WebCore::setJSTestObjLongAttr):
(WebCore::setJSTestObjLongLongAttr):
(WebCore::setJSTestObjUnsignedLongLongAttr):
(WebCore::setJSTestObjStringAttr):
(WebCore::setJSTestObjTestObjAttr):
(WebCore::setJSTestObjXMLObjAttr):
(WebCore::setJSTestObjCreate):
(WebCore::setJSTestObjReflectedStringAttr):
(WebCore::setJSTestObjReflectedIntegralAttr):
(WebCore::setJSTestObjReflectedUnsignedIntegralAttr):
(WebCore::setJSTestObjReflectedBooleanAttr):
(WebCore::setJSTestObjReflectedURLAttr):
(WebCore::setJSTestObjReflectedCustomIntegralAttr):
(WebCore::setJSTestObjReflectedCustomBooleanAttr):
(WebCore::setJSTestObjReflectedCustomURLAttr):
(WebCore::setJSTestObjTypedArrayAttr):
(WebCore::setJSTestObjAttrWithGetterException):
(WebCore::setJSTestObjAttrWithSetterException):
(WebCore::setJSTestObjStringAttrWithGetterException):
(WebCore::setJSTestObjStringAttrWithSetterException):
(WebCore::setJSTestObjCustomAttr):
(WebCore::setJSTestObjWithScriptStateAttribute):
(WebCore::setJSTestObjWithScriptExecutionContextAttribute):
(WebCore::setJSTestObjWithScriptStateAttributeRaises):
(WebCore::setJSTestObjWithScriptExecutionContextAttributeRaises):
(WebCore::setJSTestObjWithScriptExecutionContextAndScriptStateAttribute):
(WebCore::setJSTestObjWithScriptExecutionContextAndScriptStateAttributeRaises):
(WebCore::setJSTestObjWithScriptExecutionContextAndScriptStateWithSpacesAttribute):
(WebCore::setJSTestObjWithScriptArgumentsAndCallStackAttribute):
(WebCore::setJSTestObjConditionalAttr1):
(WebCore::setJSTestObjConditionalAttr2):
(WebCore::setJSTestObjConditionalAttr3):
(WebCore::setJSTestObjConditionalAttr4Constructor):
(WebCore::setJSTestObjConditionalAttr5Constructor):
(WebCore::setJSTestObjConditionalAttr6Constructor):
(WebCore::setJSTestObjAnyAttribute):
(WebCore::setJSTestObjMutablePoint):
(WebCore::setJSTestObjImmutablePoint):
(WebCore::setJSTestObjStrawberry):
(WebCore::setJSTestObjStrictFloat):
(WebCore::setJSTestObjId):
(WebCore::setJSTestObjReplaceableAttribute):
(WebCore::setJSTestObjNullableLongSettableAttribute):
(WebCore::setJSTestObjNullableStringValue):
(WebCore::setJSTestObjAttributeWithReservedEnumType):
* bindings/scripts/test/JS/JSTestObj.h:
* bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
(WebCore::setJSTestSerializedScriptValueInterfaceValue):
(WebCore::setJSTestSerializedScriptValueInterfaceCachedValue):
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
* bindings/scripts/test/JS/JSTestTypedefs.cpp:
(WebCore::setJSTestTypedefsUnsignedLongLongAttr):
(WebCore::setJSTestTypedefsImmutableSerializedScriptValue):
(WebCore::setJSTestTypedefsAttrWithGetterException):
(WebCore::setJSTestTypedefsAttrWithSetterException):
(WebCore::setJSTestTypedefsStringAttrWithGetterException):
(WebCore::setJSTestTypedefsStringAttrWithSetterException):
* bindings/scripts/test/JS/JSTestTypedefs.h:
* bindings/scripts/test/JS/JSattribute.cpp:
* bindings/scripts/test/JS/JSreadonly.cpp:

LayoutTests:

Add tests, and update expectation for previously failing test.

* js/dom/dom-as-prototype-assignment-exception-expected.txt: Added.
* js/dom/dom-as-prototype-assignment-exception.html: Added.
* js/dom/script-tests/dom-as-prototype-assignment-exception.js: Added.
* media/network-no-source-const-shadow-expected.txt:

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

5 years agoGeneric JSObject::put should handle static properties in the classinfo hierarchy
oliver@apple.com [Sat, 25 Jan 2014 01:03:40 +0000 (01:03 +0000)]
Generic JSObject::put should handle static properties in the classinfo hierarchy
https://bugs.webkit.org/show_bug.cgi?id=127523

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

This patch makes JSObject::put correctly call static setters
defined by the ClassInfo.

To make this not clobber performance, the ClassInfo HashTable
now includes a flag to indicate that it contains setters. This
required updating the lut generator so that it tracked (and emitted)
this.

The rest of the change was making a number of the methods take
a VM rather than an ExecState*, so that Structure could set the
getter/setter flags during construction (if necessary).

This also means most objects do not need to perform a lookupPut
manually anymore, so most custom ::put's are no longer needed.
DOMWindow is the only exception as it has interesting security
related semantics.

* create_hash_table:
* interpreter/CallFrame.h:
(JSC::ExecState::arrayConstructorTable):
(JSC::ExecState::arrayPrototypeTable):
(JSC::ExecState::booleanPrototypeTable):
(JSC::ExecState::dataViewTable):
(JSC::ExecState::dateTable):
(JSC::ExecState::dateConstructorTable):
(JSC::ExecState::errorPrototypeTable):
(JSC::ExecState::globalObjectTable):
(JSC::ExecState::jsonTable):
(JSC::ExecState::numberConstructorTable):
(JSC::ExecState::numberPrototypeTable):
(JSC::ExecState::objectConstructorTable):
(JSC::ExecState::privateNamePrototypeTable):
(JSC::ExecState::regExpTable):
(JSC::ExecState::regExpConstructorTable):
(JSC::ExecState::regExpPrototypeTable):
(JSC::ExecState::stringConstructorTable):
(JSC::ExecState::promisePrototypeTable):
(JSC::ExecState::promiseConstructorTable):
* runtime/ArrayConstructor.cpp:
(JSC::ArrayConstructor::getOwnPropertySlot):
* runtime/ArrayPrototype.cpp:
(JSC::ArrayPrototype::getOwnPropertySlot):
* runtime/BooleanPrototype.cpp:
(JSC::BooleanPrototype::getOwnPropertySlot):
* runtime/ClassInfo.h:
(JSC::ClassInfo::propHashTable):
* runtime/DateConstructor.cpp:
(JSC::DateConstructor::getOwnPropertySlot):
* runtime/DatePrototype.cpp:
(JSC::DatePrototype::getOwnPropertySlot):
* runtime/ErrorPrototype.cpp:
(JSC::ErrorPrototype::getOwnPropertySlot):
* runtime/JSDataViewPrototype.cpp:
(JSC::JSDataViewPrototype::getOwnPropertySlot):
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::getOwnPropertySlot):
* runtime/JSONObject.cpp:
(JSC::JSONObject::getOwnPropertySlot):
* runtime/JSObject.cpp:
(JSC::JSObject::put):
(JSC::JSObject::deleteProperty):
* runtime/JSPromiseConstructor.cpp:
(JSC::JSPromiseConstructor::getOwnPropertySlot):
* runtime/JSPromisePrototype.cpp:
(JSC::JSPromisePrototype::getOwnPropertySlot):
* runtime/Lookup.h:
(JSC::HashTable::copy):
(JSC::putEntry):
(JSC::lookupPut):
* runtime/NamePrototype.cpp:
(JSC::NamePrototype::getOwnPropertySlot):
* runtime/NumberConstructor.cpp:
(JSC::NumberConstructor::getOwnPropertySlot):
* runtime/NumberConstructor.h:
* runtime/NumberPrototype.cpp:
(JSC::NumberPrototype::getOwnPropertySlot):
* runtime/ObjectConstructor.cpp:
(JSC::ObjectConstructor::getOwnPropertySlot):
* runtime/RegExpConstructor.cpp:
(JSC::RegExpConstructor::getOwnPropertySlot):
* runtime/RegExpConstructor.h:
* runtime/RegExpObject.cpp:
(JSC::RegExpObject::getOwnPropertySlot):
(JSC::RegExpObject::put):
* runtime/RegExpPrototype.cpp:
(JSC::RegExpPrototype::getOwnPropertySlot):
* runtime/StringConstructor.cpp:
(JSC::StringConstructor::getOwnPropertySlot):
* runtime/Structure.cpp:
(JSC::Structure::Structure):
(JSC::Structure::freezeTransition):
(JSC::ClassInfo::hasStaticSetterOrReadonlyProperties):

Source/WebCore:

Update the bindings generator to emit the flag indicating the presence
of setters, and remove the many (now unnecessary) put overrides.
Tested with run-jsc-benchmarks and shows neutral performance. A few of the
micro benchmarks actually get a significant performance increase which
is nice.

* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::put):
    We still need a custom call to lookupPut here in order
    to get the magic security semantics of the window object.
* bindings/scripts/CodeGeneratorJS.pm:
(hashTableAccessor):
(prototypeHashTableAccessor):
(constructorHashTableAccessor):
(GenerateImplementation):
(GenerateHashTable):
(GenerateConstructorHelperMethods):

* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::put):
* bindings/scripts/CodeGeneratorJS.pm:
(hashTableAccessor):
(prototypeHashTableAccessor):
(constructorHashTableAccessor):
(InstanceOverridesPutImplementation):
(InstanceOverridesPutDeclaration):
(GenerateHeader):
(GenerateImplementation):
(GenerateHashTable):
(GenerateConstructorHelperMethods):
* bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
* bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
* bindings/scripts/test/JS/JSTestEventConstructor.cpp:
* bindings/scripts/test/JS/JSTestEventTarget.cpp:
* bindings/scripts/test/JS/JSTestException.cpp:
* bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
* bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::JSTestInterface::put):
* bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
* bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
* bindings/scripts/test/JS/JSTestNode.cpp:
* bindings/scripts/test/JS/JSTestObj.cpp:
* bindings/scripts/test/JS/JSTestObj.h:
* bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
* bindings/scripts/test/JS/JSTestTypedefs.cpp:
* bindings/scripts/test/JS/JSTestTypedefs.h:
* bindings/scripts/test/JS/JSattribute.cpp:
* bindings/scripts/test/JS/JSreadonly.cpp:
* html/canvas/WebGLRenderingContext.idl:
  Remove bogus attribute, as it has never been in the spec and should not
  have been added.

LayoutTests:

Yay tests!

* fast/canvas/webgl/constants.html:
  Remove incorrect constant
* js/script-tests/static-put-in-prototype-chain.js: Added.
* js/static-put-in-prototype-chain-expected.txt: Added.
* js/static-put-in-prototype-chain.html: Added.

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

5 years agoUnreviewed, rolling out r162713.
commit-queue@webkit.org [Sat, 25 Jan 2014 00:52:21 +0000 (00:52 +0000)]
Unreviewed, rolling out r162713.
http://trac.webkit.org/changeset/162713
https://bugs.webkit.org/show_bug.cgi?id=127593

broke media/network-no-source-const-shadow (Requested by
thorton on #webkit).

Source/JavaScriptCore:

* create_hash_table:
* interpreter/CallFrame.h:
(JSC::ExecState::arrayConstructorTable):
(JSC::ExecState::arrayPrototypeTable):
(JSC::ExecState::booleanPrototypeTable):
(JSC::ExecState::dataViewTable):
(JSC::ExecState::dateTable):
(JSC::ExecState::dateConstructorTable):
(JSC::ExecState::errorPrototypeTable):
(JSC::ExecState::globalObjectTable):
(JSC::ExecState::jsonTable):
(JSC::ExecState::numberConstructorTable):
(JSC::ExecState::numberPrototypeTable):
(JSC::ExecState::objectConstructorTable):
(JSC::ExecState::privateNamePrototypeTable):
(JSC::ExecState::regExpTable):
(JSC::ExecState::regExpConstructorTable):
(JSC::ExecState::regExpPrototypeTable):
(JSC::ExecState::stringConstructorTable):
(JSC::ExecState::promisePrototypeTable):
(JSC::ExecState::promiseConstructorTable):
* runtime/ArrayConstructor.cpp:
(JSC::ArrayConstructor::getOwnPropertySlot):
* runtime/ArrayPrototype.cpp:
(JSC::ArrayPrototype::getOwnPropertySlot):
* runtime/BooleanPrototype.cpp:
(JSC::BooleanPrototype::getOwnPropertySlot):
* runtime/ClassInfo.h:
(JSC::ClassInfo::propHashTable):
* runtime/DateConstructor.cpp:
(JSC::DateConstructor::getOwnPropertySlot):
* runtime/DatePrototype.cpp:
(JSC::DatePrototype::getOwnPropertySlot):
* runtime/ErrorPrototype.cpp:
(JSC::ErrorPrototype::getOwnPropertySlot):
* runtime/JSDataViewPrototype.cpp:
(JSC::JSDataViewPrototype::getOwnPropertySlot):
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::getOwnPropertySlot):
* runtime/JSONObject.cpp:
(JSC::JSONObject::getOwnPropertySlot):
* runtime/JSObject.cpp:
(JSC::JSObject::put):
(JSC::JSObject::deleteProperty):
* runtime/JSPromiseConstructor.cpp:
(JSC::JSPromiseConstructor::getOwnPropertySlot):
* runtime/JSPromisePrototype.cpp:
(JSC::JSPromisePrototype::getOwnPropertySlot):
* runtime/Lookup.h:
(JSC::HashTable::copy):
(JSC::putEntry):
(JSC::lookupPut):
* runtime/NamePrototype.cpp:
(JSC::NamePrototype::getOwnPropertySlot):
* runtime/NumberConstructor.cpp:
(JSC::NumberConstructor::getOwnPropertySlot):
(JSC::NumberConstructor::put):
* runtime/NumberConstructor.h:
* runtime/NumberPrototype.cpp:
(JSC::NumberPrototype::getOwnPropertySlot):
* runtime/ObjectConstructor.cpp:
(JSC::ObjectConstructor::getOwnPropertySlot):
* runtime/RegExpConstructor.cpp:
(JSC::RegExpConstructor::getOwnPropertySlot):
(JSC::RegExpConstructor::put):
* runtime/RegExpConstructor.h:
* runtime/RegExpObject.cpp:
(JSC::RegExpObject::getOwnPropertySlot):
(JSC::RegExpObject::put):
* runtime/RegExpPrototype.cpp:
(JSC::RegExpPrototype::getOwnPropertySlot):
* runtime/StringConstructor.cpp:
(JSC::StringConstructor::getOwnPropertySlot):
* runtime/Structure.cpp:
(JSC::Structure::Structure):
(JSC::Structure::freezeTransition):

Source/WebCore:

* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::put):
* bindings/scripts/CodeGeneratorJS.pm:
(hashTableAccessor):
(prototypeHashTableAccessor):
(constructorHashTableAccessor):
(GenerateHeader):
(GenerateImplementation):
(GenerateHashTable):
(GenerateConstructorHelperMethods):
* bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
* bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
* bindings/scripts/test/JS/JSTestEventConstructor.cpp:
* bindings/scripts/test/JS/JSTestEventTarget.cpp:
* bindings/scripts/test/JS/JSTestException.cpp:
* bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
* bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::JSTestInterface::put):
* bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
* bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
* bindings/scripts/test/JS/JSTestNode.cpp:
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::JSTestObj::put):
* bindings/scripts/test/JS/JSTestObj.h:
* bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
(WebCore::JSTestSerializedScriptValueInterface::put):
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
* bindings/scripts/test/JS/JSTestTypedefs.cpp:
(WebCore::JSTestTypedefs::put):
* bindings/scripts/test/JS/JSTestTypedefs.h:
* bindings/scripts/test/JS/JSattribute.cpp:
* bindings/scripts/test/JS/JSreadonly.cpp:
* html/canvas/WebGLRenderingContext.idl:

LayoutTests:

* fast/canvas/webgl/constants.html:
* js/script-tests/static-put-in-prototype-chain.js: Removed.
* js/static-put-in-prototype-chain-expected.txt: Removed.
* js/static-put-in-prototype-chain.html: Removed.

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

5 years agoReplace LayoutUnit() calls to a more descriptive LayoutUnit::fromPixel(int).
zalan@apple.com [Sat, 25 Jan 2014 00:21:59 +0000 (00:21 +0000)]
Replace LayoutUnit() calls to a more descriptive LayoutUnit::fromPixel(int).
https://bugs.webkit.org/show_bug.cgi?id=127580

Reviewed by Simon Fraser.

LayoutUnit(1) statement is ambiguous. While it is intended to set one (CSS) pixel, it
could be interpreted as 1 layout unit (1/64th of a CSS pixel atm).

No change in behavior.

* inspector/InspectorOverlay.cpp:
(WebCore::buildObjectForRegionHighlight):
* rendering/FloatingObjects.cpp:
(WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatTypeValue>::heightRemaining):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::layoutShapeInsideInfo):
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::collapseMargins):
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::mainAxisContentExtent):
(WebCore::RenderFlexibleBox::preferredMainAxisContentExtentForChild):
(WebCore::RenderFlexibleBox::alignChildren):
* rendering/RenderMultiColumnFlowThread.cpp:
(WebCore::RenderMultiColumnFlowThread::addForcedRegionBreak):
* rendering/RenderMultiColumnSet.cpp:
(WebCore::RenderMultiColumnSet::heightAdjustedForSetOffset):
(WebCore::RenderMultiColumnSet::calculateBalancedHeight):

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

5 years agoPrepare scrolling tree to handle > 1 scrolling node
simon.fraser@apple.com [Sat, 25 Jan 2014 00:04:18 +0000 (00:04 +0000)]
Prepare scrolling tree to handle > 1 scrolling node
https://bugs.webkit.org/show_bug.cgi?id=127590

Source/WebCore:

Reviewed by Tim Horton.

Clean up the code path called after the ScrollingTree has scrolled a node,
to prepare for multiple scrolling nodes.

Change "updateMainFrameScrollPosition" terminology to "updateScrollPositionAfterAsyncScroll",
and pass along the ScrollingNodeID that scrolled.

Move updateMainFrameScrollPosition-related code from ScrollingCoordinator to
AsyncScrollingCoordinator, since this sync-up is only necessary when doing
async scrolling.

* WebCore.exp.in:
* page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::AsyncScrollingCoordinator):
(WebCore::AsyncScrollingCoordinator::requestScrollPositionUpdate):
(WebCore::AsyncScrollingCoordinator::scheduleUpdateScrollPositionAfterAsyncScroll):
(WebCore::AsyncScrollingCoordinator::updateScrollPositionAfterAsyncScrollTimerFired):
(WebCore::AsyncScrollingCoordinator::updateScrollPositionAfterAsyncScroll):
* page/scrolling/AsyncScrollingCoordinator.h:
(WebCore::AsyncScrollingCoordinator::ScheduledScrollUpdate::ScheduledScrollUpdate):
(WebCore::AsyncScrollingCoordinator::ScheduledScrollUpdate::matchesUpdateType):
Package up the data related to a scheduled scroll into a ScheduledScrollUpdate struct,
for easier comparison and cleaner code.
* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::ScrollingCoordinator):
* page/scrolling/ScrollingCoordinator.h:
* page/scrolling/ScrollingTree.h:
* page/scrolling/ThreadedScrollingTree.cpp:
(WebCore::ThreadedScrollingTree::scrollingTreeNodeDidScroll):
* page/scrolling/ThreadedScrollingTree.h:
* page/scrolling/ios/ScrollingTreeIOS.cpp:
(WebCore::ScrollingTreeIOS::scrollingTreeNodeDidScroll):
* page/scrolling/ios/ScrollingTreeIOS.h:
* page/scrolling/ios/ScrollingTreeScrollingNodeIOS.mm:
(WebCore::ScrollingTreeScrollingNodeIOS::setScrollPositionWithoutContentEdgeConstraints):
* page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
(WebCore::ScrollingTreeScrollingNodeMac::setScrollPositionWithoutContentEdgeConstraints):

Source/WebKit2:

Reviewed by Tim Horton.

Clean up the code path called after the ScrollingTree has scrolled a node,
to prepare for multiple scrolling nodes.

Change "updateMainFrameScrollPosition" terminology to "updateScrollPositionAfterAsyncScroll",
and pass along the ScrollingNodeID that scrolled.

* UIProcess/Scrolling/RemoteScrollingTree.cpp:
(WebKit::RemoteScrollingTree::scrollingTreeNodeDidScroll):
* UIProcess/Scrolling/RemoteScrollingTree.h:
* WebProcess/Scrolling/RemoteScrollingCoordinator.mm:
(WebKit::RemoteScrollingCoordinator::scrollPositionChangedForNode):

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

5 years agoASSERT(!m_markedSpace.m_currentDelayedReleaseScope) reloading page in inspector.
mark.lam@apple.com [Fri, 24 Jan 2014 23:44:50 +0000 (23:44 +0000)]
ASSERT(!m_markedSpace.m_currentDelayedReleaseScope) reloading page in inspector.
<https://webkit.org/b/127582>

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

1. We should not enter a HeapIterationScope when we iterate the CodeBlocks.
   Apparently, iterating the CodeBlocks does not count as heap iteration.

2. If we're detaching the debugger due to the JSGlobalObject destructing,
   then we don't need to clear the debugger requests in the associated
   CodeBlocks. The JSGlobalObject destructing would mean that those
   CodeBlocks would be destructing too, and it may not be safe to access
   them anyway at this point.

The assertion failure is because we had entered a HeapIterationScope
while the JSGlobalObject is destructing, which in turn means that GC
sweeping is in progress. It's not legal to iterate the heap while the GC
is sweeping. Once we fixed the above 2 issues, we will no longer have
the conditions that manifests this assertion failure.

* debugger/Debugger.cpp:
(JSC::Debugger::detach):
(JSC::Debugger::setSteppingMode):
(JSC::Debugger::toggleBreakpoint):
(JSC::Debugger::clearBreakpoints):
(JSC::Debugger::clearDebuggerRequests):
* debugger/Debugger.h:
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::~JSGlobalObject):

Source/WebCore:

No new tests.

* bindings/js/ScriptController.cpp:
(WebCore::ScriptController::attachDebugger):
* bindings/js/WorkerScriptController.cpp:
(WebCore::WorkerScriptController::detachDebugger):
- Adding reasons for detaching a globalObject from the debugger.

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

5 years agoUnreviewed. Add Philip Jägenstedt to watch and contributor lists.
eric.carlson@apple.com [Fri, 24 Jan 2014 23:38:27 +0000 (23:38 +0000)]
Unreviewed. Add Philip Jägenstedt to watch and contributor lists.

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

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

5 years agoSubpixel rendering: Make PaintInfo layout unit aware.
zalan@apple.com [Fri, 24 Jan 2014 23:35:07 +0000 (23:35 +0000)]
Subpixel rendering: Make PaintInfo layout unit aware.
https://bugs.webkit.org/show_bug.cgi?id=127562

Reviewed by Simon Fraser.

Replace PaintInfo's IntRect with LayoutRect to be able to render to
subpixel positions.

No functional changes.

* platform/graphics/LayoutRect.h:
* rendering/PaintInfo.h:
(WebCore::PaintInfo::PaintInfo):
(WebCore::PaintInfo::applyTransform):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::paint):
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintFillLayerExtended):
* rendering/RenderLayer.cpp:
(WebCore::cornerRect):
(WebCore::RenderLayer::scrollCornerRect):
(WebCore::resizerCornerRect):
(WebCore::RenderLayer::scrollCornerAndResizerRect):
(WebCore::RenderLayer::horizontalScrollbarStart):
(WebCore::RenderLayer::drawPlatformResizerImage):
(WebCore::RenderLayer::paintResizer):
(WebCore::RenderLayer::hitTestOverflowControls):
* rendering/RenderLayer.h:
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::paintContents):
* rendering/RenderListBox.cpp:
(WebCore::RenderListBox::paintScrollbar):
* rendering/RenderWidget.cpp:
(WebCore::RenderWidget::paintContents):
* rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::RenderMathMLOperator::fillWithExtensionGlyph):
* rendering/svg/SVGRenderingContext.h:

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

5 years agohttps://bugs.webkit.org/show_bug.cgi?id=127583
simon.fraser@apple.com [Fri, 24 Jan 2014 23:29:29 +0000 (23:29 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=127583

Reviewed by Tim Horton.

handleWheelEventPhase() doesn't make any sense for iOS, which
has no wheel events.

Source/WebCore:

* page/scrolling/ScrollingTree.h:
* page/scrolling/ThreadedScrollingTree.cpp:
* page/scrolling/ThreadedScrollingTree.h:
* page/scrolling/ios/ScrollingTreeIOS.h:

Source/WebKit2:

* UIProcess/Scrolling/RemoteScrollingTree.cpp:
* UIProcess/Scrolling/RemoteScrollingTree.h:

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

5 years agoPush a custom fixed position rect down to the WebProcess in iOS WK2
simon.fraser@apple.com [Fri, 24 Jan 2014 23:29:26 +0000 (23:29 +0000)]
Push a custom fixed position rect down to the WebProcess in iOS WK2
https://bugs.webkit.org/show_bug.cgi?id=127573

Reviewed by Tim Horton.

Make it possible for WKContentView to specify a custom rect
used to layout fixed position elements on iOS.

This is computed in WKContentView, and pushed down
through the RemoteLayerTreeDrawingArea, and eventually
pushed onto FrameView.

* UIProcess/API/ios/WKContentView.mm:
(-[WKContentView fixedPositionRectFromExposedRect:scale:]):
(-[WKContentView _updateFixedPositionRect]):
(-[WKContentView didFinishScrollTo:]):
(-[WKContentView didZoomToScale:]):
* UIProcess/DrawingAreaProxy.cpp:
(WebKit::DrawingAreaProxy::setCustomFixedPositionRect):
* UIProcess/DrawingAreaProxy.h:
* WebProcess/WebPage/DrawingArea.h:
* WebProcess/WebPage/DrawingArea.messages.in:
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::setCustomFixedPositionRect):

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

5 years agoMake WebKitTestRunner work with iOS
dfarler@apple.com [Fri, 24 Jan 2014 23:20:08 +0000 (23:20 +0000)]
Make WebKitTestRunner work with iOS
https://bugs.webkit.org/show_bug.cgi?id=127448

Reviewed by Simon Fraser.

Combined patch from Simon below with some additional xcconfig cleanups,
rebasing and stubbing out a couple of new functions that popped up
since then.

2013-12-03  Simon Fraser  <simon.fraser@apple.com>

        <rdar://problem/15515469> Get WebKitTestRunner working on iOS

        Get WebKitTestRunner limping on iOS. Main parts:
        - Stub out lots of accessibility-related functions.
        - Stub out EventSender
        - Create target to make a bundled app that runs in the simulator,
          and copy the injected bundle library into it.
        - Make a UIWindow and WKView to load tests in

        It runs, load tests, and dumps results to output. More work will be
        required once we can execute it via the webkitpy scripts.

* WebKitTestRunner/Configurations/Base.xcconfig:
* WebKitTestRunner/Configurations/InjectedBundle.xcconfig:
* WebKitTestRunner/Configurations/WebKitTestRunner.xcconfig:
* WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
* WebKitTestRunner/InjectedBundle/ios/AccessibilityControllerIOS.mm: Added.
(WTR::AccessibilityController::addNotificationListener):
(WTR::AccessibilityController::removeNotificationListener):
(WTR::AccessibilityController::platformName):
(WTR::AccessibilityController::logAccessibilityEvents):
(WTR::AccessibilityController::resetToConsistentState):
(WTR::findAccessibleObjectById):
(WTR::AccessibilityController::accessibleElementById):
* WebKitTestRunner/InjectedBundle/ios/AccessibilityNotificationHandler.h: Added.
* WebKitTestRunner/InjectedBundle/ios/AccessibilityTextMarkerIOS.mm: Copied from Tools/WebKitTestRunner/WebKitTestRunnerPrefix.h.
(WTR::AccessibilityTextMarker::isEqual):
* WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm: Added.
(WTR::AccessibilityUIElement::AccessibilityUIElement):
(WTR::AccessibilityUIElement::~AccessibilityUIElement):
(WTR::AccessibilityUIElement::isEqual):
(WTR::AccessibilityUIElement::getLinkedUIElements):
(WTR::AccessibilityUIElement::getDocumentLinks):
(WTR::AccessibilityUIElement::getChildren):
(WTR::AccessibilityUIElement::getChildrenWithRange):
(WTR::AccessibilityUIElement::childrenCount):
(WTR::AccessibilityUIElement::elementAtPoint):
(WTR::AccessibilityUIElement::indexOfChild):
(WTR::AccessibilityUIElement::childAtIndex):
(WTR::AccessibilityUIElement::linkedUIElementAtIndex):
(WTR::AccessibilityUIElement::ariaOwnsElementAtIndex):
(WTR::AccessibilityUIElement::ariaFlowToElementAtIndex):
(WTR::AccessibilityUIElement::disclosedRowAtIndex):
(WTR::AccessibilityUIElement::rowAtIndex):
(WTR::AccessibilityUIElement::selectedChildAtIndex):
(WTR::AccessibilityUIElement::selectedChildrenCount):
(WTR::AccessibilityUIElement::selectedRowAtIndex):
(WTR::AccessibilityUIElement::titleUIElement):
(WTR::AccessibilityUIElement::parentElement):
(WTR::AccessibilityUIElement::disclosedByRow):
(WTR::AccessibilityUIElement::attributesOfLinkedUIElements):
(WTR::AccessibilityUIElement::attributesOfDocumentLinks):
(WTR::AccessibilityUIElement::attributesOfChildren):
(WTR::AccessibilityUIElement::allAttributes):
(WTR::AccessibilityUIElement::stringAttributeValue):
(WTR::AccessibilityUIElement::numberAttributeValue):
(WTR::AccessibilityUIElement::uiElementArrayAttributeValue):
(WTR::AccessibilityUIElement::uiElementAttributeValue):
(WTR::AccessibilityUIElement::boolAttributeValue):
(WTR::AccessibilityUIElement::isAttributeSettable):
(WTR::AccessibilityUIElement::isAttributeSupported):
(WTR::AccessibilityUIElement::parameterizedAttributeNames):
(WTR::AccessibilityUIElement::role):
(WTR::AccessibilityUIElement::subrole):
(WTR::AccessibilityUIElement::roleDescription):
(WTR::AccessibilityUIElement::title):
(WTR::AccessibilityUIElement::description):
(WTR::AccessibilityUIElement::orientation):
(WTR::AccessibilityUIElement::stringValue):
(WTR::AccessibilityUIElement::language):
(WTR::AccessibilityUIElement::helpText):
(WTR::AccessibilityUIElement::x):
(WTR::AccessibilityUIElement::y):
(WTR::AccessibilityUIElement::width):
(WTR::AccessibilityUIElement::height):
(WTR::AccessibilityUIElement::clickPointX):
(WTR::AccessibilityUIElement::clickPointY):
(WTR::AccessibilityUIElement::intValue):
(WTR::AccessibilityUIElement::minValue):
(WTR::AccessibilityUIElement::maxValue):
(WTR::AccessibilityUIElement::valueDescription):
(WTR::AccessibilityUIElement::insertionPointLineNumber):
(WTR::AccessibilityUIElement::isPressActionSupported):
(WTR::AccessibilityUIElement::isIncrementActionSupported):
(WTR::AccessibilityUIElement::isDecrementActionSupported):
(WTR::AccessibilityUIElement::isEnabled):
(WTR::AccessibilityUIElement::isRequired):
(WTR::AccessibilityUIElement::isFocused):
(WTR::AccessibilityUIElement::isSelected):
(WTR::AccessibilityUIElement::isSelectedOptionActive):
(WTR::AccessibilityUIElement::isIndeterminate):
(WTR::AccessibilityUIElement::isExpanded):
(WTR::AccessibilityUIElement::isChecked):
(WTR::AccessibilityUIElement::hierarchicalLevel):
(WTR::AccessibilityUIElement::classList):
(WTR::AccessibilityUIElement::speak):
(WTR::AccessibilityUIElement::ariaIsGrabbed):
(WTR::AccessibilityUIElement::ariaDropEffects):
(WTR::AccessibilityUIElement::lineForIndex):
(WTR::AccessibilityUIElement::rangeForLine):
(WTR::AccessibilityUIElement::rangeForPosition):
(WTR::AccessibilityUIElement::boundsForRange):
(WTR::AccessibilityUIElement::stringForRange):
(WTR::AccessibilityUIElement::attributedStringForRange):
(WTR::AccessibilityUIElement::attributedStringRangeIsMisspelled):
(WTR::uiElementCountForSearchPredicate):
(WTR::AccessibilityUIElement::uiElementCountForSearchPredicate):
(WTR::AccessibilityUIElement::uiElementForSearchPredicate):
(WTR::AccessibilityUIElement::attributesOfColumnHeaders):
(WTR::AccessibilityUIElement::attributesOfRowHeaders):
(WTR::AccessibilityUIElement::attributesOfColumns):
(WTR::AccessibilityUIElement::attributesOfRows):
(WTR::AccessibilityUIElement::attributesOfVisibleCells):
(WTR::AccessibilityUIElement::attributesOfHeader):
(WTR::AccessibilityUIElement::rowCount):
(WTR::AccessibilityUIElement::columnCount):
(WTR::AccessibilityUIElement::indexInTable):
(WTR::AccessibilityUIElement::rowIndexRange):
(WTR::AccessibilityUIElement::columnIndexRange):
(WTR::AccessibilityUIElement::cellForColumnAndRow):
(WTR::AccessibilityUIElement::horizontalScrollbar):
(WTR::AccessibilityUIElement::verticalScrollbar):
(WTR::AccessibilityUIElement::scrollToMakeVisible):
(WTR::AccessibilityUIElement::selectedTextRange):
(WTR::AccessibilityUIElement::setSelectedTextRange):
(WTR::AccessibilityUIElement::increment):
(WTR::AccessibilityUIElement::decrement):
(WTR::AccessibilityUIElement::showMenu):
(WTR::AccessibilityUIElement::press):
(WTR::AccessibilityUIElement::setSelectedChild):
(WTR::AccessibilityUIElement::accessibilityValue):
(WTR::AccessibilityUIElement::documentEncoding):
(WTR::AccessibilityUIElement::documentURI):
(WTR::AccessibilityUIElement::url):
(WTR::AccessibilityUIElement::addNotificationListener):
(WTR::AccessibilityUIElement::removeNotificationListener):
(WTR::AccessibilityUIElement::isFocusable):
(WTR::AccessibilityUIElement::isSelectable):
(WTR::AccessibilityUIElement::isMultiSelectable):
(WTR::AccessibilityUIElement::isVisible):
(WTR::AccessibilityUIElement::isOffScreen):
(WTR::AccessibilityUIElement::isCollapsed):
(WTR::AccessibilityUIElement::isIgnored):
(WTR::AccessibilityUIElement::hasPopup):
(WTR::AccessibilityUIElement::takeFocus):
(WTR::AccessibilityUIElement::takeSelection):
(WTR::AccessibilityUIElement::addSelection):
(WTR::AccessibilityUIElement::removeSelection):
(WTR::AccessibilityUIElement::textMarkerRangeForElement):
(WTR::AccessibilityUIElement::textMarkerRangeLength):
(WTR::AccessibilityUIElement::previousTextMarker):
(WTR::AccessibilityUIElement::nextTextMarker):
(WTR::AccessibilityUIElement::stringForTextMarkerRange):
(WTR::AccessibilityUIElement::textMarkerRangeForMarkers):
(WTR::AccessibilityUIElement::startTextMarkerForTextMarkerRange):
(WTR::AccessibilityUIElement::endTextMarkerForTextMarkerRange):
(WTR::AccessibilityUIElement::endTextMarkerForBounds):
(WTR::AccessibilityUIElement::startTextMarkerForBounds):
(WTR::AccessibilityUIElement::textMarkerForPoint):
(WTR::AccessibilityUIElement::accessibilityElementForTextMarker):
(WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeContainsAttribute):
(WTR::AccessibilityUIElement::indexForTextMarker):
(WTR::AccessibilityUIElement::isTextMarkerValid):
(WTR::AccessibilityUIElement::textMarkerForIndex):
(WTR::AccessibilityUIElement::startTextMarker):
(WTR::AccessibilityUIElement::endTextMarker):
(WTR::AccessibilityUIElement::mathPostscriptsDescription):
(WTR::AccessibilityUIElement::mathPrescriptsDescription):
(WTR::AccessibilityUIElement::pathDescription):
(WTR::AccessibilityUIElement::supportedActions):
* WebKitTestRunner/InjectedBundle/ios/ActivateFontsIOS.mm: Copied from Tools/WebKitTestRunner/WebKitTestRunnerPrefix.h.
(WTR::activateFonts):
* WebKitTestRunner/InjectedBundle/ios/EventSenderProxyIOS.mm: Added.
(WTR::EventSenderProxy::EventSenderProxy):
(WTR::EventSenderProxy::~EventSenderProxy):
(WTR::EventSenderProxy::updateClickCountForButton):
(WTR::EventSenderProxy::mouseDown):
(WTR::EventSenderProxy::mouseUp):
(WTR::EventSenderProxy::mouseMoveTo):
(WTR::EventSenderProxy::leapForward):
(WTR::EventSenderProxy::keyDown):
(WTR::EventSenderProxy::mouseScrollBy):
(WTR::EventSenderProxy::continuousMouseScrollBy):
(WTR::EventSenderProxy::addTouchPoint):
(WTR::EventSenderProxy::updateTouchPoint):
(WTR::EventSenderProxy::setTouchModifier):
(WTR::EventSenderProxy::setTouchPointRadius):
(WTR::EventSenderProxy::touchStart):
(WTR::EventSenderProxy::touchMove):
(WTR::EventSenderProxy::touchEnd):
(WTR::EventSenderProxy::touchCancel):
(WTR::EventSenderProxy::clearTouchPoints):
(WTR::EventSenderProxy::releaseTouchPoint):
(WTR::EventSenderProxy::cancelTouchPoint):
* WebKitTestRunner/InjectedBundle/ios/InjectedBundleIOS.mm: Copied from Tools/WebKitTestRunner/WebKitTestRunnerPrefix.h.
(WTR::InjectedBundle::platformInitialize):
* WebKitTestRunner/InjectedBundle/ios/InjectedBundlePageIOS.mm: Copied from Tools/WebKitTestRunner/WebKitTestRunnerPrefix.h.
(WTR::InjectedBundlePage::platformDidStartProvisionalLoadForFrame):
* WebKitTestRunner/Makefile:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::initialize):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::invoke):
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
* WebKitTestRunner/WebKitTestRunnerApp/AppDelegate.h: Added.
* WebKitTestRunner/WebKitTestRunnerApp/AppDelegate.m: Added.
(-[AppDelegate application:didFinishLaunchingWithOptions:]):
(-[AppDelegate applicationWillResignActive:]):
(-[AppDelegate applicationDidEnterBackground:]):
(-[AppDelegate applicationWillEnterForeground:]):
(-[AppDelegate applicationDidBecomeActive:]):
(-[AppDelegate applicationWillTerminate:]):
* WebKitTestRunner/WebKitTestRunnerApp/Images.xcassets/AppIcon.appiconset/Contents.json: Added.
* WebKitTestRunner/WebKitTestRunnerApp/Images.xcassets/LaunchImage.launchimage/Contents.json: Added.
* WebKitTestRunner/WebKitTestRunnerApp/WebKitTestRunnerApp-Info.plist: Added.
* WebKitTestRunner/WebKitTestRunnerApp/WebKitTestRunnerApp-Prefix.pch: Added.
* WebKitTestRunner/WebKitTestRunnerApp/en.lproj/InfoPlist.strings: Added.
* WebKitTestRunner/WebKitTestRunnerApp/main.m: Added.
(main):
* WebKitTestRunner/WebKitTestRunnerAppTests-Info.plist: Added.
* WebKitTestRunner/WebKitTestRunnerAppTests/WebKitTestRunnerAppTests-Info.plist: Added.
* WebKitTestRunner/WebKitTestRunnerAppTests/WebKitTestRunnerAppTests.m: Added.
(-[WebKitTestRunnerAppTests setUp]):
(-[WebKitTestRunnerAppTests tearDown]):
(-[WebKitTestRunnerAppTests testExample]):
* WebKitTestRunner/WebKitTestRunnerAppTests/en.lproj/InfoPlist.strings: Added.
* WebKitTestRunner/WebKitTestRunnerPrefix.h:
* WebKitTestRunner/cg/TestInvocationCG.cpp:
* WebKitTestRunner/iOS.xcconfig: Added.
* WebKitTestRunner/ios/PlatformWebViewIOS.mm: Added.
(-[TestRunnerWKView initWithFrame:contextRef:pageGroupRef:relatedToPage:useTiledDrawing:]):
(-[TestRunnerWKView _shouldUseTiledDrawingArea]):
(-[WebKitTestRunnerWindow isKeyWindow]):
(-[WebKitTestRunnerWindow setFrameOrigin:]):
(-[WebKitTestRunnerWindow setFrame:]):
(-[WebKitTestRunnerWindow frameRespectingFakeOrigin]):
(-[WebKitTestRunnerWindow backingScaleFactor]):
(WTR::PlatformWebView::PlatformWebView):
(WTR::PlatformWebView::resizeTo):
(WTR::PlatformWebView::~PlatformWebView):
(WTR::PlatformWebView::page):
(WTR::PlatformWebView::focus):
(WTR::PlatformWebView::windowFrame):
(WTR::PlatformWebView::setWindowFrame):
(WTR::PlatformWebView::didInitializeClients):
(WTR::PlatformWebView::addChromeInputField):
(WTR::PlatformWebView::removeChromeInputField):
(WTR::PlatformWebView::makeWebViewFirstResponder):
(WTR::PlatformWebView::windowSnapshotImage):
(WTR::PlatformWebView::viewSupportsOptions):
* WebKitTestRunner/ios/TestControllerIOS.mm: Added.
(WTR::TestController::notifyDone):
(WTR::TestController::platformInitialize):
(WTR::TestController::platformDestroy):
(WTR::TestController::initializeInjectedBundlePath):
(WTR::TestController::initializeTestPluginDirectory):
(WTR::TestController::platformRunUntil):
(WTR::TestController::platformInitializeContext):
(WTR::TestController::runModal):
(WTR::TestController::platformLibraryPathForTesting):
* WebKitTestRunner/ios/WebArchiveDumpSupportIOS.mm: Copied from Tools/WebKitTestRunner/WebKitTestRunnerPrefix.h.
(createCFURLResponseFromResponseData):
(supportedNonImageMIMETypes):
* WebKitTestRunner/ios/mainIOS.mm: Copied from Tools/WebKitTestRunner/WebKitTestRunnerPrefix.h.
(-[WebKitTestRunnerApp _runTestController]):
(-[WebKitTestRunnerApp applicationDidFinishLaunching:]):
(main):

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

5 years agoGet rid of WebLoaderClient
andersca@apple.com [Fri, 24 Jan 2014 23:14:10 +0000 (23:14 +0000)]
Get rid of WebLoaderClient
https://bugs.webkit.org/show_bug.cgi?id=127587

Reviewed by Andreas Kling.

Move WebLoaderClient into WKPage.cpp.

* UIProcess/API/C/WKPage.cpp:
(WKPageSetPageLoaderClient):
* UIProcess/API/Cocoa/WKBrowsingContextController.mm:
(-[WKBrowsingContextController setLoadDelegate:]):
* UIProcess/WebLoaderClient.cpp: Removed.
* UIProcess/WebLoaderClient.h: Removed.
* UIProcess/WebPageProxy.h:
* WebKit2.xcodeproj/project.pbxproj:

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

5 years agoIDB: Support createIndex/deleteIndex
beidson@apple.com [Fri, 24 Jan 2014 23:05:51 +0000 (23:05 +0000)]
IDB: Support createIndex/deleteIndex
<rdar://problem/15779642> and https://bugs.webkit.org/show_bug.cgi?id=127585

Reviewed by Tim Horton.

* DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
(WebKit::UniqueIDBDatabase::createIndex):
(WebKit::UniqueIDBDatabase::deleteIndex):
(WebKit::UniqueIDBDatabase::createIndexInBackingStore):
(WebKit::UniqueIDBDatabase::deleteIndexInBackingStore):

* DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
* DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::deleteObjectStore): Also drop all associated indexes.
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::createIndex):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::deleteIndex):
* DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:

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

5 years ago[New Multicolumn] Don't destroy all the renderers when a multi-column block stops...
hyatt@apple.com [Fri, 24 Jan 2014 22:52:41 +0000 (22:52 +0000)]
[New Multicolumn] Don't destroy all the renderers when a multi-column block stops being multi-column (and vice versa)
https://bugs.webkit.org/show_bug.cgi?id=127584

Make the logic for when you need columns and when you don't shared between the
old multi-column code and the new multi-column code. Make sure that the flow thread
and sets get created lazily and destroyed on-demand when whether or not we should
have multiple columns changes.

Reviewed by Beth Dakin.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::updateLogicalWidthAndColumnWidth):
No longer virtual. The new column code now uses this function too.

(WebCore::RenderBlock::availableLogicalWidth):
Renamed desiredColumnWidth() to computedColumnWidth().

(WebCore::RenderBlock::computeColumnCountAndWidth):
Renamed calcColumnWidth to computeColumnCountAndWidth.

(WebCore::RenderBlock::setComputedColumnCountAndWidth):
Rename setDesiredColumnCountAndWidth to computed.

(WebCore::RenderBlock::computedColumnWidth):
(WebCore::RenderBlock::computedColumnCount):
Renamed desiredColumnWidth/Count to computedColumnWidth/Count and made them virtual.

(WebCore::RenderBlock::updateFirstLetterStyle):
desired -> computed rename.

* rendering/RenderBlock.h:
Renames and made a few functions virtual so that RenderBlockFlow can override.

* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::RenderBlockFlow):
Don't create the flow thread at construction time any longer.

(WebCore::RenderBlockFlow::createMultiColumnFlowThread):
(WebCore::RenderBlockFlow::destroyMultiColumnFlowThread):
The methods to create and destroy flow threads. These work at any time now and will
fix up the render tree accordingly.

(WebCore::RenderBlockFlow::setComputedColumnCountAndWidth):
Virtual override that creates/destroys the new multi-column information as needed.

(WebCore::RenderBlockFlow::computedColumnWidth):
(WebCore::RenderBlockFlow::computedColumnCount):
Overrides to return the cached column width and count from the flow thread.

* rendering/RenderBlockFlow.h:
Has overrides of the virtual functions needed to turn multi-column state on/off and
to hand back computed count/width information.

* rendering/RenderMultiColumnFlowThread.cpp:
* rendering/RenderMultiColumnFlowThread.h:
Removed the algorithm to compute column count and width, since this has been combined
with the old multi-column layout code.

* rendering/RenderView.cpp:
(WebCore::RenderView::computeColumnCountAndWidth):
Renamed desired -> computed.

* rendering/RenderView.h:
Renamed desired -> computed.

* style/StyleResolveTree.cpp:
(WebCore::Style::determineChange):
(WebCore::Style::resolveLocal):
(WebCore::Style::resolveTree):
* style/StyleResolveTree.h:
The Settings argument is no longer needed now that we don't destroy and re-create
the renderer for a block flow if it stops being (or becomes) multi-column.

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

5 years agoFix 32-bit build.
andersca@apple.com [Fri, 24 Jan 2014 22:29:03 +0000 (22:29 +0000)]
Fix 32-bit build.

* WebCore.exp.in:

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

5 years ago[GTK] youtube HTML5 videos in fullscreen, after <Esc>, can't go fullscreen again
vjaquez@igalia.com [Fri, 24 Jan 2014 22:05:22 +0000 (22:05 +0000)]
[GTK] youtube HTML5 videos in fullscreen, after <Esc>, can't go fullscreen again
https://bugs.webkit.org/show_bug.cgi?id=127064

When pressing <Esc> or <f> at full screen, the WebView shall emit the
event webkitfullscreenchange, but wk2gtk does not emit it. This is
because the WebView manages directly the exit of the full screen.

With this patch the WebView calls requestExitFullScreen to the full
screen manager, instead of managing directly the exit of the full
screen, and the event webkitfullscreenchange will be dispatched
correctly.

Reviewed by Martin Robinson.

No tests are included because there is a bug in WKTR that prevents the
execution of a test for this patch. See
https://bugs.webkit.org/show_bug.cgi?id=127348

* UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseKeyPressEvent): Call
webkitWebViewBaseRequestExitFullScreen.
(webkitWebViewBaseRequestExitFullScreen): Added.
* UIProcess/API/gtk/WebKitWebViewBasePrivate.h: Ditto.

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

5 years ago[Win] Convert some NMake files to MSBuild project files
bfulgham@apple.com [Fri, 24 Jan 2014 22:01:10 +0000 (22:01 +0000)]
[Win] Convert some NMake files to MSBuild project files
https://bugs.webkit.org/show_bug.cgi?id=127579

Reviewed by Tim Horton.

../JavaScriptCore:

* JavaScriptCore.vcxproj/JavaScriptCore.make: Removed.
* JavaScriptCore.vcxproj/JavaScriptCore.proj: Added.

../WebCore:

* WebCore.vcxproj/WebCore.make: Removed.
* WebCore.vcxproj/WebCore.proj: Added.

../WTF:

* WTF.vcxproj/WTF.make: Removed.
* WTF.vcxproj/WTF.proj: Added.

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

5 years agoFixed a bad assertion in CodeBlock::removeBreakpoint().
mark.lam@apple.com [Fri, 24 Jan 2014 21:46:25 +0000 (21:46 +0000)]
Fixed a bad assertion in CodeBlock::removeBreakpoint().
<https://webkit.org/b/127581>

Reviewed by Joseph Pecoraro.

* bytecode/CodeBlock.h:
(JSC::CodeBlock::removeBreakpoint):

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

5 years agoiOS build fix after r162710.
timothy_horton@apple.com [Fri, 24 Jan 2014 21:28:25 +0000 (21:28 +0000)]
iOS build fix after r162710.

This is why these sorts of comments are bad.

* UIProcess/WebPageProxy.cpp:

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

5 years agofast/profiler tests ASSERTing after moving recompileAllJSFunctions off a timer
joepeck@webkit.org [Fri, 24 Jan 2014 21:27:42 +0000 (21:27 +0000)]
fast/profiler tests ASSERTing after moving recompileAllJSFunctions off a timer
https://bugs.webkit.org/show_bug.cgi?id=127566

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

Make the VM handle recompilation as soon as possible after it is requested.

* debugger/Debugger.cpp:
(JSC::Debugger::recompileAllJSFunctions):
When in a JavaScript stack, mark for recompilation when possible.

* runtime/VMEntryScope.h:
(JSC::VMEntryScope::setRecompilationNeeded):
* runtime/VMEntryScope.cpp:
(JSC::VMEntryScope::VMEntryScope):
(JSC::VMEntryScope::~VMEntryScope):
Handle recompilation when the top VMEntryScope is popped.
Pass the needs recompilation flag up the stack if needed.

Source/WebCore:

Covered by existing tests.

* testing/Internals.cpp:
(WebCore::Internals::closeDummyInspectorFrontend):
Now that we don't have to fake that this is a page being destroyed to
avoid recompilation. Use the InspectorDestroyed reason.

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

5 years agoUse a side table to map WebPageProxy objects to WKBrowsingContextController objects
andersca@apple.com [Fri, 24 Jan 2014 21:25:23 +0000 (21:25 +0000)]
Use a side table to map WebPageProxy objects to WKBrowsingContextController objects
https://bugs.webkit.org/show_bug.cgi?id=127577

Reviewed by Tim Horton.

* UIProcess/API/Cocoa/WKBrowsingContextController.mm:
(browsingContextControllerMap):
(-[WKBrowsingContextController dealloc]):
(-[WKBrowsingContextController _initWithPageRef:]):
(+[WKBrowsingContextController _browsingContextControllerForPageRef:]):
* UIProcess/API/Cocoa/WKBrowsingContextControllerInternal.h:
* UIProcess/WebPageProxy.h:

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

5 years agoGeneric JSObject::put should handle static properties in the classinfo hierarchy
mark.lam@apple.com [Fri, 24 Jan 2014 21:23:17 +0000 (21:23 +0000)]
Generic JSObject::put should handle static properties in the classinfo hierarchy
https://bugs.webkit.org/show_bug.cgi?id=127523

Patch by Oliver Hunt <oliver@apple.com> on 2014-01-24
Reviewed by Geoffrey Garen.

This patch makes JSObject::put correctly call static setters
defined by the ClassInfo.

To make this not clobber performance, the ClassInfo HashTable
now includes a flag to indicate that it contains setters. This
required updating the lut generator so that it tracked (and emitted)
this.

The rest of the change was making a number of the methods take
a VM rather than an ExecState*, so that Structure could set the
getter/setter flags during construction (if necessary).

This also means most objects do not need to perform a lookupPut
manually anymore, so most custom ::put's are no longer needed.
DOMWindow is the only exception as it has interesting security
related semantics.

* create_hash_table:
* interpreter/CallFrame.h:
(JSC::ExecState::arrayConstructorTable):
(JSC::ExecState::arrayPrototypeTable):
(JSC::ExecState::booleanPrototypeTable):
(JSC::ExecState::dataViewTable):
(JSC::ExecState::dateTable):
(JSC::ExecState::dateConstructorTable):
(JSC::ExecState::errorPrototypeTable):
(JSC::ExecState::globalObjectTable):
(JSC::ExecState::jsonTable):
(JSC::ExecState::numberConstructorTable):
(JSC::ExecState::numberPrototypeTable):
(JSC::ExecState::objectConstructorTable):
(JSC::ExecState::privateNamePrototypeTable):
(JSC::ExecState::regExpTable):
(JSC::ExecState::regExpConstructorTable):
(JSC::ExecState::regExpPrototypeTable):
(JSC::ExecState::stringConstructorTable):
(JSC::ExecState::promisePrototypeTable):
(JSC::ExecState::promiseConstructorTable):
* runtime/ArrayConstructor.cpp:
(JSC::ArrayConstructor::getOwnPropertySlot):
* runtime/ArrayPrototype.cpp:
(JSC::ArrayPrototype::getOwnPropertySlot):
* runtime/BooleanPrototype.cpp:
(JSC::BooleanPrototype::getOwnPropertySlot):
* runtime/ClassInfo.h:
(JSC::ClassInfo::propHashTable):
* runtime/DateConstructor.cpp:
(JSC::DateConstructor::getOwnPropertySlot):
* runtime/DatePrototype.cpp:
(JSC::DatePrototype::getOwnPropertySlot):
* runtime/ErrorPrototype.cpp:
(JSC::ErrorPrototype::getOwnPropertySlot):
* runtime/JSDataViewPrototype.cpp:
(JSC::JSDataViewPrototype::getOwnPropertySlot):
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::getOwnPropertySlot):
* runtime/JSONObject.cpp:
(JSC::JSONObject::getOwnPropertySlot):
* runtime/JSObject.cpp:
(JSC::JSObject::put):
(JSC::JSObject::deleteProperty):
* runtime/JSPromiseConstructor.cpp:
(JSC::JSPromiseConstructor::getOwnPropertySlot):
* runtime/JSPromisePrototype.cpp:
(JSC::JSPromisePrototype::getOwnPropertySlot):
* runtime/Lookup.h:
(JSC::HashTable::copy):
(JSC::putEntry):
(JSC::lookupPut):
* runtime/NamePrototype.cpp:
(JSC::NamePrototype::getOwnPropertySlot):
* runtime/NumberConstructor.cpp:
(JSC::NumberConstructor::getOwnPropertySlot):
* runtime/NumberConstructor.h:
* runtime/NumberPrototype.cpp:
(JSC::NumberPrototype::getOwnPropertySlot):
* runtime/ObjectConstructor.cpp:
(JSC::ObjectConstructor::getOwnPropertySlot):
* runtime/RegExpConstructor.cpp:
(JSC::RegExpConstructor::getOwnPropertySlot):
* runtime/RegExpConstructor.h:
* runtime/RegExpObject.cpp:
(JSC::RegExpObject::getOwnPropertySlot):
(JSC::RegExpObject::put):
* runtime/RegExpPrototype.cpp:
(JSC::RegExpPrototype::getOwnPropertySlot):
* runtime/StringConstructor.cpp:
(JSC::StringConstructor::getOwnPropertySlot):
* runtime/Structure.cpp:
(JSC::Structure::Structure):
(JSC::Structure::freezeTransition):
(JSC::ClassInfo::hasStaticSetterOrReadonlyProperties):

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

5 years agoGet rid of monotonicallyIncreasingTimeMS and start using std::chrono instead
andersca@apple.com [Fri, 24 Jan 2014 20:41:50 +0000 (20:41 +0000)]
Get rid of monotonicallyIncreasingTimeMS and start using std::chrono instead
https://bugs.webkit.org/show_bug.cgi?id=127571

Reviewed by Antti Koivisto.

Source/WebCore:

WebCore.exp.in:
Update symbols.

* dom/Document.cpp:
(WebCore::Document::Document):
(WebCore::Document::implicitClose):
(WebCore::Document::setParsing):
(WebCore::Document::isLayoutTimerActive):
(WebCore::Document::minimumLayoutDelay):
(WebCore::Document::elapsedTime):
(WebCore::Document::write):
(WebCore::Document::styleResolverChanged):
* dom/Document.h:
Use std::chrono instead of doubles for the times and durations.

* fileapi/FileReader.cpp:
(WebCore::FileReader::FileReader):
(WebCore::FileReader::didReceiveData):
* fileapi/FileReader.h:
Switch over to std::chrono.

* page/FrameView.cpp:
(WebCore::FrameView::layout):
(WebCore::FrameView::layoutTimerFired):
(WebCore::FrameView::scheduleRelayout):
(WebCore::FrameView::scheduleRelayoutOfSubtree):
Update for Document::elapsedTime() changes.

* page/Settings.cpp:
(WebCore::Settings::setLayoutInterval):
* page/Settings.h:
(WebCore::Settings::layoutInterval):
Change layoutInterval to be std::chrono::milliseconds instead of int.

* platform/Timer.h:
(WebCore::TimerBase::startOneShot):
Add an overload that takes std::chrono::milliseconds.

Source/WebKit/mac:

* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
Convert the layout interval to std::chrono::milliseconds.

Source/WTF:

* wtf/Compiler.h:
Add a CONSTEXPR define so we can still use constexpr on compilers that don't support them (MSVC).

* wtf/CurrentTime.h:
Remove monotonicallyIncreasingTimeMS().

* wtf/StdLibExtras.h:
(std::literals::chrono_literals::operator _s):
(std::literals::chrono_literals::operator _ms):
Add _s and _ms literals. Once we switch over to C++14, we can drop them and just use the built-in ones.

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

5 years agoiOS build fix after r162710.
timothy_horton@apple.com [Fri, 24 Jan 2014 20:27:47 +0000 (20:27 +0000)]
iOS build fix after r162710.

* UIProcess/API/ios/PageClientImplIOS.h:
* UIProcess/API/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::takeViewSnapshot):

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

5 years ago[GTK] Put cache files in XDG_CACHE_HOME
commit-queue@webkit.org [Fri, 24 Jan 2014 20:06:19 +0000 (20:06 +0000)]
[GTK] Put cache files in XDG_CACHE_HOME
https://bugs.webkit.org/show_bug.cgi?id=123458

Patch by Enrique Ocaña González <eocanha@igalia.com> on 2014-01-24
Reviewed by Martin Robinson.

Source/WebKit/gtk:

* webkit/webkitglobals.cpp:
(webkitInit):
* webkit/webkiticondatabase.cpp:

Source/WebKit2:

* UIProcess/gtk/WebContextGtk.cpp:
(WebKit::WebContext::platformDefaultIconDatabasePath):

Tools:

* GtkLauncher/main.c:
(createBrowser):

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

5 years agoGeneric JSObject::put should handle static properties in the classinfo hierarchy
oliver@apple.com [Fri, 24 Jan 2014 20:03:34 +0000 (20:03 +0000)]
Generic JSObject::put should handle static properties in the classinfo hierarchy
https://bugs.webkit.org/show_bug.cgi?id=127523

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

This patch makes JSObject::put correctly call static setters
defined by the ClassInfo.

To make this not clobber performance, the ClassInfo HashTable
now includes a flag to indicate that it contains setters. This
required updating the lut generator so that it tracked (and emitted)
this.

The rest of the change was making a number of the methods take
a VM rather than an ExecState*, so that Structure could set the
getter/setter flags during construction (if necessary).

This also means most objects do not need to perform a lookupPut
manually anymore, so most custom ::put's are no longer needed.
DOMWindow is the only exception as it has interesting security
related semantics.

* create_hash_table:
* interpreter/CallFrame.h:
(JSC::ExecState::arrayConstructorTable):
(JSC::ExecState::arrayPrototypeTable):
(JSC::ExecState::booleanPrototypeTable):
(JSC::ExecState::dataViewTable):
(JSC::ExecState::dateTable):
(JSC::ExecState::dateConstructorTable):
(JSC::ExecState::errorPrototypeTable):
(JSC::ExecState::globalObjectTable):
(JSC::ExecState::jsonTable):
(JSC::ExecState::numberConstructorTable):
(JSC::ExecState::numberPrototypeTable):
(JSC::ExecState::objectConstructorTable):
(JSC::ExecState::privateNamePrototypeTable):
(JSC::ExecState::regExpTable):
(JSC::ExecState::regExpConstructorTable):
(JSC::ExecState::regExpPrototypeTable):
(JSC::ExecState::stringConstructorTable):
(JSC::ExecState::promisePrototypeTable):
(JSC::ExecState::promiseConstructorTable):
* runtime/ArrayConstructor.cpp:
(JSC::ArrayConstructor::getOwnPropertySlot):
* runtime/ArrayPrototype.cpp:
(JSC::ArrayPrototype::getOwnPropertySlot):
* runtime/BooleanPrototype.cpp:
(JSC::BooleanPrototype::getOwnPropertySlot):
* runtime/ClassInfo.h:
(JSC::ClassInfo::propHashTable):
* runtime/DateConstructor.cpp:
(JSC::DateConstructor::getOwnPropertySlot):
* runtime/DatePrototype.cpp:
(JSC::DatePrototype::getOwnPropertySlot):
* runtime/ErrorPrototype.cpp:
(JSC::ErrorPrototype::getOwnPropertySlot):
* runtime/JSDataViewPrototype.cpp:
(JSC::JSDataViewPrototype::getOwnPropertySlot):
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::getOwnPropertySlot):
* runtime/JSONObject.cpp:
(JSC::JSONObject::getOwnPropertySlot):
* runtime/JSObject.cpp:
(JSC::JSObject::put):
(JSC::JSObject::deleteProperty):
* runtime/JSPromiseConstructor.cpp:
(JSC::JSPromiseConstructor::getOwnPropertySlot):
* runtime/JSPromisePrototype.cpp:
(JSC::JSPromisePrototype::getOwnPropertySlot):
* runtime/Lookup.h:
(JSC::HashTable::copy):
(JSC::putEntry):
(JSC::lookupPut):
* runtime/NamePrototype.cpp:
(JSC::NamePrototype::getOwnPropertySlot):
* runtime/NumberConstructor.cpp:
(JSC::NumberConstructor::getOwnPropertySlot):
* runtime/NumberConstructor.h:
* runtime/NumberPrototype.cpp:
(JSC::NumberPrototype::getOwnPropertySlot):
* runtime/ObjectConstructor.cpp:
(JSC::ObjectConstructor::getOwnPropertySlot):
* runtime/RegExpConstructor.cpp:
(JSC::RegExpConstructor::getOwnPropertySlot):
* runtime/RegExpConstructor.h:
* runtime/RegExpObject.cpp:
(JSC::RegExpObject::getOwnPropertySlot):
(JSC::RegExpObject::put):
* runtime/RegExpPrototype.cpp:
(JSC::RegExpPrototype::getOwnPropertySlot):
* runtime/StringConstructor.cpp:
(JSC::StringConstructor::getOwnPropertySlot):
* runtime/Structure.cpp:
(JSC::Structure::Structure):
(JSC::Structure::freezeTransition):
(JSC::ClassInfo::hasStaticSetterOrReadonlyProperties):

Source/WebCore:

Update the bindings generator to emit the flag indicating the presence
of setters, and remove the many (now unnecessary) put overrides.
Tested with run-jsc-benchmarks and shows neutral performance. A few of the
micro benchmarks actually get a significant performance increase which
is nice.

* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::put):
    We still need a custom call to lookupPut here in order
    to get the magic security semantics of the window object.
* bindings/scripts/CodeGeneratorJS.pm:
(hashTableAccessor):
(prototypeHashTableAccessor):
(constructorHashTableAccessor):
(GenerateImplementation):
(GenerateHashTable):
(GenerateConstructorHelperMethods):

* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::put):
* bindings/scripts/CodeGeneratorJS.pm:
(hashTableAccessor):
(prototypeHashTableAccessor):
(constructorHashTableAccessor):
(InstanceOverridesPutImplementation):
(InstanceOverridesPutDeclaration):
(GenerateHeader):
(GenerateImplementation):
(GenerateHashTable):
(GenerateConstructorHelperMethods):
* bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
* bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
* bindings/scripts/test/JS/JSTestEventConstructor.cpp:
* bindings/scripts/test/JS/JSTestEventTarget.cpp:
* bindings/scripts/test/JS/JSTestException.cpp:
* bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
* bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::JSTestInterface::put):
* bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
* bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
* bindings/scripts/test/JS/JSTestNode.cpp:
* bindings/scripts/test/JS/JSTestObj.cpp:
* bindings/scripts/test/JS/JSTestObj.h:
* bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
* bindings/scripts/test/JS/JSTestTypedefs.cpp:
* bindings/scripts/test/JS/JSTestTypedefs.h:
* bindings/scripts/test/JS/JSattribute.cpp:
* bindings/scripts/test/JS/JSreadonly.cpp:
* html/canvas/WebGLRenderingContext.idl:
  Remove bogus attribute, as it has never been in the spec and should not
  have been added.

LayoutTests:

Yay tests!

* fast/canvas/webgl/constants.html:
  Remove incorrect constant
* js/script-tests/static-put-in-prototype-chain.js: Added.
* js/static-put-in-prototype-chain-expected.txt: Added.
* js/static-put-in-prototype-chain.html: Added.

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

5 years ago[New Multicolumn] Eliminate RenderMultiColumnBlock
hyatt@apple.com [Fri, 24 Jan 2014 19:55:33 +0000 (19:55 +0000)]
[New Multicolumn] Eliminate RenderMultiColumnBlock
https://bugs.webkit.org/show_bug.cgi?id=127565

Reviewed by Antti Koivisto.

This patch eliminates RenderMultiColumnBlock and folds all of its remaining code
back into RenderBlockFlow. This allows all block flows to support multi-column
layout, including table cells, list items, and the RenderView itself.

* CMakeLists.txt:
* WebCore.order:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
Remove RenderMultiColumnBlock from the makefiles.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::adjustIntrinsicLogicalWidthsForColumns):
Tweak the comment, since it was no longer accurate.

* rendering/RenderBlock.h:
Move some functions down into RenderBlockFlow.

* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::RenderBlockFlow):
(WebCore::RenderBlockFlow::createMultiColumnFlowThreadIfNeeded):
(WebCore::RenderBlockFlow::styleDidChange):
(WebCore::RenderBlockFlow::relayoutForPagination):
(WebCore::RenderBlockFlow::layoutSpecialExcludedChild):
(WebCore::RenderBlockFlow::updateLogicalWidthAndColumnWidth):
(WebCore::RenderBlockFlow::addChild):
(WebCore::RenderBlockFlow::checkForPaginationLogicalHeightChange):
 * rendering/RenderBlockFlow.h:
 Move a bunch of functions from RenderMultiColumnBlock up into RenderBlockFlow.

* rendering/RenderBox.cpp:
(WebCore::RenderBox::isUnsplittableForPagination):
Calls isMultiColumnBlockFlow() now instead of testing for a specific renderer type.

* rendering/RenderElement.cpp:
(WebCore::RenderElement::createFor):
Remove the multicolumn block creation code, since we always make a block flow now.

* rendering/RenderMultiColumnBlock.cpp: Removed.
* rendering/RenderMultiColumnBlock.h: Removed.
Nuke the files.

* rendering/RenderMultiColumnFlowThread.cpp:
(WebCore::RenderMultiColumnFlowThread::initialLogicalWidth):
(WebCore::RenderMultiColumnFlowThread::autoGenerateRegionsToBlockOffset):
* rendering/RenderMultiColumnSet.cpp:
(WebCore::RenderMultiColumnSet::heightAdjustedForSetOffset):
(WebCore::RenderMultiColumnSet::addForcedBreak):
(WebCore::RenderMultiColumnSet::recalculateBalancedHeight):
(WebCore::RenderMultiColumnSet::updateLogicalWidth):
(WebCore::RenderMultiColumnSet::prepareForLayout):
(WebCore::RenderMultiColumnSet::columnGap):
(WebCore::RenderMultiColumnSet::paintColumnRules):
Change all of the functions in the multicolumnset and multicolumnflowthread classes
to cast the parent to a RenderBlockFlow now instead of a RenderMultiColumnBlock.
Change the code to call through to multiColumnFlowThread() for column-specific information
for that parent block.

* rendering/RenderObject.h:
(WebCore::RenderObject::isMultiColumnBlockFlow):
Remove isRenderMultiColumnBlock() and replace with isMultiColumnBlockFlow().

* rendering/RenderingAllInOne.cpp:
Remove RenderMultiColumnBlock include.

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