WebKit-https.git
5 years ago[WinCairo] Enable CSS_SELECTORS_LEVEL4.
commit-queue@webkit.org [Wed, 28 Jan 2015 20:35:51 +0000 (20:35 +0000)]
[WinCairo] Enable CSS_SELECTORS_LEVEL4.
https://bugs.webkit.org/show_bug.cgi?id=141003

Patch by peavo@outlook.com <peavo@outlook.com> on 2015-01-28
Reviewed by Brent Fulgham.

* win/tools/vsprops/FeatureDefinesCairo.props:

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

5 years ago[Win] More gardening to get the bot green.
bfulgham@apple.com [Wed, 28 Jan 2015 20:33:46 +0000 (20:33 +0000)]
[Win] More gardening to get the bot green.

* css3/scroll-snap/resources: Added.
* platform/win/TestExpectations:
* platform/win/fast/events/ondrop-text-html-expected.txt: Copied from platform/win/fast/events/ondrop-text-htmlt-expected.txt.
* platform/win/fast/events/ondrop-text-htmlt-expected.txt: Removed.
* platform/win/fast/html/marquee-scrollamount-expected.txt: Added.
* platform/win/fast/text/backslash-to-yen-sign-euc-expected.txt:
* platform/win/fast/text/fallback-traits-fixup-expected.txt:
* platform/win/fast/text/international/complex-character-based-fallback-expected.txt:

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

5 years ago[Win] Unreviewed gardening. Reskip some region tests.
bfulgham@apple.com [Wed, 28 Jan 2015 20:21:30 +0000 (20:21 +0000)]
[Win] Unreviewed gardening. Reskip some region tests.

* platform/win/TestExpectations:

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

5 years agoMove ASan flag settings from DebugRelease.xcconfig to Base.xcconfig
dburkart@apple.com [Wed, 28 Jan 2015 18:28:22 +0000 (18:28 +0000)]
Move ASan flag settings from DebugRelease.xcconfig to Base.xcconfig
https://bugs.webkit.org/show_bug.cgi?id=136765

Reviewed by Alexey Proskuryakov.

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

5 years agoUse an enum class for createFontFamilyValue()'s fromSystemFontID argument
cdumez@apple.com [Wed, 28 Jan 2015 18:24:48 +0000 (18:24 +0000)]
Use an enum class for createFontFamilyValue()'s fromSystemFontID argument
https://bugs.webkit.org/show_bug.cgi?id=140981

Reviewed by Darin Adler.

Use an enum class for createFontFamilyValue()'s fromSystemFontID argument
instead of a simple enum, as suggested by Sam. This is a bit nicer.

Also, use a boolean type for CSSFontFamily.fromSystemFontID instead of
the enum type to facilitate handling. Using a enum (class) for
CSSFontFamily's fromSystemFontID member is not useful as it is always
accessed by name.

* css/CSSFontFamily.h:
* css/CSSParser.cpp:
(WebCore::CSSParser::parseSystemFont):
* css/CSSValuePool.cpp:
(WebCore::CSSValuePool::createFontFamilyValue):
* css/CSSValuePool.h:

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

5 years agoFix typo in markPagesForVistedLinkStyleRecalc()
cdumez@apple.com [Wed, 28 Jan 2015 18:09:00 +0000 (18:09 +0000)]
Fix typo in markPagesForVistedLinkStyleRecalc()
https://bugs.webkit.org/show_bug.cgi?id=140977

Reviewed by Darin Adler.

Source/WebCore:

* WebCore.exp.in:
* history/CachedPage.h:
(WebCore::CachedPage::markForVisitedLinkStyleRecalc):
(WebCore::CachedPage::markForVistedLinkStyleRecalc): Deleted.
* history/PageCache.cpp:
(WebCore::PageCache::markPagesForVisitedLinkStyleRecalc):
(WebCore::PageCache::markPagesForVistedLinkStyleRecalc): Deleted.
* history/PageCache.h:

Source/WebKit/mac:

* WebCoreSupport/WebVisitedLinkStore.mm:
(WebVisitedLinkStore::removeAllVisitedLinks):
(WebVisitedLinkStore::removeVisitedLink):
(WebVisitedLinkStore::addVisitedLinkHash):

Source/WebKit/win:

* WebCoreSupport/WebVisitedLinkStore.cpp:
(WebVisitedLinkStore::removeAllVisitedLinks):
(WebVisitedLinkStore::addVisitedLinkHash):

Source/WebKit2:

* WebProcess/WebPage/VisitedLinkTableController.cpp:
(WebKit::VisitedLinkTableController::setVisitedLinkTable):
(WebKit::VisitedLinkTableController::visitedLinkStateChanged):
(WebKit::VisitedLinkTableController::allVisitedLinkStateChanged):
(WebKit::VisitedLinkTableController::removeAllVisitedLinks):

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

5 years agoUnreviewed. Remove duplicate friend class statement after r179255.
cdumez@apple.com [Wed, 28 Jan 2015 18:02:32 +0000 (18:02 +0000)]
Unreviewed. Remove duplicate friend class statement after r179255.

* history/PageCache.h:

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

5 years agoMake SVGElement::instancesForElement point to elements in the shadow tree, not SVGEle...
darin@apple.com [Wed, 28 Jan 2015 17:59:50 +0000 (17:59 +0000)]
Make SVGElement::instancesForElement point to elements in the shadow tree, not SVGElementInstance objects
https://bugs.webkit.org/show_bug.cgi?id=140984

Reviewed by Anders Carlsson.

Refactoring of code that is pretty well covered by existing tests, so
not adding new tests.

Inspired by work Rob Buis did in Blink:

    http://src.chromium.org/viewvc/blink?view=revision&revision=173275

* page/EventHandler.cpp:
(WebCore::EventHandler::clear): Removed code to zero m_lastInstanceUnderMouse.
(WebCore::instanceAssociatedWithShadowTreeElement): Deleted.
(WebCore::EventHandler::updateMouseEventTargetNode): Removed code that used
m_lastInstanceUnderMouse to track events on an object after recloning.
This behavior doesn't seem to be needed to pass any existing tests, and Rob
removed it from Blink, so I'll take it out and we can bring if back, based
on the original element rather than on the SVGElementInstance, if we find we
need to restore the behavior in the future.

* page/EventHandler.h: Removed m_lastInstanceUnderMouse.

* svg/SVGAnimateElementBase.cpp:
(WebCore::SVGAnimateElementBase::determineAnimatedPropertyType):
Changed this function to take a reference and to call the updated version
of the targetElement.animatedPropertyTypesForAttribute function.
(WebCore::SVGAnimateElementBase::calculateAnimatedValue): Updated to pass
a reference rather than a pointer.
(WebCore::SVGAnimateElementBase::resetAnimatedType): Updated to pass
references rather than pointers.
(WebCore::applyCSSPropertyToTarget): Updated to take a reference.
(WebCore::removeCSSPropertyFromTarget): Ditto.
(WebCore::applyCSSPropertyToTargetAndInstances): Ditto. Also use a modern
for loop, and iterate over shadow tree instances, not over SVGElementInstance.
(WebCore::removeCSSPropertyFromTargetAndInstances): Ditto.
(WebCore::notifyTargetAboutAnimValChange): Ditto.
(WebCore::notifyTargetAndInstancesAboutAnimValChange): Ditto.
(WebCore::SVGAnimateElementBase::clearAnimatedType): More of the same.
(WebCore::SVGAnimateElementBase::applyResultsToTarget): Ditto.
(WebCore::SVGAnimateElementBase::resetAnimatedPropertyType): Ditto.

* svg/SVGAnimateElementBase.h: Changed determineAnimatedPropertyType to take
a reference rahter than a pointer.

* svg/SVGAnimateMotionElement.cpp:
(WebCore::SVGAnimateMotionElement::applyResultsToTarget): Updated to use the
new instances instead of SVGElementInstance. Also added code to skip work if
the transform is not changing, and use the assignment operator instead of
breaking one matrix down and calling setMatrix on the other.

* svg/SVGAnimatedTypeAnimator.cpp:
(WebCore::SVGAnimatedTypeAnimator::findAnimatedPropertiesForAttributeName):
Changed to take a reference rather than a pointer, and rewrote to streamline,
using modern for loops and using the new instances set.

* svg/SVGAnimatedTypeAnimator.h: Removed the constructors from the
SVGElementAnimatedProperties struct since we can build them just fine without
them. Changed findAnimatedPropertiesForAttributeName to take a reference.

* svg/SVGAnimationElement.cpp:
(WebCore::SVGAnimationElement::currentValuesForValuesAnimation): Pass a
reference rather than a pointer. Also streamlined the code a bit and removed
a comment that tried to say exactly what the code was doing, but was outdated.

* svg/SVGElement.cpp:
(WebCore::SVGElement::~SVGElement): Disconnect all instances from this element
and also disconnect the corresponding element from this element if it itself
is an instance. This guarantees we have no dangling pointers.
(WebCore::SVGElement::mapInstanceToElement): Deleted.
(WebCore::SVGElement::removeInstanceMapping): Deleted.
(WebCore::SVGElement::instances): Renamed from instancesForElement and changed
to be a set of SVG element instances in the shadow tree, rather than
SVGElementInstance objects.
(WebCore::SVGElement::correspondingElement): Tweaked assertion a little and use
nullptr instead of 0.
(WebCore::SVGElement::correspondingUseElement): Added. Finds the use element
that owns the shadow tree this element is in by following the host element
pointer from the shadow root.
(WebCore::SVGElement::setCorrespondingElement): Added code to insert or remove
this element from the instances set of the corresponding element.
(WebCore::SVGElement::animatedPropertyTypesForAttribute): Renamed from
animatedPropertyTypeForAttribute and switched to use a return value instead of
an out argument.
(WebCore::SVGElement::addEventListener): Updated to use instances rather than
the old instancesForElement.
(WebCore::SVGElement::removeEventListener): Ditto.
(WebCore::SVGElement::synchronizeAllAnimatedSVGAttribute): Pass a reference.
(WebCore::SVGElement::synchronizeAnimatedSVGAttribute): Ditto.
(WebCore::SVGElement::isPresentationAttributeWithSVGDOM): Updated to use the
new function from AttributeToPropertyMap.

* svg/SVGElement.h: Changed animatedPropertyTypesForAttribute name to be plural
since it returns a vector of types, and made it use a return value instead of
an out argument. Added the correspondingUseElement function, and removed the
mapInstanceToElement and removeInstanceMapping functions.

* svg/SVGElementInstance.cpp:
(WebCore::SVGElementInstance::SVGElementInstance): Removed now-unneeded call to
mapInstanceToElement. This is now handled entirely by the SVGElement itself.
(WebCore::SVGElementInstance::detach): Removed now-unneeded call to
removeInstanceMapping. This is now handled entirely by the SVGElement itself.
(WebCore::SVGElementInstance::invalidateAllInstancesOfElement): Rewrote to be
based on the instances set; logic is different now because we remove each
element from that set as we go.

* svg/SVGElementRareData.h:
(WebCore::SVGElementRareData::SVGElementRareData): Removed initialization of
pointers since we can do that where they are defined instead.
(WebCore::SVGElementRareData::instances): Renamed from elementInstances and
changed the type.
(WebCore::SVGElementRareData::destroyAnimatedSMILStyleProperties): Deleted.
Unneeded since it was already called just before deleting the rare data.

* svg/SVGTests.cpp:
(WebCore::SVGTests::SVGTests): Took advantage of using namespace.
(WebCore::createSVGTestPropertyInfo): Added. Helper for function below.
(WebCore::createSVGTextAttributeToPropertyMap): Ditto.
(WebCore::SVGTests::attributeToPropertyMap): Changed to use the create function
above. No longer allocates objects on the heap.
(WebCore::SVGTests::hasExtension): Reworked #if code to make the MathML part
independent rather than repeating the return statement.
(WebCore::SVGTests::synchronizeAttribute): Added. Helper for functions below.
(WebCore::SVGTests::synchronizeRequiredFeatures): Call synchronizeAttribute.
(WebCore::SVGTests::synchronizeRequiredExtensions): Ditto.
(WebCore::SVGTests::synchronizeSystemLanguage): Ditto.

* svg/SVGTests.h: Removed unneeded forward declarations. Mark the many functions
that do not depend on object state as static so the call sites don't wastefully
pass a this pointer. Removed the unneeded requiredFeaturesPropertyInfo,
requiredExtensionsPropertyInfo, and systemLanguagePropertyInfo functions.
Added synchronizeAttribute helper function.

* svg/SVGUseElement.cpp:
(WebCore::SVGUseElement::invalidateDependentShadowTrees): Updated to use the
new instances set and a modern for loop.

* svg/properties/SVGAnimatedPropertyMacros.h: Pass reference to addProperty and
made a few other small refinements.

* svg/properties/SVGAttributeToPropertyMap.cpp:
(WebCore::SVGAttributeToPropertyMap::addProperties): Fixed problems mentioned
in FIXME where we did too much hashing and vector resizing.
(WebCore::SVGAttributeToPropertyMap::addProperty): Streamlined to use a single
hash table lookup.
(WebCore::SVGAttributeToPropertyMap::properties): Renamed from
animatedPropertiesForAttribute and changed to return a vector rather than using
an out argument. Also had to change some since the vectors are in the hash table
now rather than allocated on the heap.
(WebCore::SVGAttributeToPropertyMap::types): Renamed from
animatedPropertyTypeForAttribute and made changes just like the ones above.
(WebCore::SVGAttributeToPropertyMap::synchronizeProperties): Use modern for
loops, take a reference rather than a pointer, and use the function pointer
directly instead of calling through a helper with various assertions.
(WebCore::SVGAttributeToPropertyMap::synchronizeProperty): Ditto.

* svg/properties/SVGAttributeToPropertyMap.h: Updated to match the changes
above. Also changed the map to contain vectors instead of pointers to vectors.

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

5 years agoREGRESSION (r173698): Leaks of selector lists in CSS parsing
darin@apple.com [Wed, 28 Jan 2015 17:50:00 +0000 (17:50 +0000)]
REGRESSION (r173698): Leaks of selector lists in CSS parsing
https://bugs.webkit.org/show_bug.cgi?id=140993

Reviewed by Anders Carlsson.

* css/CSSGrammar.y.in: Fixed logic in rules that were not moving a parser-
owned pointer into a unique_ptr in all code paths. The magic value
invalidSelectorVector makes this really messy. We might want to find a
different seolution in the future.

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

5 years ago[Win] Unreviewed build fix after r179247.
bfulgham@apple.com [Wed, 28 Jan 2015 17:22:14 +0000 (17:22 +0000)]
[Win] Unreviewed build fix after r179247.

* history/PageCache.h: Need to declare NeverDestroyed specialization as
a friend.

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

5 years agohttp/tests/xmlhttprequest/workers/methods.html sometimes times out with disk cache...
antti@apple.com [Wed, 28 Jan 2015 17:08:16 +0000 (17:08 +0000)]
http/tests/xmlhttprequest/workers/methods.html sometimes times out with disk cache enabled
https://bugs.webkit.org/show_bug.cgi?id=140976

Reviewed by Chris Dumez.

Running

    run-webkit-tests --release -2 http/tests/xmlhttprequest/workers/methods.html --iterations=100

would usually time out an iteration.

* NetworkProcess/cache/NetworkCacheStorageCocoa.mm:
(WebKit::NetworkCacheStorage::dispatchRetrieveOperation):

Using dispatch_io_read with an empty file calls the handler block immediately with done boolean set
without it being an error. We failed to call the completion handler and any synchronous xhr would hang.
We may see an empty cache file if we are just in process of writing it.

Fix by handling this case specifically.

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

5 years agoAX: [ATK] Implement support for new AtkRole types for MathML
jdiggs@igalia.com [Wed, 28 Jan 2015 17:02:32 +0000 (17:02 +0000)]
AX: [ATK] Implement support for new AtkRole types for MathML
https://bugs.webkit.org/show_bug.cgi?id=140916

Reviewed by Chris Fleizach.

Source/WebCore:

Expose mfrac as ATK_ROLE_MATH_FRACTION, and both mroot and msqrt as
ATK_ROLE_MATH_ROOT. In the case of script elements, expose the container
(msub, msup, msubsup, and mmultiscripts) using the generic text block role
ATK_ROLE_SECTION. Then expose the actual script child elements using role
ATK_ROLE_SUBSCRIPT/ATK_ROLE_SUPERSCRIPT. In the case of mmultiscripts,
expose whether it is a prescript or postscript via AtkObject attribute.

Test: accessibility/math-multiscript-attributes.html
Also added additional test cases to accessibility/roles-exposed.html

* accessibility/AccessibilityObject.h:
(WebCore::AccessibilityObject::isMathScriptObject): Added.
(WebCore::AccessibilityObject::isMathMultiscriptObject): Added.
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::isMathScriptObject): Added.
(WebCore::AccessibilityRenderObject::isMathMultiscriptObject): Added.
* accessibility/AccessibilityRenderObject.h:
* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(webkitAccessibleGetAttributes): Expose whether a multiscript object is a prescript or postscript.
(atkRole): Map WebCore Accessibility objects to the new ATK roles.

Tools:

* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp: Add mapping for new ATK roles
* gtk/jhbuild.modules: Bump minimum version of ATK used by jhbuild to 2.15.4

LayoutTests:

* accessibility/math-multiscript-attributes.html: Added.
* accessibility/roles-exposed.html: New test cases added.
* platform/efl/accessibility/roles-exposed-expected.txt: Updated for new test cases.
* platform/gtk/accessibility/math-multiscript-attributes-expected.txt: Added.
* platform/gtk/accessibility/roles-exposed-expected.txt: Updated for new test cases.
* platform/mac-mavericks/accessibility/roles-exposed-expected.txt: Updated for new test cases.
* platform/mac-mountainlion/accessibility/roles-exposed-expected.txt: Updated for new test cases.
* platform/mac/accessibility/math-multiscript-attributes-expected.txt: Added.
* platform/mac/accessibility/roles-exposed-expected.txt: Updated for new test cases.

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

5 years agoREGRESSION: Re-skip media tests. (Unreviewed)
bfulgham@apple.com [Wed, 28 Jan 2015 16:46:51 +0000 (16:46 +0000)]
REGRESSION: Re-skip media tests. (Unreviewed)
https://bugs.webkit.org/show_bug.cgi?id=140995

* platform/win/TestExpectations: Re-skip the tests.

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

5 years ago[CMake] Minimum python version should be 2.7.
clopez@igalia.com [Wed, 28 Jan 2015 16:30:32 +0000 (16:30 +0000)]
[CMake] Minimum python version should be 2.7.
https://bugs.webkit.org/show_bug.cgi?id=140997

Reviewed by Csaba Osztrogonác.

* CMakeLists.txt:

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

5 years ago[GTK] Stop removing color marks from unit tests output
carlosgc@webkit.org [Wed, 28 Jan 2015 14:48:29 +0000 (14:48 +0000)]
[GTK] Stop removing color marks from unit tests output
https://bugs.webkit.org/show_bug.cgi?id=140996

Reviewed by Philippe Normand.

Since r178236 google tests use a custom simplified output without
any colors, so we don't need to handle the case of non ttys to
remove the color marks.

* Scripts/run-gtk-tests:
(TestRunner.__init__):
(TestRunner._run_test_command.parse_line):

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

5 years agoUnreviewed. Add missing file to WebInspector compilation for GTK+.
carlosgc@webkit.org [Wed, 28 Jan 2015 14:47:07 +0000 (14:47 +0000)]
Unreviewed. Add missing file to WebInspector compilation for GTK+.

* PlatformGTK.cmake: Add UserInterface/External/ESLint/eslint.js

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

5 years ago[GTK] Unit test /webkit2/WebKitWebView/page-visibility from WebKit2Gtk/TestWebKitWebV...
carlosgc@webkit.org [Wed, 28 Jan 2015 13:44:56 +0000 (13:44 +0000)]
[GTK] Unit test /webkit2/WebKitWebView/page-visibility from WebKit2Gtk/TestWebKitWebView fails
https://bugs.webkit.org/show_bug.cgi?id=131731

Reviewed by Žan Doberšek.

A web page loaded offscreen is in prerender state not hidden.

* Scripts/run-gtk-tests:
(TestRunner): Unskip /webkit2/WebKitWebView/page-visibility.
* TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
(testWebViewPageVisibility):

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

5 years agoRename pageCache() to PageCache::shared() and return a reference
cdumez@apple.com [Wed, 28 Jan 2015 09:33:54 +0000 (09:33 +0000)]
Rename pageCache() to PageCache::shared() and return a reference
https://bugs.webkit.org/show_bug.cgi?id=140983

Reviewed by Andreas Kling.

Rename pageCache() to PageCache::shared() as this is a singleton class
and have it return a reference instead of a pointer.

Source/WebCore:

* history/BackForwardList.cpp:
(WebCore::BackForwardList::addItem):
(WebCore::BackForwardList::setCapacity):
(WebCore::BackForwardList::clearAllPageCaches):
(WebCore::BackForwardList::close):
* history/CachedFrame.cpp:
(WebCore::CachedFrame::CachedFrame):
* history/HistoryItem.cpp:
(WebCore::HistoryItem::setURL):
* history/PageCache.cpp:
(WebCore::PageCache::shared):
(WebCore::PageCache::get):
(WebCore::pageCache): Deleted.
* history/PageCache.h:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::commitProvisionalLoad):
(WebCore::FrameLoader::loadDifferentDocumentItem):
* loader/HistoryController.cpp:
(WebCore::HistoryController::invalidateCurrentItemCachedPage):
(WebCore::HistoryController::updateForReload):
* page/Frame.cpp:
(WebCore::Frame::setPageAndTextZoomFactors):
* page/Page.cpp:
(WebCore::Page::setDeviceScaleFactor):
(WebCore::Page::setPagination):
(WebCore::Page::setVisitedLinkStore):
* page/PageGroup.cpp:
(WebCore::PageGroup::captionPreferencesChanged):
* page/Settings.cpp:
(WebCore::Settings::setUsesPageCache):
* platform/MemoryPressureHandler.cpp:
(WebCore::MemoryPressureHandler::releaseCriticalMemory):

Source/WebKit/mac:

* History/WebBackForwardList.mm:
(-[WebBackForwardList pageCacheSize]):
* Misc/WebCoreStatistics.mm:
(+[WebCoreStatistics cachedPageCount]):
(+[WebCoreStatistics cachedFrameCount]):
* WebCoreSupport/WebVisitedLinkStore.mm:
(WebVisitedLinkStore::removeAllVisitedLinks):
(WebVisitedLinkStore::removeVisitedLink):
(WebVisitedLinkStore::addVisitedLinkHash):
* WebView/WebView.mm:
(+[WebView _setCacheModel:]):

Source/WebKit/win:

* WebCoreStatistics.cpp:
(WebCoreStatistics::cachedPageCount):
(WebCoreStatistics::cachedFrameCount):
* WebCoreSupport/WebVisitedLinkStore.cpp:
(WebVisitedLinkStore::removeAllVisitedLinks):
(WebVisitedLinkStore::addVisitedLinkHash):
* WebView.cpp:
(WebView::setCacheModel):

Source/WebKit2:

* WebProcess/WebPage/VisitedLinkTableController.cpp:
(WebKit::VisitedLinkTableController::setVisitedLinkTable):
(WebKit::VisitedLinkTableController::visitedLinkStateChanged):
(WebKit::VisitedLinkTableController::allVisitedLinkStateChanged):
(WebKit::VisitedLinkTableController::removeAllVisitedLinks):
* WebProcess/WebPage/WebBackForwardListProxy.cpp:
(WebKit::WebBackForwardListProxy::removeItem):
(WebKit::WebBackForwardListProxy::close):
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::releasePageCache):
* WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformSetCacheModel):
* WebProcess/soup/WebProcessSoup.cpp:
(WebKit::WebProcess::platformSetCacheModel):

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

5 years agoFix MediaPlayerEngine leaks
darin@apple.com [Wed, 28 Jan 2015 09:22:02 +0000 (09:22 +0000)]
Fix MediaPlayerEngine leaks
https://bugs.webkit.org/show_bug.cgi?id=140992

Reviewed by Jer Noble.

* platform/graphics/MediaPlayer.cpp:
(WebCore::mutableInstalledMediaEnginesVector): Added.
(WebCore::buildMediaEnginesVector): Added.
(WebCore::installedMediaEngines): Changed this to be a vector of factories
instead of a vector of heap-allocated factories. The old code would leak
all the factories when this was called with the ResetEngines option.
(WebCore::addMediaEngine): Updated for above change.
(WebCore::bestMediaEngineForSupportParameters): Ditto.
(WebCore::nextMediaEngine): Ditto.
(WebCore::MediaPlayer::nextBestMediaEngine): Ditto.
(WebCore::MediaPlayer::loadWithNextMediaEngine): Ditto.
(WebCore::MediaPlayer::supportsType): Ditto.
(WebCore::MediaPlayer::getSupportedTypes): Ditto.
(WebCore::MediaPlayer::getSitesInMediaCache): Ditto.
(WebCore::MediaPlayer::clearMediaCache): Ditto.
(WebCore::MediaPlayer::clearMediaCacheForSite): Ditto.
(WebCore::MediaPlayer::supportsKeySystem): Ditto.
(WebCore::MediaPlayer::resetMediaEngines): Ditto.
* platform/graphics/MediaPlayer.h: Ditto.

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

5 years agoFix small leak in Collator
darin@apple.com [Wed, 28 Jan 2015 08:44:28 +0000 (08:44 +0000)]
Fix small leak in Collator
https://bugs.webkit.org/show_bug.cgi?id=140990

Reviewed by Andreas Kling.

* wtf/unicode/icu/CollatorICU.cpp:
(WTF::Collator::Collator): Use fastStrDup instead of strdup.
(WTF::Collator::~Collator): Use fastFree on the collator locale that we
are abandoning. The old code instead just called free on a null pointer.

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

5 years agoRename descendentxxx to descendantxxxx in RenderLayerBacking
commit-queue@webkit.org [Wed, 28 Jan 2015 08:09:25 +0000 (08:09 +0000)]
Rename descendentxxx to descendantxxxx in RenderLayerBacking
https://bugs.webkit.org/show_bug.cgi?id=140979

Patch by Jeongmin Kim <jm86.kim@lge.com> on 2015-01-28
Reviewed by Martin Robinson.

Rename descendentxxx to descendantxxxx in RenderLayerBacking
for matching other variables and function names.

* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateConfiguration):
(WebCore::RenderLayerBacking::updateAfterDescendants):
(WebCore::RenderLayerBacking::updateChildClippingStrategy):
(WebCore::RenderLayerBacking::paintsChildren):
(WebCore::descendantLayerPaintsIntoAncestor):
(WebCore::RenderLayerBacking::isPaintDestinationForDescendantLayers):
(WebCore::descendentLayerPaintsIntoAncestor): Deleted.
(WebCore::RenderLayerBacking::isPaintDestinationForDescendentLayers): Deleted.

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

5 years agoUse a Ref<CachedResourceLoader> in Document instead of a RefPtr
cdumez@apple.com [Wed, 28 Jan 2015 05:53:53 +0000 (05:53 +0000)]
Use a Ref<CachedResourceLoader> in Document instead of a RefPtr
https://bugs.webkit.org/show_bug.cgi?id=140971

Reviewed by Andreas Kling.

Source/WebCore:

Use a Ref<CachedResourceLoader> in Document instead of a RefPtr as it
can never be null. Also have Document::cachedResourceLoader() return a
reference instead of a pointer. This gets rid of a lot of unnecessary
null-checks.

Source/WebKit/win:

Use more references instead of pointers.

* WebDataSource.cpp:
(WebDataSource::subresourceForURL):

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

5 years agoExitSiteData saying m_takesSlowPath shouldn't mean early returning takesSlowPath...
fpizlo@apple.com [Wed, 28 Jan 2015 05:48:59 +0000 (05:48 +0000)]
ExitSiteData saying m_takesSlowPath shouldn't mean early returning takesSlowPath() since for the non-LLInt case we later set m_couldTakeSlowPath, which is more precise
https://bugs.webkit.org/show_bug.cgi?id=140980

Reviewed by Oliver Hunt.

* bytecode/CallLinkStatus.cpp:
(JSC::CallLinkStatus::computeFor):

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

5 years agoPartially revert r178802.
ap@apple.com [Wed, 28 Jan 2015 05:29:09 +0000 (05:29 +0000)]
Partially revert r178802.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/MountainLion.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/MountainLion@2x.png:

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

5 years agoVersioning.
bshafiei@apple.com [Wed, 28 Jan 2015 05:11:46 +0000 (05:11 +0000)]
Versioning.

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

5 years agoREGRESSION (OS X 10.10.2): media/track/track-in-band-style.html frequently times out
ap@apple.com [Wed, 28 Jan 2015 02:37:39 +0000 (02:37 +0000)]
REGRESSION (OS X 10.10.2): media/track/track-in-band-style.html frequently times out
https://bugs.webkit.org/show_bug.cgi?id=140974

* platform/mac/TestExpectations: Added an expectation.

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

5 years agoMore build fixes for newer clang.
ap@apple.com [Wed, 28 Jan 2015 02:29:06 +0000 (02:29 +0000)]
More build fixes for newer clang.

Rubber-stamped by Anders Carlsson.

Source/WebCore:

* loader/icon/IconDatabase.h: Added missing override keywords.

Source/WebKit/mac:

Marked a deprecated accessibility method as such.

* WebView/WebFrame.mm:
(-[WebFrame accessibilityRoot]):

Source/WebKit2:

Added missing override keywords, marked some deprecated accessibility methods as such.

* PluginProcess/EntryPoint/mac/LegacyProcess/PluginProcessMain.mm:
(WebKit::PluginProcessMainDelegate::doPreInitializationWork): Deleted.
(WebKit::PluginProcessMainDelegate::getExtraInitializationData): Deleted.
(WebKit::PluginProcessMainDelegate::doPostRunWork): Deleted.
* PluginProcess/WebProcessConnection.h:
* UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::WebProcessPool::platformInitializeWebProcess):
* UIProcess/Plugins/PluginProcessProxy.h:
* UIProcess/WebPageProxy.h:
* UIProcess/mac/PageClientImpl.h:
* WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
(PageOverlayClientImpl::actionContextForResultAtPoint): Deleted.
(PageOverlayClientImpl::dataDetectorsDidPresentUI): Deleted.
(PageOverlayClientImpl::dataDetectorsDidChangeUI): Deleted.
(PageOverlayClientImpl::dataDetectorsDidHideUI): Deleted.
* WebProcess/Plugins/Netscape/NetscapePlugin.h:
(WebKit::NetscapePlugin::isBeingAsynchronouslyInitialized): Deleted.
* WebProcess/Plugins/PDF/PDFPlugin.h:
* WebProcess/Plugins/PluginProcessConnection.h:
* WebProcess/Plugins/PluginProxy.h:
(WebKit::PluginProxy::isBeingAsynchronouslyInitialized): Deleted.
* WebProcess/WebCoreSupport/WebContextMenuClient.h:

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

5 years agobuild.webkit.org/dashboard asserts on some commits
ap@apple.com [Wed, 28 Jan 2015 01:54:25 +0000 (01:54 +0000)]
build.webkit.org/dashboard asserts on some commits
https://bugs.webkit.org/show_bug.cgi?id=140926

Reviewed by Tim Horton.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js:
(Trac.prototype._convertCommitInfoElementToObject): Added a case for another root directory.

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

5 years ago[Win] Re-enable Sputnik.
bfulgham@apple.com [Wed, 28 Jan 2015 01:26:02 +0000 (01:26 +0000)]
[Win] Re-enable Sputnik.

* platform/win/TestExpectations:
* platform/win/fast/text/backslash-to-yen-sign-euc-expected.txt:

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

5 years agoWebGL2: Disable various extensions on WebGL2 context that have been promoted to core.
roger_fong@apple.com [Wed, 28 Jan 2015 01:16:32 +0000 (01:16 +0000)]
WebGL2: Disable various extensions on WebGL2 context that have been promoted to core.
https://bugs.webkit.org/show_bug.cgi?id=140907.
<rdar://problem/19545857>

Reviewed by Brent Fulgham.

Source/WebCore:

* html/canvas/WebGL2RenderingContext.cpp:
(WebCore::WebGL2RenderingContext::getExtension):
(WebCore::WebGL2RenderingContext::getSupportedExtensions):
* html/canvas/WebGL2RenderingContext.h:
* html/canvas/WebGLRenderingContext.cpp:
(WebCore::WebGLRenderingContext::getExtension):
(WebCore::WebGLRenderingContext::getSupportedExtensions):
* html/canvas/WebGLRenderingContext.h:
* html/canvas/WebGLRenderingContextBase.cpp:
(WebCore::WebGLRenderingContextBase::getSupportedExtensions): Deleted.
* html/canvas/WebGLRenderingContextBase.h:
* html/canvas/WebGLRenderingContextBase.idl:
Remove some extra extension enums that shouldn't have been declared on the context idl.

LayoutTests:

* fast/canvas/webgl/constants.html:

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

5 years agoMake flakiness dashboard OS list actually match test_expectations.py
ap@apple.com [Wed, 28 Jan 2015 01:11:33 +0000 (01:11 +0000)]
Make flakiness dashboard OS list actually match test_expectations.py
https://bugs.webkit.org/show_bug.cgi?id=140969

Reviewed by Ryosuke Niwa.

* TestResultServer/static-dashboards/flakiness_dashboard.js:

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

5 years ago[Win] More Windows rebaselines.
bfulgham@apple.com [Wed, 28 Jan 2015 01:08:15 +0000 (01:08 +0000)]
[Win] More Windows rebaselines.

* platform/win/fast/events/ondrop-text-htmlt-expected.txt: Added.
* platform/win/fast/text/backslash-to-yen-sign-euc-expected.txt:
* platform/win/fast/text/fallback-traits-fixup-expected.txt:
* platform/win/fast/text/international/complex-character-based-fallback-expected.txt:

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

5 years agoImmediate action gesture recognizer still doesn't work well with IB
bdakin@apple.com [Wed, 28 Jan 2015 01:06:54 +0000 (01:06 +0000)]
Immediate action gesture recognizer still doesn't work well with IB
https://bugs.webkit.org/show_bug.cgi?id=140967
-and corresponding-
rdar://problem/19621509

Reviewed by Tim Horton.

We should add (or remove) the gesture recognizer in viewDidMoveToWindow because
initWithFrame it too early and IB might mess with it.
Source/WebKit/mac:

* WebView/WebImmediateActionController.h:
* WebView/WebImmediateActionController.mm:
(-[WebImmediateActionController immediateActionRecognizer]):
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView viewDidMoveToWindow]):

Source/WebKit2:

* UIProcess/API/mac/WKView.mm:
(-[WKView viewDidMoveToWindow]):
(-[WKView initWithFrame:processPool:configuration:webView:]):

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

5 years agoRemove unnecessary m_cachedPage null-checks in PageCache
cdumez@apple.com [Wed, 28 Jan 2015 00:48:19 +0000 (00:48 +0000)]
Remove unnecessary m_cachedPage null-checks in PageCache
https://bugs.webkit.org/show_bug.cgi?id=140965

Reviewed by Andreas Kling.

Remove unnecessary m_cachedPage null-checks in PageCache. We initialize
m_cachedPage when inserting the HistoryItem in the page cache and clear
it when removing it from the page cache. Therefore, it is guaranteed
that HistoryItems currently in the page cache have m_cachedPage
initialized and there is no need to null-check it.

* history/PageCache.cpp:
(WebCore::PageCache::frameCount):
(WebCore::PageCache::markPagesForVistedLinkStyleRecalc):
(WebCore::PageCache::markPagesForFullStyleRecalc):
(WebCore::PageCache::markPagesForDeviceScaleChanged):
(WebCore::PageCache::markPagesForCaptionPreferencesChanged):

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

5 years agoSome NSAccessibility methods we use are deprecated on 10.10
ap@apple.com [Wed, 28 Jan 2015 00:13:37 +0000 (00:13 +0000)]
Some NSAccessibility methods we use are deprecated on 10.10
https://bugs.webkit.org/show_bug.cgi?id=140966

Reviewed by Anders Carlsson.

* accessibility/mac/AccessibilityObjectMac.mm:
(WebCore::AccessibilityObject::overrideAttachmentParent):
(WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper role]):
(-[WebAccessibilityObjectWrapper roleDescription]):
Silence the warnings for now.

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

5 years agoRename isExpandedShorthand() to isShorthandCSSProperty() for clarity
cdumez@apple.com [Wed, 28 Jan 2015 00:02:45 +0000 (00:02 +0000)]
Rename isExpandedShorthand() to isShorthandCSSProperty() for clarity
https://bugs.webkit.org/show_bug.cgi?id=140954

Reviewed by Andreas Kling.

Rename isExpandedShorthand() to isShorthandCSSProperty() for clarity as
all CSS shorthand properties are now expanded during parsing (even
'font').

* css/StylePropertyShorthand.cpp:
(WebCore::isShorthandCSSProperty):
(WebCore::isExpandedShorthand): Deleted.
* css/StylePropertyShorthand.h:
* css/StyleResolver.cpp:
(WebCore::StyleResolver::applyProperty):
* css/makeprop.pl:

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

5 years ago[Win] WinLauncher crashes on eleventh site visited
bfulgham@apple.com [Tue, 27 Jan 2015 23:38:02 +0000 (23:38 +0000)]
[Win] WinLauncher crashes on eleventh site visited
https://bugs.webkit.org/show_bug.cgi?id=140960

Reviewed by Anders Carlsson.

* WinLauncher/WinLauncher.cpp:
(WinLauncher::showLastVisitedSites): Don't access off the end of
the history array.

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

5 years agoMove DFGBinarySwitch out of the DFG so that all of the JITs can use it
fpizlo@apple.com [Tue, 27 Jan 2015 22:56:00 +0000 (22:56 +0000)]
Move DFGBinarySwitch out of the DFG so that all of the JITs can use it
https://bugs.webkit.org/show_bug.cgi?id=140959

Rubber stamped by Geoffrey Garen.

I want to use this for polymorphic stubs for https://bugs.webkit.org/show_bug.cgi?id=140660.
This code no longer has DFG dependencies so this is a very clean move.

* CMakeLists.txt:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* dfg/DFGBinarySwitch.cpp: Removed.
* dfg/DFGBinarySwitch.h: Removed.
* dfg/DFGSpeculativeJIT.cpp:
* jit/BinarySwitch.cpp: Copied from Source/JavaScriptCore/dfg/DFGBinarySwitch.cpp.
* jit/BinarySwitch.h: Copied from Source/JavaScriptCore/dfg/DFGBinarySwitch.h.

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

5 years agoRemoved WTF_MALLOC_VALIDATION
ggaren@apple.com [Tue, 27 Jan 2015 22:41:47 +0000 (22:41 +0000)]
Removed WTF_MALLOC_VALIDATION
https://bugs.webkit.org/show_bug.cgi?id=140958

Reviewed by Anders Carlsson.

I don't think anyone has been using this, and the #ifdefs were driving
me crazy.

We have other options for validation -- like MallocGuardEdges,
MallocCheckHeapEach, MallocScribble, and GuardMalloc.

* wtf/FastMalloc.cpp:
(WTF::tryFastMalloc):
(WTF::fastMalloc):
(WTF::tryFastCalloc):
(WTF::fastCalloc):
(WTF::fastFree):
(WTF::tryFastRealloc):
(WTF::fastRealloc):
(WTF::fastMallocSize):
(WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):
(WTF::Internal::fastMallocMatchFailed): Deleted.
* wtf/FastMalloc.h:
(WTF::Internal::fastMallocValidationHeader): Deleted.
(WTF::Internal::fastMallocValidationSuffix): Deleted.
(WTF::Internal::fastMallocMatchValidationType): Deleted.
(WTF::Internal::setFastMallocMatchValidationType): Deleted.
(WTF::fastMallocMatchValidateMalloc): Deleted.
(WTF::fastMallocMatchValidateFree): Deleted.
(WTF::fastMallocValidate): Deleted.

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

5 years agoSimplify http/tests/media/video-play-stall.html
eric.carlson@apple.com [Tue, 27 Jan 2015 22:37:27 +0000 (22:37 +0000)]
Simplify http/tests/media/video-play-stall.html
https://bugs.webkit.org/show_bug.cgi?id=140630

Reviewed by Brent Fulgham.

Source/WebCore:

Test: http/tests/media/video-play-waiting.html

* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
(WebCore::MediaPlayerPrivateAVFoundation::play): Add more logging.
(WebCore::MediaPlayerPrivateAVFoundation::updateStates): MediaPlayerAVPlayerItemStatusPlaybackBufferEmpty
    always maps to HaveCurrentData.
(WebCore::MediaPlayerPrivateAVFoundation::scheduleMainThreadNotification): Don't log FunctionType,
    doing so it needlessly verbose.
(WebCore::MediaPlayerPrivateAVFoundation::dispatchNotification): Ditto.
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(-[WebCoreAVFMovieObserver observeValueForKeyPath:ofObject:change:context:]): Log KVO property
    values and notification state.

LayoutTests:

* http/tests/media/video-play-stall-expected.txt:
* http/tests/media/video-play-stall.html:
* http/tests/media/video-play-waiting-expected.txt: Added.
* http/tests/media/video-play-waiting.html: Added.
* media/content/long-test.mp4: Added. New media file with 30 second duration.
* media/content/long-test.ogv: Ditto.
* platform/mac/TestExpectations: Remove video-play-stall.html from the skip list. Mark
    video-play-waiting.html as flakey as it sometimes times out.

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

5 years ago[Mac] Disable building Java applets by default
ap@apple.com [Tue, 27 Jan 2015 22:29:33 +0000 (22:29 +0000)]
[Mac] Disable building Java applets by default
https://bugs.webkit.org/show_bug.cgi?id=140957
rdar://problem/19619529

Reviewed by Anders Carlsson.

It was actually already disabled unconditionally, by accident.

* Scripts/webkitpy/layout_tests/run_webkit_tests.py: (parse_args):
* Scripts/webkitpy/port/mac.py:
(MacPort._check_port_build):
(MacPort._build_java_test_support):

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

5 years ago[iOS] run-webkit-tests --platform=ios* --lint-test-files does not work
dbates@webkit.org [Tue, 27 Jan 2015 22:07:50 +0000 (22:07 +0000)]
[iOS] run-webkit-tests --platform=ios* --lint-test-files does not work
https://bugs.webkit.org/show_bug.cgi?id=140949

Reviewed by Alexey Proskuryakov.

Add "ios-simulator" and "ios-simulator-wk2" to the list of ports without
builders so that run-webkit-tests can lint the appropriate TestExpectation
files.

* Scripts/webkitpy/port/builders.py:
* Scripts/webkitpy/port/ios.py:
(IOSSimulatorPort.__init__): Move logic to query for the Mac build directory from here...
(IOSSimulatorPort.relay_path): to here as this is the only caller that makes use of that
information to find the LayoutTestRelay tool. Otherwise, "self.assertEqual(len(calls), 1)"
in unit test webkitpy.tool.commands.rebaseline_unittest.TestRebaselineExpectations.test_rebaseline_expectations
will fail because IOSSimulatorPort.__init__() ultimately calls Tools/Scripts/webkit-build-directory
to determine the Mac build directory for each instantiation of IOSSimulatorPort. And this unit
test instantiates a port object for each builder listed in file Scripts/webkitpy/port/builders.py.

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

5 years agoUpdate bots on the flakiness dashboard
ap@apple.com [Tue, 27 Jan 2015 22:02:36 +0000 (22:02 +0000)]
Update bots on the flakiness dashboard
https://bugs.webkit.org/show_bug.cgi?id=140956

Reviewed by Ryosuke Niwa.

* TestResultServer/static-dashboards/builders.jsonp:
* TestResultServer/static-dashboards/flakiness_dashboard.js:

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

5 years agoUnreviewed, rolling out r179192.
commit-queue@webkit.org [Tue, 27 Jan 2015 21:34:32 +0000 (21:34 +0000)]
Unreviewed, rolling out r179192.
https://bugs.webkit.org/show_bug.cgi?id=140953

Caused numerous layout test failures (Requested by mattbaker_
on #webkit).

Reverted changeset:

"Use FastMalloc (bmalloc) instead of BlockAllocator for GC
pages"
https://bugs.webkit.org/show_bug.cgi?id=140900
http://trac.webkit.org/changeset/179192

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

5 years ago[Win] Another round of bug filing and expectation updates.
bfulgham@apple.com [Tue, 27 Jan 2015 21:10:59 +0000 (21:10 +0000)]
[Win] Another round of bug filing and expectation updates.

* platform/win/TestExpectations:
* platform/win/fast/selectors: Added.
* platform/win/fast/selectors/064-expected.txt: Added.
* platform/win/fast/text/backslash-to-yen-sign-euc-expected.txt:
* platform/win/fast/text/backslash-to-yen-sign-expected.png: Added.
* platform/win/fast/text/drawBidiText-expected.txt: Added.
* platform/win/fast/text/fallback-traits-fixup-expected.txt:
* platform/win/fast/text/international/complex-character-based-fallback-expected.txt:
* platform/win/fast/text/international/hindi-spacing-expected.txt: Added.
* platform/win/fast/text/international/synthesized-italic-vertical-latin-expected.txt: Removed property svn:executable.
* platform/win/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.txt: Added.
* platform/win/fast/text/unicode-variation-selector-expected.txt:
* platform/win/fast/text/whitespace: Added.
* platform/win/fast/text/whitespace/normal-after-nowrap-breaking-expected.txt: Added.
* platform/win/fast/writing-mode/Kusa-Makura-background-canvas-expected.txt:
* platform/win/fast/writing-mode/fieldsets-expected.txt: Added.
* platform/win/js/dom/global-constructors-attributes-dedicated-worker-expected.txt: Removed.
* platform/win/printing/iframe-print-expected.txt: Added.
* platform/win/transforms/2d/zoom-menulist-expected.txt: Added.

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

5 years agoImport the layout test style-sharing-type-and-readonly.html from blink
benjamin@webkit.org [Tue, 27 Jan 2015 20:50:38 +0000 (20:50 +0000)]
Import the layout test style-sharing-type-and-readonly.html from blink
https://bugs.webkit.org/show_bug.cgi?id=125280

Reviewed by Sergio Villar Senin.

I fixed the bug a while ago but having one more test seems valuable.
blink: https://codereview.chromium.org/27033011
by Elliott Sprehn.

* fast/css/style-sharing-type-and-readonly-expected.txt: Added.
* fast/css/style-sharing-type-and-readonly.html: Added.

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

5 years agoModernize some constructors of the CSS JIT
benjamin@webkit.org [Tue, 27 Jan 2015 20:46:34 +0000 (20:46 +0000)]
Modernize some constructors of the CSS JIT
https://bugs.webkit.org/show_bug.cgi?id=140903

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-01-27
Reviewed by Darin Adler.

Two constructors were still using the old style.

* cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::SelectorFragment::SelectorFragment): Deleted.
(WebCore::SelectorCompiler::TagNamePattern::TagNamePattern): Deleted.

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

5 years agoImport some extra tests for r179132
benjamin@webkit.org [Tue, 27 Jan 2015 20:45:10 +0000 (20:45 +0000)]
Import some extra tests for r179132
https://bugs.webkit.org/show_bug.cgi?id=140930

Reviewed by Sam Weinig.

Add some tests that were done from previous attempts at fixing
the bug.

* fast/dom/SelectorAPI/tag-case-insensitive-expected.txt: Added.
* fast/dom/SelectorAPI/tag-case-insensitive.html: Added.
* fast/dom/SelectorAPI/tag-case-sensitive-expected.txt: Added.
* fast/dom/SelectorAPI/tag-case-sensitive.xhtml: Added.
* svg/css/case-sensitive-tags-expected.txt: Added.
* svg/css/case-sensitive-tags.html: Added.
* svg/dom/tag-case-sensitive-svg-in-html-expected.txt: Added.
* svg/dom/tag-case-sensitive-svg-in-html.html: Added.
Those tests were created by Alexandru Chiculita for
https://bugs.webkit.org/show_bug.cgi?id=83438

The patch was rejected at the time due to the perf impact.
That has been solved since then by the CSS JIT.

* svg/css/foreignObject-case-styling-expected.html: Added.
* svg/css/foreignObject-case-styling.html: Added.
This test is from Boris Zbarsky when he reported
https://bugs.webkit.org/show_bug.cgi?id=79444.

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

5 years agoREGRESSION(r178591): 20% regression in Octane box2d
msaboff@apple.com [Tue, 27 Jan 2015 20:25:04 +0000 (20:25 +0000)]
REGRESSION(r178591): 20% regression in Octane box2d
https://bugs.webkit.org/show_bug.cgi?id=140948

Reviewed by Geoffrey Garen.

Added check that we have a lexical environment to the arguments is captured check.
It doesn't make sense to resolve "arguments" when it really isn't captured.

* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::willResolveToArgumentsRegister):

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

5 years ago[Win] Unreviewed build fix.
bfulgham@apple.com [Tue, 27 Jan 2015 20:16:31 +0000 (20:16 +0000)]
[Win] Unreviewed build fix.

Lack of include guards in WebVTTElement.h caused a build failure once we started including
this header file from more than one implementation file.

* html/track/WebVTTElement.h:

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

5 years ago[iOS] Update test results and test expectations
dbates@webkit.org [Tue, 27 Jan 2015 19:52:52 +0000 (19:52 +0000)]
[iOS] Update test results and test expectations

* platform/ios-simulator-wk1/TestExpectations:
* platform/ios-simulator-wk2/TestExpectations:
* platform/ios-simulator/TestExpectations:
* platform/ios-simulator/css3/blending/blend-mode-simple-composited-expected.txt:
* platform/ios-simulator/css3/blending/blend-mode-simple-expected.txt:

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

5 years ago[iOS WK2] Add directory LayoutTests/platform/wk2 to the list of baseline search paths
dbates@webkit.org [Tue, 27 Jan 2015 19:44:14 +0000 (19:44 +0000)]
[iOS WK2] Add directory LayoutTests/platform/wk2 to the list of baseline search paths
https://bugs.webkit.org/show_bug.cgi?id=140942

Reviewed by Alexey Proskuryakov.

The directory LayoutTests/platform/wk2 contains test expectations and test results that
are applicable to all WebKit2 ports. We should make use of this information when
running layout tests using iOS WebKit2.

Additionally, make use of the convenience function Port._wk2_port_name() for the name
of the WebKit2 port instead of directly using string concatenation.

* Scripts/webkitpy/port/ios.py:
(IOSSimulatorPort.default_baseline_search_path):

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

5 years agoCSSKeyframesRule::findRule() and deleteRule() should delete the last matching rule...
dino@apple.com [Tue, 27 Jan 2015 19:39:22 +0000 (19:39 +0000)]
CSSKeyframesRule::findRule() and deleteRule() should delete the last matching rule, not the first
https://bugs.webkit.org/show_bug.cgi?id=139732

Patch by Sylvain Galineau <galineau@adobe.com> on 2015-01-26
Reviewed by Dean Jackson and Darin Adler.

Source/WebCore:

No new tests because existing tests have been updated to verify this behavior.

* css/CSSKeyframeRule.h:
(WebCore::StyleKeyframe::getKeys): Deleted.
* css/StyleResolver.cpp:
(WebCore::StyleResolver::keyframeStylesForAnimation): use StyleKeyframe::keys().
* css/CSSKeyframeRule.cpp:
(WebCore::StyleKeyframe::parseKeyString): Deleted. Moved to CSSParser.
(WebCore::StyleKeyframe::keyText): Build keyframe selector from Vector<double> representation.
* css/CSSKeyframeRule.h:
(WebCore::StyleKeyframe::setKeyText): parse keyframe selector into Vector<double>.
(WebCore::StyleKeyframe::keys): Added. Returns vector representation of selector keys.
(WebCore::StyleKeyframe::getKeys): Deleted. Now keys().
* css/CSSKeyframesRule.cpp:
(WebCore::StyleRuleKeyframes::findKeyframeIndex): Return last matching rule.
* css/CSSParser.cpp:
(WebCore::CSSParser::parseKeyframeSelector): Added. Moved from StyleKeyframe.
* css/CSSParser.h:
(WebCore::CSSParser::parseKeyframeSelector): Added. Moved from StyleKeyframe.

LayoutTests:

Update existing keyframes OM tests to check for findRule/deleteRule matching order i.e. find/delete last specified rule.

* animations/keyframes-rule-expected.txt:
* animations/keyframes-rule.html:
* animations/unprefixed-keyframes-rule-expected.txt:
* animations/unprefixed-keyframes-rule.html:

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

5 years agoUnreviewed, rebaseline fast/css/css2-system-fonts.html on iOS.
cdumez@apple.com [Tue, 27 Jan 2015 19:16:00 +0000 (19:16 +0000)]
Unreviewed, rebaseline fast/css/css2-system-fonts.html on iOS.

Rebaseline fast/css/css2-system-fonts.html on iOS after r179168.

* platform/ios-sim-deprecated/fast/css/css2-system-fonts-expected.txt: Removed.
* platform/ios-simulator-wk2/fast/css/css2-system-fonts-expected.txt:
* platform/ios-simulator/fast/css/css2-system-fonts-expected.txt: Removed.

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

5 years agoInvoking an immediate action on link often dismisses selection
bdakin@apple.com [Tue, 27 Jan 2015 19:12:48 +0000 (19:12 +0000)]
Invoking an immediate action on link often dismisses selection
https://bugs.webkit.org/show_bug.cgi?id=140911
-and corresponding-
rdar://problem/19572685

Reviewed by Tim Horton.

Calling _page->setMaintainsInactiveSelection(false) in complete is often
too soon. Instead, call it in dismissContentRelativeChildWindows. This is more
similar to the timing for the TextIndicator.
* UIProcess/mac/WKImmediateActionController.mm:
(-[WKImmediateActionController dismissContentRelativeChildWindows]):
(-[WKImmediateActionController immediateActionRecognizerWillPrepare:]):
(-[WKImmediateActionController immediateActionRecognizerDidCompleteAnimation:]):

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

5 years agoUnreviewed build fix. "eta" isn't set on a in-progress build on a newly added builder.
rniwa@webkit.org [Tue, 27 Jan 2015 19:08:57 +0000 (19:08 +0000)]
Unreviewed build fix. "eta" isn't set on a in-progress build on a newly added builder.

* tools/sync-with-buildbot.py:
(find_request_updates):

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

5 years agoFixed building projects that import WebView.h with WK_ENABLE_FORMAL_DELEGATE_PROTOCOLS.
mitz@apple.com [Tue, 27 Jan 2015 18:44:46 +0000 (18:44 +0000)]
Fixed building projects that import WebView.h with WK_ENABLE_FORMAL_DELEGATE_PROTOCOLS.

Rubber-stamped by Anders Carlsson.

* WebView/WebView.h: Added forward declarations of the protocols.

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

5 years agoUse FastMalloc (bmalloc) instead of BlockAllocator for GC pages
ggaren@apple.com [Tue, 27 Jan 2015 18:29:29 +0000 (18:29 +0000)]
Use FastMalloc (bmalloc) instead of BlockAllocator for GC pages
https://bugs.webkit.org/show_bug.cgi?id=140900

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

Removes some more custom allocation code.

Looks like a speedup. (See results attached to bugzilla.)

Will hopefully reduce memory use by improving sharing between the GC and
malloc heaps.

* API/JSBase.cpp:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
* JavaScriptCore.xcodeproj/project.pbxproj: Feed the compiler.

* heap/BlockAllocator.cpp: Removed.
* heap/BlockAllocator.h: Removed. No need for a custom allocator anymore.

* heap/CodeBlockSet.cpp:
(JSC::CodeBlockSet::CodeBlockSet):
* heap/CodeBlockSet.h: Feed the compiler.

* heap/CopiedBlock.h:
(JSC::CopiedBlock::createNoZeroFill):
(JSC::CopiedBlock::create):
(JSC::CopiedBlock::CopiedBlock):
(JSC::CopiedBlock::isOversize):
(JSC::CopiedBlock::payloadEnd):
(JSC::CopiedBlock::capacity):
* heap/CopiedBlockInlines.h:
(JSC::CopiedBlock::reportLiveBytes): Each copied block now tracks its
own size, since we can't rely on Region to tell us our size anymore.

* heap/CopiedSpace.cpp:
(JSC::CopiedSpace::~CopiedSpace):
(JSC::CopiedSpace::tryAllocateOversize):
(JSC::CopiedSpace::tryReallocateOversize):
* heap/CopiedSpaceInlines.h:
(JSC::CopiedSpace::recycleEvacuatedBlock):
(JSC::CopiedSpace::recycleBorrowedBlock):
(JSC::CopiedSpace::allocateBlockForCopyingPhase):
(JSC::CopiedSpace::allocateBlock):
(JSC::CopiedSpace::startedCopying): Deallocate blocks directly, rather
than pushing them onto the block allocator's free list; the block
allocator doesn't exist anymore.

* heap/CopyWorkList.h:
(JSC::CopyWorkListSegment::create):
(JSC::CopyWorkListSegment::CopyWorkListSegment):
(JSC::CopyWorkList::~CopyWorkList):
(JSC::CopyWorkList::append):
(JSC::CopyWorkList::CopyWorkList): Deleted.
* heap/GCSegmentedArray.h:
(JSC::GCArraySegment::GCArraySegment):
* heap/GCSegmentedArrayInlines.h:
(JSC::GCSegmentedArray<T>::GCSegmentedArray):
(JSC::GCSegmentedArray<T>::~GCSegmentedArray):
(JSC::GCSegmentedArray<T>::clear):
(JSC::GCSegmentedArray<T>::expand):
(JSC::GCSegmentedArray<T>::refill):
(JSC::GCArraySegment<T>::create):
* heap/GCThreadSharedData.cpp:
(JSC::GCThreadSharedData::GCThreadSharedData):
* heap/GCThreadSharedData.h: Feed the compiler.

* heap/HandleBlock.h:
* heap/HandleBlockInlines.h:
(JSC::HandleBlock::create):
(JSC::HandleBlock::HandleBlock):
(JSC::HandleBlock::payloadEnd):
* heap/HandleSet.cpp:
(JSC::HandleSet::~HandleSet):
(JSC::HandleSet::grow): Same as above.

* heap/Heap.cpp:
(JSC::Heap::Heap):
* heap/Heap.h: Removed the block allocator since it is unused now.

* heap/HeapBlock.h:
(JSC::HeapBlock::destroy):
(JSC::HeapBlock::HeapBlock):
(JSC::HeapBlock::region): Deleted. Removed the Region pointer from each
HeapBlock since a HeapBlock is just a normal allocation now.

* heap/HeapInlines.h:
(JSC::Heap::blockAllocator): Deleted.

* heap/HeapTimer.cpp:
* heap/MarkStack.cpp:
(JSC::MarkStackArray::MarkStackArray):
* heap/MarkStack.h: Feed the compiler.

* heap/MarkedAllocator.cpp:
(JSC::MarkedAllocator::allocateBlock): No need to use a custom code path
based on size, since we use a general purpose allocator now.

* heap/MarkedBlock.cpp:
(JSC::MarkedBlock::create):
(JSC::MarkedBlock::destroy):
(JSC::MarkedBlock::MarkedBlock):
* heap/MarkedBlock.h:
(JSC::MarkedBlock::capacity): Track block size explicitly, like CopiedBlock.

* heap/MarkedSpace.cpp:
(JSC::MarkedSpace::freeBlock):
* heap/MarkedSpace.h:

* heap/Region.h: Removed.

* heap/SlotVisitor.cpp:
(JSC::SlotVisitor::SlotVisitor): Removed reference to block allocator.

* heap/SuperRegion.cpp: Removed.
* heap/SuperRegion.h: Removed.

* heap/WeakBlock.cpp:
(JSC::WeakBlock::create):
(JSC::WeakBlock::WeakBlock):
* heap/WeakBlock.h:
* heap/WeakSet.cpp:
(JSC::WeakSet::~WeakSet):
(JSC::WeakSet::addAllocator):
(JSC::WeakSet::removeAllocator): Removed reference to block allocator.

Source/WebCore:

* platform/cocoa/MemoryPressureHandlerCocoa.mm:
(WebCore::MemoryPressureHandler::install): Be sure to release other
memory after GC and not before, since GC might contribute to free
malloc pages now.

Source/WTF:

New interface for aligned allocation: fastAlignedMalloc / fastAlignedFree.
We require a special function call on free because Windows.

* wtf/FastMalloc.cpp:
(WTF::fastAlignedMalloc):
(WTF::fastAlignedFree): Do it.

(WTF::do_memalign): Un-ifdef this, since we use it now.

* wtf/FastMalloc.h: Make our new function names visible like the rest
of fastMalloc.

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

5 years ago<rdar://problem/16801814> Media controls do not appear in 2 DRT tests
ap@apple.com [Tue, 27 Jan 2015 18:24:15 +0000 (18:24 +0000)]
<rdar://problem/16801814> Media controls do not appear in 2 DRT tests

This doesn't appear to happen any more, although the tests are still flaky due to
flaky font metrics.

* platform/mac/TestExpectations:
* platform/mac/media/controls-without-preload-expected.txt:

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

5 years ago[Win] Disable FTL stress tests
ossy@webkit.org [Tue, 27 Jan 2015 18:22:44 +0000 (18:22 +0000)]
[Win] Disable FTL stress tests
https://bugs.webkit.org/show_bug.cgi?id=140932

Reviewed by Brent Fulgham.

* Scripts/run-javascriptcore-tests:

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

5 years agoUnreviewed. Rebaseline several editing tests on Mac after r179168.
cdumez@apple.com [Tue, 27 Jan 2015 18:15:19 +0000 (18:15 +0000)]
Unreviewed. Rebaseline several editing tests on Mac after r179168.

* platform/mac/editing/attributed-string/font-size-expected.txt:
* platform/mac/editing/attributed-string/vertical-align-expected.txt:

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

5 years ago[Win] Unskip tests now that r179170 is in place.
bfulgham@apple.com [Tue, 27 Jan 2015 17:28:58 +0000 (17:28 +0000)]
[Win] Unskip tests now that r179170 is in place.

* platform/win/TestExpectations:

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

5 years ago[ARM] Typo fix after r176083
ossy@webkit.org [Tue, 27 Jan 2015 17:13:14 +0000 (17:13 +0000)]
[ARM] Typo fix after r176083
https://bugs.webkit.org/show_bug.cgi?id=140937

Reviewed by Anders Carlsson.

* assembler/ARMv7Assembler.h:
(JSC::ARMv7Assembler::ldrh):

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

5 years ago[Win] Adjust some expectations based on test bot display metrics.
bfulgham@apple.com [Tue, 27 Jan 2015 17:05:46 +0000 (17:05 +0000)]
[Win] Adjust some expectations based on test bot display metrics.

* platform/win/TestExpectations:
* platform/win/fast/dom/adopt-node-crash-2-expected.txt:
* platform/win/fast/ondrop-text-html-expected.txt: Added.

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

5 years agoSimple line layout: Make FlowContents an iterator class.
zalan@apple.com [Tue, 27 Jan 2015 17:01:07 +0000 (17:01 +0000)]
Simple line layout: Make FlowContents an iterator class.
https://bugs.webkit.org/show_bug.cgi?id=140909

Reviewed by Antti Koivisto.

This patch transfers content position handling from createLineRuns()/LineState to
FlowContents. FlowContents becomes a real iterator class.
It tightens content and position information so that we can start supporting
no textual content such as <br>.

No change in functionality.

* rendering/SimpleLineLayout.cpp:
(WebCore::SimpleLineLayout::LineState::commitAndCreateRun): Remove redundant committedLogicalRight.
(WebCore::SimpleLineLayout::LineState::addUncommitted): Now that we don't have current
positon in LineState, we need to be able to figure out where we start the uncommitted content.
This is mainly relevant after collapsed whitespace, when we start a new uncommitted segment.
It was previously achieved through LineState::jumpTo().
(WebCore::SimpleLineLayout::LineState::removeTrailingWhitespace):
(WebCore::SimpleLineLayout::firstFragment): Return the first fragment for this line.
(WebCore::SimpleLineLayout::createLineRuns): Renaming and removing position handling.
(WebCore::SimpleLineLayout::closeLineEndingAndAdjustRuns): Renaming.
(WebCore::SimpleLineLayout::createTextRuns):
(WebCore::SimpleLineLayout::LineState::jumpTo): Deleted.
(WebCore::SimpleLineLayout::initializeNewLine): Deleted. : Move overflow fragment functionality
to firstFragment().
* rendering/SimpleLineLayoutFlowContents.cpp:
(WebCore::SimpleLineLayout::FlowContents::nextTextFragment):
* rendering/SimpleLineLayoutFlowContents.h:

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

5 years agoUpdate Xcode requirement and add instructions to build, run, and debug WebKit for...
dbates@webkit.org [Tue, 27 Jan 2015 17:00:08 +0000 (17:00 +0000)]
Update Xcode requirement and add instructions to build, run, and debug WebKit for iOS Simulator

Reviewed by David Kilzer.

* building/build.html: Added instructions to build WebKit for iOS Simulator.
* building/debug.html: Added some instructions to debug the UIProcess and WebProcess
in the iOS Simulator using command line tools. We should look to add Xcode instructions
and simplify these steps once we teach debug-safari about the iOS Simulator.
* building/run.html: Added remark to run Safari in the iOS Simulator.
* building/tools.html: Require Xcode 6.1.1 (for the iOS 8.1 SDK) to build for iOS Simulator.
* css/main.css: Define the .ios-instructions class with the same style as other .*-instructions classes.

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

5 years agoMake it easy to test enabling formal delegate protocols
andersca@apple.com [Tue, 27 Jan 2015 16:17:04 +0000 (16:17 +0000)]
Make it easy to test enabling formal delegate protocols
https://bugs.webkit.org/show_bug.cgi?id=140892

Reviewed by Dan Bernstein.

Add an WK_ENABLE_FORMAL_DELEGATE_PROTOCOLS define that controls whether delegates should be formal protocols.

* Misc/WebDownload.h:
* WebView/WebFrameLoadDelegate.h:
* WebView/WebPolicyDelegate.h:
* WebView/WebResourceLoadDelegate.h:
* WebView/WebUIDelegate.h:
* WebView/WebView.h:

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

5 years agoREGRESSION(r166975): [GTK] Page overlays are not drawn anymore after r166975
carlosgc@webkit.org [Tue, 27 Jan 2015 16:10:17 +0000 (16:10 +0000)]
REGRESSION(r166975): [GTK] Page overlays are not drawn anymore after r166975
https://bugs.webkit.org/show_bug.cgi?id=131433

Reviewed by Žan Doberšek.

Implement page overlays for the GTK+ port.

* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
Override pure virtual setViewOverlayRootLayer().
* WebProcess/WebPage/DrawingAreaImpl.cpp:
(WebKit::DrawingAreaImpl::display): Remove FIXME and use modern
for loop.
(WebKit::DrawingAreaImpl::attachViewOverlayGraphicsLayer): Remove
ifdefs and use LayerTreeHost::setViewOverlayRootLayer().
* WebProcess/WebPage/LayerTreeHost.h: Add pure virtual setViewOverlayRootLayer().
* WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
(WebKit::LayerTreeHostGtk::LayerTreeHostGtk): Initialize m_viewOverlayRootLayer.
(WebKit::LayerTreeHostGtk::initialize): Remove FIXME.
(WebKit::LayerTreeHostGtk::setNonCompositedContentsNeedDisplay):
Remove unused old page overlays code.
(WebKit::LayerTreeHostGtk::setNonCompositedContentsNeedDisplayInRect): Ditto.
(WebKit::LayerTreeHostGtk::sizeDidChange): Ditto.
(WebKit::LayerTreeHostGtk::paintContents): Remove FIXME.
(WebKit::LayerTreeHostGtk::flushPendingLayerChanges): Flush
compositing state on m_pageOverlayLayers if present.
(WebKit::LayerTreeHostGtk::setViewOverlayRootLayer): Set m_pageOverlayLayers.
(WebKit::LayerTreeHostGtk::createPageOverlayLayer): Deleted.
(WebKit::LayerTreeHostGtk::destroyPageOverlayLayer): Deleted.
* WebProcess/WebPage/gtk/LayerTreeHostGtk.h: Remove unused old
page overlays code.

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

5 years agoHTMLElement.dir should only return known values
cdumez@apple.com [Tue, 27 Jan 2015 15:59:58 +0000 (15:59 +0000)]
HTMLElement.dir should only return known values
https://bugs.webkit.org/show_bug.cgi?id=140925

Reviewed by Darin Adler.

Source/WebCore:

HTMLElement.dir should only return known values according to the HTML
specification:
https://html.spec.whatwg.org/multipage/dom.html#dom-document-dir

Chrome and Firefox 28 match the specification. IE11's behavior is
slightly different:
- When setting an unknown 'dir' value, an exception will be thrown.
- Setting a known 'dir' value in a non-canonical case (e.g. "RTL"),
  the value will be directly converted to its canonical form (e.g.
  "rtl") before updating the DOM tree. (close to the spec but changing
  the case upon setting).

This patch is based on the following Blink revision by me:
https://src.chromium.org/viewvc/blink?view=rev&revision=171861

Test: fast/dom/document-dir-property.html

* html/HTMLDocument.cpp:
(WebCore::HTMLDocument::dir):
(WebCore::HTMLDocument::setDir):
* html/HTMLDocument.h:
* html/HTMLElement.cpp:
(WebCore::toValidDirValue):
(WebCore::HTMLElement::dir):
(WebCore::HTMLElement::setDir):
* html/HTMLElement.h:
* html/HTMLElement.idl:

LayoutTests:

Update fast/dom/document-dir-property.html to make sure HTMLDocument.dir
and HTMLElement.dir only return known values, as per the HTML
specification.

* fast/dom/document-dir-property-expected.txt:
* fast/dom/document-dir-property.html:

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

5 years agoREGRESSION (r179130): Perl warns about subroutine redefinition when running configure...
dbates@webkit.org [Tue, 27 Jan 2015 15:32:20 +0000 (15:32 +0000)]
REGRESSION (r179130): Perl warns about subroutine redefinition when running configure-xcode-for-ios-development
https://bugs.webkit.org/show_bug.cgi?id=140939

Reviewed by Eric Carlson.

Fixes the Perl warning: "Subroutine wanted redefined at Tools/Scripts/configure-xcode-for-ios-development line 106."

* Scripts/webkitdirs.pm:
(hasUserInstalledAppInSimulatorDevice): Pass a reference to an anonymous function instead
of a named function to find() to avoid redefinition warnings in scripts that include webkitdirs.pm
and define a function called wanted.

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

5 years agoTeach run-webkit-app --simulator how to install custom built app
dbates@webkit.org [Tue, 27 Jan 2015 15:16:36 +0000 (15:16 +0000)]
Teach run-webkit-app --simulator how to install custom built app
https://bugs.webkit.org/show_bug.cgi?id=140691

Fix inadvertent omission of directory test flag in expression to check for the
existence of the iOS simulator device-specific directory for user installed apps.

* Scripts/webkitdirs.pm:
(hasUserInstalledAppInSimulatorDevice):

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

5 years ago[EFL] AX: Update test expectations for test related with AXRole.
commit-queue@webkit.org [Tue, 27 Jan 2015 14:12:52 +0000 (14:12 +0000)]
[EFL] AX: Update test expectations for test related with AXRole.
https://bugs.webkit.org/show_bug.cgi?id=140933

Unreviewed EFL gardening.

roles-exposed.html's test expectation changed: for specified elements
AXRole value should NOT be equal AXUnknown but AXStatic because for ATK
version 2.15.2 there is new ATK_ROLE_STATIC role which should be used
instead of ATK_ROLE_UNKNOWN.

Patch by Michal Poteralski <m.poteralski@samsung.com> on 2015-01-27

* platform/efl/accessibility/roles-exposed-expected.txt:

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

5 years ago[Win] JSC profiler tests asserts in debug mode
ossy@webkit.org [Tue, 27 Jan 2015 09:40:12 +0000 (09:40 +0000)]
[Win] JSC profiler tests asserts in debug mode
https://bugs.webkit.org/show_bug.cgi?id=140931

Unreviewed gardening, skip failing tests.

* profiler-test.yaml:

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

5 years ago[Win] Unreviewed gardening, skip failing tests.
ossy@webkit.org [Tue, 27 Jan 2015 09:26:56 +0000 (09:26 +0000)]
[Win] Unreviewed gardening, skip failing tests.

* tests/exceptionFuzz.yaml: Skip exception fuzz tests due to bug140928.
* tests/mozilla/mozilla-tests.yaml: Skip ecma/Date/15.9.5.28-1.js due to bug140927.

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

5 years agoRemove remaining PLUGIN_ARCHITECTURE(WIN) code blocks from WebKit2.
commit-queue@webkit.org [Tue, 27 Jan 2015 08:19:53 +0000 (08:19 +0000)]
Remove remaining PLUGIN_ARCHITECTURE(WIN) code blocks from WebKit2.
https://bugs.webkit.org/show_bug.cgi?id=140912

Patch by Sungmann Cho <sungmann.cho@navercorp.com> on 2015-01-27
Reviewed by Anders Carlsson.

* Shared/Plugins/Netscape/NetscapePluginModule.cpp:
(WebKit::NetscapePluginModule::tryLoad):
* Shared/Plugins/PluginQuirks.h:
* WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
(WebKit::NetscapePlugin::userAgent):
* WebProcess/Plugins/Netscape/NetscapePlugin.h:

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

5 years agoUnreviewed, rebaseline several CSS tests after r179168.
cdumez@apple.com [Tue, 27 Jan 2015 07:40:39 +0000 (07:40 +0000)]
Unreviewed, rebaseline several CSS tests after r179168.

Computed line-height is no longer 'normal' but the font's line
spacing.

* fast/css/font-shorthand-line-height-expected.txt:
* fast/css/font-shorthand-line-height.html:
* platform/mac-mavericks/fast/css/css2-system-fonts-expected.txt:
* platform/mac/fast/css/css2-system-fonts-expected.txt:

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

5 years ago[Win] Unskipping more tests after correcting baselines for Windows widgets.
bfulgham@apple.com [Tue, 27 Jan 2015 07:30:59 +0000 (07:30 +0000)]
[Win] Unskipping more tests after correcting baselines for Windows widgets.

* platform/win/TestExpectations:
* platform/win/fast/events/context-no-deselect-expected.png: Added.
* platform/win/fast/events/context-no-deselect-expected.txt: Added.
* platform/win/fast/events/dropzone-005-expected.txt: Added.
* platform/win/fast/events/ime-composition-events-001-expected.txt:
* platform/win/fast/events/key-events-in-input-button-expected.txt: Added.
* platform/win/fast/events/mouseup-from-button2-expected.txt: Added.
* platform/win/fast/flexbox: Added.
* platform/win/fast/flexbox/clear-overflow-before-scroll-update-expected.txt: Added.
* platform/win/fast/frames/flattening: Added.
* platform/win/fast/frames/flattening/frameset-flattening-simple-expected.txt: Added.
* platform/win/fast/multicol/client-rects-expected.png: Added.
* platform/win/fast/multicol/client-rects-expected.txt: Added.
* platform/win/fast/multicol/client-rects-spanners-complex-expected.png: Added.
* platform/win/fast/multicol/client-rects-spanners-complex-expected.txt: Added.
* platform/win/fast/multicol/client-rects-spanners-expected.png: Added.
* platform/win/fast/multicol/client-rects-spanners-expected.txt: Added.
* platform/win/fast/multicol/newmulticol: Added.
* platform/win/fast/multicol/newmulticol/client-rects-expected.png: Added.
* platform/win/fast/multicol/newmulticol/client-rects-expected.txt: Added.
* platform/win/fast/overflow/scroll-nested-positioned-layer-in-overflow-expected.txt:
* platform/win/fast/overflow/scrollRevealButton-expected.txt:
* platform/win/fast/parser/bad-xml-slash-expected.txt: Added.
* platform/win/fast/parser/document-write-option-expected.txt: Added.
* platform/win/fast/repaint/control-clip-expected.txt:
* platform/win/fast/replaced/object-with-embed-url-param-expected.txt: Added.
* platform/win/fast/replaced/replaced-breaking-expected.txt: Added.
* platform/win/fast/replaced/replaced-breaking-mixture-expected.txt: Added.
* platform/win/fast/replaced/width100percent-button-expected.txt:
* platform/win/fast/replaced/width100percent-checkbox-expected.txt: Added.
* platform/win/fast/replaced/width100percent-menulist-expected.txt: Added.
* platform/win/fast/replaced/width100percent-radio-expected.txt: Added.

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

5 years agoIntroduce Document::body() for call sites interested in the <body> element
cdumez@apple.com [Tue, 27 Jan 2015 07:05:08 +0000 (07:05 +0000)]
Introduce Document::body() for call sites interested in the <body> element
https://bugs.webkit.org/show_bug.cgi?id=140920

Reviewed by Darin Adler.

Introduce Document::body() method for call sites interested only in the
document's <body> element (not the <frameset>). Also clean up the call
sites of Document::bodyOrFrameset() to cache the return value when
suitable as this method does a tree traversal.

This patch does not change behavior, it merely ports calls sites that
were calling Document::bodyOrFrameset() then checking if the tag was
<body>, to call Document::body() instead. Doing so is more efficient
and clearer.

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

5 years agoApply feTurbulence spec change to fix zero length vector generation
commit-queue@webkit.org [Tue, 27 Jan 2015 06:32:03 +0000 (06:32 +0000)]
Apply feTurbulence spec change to fix zero length vector generation
https://bugs.webkit.org/show_bug.cgi?id=140812
.:

Patch by Nikos Andronikos <nikos.andronikos-webkit@cisra.canon.com.au> on 2015-01-26
Reviewed by Darin Adler.

Recently a bug with the turbulence algorithm was corrected in the
Filter Effects specification.
For some seed values this bug allowed zero length vectors to be generated.
This resulted in large solid color squares being present in the generated image.
The feTurbulence algorithm was updated to reject zero length vectors. This patch
applies that change in WebCore.

Test: svg/filters/feTurbulence_bad_seeds.html

* platform/graphics/filters/FETurbulence.cpp:
(WebCore::FETurbulence::initPaint):
Added rejection sampling during vector generation to avoid zero length vectors.

LayoutTests:

Patch by Nikos Andronikos <nikos.andronikos-webkit@cisra.canon.com.au> on 2015-01-26
Reviewed by Darin Adler.

Ref test that generates a turbulence image which is then coloured black
and alpha min/maxxed (>0 becomes 1, 0 stays zero). This allows holes
caused by zero length vectors to be easily identified.

* svg/filters/feTurbulence_bad_seeds-expected.html: Added.
* svg/filters/feTurbulence_bad_seeds.html: Added.

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

5 years ago[Win] ASSERTION FAILED !m_ptr under AccessibilityController::winAddNotificationListener
bfulgham@apple.com [Tue, 27 Jan 2015 06:24:09 +0000 (06:24 +0000)]
[Win] ASSERTION FAILED !m_ptr under AccessibilityController::winAddNotificationListener
https://bugs.webkit.org/show_bug.cgi?id=87426
<rdar://problem/11527899>

Reviewed by Darin Adler.

Source/WebCore:

Revise COMPtr to work better with our HashMap implementation:
(1) Add a specialization for IsSmartPtr.
(2) Remove PtrHash specialization.
(3) Refresh HashTrails specialization for COMPtr to match what we
do for RefPtr.

