Thanks! I've resent the patch.

On Sun, Dec 20, 2015 at 5:15 PM, Dmitry Timoshkov <dmitry@baikal.ru> wrote:
Anton Baskanov <baskanov@gmail.com> wrote:

> @@ -3040,6 +3040,10 @@ DECL_HANDLER(set_caret_info)
>      if (req->flags & SET_CARET_STATE)
>      {
>          if (req->state == -1) input->caret_state = !input->caret_state;
> +        else if (req->state == -2 &&
> +            (req->x != reply->old_rect.left ||
> +            req->y != reply->old_rect.top))
> +            input->caret_state = 1;
>          else input->caret_state = !!req->state;
>      }

If state == -2 but the additional logic won't match this would fall into
unexpected 3rd case.

--
Dmitry.