diff options
Diffstat (limited to 'fastadapter/src/main/kotlin/ca/allanwang')
-rw-r--r-- | fastadapter/src/main/kotlin/ca/allanwang/kau/adapters/FastItemThemedAdapter.kt | 42 |
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) } } |