aboutsummaryrefslogtreecommitdiff
path: root/fastadapter/src/main/kotlin/ca/allanwang
diff options
context:
space:
mode:
Diffstat (limited to 'fastadapter/src/main/kotlin/ca/allanwang')
-rw-r--r--fastadapter/src/main/kotlin/ca/allanwang/kau/adapters/FastItemThemedAdapter.kt42
1 files changed, 7 insertions, 35 deletions
diff --git a/fastadapter/src/main/kotlin/ca/allanwang/kau/adapters/FastItemThemedAdapter.kt b/fastadapter/src/main/kotlin/ca/allanwang/kau/adapters/FastItemThemedAdapter.kt
index e6d4b24..24a37c4 100644
--- a/fastadapter/src/main/kotlin/ca/allanwang/kau/adapters/FastItemThemedAdapter.kt
+++ b/fastadapter/src/main/kotlin/ca/allanwang/kau/adapters/FastItemThemedAdapter.kt
@@ -47,6 +47,13 @@ class FastItemThemedAdapter<Item : IItem<*>>(
colors.accentColor
)
+ init {
+ itemAdapter.interceptor = {
+ injectTheme(it)
+ it
+ }
+ }
+
var textColor: Int? = textColor
set(value) {
if (field == value) return
@@ -78,41 +85,6 @@ class FastItemThemedAdapter<Item : IItem<*>>(
notifyAdapterDataSetChanged()
}
- override fun add(position: Int, items: List<Item>): IItemAdapter<Item, Item> {
- injectTheme(items)
- return super.add(position, items)
- }
-
- override fun add(position: Int, vararg items: Item): IItemAdapter<Item, Item> {
- injectTheme(items.toList())
- return super.add(position, *items)
- }
-
- override fun add(vararg items: Item): IItemAdapter<Item, Item> {
- injectTheme(items.toList())
- return super.add(*items)
- }
-
- override fun add(items: List<Item>): IItemAdapter<Item, Item> {
- injectTheme(items)
- return super.add(items)
- }
-
- override fun set(items: List<Item>): IItemAdapter<Item, Item> {
- injectTheme(items)
- return super.set(items)
- }
-
- override fun set(position: Int, item: Item): IItemAdapter<Item, Item> {
- injectTheme(item)
- return super.set(position, item)
- }
-
- override fun setNewList(items: List<Item>, retainFilter: Boolean): IItemAdapter<Item, Item> {
- injectTheme(items)
- return super.setNewList(items, retainFilter)
- }
-
private fun injectTheme(items: Collection<IItem<*>?>?) {
items?.forEach { injectTheme(it) }
}