Use gtk_widget_get_preferred_size instead of deprecated gtk_widget_get_requisition
https://bugs.webkit.org/show_bug.cgi?id=118177

Patch by Iago Toral Quiroga <itoral@igalia.com> on 2013-06-28
Reviewed by Carlos Garcia Campos.

* WebCoreSupport/ChromeClientGtk.cpp:
(WebKit::ChromeClient::contentsSizeChanged):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152159 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Unreviewed gardening. Unskip and reorganize tests no longer failing in GTK-WK and GTK-WK2
https://bugs.webkit.org/show_bug.cgi?id=118180

Unreviewed GTK gardening.

Patch by Simon Pena <simon.pena@samsung.com> on 2013-06-28

* platform/gtk-wk2/TestExpectations:
* platform/gtk/TestExpectations:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152160 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Avoid duplicating hostWindow() call in ScrollView.cpp
https://bugs.webkit.org/show_bug.cgi?id=118168

Patch by Sanghyup Lee <sh53.lee@samsung.com> on 2013-06-28
Reviewed by Christophe Dumez.

Remove redundant hostWindow() calls in ScrollView.cpp.

* platform/ScrollView.cpp:
(WebCore::ScrollView::scrollContents):
(WebCore::ScrollView::contentsToScreen):
(WebCore::ScrollView::screenToContents):
(WebCore::ScrollView::repaintContentRectangle):
(WebCore::ScrollView::updateOverhangAreas):
(WebCore::ScrollView::addPanScrollIcon):
(WebCore::ScrollView::removePanScrollIcon):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152161 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add new schemes to content utils.
https://bugs.webkit.org/show_bug.cgi?id=118181

Reviewed by Christophe Dumez.

Source/WebCore:

According to latest content handler spec, new schemes are added to it.
Those are "geo, magnet, sip, ssh and xmpp".

http://www.w3.org/html/wg/drafts/html/master/webappapis.html#custom-handlers

Tests: fast/dom/register-protocol-handler.html
       fast/dom/unregister-protocol-handler.html

* Modules/navigatorcontentutils/NavigatorContentUtils.cpp:
(WebCore::initProtocolHandlerWhitelist):

LayoutTests:

Add new schemes as well as change SYNTAX_ERR, SECURITY_ERR.

* fast/dom/register-protocol-handler-expected.txt:
* fast/dom/register-protocol-handler.html:
* fast/dom/unregister-protocol-handler-expected.txt:
* fast/dom/unregister-protocol-handler.html:
* platform/efl/fast/dom/register-protocol-handler-expected.txt:
* platform/efl/fast/dom/unregister-protocol-handler-expected.txt:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152162 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Autotools] Properly quote harfbuzz-icu pkg-config check
https://bugs.webkit.org/show_bug.cgi?id=118186

Patch by Sean Bright <sean@malleable.com> on 2013-06-28
Reviewed by Carlos Garcia Campos.

A secondary test was added in r150963 to check for harfbuzz-icu
when it was split into two packages, but the test is not properly
quoted.  If the test fails you get an error about missing
version "./configure.9.8" instead of the expected "0.9.8."

* Source/autotools/FindDependencies.m4:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152163 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Unreviewed gardening. Skipping failing tests, and mathml tests because not yet supported.

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-06-28

* platform/qt-5.0-wk2/TestExpectations:
* platform/qt/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152164 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[WK2][GTK] 100% CPU usage rendering a page with animations
https://bugs.webkit.org/show_bug.cgi?id=117703

Reviewed by Martin Robinson.

Unconditionally update the value of m_lastFlushTime in
::flushAndRenderLayers. By doing that we avoid a neverending
sequence of layer flushes that happened when m_lastFlushTime==0
and flushPendingLayerChanges() was false. In that situation the
value m_lastFlushTime was never updated so a new flush was always
rescheduled.

* WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
(WebKit::LayerTreeHostGtk::flushAndRenderLayers):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152165 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Don't fire process-became-responsive callback when disconnecting it.
<http://webkit.org/b/118166>

Reviewed by Anders Carlsson.

When disconnecting from a web process, call ResponsivenessTimer::invalidate() instead of
stop() to avoid firing the didBecomeResponsive() callback.

