[TouchAdjustment] Adjust to word or selection
https://bugs.webkit.org/show_bug.cgi?id=94449

Reviewed by Antonio Gomes.

Source/WebCore:

Makes each separate word a separate subtarget when context menu triggers
selections, and only the selected part of a partial selected node a
target when selections are not overridden.

Test: touchadjustment/context-menu-text-subtargets.html

* page/TouchAdjustment.cpp:
(TouchAdjustment):
(WebCore::TouchAdjustment::providesContextMenuItems):
(WebCore::TouchAdjustment::appendQuadsToSubtargetList):
(WebCore::TouchAdjustment::appendBasicSubtargetsForNode):
(WebCore::TouchAdjustment::appendContextSubtargetsForNode):
(WebCore::TouchAdjustment::compileSubtargetList):
(WebCore::findBestClickableCandidate):
(WebCore::findBestContextMenuCandidate):

LayoutTests:

Tests that touch-adjustment can adjust to the right subtargets within text-nodes.

* touchadjustment/context-menu-select-text.html:
* touchadjustment/context-menu-text-subtargets-expected.txt: Added.
* touchadjustment/context-menu-text-subtargets.html: Added.
* touchadjustment/resources/touchadjustment.js:
(pointToString):
(shouldBeWithin):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126026 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Update canvas tests that are using CanvasPixelArray
https://bugs.webkit.org/show_bug.cgi?id=94474

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-08-20
Reviewed by Andreas Kling.

CanvasPixelArray is deprecated. W3C already updated these tests on the
approved tests repository. Using Uint8ClampedArray, they now pass on
WebKit.

* canvas/philip/tests/2d.imageData.create1.type.html:
* canvas/philip/tests/2d.imageData.create2.type.html:
* canvas/philip/tests/2d.imageData.get.type.html:
* platform/chromium/TestExpectations:
* platform/efl/Skipped:
* platform/gtk/TestExpectations:
* platform/mac/canvas/philip/tests/2d.imageData.create1.type-expected.txt: Removed.
* platform/mac/canvas/philip/tests/2d.imageData.create2.type-expected.txt: Removed.
* platform/mac/canvas/philip/tests/2d.imageData.get.type-expected.txt: Removed.
* platform/qt/Skipped:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126027 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: [WebGL] Add minimum transport protocol from backend to frontend
https://bugs.webkit.org/show_bug.cgi?id=88973

Patch by Andrey Adaikin <aandrey@chromium.org> on 2012-08-20
Reviewed by Pavel Feldman.

Added the following protocol methods to communicate with the WebGL injected
module: captureFrame, getTraceLog, dropTraceLog, replayTraceLog.

* inspector/CodeGeneratorInspector.py:
* inspector/InjectedScriptWebGLModule.cpp:
(WebCore::InjectedScriptWebGLModule::captureFrame):
(WebCore):
(WebCore::InjectedScriptWebGLModule::dropTraceLog):
(WebCore::InjectedScriptWebGLModule::getTraceLog):
(WebCore::InjectedScriptWebGLModule::replayTraceLog):
* inspector/InjectedScriptWebGLModule.h:
(InjectedScriptWebGLModule):
* inspector/Inspector.json:
* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
* inspector/InspectorWebGLAgent.cpp:
(WebCore::InspectorWebGLAgent::InspectorWebGLAgent):
(WebCore::InspectorWebGLAgent::dropTraceLog):
(WebCore):
(WebCore::InspectorWebGLAgent::captureFrame):
(WebCore::InspectorWebGLAgent::getTraceLog):
(WebCore::InspectorWebGLAgent::replayTraceLog):
* inspector/InspectorWebGLAgent.h:
(WebCore):
(WebCore::InspectorWebGLAgent::create):
(InspectorWebGLAgent):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126028 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Replace webkit_web_view_replace_content with webkit_web_view_load_alternate_html
https://bugs.webkit.org/show_bug.cgi?id=94471

Reviewed by Martin Robinson.

In WebKit1 there's code to prevent that load signals are emitted
when loading internal custom error pages. We added
webkit_web_view_replace_content() with the same idea, but it has
ended up being problematic, because it allows to add any HTML
content (in WebKit1 we assumed internal error pages never failed
and always loaded) and it's impossible to know when the load has
finished. It also required a lot of logic to handle
replace_content as an especial case, in order to hide the fact
that it loads content. This patch renames
webkit_web_view_replace_content() as
webkit_web_view_load_alternate_html() and emit load events
normally.

* UIProcess/API/gtk/WebKitWebView.cpp:
(_WebKitWebViewPrivate):
(webkitWebViewLoadChanged):
(webkitWebViewLoadFailed):
(webkitWebViewSetEstimatedLoadProgress):
(webkitWebViewResourceLoadStarted):
(webkitWebViewGetLoadingWebResource):
(webkitWebViewRemoveLoadingWebResource):
(webkitWebViewResourceLoadFinished):
(webkit_web_view_load_alternate_html):
* UIProcess/API/gtk/WebKitWebView.h:
* UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
* UIProcess/API/gtk/tests/TestLoaderClient.cpp:
(testLoadAlternateHTML):
(beforeAll):
* UIProcess/API/gtk/tests/TestResources.cpp:
(beforeAll):
* UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
(beforeAll):
* UIProcess/API/gtk/tests/WebViewTest.cpp:
(WebViewTest::loadAlternateHTML):
* UIProcess/API/gtk/tests/WebViewTest.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126030 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Custom tap-highlight-color renders fully opaque
https://bugs.webkit.org/show_bug.cgi?id=94468

Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

Adjust the default tap-highlight-color to figure in that is will be
drawn semi-transparent.

* rendering/RenderTheme.h:
(RenderTheme):

Source/WebKit2:

Draw tap-highlight-color at 50% transparency, to better match how
existing WebKit browsers act on custom tap-highlight colors.

* WebProcess/WebPage/TapHighlightController.cpp:
(WebKit::TapHighlightController::drawRect):


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