diff --git a/VDS/Components/TextFields/InputField/FieldTypes/FieldType.swift b/VDS/Components/TextFields/InputField/FieldTypes/FieldType.swift index 59906df7..de04aa1d 100644 --- a/VDS/Components/TextFields/InputField/FieldTypes/FieldType.swift +++ b/VDS/Components/TextFields/InputField/FieldTypes/FieldType.swift @@ -54,6 +54,9 @@ extension InputField { func updateView(_ inputField: InputField) { + //keyboard + inputField.textField.keyboardType = keyboardType + //textField inputField.textField.isSecureTextEntry = isSecureTextEntry @@ -67,8 +70,7 @@ extension InputField { inputField.actionTextLink.surface = inputField.surface if let actionModel { inputField.actionTextLink.text = actionModel.text - inputField.actionTextLink.onClick = { [weak self] _ in - guard let self else { return } + inputField.actionTextLink.onClick = { _ in actionModel.onClick(inputField) } inputField.actionTextLink.isHidden = false @@ -78,33 +80,17 @@ extension InputField { inputField.fieldStackView.setCustomSpacing(0, after: inputField.statusIcon) } -// //set the width constraints -// if let width = inputField.width, width > minWidth { -// inputField.widthConstraint?.constant = width -// inputField.widthConstraint?.isActive = true -// inputField.minWidthConstraint?.isActive = false -// } else { -// inputField.minWidthConstraint?.constant = minWidth -// inputField.widthConstraint?.isActive = false -// inputField.minWidthConstraint?.isActive = true -// } //set the width constraints - if let width = inputField.width, width > minWidth { + let maxwidth = inputField.frame.size.width + if let width = inputField.width, width > minWidth && width < maxwidth { inputField.widthConstraint?.constant = width - inputField.widthConstraint?.isActive = true - inputField.minWidthConstraint?.isActive = false - inputField.maxWidthConstraint?.isActive = false } else { - inputField.minWidthConstraint?.constant = minWidth - inputField.maxWidthConstraint?.constant = inputField.frame.width - inputField.widthConstraint?.isActive = false - inputField.minWidthConstraint?.isActive = true - inputField.maxWidthConstraint?.isActive = true + inputField.widthConstraint?.constant = maxwidth >= minWidth ? maxwidth : minWidth } //placeholder inputField.textField.placeholder = placeholderText - + //tooltip from Types take precedence //if one was set, it would show as usual. if let toolTipModel { diff --git a/VDS/Components/TextFields/InputField/InputField.swift b/VDS/Components/TextFields/InputField/InputField.swift index 847e5da8..57d6060a 100644 --- a/VDS/Components/TextFields/InputField/InputField.swift +++ b/VDS/Components/TextFields/InputField/InputField.swift @@ -34,8 +34,6 @@ open class InputField: EntryFieldBase { //-------------------------------------------------- // MARK: - Private Properties //-------------------------------------------------- - internal var maxWidthConstraint: NSLayoutConstraint? - internal var minWidthConstraint: NSLayoutConstraint? internal var titleLabelWidthConstraint: NSLayoutConstraint? //-------------------------------------------------- @@ -86,7 +84,7 @@ open class InputField: EntryFieldBase { }.eraseToAnyColorable() open var leftImageView = UIImageView().with { - $0.height(21) + $0.height(20) $0.width(32) $0.isAccessibilityElement = false $0.translatesAutoresizingMaskIntoConstraints = false @@ -172,8 +170,6 @@ open class InputField: EntryFieldBase { titleLabel.setContentCompressionResistancePriority(.required, for: .horizontal) titleLabel.setContentHuggingPriority(.required, for: .horizontal) titleLabelWidthConstraint = titleLabel.width(constant: 0) - maxWidthConstraint = containerView.width(constant: containerSize.width) - minWidthConstraint = containerView.widthGreaterThanEqualTo(constant: 0) textField.heightAnchor.constraint(equalToConstant: 20).isActive = true textField.delegate = self