[SCM] WebKit Debian packaging branch, webkit-1.3, updated. upstream/1.3.7-4207-g178b198

satish at chromium.org satish at chromium.org
Sun Feb 20 23:16:27 UTC 2011


The following commit has been merged in the webkit-1.3 branch:
commit 87e477993460dc7d0c19f8cb85592b4e40fb198a
Author: satish at chromium.org <satish at chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Wed Jan 19 16:41:41 2011 +0000

    2011-01-19  Satish Sampath  <satish at chromium.org>
    
            Reviewed by Jeremy Orlow.
    
            Send origin/url as part of speech input requests to the embedder.
            https://bugs.webkit.org/show_bug.cgi?id=52718
    
            * page/SpeechInput.cpp:
            (WebCore::SpeechInput::startRecognition): Pass up additional origin parameter.
            * page/SpeechInput.h:
            * page/SpeechInputClient.h:
            * platform/mock/SpeechInputClientMock.cpp:
            (WebCore::SpeechInputClientMock::startRecognition): Updated prototype.
            * platform/mock/SpeechInputClientMock.h:
            * rendering/TextControlInnerElements.cpp:
            (WebCore::InputFieldSpeechButtonElement::defaultEventHandler): Pass the frame origin to speech input request.
    2011-01-19  Satish Sampath  <satish at chromium.org>
    
            Reviewed by Jeremy Orlow.
    
            Send origin/url as part of speech input requests to the embedder.
            https://bugs.webkit.org/show_bug.cgi?id=52718
    
            * public/WebSpeechInputController.h:
            (WebKit::WebSpeechInputController::startRecognition): Updated prototype.
            * src/SpeechInputClientImpl.cpp:
            (WebKit::SpeechInputClientImpl::startRecognition): Pass up additional origin parameter.
            * src/SpeechInputClientImpl.h:
            * src/WebSpeechInputControllerMockImpl.cpp: Updated code to pass additional parameter.
            (WebKit::WebSpeechInputControllerMockImpl::startRecognition):
            * src/WebSpeechInputControllerMockImpl.h: Added new variant of startRecognition method.
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76128 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog
index 0b2b6ff..75937b5 100644
--- a/Source/WebCore/ChangeLog
+++ b/Source/WebCore/ChangeLog
@@ -1,3 +1,20 @@
+2011-01-19  Satish Sampath  <satish at chromium.org>
+
+        Reviewed by Jeremy Orlow.
+
+        Send origin/url as part of speech input requests to the embedder.
+        https://bugs.webkit.org/show_bug.cgi?id=52718
+
+        * page/SpeechInput.cpp:
+        (WebCore::SpeechInput::startRecognition): Pass up additional origin parameter.
+        * page/SpeechInput.h:
+        * page/SpeechInputClient.h:
+        * platform/mock/SpeechInputClientMock.cpp:
+        (WebCore::SpeechInputClientMock::startRecognition): Updated prototype.
+        * platform/mock/SpeechInputClientMock.h:
+        * rendering/TextControlInnerElements.cpp:
+        (WebCore::InputFieldSpeechButtonElement::defaultEventHandler): Pass the frame origin to speech input request.
+
 2011-01-19  Hans Wennborg  <hans at chromium.org>
 
         Reviewed by Jeremy Orlow.
diff --git a/Source/WebCore/page/SpeechInput.cpp b/Source/WebCore/page/SpeechInput.cpp
index f36ed4d..9605dd3 100644
--- a/Source/WebCore/page/SpeechInput.cpp
+++ b/Source/WebCore/page/SpeechInput.cpp
@@ -33,7 +33,7 @@
 
 #if ENABLE(INPUT_SPEECH)
 
-#include "Frame.h"
+#include "SecurityOrigin.h"
 #include "SpeechInputClient.h"
 #include "SpeechInputListener.h"
 
@@ -93,10 +93,10 @@ void SpeechInput::setRecognitionResult(int listenerId, const SpeechInputResultAr
         m_listeners.get(listenerId)->setRecognitionResult(listenerId, result);
 }
 
-bool SpeechInput::startRecognition(int listenerId, const IntRect& elementRect, const AtomicString& language, const String& grammar)
+bool SpeechInput::startRecognition(int listenerId, const IntRect& elementRect, const AtomicString& language, const String& grammar, SecurityOrigin* origin)
 {
     ASSERT(m_listeners.contains(listenerId));
-    return m_client->startRecognition(listenerId, elementRect, language, grammar);
+    return m_client->startRecognition(listenerId, elementRect, language, grammar, origin);
 }
 
 void SpeechInput::stopRecording(int listenerId)
