-
-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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
Fixed #583: Make sure IME input is forwarded #934
Conversation
Splitting each char up and sending individually is very inefficient, whilst I know it's currently required for Happy to expose |
@ralphmayr If you take a look at amaitland@999f6f3, it's just a rough working idea at the moment as I don't have |
Any ideas if there's a way to get the |
Thanks - I fully understand the concerns regarding making that handling the default for all users of ChromiumWebBrowser. I very much like the idea of exposing that via callbacks so that clients may decide how to handle that. |
On a slightly unrelated note, could you see if IME works properly with one of the WinForms example apps? As @amaitland said most of us don't know much about IME issues, let alone how to use one if we installed ourselves a VM that we added an IME to. Thanks, |
You are correct. ad56dbb Should fix make that available 😄 I've also changed the signature to take
Maybe we can even had some sort of |
@rassilon, I tried it out with the WinForms sample app that is included with the CefSharp source, and it works fine there.
@amaitland, I guess the nicest thing to do would be to expose SendKeyEvent on the ChromiumWebBrowser, and add the code that actually handles the IME stuff only to the WPF sample app. That way the change doesn't need to be made invasively in CefSharp but still anyone who is interested can see how to apply that to his app, right? |
Reverted changes from 77b433b and instead exposed SendKeyEvent in the ChromiumWebBrowser to be able to move the handler for OnPreviewTextInput to the WPF example.
Excellent, thanks! |
#901 can also fixed with this change. @ralphmayr did you get inplace editing in a WPF browser? the IME popup appears in the top left side of the screen and it's somewhat annoying. |
@Antonyo @ralphmayr I heared that Microsoft had abandoned Input Method Manager (IMM) from Windows 8, instead of it they use Text Services Framework (TSF). I don't know the "top left" problem because of CEF upsteam or the IME. Just provide some informations what I know. :) |
Hello, this fails if you use alt codes. The WM.CHAR is send to the source hook even if it´s handled previously in the OnPreviewTextInput event so inputted character is duplicated. You can recreate it by running the test WPF project, browsing to any input box (google for instance) and pressing an alt code, for instance alt+Num1 to see a duplicate ☺ Is there any chance to make the sourcehook method virtual so we can override or any other solution that prevents the hook to receive the CHAR message without a hacking. |
Feel free to submit a |
Thanks @amaitland , I already did. |
Applied the fix proposed in #583 to be able to use IME input with CefSharp