the fix looks good to me too.

--
Thanks,
Alexander.

On 23.04.2015 20:32, Sergey Bylokhov wrote:
Hi, Andrew.
The fix looks find.

On 17.04.15 12:31, Andrew Brygin wrote:
Hello,

 could you please review a fix for CR 8076455?

Bug: https://bugs.openjdk.java.net/browse/JDK-8076455
Webrev: http://cr.openjdk.java.net/~bae/8076455/9/webrev.00/

 The problem with position of IME candidate window is caused by
 incorrect calculation of relative coordinates which are supplied
 to ImmSetCandidateWindow() routine: even in the case of lightweight
 components we are translating the screen coordinates of desired
 position relatively to the frame location, whereas it has to be
 done relatively to upper left corner of the client area.
 As a result, we have got IME candidate window shifted to right
 and bottom.

 For a case when a lightweight component is inserted into a heavyweight
 container the result is even worse, because we are calculate the
 candidate window position relatively to the heavyweight container
 position, but process IME messages in a toplevel frame, what makes
 these relative coordinates completely wrong.

 Suggested solution is to use screen coordinates of a toplevel frame
 in order to get relative position of IME candidate window.

 A simplified test case that demonstrates the problem is attached to
 the bug record:
 https://bugs.openjdk.java.net/secure/attachment/27224/SimpleTest.java

 Here is no automated regression test, because it requires a system
 with configured IM.

 Please take a look.

Thanks,
Andrew.



Reply via email to