Closed Bug 1672269 Opened 1 month ago Closed 1 month ago

[Bug] Attempting to select text in Thai script fails on Android and makes Fenix unable to load new pages

Categories

(GeckoView :: General, defect, P1)

Unspecified
Android

Tracking

(firefox82 wontfix, firefox83 fixed, firefox84 fixed)

RESOLVED FIXED
84 Branch
Tracking Status
firefox82 --- wontfix
firefox83 --- fixed
firefox84 --- fixed

People

(Reporter: kbrosnan, Assigned: m_kato)

References

(Regression)

Details

(Keywords: regression, Whiteboard: [geckoview:m84])

Attachments

(1 file)

From github: https://github.com/mozilla-mobile/fenix/issues/16037.

Steps to reproduce

  1. Open any web site with Thai characters, for example https://th.wikipedia.org/
  2. Long tap on any Thai text, as if you wanted to select some text.

Expected behavior

Some text is being selected.

Actual behavior

  1. No text is being selected by the long tap.
  2. No text, not even with latin script, can be selected any more.
  3. Loading a page in new tabs will do nothing at all.

Device information

  • Android device: Xiaomi Mi A2 Lite, Android 10, last system update 2020-09-01
  • Fenix version: 81.1.4 (Build #2015768387), reproducible with today's nightly build (from Google Play Store)

Change performed by the Move to Bugzilla add-on.

I can reproduce this in Fenix, Reference Browser and GVE. It leaves the browser in a completely unusable state.

2020-10-20 14:14:31.904 1518-24163/? E/ActivityManager: ANR in org.mozilla.geckoview_example (org.mozilla.geckoview_example/.GeckoViewActivity)
    PID: 23846
    Reason: Input dispatching timed out (ActivityRecord{b10b305 u0 org.mozilla.geckoview_example/.GeckoViewActivity t22366} does not have a focused window)
    Parent: org.mozilla.geckoview_example/.GeckoViewActivity
Whiteboard: regre
Whiteboard: regre

Long tap will select word and word breaker code uses line breaker code on Gecko. This may be related to bug 1553725 if this isn't regression.

Assignee: nobody → m_kato
Regressed by: 425915

After landing bug 425915, we use NextWord instead of BreakInBetween.
NextWord is possible to return empty string (offset equals to current
position). So it shouldn't return empty string.

Priority: -- → P1
Whiteboard: [geckoview:m84]
Pushed by m_kato@ga2.so-net.ne.jp:
https://hg.mozilla.org/integration/autoland/rev/9db05d39d89b
NextWord shouldn't return empty. r=jfkthame
Status: NEW → RESOLVED
Closed: 1 month ago
Resolution: --- → FIXED
Target Milestone: --- → 84 Branch

Comment on attachment 9182862 [details]
Bug 1672269 - NextWord shouldn't return empty. r=jfkthame

Beta/Release Uplift Approval Request

  • User impact if declined: When user long-taps Thai language text on Fenix, Fenix hangs up.
  • Is this code covered by automated tests?: Yes
  • Has the fix been verified in Nightly?: Yes
  • Needs manual test from QE?: No
  • If yes, steps to reproduce:
  • List of other uplifts needed: None
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): Bug 425915 changes word segmentation for East Asia language. When this occurs, we may select empty text. So we should select 1 character at least instead when selecting word.
  • String changes made/needed: No
Attachment #9182862 - Flags: approval-mozilla-beta?

Comment on attachment 9182862 [details]
Bug 1672269 - NextWord shouldn't return empty. r=jfkthame

Severe bug for Thai users makes Fenix unusable for them, approved for 83 beta 4, thanks.

Attachment #9182862 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
You need to log in before you can comment on or make changes to this bug.