Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8213183

InputMethod cannot be used after its restarting

    Details

    • Subcomponent:
    • Resolved In Build:
      team
    • CPU:
      generic
    • OS:
      linux

      Backports

        Description

        Java application cannot use InputMethod (IM) if IM was restarted.
        Some native applications on X-Window can do that.

        We need to consider two conditions:
        1. IM restarted during Java application is working.
        2. Java application started with IM down. Then, IM started.

        My first proposal was posted in
        http://mail.openjdk.java.net/pipermail/awt-dev/2018-June/014100.html
        I’d like to post the revised one.

        <Recreate steps>
        1. Launch an application with Text or JText component under East-Asian (Chinese, Korean, or Japanese) environment.
        2. Turn on Input Method (IM) on X-Window and input some Asian characters to Text component.
        3. kill the IM frontend by OS and restart it. This emulates IM crash or IM restarting to change the configuration.
           IM frontend depends on environment. For example, ibus-x11, fcitx, kinput2 etc.
           For ibus,
           $ ibus-daemon -r --xim
           command restart ibus.
        4. Change focus to other window and back.
        5. Try to repeat the step 2.

        <Result>
        We cannot turn on IM. We can input only English characters, but cannot input Asian characters.

        <expected result>
        We can turn on IM and can use it as same as step2.

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  tnakamura Toshio Nakamura
                  Reporter:
                  tnakamura Toshio Nakamura
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  5 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: