2020-05-04 03:52:47 +02:00
|
|
|
package net.accelf.yuito
|
|
|
|
|
|
|
|
import android.content.Context
|
2021-04-28 04:54:29 +02:00
|
|
|
import android.view.LayoutInflater
|
2020-05-04 03:52:47 +02:00
|
|
|
import android.view.View
|
2021-04-28 04:54:29 +02:00
|
|
|
import android.view.ViewGroup
|
2020-05-04 03:52:47 +02:00
|
|
|
import com.keylesspalace.tusky.R
|
2021-04-28 04:54:29 +02:00
|
|
|
import com.keylesspalace.tusky.databinding.ItemDrawerFooterBinding
|
2020-05-04 03:52:47 +02:00
|
|
|
import com.keylesspalace.tusky.entity.Instance
|
2021-04-28 04:54:29 +02:00
|
|
|
import com.keylesspalace.tusky.util.BindingHolder
|
2020-05-04 03:52:47 +02:00
|
|
|
import com.mikepenz.materialdrawer.model.AbstractDrawerItem
|
|
|
|
|
2021-04-28 04:54:29 +02:00
|
|
|
class FooterDrawerItem : AbstractDrawerItem<FooterDrawerItem, BindingHolder<ItemDrawerFooterBinding>>() {
|
|
|
|
|
2020-09-07 15:57:59 +02:00
|
|
|
override val type = R.id.instanceData
|
2020-05-04 03:52:47 +02:00
|
|
|
|
2021-04-28 04:54:29 +02:00
|
|
|
override val layoutRes: Int
|
|
|
|
get() = throw UnsupportedOperationException()
|
|
|
|
|
|
|
|
private lateinit var binding: ItemDrawerFooterBinding
|
2020-05-04 03:52:47 +02:00
|
|
|
|
2021-04-28 04:54:29 +02:00
|
|
|
override fun generateView(ctx: Context, parent: ViewGroup): View {
|
|
|
|
binding = ItemDrawerFooterBinding.inflate(LayoutInflater.from(ctx))
|
|
|
|
binding.instanceData.setTag(R.id.material_drawer_item, this)
|
|
|
|
return binding.root
|
|
|
|
}
|
2020-05-04 03:52:47 +02:00
|
|
|
|
2021-04-28 04:54:29 +02:00
|
|
|
override fun bindView(holder: BindingHolder<ItemDrawerFooterBinding>, payloads: List<Any>) {
|
2020-05-04 03:52:47 +02:00
|
|
|
super.bindView(holder, payloads)
|
2021-04-28 04:54:29 +02:00
|
|
|
|
2020-05-04 03:52:47 +02:00
|
|
|
holder.itemView.setPadding(0, 0, 0, 0)
|
2021-04-28 04:54:29 +02:00
|
|
|
binding.instanceData.setTextColor(binding.instanceData.hintTextColors)
|
2020-05-04 03:52:47 +02:00
|
|
|
}
|
|
|
|
|
2021-04-28 04:54:29 +02:00
|
|
|
override fun getViewHolder(v: View): BindingHolder<ItemDrawerFooterBinding> = throw UnsupportedOperationException()
|
2020-05-04 03:52:47 +02:00
|
|
|
|
2022-04-24 09:42:54 +02:00
|
|
|
fun setInstance(instance: Result<Instance>) {
|
|
|
|
instance
|
|
|
|
.onSuccess {
|
|
|
|
binding.instanceData.text = String.format("%s\n%s\n%s", it.title, it.uri, it.version)
|
|
|
|
}
|
|
|
|
.onFailure {
|
|
|
|
binding.instanceData.text = binding.root.context.getString(R.string.instance_data_failed)
|
|
|
|
}
|
2020-05-04 03:52:47 +02:00
|
|
|
}
|
|
|
|
}
|