         guard prevCursorPoint != nil else { return }
         
         if prevCursorPoint!.y != cursorPoint.y {
-            var changeLineCount = Int((cursorPoint.y - prevCursorPoint!.y) / self.font!.lineHeight)
-            if changeLineCount == 0 { changeLineCount = 1 }
+            let moveValue = cursorPoint.y - prevCursorPoint!.y
             
             // Handle all list that after this y position.
             if willChangeText {
-                handleLineChanged(prevCursorPoint!.y, changedLineCount: changeLineCount)
+                handleLineChanged(prevCursorPoint!.y, moveValue: moveValue)
             }
             
             guard !willReturnTouch else { return }

        return true
    }
    
    func handleLineChanged(y: CGFloat, changedLineCount: Int)
    {
        print("handleLineChanged y: \(y)")
        

            
            item.clearContainerWithAllYSet(self)
            
            item.firstKeyY = item.firstKeyY + moveValue
            
            item.resetAllItemYWithFirstItem(item, ckTextView: self)
        }
