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

Composition Helper seems broken (macOS Sierra) #836

Closed
mofux opened this issue Aug 3, 2017 · 6 comments
Closed

Composition Helper seems broken (macOS Sierra) #836

mofux opened this issue Aug 3, 2017 · 6 comments
Labels
platform/macos type/bug Something is misbehaving

Comments

@mofux
Copy link
Contributor

mofux commented Aug 3, 2017

Details

  • Browser and browser version: Chrome 59
  • OS version: MacOS Sierra 10.12.6
  • xterm.js version: 2.9.0

Steps to reproduce

Open the xterm.js demo page, keep holding down the o key. The composition helper should pop up and show a list of characters to select - instead nothing is shown. Still, using the arrow keys seems to toggle through the (invisible) composition popup and displays the selected character at the cursor position. When confirming the selection with enter, nothing happens. The same behaviour happens in Firefox, although sometimes the character is inserted on enter.

composition

Troubleshooting

Part of the problem is that the textarea is rendered off-screen (left: -9999em) initially.
We wait for the compositionstart event, then we move the textarea to the cursor position - but as it seems, the compositionstart event is fired after MacOS draws the composition popup and only once a character is selected in the popup, causing it to render somewhere offscreen.

@Tyriar @parisk do you experience the same problem? Does this also happen on other platforms?

@Tyriar
Copy link
Member

Tyriar commented Aug 4, 2017

I've suspected it's been broken for a while, haven't tested though. Things break when browsers update unfortunately 🙁

@mofux
Copy link
Contributor Author

mofux commented Aug 4, 2017

Mmmmh... I actually wanted to try myself on a PR for #265 - which made me come across this issue. Terminal.app does not show the composition dialog at all, probably in favour of printing sequential characters, and I wonder if we shouldn't do the same. However, I'm concerned breaking the IME input. Unfortunately I don't know how to test IME composition.

@Tyriar Do you know of a way to test IME input on the Mac, like inserting some Chinese characters?

@Tyriar
Copy link
Member

Tyriar commented Aug 4, 2017

It's a bit of an involved process, particularly if you aren't familiar with the input methods. I typically test Chinese, Japanese and Korean as they all have different input styles, and then you need to test them all in various browsers. To add them you need to add the input method to the OS, I would need to google how to do it on Mac.

I wouldn't expect #265 to be related to this though, I thought that one was to do with moving over to the input even for input tracking?

@mofux
Copy link
Contributor Author

mofux commented Aug 4, 2017 via email

@Tyriar Tyriar added type/bug Something is misbehaving platform/macos labels Jun 3, 2018
@Tyriar
Copy link
Member

Tyriar commented Oct 7, 2019

I believe this is fixed

@Tyriar Tyriar closed this as completed Oct 7, 2019
@mofux
Copy link
Contributor Author

mofux commented Oct 7, 2019

Yes. We ignore this kind of composition and repeat the original character instead - which is what Terminal.app is doing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
platform/macos type/bug Something is misbehaving
Projects
None yet
Development

No branches or pull requests

2 participants