public class sun.awt.X11.XInputMethod extends sun.awt.X11InputMethod
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.awt.X11.XInputMethod
  super_class: sun.awt.X11InputMethod
{
  private static final sun.util.logging.PlatformLogger log;
    descriptor: Lsun/util/logging/PlatformLogger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static volatile long xicFocus;
    descriptor: J
    flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 46
            ldc "sun.awt.X11.XInputMethod"
            invokestatic sun.util.logging.PlatformLogger.getLogger:(Ljava/lang/String;)Lsun/util/logging/PlatformLogger;
            putstatic sun.awt.X11.XInputMethod.log:Lsun/util/logging/PlatformLogger;
         1: .line 76
            lconst_0
            putstatic sun.awt.X11.XInputMethod.xicFocus:J
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.awt.X11.XInputMethod this
         0: .line 49
            aload 0 /* this */
            invokespecial sun.awt.X11InputMethod.<init>:()V
         1: .line 50
            return
        end local 0 // sun.awt.X11.XInputMethod this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/awt/X11/XInputMethod;
    Exceptions:
      throws java.awt.AWTException

  public void setInputMethodContext(java.awt.im.spi.InputMethodContext);
    descriptor: (Ljava/awt/im/spi/InputMethodContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // sun.awt.X11.XInputMethod this
        start local 1 // java.awt.im.spi.InputMethodContext context
         0: .line 53
            aload 1 /* context */
            aload 0 /* this */
            iconst_1
            invokeinterface java.awt.im.spi.InputMethodContext.enableClientWindowNotification:(Ljava/awt/im/spi/InputMethod;Z)V
         1: .line 54
            return
        end local 1 // java.awt.im.spi.InputMethodContext context
        end local 0 // sun.awt.X11.XInputMethod this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lsun/awt/X11/XInputMethod;
            0    2     1  context  Ljava/awt/im/spi/InputMethodContext;
    MethodParameters:
         Name  Flags
      context  

  public void notifyClientWindowChange(java.awt.Rectangle);
    descriptor: (Ljava/awt/Rectangle;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // sun.awt.X11.XInputMethod this
        start local 1 // java.awt.Rectangle location
         0: .line 57
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.awt.X11.XInputMethod.clientComponentWindow:Ljava/awt/Container;
            invokevirtual sun.awt.X11.XInputMethod.getPeer:(Ljava/awt/Component;)Ljava/awt/peer/ComponentPeer;
            checkcast sun.awt.X11.XComponentPeer
            astore 2 /* peer */
        start local 2 // sun.awt.X11.XComponentPeer peer
         1: .line 58
            aload 2 /* peer */
            ifnull 3
         2: .line 59
            aload 0 /* this */
            aload 2 /* peer */
            invokevirtual sun.awt.X11.XComponentPeer.getContentWindow:()J
            invokevirtual sun.awt.X11.XInputMethod.adjustStatusWindow:(J)V
         3: .line 61
      StackMap locals: sun.awt.X11.XComponentPeer
      StackMap stack:
            return
        end local 2 // sun.awt.X11.XComponentPeer peer
        end local 1 // java.awt.Rectangle location
        end local 0 // sun.awt.X11.XInputMethod this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lsun/awt/X11/XInputMethod;
            0    4     1  location  Ljava/awt/Rectangle;
            1    4     2      peer  Lsun/awt/X11/XComponentPeer;
    MethodParameters:
          Name  Flags
      location  

  protected boolean openXIM();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.awt.X11.XInputMethod this
         0: .line 64
            aload 0 /* this */
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
            invokevirtual sun.awt.X11.XInputMethod.openXIMNative:(J)Z
            ireturn
        end local 0 // sun.awt.X11.XInputMethod this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/awt/X11/XInputMethod;

  protected boolean createXIC();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // sun.awt.X11.XInputMethod this
         0: .line 68
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.awt.X11.XInputMethod.clientComponentWindow:Ljava/awt/Container;
            invokevirtual sun.awt.X11.XInputMethod.getPeer:(Ljava/awt/Component;)Ljava/awt/peer/ComponentPeer;
            checkcast sun.awt.X11.XComponentPeer
            astore 1 /* peer */
        start local 1 // sun.awt.X11.XComponentPeer peer
         1: .line 69
            aload 1 /* peer */
            ifnonnull 3
         2: .line 70
            iconst_0
            ireturn
         3: .line 72
      StackMap locals: sun.awt.X11.XComponentPeer
      StackMap stack:
            aload 0 /* this */
            aload 1 /* peer */
            invokevirtual sun.awt.X11.XComponentPeer.getContentWindow:()J
            invokevirtual sun.awt.X11.XInputMethod.createXICNative:(J)Z
            ireturn
        end local 1 // sun.awt.X11.XComponentPeer peer
        end local 0 // sun.awt.X11.XInputMethod this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/awt/X11/XInputMethod;
            1    4     1  peer  Lsun/awt/X11/XComponentPeer;

  protected void setXICFocus(java.awt.peer.ComponentPeer, boolean, boolean);
    descriptor: (Ljava/awt/peer/ComponentPeer;ZZ)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // sun.awt.X11.XInputMethod this
        start local 1 // java.awt.peer.ComponentPeer peer
        start local 2 // boolean value
        start local 3 // boolean active
         0: .line 80
            aload 1 /* peer */
            ifnonnull 2
         1: .line 81
            return
         2: .line 83
      StackMap locals:
      StackMap stack:
            aload 1 /* peer */
            checkcast sun.awt.X11.XComponentPeer
            invokevirtual sun.awt.X11.XComponentPeer.getContentWindow:()J
            putstatic sun.awt.X11.XInputMethod.xicFocus:J
         3: .line 84
            aload 0 /* this */
            aload 1 /* peer */
            checkcast sun.awt.X11.XComponentPeer
            invokevirtual sun.awt.X11.XComponentPeer.getContentWindow:()J
         4: .line 85
            iload 2 /* value */
         5: .line 86
            iload 3 /* active */
         6: .line 84
            invokevirtual sun.awt.X11.XInputMethod.setXICFocusNative:(JZZ)V
         7: .line 87
            return
        end local 3 // boolean active
        end local 2 // boolean value
        end local 1 // java.awt.peer.ComponentPeer peer
        end local 0 // sun.awt.X11.XInputMethod this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lsun/awt/X11/XInputMethod;
            0    8     1    peer  Ljava/awt/peer/ComponentPeer;
            0    8     2   value  Z
            0    8     3  active  Z
    MethodParameters:
        Name  Flags
      peer    
      value   
      active  

  public static long getXICFocus();
    descriptor: ()J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 90
            getstatic sun.awt.X11.XInputMethod.xicFocus:J
            lreturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected java.awt.Container getParent(java.awt.Component);
    descriptor: (Ljava/awt/Component;)Ljava/awt/Container;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // sun.awt.X11.XInputMethod this
        start local 1 // java.awt.Component client
         0: .line 97
            aload 1 /* client */
            invokevirtual java.awt.Component.getParent:()Ljava/awt/Container;
            areturn
        end local 1 // java.awt.Component client
        end local 0 // sun.awt.X11.XInputMethod this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lsun/awt/X11/XInputMethod;
            0    1     1  client  Ljava/awt/Component;
    MethodParameters:
        Name  Flags
      client  

  protected java.awt.peer.ComponentPeer getPeer(java.awt.Component);
    descriptor: (Ljava/awt/Component;)Ljava/awt/peer/ComponentPeer;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // sun.awt.X11.XInputMethod this
        start local 1 // java.awt.Component client
         0: .line 107
            getstatic sun.awt.X11.XInputMethod.log:Lsun/util/logging/PlatformLogger;
            getstatic sun.util.logging.PlatformLogger$Level.FINE:Lsun/util/logging/PlatformLogger$Level;
            invokevirtual sun.util.logging.PlatformLogger.isLoggable:(Lsun/util/logging/PlatformLogger$Level;)Z
            ifeq 2
         1: .line 108
            getstatic sun.awt.X11.XInputMethod.log:Lsun/util/logging/PlatformLogger;
            new java.lang.StringBuilder
            dup
            ldc "Client is "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* client */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.fine:(Ljava/lang/String;)V
         2: .line 110
      StackMap locals:
      StackMap stack:
            aload 1 /* client */
            invokestatic sun.awt.X11.XToolkit.targetToPeer:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.awt.X11.XComponentPeer
            astore 2 /* peer */
        start local 2 // sun.awt.X11.XComponentPeer peer
         3: .line 111
            goto 6
         4: .line 112
      StackMap locals: sun.awt.X11.XComponentPeer
      StackMap stack:
            aload 0 /* this */
            aload 1 /* client */
            invokevirtual sun.awt.X11.XInputMethod.getParent:(Ljava/awt/Component;)Ljava/awt/Container;
            astore 1 /* client */
         5: .line 113
            aload 1 /* client */
            invokestatic sun.awt.X11.XToolkit.targetToPeer:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.awt.X11.XComponentPeer
            astore 2 /* peer */
         6: .line 111
      StackMap locals:
      StackMap stack:
            aload 1 /* client */
            ifnull 7
            aload 2 /* peer */
            ifnull 4
         7: .line 115
      StackMap locals:
      StackMap stack:
            getstatic sun.awt.X11.XInputMethod.log:Lsun/util/logging/PlatformLogger;
            getstatic sun.util.logging.PlatformLogger$Level.FINE:Lsun/util/logging/PlatformLogger$Level;
            invokevirtual sun.util.logging.PlatformLogger.isLoggable:(Lsun/util/logging/PlatformLogger$Level;)Z
            ifeq 9
         8: .line 116
            getstatic sun.awt.X11.XInputMethod.log:Lsun/util/logging/PlatformLogger;
            ldc "Peer is {0}, client is {1}"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* peer */
            aastore
            dup
            iconst_1
            aload 1 /* client */
            aastore
            invokevirtual sun.util.logging.PlatformLogger.fine:(Ljava/lang/String;[Ljava/lang/Object;)V
         9: .line 119
      StackMap locals:
      StackMap stack:
            aload 2 /* peer */
            ifnull 11
        10: .line 120
            aload 2 /* peer */
            areturn
        11: .line 122
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // sun.awt.X11.XComponentPeer peer
        end local 1 // java.awt.Component client
        end local 0 // sun.awt.X11.XInputMethod this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   12     0    this  Lsun/awt/X11/XInputMethod;
            0   12     1  client  Ljava/awt/Component;
            3   12     2    peer  Lsun/awt/X11/XComponentPeer;
    MethodParameters:
        Name  Flags
      client  

  protected synchronized void disposeImpl();
    descriptor: ()V
    flags: (0x0024) ACC_PROTECTED, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.awt.X11.XInputMethod this
         0: .line 130
            aload 0 /* this */
            invokespecial sun.awt.X11InputMethod.disposeImpl:()V
         1: .line 131
            aload 0 /* this */
            aconst_null
            putfield sun.awt.X11.XInputMethod.clientComponentWindow:Ljava/awt/Container;
         2: .line 132
            return
        end local 0 // sun.awt.X11.XInputMethod this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/awt/X11/XInputMethod;

  protected void awtLock();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // sun.awt.X11.XInputMethod this
         0: .line 135
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
         1: .line 136
            return
        end local 0 // sun.awt.X11.XInputMethod this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/awt/X11/XInputMethod;

  protected void awtUnlock();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // sun.awt.X11.XInputMethod this
         0: .line 139
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
         1: .line 140
            return
        end local 0 // sun.awt.X11.XInputMethod this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/awt/X11/XInputMethod;

  long getCurrentParentWindow();
    descriptor: ()J
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // sun.awt.X11.XInputMethod this
         0: .line 143
            invokestatic sun.awt.AWTAccessor.getComponentAccessor:()Lsun/awt/AWTAccessor$ComponentAccessor;
         1: .line 144
            aload 0 /* this */
            getfield sun.awt.X11.XInputMethod.clientComponentWindow:Ljava/awt/Container;
            invokeinterface sun.awt.AWTAccessor$ComponentAccessor.getPeer:(Ljava/awt/Component;)Ljava/awt/peer/ComponentPeer;
            checkcast sun.awt.X11.XWindow
         2: .line 143
            astore 1 /* peer */
        start local 1 // sun.awt.X11.XWindow peer
         3: .line 145
            aload 1 /* peer */
            invokevirtual sun.awt.X11.XWindow.getContentWindow:()J
            lreturn
        end local 1 // sun.awt.X11.XWindow peer
        end local 0 // sun.awt.X11.XInputMethod this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/awt/X11/XInputMethod;
            3    4     1  peer  Lsun/awt/X11/XWindow;

  private native boolean openXIMNative(long);
    descriptor: (J)Z
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE
    MethodParameters:
         Name  Flags
      display  

  private native boolean createXICNative(long);
    descriptor: (J)Z
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE
    MethodParameters:
        Name  Flags
      window  

  private native void setXICFocusNative(long, boolean, boolean);
    descriptor: (JZZ)V
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE
    MethodParameters:
        Name  Flags
      window  
      value   
      active  

  private native void adjustStatusWindow(long);
    descriptor: (J)V
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE
    MethodParameters:
        Name  Flags
      window  
}
SourceFile: "XInputMethod.java"
InnerClasses:
  public abstract ComponentAccessor = sun.awt.AWTAccessor$ComponentAccessor of sun.awt.AWTAccessor
  public final Level = sun.util.logging.PlatformLogger$Level of sun.util.logging.PlatformLogger