Closed Bug 590602 Opened 11 years ago Closed 11 years ago

Support input method changing in Fennec

Categories

(Firefox for Android Graveyard :: General, defect)

x86
Android
defect
Not set
normal

Tracking

(fennec2.0b3+)

VERIFIED FIXED
Tracking Status
fennec 2.0b3+ ---

People

(Reporter: ashah, Assigned: wesj)

References

Details

(Keywords: inputmethod, Whiteboard: [strings])

Attachments

(1 file, 2 obsolete files)

Right now, there is no way to change, from inside Fennec, the type of keyboard that I want to use.
It would be good if the user can choose different keyboards(input methods) from inside the Fennec browser. The way Android browser does it right now is to hold the tap on a text field to get a context menu, which gives you the option to choose your input method type. The way to test it right now is to use Swype on android.
tracking-fennec: --- → ?
Keywords: inputmethod
tracking-fennec: ? → 2.0b2+
Assignee: nobody → mbrubeck
Matt, we'll need a backend API to trigger the input method selection. Brad is looking/filing that
tracking-fennec: 2.0b2+ → 2.0+
Flags: in-litmus?
Duplicate of this bug: 602847
tracking-fennec: 2.0+ → 2.0b3+
No longer blocks: 609696
Depends on: 609696
Attached patch Patch v1 (obsolete) — Splinter Review
Oops. I'm stealing, but I needed to test. This applies on top of the patch in bug 609696. It doesn't make this work for chrome textboxes, but I figured that can be done in bug 585875.
Attached patch Patch v2 (obsolete) — Splinter Review
Updated to new input picker patch.
Attachment #488362 - Attachment is obsolete: true
reassigned since Wes is patching
Assignee: mbrubeck → wjohnston
Whiteboard: [strings]
Comment on attachment 488924 [details] [diff] [review]
Patch v2


>diff --git a/chrome/content/browser.xul b/chrome/content/browser.xul

>         <richlistbox id="context-commands" onclick="ContextHelper.hide();" flex="1">
>           <richlistitem class="context-command" id="context-copy" type="copy" onclick="ContextCommands.copy();">
>             <label value="&copy.label;"/>
>           </richlistitem>
>+#ifdef ANDROID
>+          <richlistitem class="context-command" id="context-select-input" type="textfield" onclick="ContextCommands.selectInput();">
>+            <label value="&inputMethod.label;"/>
>+          </richlistitem>
>+#endif

id="context-inputmethod" type="input-text"

When you unbitrot this patch, make sure this item ends up at the bottom of the context menu for textbox items

>diff --git a/chrome/content/content.js b/chrome/content/content.js

>+        if (elem instanceof HTMLInputElement && elem.mozIsTextField(true)) {
>+          state.types.push("textfield");
>+        }

Let not add this here. Instead just add "input-text" to the json.types here:

http://hg.mozilla.org/mobile-browser/rev/e634cc4a8c35#l1.19

This was added by Brubeck's copy/paste patch

>diff --git a/locales/en-US/chrome/browser.dtd b/locales/en-US/chrome/browser.dtd
>+<!ENTITY inputMethod.label           "Select Input Method">
>+
> <!ENTITY selectHelper.emptytext      "Filter List">
>\ No newline at end of file

Make sure we have blank lines at end of files

r-, but close
Attachment #488924 - Flags: review-
Attached patch Patch v3Splinter Review
Adds this for chrome textboxes. Will try to do content in bug 611741.
Attachment #488924 - Attachment is obsolete: true
Attachment #490153 - Flags: review?(mark.finkle)
Attachment #490153 - Flags: review?(mark.finkle) → review+
pushed:
http://hg.mozilla.org/mobile-browser/rev/8c498f19a152
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
verified FIXED on build:
Mozilla/5.0 (Android; Linux armv71; rv:2.0b8pre) Gecko/20101115 Namoroka/4.0b8pre Fennec/4.0b3pre
Status: RESOLVED → VERIFIED
Flags: in-testsuite?
Flags: in-litmus? → in-litmus?(ayanshah62)
https://litmus.mozilla.org/show_test.cgi?id=12692
Flags: in-litmus?(ayanshah62) → in-litmus+
You need to log in before you can comment on or make changes to this bug.