internal override void SetCaretPos (IntPtr hwnd, int x, int y) {
if (hwnd != IntPtr.Zero && hwnd == Caret.Hwnd) {
Caret.X = x;
Caret.Y = y;
ClientToScreen (hwnd, ref x, ref y);
SizeWindow (new Rectangle (x, y, Caret.Width, Caret.Height), CaretWindow);
Caret.Timer.Stop ();
HideCaret ();
if (Caret.Visible == 1) {
ShowCaret ();
Caret.Timer.Start ();
}
}
}