[Qt] Basic gesture event handling
https://bugs.webkit.org/show_bug.cgi?id=66173

Reviewed by Simon Hausmann.

Source/WebKit/qt:

Implement basic handling of QGestureEvent converting and forwarding
Tap and TapAndHold gestures to WebCore.

* Api/qwebpage.cpp:
(QWebPagePrivate::gestureEvent):
(QWebPage::event):
* Api/qwebpage_p.h:
(QWebPagePrivate):
* WebCoreSupport/WebEventConversion.cpp:
(WebKitPlatformGestureEvent):
(WebCore::WebKitPlatformGestureEvent::WebKitPlatformGestureEvent):
(WebCore::convertGesture):
* WebCoreSupport/WebEventConversion.h:

Tools:

Add support for eventSender.gestureLongPress.

* DumpRenderTree/qt/EventSenderQt.cpp:
(EventSender::EventSender):
(EventSender::gestureLongPress):
* DumpRenderTree/qt/EventSenderQt.h:
(EventSender):

LayoutTests:

* platform/qt-5.0-wk2/TestExpectations:
* platform/qt/TestExpectations:
* platform/qt/fast/events/touch/gesture/gesture-click-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132052 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Handle GET of blob URLs.
https://bugs.webkit.org/show_bug.cgi?id=99053

Reviewed by Simon Hausmann.

Source/WebCore:

Let BlobResourceHandle handle Blob request internally.

* platform/network/qt/ResourceHandleQt.cpp:
(WebCore::ResourceHandle::loadResourceSynchronously):

LayoutTests:

Unskip tests working after we handle GET of Blob URLs. Unfortunately they require beginDragWithFiles,
and thus only work in DRT.

* platform/qt-5.0-wk2/TestExpectations:
* platform/qt/TestExpectations:
* platform/qt/fast/files/workers/worker-read-blob-async-actual.txt: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132053 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Fix "ASSERTION FAILED: !document->inPageCache()" when loading a page
https://bugs.webkit.org/show_bug.cgi?id=98514

Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

The problem is that we call setFixedVisibleContentRect, which triggers
a layout, after the document has been put in the page cache and before
the load has been actually committed.

This applies the same trick as with setFixedLayoutSize by passing the rect
in Frame::createView and calling setFixedVisibleContentRect before the
new FrameView gets attached to the Frame/Document to prevent the layout.

* WebCore.exp.in:
* page/Frame.cpp:
(WebCore::Frame::createView): Give a default value to the fixedLayoutSize and
useFixedLayout arguments as well since they are used exceptionally.
* page/Frame.h:
(Frame):

Source/WebKit/blackberry:

* WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
(WebCore::FrameLoaderClientBlackBerry::transitionToCommittedForNewPage):

Source/WebKit/chromium:

* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::createFrameView):

Source/WebKit/efl:

* ewk/ewk_frame.cpp:
(ewk_frame_view_create_for_view):

Source/WebKit/gtk:

* WebCoreSupport/FrameLoaderClientGtk.cpp:
(WebKit::FrameLoaderClient::transitionToCommittedForNewPage):

Source/WebKit/qt:

* WebCoreSupport/FrameLoaderClientQt.cpp:
(WebCore::FrameLoaderClientQt::transitionToCommittedForNewPage): Use FrameView::fixedVisibleContentRect
instead of FrameView::visibleContentRect as the source to always keep the correct state.

Source/WebKit/win:

* WebCoreSupport/WebFrameLoaderClient.cpp:
(WebFrameLoaderClient::transitionToCommittedForNewPage):

Source/WebKit/wx:

* WebKitSupport/FrameLoaderClientWx.cpp:
(WebCore::FrameLoaderClientWx::transitionToCommittedForNewPage):

Source/WebKit2:

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage): Use FrameView::fixedVisibleContentRect
instead of WebFrame::visibleContentBounds as the source to always keep the correct state.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132054 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Test date-suggestion-picker-reset-value-after-reload.html will timeout when running with other tests
https://bugs.webkit.org/show_bug.cgi?id=99969

Reviewed by Kent Tamura.

When running with other tests the iframe onload event seems to fire before the script tag is parsed.

* platform/chromium/fast/forms/suggestion-picker/date-suggestion-picker-reset-value-after-reload.html:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132055 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Enable CSP 1.1
https://bugs.webkit.org/show_bug.cgi?id=99064

Reviewed by Martin Robinson.

Source/WebCore: 

Enable CSP 1.1 in development builds but keep it disabled when the
unstable features should not be enabled (like in stable releases).

No new tests - they already exist and will be unskipped.

* GNUmakefile.am:
* GNUmakefile.features.am:

LayoutTests: 

Unskip the CSP 1.1 layout tests as they all pass with the feature enabled.

* platform/gtk/TestExpectations:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132056 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] Rename WeekFormatInLDML to WeekFormatTemplate
https://bugs.webkit.org/show_bug.cgi?id=99972

Reviewed by Kent Tamura.

Source/Platform:

Renaming because Chromium won't be returning a week format in LDML.

* chromium/public/WebLocalizedString.h:

Source/WebKit/chromium:

* src/LocalizedStrings.cpp:
(WebCore::weekFormatInLDML):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132057 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Enable Microdata DOM API
https://bugs.webkit.org/show_bug.cgi?id=99033

Reviewed by Martin Robinson.

Source/WebCore: 

Enable the Microdata DOM API, but still disable it when the unstable
features should be disabled (for instance in release builds).

No new tests - related tests are being unskipped and are expected to pass.

* GNUmakefile.am:
* GNUmakefile.features.am:
* bindings/gobject/GNUmakefile.am: Add the required files so the Microdata
API GObject bindings are generated and built.

LayoutTests: 

Unskip the Microdata tests, they all pass now that the feature has been enabled.

* platform/gtk/TestExpectations:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132058 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: do not double count memory of objects with multiple ancestors
https://bugs.webkit.org/show_bug.cgi?id=99958

Reviewed by Alexander Pavlov.

Source/WTF:

Make sure memory occupied by objects of classes with multiple inheritance is
not double counted.

* wtf/MemoryInstrumentation.h:
(WTF::MemoryObjectInfo::MemoryObjectInfo):
(WTF::MemoryObjectInfo::reportedPointer):
(WTF::MemoryObjectInfo::reportObjectInfo): 1) Store actual pointer to the instrumented
object as it may differ from the original pointer by which it was reported. 2) Make
the method non-template and calculate object size on the caller side.
(MemoryObjectInfo):
(WTF::MemoryInstrumentation::reportObjectMemoryUsage):
(WTF::MemoryClassInfo::MemoryClassInfo):
(WTF::MemoryInstrumentation::InstrumentedPointer::process): use adjusted pointer
returned by reportMemoryUsage to check if the object has already been visited when
the pointer differs from the orinal one(it may happen if the object was reported
by a pointer to one of its base classes).

Tools:

* TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp: Test that there
is no double counting in case of multiple inheritance.


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