Open Bug 1901835 Opened 1 year ago Updated 3 months ago

Typing into search field on canadiantire.ca during pageload erases and rearranges keyboard input

Categories

(GeckoView :: IME, defect, P1)

All
Android
defect

Tracking

(Webcompat Score:8, Webcompat Priority:P1)

ASSIGNED
Webcompat Score 8
Webcompat Priority P1

People

(Reporter: mstange, Assigned: tcampbell)

References

(Blocks 1 open bug, )

Details

(Keywords: webcompat:platform-bug, webcompat:site-report, Whiteboard: [geckoview][fxdroid])

User Story

platform:android
impact:workflow-broken
configuration:general
affects:all
branch:release
diagnosis-team:dom
user-impact-score:800

Attachments

(1 file)

Attached video screen recording

Steps to reproduce:

  1. With your Android phone, try to find, as quickly as you can, a lawnmower on https://www.canadiantire.ca/ . Time is of the essence.
  2. Try to resist the temptation to chuck your phone into the nearest garbage can.

More seriously:

  1. Open a new tab in Firefox for Android.
  2. Go to https://www.canadiantire.ca/
  3. Wait for the search field to appear.
  4. Once the search field appears, quickly tap on it.
  5. As soon as the keyboard appears, immediately start writing the word "lawnmower".

Expected results:
The word "lawnmower" should be in the search field.

Actual results:
Random garbage appears in the searchfield. I've had the following results:

  • "ler"
  • "loer"
  • "wer"
  • "lowernmnlal" (no idea where the extra Ls came from)

See the attached screen recording to get a sense of the experience.

Makoto, do you know what might be going on here?

Flags: needinfo?(m_kato)
Severity: -- → S3
Priority: -- → P2

(In reply to [:owlish] 🦉 PST from comment #1)

Makoto, do you know what might be going on here?

I don't know, but we have to debug web site to investigate root cause. It depends on content script since this content has some event listener for input and keydown.

Component: General → IME
Flags: needinfo?(m_kato)

(In reply to Markus Stange [:mstange] from comment #0)

  1. Try to resist the temptation to chuck your phone into the nearest garbage can.

I love it. Good STR.

User Story: (updated)
Priority: P2 → P3

FWIW, someone from my coworking space approached me out of the blue to tell me how poor the canadiantire.ca experience is on Firefox for Android. He referenced text input.

Webcompat Priority: --- → P2

I'm looking at fixes for this now. There seem to be at least two things going on.

  1. The page updates HTMLInputElement.defaultValue on keydown events which causes the cursor to jump around leading to the reordering issue.
  2. The page also causes a bad interaction with GeckoView code for input/soft-keyboard and every key press causes the restartInput part of the Android OS keyboard process which burns CPU and causes event timeouts leading to the page losing letters.

Using Perfetto I can see the restartInput issue occurs on a variety of phones, although if the phone is fast enough the symptoms may not be visible. Comparing with Chrome I see no issues.

The other symptom I get for this page is the keyboard word suggests flash around a lot even if text input field has the right letters. I see some set of these symptoms on for other e-commerce sites (homedepot.ca usually acts up for me but not as severe) too.

Assignee: nobody → tcampbell
User Story: (updated)
Severity: S3 → S2
User Story: (updated)
Priority: P3 → P1
User Story: (updated)
Webcompat Priority: P2 → P1
Webcompat Score: --- → 8

I see that Ted is looking at this and is assigned to this bug. So I assume the DOM team doesn't need to look into this immediately? Please correct me if needed. Thanks!

Confirmed with Ted that this is a platform-bug

Whiteboard: [geckoview][fxdroid]
Status: NEW → ASSIGNED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: