[Qt] Drastically shorten length of commandline needed for JS bindings generator
https://bugs.webkit.org/show_bug.cgi?id=96266

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-12
Reviewed by Tor Arne Vestbø.

The generate-bindings script supports the SOURCE_ROOT environment variable for IDL include file
lookups, which allows specifying relative include search directories.

* DerivedSources.pri:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128307 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Build on Windows requires bison/flex in PATH
https://bugs.webkit.org/show_bug.cgi?id=96358

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-12
Reviewed by Tor Arne Vestbø.

Source/ThirdParty/ANGLE:

Use MAKEFILE_NOOP_COMMAND instead of the \n\t trick to generate a dummy command. Otherwise
the PATH prepend trick will break because it generates a command line along the lines of
(set PATH="...") && with just that trailing ampersand pair.

* DerivedSources.pri:

Tools:

The build requires flex, bison, etc. and they need to be in the PATH when building. On Mac OS X
and Linux that is rarely a problem given how easily available the tools are. On Windows however
a separate installation of various GNU tools is required as the operating system doesn't come with
them. To make the development more convenient, Qt 5 provides a copy of the most essential tools in
the gnuwin32 directory of the qt5.git top-level repository.

This patch tries to detect the presence of those tools and prepends them to the PATH if found.

This is required in preparation for the elimination of qt5/qtwebkit.pri, which currently expands
PATH before calling build-webkit. It it also required for the upcoming introduction of win_flex
as dependency over flex, which can be done with less hassle when qt5's gnuwin32 directory has been
updated with the new tool.

* Scripts/webkitdirs.pm:
(checkRequiredSystemConfig):
* qmake/mkspecs/features/default_post.prf:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128308 268f45cc-cd09-0410-ab3c-d52691b4dbfc
getScreenCTM returns different values depending on zoom
https://bugs.webkit.org/show_bug.cgi?id=96361

Reviewed by Dirk Schulze.

Source/WebCore:

SVGSVGElement::localCoordinateSpaceTransform() needs to adjust for the
zoom level (which is already factored into CSS coordinates) at the
SVG/HTML boundary.

Test: svg/zoom/page/zoom-get-screen-ctm.html

* svg/SVGSVGElement.cpp:
(WebCore::SVGSVGElement::localCoordinateSpaceTransform):

LayoutTests:

* svg/zoom/page/zoom-get-screen-ctm-expected.txt: Added.
* svg/zoom/page/zoom-get-screen-ctm.html: Added.


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

Adding baseline for an accessibility test introduced in r128227.

Adding a text mismatch failure expectation for fast/events/popup-blocking-timers.html
that started failing after the test was refactored in r128270.

* platform/gtk/TestExpectations:
* platform/gtk/accessibility/img-fallsback-to-title-expected.txt: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128310 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] Avoid manual memory management in RenderThemeEfl
https://bugs.webkit.org/show_bug.cgi?id=96501

Reviewed by Simon Hausmann.

Use OwnPtr as it works for Evas_Object and Evas_Ecore objects.

* platform/efl/RenderThemeEfl.cpp:
(WebCore::RenderThemeEfl::ThemePartCacheEntry::ThemePartCacheEntry):
(WebCore::RenderThemeEfl::ThemePartCacheEntry::~ThemePartCacheEntry):
(WebCore::RenderThemeEfl::ThemePartCacheEntry::create):
(WebCore::RenderThemeEfl::ThemePartCacheEntry::reuse):
(WebCore::RenderThemeEfl::paintThemePart):
(WebCore::RenderThemeEfl::setColorFromThemeClass):
(WebCore::RenderThemeEfl::themePath):
(WebCore::RenderThemeEfl::loadTheme):
(WebCore::RenderThemeEfl::applyPartDescriptionsFrom):
(WebCore::RenderThemeEfl::RenderThemeEfl):
(WebCore::RenderThemeEfl::~RenderThemeEfl):
(WebCore::RenderThemeEfl::emitMediaButtonSignal):
* platform/efl/RenderThemeEfl.h:
(WebCore::RenderThemeEfl::canvas):
(WebCore::RenderThemeEfl::edje):
(RenderThemeEfl):
(WebCore::RenderThemeEfl::ThemePartCacheEntry::canvas):
(WebCore::RenderThemeEfl::ThemePartCacheEntry::edje):
(ThemePartCacheEntry):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128311 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Use own instance of CertMgrWrapper in BlackBerry CredentialBackingStore.
https://bugs.webkit.org/show_bug.cgi?id=96457
Internal PR: 205769

Internally reviewed by George Staikos, Jonathan Dong.
Patch by Lianghui Chen <liachen@rim.com> on 2012-09-12
Reviewed by George Staikos.

CertMgrWrapper in BlackBerry platform layer has been changed from
singleton to normal class, every user of it need to create its own
instance now.

No new tests for platform specific interface change.

* platform/network/blackberry/CredentialBackingStore.cpp:
(WebCore::CredentialBackingStore::CredentialBackingStore):
(WebCore::CredentialBackingStore::~CredentialBackingStore):
(WebCore::CredentialBackingStore::addLogin):
(WebCore::CredentialBackingStore::updateLogin):
(WebCore::CredentialBackingStore::getLogin):
(WebCore::CredentialBackingStore::certMgrWrapper):
(WebCore):
* platform/network/blackberry/CredentialBackingStore.h:
(Platform):
(CredentialBackingStore):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128312 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] Fix build break when netscape-plugin-api is enebled after r126971
https://bugs.webkit.org/show_bug.cgi?id=96513

Unreviewed build fix.


* plugins/efl/PluginViewEfl.cpp:
(WebCore::PluginView::platformGetValue):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128313 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Mark new test fast/filesystem/workers/detached-frame-crash.html
as flakily crashing in cr-win & cr-linux debug builds.

Unreviewed gardening.

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128314 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Segmentation fault when closing QtTestBrowser
https://bugs.webkit.org/show_bug.cgi?id=95003

Patch by Roland Takacs <rtakacs@inf.u-szeged.hu> on 2012-09-12
Reviewed by Simon Hausmann.

Source/WebCore:

Defined a new QObject* variable.
If WebKit1 is used, it points to the QGLWidget that was
created in 'createPlatformGraphicsContext3DFromWidget'.
If WebKit2 is used, it points to the QWindow that was
created in GraphicsContext3DPrivate's constructor.
It is neccessary for deallocating them.

* platform/graphics/qt/GraphicsContext3DQt.cpp:
(GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::~GraphicsContext3DPrivate):
* platform/qt/QWebPageClient.h:
(QWebPageClient):

Source/WebKit/qt:

Defined a new QObject* variable that points to the QGLWidget that was created
in 'createPlatformGraphicsContext3DFromWidget'.
It is neccessary for deallocating it.

* WebCoreSupport/PageClientQt.cpp:
(createPlatformGraphicsContext3DFromWidget):
(WebCore::PageClientQWidget::createPlatformGraphicsContext3D):
(WebCore::PageClientQGraphicsWidget::createPlatformGraphicsContext3D):
* WebCoreSupport/PageClientQt.h:
(PageClientQWidget):
(PageClientQGraphicsWidget):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128315 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] Remove unused getProcessMemorySize from PlatformSupport
https://bugs.webkit.org/show_bug.cgi?id=96520

Reviewed by Kentaro Hara.

Part of a refactoring series. See tracking bug 82948.

* platform/chromium/PlatformSupport.h:
(PlatformSupport):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128316 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Text Autosizing: Don't autosize text in constrained height elements.
https://bugs.webkit.org/show_bug.cgi?id=96143

Patch by John Mellor <johnme@chromium.org> on 2012-09-12
Reviewed by Julien Chaffraix.

Source/WebCore:

Autosizing text within constained height elements usually goes badly,
as the autosized text will wrap onto more lines, hence it will become
taller and often overflow its container, breaking the page's layout.

This patch disables autosizing for blocks with a fixed height ancestor
(or which are fixed height themselves), unless the lowest such ancestor
(or one of the ancestors in between it and the text block) has
overflow-y:auto/scroll, in which case the height isn't really fixed.

Tests: fast/text-autosizing/constrained-and-overflow-auto-ancestor.html
       fast/text-autosizing/constrained-and-overflow-hidden-ancestor.html
       fast/text-autosizing/constrained-and-overflow-paged-x-ancestor.html
       fast/text-autosizing/constrained-and-overflow-scroll-ancestor.html
       fast/text-autosizing/constrained-height-ancestor.html
       fast/text-autosizing/constrained-maxheight-ancestor.html
       fast/text-autosizing/constrained-maxheight.html
       fast/text-autosizing/constrained-percent-maxheight.html
       fast/text-autosizing/constrained-percent-of-viewport-maxheight.html
       fast/text-autosizing/constrained-then-overflow-ancestors.html
       fast/text-autosizing/constrained-then-overflow-then-positioned-ancestors.html
       fast/text-autosizing/constrained-then-position-absolute-ancestors.html
       fast/text-autosizing/constrained-then-position-fixed-ancestors.html
       fast/text-autosizing/constrained-within-overflow-ancestor.html

* rendering/TextAutosizer.cpp:
(WebCore::TextAutosizer::processBox):

    Skips boxes for which contentHeightIsConstrained returns true.

(WebCore::TextAutosizer::contentHeightIsConstrained):

    Walks up the render tree until it finds either a constrained height
    or overflow-y:auto/scroll ancestor.

LayoutTests:

Added tests with various kinds, orders and nestings of constrained
height, overflow-y and positioned elements.

* fast/text-autosizing/constrained-and-overflow-auto-ancestor-expected.html: Added.
* fast/text-autosizing/constrained-and-overflow-auto-ancestor.html: Added.
* fast/text-autosizing/constrained-and-overflow-hidden-ancestor-expected.html: Added.
* fast/text-autosizing/constrained-and-overflow-hidden-ancestor.html: Added.
* fast/text-autosizing/constrained-and-overflow-paged-x-ancestor-expected.html: Added.
* fast/text-autosizing/constrained-and-overflow-paged-x-ancestor.html: Added.
* fast/text-autosizing/constrained-and-overflow-scroll-ancestor-expected.html: Added.
* fast/text-autosizing/constrained-and-overflow-scroll-ancestor.html: Added.
* fast/text-autosizing/constrained-height-ancestor-expected.html: Added.
* fast/text-autosizing/constrained-height-ancestor.html: Added.
* fast/text-autosizing/constrained-maxheight-ancestor-expected.html: Added.
* fast/text-autosizing/constrained-maxheight-ancestor.html: Added.
* fast/text-autosizing/constrained-maxheight-expected.html: Added.
* fast/text-autosizing/constrained-maxheight.html: Added.
* fast/text-autosizing/constrained-percent-maxheight-expected.html: Added.
* fast/text-autosizing/constrained-percent-maxheight.html: Added.
* fast/text-autosizing/constrained-percent-of-viewport-maxheight-expected.html: Added.
* fast/text-autosizing/constrained-percent-of-viewport-maxheight.html: Added.
* fast/text-autosizing/constrained-then-overflow-ancestors-expected.html: Added.
* fast/text-autosizing/constrained-then-overflow-ancestors.html: Added.
* fast/text-autosizing/constrained-then-overflow-then-positioned-ancestors-expected.html: Added.
* fast/text-autosizing/constrained-then-overflow-then-positioned-ancestors.html: Added.
* fast/text-autosizing/constrained-then-position-absolute-ancestors-expected.html: Added.
* fast/text-autosizing/constrained-then-position-absolute-ancestors.html: Added.
* fast/text-autosizing/constrained-then-position-fixed-ancestors-expected.html: Added.
* fast/text-autosizing/constrained-then-position-fixed-ancestors.html: Added.
* fast/text-autosizing/constrained-within-overflow-ancestor-expected.html: Added.
* fast/text-autosizing/constrained-within-overflow-ancestor.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128317 268f45cc-cd09-0410-ab3c-d52691b4dbfc
AX: Refactor most AccessibilityRenderObject code into AccessibilityNodeObject
https://bugs.webkit.org/show_bug.cgi?id=96323

Reviewed by Chris Fleizach.

Source/WebCore:

This patch is large, but it's at least 75% cut-and-paste.

All it does is move the implementation of a large chunk of
AccessibilityRenderObject methods to AccessibilityNodeObject
instead. This allows them to operate on elements without
renderers, such as those in canvas fallback content. It also
moves us towards the goal where AccessibilityRenderObject
only has code that's specific to renderers and not just nodes.

Half of the methods cut and paste with essentially no changes.
Some required just tiny changes to access an attribute via the
element (e.g. HTMLSelectElement) rather than its associated
renderer (e.g. RenderMenuList). A few were a little trickier,
as the behavior needs to be slightly different when there's a
renderer. In those last cases, as much of the code as possible is
in AccessibilityNodeObject and AccessibilityRenderObject overrides
it as necessary.

Test: accessibility/canvas-fallback-content-2.html

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::determineAccessibilityRole):
(WebCore::AccessibilityNodeObject::canHaveChildren):
(WebCore):
(WebCore::AccessibilityNodeObject::accessibilityIsIgnored):
(WebCore::AccessibilityNodeObject::isWebArea):
(WebCore::AccessibilityNodeObject::isImageButton):
(WebCore::AccessibilityNodeObject::isAnchor):
(WebCore::AccessibilityNodeObject::isNativeTextControl):
(WebCore::AccessibilityNodeObject::isSearchField):
(WebCore::AccessibilityNodeObject::isNativeImage):
(WebCore::AccessibilityNodeObject::isImage):
(WebCore::AccessibilityNodeObject::isPasswordField):
(WebCore::AccessibilityNodeObject::isInputImage):
(WebCore::AccessibilityNodeObject::isProgressIndicator):
(WebCore::AccessibilityNodeObject::isSlider):
(WebCore::AccessibilityNodeObject::isMenuRelated):
(WebCore::AccessibilityNodeObject::isMenu):
(WebCore::AccessibilityNodeObject::isMenuBar):
(WebCore::AccessibilityNodeObject::isMenuButton):
(WebCore::AccessibilityNodeObject::isMenuItem):
(WebCore::AccessibilityNodeObject::isNativeCheckboxOrRadio):
(WebCore::AccessibilityNodeObject::isEnabled):
(WebCore::AccessibilityNodeObject::isIndeterminate):
(WebCore::AccessibilityNodeObject::isPressed):
(WebCore::AccessibilityNodeObject::isChecked):
(WebCore::AccessibilityNodeObject::isHovered):
(WebCore::AccessibilityNodeObject::isMultiSelectable):
(WebCore::AccessibilityNodeObject::isReadOnly):
(WebCore::AccessibilityNodeObject::isRequired):
(WebCore::AccessibilityNodeObject::headingLevel):
(WebCore::AccessibilityNodeObject::valueDescription):
(WebCore::AccessibilityNodeObject::isARIARange):
(WebCore::AccessibilityNodeObject::valueForRange):
(WebCore::AccessibilityNodeObject::maxValueForRange):
(WebCore::AccessibilityNodeObject::minValueForRange):
(WebCore::AccessibilityNodeObject::stepValueForRange):
(WebCore::AccessibilityNodeObject::isHeading):
(WebCore::AccessibilityNodeObject::isLink):
(WebCore::AccessibilityNodeObject::isControl):
(WebCore::AccessibilityNodeObject::isFieldset):
(WebCore::AccessibilityNodeObject::isGroup):
(WebCore::AccessibilityNodeObject::selectedRadioButton):
(WebCore::AccessibilityNodeObject::selectedTabItem):
(WebCore::AccessibilityNodeObject::checkboxOrRadioValue):
(WebCore::AccessibilityNodeObject::anchorElement):
(WebCore::AccessibilityNodeObject::actionElement):
(WebCore::AccessibilityNodeObject::mouseButtonListener):
(WebCore::AccessibilityNodeObject::isDescendantOfBarrenParent):
(WebCore::AccessibilityNodeObject::alterSliderValue):
(WebCore::AccessibilityNodeObject::increment):
(WebCore::AccessibilityNodeObject::decrement):
(WebCore::AccessibilityNodeObject::changeValueByStep):
(WebCore::AccessibilityNodeObject::changeValueByPercent):
(WebCore::AccessibilityNodeObject::isGenericFocusableElement):
(WebCore::AccessibilityNodeObject::labelForElement):
(WebCore::AccessibilityNodeObject::ariaAccessibilityDescription):
(WebCore::siblingWithAriaRole):
(WebCore::AccessibilityNodeObject::menuElementForMenuButton):
(WebCore::AccessibilityNodeObject::menuForMenuButton):
(WebCore::AccessibilityNodeObject::menuItemElementForMenu):
(WebCore::AccessibilityNodeObject::menuButtonForMenu):
(WebCore::AccessibilityNodeObject::accessibilityDescription):
(WebCore::AccessibilityNodeObject::helpText):
(WebCore::AccessibilityNodeObject::hierarchicalLevel):
(WebCore::AccessibilityNodeObject::textUnderElement):
(WebCore::AccessibilityNodeObject::title):
(WebCore::AccessibilityNodeObject::text):
(WebCore::AccessibilityNodeObject::stringValue):
(WebCore::accessibleNameForNode):
(WebCore::AccessibilityNodeObject::accessibilityDescriptionForElements):
(WebCore::AccessibilityNodeObject::elementsFromAttribute):
(WebCore::AccessibilityNodeObject::ariaLabeledByElements):
(WebCore::AccessibilityNodeObject::ariaLabeledByAttribute):
(WebCore::AccessibilityNodeObject::canSetFocusAttribute):
* accessibility/AccessibilityNodeObject.h:
(AccessibilityNodeObject):
(WebCore::AccessibilityNodeObject::node):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::parentObject):
(WebCore):
(WebCore::AccessibilityRenderObject::isReadOnly):
(WebCore::AccessibilityRenderObject::helpText):
(WebCore::AccessibilityRenderObject::accessibilityDescription):
(WebCore::AccessibilityRenderObject::text):
(WebCore::AccessibilityRenderObject::contentChanged):
(WebCore::AccessibilityRenderObject::canHaveChildren):
* accessibility/AccessibilityRenderObject.h:
(AccessibilityRenderObject):
(WebCore::AccessibilityRenderObject::setRenderObject):

LayoutTests:

New test that compares accessibility attributes of lots of elements
inside and outside of canvas fallback content, to make sure they're
the same. Designed to be cross-platform because it just asserts the
attributes are the same in both contexts, rather than expecting specific
values.

* accessibility/canvas-fallback-content-2-expected.txt: Added.
* accessibility/canvas-fallback-content-2.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128318 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Flakiness dashboard doesn't recognize new Chromium Android test builder
https://bugs.webkit.org/show_bug.cgi?id=96523

Reviewed by Ojan Vafai.

Properly return 'ANDROID' as the Chromium platform for Android builders.

* TestResultServer/static-dashboards/flakiness_dashboard.js:
(chromiumPlatform):
* TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
(test):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128321 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] Remove unused allowScriptDespiteSettings function from PlatformSupport
https://bugs.webkit.org/show_bug.cgi?id=96526

Reviewed by Kentaro Hara.

Part of a refactoring series. See tracking bug 82948.

* platform/chromium/PlatformSupport.h:
(PlatformSupport):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128322 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Shadow DOM] Unpolished elements should reject author shadows
https://bugs.webkit.org/show_bug.cgi?id=96404

Reviewed by Dimitri Glazkov.

Source/WebCore:

Gave areAuthorShadowsAllowed() overrides for these replaced elements
which aren't author shadow ready.

No new tests. Covered by existing tests.

* html/HTMLCanvasElement.h: Did areAuthorShadowsAllowed() overrride.
* html/HTMLFieldSetElement.h: Did areAuthorShadowsAllowed() overrride.
* html/HTMLFrameElementBase.h: Did areAuthorShadowsAllowed() overrride.
* html/HTMLMediaElement.h: Did areAuthorShadowsAllowed() overrride.
* html/HTMLPlugInElement.h: Did areAuthorShadowsAllowed() overrride.
* html/HTMLSelectElement.h: Did areAuthorShadowsAllowed() overrride.

LayoutTests:

- Added setAuthorShadowDOMForAnyElementEnabled() calls to make tests works.
- UPdated shadow-disable.html to capture the disabled elements.

* fast/dom/shadow/shadow-disable-expected.txt:
* fast/dom/shadow/shadow-disable.html:
* fast/dom/shadow/shadowdom-for-fieldset-without-shadow.html:
* fast/dom/shadow/shadowdom-for-form-associated-element-useragent.html:
* fast/dom/shadow/shadowdom-for-media.html:
* platform/chromium/TestExpectations:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128323 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] remove deprecated and unused sets import from chromium_android driver
https://bugs.webkit.org/show_bug.cgi?id=96485

Reviewed by Dirk Pranke.

* Scripts/webkitpy/layout_tests/port/chromium_android.py:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128324 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSSRegions]Use RefPtr's instead of weak references on DOMNamedFlowCollection
https://bugs.webkit.org/show_bug.cgi?id=95311

Patch by Andrei Onea <onea@adobe.com> on 2012-09-12
Reviewed by Andreas Kling.

Source/WebCore:

Currently, DOMNamedFlowCollection holds a collection of raw pointers to WebKitNamedFlow.
This causes a crash when there is a JS instance of a NamedFlowCollection snapshot taken
before the NamedFlow is deleted, since the memory previously occupied by the NamedFlow
can be accessed. Because of this, we need to use RefPtr's for the snapshot, so that such
dangling references extend the lifetime of the NamedFlow objects.

Test: fast/regions/webkit-named-flow-collection-crash.html

* dom/DOMNamedFlowCollection.cpp:
(WebCore::DOMNamedFlowCollection::DOMNamedFlowCollection):
(WebCore::DOMNamedFlowCollection::item):
(WebCore::DOMNamedFlowCollection::namedItem):
(WebCore):
(WebCore::DOMNamedFlowCollection::DOMNamedFlowHashFunctions::hash):
(WebCore::DOMNamedFlowCollection::DOMNamedFlowHashFunctions::equal):
(DOMNamedFlowCollection::DOMNamedFlowHashFunctions):
(WebCore::DOMNamedFlowCollection::DOMNamedFlowHashTranslator::hash):
(WebCore::DOMNamedFlowCollection::DOMNamedFlowHashTranslator::equal):
Create new internal ListHashSet for RefPtr<WebKitNamedFlow>.
* dom/DOMNamedFlowCollection.h:
(WebCore::DOMNamedFlowCollection::create):
(DOMNamedFlowCollection):
* dom/NamedFlowCollection.cpp:
(WebCore::NamedFlowCollection::createCSSOMSnapshot):
(WebCore):
(WebCore::NamedFlowCollection::NamedFlowHashFunctions::hash):
(WebCore::NamedFlowCollection::NamedFlowHashFunctions::equal):
(NamedFlowCollection::NamedFlowHashFunctions):
(WebCore::NamedFlowCollection::NamedFlowHashTranslator::hash):
(WebCore::NamedFlowCollection::NamedFlowHashTranslator::equal):
Move back the definitions for NamedFlowHashFunctions and NamedFlowHashTranslator
to the .cpp file.
* dom/NamedFlowCollection.h:
(NamedFlowCollection):