* platform/win/COMPtr.h:

Source/WebKit/win:

Revise COMPtr to work better with our HashMap implementation. Use
modern loop syntax.

* WebHistory.cpp:
(WebHistory::visitedURL): Adjust for new COMPtr changes.
* WebPreferences.cpp:
(WebPreferences::getInstanceForIdentifier): Ditto.
(WebPreferences::removeReferenceForIdentifier): Ditto.
* WebView.cpp:
(WebView::setEditable): Ditto.

Source/WTF:

Revise internal containers to use std::addressof in preference to
to using the '&' operator.

* wtf/Deque.h:
(WTF::inlineCapacity>::append):
(WTF::inlineCapacity>::prepend):
(WTF::inlineCapacity>::removeFirst):
(WTF::inlineCapacity>::removeLast):
(WTF::inlineCapacity>::remove):
(WTF::inlineCapacity>::after):
(WTF::inlineCapacity>::before):
* wtf/GetPtr.h:
* wtf/HashTable.h:
(WTF::HashTableBucketInitializer<false>::initialize):
* wtf/HashTraits.h:
(WTF::SimpleClassHashTraits::constructDeletedValue):
(WTF::CustomHashTraits::constructDeletedValue):
* wtf/ListHashSet.h:
(WTF::ListHashSetConstIterator::get):
* wtf/Vector.h:
(WTF::Vector::swap):
(WTF::OverflowHandler>::append):
(WTF::OverflowHandler>::tryAppend):
(WTF::OverflowHandler>::insert):

Tools:

Revise COMPtr to work better with our HashMap implementation. Use
modern loop syntax.

* DumpRenderTree/win/AccessibilityControllerWin.cpp:
(AccessibilityController::~AccessibilityController):
(AccessibilityController::winNotificationReceived):
* DumpRenderTree/win/DumpRenderTree.cpp:
(dumpBackForwardListForAllWindows):

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

5 years ago[Win] Enable JSC stress tests by default
ossy@webkit.org [Tue, 27 Jan 2015 06:14:01 +0000 (06:14 +0000)]
[Win] Enable JSC stress tests by default
https://bugs.webkit.org/show_bug.cgi?id=128307

Unreviewed typo fix after r179165.

* tests/mozilla/mozilla-tests.yaml:

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

5 years agoThe computed value of line-height:normal is incorrect
dino@apple.com [Tue, 27 Jan 2015 06:12:40 +0000 (06:12 +0000)]
The computed value of line-height:normal is incorrect
https://bugs.webkit.org/show_bug.cgi?id=133744

Patch by Sylvain Galineau <galineau@adobe.com> on 2015-01-26
Reviewed by Dean Jackson.

Source/WebCore:

Use font's line spacing as computed line-height value when specified value is 'normal'.
This behavior is compatible with all other engines.

No new tests; all existing tests are updated to reflect the new computed value.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::lineHeightFromStyle): If line-height wasn't set, use the font's line spacing (same as Blink).

LayoutTests:

line-height:normal now computes to a length value.
This patch updates the tests to reflect the new computed value, as needed.

* css3/calc/line-height-expected.txt:
* editing/pasteboard/simplfiying-markup-should-not-strip-content-expected.txt:
* fast/css/font-calculated-value-expected.txt:
* fast/css/font-calculated-value.html:
* fast/css/font-shorthand-from-longhands-expected.txt:
* fast/css/font-shorthand-from-longhands.html:
* fast/css/getComputedStyle/computed-style-expected.txt:
* fast/css/getComputedStyle/computed-style-font-expected.txt:
* fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* fast/css/getComputedStyle/script-tests/computed-style-font.js:
* fast/css/line-height-text-autosizing-expected.txt:
* fast/css/line-height-text-autosizing.html:
* fast/ruby/ruby-line-height-expected.txt:
* fast/ruby/script-tests/ruby-line-height.js:
* media/track/track-cue-rendering-on-resize-expected.txt:
* media/track/track-cue-rendering-on-resize.html:
* platform/mac-mavericks/platform/mac/editing/attributed-string/anchor-element-expected.txt:
* platform/mac-mavericks/platform/mac/editing/attributed-string/basic-expected.txt:
* platform/mac-mavericks/platform/mac/editing/attributed-string/font-size-expected.txt:
* platform/mac-mavericks/platform/mac/editing/attributed-string/font-style-variant-effect-expected.txt:
* platform/mac-mavericks/platform/mac/editing/attributed-string/font-weight-expected.txt:
* platform/mac-mavericks/platform/mac/editing/attributed-string/letter-spacing-expected.txt:
* platform/mac-mavericks/platform/mac/editing/attributed-string/text-decorations-expected.txt:
* platform/mac-mavericks/platform/mac/editing/attributed-string/vertical-align-expected.txt:
* platform/mac/editing/attributed-string/anchor-element-expected.txt:
* platform/mac/editing/attributed-string/basic-expected.txt:
* platform/mac/editing/attributed-string/font-size-expected.txt:
* platform/mac/editing/attributed-string/font-style-variant-effect-expected.txt:
* platform/mac/editing/attributed-string/font-weight-expected.txt:
* platform/mac/editing/attributed-string/letter-spacing-expected.txt:
* platform/mac/editing/attributed-string/text-decorations-expected.txt:
* platform/mac/editing/attributed-string/vertical-align-expected.txt:
* svg/css/getComputedStyle-basic-expected.txt:

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

5 years ago[Win] Windows gardening (removing more skips).
bfulgham@apple.com [Tue, 27 Jan 2015 06:04:43 +0000 (06:04 +0000)]
[Win] Windows gardening (removing more skips).

* platform/win/TestExpectations:
* platform/win/fast/block/basic/011-expected.png: Added.
* platform/win/fast/block/basic/011-expected.txt: Added.
* platform/win/fast/block/float/overhanging-tall-block-expected.png: Added.
* platform/win/fast/block/float/overhanging-tall-block-expected.txt: Added.
* platform/win/fast/borders/bidi-002-expected.png: Added.
* platform/win/fast/borders/bidi-002-expected.txt: Added.
* platform/win/fast/borders/bidi-009a-expected.png: Added.
* platform/win/fast/borders/bidi-009a-expected.txt: Added.
* platform/win/fast/borders/border-fit-expected.txt: Added.
* platform/win/fast/dom/HTMLInputElement/input-image-alt-text-expected.png: Added.
* platform/win/fast/dom/HTMLInputElement/input-image-alt-text-expected.txt: Added.
* platform/win/fast/dom/HTMLInputElement/input-slider-update-expected.txt: Removed property svn:executable.
* platform/win/fast/dom/HTMLInputElement/input-slider-update-styled-expected.txt: Removed property svn:executable.
* platform/win/fast/dom/HTMLTableColElement: Added.
* platform/win/fast/dom/HTMLTableColElement/resize-table-using-col-width-expected.png: Added.
* platform/win/fast/dom/HTMLTableColElement/resize-table-using-col-width-expected.txt: Added.
* platform/win/fast/dom/call-a-constructor-as-a-function-expected.txt: Removed.

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

5 years agoDocument.dir should reflect the 'dir' attribute of the root html element
cdumez@apple.com [Tue, 27 Jan 2015 05:54:05 +0000 (05:54 +0000)]
Document.dir should reflect the 'dir' attribute of the root html element
https://bugs.webkit.org/show_bug.cgi?id=140922

Reviewed by Darin Adler.

Source/WebCore:

Document.dir should reflect the 'dir' content attribute of the root
<html> element as per the specification:
https://html.spec.whatwg.org/multipage/dom.html#dom-document-dir

Previously, WebKit was reflecting the 'dir' content attribute of the
body element. This patch aligns WebKit with the specification and the
behavior of other browsers (tested Firefox 28, IE11 and Chrome).

This patch is based on the following Blink revision by me:
https://src.chromium.org/viewvc/blink?revision=171734&view=revision

Test: fast/dom/document-dir-property.html

* html/HTMLDocument.cpp:
(WebCore::HTMLDocument::dir):
(WebCore::HTMLDocument::setDir):
* html/HTMLDocument.h:

LayoutTests:

Update fast/dom/document-dir-property.html to reflect the behavior
change.

* fast/dom/document-dir-property-expected.txt:
* fast/dom/document-dir-property.html:

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

5 years ago[Win] Enable JSC stress tests by default
ossy@webkit.org [Tue, 27 Jan 2015 05:01:08 +0000 (05:01 +0000)]
[Win] Enable JSC stress tests by default
https://bugs.webkit.org/show_bug.cgi?id=128307

Reviewed by Brent Fulgham.

Source/JavaScriptCore:

* tests/mozilla/mozilla-tests.yaml: Skipped on Windows.
* tests/stress/ftl-arithcos.js: Skipped on Windows.

Tools:

* Scripts/run-javascriptcore-tests:

LayoutTests:

* js/script-tests/date-constructor.js: Skipped on Windows.
* js/script-tests/sort-stability.js: Skipped on Windows.

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

5 years agoREGRESSION (r179101): SVGUseElement::expandUseElementsInShadowTree has an object...
darin@apple.com [Tue, 27 Jan 2015 04:39:58 +0000 (04:39 +0000)]
REGRESSION (r179101): SVGUseElement::expandUseElementsInShadowTree has an object lifetime mistake
https://bugs.webkit.org/show_bug.cgi?id=140921

Reviewed by Alexey Proskuryakov.

Bug found by running regression tests with Address Sanitizer.

* svg/SVGUseElement.cpp:
(WebCore::SVGUseElement::expandUseElementsInShadowTree): Use a Ref to protect
the original use element after it's been replaced in the tree; we use it for
one more thing after that.

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

5 years ago[iOS] Remove the various aliases for --ios-simulator (--sim, --simulator, --ios-sim) in
dbates@webkit.org [Tue, 27 Jan 2015 04:06:36 +0000 (04:06 +0000)]
[iOS] Remove the various aliases for --ios-simulator (--sim, --simulator, --ios-sim) in
arguments for build and test scripts
https://bugs.webkit.org/show_bug.cgi?id=139748

Patch by Simon Fraser <simon.fraser@apple.com> on 2015-01-26
Reviewed by Daniel Bates.

There was much confusion resulting from the multitude of aliases used to build/test for
the iOS simulator. Standardize on "--ios-simulator", which is also the name of the layout
tests directory.

This fixes an issue where run-api-tests and some other scripts failed when run with
--simulator.

* Scripts/build-webkit:
* Scripts/package-root:
(usage):
* Scripts/webkitdirs.pm:
(argumentsForConfiguration):
(determineXcodeSDK):
* Scripts/webkitpy/port/factory.py:
(platform_options):

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

5 years ago[iOS WK2] Fix possible crash when -[WKWebView evaluateJavaScript:completionHandler...
simon.fraser@apple.com [Tue, 27 Jan 2015 02:39:44 +0000 (02:39 +0000)]
[iOS WK2] Fix possible crash when -[WKWebView evaluateJavaScript:completionHandler:] was called then the WKWebView is destroyed
https://bugs.webkit.org/show_bug.cgi?id=140203
rdar://problem/19198492

Reviewed by Sam Weinig.
Source/WebKit2:

When handling the OwnerWasInvalidated case in -[WKWebView evaluateJavaScript:completionHandler:],
the block passed to dispatch_async() needs to be retained. Fix by passing the RefPtr
to the lambda.

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView evaluateJavaScript:completionHandler:]):

Tools:

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewEvaluateJavaScript.mm: Added.
(TEST):

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

5 years agoNeed a short description (OOPS!).
simon.fraser@apple.com [Tue, 27 Jan 2015 02:39:42 +0000 (02:39 +0000)]
Need a short description (OOPS!).
Need the bug URL (OOPS!).

Reviewed by NOBODY (OOPS!).

Source/WebKit2:
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView evaluateJavaScript:completionHandler:]):

Tools:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewEvaluateJavaScript.mm: Added.
(TEST):

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

5 years agoParse a function expression as a primary expression
rniwa@webkit.org [Tue, 27 Jan 2015 01:14:14 +0000 (01:14 +0000)]
Parse a function expression as a primary expression
https://bugs.webkit.org/show_bug.cgi?id=140908

Reviewed by Mark Lam.

Moved the code to generate an AST node for a function expression from parseMemberExpression
to parsePrimaryExpression to match the ES6 specification terminology:
https://people.mozilla.org/~jorendorff/es6-draft.html#sec-primary-expression

There should be no behavior change from this change since parsePrimaryExpression is only
called in parseMemberExpression other than the fact failIfStackOverflow() is called.

* parser/Parser.cpp:
(JSC::Parser<LexerType>::parsePrimaryExpression):
(JSC::Parser<LexerType>::parseMemberExpression):

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

5 years agoWebGL 2.0: Actually allow for experimental-webgl2 context creation.
roger_fong@apple.com [Tue, 27 Jan 2015 00:55:26 +0000 (00:55 +0000)]
WebGL 2.0: Actually allow for experimental-webgl2 context creation.
        https://bugs.webkit.org/show_bug.cgi?id=140906
        <rdar://problem/19606875>.

        Reviewed by Brent Fulgham.

        * html/HTMLCanvasElement.cpp:
        (WebCore::HTMLCanvasElement::is3dType): Include experimental-webgl2 in the list of acceptable 3d context types.

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