diff --git a/Source/WebCore/page/SpeechInput.h b/Source/WebCore/page/SpeechInput.h
index 4532d49..270f500 100644
--- a/Source/WebCore/page/SpeechInput.h
+++ b/Source/WebCore/page/SpeechInput.h
@@ -41,6 +41,7 @@
 namespace WebCore {
 
 class IntRect;
+class SecurityOrigin;
 class SpeechInputClient;
 class SpeechInputListener;
 
@@ -61,7 +62,7 @@ public:
     void unregisterListener(int);
 
     // Methods invoked by the input elements.
-    bool startRecognition(int listenerId, const IntRect& elementRect, const AtomicString& language, const String& grammar);
+    bool startRecognition(int listenerId, const IntRect& elementRect, const AtomicString& language, const String& grammar, SecurityOrigin*);
     void stopRecording(int);
     void cancelRecognition(int);
 
diff --git a/Source/WebCore/page/SpeechInputClient.h b/Source/WebCore/page/SpeechInputClient.h
index 2a2e160..4f8fd5e 100644
--- a/Source/WebCore/page/SpeechInputClient.h
+++ b/Source/WebCore/page/SpeechInputClient.h
@@ -38,6 +38,7 @@
 namespace WebCore {
 
 class IntRect;
+class SecurityOrigin;
 class SpeechInputListener;
 
 // Provides an interface for SpeechInput to call into the embedder.
@@ -50,7 +51,7 @@ public:
     virtual void setListener(SpeechInputListener*) = 0;
 
     // Starts speech recognition and audio recording.
-    virtual bool startRecognition(int requestId, const IntRect& elementRect, const AtomicString& language, const String& grammar) = 0;
+    virtual bool startRecognition(int requestId, const IntRect& elementRect, const AtomicString& language, const String& grammar, SecurityOrigin*) = 0;
 
     // Stops audio recording and performs recognition with the audio recorded until now
     // (does not discard audio).
diff --git a/Source/WebCore/platform/mock/SpeechInputClientMock.cpp b/Source/WebCore/platform/mock/SpeechInputClientMock.cpp
index 16a7c76..9aa3113 100644
--- a/Source/WebCore/platform/mock/SpeechInputClientMock.cpp
+++ b/Source/WebCore/platform/mock/SpeechInputClientMock.cpp
@@ -33,6 +33,7 @@
 
 #if ENABLE(INPUT_SPEECH)
 
+#include "SecurityOrigin.h"
 #include "SpeechInputListener.h"
 
 namespace WebCore {
@@ -50,7 +51,7 @@ void SpeechInputClientMock::setListener(SpeechInputListener* listener)
     m_listener = listener;
 }
 
-bool SpeechInputClientMock::startRecognition(int requestId, const IntRect& elementRect, const AtomicString& language, const String& grammar)
+bool SpeechInputClientMock::startRecognition(int requestId, const IntRect& elementRect, const AtomicString& language, const String& grammar, SecurityOrigin* origin)
 {
     if (m_timer.isActive())
         return false;
diff --git a/Source/WebCore/platform/mock/SpeechInputClientMock.h b/Source/WebCore/platform/mock/SpeechInputClientMock.h
index 6f72191..4e13242 100644
--- a/Source/WebCore/platform/mock/SpeechInputClientMock.h
+++ b/Source/WebCore/platform/mock/SpeechInputClientMock.h
@@ -54,7 +54,7 @@ public:
 
     // SpeechInputClient methods.
     void setListener(SpeechInputListener*);
-    bool startRecognition(int requestId, const IntRect& elementRect, const AtomicString& language, const String& grammar);
+    bool startRecognition(int requestId, const IntRect& elementRect, const AtomicString& language, const String& grammar, SecurityOrigin*);
     void stopRecording(int);
     void cancelRecognition(int);
 
diff --git a/Source/WebCore/rendering/TextControlInnerElements.cpp b/Source/WebCore/rendering/TextControlInnerElements.cpp
index b6e3dd4..26973f9 100644
--- a/Source/WebCore/rendering/TextControlInnerElements.cpp
+++ b/Source/WebCore/rendering/TextControlInnerElements.cpp
@@ -433,9 +433,13 @@ void InputFieldSpeechButtonElement::defaultEventHandler(Event* event)
 
     if (event->type() == eventNames().clickEvent) {
         switch (m_state) {
-        case Idle:
-            if (speechInput()->startRecognition(m_listenerId, input->renderer()->absoluteBoundingBoxRect(), input->computeInheritedLanguage(), input->getAttribute(webkitgrammarAttr)))
-                setState(Recording);
+        case Idle: {
+              AtomicString language = input->computeInheritedLanguage();
+              String grammar = input->getAttribute(webkitgrammarAttr);
+              IntRect rect = input->renderer()->absoluteBoundingBoxRect();
+              if (speechInput()->startRecognition(m_listenerId, rect, language, grammar, document()->securityOrigin()))
+                  setState(Recording);
+            }
             break;
         case Recording:
             speechInput()->stopRecording(m_listenerId);
diff --git a/Source/WebKit/chromium/ChangeLog b/Source/WebKit/chromium/ChangeLog
index af8ad3f..7252809 100644
--- a/Source/WebKit/chromium/ChangeLog
+++ b/Source/WebKit/chromium/ChangeLog
@@ -1,3 +1,19 @@
+2011-01-19  Satish Sampath  <satish at chromium.org>
+
+        Reviewed by Jeremy Orlow.
+
+        Send origin/url as part of speech input requests to the embedder.
+        https://bugs.webkit.org/show_bug.cgi?id=52718
+
+        * public/WebSpeechInputController.h:
+        (WebKit::WebSpeechInputController::startRecognition): Updated prototype.
+        * src/SpeechInputClientImpl.cpp:
+        (WebKit::SpeechInputClientImpl::startRecognition): Pass up additional origin parameter.
+        * src/SpeechInputClientImpl.h:
+        * src/WebSpeechInputControllerMockImpl.cpp: Updated code to pass additional parameter.
+        (WebKit::WebSpeechInputControllerMockImpl::startRecognition):
+        * src/WebSpeechInputControllerMockImpl.h: Added new variant of startRecognition method.
+
 2011-01-19  Pavel Feldman  <pfeldman at chromium.org>
 
         Not reviewed: updating Chromium devtools sanity tests for downstream use.
diff --git a/Source/WebKit/chromium/public/WebSpeechInputController.h b/Source/WebKit/chromium/public/WebSpeechInputController.h
index 6ed546f..eb83ec7 100644
--- a/Source/WebKit/chromium/public/WebSpeechInputController.h
+++ b/Source/WebKit/chromium/public/WebSpeechInputController.h
@@ -35,8 +35,8 @@
 
 namespace WebKit {
 
-class WebString;
 struct WebRect;
+class WebSecurityOrigin;
 class WebString;
 
 // Provides an embedder API called by WebKit.
@@ -45,6 +45,11 @@ public:
     // Starts speech recognition. Speech will get recorded until the endpointer detects silence,
     // runs to the limit or stopRecording is called. Progress indications and the recognized
     // text are returned via the listener interface.
+    virtual bool startRecognition(int requestId, const WebRect& elementRect, const WebString& language, const WebString& grammar, const WebSecurityOrigin& origin)
+    {
+        return startRecognition(requestId, elementRect, language, grammar);
+    }
+    // TODO(satish): Remove this once chromium has rolled past the above change.
     virtual bool startRecognition(int requestId, const WebRect& elementRect, const WebString& language, const WebString& grammar)
     {
         WEBKIT_ASSERT_NOT_REACHED();
diff --git a/Source/WebKit/chromium/src/SpeechInputClientImpl.cpp b/Source/WebKit/chromium/src/SpeechInputClientImpl.cpp
index b5ed384..e481f6e 100644
--- a/Source/WebKit/chromium/src/SpeechInputClientImpl.cpp
+++ b/Source/WebKit/chromium/src/SpeechInputClientImpl.cpp
@@ -32,7 +32,9 @@
 #include "SpeechInputClientImpl.h"
 
 #include "PlatformString.h"
+#include "SecurityOrigin.h"
 #include "SpeechInputListener.h"
+#include "WebSecurityOrigin.h"
 #include "WebSpeechInputController.h"
 #include "WebString.h"
 #include "WebViewClient.h"
@@ -62,10 +64,10 @@ void SpeechInputClientImpl::setListener(WebCore::SpeechInputListener* listener)
     m_listener = listener;
 }
 
-bool SpeechInputClientImpl::startRecognition(int requestId, const WebCore::IntRect& elementRect, const AtomicString& language, const String& grammar)
+bool SpeechInputClientImpl::startRecognition(int requestId, const WebCore::IntRect& elementRect, const AtomicString& language, const String& grammar, WebCore::SecurityOrigin* origin)
 {
     ASSERT(m_listener);
-    return m_controller->startRecognition(requestId, elementRect, language, grammar);
+    return m_controller->startRecognition(requestId, elementRect, language, grammar, WebSecurityOrigin(origin));
 }
 
 void SpeechInputClientImpl::stopRecording(int requestId)
diff --git a/Source/WebKit/chromium/src/SpeechInputClientImpl.h b/Source/WebKit/chromium/src/SpeechInputClientImpl.h
index 520803a..a81151d 100644
--- a/Source/WebKit/chromium/src/SpeechInputClientImpl.h
+++ b/Source/WebKit/chromium/src/SpeechInputClientImpl.h
@@ -40,6 +40,7 @@
 #include <wtf/PassOwnPtr.h>
 
 namespace WebCore {
+class SecurityOrigin;
 class SpeechInputListener;
 }
 
@@ -57,7 +58,7 @@ public:
 
     // SpeechInputClient methods.
     void setListener(WebCore::SpeechInputListener*);
-    bool startRecognition(int requestId, const WebCore::IntRect& elementRect, const AtomicString& language, const String& grammar);
+    bool startRecognition(int requestId, const WebCore::IntRect& elementRect, const AtomicString& language, const String& grammar, WebCore::SecurityOrigin*);
     void stopRecording(int);
     void cancelRecognition(int);
 
diff --git a/Source/WebKit/chromium/src/WebGeolocationPermissionRequest.cpp b/Source/WebKit/chromium/src/WebGeolocationPermissionRequest.cpp
index 8d8c53e..53eca19 100644
--- a/Source/WebKit/chromium/src/WebGeolocationPermissionRequest.cpp
+++ b/Source/WebKit/chromium/src/WebGeolocationPermissionRequest.cpp
@@ -38,7 +38,7 @@ namespace WebKit {
 
 WebSecurityOrigin WebGeolocationPermissionRequest::securityOrigin() const
 {
-    return WebSecurityOrigin::create(m_private->frame()->document()->url());
+    return WebSecurityOrigin(m_private->frame()->document()->securityOrigin());
 }
 
 void WebGeolocationPermissionRequest::setIsAllowed(bool allowed)
diff --git a/Source/WebKit/chromium/src/WebSpeechInputControllerMockImpl.cpp b/Source/WebKit/chromium/src/WebSpeechInputControllerMockImpl.cpp
index 48f8b50..3beb785 100644
--- a/Source/WebKit/chromium/src/WebSpeechInputControllerMockImpl.cpp
+++ b/Source/WebKit/chromium/src/WebSpeechInputControllerMockImpl.cpp
@@ -32,8 +32,10 @@
 #include "WebSpeechInputControllerMockImpl.h"
 
 #include "PlatformString.h"
+#include "SecurityOrigin.h"
 #include "SpeechInputClientMock.h"
 #include "WebRect.h"
+#include "WebSecurityOrigin.h"
 
 namespace WebKit {
 
@@ -80,9 +82,9 @@ void WebSpeechInputControllerMockImpl::setRecognitionResult(int requestId, const
     m_listener->setRecognitionResult(requestId, result);
 }
 
-bool WebSpeechInputControllerMockImpl::startRecognition(int requestId, const WebRect& elementRect, const WebString& language, const WebString& grammar)
+bool WebSpeechInputControllerMockImpl::startRecognition(int requestId, const WebRect& elementRect, const WebString& language, const WebString& grammar, const WebSecurityOrigin& origin)
 {
-    return m_webcoreMock->startRecognition(requestId, elementRect, language, grammar);
+    return m_webcoreMock->startRecognition(requestId, elementRect, language, grammar, origin.get());
 }
 
 void WebSpeechInputControllerMockImpl::cancelRecognition(int requestId)
diff --git a/Source/WebKit/chromium/src/WebSpeechInputControllerMockImpl.h b/Source/WebKit/chromium/src/WebSpeechInputControllerMockImpl.h
index bf00ed0..4c8fee7 100644
--- a/Source/WebKit/chromium/src/WebSpeechInputControllerMockImpl.h
+++ b/Source/WebKit/chromium/src/WebSpeechInputControllerMockImpl.h
@@ -57,7 +57,7 @@ public:
     void setRecognitionResult(int requestId, const WebCore::SpeechInputResultArray& result);
 
     // WebSpeechInputController methods.
-    bool startRecognition(int requestId, const WebRect& elementRect, const WebString& language, const WebString& grammar);
+    bool startRecognition(int requestId, const WebRect& elementRect, const WebString& language, const WebString& grammar, const WebSecurityOrigin&);
     void cancelRecognition(int requestId);
     void stopRecording(int requestId);
 

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list