For #25808: Handle a11y obtain() methods deprecations.
This commit is contained in:
parent
8638fa3ba3
commit
0189958bff
|
@ -334,9 +334,12 @@ class AddonsManagementFragment : Fragment(R.layout.fragment_add_ons_management)
|
|||
}
|
||||
|
||||
private fun announceForAccessibility(announcementText: CharSequence) {
|
||||
val event = AccessibilityEvent.obtain(
|
||||
AccessibilityEvent.TYPE_ANNOUNCEMENT,
|
||||
)
|
||||
val event = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
|
||||
AccessibilityEvent(AccessibilityEvent.TYPE_ANNOUNCEMENT)
|
||||
} else {
|
||||
@Suppress("DEPRECATION")
|
||||
AccessibilityEvent.obtain(AccessibilityEvent.TYPE_ANNOUNCEMENT)
|
||||
}
|
||||
|
||||
binding?.addonProgressOverlay?.overlayCardView?.onInitializeAccessibilityEvent(event)
|
||||
event.text.add(announcementText)
|
||||
|
|
|
@ -68,7 +68,18 @@ fun View.updateAccessibilityCollectionItemInfo(
|
|||
info: AccessibilityNodeInfo,
|
||||
) {
|
||||
super.onInitializeAccessibilityNodeInfo(host, info)
|
||||
info.collectionItemInfo =
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
|
||||
info.collectionItemInfo =
|
||||
AccessibilityNodeInfo.CollectionItemInfo(
|
||||
rowIndex,
|
||||
rowSpan,
|
||||
columnIndex,
|
||||
columnSpan,
|
||||
false,
|
||||
isSelected,
|
||||
)
|
||||
} else {
|
||||
@Suppress("DEPRECATION")
|
||||
AccessibilityNodeInfo.CollectionItemInfo.obtain(
|
||||
rowIndex,
|
||||
rowSpan,
|
||||
|
@ -77,6 +88,7 @@ fun View.updateAccessibilityCollectionItemInfo(
|
|||
false,
|
||||
isSelected,
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -94,11 +106,20 @@ fun View.updateAccessibilityCollectionInfo(
|
|||
info: AccessibilityNodeInfo,
|
||||
) {
|
||||
super.onInitializeAccessibilityNodeInfo(host, info)
|
||||
info.collectionInfo = AccessibilityNodeInfo.CollectionInfo.obtain(
|
||||
rowCount,
|
||||
columnCount,
|
||||
false,
|
||||
)
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
|
||||
info.collectionInfo = AccessibilityNodeInfo.CollectionInfo(
|
||||
rowCount,
|
||||
columnCount,
|
||||
false,
|
||||
)
|
||||
} else {
|
||||
@Suppress("DEPRECATION")
|
||||
info.collectionInfo = AccessibilityNodeInfo.CollectionInfo.obtain(
|
||||
rowCount,
|
||||
columnCount,
|
||||
false,
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -22,6 +22,7 @@ package org.mozilla.fenix.settings
|
|||
|
||||
import android.content.Context
|
||||
import android.content.res.TypedArray
|
||||
import android.os.Build
|
||||
import android.os.Parcel
|
||||
import android.os.Parcelable
|
||||
import android.util.AttributeSet
|
||||
|
@ -369,12 +370,22 @@ class TextPercentageSeekBarPreference @JvmOverloads constructor(
|
|||
super.onInitializeAccessibilityNodeInfo(host, info)
|
||||
val initialInfo = info.rangeInfo
|
||||
info.rangeInfo = initialInfo?.let {
|
||||
AccessibilityNodeInfo.RangeInfo.obtain(
|
||||
RANGE_TYPE_PERCENT,
|
||||
MIN_VALUE.toFloat(),
|
||||
SEEK_BAR_MAX.toFloat(),
|
||||
convertCurrentValue(it.current),
|
||||
)
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
|
||||
AccessibilityNodeInfo.RangeInfo(
|
||||
RANGE_TYPE_PERCENT,
|
||||
MIN_VALUE.toFloat(),
|
||||
SEEK_BAR_MAX.toFloat(),
|
||||
convertCurrentValue(it.current),
|
||||
)
|
||||
} else {
|
||||
@Suppress("DEPRECATION")
|
||||
AccessibilityNodeInfo.RangeInfo.obtain(
|
||||
RANGE_TYPE_PERCENT,
|
||||
MIN_VALUE.toFloat(),
|
||||
SEEK_BAR_MAX.toFloat(),
|
||||
convertCurrentValue(it.current),
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
Loading…
Reference in New Issue