Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OC: Text-to-emoji (Jul 15) #3249

Closed
compulim opened this issue Jun 12, 2020 · 5 comments
Closed

OC: Text-to-emoji (Jul 15) #3249

compulim opened this issue Jun 12, 2020 · 5 comments
Assignees
Labels
external-omnichannel p0 Must Fix. Release-blocker

Comments

@compulim
Copy link
Contributor

compulim commented Jun 12, 2020

Description

Convert :) into 😀 while typing (a.k.a. on-the-fly).

Investigations

  • Find out what common native/web apps on the market support this feature
    • Include 1-2 Microsoft products (no more than 40% of the scenarios we studied)
    • Include 3-5 products in total
  • Document out how they behave
    • How to undo the automatic emoji conversion?
      • CTRL + Z
      • BKSP
    • How they works when copy-and-pasting :) into the box?
    • How they behave in gray areas (when emoji conversion should be disabled)?
      • Do they requires spaces around the emoji?
        • Type ABC:), will they convert to "ABC😀", or does it requires a space between C and :?
    • What emoji text do they support?
      • E.g. do they support :) and (: at the same time?

Goals

  • Support CTRL + Z for undo
    • Try to use OS undo capability as much as possible, otherwise, we might conflict
    • Verify if other apps also support using BKSP key to undo
    • Test:
      1. Focus on the text box, type :), it converted to 😀
      2. Blur the focus
      3. Focus on the text box again, press CTRL + Z, it should undo
  • Need to make sure we don't convert unneeded :)
    • Verify behavior from other apps to see what scenario we should not convert
    • Type/paste stream.forEach(System.out::println);, it should not convert ::println into :😋rintln
  • Options
    • Disable this feature (either by a flag, or emptying out the conversion table)
    • Override the emoji conversion table
  • We should only ship culture neutral emojis
  • Make sure the work is componentized and can be carried forward when we implement Design: Switching input mode #2211
  • Make sure it works with both <input> and <textarea> (we have two controls today)
  • Sample
    • E.g. type spa, it convert to ♨
      • The word is chosen instead of symbols, because we want to see how the feature behave in words, like space, spatula or asparagus

Non-goals

  • Emoji panel
    • OS already provided an emoji panel
  • Any overlapping panel to select emojis
  • Turning our text box into contenteditable box
  • Only support OS-based Unicode emojis
    • Non-Unicode emojis requires us to turn the text box into contenteditable box
@compulim compulim added the R10 label Jun 12, 2020
@corinagum corinagum self-assigned this Jun 12, 2020
@compulim compulim changed the title IC3: Text-to-emoji IC3: Text-to-emoji (Jul 15) Jun 12, 2020
@corinagum corinagum added the needs-repro Waiting for repro or investigation label Jun 12, 2020
@corinagum
Copy link
Contributor

Need to consider the fact that Ctrl Z would not be available for mobile, therefore backspace may make more sense. I'll start data collecting

@corinagum
Copy link
Contributor

corinagum commented Jun 16, 2020

Updated with Web Chat behavior on 7/13

🌟 Web Chat Teams Skype Slack WhatsApp Messenger
Undo autocorrect N/A Ctrl + Z (buggy) No Ctrl + Delete; Deletes emoji or shows text Backspace No
Copy/Paste Yes No Converts after send Yes No Converts after send
Undo after blur N/A Yes N/A (converts after send) Deletes emoji Yes No
:) Yes Yes Yes converts to :) emoji No (:-)) Yes
(: Yes No No Yes No converts to :) emoji
spaces required? No No No Yes No Yes
Disable feature Yes (disabled by default) No No No No No
Add list of own emoji Yes No No Yes No No

@corinagum
Copy link
Contributor

Base emoji autocorrect set will be based off the following list: https://support.microsoft.com/en-us/office/autocorrect-emojis-in-documents-and-email-601cad94-1a54-41e2-8cf8-4b09a6eadfe1

Confirmed with IC3 team

@compulim
Copy link
Contributor Author

Added clarifications above, copied here:

  • How they behave in gray areas (when emoji conversion should be disabled)?
    • Do they requires spaces around the emoji?
      • Type ABC:), will they convert to "ABC😀", or does it requires a space between C and :?
  • Need to make sure we don't convert unneeded :)
    • Verify behavior from other apps to see what scenario we should not convert
    • Type/paste stream.forEach(System.out::println);, it should not convert ::println into :😋rintln

@compulim compulim changed the title IC3: Text-to-emoji (Jul 15) OC: Text-to-emoji (Jul 15) Jul 8, 2020
@corinagum
Copy link
Contributor

corinagum commented Jul 13, 2020

Note on accessibility:

Chrome/NVDA Edge/Narrator Chrome/Narrator
hi
hi[space]
:)
:)[space]
[C&P]hi
[C&P]hi[space]
[C&P]:)[space]
[Emoji panel]:) (all combos read on selection in panel)

File issue: nvaccess/nvda#11372

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
external-omnichannel p0 Must Fix. Release-blocker
Projects
None yet
Development

No branches or pull requests

3 participants