Closed Bug 1207083 (sms-rich-paste-composer) Opened 9 years ago Closed 8 years ago

[Messages] Support rich paste functionality in SMS/MMS composer

Categories

(Firefox OS Graveyard :: Gaia::SMS, defect)

ARM
Gonk (Firefox OS)
defect
Not set
major

Tracking

(b2g-v2.2 unaffected, b2g-v2.5 fixed, b2g-master affected)

RESOLVED WONTFIX
Tracking Status
b2g-v2.2 --- unaffected
b2g-v2.5 --- fixed
b2g-master --- affected

People

(Reporter: lixia, Unassigned)

References

Details

(Keywords: regression, Whiteboard: [2.5-aries-test-run-2])

Attachments

(5 files)

[1.Description]: [Aries KK v2.5][Flame KK v2.5]Copying multiple lines of text from message and pasting them to message's input box, then deleting them, the cursor shows at wrong positon as it shifted to top of message input box. Found at: 16:55 Attach: logcat_1655.txt, Aries_v2.5.png and Cursor_Aries_v2.5.3gp [2.Testing Steps]: 1. Send out or receive a SMS/MMS with multiple lines of text. 2. Long tap the multiple lines of text and select text. 3. Copy them to message input box, or copy to other message's input box. 4. Delete all text. [3.Expected Result]: 4. The cursor shows at correct position in message input box. [4.Actual Result]: 4. The cursor shows at wrong positon as it shifted to the top of message input box. [5.Reproduction build]: Device: Flame KK 2.2 (Unaffected) Build ID 20150921032501 Gaia Revision 95950c9d48ad2fc2da7686c2b133b750a99cd3da Gaia Date 2015-09-18 09:55:13 Gecko Revision https://hg.mozilla.org/releases/mozilla-b2g37_v2_2/rev/9644c82a5b88 Gecko Version 37.0 Device Name flame Firmware(Release) 4.4.2 Firmware(Incremental) eng.cltbld.20150921.070345 Firmware Date Mon Sep 21 07:03:54 EDT 2015 Firmware Version v18D v4 Bootloader L1TC000118D0 Device: Flame KK 2.5 (Affected) Build ID 20150921073455 Gaia Revision 2d370fa35c1a0ee2a637e3772c0843586a5f96c9 Gaia Date 2015-09-21 02:41:31 Gecko Revision https://hg.mozilla.org/mozilla- central/rev/039a8490891595736b16a3ccb17f025f4dcf13eb Gecko Version 44.0a1 Device Name flame Firmware(Release) 4.4.2 Firmware(Incremental) eng.cltbld.20150921.112037 Firmware Date Mon Sep 21 11:20:52 EDT 2015 Firmware Version v18D v4 Bootloader L1TC000118D0 Device: Aries KK 2.5 (Affected) Build ID 20150921174442 Gaia Revision 29991414eb94b6baa1ec2e63fdb4f6dfae05fb01 Gaia Date 2015-09-21 09:27:10 Gecko Revision https://hg.mozilla.org/mozilla- central/rev/197af2fb7e29ff8e4b3b6ced723b6172e954e17d Gecko Version 44.0a1 Device Name aries Firmware(Release) 4.4.2 Firmware(Incremental) eng.worker.20150921.170449 Firmware Date Mon Sep 21 17:04:57 UTC 2015 Bootloader s1 [6.Reproduction Frequency]: Always Recurrence,5/5 [7.TCID]: Free Test
Attached image Aries_v2.5.png (deleted) —
Attached file logcat_1655.txt (deleted) —
Attached video Cursor_Aries_v2.5.3gp (deleted) —
Keywords: regression
Hi Gerry, Could you help to dispatch the bug? thanks. ^^
Flags: needinfo?(gchang)
Mozilla-inbound Regression Window: Last Working Environmental Variables: Device: Flame KK 2.5 Build ID 20150823122240 Gaia Revision f6cde6b8a2af2d2cfa3ce9b7f4cda2daab9174a8 Gaia Date 2015-08-21 10:08:34 Gecko Revision https://hg.mozilla.org/integration/mozilla-inbound/rev/23649438b3bbebbefc20f0cfe30684672331e82b Gecko Version 43.0a1 Device Name flame Firmware(Release) 4.4.2 Firmware(Incremental) eng.cltbld.20150822.182920 Firmware Date Sat Aug 22 18:29:32 EDT 2015 Firmware Version v18D v4 Bootloader L1TC000118D0 First Broken Environmental Variables: Device: Flame KK 2.5 Build ID 20150823142042 Gaia Revision cddb9f610cbe03d0ca39d81bbdce46a0fca841ab Gaia Date 2015-08-23 03:34:38 Gecko Revision https://hg.mozilla.org/integration/mozilla-inbound/rev/4ccdd06e51d7209ba429196df7cab97bf66962db Gecko Version 43.0a1 Device Name flame Firmware(Release) 4.4.2 Firmware(Incremental) eng.cltbld.20150822.182920 Firmware Date Sat Aug 22 18:29:32 EDT 2015 Firmware Version v18D v4 Bootloader L1TC000118D0 First Broken Gaia & Last Working Gecko - issue DOES NOT repro Gaia Revision cddb9f610cbe03d0ca39d81bbdce46a0fca841ab Gecko Revision 23649438b3bbebbefc20f0cfe30684672331e82b First Broken Gecko & Last Working Gaia - issue DOES repro Gaia Revision f6cde6b8a2af2d2cfa3ce9b7f4cda2daab9174a8 Gecko Revision 4ccdd06e51d7209ba429196df7cab97bf66962db Gecko pushlog: http://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=23649438b3bbebbefc20f0cfe30684672331e82b&tochange=4ccdd06e51d7209ba429196df7cab97bf66962db
QA Whiteboard: [MGSEI-Triage+]
Hi Fred, Can you help to dispatch this to right owner? It's kind of bad user experience.
Flags: needinfo?(gchang) → needinfo?(gasolin)
TingYu could you help check this?
Flags: needinfo?(tlin)
Boris, I found that if the message is "abc", the copied content in comment #0 step 2 will be <p class="message-content-body" tabindex="-1">abc</p>. Is this related to your rich text clipboard feature that makes it copy the html? Your changes are in the pushlog.
Flags: needinfo?(tlin)
Flags: needinfo?(gasolin)
Flags: needinfo?(boris.chiou)
Component: Gaia::System::Input Mgmt → Gaia::SMS
Clearly the SMS app doesn't support paste with something other than text... If this happens I'm sure everything will break in several locations, and I would appreciate to be notified in advance so that we can schedule the needed work... Definitely I'd like that this does not happen in 2.5. Is it possible to have a opt-in or opt-out ?
(In reply to Shally Li, OOO till Oct. 8th from comment #5) > Mozilla-inbound Regression Window: > > > Gecko pushlog: > http://hg.mozilla.org/integration/mozilla-inbound/ > pushloghtml?fromchange=23649438b3bbebbefc20f0cfe30684672331e82b&tochange=4ccd > d06e51d7209ba429196df7cab97bf66962db Hi, Shally, Does it happen on the other text fields (e.g., contact app)?
Flags: needinfo?(lixia)
(In reply to Ting-Yu Lin [:TYLin] (UTC+8) from comment #8) > Boris, > > I found that if the message is "abc", the copied content in comment #0 step > 2 will be <p class="message-content-body" tabindex="-1">abc</p>. Is this > related to your rich text clipboard feature that makes it copy the html? > Your changes are in the pushlog. Yes, so I filed a bug (Bug 1210265) to add a pref which can disable rich text clipboard feature on b2g.
Flags: needinfo?(boris.chiou)
Hi Willian, This bug can't be repro in other apps (ex: Contacts, Email app), the cursor shows normally when copying the lines text to other text fields and then deleting it. And if you copy the lines text from email and paste it into message app, this bug also can be repro. Please see video "Email&contactApp.3gp". Thanks.
Flags: needinfo?(lixia) → needinfo?(whsu)
Attached video Email&contactApp.3gp (deleted) —
Testing build: Device: Flame KK 2.5 Build ID 20151007150205 Gaia Revision b99837aa2294348317bcae68acabe71d9a83d774 Gaia Date 2015-10-07 13:04:16 Gecko Revision https://hg.mozilla.org/mozilla-central/rev/1e1fa696e2b626ead6817b7c5bd871fec5d5ab5a Gecko Version 44.0a1 Device Name flame Firmware(Release) 4.4.2 Firmware(Incremental) eng.cltbld.20151007.183338 Firmware Date Wed Oct 7 18:33:51 EDT 2015 Firmware Version v18D v4 Bootloader L1TC000118D0 ----------------------------------------------------- Note: There is no latest Aries KK build for testing on other apps today, so I only investigate it on latest Flame KK build.
(In reply to Shally Li from comment #13) > Hi Willian, > > This bug can't be repro in other apps (ex: Contacts, Email app), the > cursor shows normally when copying the lines text to other text fields and > then deleting it. And if you copy the lines text from email and paste it > into message app, this bug also can be repro. Please see video > "Email&contactApp.3gp". Thanks. No more question. Thank you.
Flags: needinfo?(whsu)
(In reply to Shally Li from comment #14) > Note: > There is no latest Aries KK build for testing on other apps today, so I only > investigate it on latest Flame KK build. I check other apps (ex: Contacts, Email app) on latest Aires KK v2.5, the cursor also shows normally in Contacts/Email app corresponding to the results of comment 13. Testing build: Device: Aries KK 2.5 Build ID 20151010002512 Gaia Revision 74b0d4b17f39d238a7997800bd9363d3c60f20c3 Gaia Date 2015-10-09 19:27:39 Gecko Revision https://hg.mozilla.org/mozilla-central/rev/d1bb0de19476541cd517ab14017e7fedbd9f13e3 Gecko Version 44.0a1 Device Name aries Firmware(Release) 4.4.2 Firmware(Incremental) eng.worker.20151009.234251 Firmware Date Fri Oct 9 23:42:59 UTC 2015 Bootloader s1
[Blocking Requested - why for this release]: Seeing the cursos misplaced gives a really bad user experience
blocking-b2g: --- → 2.5?
Triage meeting: blocking. Looks like a gecko issue, Julien can you find someone to take a look?
blocking-b2g: 2.5? → 2.5+
Flags: needinfo?(felash)
Hey Boris, I think it's the same root cause than bug 1224045. Will you please have a look ? Here I especially notice the white space at the left of the paste :)
blocking-b2g: 2.5+ → 2.5?
Flags: needinfo?(felash) → needinfo?(boris.chiou)
(In reply to Julien Wajsberg [:julienw] from comment #19) > Hey Boris, I think it's the same root cause than bug 1224045. Will you > please have a look ? > > Here I especially notice the white space at the left of the paste :) Sure. It's time to disable rich text on 2.5 branch by Bug 1212188.
Depends on: 1212188
Assignee: nobody → boris.chiou
Boris, we'll need to eventually handle this on master as well. When will we have the API to handle the paste operation programmatically ? Another possible solution (?) is to use an attribute on the contenteditable element, like `moz-paste-behavior="text-only"`...
Flags: needinfo?(boris.chiou)
blocking-b2g: 2.5? → 2.6?
For 2.5 this should be fixed once bug 1212188 lands. Keeping this bug open to track it on master
(In reply to Julien Wajsberg [:julienw] from comment #22) > Boris, we'll need to eventually handle this on master as well. When will we > have the API to handle the paste operation programmatically ? > > Another possible solution (?) is to use an attribute on the contenteditable > element, like `moz-paste-behavior="text-only"`... Thanks for your suggestion. Actually, I'm not familiar the implementation in our SMS app, but maybe we can do something like this by clipboard API [1] (section 7.1.3): document.addEventListener('paste', function(e){ if(e.clipboardData.types.indexOf('text/html') > -1){ processDataFromClipboard(e.clipboardData.getData('text/html')); e.preventDefault(); // We are already handling the data from the clipboard, we do not want it inserted into the document } }); By this clipboard API, we can file a paste event to handle this. Just replace the MIME type, "text/html", with "text/plain" in the above example, so we only paste “plain text" in a specific content-editable division. I think we already support getData() in mozilla-central, but I'm not sure how many things we have to do to handle this case by this clipboard API. [1] 7.1.3 in http://www.w3.org/TR/clipboard-apis/
Flags: needinfo?(boris.chiou)
Boris, is this already implemented in Gecko ? If yes we should definitely do this. I'm still concerned that 3rd-party apps (or websites) will need to do this to work properly. I wonder if we could not do text-only paste in some situations...
(In reply to Julien Wajsberg [:julienw] from comment #25) > Boris, is this already implemented in Gecko ? If yes we should definitely do > this. > > I'm still concerned that 3rd-party apps (or websites) will need to do this > to work properly. I wonder if we could not do text-only paste in some > situations... We can listen the "paste" event on Gecko now, and I think we had implemented event.clipboardData.getData(MIME type) in gecko (B2G) already. (if not, it's a bug.) There are some mochitests using this API to test copy&paste feature. However, clipboardData is a read-only object, so you can use getData(), but cannot call setData() if you don't have the chrome privilege. Therefore, for those apps who need specific content-editable, they may have to prevent the default behaviors and just use getData('text/plain') or getData('text/unicode') to get the plain text, and then put them in the division. (I am not sure if there are other better ways to handle this, but this could be a useful work-around way.) Thanks.
Bug 1212188 is already resolved-fixed. This bug should be fixed for 2.5, adding qawanted to check. Thanks! For master lets keep this bug open.
Keywords: qawanted
This bug has been verified as "pass" on the latest build of Flame v2.5 and Aries KK v2.5 by the STR in comment 0. Actual results: After deleting the pasted lines text, the cursor shows at correct position in message input box. See attachment: verify_Flame_v2.5.3gp Reproduce rate: 0/10 Device: Aries KK 2.5 user build (Pass) Build ID 20151119010651 Gaia Revision 28d63cf3bdc4417f7ad8cab2230f096bf9f6d3b5 Gaia Date 2015-11-17 07:35:12 Gecko Revision http://hg.mozilla.org/releases/mozilla-b2g44_v2_5/rev/afcf8a4b4cf310edd0e442fa80506d5cce291666 Gecko Version 44.0a2 Device Name aries Firmware(Release) 4.4.2 Firmware(Incremental) eng.worker.20151119.001315 Firmware Date Thu Nov 19 00:13:23 UTC 2015 Bootloader s1 Device: Flame KK 2.5 512mb user build (Pass) Build ID 20151119010236 Gaia Revision 28d63cf3bdc4417f7ad8cab2230f096bf9f6d3b5 Gaia Date 2015-11-17 07:35:12 Gecko Revision http://hg.mozilla.org/releases/mozilla-b2g44_v2_5/rev/afcf8a4b4cf310edd0e442fa80506d5cce291666 Gecko Version 44.0a2 Device Name flame Firmware(Release) 4.4.2 Firmware(Incremental) eng.worker.20151119.001411 Firmware Date Thu Nov 19 00:14:20 UTC 2015 Firmware Version v18D v4 Bootloader L1TC000118D0
Attached video verify_Flame_v2.5.3gp (deleted) —
Must be fixed in 2.6
blocking-b2g: 2.6? → 2.6+
Assignee: boris.chiou → nobody
Remove the original assignee (me) because I think SMS developers is more suitable to fix this bug than me.
Priority: -- → P1
Summary: The cursor shows at wrong positon as it shifted to the top of message input box. → Support rich paste functionality in SMS
Alias: sms-rich-paste-composer
Summary: Support rich paste functionality in SMS → [Messages] Support rich paste functionality in SMS/MMS composer
It is a new feature to message app, should we classify it as p1 bug?
Flags: needinfo?(irios.mozilla)
Hi Steve, We agreed that priority during the triage. Why we set that priority is because this future was finally disabled in 2.5 due to the bugs and limitations at that point. But for 2.6 in principle this should be implemented. So far there are many bugs related to this open and having in mind that 2.6 is meant to be a quality release, we agreed to set that priority in order to have it working correctly and the related bugs fixed. Do you agree on that? Thanks!
Flags: needinfo?(irios.mozilla)
Isabel, the alternative is to disable the rich paste functionality, like we did in 2.5. I think this should be a product decision in the end...
Flags: needinfo?(irios.mozilla)
Julien, agree...Andrea (product) was also in the triage, but lets ping him to confirm about having the feature in 2.6 or not.
Flags: needinfo?(irios.mozilla) → needinfo?(aaime)
Rather than disable the rich paste functionality, I would recommend at this stage to keep the functionality for 2.6 and fix the bug. If we will come to a condition closer to 2.6 release and we will still feel this feature having an adverse impact to quality then we can revisit the status of it at a later stage of the program.
Flags: needinfo?(aaime)
blocking-b2g: 2.6+ → ---
Priority: P1 → --
Mass closing of Gaia::SMS bugs. End of an era :(
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → WONTFIX
Mass closing of Gaia::SMS bugs. End of an era :(
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: