     
     rightView?.grid.views.remove(at: i)
   }
-}
+  
+  /**
+   Reassign text to reset cursor position.
+   Fixes issue-1119. Previously issue-1030, and issue-1023.
+   */
+  func fixCursorPosition() {
+    let t = text
+    text = nil
+    text = t
+  }
+}

  /// Handles the visibilityIconButton TouchUpInside event.
  @objc
  func handleVisibilityIconButton() {
    /// Workaround: Reassign text to reset cursor
    /// This is a known issue with UITextField
    /// Source: https://stackoverflow.com/questions/14220187/uitextfield-has-trailing-whitespace-after-securetextentry-toggle
    let textHolder = text
    text = " "
    text = textHolder
    
    UIView.transition(
      with: (visibilityIconButton?.imageView)!,
      duration: 0.3,

  open override var isSecureTextEntry: Bool {
    didSet {
      updateVisibilityIcon()
      fixCursorPosition()
    }
  }
  