5 years agoRename Document::body() to Document::bodyOrFrameset() for clarity
cdumez@apple.com [Tue, 27 Jan 2015 00:26:21 +0000 (00:26 +0000)]
Rename Document::body() to Document::bodyOrFrameset() for clarity
https://bugs.webkit.org/show_bug.cgi?id=140902

Reviewed by Andreas Kling.

Rename Document::body() to Document::bodyOrFrameset() for clarity. This
method does not necessarily return an HTMLBodyElement, it can also
return a frameset as per the specification:
http://www.w3.org/TR/html5/dom.html#dom-tree-accessors

This method is often misused internally (the caller is only interested
in the <body> element). I will fix these instances in a follow-up patch,
this patch is only renaming mechanically.

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

5 years ago[Win] More test gardening.
bfulgham@apple.com [Mon, 26 Jan 2015 23:23:05 +0000 (23:23 +0000)]
[Win] More test gardening.

* platform/win/TestExpectations:

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

5 years agoAdd a user default for disabling network cache
antti@apple.com [Mon, 26 Jan 2015 23:20:30 +0000 (23:20 +0000)]
Add a user default for disabling network cache
https://bugs.webkit.org/show_bug.cgi?id=140904

Reviewed by Andreas Kling

defaults write com.apple.Safari WebKitNetworkCacheEnabled -bool YES/NO

* NetworkProcess/cocoa/NetworkProcessCocoa.mm:
(WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):
* Shared/Network/NetworkProcessCreationParameters.cpp:
(WebKit::NetworkProcessCreationParameters::encode):
(WebKit::NetworkProcessCreationParameters::decode):
* Shared/Network/NetworkProcessCreationParameters.h:
* UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::registerUserDefaultsIfNeeded):
(WebKit::WebProcessPool::platformInitializeWebProcess):
(WebKit::WebProcessPool::platformInitializeNetworkProcess):

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

5 years agoFix Border-radius clipping issue on a composited descendants
commit-queue@webkit.org [Mon, 26 Jan 2015 22:59:40 +0000 (22:59 +0000)]
Fix Border-radius clipping issue on a composited descendants
Source/WebCore:

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

Patch by Byungseon Shin <sun.shin@lge.com> on 2015-01-26
Reviewed by Simon Fraser.

Fix assertion in RenderLayerBacking::paintIntoLayer
by not checking out of sync with the GraphicsLayer heirarchy
in GraphicsLayerPaintChildClippingMask phase.

Test: compositing/clipping/border-radius-overflow-hidden-stacking-context.html

* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::paintIntoLayer):

LayoutTests:

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

Patch by Byungseon Shin <sun.shin@lge.com> on 2015-01-26
Reviewed by Simon Fraser.

Ref test that clips composited descendant by stacking context with border-radius and overflow hidden element.

* compositing/clipping/border-radius-overflow-hidden-stacking-context-expected.txt: Added.
* compositing/clipping/border-radius-overflow-hidden-stacking-context.html: Added.

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

5 years agoSimplify RenderElement's shouldRepaintForImageAnimation()
cdumez@apple.com [Mon, 26 Jan 2015 22:44:19 +0000 (22:44 +0000)]
Simplify RenderElement's shouldRepaintForImageAnimation()
https://bugs.webkit.org/show_bug.cgi?id=140890

Reviewed by Darin Adler.

Simplify RenderElement's shouldRepaintForImageAnimation() by
not calling rendererForRootBackground(). The previous code was
doing a null-check on Document::documentElement() but failing
to do a null-check on the renderer just after, which lead me
to refactor this code.

Instead of calling document().documentElement.renderer(), we
now call renderer.parent(). This is equivalent because we already
know that renderer.isBody() returns true. The parent of the <body>
has to be the <html> element, which has to be the documentElement.
There is also no need to do a null-check on renderer.parent(). We
already know that the <body> has a renderer (because |renderer| is
its renderer), thus its parent <html> element has to have a renderer
as well.

Finally, simply call !rootElement.hasBackground() instead of
rootElement.rendererForRootBackground() == &bodyRenderer to determine
if the background painted by the root. This is equivalent but more
efficient because:
- We already know that the root renderer's is an <html> element. We
  can thus avoid the check in rendererForRootBackground().
- We already have the <body>'s renderer so we don't need to do the
  DOM tree traversal in rendererForRootBackground() to get it.

No new tests, already covered by:
fast/images/animated-gif-body-delegated-background-image.html
fast/images/animated-gif-html-background-image.html

* rendering/RenderElement.cpp:
(WebCore::shouldRepaintForImageAnimation):

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

5 years agoAdd iOS EWS to build.webkit.org/dashboard
ddkilzer@apple.com [Mon, 26 Jan 2015 22:40:35 +0000 (22:40 +0000)]
Add iOS EWS to build.webkit.org/dashboard
<http://webkit.org/b/140627>

Reviewed by Alexey Proskuryakov.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOSDevice.png: Add.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOSDevice@2x.png: Add.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
(BubbleQueueServer): Add ios-ews queue info.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
Add iOS8Device platform.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
(table.queue-grid tr.platform.ios-8 img.logo): Add CSS to draw
iOS device logo.

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

5 years agoFirst argument to DOM traversal functions should be a reference
cdumez@apple.com [Mon, 26 Jan 2015 22:36:36 +0000 (22:36 +0000)]
First argument to DOM traversal functions should be a reference
https://bugs.webkit.org/show_bug.cgi?id=140895

Reviewed by Antti Koivisto.

First argument to DOM traversal functions should be a reference instead
of a pointer as it is dereferenced without null-check.

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

5 years ago[WebGL2] Update IDL for WebGL2.
roger_fong@apple.com [Mon, 26 Jan 2015 22:03:00 +0000 (22:03 +0000)]
[WebGL2] Update IDL for WebGL2.
https://bugs.webkit.org/show_bug.cgi?id=126406
<rdar://problem/15002268>.

Reviewed by Brent Fulgham.

Update WebGL2RenderingContext idl to match spec. Create method stubs as necessary.

* bindings/js/JSWebGL2RenderingContextCustom.cpp:
(WebCore::JSWebGL2RenderingContext::getFramebufferAttachmentParameter):
(WebCore::JSWebGL2RenderingContext::getInternalformatParameter):
(WebCore::JSWebGL2RenderingContext::getQueryParameter):
(WebCore::JSWebGL2RenderingContext::getSamplerParameter):
(WebCore::JSWebGL2RenderingContext::getSyncParameter):
(WebCore::JSWebGL2RenderingContext::getIndexedParameter):
(WebCore::JSWebGL2RenderingContext::getActiveUniformBlockParameter):
(WebCore::JSWebGL2RenderingContext::getActiveUniformBlockName):
* html/canvas/WebGL2RenderingContext.cpp:
(WebCore::WebGL2RenderingContext::copyBufferSubData):
(WebCore::WebGL2RenderingContext::getBufferSubData):
(WebCore::WebGL2RenderingContext::getFramebufferAttachmentParameter):
(WebCore::WebGL2RenderingContext::blitFramebuffer):
(WebCore::WebGL2RenderingContext::framebufferTextureLayer):
(WebCore::WebGL2RenderingContext::getInternalformatParameter):
(WebCore::WebGL2RenderingContext::invalidateFramebuffer):
(WebCore::WebGL2RenderingContext::invalidateSubFramebuffer):
(WebCore::WebGL2RenderingContext::readBuffer):
(WebCore::WebGL2RenderingContext::renderbufferStorageMultisample):
(WebCore::WebGL2RenderingContext::texStorage2D):
(WebCore::WebGL2RenderingContext::texStorage3D):
(WebCore::WebGL2RenderingContext::texImage3D):
(WebCore::WebGL2RenderingContext::texSubImage3D):
(WebCore::WebGL2RenderingContext::copyTexSubImage3D):
(WebCore::WebGL2RenderingContext::compressedTexImage3D):
(WebCore::WebGL2RenderingContext::compressedTexSubImage3D):
(WebCore::WebGL2RenderingContext::getFragDataLocation):
(WebCore::WebGL2RenderingContext::uniform1ui):
(WebCore::WebGL2RenderingContext::uniform2ui):
(WebCore::WebGL2RenderingContext::uniform3ui):
(WebCore::WebGL2RenderingContext::uniform4ui):
(WebCore::WebGL2RenderingContext::uniform1uiv):
(WebCore::WebGL2RenderingContext::uniform2uiv):
(WebCore::WebGL2RenderingContext::uniform3uiv):
(WebCore::WebGL2RenderingContext::uniform4uiv):
(WebCore::WebGL2RenderingContext::uniformMatrix2x3fv):
(WebCore::WebGL2RenderingContext::uniformMatrix3x2fv):
(WebCore::WebGL2RenderingContext::uniformMatrix2x4fv):
(WebCore::WebGL2RenderingContext::uniformMatrix4x2fv):
(WebCore::WebGL2RenderingContext::uniformMatrix3x4fv):
(WebCore::WebGL2RenderingContext::uniformMatrix4x3fv):
(WebCore::WebGL2RenderingContext::vertexAttribI4i):
(WebCore::WebGL2RenderingContext::vertexAttribI4iv):
(WebCore::WebGL2RenderingContext::vertexAttribI4ui):
(WebCore::WebGL2RenderingContext::vertexAttribI4uiv):
(WebCore::WebGL2RenderingContext::vertexAttribIPointer):
(WebCore::WebGL2RenderingContext::vertexAttribDivisor):
(WebCore::WebGL2RenderingContext::drawArraysInstanced):
(WebCore::WebGL2RenderingContext::drawElementsInstanced):
(WebCore::WebGL2RenderingContext::drawRangeElements):
(WebCore::WebGL2RenderingContext::drawBuffers):
(WebCore::WebGL2RenderingContext::clearBufferiv):
(WebCore::WebGL2RenderingContext::clearBufferuiv):
(WebCore::WebGL2RenderingContext::clearBufferfv):
(WebCore::WebGL2RenderingContext::clearBufferfi):
(WebCore::WebGL2RenderingContext::createQuery):
(WebCore::WebGL2RenderingContext::deleteQuery):
(WebCore::WebGL2RenderingContext::isQuery):
(WebCore::WebGL2RenderingContext::beginQuery):
(WebCore::WebGL2RenderingContext::endQuery):
(WebCore::WebGL2RenderingContext::getQuery):
(WebCore::WebGL2RenderingContext::getQueryParameter):
(WebCore::WebGL2RenderingContext::createSampler):
(WebCore::WebGL2RenderingContext::deleteSampler):
(WebCore::WebGL2RenderingContext::isSampler):
(WebCore::WebGL2RenderingContext::bindSampler):
(WebCore::WebGL2RenderingContext::samplerParameteri):
(WebCore::WebGL2RenderingContext::samplerParameterf):
(WebCore::WebGL2RenderingContext::getSamplerParameter):
(WebCore::WebGL2RenderingContext::fenceSync):
(WebCore::WebGL2RenderingContext::isSync):
(WebCore::WebGL2RenderingContext::deleteSync):
(WebCore::WebGL2RenderingContext::clientWaitSync):
(WebCore::WebGL2RenderingContext::waitSync):
(WebCore::WebGL2RenderingContext::getSyncParameter):
(WebCore::WebGL2RenderingContext::createTransformFeedback):
(WebCore::WebGL2RenderingContext::deleteTransformFeedback):
(WebCore::WebGL2RenderingContext::isTransformFeedback):
(WebCore::WebGL2RenderingContext::bindTransformFeedback):
(WebCore::WebGL2RenderingContext::beginTransformFeedback):
(WebCore::WebGL2RenderingContext::endTransformFeedback):
(WebCore::WebGL2RenderingContext::transformFeedbackVaryings):
(WebCore::WebGL2RenderingContext::getTransformFeedbackVarying):
(WebCore::WebGL2RenderingContext::pauseTransformFeedback):
(WebCore::WebGL2RenderingContext::resumeTransformFeedback):
(WebCore::WebGL2RenderingContext::bindBufferBase):
(WebCore::WebGL2RenderingContext::bindBufferRange):
(WebCore::WebGL2RenderingContext::getIndexedParameter):
(WebCore::WebGL2RenderingContext::getUniformIndices):
(WebCore::WebGL2RenderingContext::getActiveUniforms):
(WebCore::WebGL2RenderingContext::getUniformBlockIndex):
(WebCore::WebGL2RenderingContext::getActiveUniformBlockParameter):
(WebCore::WebGL2RenderingContext::getActiveUniformBlockName):
(WebCore::WebGL2RenderingContext::uniformBlockBinding):
(WebCore::WebGL2RenderingContext::createVertexArray):
(WebCore::WebGL2RenderingContext::deleteVertexArray):
(WebCore::WebGL2RenderingContext::isVertexArray):
(WebCore::WebGL2RenderingContext::bindVertexArray):
* html/canvas/WebGL2RenderingContext.h:
* html/canvas/WebGL2RenderingContext.idl:
* platform/graphics/GraphicsTypes3D.h:

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

5 years agoDon't let the CSSValuePool's font family cache grow unbounded.
akling@apple.com [Mon, 26 Jan 2015 21:42:40 +0000 (21:42 +0000)]
Don't let the CSSValuePool's font family cache grow unbounded.
<https://webkit.org/b/140894>

Reviewed by Chris Dumez.

Darin pointed out to Chris who pointed out to me that the font family cache
in CSSValuePool can grow unbounded until we get a system memory pressure
notification. Put a limit on it like we did with the font face cache.

* css/CSSValuePool.cpp:
(WebCore::CSSValuePool::createFontFamilyValue):

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