Bug 40925

Summary: Speech Input: Add a speech button to text input element (no rendering or actions yet)
Product: WebKit Reporter: Satish Sampath <satish>
Component: FormsAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: abarth, commit-queue, eric, jorlow, satish, tkent, webkit.review.bot
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Bug Depends on:    
Bug Blocks: 39485    
Attachments:
Description Flags
Patch
none
Addresses Kent & Jeremy's comments none

Description Satish Sampath 2010-06-21 09:30:13 PDT
This patch adds an '@speech' attribute to enable a speech button in <input> elements. The speech button is an inner element similar to the <input type='search'> element's clear button. A CSS pseudotype 'webkit-input-speech-button' in the UA style sheet is used to render the speech button (blank button for now).

All code changes are behind the speech input compile time flag (disabled by default).

More information about the speech input API proposal can be found in the following links:
 Parent bug: https://bugs.webkit.org/show_bug.cgi?id=39485
 Full API proposal: https://docs.google.com/View?id=dcfg79pz_5dhnp23f5
 Relevant discussions in the WHATWG list:
  - http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2010-May/026338.html
  - http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2010-June/026747.html
Comment 1 Satish Sampath 2010-06-21 10:04:51 PDT
Created attachment 59261 [details]
Patch

Patch
Comment 2 Jeremy Orlow 2010-06-22 07:48:52 PDT
Comment on attachment 59261 [details]
Patch

Drive by comment:

WebCore/rendering/TextControlInnerElements.cpp:322
 +      return new InputFieldSpeechButtonElement(document);
ADOPT REF!!!!!!!!!!!!!!!!

This will cause a memory leak.  Always remember to use adropRef with your ::create methods.
Comment 3 Kent Tamura 2010-06-22 08:33:57 PDT
Comment on attachment 59261 [details]
Patch

> @@ -1,5 +1,60 @@
>  2010-06-21  Satish Sampath  <satish@chromium.org>
>  
> +        Reviewed by NOBODY (OOPS!).

This form of ChangeLog diff makes a problem with commit queue.  Please change the date of the new ChangeLog entry.

WebCore/html/HTMLInputElement.cpp:2830
 +      /* FIXME: Enable the following as the renderers are updated to include speech UI.
Do not have commented-out code.


WebCore/html/HTMLInputElement.cpp:2842
 +      default:
Do not use "default" for inputType().
Comment 4 Satish Sampath 2010-06-22 08:57:51 PDT
Created attachment 59376 [details]
Addresses Kent & Jeremy's comments
Comment 5 Kent Tamura 2010-06-23 00:59:07 PDT
Comment on attachment 59376 [details]
Addresses Kent & Jeremy's comments

Looks OK.
Comment 6 Jeremy Orlow 2010-06-24 03:40:43 PDT
Comment on attachment 59376 [details]
Addresses Kent & Jeremy's comments

Clearing flags on attachment: 59376

Committed r61752: <http://trac.webkit.org/changeset/61752>
Comment 7 Jeremy Orlow 2010-06-24 03:40:53 PDT
All reviewed patches have been landed.  Closing bug.
Comment 8 WebKit Review Bot 2010-06-24 04:26:44 PDT
http://trac.webkit.org/changeset/61752 might have broken Chromium Mac Release