swap trait and hint due to apple defect

This commit is contained in:
Pfeil, Scott Robert 2020-06-16 11:02:31 -04:00
parent fbc631d151
commit 8200fe07d2
13 changed files with 22 additions and 15 deletions

View File

@ -157,9 +157,9 @@ import MVMCore
override public init(frame: CGRect) {
super.init(frame: frame)
accessibilityTraits = .button
isAccessibilityElement = true
accessibilityHint = MVMCoreUIUtility.hardcodedString(withKey: "checkbox_action_hint")
accessibilityTraits = .button
updateAccessibilityLabel()
}

View File

@ -147,8 +147,8 @@ import UIKit
addTarget(self, action: #selector(tapAction), for: .touchUpInside)
isAccessibilityElement = true
accessibilityTraits = .button
accessibilityHint = MVMCoreUIUtility.hardcodedString(withKey: "radio_action_hint")
accessibilityTraits = .button
updateAccessibilityLabel()
}

View File

@ -115,12 +115,12 @@ open class BarsIndicatorView: CarouselIndicator {
for i in 0..<numberOfPages {
let bar = View()
bar.accessibilityTraits = .button
bar.isAccessibilityElement = true
if let accessibleValueFormat = accessibilityValueFormat, let accessibleIndex = ordinalFormatter.string(from: NSNumber(value: i + 1)) {
bar.accessibilityLabel = String(format: accessibleValueFormat, accessibleIndex, numberOfPages)
}
bar.accessibilityHint = MVMCoreUIUtility.hardcodedString(withKey: "AccTabHint")
bar.accessibilityTraits = .button
bar.widthAnchor.constraint(equalToConstant: BarsIndicatorView.indicatorBarWidth).isActive = true
bar.backgroundColor = isEnabled ? (i == currentIndex ? currentIndicatorColor : indicatorColor) : disabledIndicatorColor
let barHeight = i == currentIndex ? BarsIndicatorView.indicatorBarHeight.selected : BarsIndicatorView.indicatorBarHeight.unselected

View File

@ -215,10 +215,10 @@ public typealias ActionBlockConfirmation = () -> (Bool)
super.setupView()
isAccessibilityElement = true
accessibilityTraits = .button
accessibilityHint = MVMCoreUIUtility.hardcodedString(withKey: "AccToggleHint")
accessibilityLabel = MVMCoreUIUtility.hardcodedString(withKey: "Toggle_buttonlabel")
accessibilityTraits = .button
heightConstraint = heightAnchor.constraint(equalToConstant: Self.containerSize.height)
heightConstraint?.isActive = true

View File

@ -58,8 +58,8 @@ import Foundation
addMolecule(stack)
stack.restack()
verticalStack.restack()
accessibilityTraits = button.accessibilityTraits
accessibilityHint = button.accessibilityHint
accessibilityTraits = button.accessibilityTraits
}
//--------------------------------------------------

View File

@ -58,8 +58,8 @@ import Foundation
addMolecule(stack)
stack.restack()
verticalStack.restack()
accessibilityTraits = button.accessibilityTraits
accessibilityHint = button.accessibilityHint
accessibilityTraits = button.accessibilityTraits
}
//--------------------------------------------------

View File

@ -49,8 +49,8 @@ import Foundation
addMolecule(stack)
stack.restack()
accessibilityTraits = checkbox.accessibilityTraits
accessibilityHint = checkbox.accessibilityHint
accessibilityTraits = checkbox.accessibilityTraits
// Update accessibility label on checkbox state change.
observation = observe(\.checkbox.isSelected, options: [.new]) { [weak self] _, _ in
self?.updateAccessibilityLabel()

View File

@ -49,8 +49,8 @@ import Foundation
addMolecule(stack)
stack.restack()
isAccessibilityElement = true
accessibilityTraits = checkbox.accessibilityTraits
accessibilityHint = checkbox.accessibilityHint
accessibilityTraits = checkbox.accessibilityTraits
// Update accessibility label on checkbox state change.
observation = observe(\.checkbox.isSelected, options: [.new]) { [weak self] _, _ in
self?.updateAccessibilityLabel()

View File

@ -50,9 +50,9 @@ import UIKit
eyebrowHeadlineBodyLink.body.textColor = .mvmOrangeAA
eyebrowHeadlineBodyLink.headline.setFontStyle(.BoldBodySmall)
accessibilityTraits = radioButton.accessibilityTraits
accessibilityHint = radioButton.accessibilityHint
accessibilityTraits = radioButton.accessibilityTraits
// Update accessibility label on radio button state change.
observation = observe(\.radioButton.isSelected, options: [.new]) { [weak self] _, _ in
self?.updateAccessibilityLabel()

View File

@ -47,8 +47,8 @@ open class ListLeftVariableRadioButtonBodyText: TableViewCell {
// Make the whole cell focusable.
isAccessibilityElement = true
accessibilityTraits = radioButton.accessibilityTraits
accessibilityHint = radioButton.accessibilityHint
accessibilityTraits = radioButton.accessibilityTraits
updateAccessibilityLabel()
// Update accessibility label on radio button state change.

View File

@ -92,11 +92,18 @@ import Foundation
return message.count > 0 ? message : nil
}
// Ensures voice over does not read "selected" after user triggers action on cell.
override public var accessibilityTraits: UIAccessibilityTraits {
get {
return (accessoryView != nil) ? .button : .none
}
set {}
}
func updateAccessibilityLabel() {
let linkShowing = link.titleLabel?.text?.count ?? 0 > 0
isAccessibilityElement = !linkShowing
accessibilityTraits = (accessoryView != nil) ? .button : .none
if !linkShowing {
// Make whole cell focusable if no link.
accessibilityLabel = getAccessibilityMessage()

View File

@ -73,8 +73,8 @@ open class ThreeHeadlineBodyLink: View {
bottomAnchor.constraint(equalTo: link.bottomAnchor).isActive = true
isAccessibilityElement = true
accessibilityTraits = link.accessibilityTraits
accessibilityHint = link.accessibilityHint
accessibilityTraits = link.accessibilityTraits
updateAccessibilityLabel()
}

View File

@ -205,8 +205,8 @@ import UIKit
let caret = CaretView(lineWidth: 1)
caret.translatesAutoresizingMaskIntoConstraints = true
caret.isAccessibilityElement = true
caret.accessibilityTraits = .button
caret.accessibilityHint = MVMCoreUIUtility.hardcodedString(withKey: "AccTabHint")
caret.accessibilityTraits = .button
caret.size = .small(.vertical)
if let size = caret.size?.dimensions() {
caret.frame = CGRect(origin: CGPoint.zero, size: size)