< prev index next >

src/java.desktop/share/classes/sun/awt/im/InputContext.java

Print this page

        

@@ -545,10 +545,12 @@
                 endComposition();
                 deactivateInputMethod(false);
                 if (inputMethod instanceof InputMethodAdapter) {
                     ((InputMethodAdapter) inputMethod).setClientComponent(null);
                 }
+                if (null == currentClientComponent.getInputMethodRequests())
+                    wasCompositionEnabledSupported = false;
             }
             savedLocale = inputMethod.getLocale();
 
             // keep the input method instance around for future use
             if (usedInputMethods == null) {

@@ -561,10 +563,11 @@
             perInputMethodState.put(inputMethod,
                                     Boolean.valueOf(clientWindowNotificationEnabled));
             enableClientWindowNotification(inputMethod, false);
             if (this == inputMethodWindowContext) {
                 inputMethod.hideWindows();
+                inputMethod.removeNotify();
                 inputMethodWindowContext = null;
             }
             inputMethodLocator = null;
             inputMethod = null;
             inputMethodCreationFailed = false;
< prev index next >