Unreviewed functionality fix for the GTK port.

Enable the MicroData feature support for the GTK port in the FeatureList module.
This feature listing now again affects which features are enabled and which disabled
on the development builds of the GTK port.

* Scripts/webkitperl/FeatureList.pm:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137282 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: add more horizontal spacing for toolbar items in docked to bottom mode
https://bugs.webkit.org/show_bug.cgi?id=104655

Reviewed by Alexander Pavlov.

Drive-by increase height to 26px.

* inspector/front-end/inspector.css:
(#toolbar):
(body:not(.show-toolbar-icons) .toolbar-item):
(body.dock-to-bottom:not(.show-toolbar-icons) .toolbar-item.toggleable):
(body.dock-to-bottom:not(.show-toolbar-icons) .toolbar-item.toggleable.toggled-on):
(body.show-toolbar-icons.dock-to-bottom .toolbar-item.toggleable):
(#toolbar-dropdown-arrow):
(#main):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137283 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Refactoring: Rename Element::shouldMatchReadOnlySelector and shouldMatchReadWriteSelector
https://bugs.webkit.org/show_bug.cgi?id=104651

Reviewed by Kentaro Hara.

':read-only' and ':read-write' are pseudo classes. They are not
selectors in the context of these functions.  This patch rename them so
that they contain 'pseudo class,' and make them match to an existing
function, matchesFocusPseudoClass.

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

* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOneSelector):
* dom/Element.cpp:
(WebCore::Element::recalcStyle):
(WebCore::Element::matchesReadOnlyPseudoClass):
(WebCore::Element::matchesReadWritePseudoClass):
* dom/Element.h:
(Element):
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::matchesReadOnlyPseudoClass):
(WebCore::HTMLInputElement::matchesReadWritePseudoClass):
* html/HTMLInputElement.h:
(HTMLInputElement):
* html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::matchesReadOnlyPseudoClass):
(WebCore::HTMLTextAreaElement::matchesReadWritePseudoClass):
* html/HTMLTextAreaElement.h:
(HTMLTextAreaElement):
* html/shadow/SliderThumbElement.cpp:
(WebCore::SliderThumbElement::matchesReadOnlyPseudoClass):
(WebCore::SliderThumbElement::matchesReadWritePseudoClass):
* html/shadow/SliderThumbElement.h:
(SliderThumbElement):
* html/shadow/SpinButtonElement.cpp:
(WebCore::SpinButtonElement::matchesReadOnlyPseudoClass):
(WebCore::SpinButtonElement::matchesReadWritePseudoClass):
* html/shadow/SpinButtonElement.h:
(SpinButtonElement):
* rendering/RenderTheme.cpp:
(WebCore::RenderTheme::isReadOnlyControl):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137284 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] Unreviewed gardening.

Added more shadow tests to the list of flaky tests.

* platform/efl-wk2/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137285 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Bump the jhbuild libsoup version to fix an authentication issue
https://bugs.webkit.org/show_bug.cgi?id=104448

Reviewed by Gustavo Noronha Silva.

Tools:

Bump the libsoup version to one from the git repository. This requires updating
GLib as well which in turn requires adjusting the CFLAGS we pass when compiling
the scanobj step of the gtkdoc generation.

* gtk/generate-gtkdoc:
* gtk/jhbuild.modules:

LayoutTests:

* platform/gtk/TestExpectations: Unskip some tests which are now passing.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137286 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Implement add64 for SH4 assembler to fix build after r136601
https://bugs.webkit.org/show_bug.cgi?id=104377

Patch by Julien BRIANCEAU <jbrianceau@nds.com> on 2012-12-11
Reviewed by Zoltan Herczeg.

* assembler/MacroAssemblerSH4.h:
(JSC::MacroAssemblerSH4::add64):
(MacroAssemblerSH4):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137287 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Not reviewed: follow up to r137283: reduce inspector toolbar spacing 1px.

* inspector/front-end/inspector.css:
(body.dock-to-bottom:not(.show-toolbar-icons) .toolbar-item.toggleable):
(body.dock-to-bottom:not(.show-toolbar-icons) .toolbar-item.toggleable.toggled-on):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137288 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Unreviewed gardening

fast/repaint/body-background-image.html
fast/text/font-initial.html

* platform/chromium/TestExpectations: These tests are passing on WIN.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137289 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Unreviewed gardening, skip new failing tests.

* platform/qt/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137290 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Inspector] Add command for dispatching mouse events.
https://bugs.webkit.org/show_bug.cgi?id=104074

Patch by Ken Kania <kkania@chromium.org> on 2012-12-11
Reviewed by Yury Semikhatsky.

Platform mouse event coordinates are relative to the containing window,
but the inspector command assumes they follow standard web coordinates,
where the origin is at the top left of the page and y increases as you
go down. We convert the coordinates to the window before constructing
the event. This also fixes the fact that some platforms have flipped
coordinate systems.
Also, update dispatchKeyEvent test to follow simpler dispatchMouseEvent
test.

Source/WebCore:

Test: inspector-protocol/input/dispatchMouseEvent.html

* inspector/Inspector.json:
* inspector/InspectorInputAgent.cpp:
(WebCore::InspectorInputAgent::dispatchMouseEvent):
(WebCore):
* inspector/InspectorInputAgent.h:
(InspectorInputAgent):

LayoutTests:

* inspector-protocol/input/dispatchKeyEvent.html:
* inspector-protocol/input/dispatchMouseEvent-expected.txt: Added.
* inspector-protocol/input/dispatchMouseEvent.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137291 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: follow up to r136974: do not process shortcuts while editing
https://bugs.webkit.org/show_bug.cgi?id=104440

Reviewed by Alexander Pavlov.

Currently, typing H while editing node results in corresponding shortcut processing.

* inspector/front-end/ElementsTreeOutline.js:
(WebInspector.ElementsTreeOutline):
(WebInspector.ElementsTreeOutline.prototype.handleShortcut):
(WebInspector.ElementsTreeElement.prototype.onenter):
(WebInspector.ElementsTreeElement.prototype._startEditingAttribute):
(WebInspector.ElementsTreeElement.prototype.dispose):
(WebInspector.ElementsTreeElement.prototype._startEditingAsHTML):
(WebInspector.ElementsTreeElement.prototype._editingCancelled):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137292 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CoordinatedGraphics] Use unsigned integers for UpdateAtlas IDs
https://bugs.webkit.org/show_bug.cgi?id=104654

Reviewed by Kenneth Rohde Christiansen.

UpdateAtlas currently uses *signed* integer type for its identifier.
Due to the way we generate those IDs, it is safer to use *unsigned*
integers. This is because the generated ID will overflow at some
point and the C and C++ language standards say that overflow of a
signed value is undefined behaviour.

This patch switches to unsigned integer type for UpdateAtlas IDs
since unsigned integers are guaranteed to wrap around on overflow.

* Shared/SurfaceUpdateInfo.h:
(SurfaceUpdateInfo):
* UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
(WebKit::LayerTreeCoordinatorProxy::createUpdateAtlas):
(WebKit::LayerTreeCoordinatorProxy::removeUpdateAtlas):
* UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
(LayerTreeCoordinatorProxy):
* UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
(CoordinatedGraphicsLayerClient):
(CoordinatedGraphicsLayer):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.h:
(CoordinatedTileClient):
* WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
(WebKit::LayerTreeCoordinator::createUpdateAtlas):
(WebKit::LayerTreeCoordinator::removeUpdateAtlas):
(WebKit::LayerTreeCoordinator::beginContentUpdate):
* WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
(LayerTreeCoordinator):
* WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.cpp:
(WebKit::UpdateAtlas::UpdateAtlas):
(WebKit::UpdateAtlas::~UpdateAtlas):
(WebKit::UpdateAtlas::beginPaintingOnAvailableBuffer):
* WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.h:
(UpdateAtlasClient):
(UpdateAtlas):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137293 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL][WebGL] Regression(r137211) WebGL is broken with NVIDIA Drivers.
https://bugs.webkit.org/show_bug.cgi?id=104652.

Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2012-12-11
Reviewed by Kenneth Rohde Christiansen.

Reverting some of the changes from r137211, as it causes regressions
on NVIDIA drivers.

* platform/graphics/efl/GraphicsContext3DEfl.cpp:
(WebCore::GraphicsContext3D::GraphicsContext3D):
* platform/graphics/efl/GraphicsContext3DPrivate.cpp:
(GraphicsContext3DPrivate::copyToGraphicsSurface):
* platform/graphics/opengl/GLPlatformSurface.cpp:
(WebCore::GLPlatformSurface::updateContents):
* platform/graphics/opengl/GLPlatformSurface.h:
(GLPlatformSurface):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137294 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: Duplicate emulated touch events in iframe
https://bugs.webkit.org/show_bug.cgi?id=104653

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Synthetic touch events should be dispatched only on the frame containing its target, not on its ancestor frames,
up to the top frame.

* page/EventHandler.cpp:
(WebCore::EventHandler::dispatchSyntheticTouchEventIfEnabled):
  Do not dispatch a synthetic touch event on the current frame if its target is in a subframe.

LayoutTests:

The test incorrectly expected two synthetic touchend events from an iframe,
while only one touchstart and one touchend should be dispatched.

* fast/events/touch/emulated-touch-iframe-expected.txt:
* fast/events/touch/emulated-touch-iframe.html:
* fast/events/touch/resources/emulated-touch-iframe2.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137295 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove unused GErrors
https://bugs.webkit.org/show_bug.cgi?id=104657

Patch by Alberto Garcia <agarcia@igalia.com> on 2012-12-11
Reviewed by Martin Robinson.

Replace unused GErrors with null pointers.

* DumpRenderTree/gtk/DumpRenderTree.cpp:
(initializeFonts):
* DumpRenderTree/gtk/EditingCallbacks.cpp:
(dumpRange):
* WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:
(WTR::inititializeFontConfigSetting):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137296 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Support third-party cookie policy for Qt clients
https://bugs.webkit.org/show_bug.cgi?id=45455

Unreviewed fixup.

window.location is not set for http tests in platform, so use a reset function
that doesn't rely on it.

* platform/qt/http/tests/cookies/strict-third-party-cookie-blocking.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137297 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt][Mac] Fix transparency for WebGL content.
https://bugs.webkit.org/show_bug.cgi?id=104659

When drawing a texture to the TextureMapper the flag SupportsBlending
must be passed in order to allow for transparent webgl content.
We are doing this for GLX already, but the flag was still missing
in GraphicsSurfaceMac.

Reviewed by Kenneth Rohde Christiansen.

* platform/graphics/surfaces/mac/GraphicsSurfaceMac.cpp:
(WebCore::GraphicsSurface::platformPaintToTextureMapper):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137298 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unskip some tests that are now passing with the switch to the Harfbuzz backend.

* platform/gtk/TestExpectations: Unskip some recently passing tests.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137299 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Coverity] [GTK] Remove some redundant null checks in DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=104570

Reviewed by Daniel Bates.

Source/WebKit/gtk:

* WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
(DumpRenderTreeSupportGtk::elementDoesAutoCompleteForElementWithId): Remove a redundant null check.

Tools:

* DumpRenderTree/gtk/DumpRenderTree.cpp:
(descriptionSuitableForTestResult): Remove a redundant null check.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137300 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GStreamer] Avoid linking to GStreamer video libraries if only using ENABLE_AUDIO
https://bugs.webkit.org/show_bug.cgi?id=104590

Patch by Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> on 2012-12-11
Reviewed by Philippe Normand.

Make getVideoSizeAndFormatFromCaps() only available when ENABLE_VIDEO is set.

No new tests, no change in behavior.

* platform/graphics/gstreamer/GStreamerVersioning.cpp:
* platform/graphics/gstreamer/GStreamerVersioning.h:

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