quill icon indicating copy to clipboard operation
quill copied to clipboard

android: 'text-change' event not firing until much much later, unless you press new line, space or period (only on g-board)

Open joshoconnor89 opened this issue 2 years ago • 10 comments

Steps for Reproduction

  1. Use android emulator
  2. add 'text-change' callback:
quill.on("text-change", () => {
  callContentCallback({
    content: JSON.stringify(quill.getContents()),
    source: null,
  });
  getTextCallback({
    content: JSON.stringify(quill.getText()),
    source: null,
  });
});
  1. being typing, notice text-change does not get fired
  2. HOWEVER, when tapping new line, period, or space, text-change WILL fire.

**UPDATE:

  • 'text-change' does fire when typing letters, but ONLY if you type, and wait 5-10 seconds. its EXTREMELY SLOW. however, its instant when tapping a period, new line, or space.

**UPDATE #2 -Looks like it happens only with g-board third party keyboard, with the samsung keyboard it works great

Expected behavior: -Text change event should be called everytime a user inputs text

Actual behavior: -nothing happens

Platforms: -android

Include browser, operating system and respective versions

joshoconnor89 avatar Aug 30 '21 22:08 joshoconnor89

So, there are zero any resolution about this? I'm getting same bug when using it in chrome. Exactly same.

gravataLonga avatar Nov 16 '22 18:11 gravataLonga

I'm also getting this issue.

kaycbas avatar Dec 13 '22 18:12 kaycbas

+1

xsonic avatar Dec 23 '22 08:12 xsonic

+1

Suryasai130499 avatar Feb 01 '23 20:02 Suryasai130499

No resolution? Just a curioso note, this isn't happening only in android emulator. It can happen in normal browser like Chrome.

gravataLonga avatar Feb 09 '23 12:02 gravataLonga

Probably related with this issue: #3633

gravataLonga avatar Mar 04 '23 11:03 gravataLonga

I'm facing the same issue and this is only reproducible on Android. Chrome and Samsung Internet are both reproducing the same bug. It only happens when the editor is empty. If you fill programmatically the editor instance with some content, it works as expected.

pedrovgs avatar Jul 11 '23 11:07 pedrovgs

I've found a workaround for this. Handling the virtual keyboard manually. If you configure quill to manage the virtual keyboard manually, then the bug is not reproduced anymore. However, you'll have to handle the keyboard by yourself and the hide function doesn't work. I reported this bug to google already.

    const quillRoot = editor.root;
    quillRoot.setAttribute("virtualkeyboardpolicy", "manual");

pedrovgs avatar Jul 19 '23 08:07 pedrovgs

Keep in mind if you configure virtualkeyboardpolicy to manual, due to a bug in chromium only English virtual keyboard will work 😢

pedrovgs avatar Aug 01 '23 12:08 pedrovgs

@pedrovgs did you manage to find another workaround for this? I'm experiencing the same issue :/

dr-zr avatar Mar 13 '24 13:03 dr-zr