Diff
Modified: trunk/LayoutTests/ChangeLog (106437 => 106438)
--- trunk/LayoutTests/ChangeLog 2012-02-01 08:09:00 UTC (rev 106437)
+++ trunk/LayoutTests/ChangeLog 2012-02-01 08:52:10 UTC (rev 106438)
@@ -1,3 +1,16 @@
+2012-01-31 Hans Wennborg <[email protected]>
+
+ Speech Input: Report speech element rect relative to window rather than frame
+ https://bugs.webkit.org/show_bug.cgi?id=76443
+
+ Reviewed by Darin Fisher.
+
+ Add layout test to check that the element position used when
+ requesting speech input is relative to the window, not the frame.
+
+ * fast/speech/bubble-position-expected.txt: Added.
+ * fast/speech/bubble-position.html: Added.
+
2012-02-01 Philippe Normand <[email protected]>
Unreviewed, GTK rebaseline after r106373 and r106361.
Added: trunk/LayoutTests/fast/speech/bubble-position-expected.txt (0 => 106438)
--- trunk/LayoutTests/fast/speech/bubble-position-expected.txt (rev 0)
+++ trunk/LayoutTests/fast/speech/bubble-position-expected.txt 2012-02-01 08:52:10 UTC (rev 106438)
@@ -0,0 +1,12 @@
+Tests for speech button click with <input type="text" speech>.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+Clicking the speech button.
+onSpeechChange()
+PASS input.value === expectedString is true
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
Property changes on: trunk/LayoutTests/fast/speech/bubble-position-expected.txt
___________________________________________________________________
Added: svn:eol-style
Added: trunk/LayoutTests/fast/speech/bubble-position.html (0 => 106438)
--- trunk/LayoutTests/fast/speech/bubble-position.html (rev 0)
+++ trunk/LayoutTests/fast/speech/bubble-position.html 2012-02-01 08:52:10 UTC (rev 106438)
@@ -0,0 +1,53 @@
+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
+<html>
+<head>
+<script src=""
+</head>
+<body>
+<script type="text/_javascript_">
+description('Tests for speech button click with <input type="text" speech>.');
+
+function onSpeechChange() {
+ debug("onSpeechChange()");
+
+ // Since we requested dumpRect, the rect comes back as the speech result.
+ window.expectedString = expectedX + "," + expectedY + "," + expectedWidth + "," + expectedHeight;
+ shouldBeTrue("input.value === expectedString");
+ finishJSTest();
+}
+
+function run() {
+ window.iframe = document.getElementById('iframe');
+ window.input = iframe.contentDocument.createElement('input');
+ input.setAttribute('x-webkit-speech');
+ input._onwebkitspeechchange_ = onSpeechChange;
+ iframe.contentDocument.getElementsByTagName('body')[0].appendChild(input);
+
+ window.expectedWidth = input.scrollHeight;
+ window.expectedHeight = input.scrollHeight;
+ window.expectedX = iframe.offsetLeft + input.offsetLeft + input.offsetWidth - expectedWidth;
+ window.expectedY = iframe.offsetTop + input.offsetTop + input.offsetHeight - 1;
+
+ if (window.layoutTestController && window.eventSender) {
+ layoutTestController.setMockSpeechInputDumpRect(true);
+
+ debug('Clicking the speech button.');
+ var x = input.offsetLeft + input.offsetWidth - 4;
+ var y = input.offsetTop + input.offsetHeight / 2;
+ x += iframe.offsetLeft;
+ y += iframe.offsetTop;
+
+ eventSender.mouseMoveTo(x, y);
+ eventSender.mouseDown();
+ eventSender.mouseUp();
+ }
+}
+
+window._onload_ = run;
+window.jsTestIsAsync = true;
+</script>
+<script src=""
+<iframe id="iframe">
+</body>
+</html>
+
Property changes on: trunk/LayoutTests/fast/speech/bubble-position.html
___________________________________________________________________
Added: svn:eol-style
Modified: trunk/Source/WebCore/ChangeLog (106437 => 106438)
--- trunk/Source/WebCore/ChangeLog 2012-02-01 08:09:00 UTC (rev 106437)
+++ trunk/Source/WebCore/ChangeLog 2012-02-01 08:52:10 UTC (rev 106438)
@@ -1,3 +1,20 @@
+2012-01-31 Hans Wennborg <[email protected]>
+
+ Speech Input: Report speech element rect relative to window rather than frame
+ https://bugs.webkit.org/show_bug.cgi?id=76443
+
+ Reviewed by Darin Fisher.
+
+ When requesting speech input, report the speech element rect relative
+ to the window rather than the frame. The embedder will typically use
+ this position to show a bubble indicating that speech recognition is
+ in progress.
+
+ Test: fast/speech/bubble-position.html
+
+ * html/shadow/TextControlInnerElements.cpp:
+ (WebCore::InputFieldSpeechButtonElement::startSpeechInput):
+
2012-01-31 Andreas Kling <[email protected]>
Make elements that don't have attributes smaller.
Modified: trunk/Source/WebCore/html/shadow/TextControlInnerElements.cpp (106437 => 106438)
--- trunk/Source/WebCore/html/shadow/TextControlInnerElements.cpp 2012-02-01 08:09:00 UTC (rev 106437)
+++ trunk/Source/WebCore/html/shadow/TextControlInnerElements.cpp 2012-02-01 08:52:10 UTC (rev 106438)
@@ -39,6 +39,7 @@
#include "Page.h"
#include "RenderLayer.h"
#include "RenderTextControlSingleLine.h"
+#include "RenderView.h"
#include "ScriptController.h"
#include "ScrollbarTheme.h"
#include "SpeechInput.h"
@@ -549,7 +550,7 @@
AtomicString language = input->computeInheritedLanguage();
String grammar = input->getAttribute(webkitgrammarAttr);
// FIXME: this should probably respect transforms
- IntRect rect = renderer()->absoluteBoundingBoxRectIgnoringTransforms();
+ IntRect rect = renderer()->view()->frameView()->contentsToWindow(renderer()->absoluteBoundingBoxRectIgnoringTransforms());
if (speechInput()->startRecognition(m_listenerId, rect, language, grammar, document()->securityOrigin()))
setState(Recording);
}
Modified: trunk/Tools/ChangeLog (106437 => 106438)
--- trunk/Tools/ChangeLog 2012-02-01 08:09:00 UTC (rev 106437)
+++ trunk/Tools/ChangeLog 2012-02-01 08:52:10 UTC (rev 106438)
@@ -1,3 +1,50 @@
+2012-01-31 Hans Wennborg <[email protected]>
+
+ Speech Input: Report speech element rect relative to window rather than frame
+ https://bugs.webkit.org/show_bug.cgi?id=76443
+
+ Reviewed by Darin Fisher.
+
+ Update LayoutTestController to allow for retrieving the speech
+ element's position used in a request.
+
+ In Chromium this is handled by the MockWebSpeechInputController;
+ adding stubs for the other implementations.
+
+ * DumpRenderTree/LayoutTestController.cpp:
+ (setMockSpeechInputDumpRectCallback):
+ (LayoutTestController::staticFunctions):
+ * DumpRenderTree/LayoutTestController.h:
+ (LayoutTestController):
+ * DumpRenderTree/chromium/LayoutTestController.cpp:
+ (LayoutTestController::LayoutTestController):
+ (LayoutTestController::setMockSpeechInputDumpRect):
+ * DumpRenderTree/chromium/LayoutTestController.h:
+ (LayoutTestController):
+ * DumpRenderTree/chromium/MockWebSpeechInputController.cpp:
+ (MockWebSpeechInputController::setDumpRect):
+ (MockWebSpeechInputController::clearResults):
+ (MockWebSpeechInputController::startRecognition):
+ (MockWebSpeechInputController::MockWebSpeechInputController):
+ (makeRectResult):
+ (MockWebSpeechInputController::speechTaskFired):
+ * DumpRenderTree/chromium/MockWebSpeechInputController.h:
+ (MockWebSpeechInputController):
+ * DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
+ (LayoutTestController::setMockSpeechInputDumpRect):
+ * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
+ (LayoutTestController::setMockSpeechInputDumpRect):
+ * DumpRenderTree/mac/LayoutTestControllerMac.mm:
+ (LayoutTestController::setMockSpeechInputDumpRect):
+ * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
+ (LayoutTestController::setMockSpeechInputDumpRect):
+ * DumpRenderTree/qt/LayoutTestControllerQt.h:
+ (LayoutTestController):
+ * DumpRenderTree/win/LayoutTestControllerWin.cpp:
+ (LayoutTestController::setMockSpeechInputDumpRect):
+ * DumpRenderTree/wx/LayoutTestControllerWx.cpp:
+ (LayoutTestController::setMockSpeechInputDumpRect):
+
2012-01-31 Ryuan Choi <[email protected]>
[EFL] Add basic DRT/Efl implementation to support viewport test.
Modified: trunk/Tools/DumpRenderTree/LayoutTestController.cpp (106437 => 106438)
--- trunk/Tools/DumpRenderTree/LayoutTestController.cpp 2012-02-01 08:09:00 UTC (rev 106437)
+++ trunk/Tools/DumpRenderTree/LayoutTestController.cpp 2012-02-01 08:52:10 UTC (rev 106438)
@@ -1356,6 +1356,19 @@
return JSValueMakeUndefined(context);
}
+static JSValueRef setMockSpeechInputDumpRectCallback(JSContextRef context, JSObjectRef function, JSObjectRef thisObject, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception)
+{
+ if (argumentCount < 1)
+ return JSValueMakeUndefined(context);
+
+ bool dumpRect = JSValueToBoolean(context, arguments[0]);
+
+ LayoutTestController* controller = static_cast<LayoutTestController*>(JSObjectGetPrivate(thisObject));
+ controller->setMockSpeechInputDumpRect(dumpRect);
+
+ return JSValueMakeUndefined(context);
+}
+
static JSValueRef setNewWindowsCopyBackForwardListCallback(JSContextRef context, JSObjectRef function, JSObjectRef thisObject, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception)
{
// Has mac implementation
@@ -2453,6 +2466,7 @@
{ "setMockGeolocationError", setMockGeolocationErrorCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
{ "setMockGeolocationPosition", setMockGeolocationPositionCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
{ "addMockSpeechInputResult", addMockSpeechInputResultCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
+ { "setMockSpeechInputDumpRect", setMockSpeechInputDumpRectCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
{ "setNewWindowsCopyBackForwardList", setNewWindowsCopyBackForwardListCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
{ "setPageVisibility", setPageVisibilityCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
{ "setPOSIXLocale", setPOSIXLocaleCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
Modified: trunk/Tools/DumpRenderTree/LayoutTestController.h (106437 => 106438)
--- trunk/Tools/DumpRenderTree/LayoutTestController.h 2012-02-01 08:09:00 UTC (rev 106437)
+++ trunk/Tools/DumpRenderTree/LayoutTestController.h 2012-02-01 08:52:10 UTC (rev 106438)
@@ -108,6 +108,7 @@
void setMockGeolocationError(int code, JSStringRef message);
void setMockGeolocationPosition(double latitude, double longitude, double accuracy);
void addMockSpeechInputResult(JSStringRef result, double confidence, JSStringRef language);
+ void setMockSpeechInputDumpRect(bool flag);
void setPersistentUserStyleSheetLocation(JSStringRef path);
void setPluginsEnabled(bool flag);
void setPopupBlockingEnabled(bool flag);
Modified: trunk/Tools/DumpRenderTree/chromium/LayoutTestController.cpp (106437 => 106438)
--- trunk/Tools/DumpRenderTree/chromium/LayoutTestController.cpp 2012-02-01 08:09:00 UTC (rev 106437)
+++ trunk/Tools/DumpRenderTree/chromium/LayoutTestController.cpp 2012-02-01 08:52:10 UTC (rev 106438)
@@ -91,6 +91,7 @@
// by CppBoundClass, the parent to LayoutTestController).
bindMethod("addFileToPasteboardOnDrag", &LayoutTestController::addFileToPasteboardOnDrag);
bindMethod("addMockSpeechInputResult", &LayoutTestController::addMockSpeechInputResult);
+ bindMethod("setMockSpeechInputDumpRect", &LayoutTestController::setMockSpeechInputDumpRect);
bindMethod("addOriginAccessWhitelistEntry", &LayoutTestController::addOriginAccessWhitelistEntry);
bindMethod("addUserScript", &LayoutTestController::addUserScript);
bindMethod("addUserStyleSheet", &LayoutTestController::addUserStyleSheet);
@@ -1938,6 +1939,16 @@
controller->addMockRecognitionResult(cppVariantToWebString(arguments[0]), arguments[1].toDouble(), cppVariantToWebString(arguments[2]));
}
+void LayoutTestController::setMockSpeechInputDumpRect(const CppArgumentList& arguments, CppVariant* result)
+{
+ result->setNull();
+ if (arguments.size() < 1 || !arguments[0].isBool())
+ return;
+
+ if (MockWebSpeechInputController* controller = m_shell->webViewHost()->speechInputControllerMock())
+ controller->setDumpRect(arguments[0].value.boolValue);
+}
+
void LayoutTestController::startSpeechInput(const CppArgumentList& arguments, CppVariant* result)
{
result->setNull();
Modified: trunk/Tools/DumpRenderTree/chromium/LayoutTestController.h (106437 => 106438)
--- trunk/Tools/DumpRenderTree/chromium/LayoutTestController.h 2012-02-01 08:09:00 UTC (rev 106437)
+++ trunk/Tools/DumpRenderTree/chromium/LayoutTestController.h 2012-02-01 08:52:10 UTC (rev 106438)
@@ -377,6 +377,7 @@
// Speech input related functions.
void addMockSpeechInputResult(const CppArgumentList&, CppVariant*);
+ void setMockSpeechInputDumpRect(const CppArgumentList&, CppVariant*);
void startSpeechInput(const CppArgumentList&, CppVariant*);
void layerTreeAsText(const CppArgumentList& args, CppVariant* result);
Modified: trunk/Tools/DumpRenderTree/chromium/MockWebSpeechInputController.cpp (106437 => 106438)
--- trunk/Tools/DumpRenderTree/chromium/MockWebSpeechInputController.cpp 2012-02-01 08:09:00 UTC (rev 106437)
+++ trunk/Tools/DumpRenderTree/chromium/MockWebSpeechInputController.cpp 2012-02-01 08:52:10 UTC (rev 106438)
@@ -28,7 +28,9 @@
#include "WebSpeechInputListener.h"
#include "platform/WebCString.h"
+#include "platform/WebVector.h"
#include <wtf/text/CString.h>
+#include <wtf/text/StringBuilder.h>
using namespace WebKit;
@@ -52,10 +54,16 @@
}
}
+void MockWebSpeechInputController::setDumpRect(bool dumpRect)
+{
+ m_dumpRect = dumpRect;
+}
+
void MockWebSpeechInputController::clearResults()
{
m_resultsForEmptyLanguage.clear();
m_recognitionResults.clear();
+ m_dumpRect = false;
}
bool MockWebSpeechInputController::startRecognition(int requestId, const WebRect& elementRect, const WebString& language, const WebString& grammar, const WebSecurityOrigin& origin)
@@ -64,6 +72,7 @@
return false;
m_requestId = requestId;
+ m_requestRect = elementRect;
m_recording = true;
m_language = String::fromUTF8(language.utf8().data());
@@ -99,9 +108,29 @@
, m_speechTask(0)
, m_recording(false)
, m_requestId(-1)
+ , m_dumpRect(false)
{
}
+static WebSpeechInputResultArray makeRectResult(const WebRect& rect)
+{
+ StringBuilder sb;
+ sb.append(String::number(rect.x));
+ sb.append(",");
+ sb.append(String::number(rect.y));
+ sb.append(",");
+ sb.append(String::number(rect.width));
+ sb.append(",");
+ sb.append(String::number(rect.height));
+
+ WebSpeechInputResult res;
+ res.set(WebString(sb.characters(), sb.length()), 1.0);
+
+ WebSpeechInputResultArray results;
+ results.assign(&res, 1);
+ return results;
+}
+
void MockWebSpeechInputController::speechTaskFired()
{
if (m_recording) {
@@ -117,8 +146,10 @@
int requestId = m_requestId;
m_requestId = 0;
- // Empty language case must be handled separately to avoid problems with HashMap and empty keys.
- if (m_language.isEmpty()) {
+ if (m_dumpRect) {
+ m_listener->setRecognitionResult(requestId, makeRectResult(m_requestRect));
+ } else if (m_language.isEmpty()) {
+ // Empty language case must be handled separately to avoid problems with HashMap and empty keys.
if (!m_resultsForEmptyLanguage.isEmpty())
m_listener->setRecognitionResult(requestId, m_resultsForEmptyLanguage);
else
Modified: trunk/Tools/DumpRenderTree/chromium/MockWebSpeechInputController.h (106437 => 106438)
--- trunk/Tools/DumpRenderTree/chromium/MockWebSpeechInputController.h 2012-02-01 08:09:00 UTC (rev 106437)
+++ trunk/Tools/DumpRenderTree/chromium/MockWebSpeechInputController.h 2012-02-01 08:52:10 UTC (rev 106438)
@@ -29,6 +29,7 @@
#if ENABLE(INPUT_SPEECH)
#include "Task.h"
+#include "platform/WebRect.h"
#include "WebSpeechInputController.h"
#include "WebSpeechInputResult.h"
#include <wtf/Compiler.h>
@@ -39,7 +40,6 @@
#include <wtf/text/StringHash.h>
namespace WebKit {
-struct WebRect;
class WebSecurityOrigin;
class WebSpeechInputListener;
class WebString;
@@ -50,6 +50,7 @@
static PassOwnPtr<MockWebSpeechInputController> create(WebKit::WebSpeechInputListener*);
void addMockRecognitionResult(const WebKit::WebString& result, double confidence, const WebKit::WebString& language);
+ void setDumpRect(bool);
void clearResults();
// WebSpeechInputController implementation:
@@ -79,10 +80,12 @@
bool m_recording;
int m_requestId;
+ WebKit::WebRect m_requestRect;
String m_language;
HashMap<String, Vector<WebKit::WebSpeechInputResult> > m_recognitionResults;
Vector<WebKit::WebSpeechInputResult> m_resultsForEmptyLanguage;
+ bool m_dumpRect;
};
#endif // ENABLE(INPUT_SPEECH)
Modified: trunk/Tools/DumpRenderTree/efl/LayoutTestControllerEfl.cpp (106437 => 106438)
--- trunk/Tools/DumpRenderTree/efl/LayoutTestControllerEfl.cpp 2012-02-01 08:09:00 UTC (rev 106437)
+++ trunk/Tools/DumpRenderTree/efl/LayoutTestControllerEfl.cpp 2012-02-01 08:52:10 UTC (rev 106438)
@@ -389,6 +389,13 @@
notImplemented();
}
+void LayoutTestController::setMockSpeechInputDumpRect(bool)
+{
+ // FIXME: Implement for speech input layout tests.
+ // See https://bugs.webkit.org/show_bug.cgi?id=39485.
+ notImplemented();
+}
+
void LayoutTestController::startSpeechInput(JSContextRef inputElement)
{
// FIXME: Implement for speech input layout tests.
Modified: trunk/Tools/DumpRenderTree/gtk/LayoutTestControllerGtk.cpp (106437 => 106438)
--- trunk/Tools/DumpRenderTree/gtk/LayoutTestControllerGtk.cpp 2012-02-01 08:09:00 UTC (rev 106437)
+++ trunk/Tools/DumpRenderTree/gtk/LayoutTestControllerGtk.cpp 2012-02-01 08:52:10 UTC (rev 106438)
@@ -526,6 +526,12 @@
// See https://bugs.webkit.org/show_bug.cgi?id=39485.
}
+void LayoutTestController::setMockSpeechInputDumpRect(bool flag)
+{
+ // FIXME: Implement for speech input layout tests.
+ // See https://bugs.webkit.org/show_bug.cgi?id=39485.
+}
+
void LayoutTestController::startSpeechInput(JSContextRef inputElement)
{
// FIXME: Implement for speech input layout tests.
Modified: trunk/Tools/DumpRenderTree/mac/LayoutTestControllerMac.mm (106437 => 106438)
--- trunk/Tools/DumpRenderTree/mac/LayoutTestControllerMac.mm 2012-02-01 08:09:00 UTC (rev 106437)
+++ trunk/Tools/DumpRenderTree/mac/LayoutTestControllerMac.mm 2012-02-01 08:52:10 UTC (rev 106438)
@@ -545,6 +545,12 @@
// See https://bugs.webkit.org/show_bug.cgi?id=39485.
}
+void LayoutTestController::setMockSpeechInputDumpRect(bool flag)
+{
+ // FIXME: Implement for speech input layout tests.
+ // See https://bugs.webkit.org/show_bug.cgi?id=39485.
+}
+
void LayoutTestController::startSpeechInput(JSContextRef inputElement)
{
// FIXME: Implement for speech input layout tests.
Modified: trunk/Tools/DumpRenderTree/qt/LayoutTestControllerQt.cpp (106437 => 106438)
--- trunk/Tools/DumpRenderTree/qt/LayoutTestControllerQt.cpp 2012-02-01 08:09:00 UTC (rev 106437)
+++ trunk/Tools/DumpRenderTree/qt/LayoutTestControllerQt.cpp 2012-02-01 08:52:10 UTC (rev 106438)
@@ -899,6 +899,12 @@
// See https://bugs.webkit.org/show_bug.cgi?id=39485.
}
+void LayoutTestController::setMockSpeechInputDumpRect(bool flag)
+{
+ // FIXME: Implement for speech input layout tests.
+ // See https://bugs.webkit.org/show_bug.cgi?id=39485.
+}
+
void LayoutTestController::startSpeechInput(const QString& inputElement)
{
// FIXME: Implement for speech input layout tests.
Modified: trunk/Tools/DumpRenderTree/qt/LayoutTestControllerQt.h (106437 => 106438)
--- trunk/Tools/DumpRenderTree/qt/LayoutTestControllerQt.h 2012-02-01 08:09:00 UTC (rev 106437)
+++ trunk/Tools/DumpRenderTree/qt/LayoutTestControllerQt.h 2012-02-01 08:52:10 UTC (rev 106438)
@@ -234,6 +234,7 @@
bool geolocationPermission() const { return m_geolocationPermission; }
void addMockSpeechInputResult(const QString& result, double confidence, const QString& language);
+ void setMockSpeechInputDumpRect(bool flag);
void startSpeechInput(const QString& inputElement);
// Empty stub method to keep parity with object model exposed by global LayoutTestController.
Modified: trunk/Tools/DumpRenderTree/win/LayoutTestControllerWin.cpp (106437 => 106438)
--- trunk/Tools/DumpRenderTree/win/LayoutTestControllerWin.cpp 2012-02-01 08:09:00 UTC (rev 106437)
+++ trunk/Tools/DumpRenderTree/win/LayoutTestControllerWin.cpp 2012-02-01 08:52:10 UTC (rev 106438)
@@ -450,6 +450,12 @@
// See https://bugs.webkit.org/show_bug.cgi?id=39485.
}
+void LayoutTestController::setMockSpeechInputDumpRect(bool flag)
+{
+ // FIXME: Implement for speech input layout tests.
+ // See https://bugs.webkit.org/show_bug.cgi?id=39485.
+}
+
void LayoutTestController::startSpeechInput(JSContextRef inputElement)
{
// FIXME: Implement for speech input layout tests.
Modified: trunk/Tools/DumpRenderTree/wx/LayoutTestControllerWx.cpp (106437 => 106438)
--- trunk/Tools/DumpRenderTree/wx/LayoutTestControllerWx.cpp 2012-02-01 08:09:00 UTC (rev 106437)
+++ trunk/Tools/DumpRenderTree/wx/LayoutTestControllerWx.cpp 2012-02-01 08:52:10 UTC (rev 106438)
@@ -376,6 +376,12 @@
// See https://bugs.webkit.org/show_bug.cgi?id=39485.
}
+void LayoutTestController::setMockSpeechInputDumpRect(bool flag)
+{
+ // FIXME: Implement for speech input layout tests.
+ // See https://bugs.webkit.org/show_bug.cgi?id=39485.
+}
+
void LayoutTestController::startSpeechInput(JSContextRef inputElement)
{
// FIXME: Implement for speech input layout tests.