From 2de36ba0fdb2223dcb51900efd41da952b5cd1cf Mon Sep 17 00:00:00 2001 From: Eli Hart Date: Mon, 21 Jan 2019 22:30:28 -0600 Subject: [PATCH] Enable recycling of views within groups (#657) * Enable recycling of views within groups * cleanup * revert to kotlin 1.2.71 * fix test --- .idea/codeStyles/Project.xml | 5 +- build.gradle | 4 +- .../com/airbnb/epoxy/ActivityRecyclerPool.kt | 106 +++++++ .../com/airbnb/epoxy/BaseEpoxyAdapter.java | 2 +- .../com/airbnb/epoxy/EpoxyModelGroup.java | 288 +++--------------- .../com/airbnb/epoxy/EpoxyRecyclerView.java | 137 +-------- .../java/com/airbnb/epoxy/ModelGroupHolder.kt | 250 +++++++++++++++ .../com/airbnb/epoxy/UnboundedViewPool.kt | 47 +++ .../com/airbnb/epoxy/ViewTypeManager.java | 10 +- .../com/airbnb/epoxy/EpoxyModelGroupTest.kt | 174 +++++++++++ .../ModelGroupWithAnnotation.java | 3 +- .../EpoxyModelGroupWithAnnotations_.java | 38 ++- 12 files changed, 655 insertions(+), 409 deletions(-) create mode 100644 epoxy-adapter/src/main/java/com/airbnb/epoxy/ActivityRecyclerPool.kt create mode 100644 epoxy-adapter/src/main/java/com/airbnb/epoxy/ModelGroupHolder.kt create mode 100644 epoxy-adapter/src/main/java/com/airbnb/epoxy/UnboundedViewPool.kt create mode 100644 epoxy-adapter/src/test/java/com/airbnb/epoxy/EpoxyModelGroupTest.kt diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml index 6adb8c42c1..3104a751ca 100644 --- a/.idea/codeStyles/Project.xml +++ b/.idea/codeStyles/Project.xml @@ -48,6 +48,9 @@