Loading ...
Sorry, an error occurred while loading the content.

[vim-multibyte] Re: IME font and compotision window

Expand Messages
  • Taro Muraoka
    ... I compiled it. It works fine. ... Yes, it needs. There is alternative patch below. ... Taro Muraoka ... *************** *** 3250,3259
    Message 1 of 5 , Jan 22, 2000
    • 0 Attachment
      Bram Moolenaar wrote:

      > It seems the computation of the position is now doubled. Let's move it into a
      > function, so that it only appears once. I'll include my alternative patch for
      > gui_w32.c below.

      I compiled it. It works fine.

      > > + ImmReleaseContext(s_hwnd, hImc);
      >
      > Does this line also need to be added in ImeNotify()? It does call
      > ImmGetContext(), shouldn't these always be called in pairs?

      Yes, it needs. There is alternative patch below.
      ----
      Taro Muraoka <koron@...>


      *** bram.patched.gui_w32.c Sun Jan 23 13:41:16 2000
      --- gui_w32.c Sun Jan 23 14:27:12 2000
      ***************
      *** 3250,3259 ****
      ImmGetConversionStatus(hImc, &dwConvMode, &dwSentMode);
      if (dwConvMode & IME_CMODE_NATIVE)
      {
      ! RECT t_rct;
      ! RECT w_rct;
      ! if (w = IMN_SETOPENSTATUS && GetWindowRect(s_textArea, &t_rct)
      ! && GetWindowRect(s_hwnd, &w_rct))
      {
      ImmSetCompositionFont(hImc, &norm_logfont);
      ImePositionWindow(hImc);
      --- 3250,3256 ----
      ImmGetConversionStatus(hImc, &dwConvMode, &dwSentMode);
      if (dwConvMode & IME_CMODE_NATIVE)
      {
      ! if (w = IMN_SETOPENSTATUS)
      {
      ImmSetCompositionFont(hImc, &norm_logfont);
      ImePositionWindow(hImc);
      ***************
      *** 3262,3267 ****
      --- 3259,3265 ----
      }
      else
      bImeNative = FALSE;
      + ImmReleaseContext(s_hwnd, hImc);
      }
      }
    • Bram Moolenaar
      ... Good cleanup. But it made me look closer at this line: if (w = IMN_SETOPENSTATUS) The assignment doesn t have any effect. Shouldn t that be: if (w ==
      Message 2 of 5 , Jan 23, 2000
      • 0 Attachment
        Taro Muraoka wrote:

        > > > + ImmReleaseContext(s_hwnd, hImc);
        > >
        > > Does this line also need to be added in ImeNotify()? It does call
        > > ImmGetContext(), shouldn't these always be called in pairs?
        >
        > Yes, it needs. There is alternative patch below.

        Good cleanup. But it made me look closer at this line:

        if (w = IMN_SETOPENSTATUS)

        The assignment doesn't have any effect. Shouldn't that be:

        if (w == IMN_SETOPENSTATUS)

        Please test if it still works then (I can't compile with IME support).

        --
        CONCORDE: Message for you, sir.
        He falls forward revealing the arrow with the note.
        "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD

        --/-/---- Bram Moolenaar ---- Bram@... ---- Bram@... ---\-\--
        \ \ www.vim.org/iccf www.moolenaar.net www.vim.org / /
      • Taro Muraoka
        ... Oh! yes. There was a bug in original gui_w32.c. I didn t notice that. I have fixed this and compiled. It seems to work very good. ... Taro Muraoka
        Message 3 of 5 , Jan 23, 2000
        • 0 Attachment
          Bram Moolenaar wrote:

          > Good cleanup. But it made me look closer at this line:
          >
          > if (w = IMN_SETOPENSTATUS)
          >
          > The assignment doesn't have any effect. Shouldn't that be:
          >
          > if (w == IMN_SETOPENSTATUS)
          >
          > Please test if it still works then (I can't compile with IME support).

          Oh! yes. There was a bug in original gui_w32.c. I didn't notice that.
          I have fixed this and compiled. It seems to work very good.
          ----
          Taro Muraoka <koron@...>
        Your message has been successfully submitted and would be delivered to recipients shortly.