added accessibility to icons

Signed-off-by: Matt Bruce <matt.bruce@verizon.com>
This commit is contained in:
Matt Bruce 2024-07-01 14:25:14 -05:00
parent 2b978ffd03
commit b93860cc15

View File

@ -311,6 +311,7 @@ class TileletViewController: BaseViewController<Tilelet> {
var backgroundColor: BackgroundColor = .black
var maxWidthTextField = NumericField()
var isLinkSwitch = Toggle()
var descriptionIconAccessibilityTextField = TextField()
var gradientColorsFormStackView = FormSection().with { $0.isHidden = true }
@ -402,6 +403,7 @@ class TileletViewController: BaseViewController<Tilelet> {
}))
append(section: descriptionIconFormStackView)
descriptionIconFormStackView.addFormRow(label: "Icon", view: descriptionNamePickerSelectorView)
descriptionIconFormStackView.addFormRow(label: "Accessibility", view: descriptionIconAccessibilityTextField)
descriptionIconFormStackView.addFormRow(label: "Size", view: descriptionIconSizePickerSelectorView)
descriptionIconFormStackView.addFormRow(label: "Color", view: descriptionIconColorPickerSelectorView)
descriptionIconTokenFormStackView.addFormRow(label: "Token", view: descriptionIconTokenColorView)
@ -516,6 +518,12 @@ class TileletViewController: BaseViewController<Tilelet> {
self.setDescriptionIconForm()
}
descriptionIconAccessibilityTextField
.textPublisher
.sink { [weak self] text in
self?.setDescriptiveIconModel()
}.store(in: &subscribers)
showDirectionalIconSwitch.onChange = { [weak self] sender in
guard let self else { return }
self.setDirectionalIconForm()
@ -727,6 +735,11 @@ class TileletViewController: BaseViewController<Tilelet> {
let iconSize = descriptionIconSizePickerSelectorView.selectedItem
let iconName = descriptionNamePickerSelectorView.selectedItem
var iconColor: Tilelet.IconColor? = nil
var accessibleText: String?
if let at = descriptionIconAccessibilityTextField.text, !at.isEmpty {
accessibleText = at
}
switch descriptionIconColorPickerSelectorView.selectedItem {
case .token:
iconColor = .token(descriptionIconTokenColorView.selectedItem)
@ -735,7 +748,7 @@ class TileletViewController: BaseViewController<Tilelet> {
default:
break
}
component.descriptiveIconModel = .init(name: iconName, iconColor: iconColor, size: iconSize)
component.descriptiveIconModel = .init(name: iconName, iconColor: iconColor, size: iconSize, accessibleText: accessibleText ?? nil )
}
func setDirectionalIconModel() {