<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Hello,<div class=""><br class=""></div><div class="">Could you review the fix for JDK 16, please?</div><div class=""><br class=""></div><div class=""><span class="Apple-tab-span" style="white-space: pre;">    </span>bug: <a href="https://bugs.openjdk.java.net/browse/JDK-8252470" class="">https://bugs.openjdk.java.net/browse/JDK-8252470</a></div><div class=""><span class="Apple-tab-span" style="white-space: pre;">      </span>webrev: <a href="http://cr.openjdk.java.net/~dmarkov/8252470/webrev.00/" class="">http://cr.openjdk.java.net/~dmarkov/8252470/webrev.00/</a></div><div class=""><br class=""></div><div class="">Problem description:</div><div class="">After integration of JDK-8232114 if an IME API is invoked from a DND call a hang may take place. </div><div class="">The DND operation runs on a toolkit thread. The IME functions should be executed on the toolkit thread, as well. So if, for example, the IME function is called from one of the methods of DropTargetListener the corresponding IME message will be blocked in the toolkit thread message queue because because the toolkit thread is busy executing DND operation.</div><div class=""><br class=""></div><div class="">Fix: </div><div class="">If DND operation is active then we shouldn’t post the IME messages to the toolkit thread queue and use SendMessage() function instead.</div><div class=""><br class=""></div><div class="">Regards,</div><div class="">Dmitry</div></body></html>