This lets the UI process react faster to actually unresponsive processes.

* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::disconnect):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152166 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Introduce SVGGraphicsElement IDL interface
https://bugs.webkit.org/show_bug.cgi?id=118178

Reviewed by Kentaro Hara.

Source/WebCore:

Introduce SVGGraphicsElement IDL interface as per the latest SVG
specification:
- https://svgwg.org/svg2-draft/types.html#InterfaceSVGGraphicsElement

SVGGraphicsElement is a merge of SVGLocatable and SVGTransformable.
This is one step towards simplifying inheritance in SVG and matching
the latest SVG2 specification.

No new tests, already covered by existing tests.

* CMakeLists.txt:
* DerivedSources.cpp:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.order:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* bindings/scripts/CodeGeneratorJS.pm:
(GetGnuVTableOffsetForType):
* rendering/svg/RenderSVGEllipse.cpp:
(WebCore::RenderSVGEllipse::RenderSVGEllipse):
* rendering/svg/RenderSVGEllipse.h:
* rendering/svg/RenderSVGPath.cpp:
(WebCore::RenderSVGPath::RenderSVGPath):
* rendering/svg/RenderSVGPath.h:
* rendering/svg/RenderSVGResourceClipper.cpp:
(WebCore::RenderSVGResourceClipper::pathOnlyClipping):
* rendering/svg/RenderSVGResourceContainer.cpp:
(WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke):
* rendering/svg/RenderSVGResourceMarker.cpp:
* rendering/svg/RenderSVGShape.cpp:
(WebCore::RenderSVGShape::RenderSVGShape):
(WebCore::RenderSVGShape::updateShapeFromElement):
(WebCore::RenderSVGShape::layout):
(WebCore::RenderSVGShape::nonScalingStrokeTransform):
(WebCore::RenderSVGShape::shouldGenerateMarkerPositions):
* rendering/svg/RenderSVGShape.h:
* rendering/svg/RenderSVGTransformableContainer.cpp:
(WebCore::RenderSVGTransformableContainer::RenderSVGTransformableContainer):
(WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
* rendering/svg/RenderSVGTransformableContainer.h:
* svg/SVGAElement.cpp:
(WebCore::SVGAElement::SVGAElement):
(WebCore::SVGAElement::parseAttribute):
(WebCore::SVGAElement::svgAttributeChanged):
(WebCore::SVGAElement::defaultEventHandler):
(WebCore::SVGAElement::supportsFocus):
(WebCore::SVGAElement::isURLAttribute):
* svg/SVGAElement.h:
* svg/SVGAElement.idl:
* svg/SVGAllInOne.cpp:
* svg/SVGAnimateMotionElement.cpp:
(WebCore::SVGAnimateMotionElement::hasValidAttributeType):
* svg/SVGCircleElement.cpp:
(WebCore::SVGCircleElement::SVGCircleElement):
(WebCore::SVGCircleElement::parseAttribute):
(WebCore::SVGCircleElement::svgAttributeChanged):
* svg/SVGCircleElement.h:
* svg/SVGCircleElement.idl:
* svg/SVGClipPathElement.cpp:
(WebCore::SVGClipPathElement::SVGClipPathElement):
(WebCore::SVGClipPathElement::parseAttribute):
(WebCore::SVGClipPathElement::svgAttributeChanged):
(WebCore::SVGClipPathElement::childrenChanged):
* svg/SVGClipPathElement.h:
* svg/SVGClipPathElement.idl:
* svg/SVGDefsElement.cpp:
(WebCore::SVGDefsElement::SVGDefsElement):
* svg/SVGDefsElement.h:
* svg/SVGDefsElement.idl:
* svg/SVGElement.h:
(WebCore::SVGElement::isSVGGraphicsElement):
* svg/SVGEllipseElement.cpp:
(WebCore::SVGEllipseElement::SVGEllipseElement):
(WebCore::SVGEllipseElement::parseAttribute):
(WebCore::SVGEllipseElement::svgAttributeChanged):
* svg/SVGEllipseElement.h:
* svg/SVGEllipseElement.idl:
* svg/SVGForeignObjectElement.cpp:
(WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
(WebCore::SVGForeignObjectElement::parseAttribute):
(WebCore::SVGForeignObjectElement::svgAttributeChanged):
(WebCore::SVGForeignObjectElement::rendererIsNeeded):
* svg/SVGForeignObjectElement.h:
* svg/SVGForeignObjectElement.idl:
* svg/SVGGElement.cpp:
(WebCore::SVGGElement::SVGGElement):
(WebCore::SVGGElement::parseAttribute):
(WebCore::SVGGElement::svgAttributeChanged):
* svg/SVGGElement.h:
* svg/SVGGElement.idl:
* svg/SVGGraphicsElement.cpp: Renamed from Source/WebCore/svg/SVGStyledTransformableElement.cpp.
(WebCore::SVGGraphicsElement::SVGGraphicsElement):
(WebCore::SVGGraphicsElement::~SVGGraphicsElement):
(WebCore::SVGGraphicsElement::getCTM):
(WebCore::SVGGraphicsElement::getScreenCTM):
(WebCore::SVGGraphicsElement::animatedLocalTransform):
(WebCore::SVGGraphicsElement::supplementalTransform):
(WebCore::SVGGraphicsElement::isSupportedAttribute):
(WebCore::SVGGraphicsElement::parseAttribute):
(WebCore::SVGGraphicsElement::svgAttributeChanged):
(WebCore::SVGGraphicsElement::nearestViewportElement):
(WebCore::SVGGraphicsElement::farthestViewportElement):
(WebCore::SVGGraphicsElement::getBBox):
(WebCore::SVGGraphicsElement::createRenderer):
(WebCore::SVGGraphicsElement::toClipPath):
* svg/SVGGraphicsElement.h: Renamed from Source/WebCore/svg/SVGStyledTransformableElement.h.
(WebCore::SVGGraphicsElement::localCoordinateSpaceTransform):
(WebCore::SVGGraphicsElement::synchronizeRequiredFeatures):
(WebCore::SVGGraphicsElement::synchronizeRequiredExtensions):
(WebCore::SVGGraphicsElement::synchronizeSystemLanguage):
(WebCore::toSVGGraphicsElement):
* svg/SVGGraphicsElement.idl: Copied from Source/WebCore/svg/SVGForeignObjectElement.idl.
* svg/SVGImageElement.cpp:
(WebCore::SVGImageElement::SVGImageElement):
(WebCore::SVGImageElement::isPresentationAttribute):
(WebCore::SVGImageElement::collectStyleForPresentationAttribute):
(WebCore::SVGImageElement::parseAttribute):
(WebCore::SVGImageElement::svgAttributeChanged):
(WebCore::SVGImageElement::attach):
(WebCore::SVGImageElement::insertedInto):
(WebCore::SVGImageElement::addSubresourceAttributeURLs):
(WebCore::SVGImageElement::didMoveToNewDocument):
* svg/SVGImageElement.h:
* svg/SVGImageElement.idl:
* svg/SVGLineElement.cpp:
(WebCore::SVGLineElement::SVGLineElement):
(WebCore::SVGLineElement::parseAttribute):
(WebCore::SVGLineElement::svgAttributeChanged):
* svg/SVGLineElement.h:
* svg/SVGLineElement.idl:
* svg/SVGPathElement.cpp:
(WebCore::SVGPathElement::SVGPathElement):
(WebCore::SVGPathElement::parseAttribute):
(WebCore::SVGPathElement::svgAttributeChanged):
(WebCore::SVGPathElement::insertedInto):
(WebCore::SVGPathElement::removedFrom):
* svg/SVGPathElement.h:
* svg/SVGPathElement.idl:
* svg/SVGPatternElement.cpp:
* svg/SVGPolyElement.cpp:
(WebCore::SVGPolyElement::SVGPolyElement):
(WebCore::SVGPolyElement::parseAttribute):
(WebCore::SVGPolyElement::svgAttributeChanged):
* svg/SVGPolyElement.h:
* svg/SVGPolygonElement.idl:
* svg/SVGPolylineElement.idl:
* svg/SVGRectElement.cpp:
(WebCore::SVGRectElement::SVGRectElement):
(WebCore::SVGRectElement::parseAttribute):
(WebCore::SVGRectElement::svgAttributeChanged):
* svg/SVGRectElement.h:
* svg/SVGRectElement.idl:
* svg/SVGSVGElement.cpp:
(WebCore::SVGSVGElement::SVGSVGElement):
(WebCore::SVGSVGElement::didMoveToNewDocument):
(WebCore::SVGSVGElement::parseAttribute):
(WebCore::SVGSVGElement::insertedInto):
(WebCore::SVGSVGElement::removedFrom):
* svg/SVGSVGElement.h:
* svg/SVGSVGElement.idl:
* svg/SVGStyledElement.cpp:
(WebCore::SVGStyledElement::localCoordinateSpaceTransform):
* svg/SVGSwitchElement.cpp:
(WebCore::SVGSwitchElement::SVGSwitchElement):
* svg/SVGSwitchElement.h:
* svg/SVGSwitchElement.idl:
* svg/SVGUseElement.cpp:
(WebCore::SVGUseElement::SVGUseElement):
(WebCore::SVGUseElement::parseAttribute):
(WebCore::SVGUseElement::insertedInto):
(WebCore::SVGUseElement::removedFrom):
(WebCore::SVGUseElement::svgAttributeChanged):
(WebCore::SVGUseElement::toClipPath):
(WebCore::SVGUseElement::finishParsingChildren):
* svg/SVGUseElement.h:
* svg/SVGUseElement.idl:

LayoutTests:

Rebaseline js/global-constructors-attributes.html test case now that
SVGGraphicsElement is exposed on the global Window object.

* fast/js/global-constructors-attributes-expected.txt:
* platform/efl/fast/js/global-constructors-attributes-expected.txt:
* platform/gtk/fast/js/global-constructors-attributes-expected.txt:
* platform/mac-lion/fast/js/global-constructors-attributes-expected.txt:
* platform/qt/fast/js/global-constructors-attributes-expected.txt:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152167 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Get rid of IsWorkerGlobalScope and ExtendsDOMGlobalObject extended attributes
https://bugs.webkit.org/show_bug.cgi?id=118191

Reviewed by Kentaro Hara.

Remove WebKit-specific [IsWorkerGlobalScope] and [ExtendsDOMGlobalObject] IDL
extended attributes and update the JSC bindings generator to figure this out
on its own.

No new tests, no behavior change.

* bindings/scripts/CodeGeneratorJS.pm:
(IsDOMGlobalObject):
(GenerateHeader):
(GenerateImplementation):
(GenerateConstructorHelperMethods):
* bindings/scripts/IDLAttributes.txt:
* page/DOMWindow.idl:
* workers/DedicatedWorkerGlobalScope.idl:
* workers/SharedWorkerGlobalScope.idl:
* workers/WorkerGlobalScope.idl:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152168 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[WinCairo] Compilation error.
https://bugs.webkit.org/show_bug.cgi?id=118131

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-06-28
Reviewed by Brent Fulgham.

* Interfaces/IWebView.idl: Include needed accessibility interface.
* WebCoreSupport/WebChromeClient.cpp:
(WebChromeClient::AXFinishFrameLoad): Accessibility methods should not be inside FULLSCREEN_API ifdef.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152169 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Clean up temporary files created by the bindings test script
https://bugs.webkit.org/show_bug.cgi?id=118189

Reviewed by Kentaro Hara.

Remove temporary files created by preprocess-idls.pl script after
the bindings tests are executed.

Based on Blink 153236 by Kentaro Hara <haraken@chromium.org>.

* Scripts/webkitpy/bindings/main.py:
(BindingsTests.main):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152170 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add IAccessibilityDelegate implementation to WinLauncher for testing purposes.
https://bugs.webkit.org/show_bug.cgi?id=118160.

Reviewed by Brent Fulgham.

* WinLauncher/AccessibilityDelegate.cpp: Added.
(AccessibilityDelegate::QueryInterface):
(AccessibilityDelegate::AddRef):
(AccessibilityDelegate::Release):
(AccessibilityDelegate::fireFrameLoadStartedEvents): Just returns S_OK;
(AccessibilityDelegate::fireFrameLoadFinishedEvents): Ditto.
* WinLauncher/AccessibilityDelegate.h: Added.
(AccessibilityDelegate::AccessibilityDelegate):
* WinLauncher/WinLauncher.cpp:
(dllLauncherEntryPoint):
* WinLauncher/WinLauncher.vcxproj/WinLauncherLib.vcxproj:
* WinLauncher/WinLauncher.vcxproj/WinLauncherLib.vcxproj.filters:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152171 268f45cc-cd09-0410-ab3c-d52691b4dbfc
accessibility/media-element.html does not support platforms without subroles
https://bugs.webkit.org/show_bug.cgi?id=118187

Reviewed by Chris Fleizach.

Update the test to be more friendly with platforms not supporting subroles.

* accessibility/media-element.html: Updated test.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152172 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed build fix for AppleWin port. Fix some file paths.

* WinLauncher/WinLauncher.vcxproj/WinLauncherLib.vcxproj:
* WinLauncher/WinLauncher.vcxproj/WinLauncherLib.vcxproj.filters:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152174 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Allow some LayoutPoint and LayoutSize conversions to be inlined
https://bugs.webkit.org/show_bug.cgi?id=118167

Reviewed by Ryosuke Niwa.

Construction of FloatSize from LayoutSize, and FloatPoint's move(const LayoutSize&)
and moveBy(const LayoutPoint&) were not inlined, and showed up on some profiles.

Make them inlined by removing the overloaded functions, and instead providing
conversion operators from LayoutSize to FloatSize, and LayoutPoint to FloatPoint.
Do the same to allow a LayoutRect to be converted to a FloatRect.

This is nice because it removes pollution of FloatRect, FloatPoint and FloatSize with
Layout* entirely.

Remove Qt-specific conversions on LayoutRect, LayoutPoint and LayoutSize. Qt can
convert via IntRect/FloatRect as necessary.

* platform/graphics/FloatPoint.cpp:
* platform/graphics/FloatPoint.h:
(WebCore::FloatPoint::move):
(WebCore::FloatPoint::moveBy):
* platform/graphics/FloatRect.cpp:
* platform/graphics/FloatRect.h:
* platform/graphics/FloatSize.cpp:
* platform/graphics/FloatSize.h:
* platform/graphics/LayoutPoint.h:
(WebCore::LayoutPoint::operator FloatPoint):
* platform/graphics/LayoutRect.cpp:
* platform/graphics/LayoutRect.h:
(WebCore::LayoutRect::operator FloatRect):
* platform/graphics/LayoutSize.h:
(WebCore::LayoutSize::operator FloatSize):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152175 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Enable AVFoundation in Web Prefs for WinLauncher and DumpRenderTree on Windows.
https://bugs.webkit.org/show_bug.cgi?id=118194.

Reviewed by Brent Fulgham.

* DumpRenderTree/win/DumpRenderTree.cpp:
(dllLauncherEntryPoint):
* WinLauncher/WinLauncher.cpp:
(dllLauncherEntryPoint):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152176 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WARN_UNUSED_RESULT can't be used in API headers, but WKBundlePageExtendIncrementalRenderingSuppression tries to
https://bugs.webkit.org/show_bug.cgi?id=118196
<rdar://problem/14303613>

Reviewed by Anders Carlsson.

* WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152177 268f45cc-cd09-0410-ab3c-d52691b4dbfc
SVG relayout problem when displayed with different image box heights
https://bugs.webkit.org/show_bug.cgi?id=118140

Patch by Morten Stenshorne <mstensho@opera.com> on 2013-06-28
Reviewed by Philip Rogers.

Source/WebCore:

If the root element is an SVG, its position and height are affected
by the view height.

Test: svg/as-image/same-source-different-height.html

* rendering/RenderView.cpp:
(WebCore::RenderView::layout):

LayoutTests:

* svg/as-image/same-source-different-height-expected.html: Added.
* svg/as-image/same-source-different-height.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152178 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] back/forward keyboard shortcuts are non-intuitive
https://bugs.webkit.org/show_bug.cgi?id=118193

Patch by Balazs Kelemen <b.kelemen@samsung.com> on 2013-06-28
Reviewed by Christophe Dumez.

Changed shortcuts for go-back/go-forward to alt+left and alt+right.

* EWebLauncher/main.c:
(on_key_down):
* MiniBrowser/efl/main.c:
(on_key_down):

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