blob: 077f5bf780659129fe7db23e142ea3b69bffa1af [file]
/*
* Copyright (C) 2025 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.settings.accessibility
import android.content.Context
import android.text.Html
/**
* A preferenceController that handles displaying the footer with html format in
* [AccessibilityFooterPreference]
*/
open class HtmlFooterPreferenceController(context: Context, prefKey: String) :
AccessibilityFooterPreferenceController(context, prefKey) {
/**
* Converts the summary to html spannable by utilizing the [Html.fromHtml] with custom image
* getter.
*/
override fun setSummary(summary: CharSequence) {
setSummary(summary, isHtml = true)
}
protected fun setSummary(summary: CharSequence, isHtml: Boolean) {
val description: CharSequence =
if (isHtml) {
Html.fromHtml(
summary.toString(),
Html.FROM_HTML_MODE_COMPACT,
/* imageGetter= */ null,
/* tagHandler= */ null,
)
} else {
summary
}
super.setSummary(description)
}
}