LayoutTests:

Added test for crash which occurs when there is a raw pointer to a NamedFlow
(in a NamedFlowCollection) which has been freed.

* fast/regions/webkit-named-flow-collection-crash-expected.txt: Added.
* fast/regions/webkit-named-flow-collection-crash.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128325 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[WK2][WKTR] TestRunner needs to implement dumpApplicationCacheDelegateCallbacks
https://bugs.webkit.org/show_bug.cgi?id=96374

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-09-12
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Add Bundle C API to reset the application cache quota
for a given origin.

Add new reachedApplicationCacheOriginQuota callback
to WKBundlePageUIClient which is called from
WebChromeClient::reachedApplicationCacheOriginQuota().

Those are needed by WebKitTestRunner to dump
information about the application cache callbacks
if instructed to.

* Shared/APIClientTraits.cpp:
(WebKit):
* Shared/APIClientTraits.h:
* WebProcess/InjectedBundle/API/c/WKBundle.cpp:
(WKBundleSetApplicationCacheOriginQuota):
(WKBundleResetApplicationCacheOriginQuota):
* WebProcess/InjectedBundle/API/c/WKBundlePage.h:
* WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::resetApplicationCacheOriginQuota):
(WebKit):
* WebProcess/InjectedBundle/InjectedBundle.h:
(InjectedBundle):
* WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
(WebKit::InjectedBundlePageUIClient::didReachApplicationCacheOriginQuota):
(WebKit):
* WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
(WebKit):
(InjectedBundlePageUIClient):
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::reachedApplicationCacheOriginQuota):
* win/WebKit2.def:
* win/WebKit2CFLite.def:

Tools:

Implement support for dumpApplicationCacheDelegateCallbacks
and disallowIncreaseForApplicationCacheQuota in
WebKitTestRunner and properly dump the information
expected by the tests.

If the application cache quota is reached for a given
security origin, WebKitTestRunner will reset the quota
to its default value, unless intructed not to via
disallowIncreaseForApplicationCacheQuota().

* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::InjectedBundlePage):
(WTR::InjectedBundlePage::didReachApplicationCacheOriginQuota):
(WTR):
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:
(InjectedBundlePage):
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::TestRunner):
(WTR::TestRunner::disallowIncreaseForApplicationCacheQuota):
(WTR):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
(WTR::TestRunner::dumpApplicationCacheDelegateCallbacks):
(TestRunner):
(WTR::TestRunner::shouldDisallowIncreaseForApplicationCacheQuota):
(WTR::TestRunner::shouldDumpApplicationCacheDelegateCallbacks):

LayoutTests:

Unskip test cases that are passing now that WebKitTestRunner
implements dumpApplicationCacheDelegateCallbacks and
disallowIncreaseForApplicationCacheQuota.

* platform/efl-wk1/TestExpectations:
* platform/efl/Skipped:
* platform/wk2/Skipped:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128326 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] [WK2] Memory leaks in TestControllerEfl
https://bugs.webkit.org/show_bug.cgi?id=96525

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-09-12
Reviewed by Kenneth Rohde Christiansen.

Fix memory leaks in EFL's TestRunner code by adopting an allocation
of WKString created with WKStringCreateWithUTF8CString().

* WebKitTestRunner/efl/TestControllerEfl.cpp:
(WTR::TestController::initializeInjectedBundlePath):
(WTR::TestController::initializeTestPluginDirectory):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128327 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed trivial build fix for Qt/Windows

As pointed out by Kevin, we should inject the "set PATH=..." statement
to add the GnuWin32 directory only if that directory actually exists.

* qmake/mkspecs/features/default_post.prf:

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