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

Spelling marks showed as two distinct characters ("aáaâaä") #3450

Closed
2 tasks done
RafaelLinux opened this issue Aug 18, 2022 · 6 comments
Closed
2 tasks done

Spelling marks showed as two distinct characters ("aáaâaä") #3450

RafaelLinux opened this issue Aug 18, 2022 · 6 comments

Comments

@RafaelLinux
Copy link

  • I have read the FAQ.
  • I have searched in existing issues.

Environment

  • OS: [e.g. Debian, Windows, macOS...]
  • scrcpy version: 1.24
  • installation method: RPM
  • device model: Samsung S20 FE
  • Android version: 10

Describe the bug
Letters containing auxiliary spelling marks (', ¨ , ^ ) appear incorrectly in Android screen after typing them from the computer. If the user types "áâä" on the computer, "aáaâaä" appears on the screen of the Android device.

Please paste terminal output in a code block.
@rom1v
Copy link
Collaborator

rom1v commented Aug 18, 2022

Use scrcpy --prefer-text.

@RafaelLinux
Copy link
Author

Oh, sorry. I didn't search for "latin accents" so this is clearly a duplicate issue (#650 (comment))

Thank you for info.

I expect this will be fixed when you have time.

Your application is AWESOME, THANK YOU

@rom1v
Copy link
Collaborator

rom1v commented Aug 19, 2022

I expect this will be fixed when you have time.

There is no "bug", just use scrcpy --prefer-text to get the behavior you want.

@RafaelLinux
Copy link
Author

But I think that's a workaround, cause it's not an option, it is a required parameter for non English (American SCII) local language users, despite really is an issue caused by how Android works.

@rom1v
Copy link
Collaborator

rom1v commented Aug 19, 2022

The problem is that with input event injection, there is no "one-size-fits-all" solution:

Concretely, if I press a, do we want to inject a key event "A pressed" then "A released", or the text "a"? It depends:

  • if I am playing a game, I want the key events, so that WASD work correctly: we must preserve the time when the key is pressed and the time when it is released;
  • if I am typing text, I want text events, so that typing ^ then a sends â (the combination does not necessarily works the same on the client and the mirrored device).

For letters and space, the default behavior in scrcpy is to send key events, as injecting keys for letters or space generate the correct text in most cases, and does not break WASD (or other shortcuts) in games. However, this breaks accented characters for example: for example ^ + e generates (e due to the key pressed/release and ê due to the text event). Therefore, scrpcy has a flag (--prefer-text), which makes it work correctly for accented characters, but breaks the expected WASD behavior.

@RafaelLinux
Copy link
Author

RafaelLinux commented Aug 22, 2022 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants