From 03f45f43aaf8967dd5e79781367c86a7011524ed Mon Sep 17 00:00:00 2001 From: Mike Penz Date: Sat, 11 Aug 2018 21:01:35 +0200 Subject: [PATCH 1/4] * androidX materialDrawer, aboutLibraries, fastadapter * butterknive 9.0.0-SNAPSHOT * jetifier * upgrade fastadapter 3.x --- app/build.gradle | 12 +++++----- .../itemanimators/app/SampleActivity.java | 24 ++++++++++--------- .../app/dummy/ImageDummyData.java | 13 ++++++---- .../itemanimators/app/items/ImageItem.java | 2 +- gradle.properties | 1 + 5 files changed, 30 insertions(+), 22 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 374b018..4300fa5 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -49,7 +49,7 @@ dependencies { //used to generate the drawer on the left //https://github.com/mikepenz/MaterialDrawer - implementation('com.mikepenz:materialdrawer:5.9.3@aar') { + implementation('com.mikepenz:materialdrawer:6.1.0-rc01') { transitive = true exclude module: "itemanimators" exclude module: "fastadapter" @@ -59,20 +59,20 @@ dependencies { // used to fill the RecyclerView with the DrawerItems // and provides single and multi selection, collapsable items // https://github.com/mikepenz/FastAdapter - implementation('com.mikepenz:fastadapter:2.6.3@aar') - implementation('com.mikepenz:fastadapter-commons:2.6.3@aar') + implementation('com.mikepenz:fastadapter:3.3.0-rc01') + implementation('com.mikepenz:fastadapter-commons:3.3.0-rc01') //used to generate the Open Source section //https://github.com/mikepenz/AboutLibraries - implementation('com.mikepenz:aboutlibraries:5.9.8@aar') + implementation('com.mikepenz:aboutlibraries:6.2.0-rc01') //used to display the icons in the drawer //https://github.com/mikepenz/Android-Iconics implementation 'com.mikepenz:material-design-iconic-typeface:2.2.0.1@aar' //https://github.com/JakeWharton/butterknife - implementation 'com.jakewharton:butterknife:8.8.1' - annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1' + implementation 'com.jakewharton:butterknife:9.0.0-SNAPSHOT' + annotationProcessor 'com.jakewharton:butterknife-compiler:9.0.0-SNAPSHOT' //used to load the images in the ImageListSample //https://github.com/bumptech/glide diff --git a/app/src/main/java/com/mikepenz/itemanimators/app/SampleActivity.java b/app/src/main/java/com/mikepenz/itemanimators/app/SampleActivity.java index 15eb48c..aaefca7 100755 --- a/app/src/main/java/com/mikepenz/itemanimators/app/SampleActivity.java +++ b/app/src/main/java/com/mikepenz/itemanimators/app/SampleActivity.java @@ -4,11 +4,6 @@ import android.graphics.Color; import android.os.Bundle; import android.os.Handler; -import androidx.appcompat.app.AppCompatActivity; -import androidx.recyclerview.widget.GridLayoutManager; -import androidx.recyclerview.widget.LinearLayoutManager; -import androidx.recyclerview.widget.RecyclerView; -import androidx.appcompat.widget.Toolbar; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; @@ -44,6 +39,12 @@ import java.util.List; +import androidx.appcompat.app.AppCompatActivity; +import androidx.appcompat.widget.Toolbar; +import androidx.recyclerview.widget.GridLayoutManager; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; + public class SampleActivity extends AppCompatActivity { enum Type { CrossFade(new AlphaCrossFadeAnimator()), @@ -74,7 +75,7 @@ public BaseItemAnimator getAnimator() { //save our FastAdapter private FastAdapter mFastAdapter; //save our FastAdapter - private ItemAdapter mItemAdapter; + private ItemAdapter mItemAdapter; @Override protected void onCreate(Bundle savedInstanceState) { @@ -121,20 +122,21 @@ public boolean onItemClick(View view, int position, IDrawerItem drawerItem) { }) .build(); + //create our ItemAdapter which will host our items + mItemAdapter = new ItemAdapter<>(); + //create our FastAdapter which will manage everything - mFastAdapter = new FastAdapter(); + mFastAdapter = FastAdapter.with(mItemAdapter); mFastAdapter.withSelectable(true); mFastAdapter.withMultiSelect(true); mFastAdapter.withSelectOnLongClick(false); - //create our ItemAdapter which will host our items - mItemAdapter = new ItemAdapter(); //configure our fastAdapter //get our recyclerView and do basic setup mRecyclerView = (RecyclerView) findViewById(R.id.rv); mRecyclerView.setLayoutManager(new GridLayoutManager(this, 3)); //mRecyclerView.setLayoutManager(new LinearLayoutManager(this)); - mRecyclerView.setAdapter(mItemAdapter.wrap(mFastAdapter)); + mRecyclerView.setAdapter(mFastAdapter); mRecyclerView.setItemAnimator(new AlphaCrossFadeAnimator()); mRecyclerView.getItemAnimator().setAddDuration(500); mRecyclerView.getItemAnimator().setRemoveDuration(500); @@ -207,7 +209,7 @@ public boolean onOptionsItemSelected(MenuItem item) { return true; case R.id.item_change: for (Integer pos : (Iterable) mFastAdapter.getSelections()) { - ImageItem i = (ImageItem) mItemAdapter.getItem(pos); + ImageItem i = (ImageItem) mItemAdapter.getAdapterItem(pos); i.withName("CHANGED"); i.withDescription("This item was modified"); mItemAdapter.set(pos, i); diff --git a/app/src/main/java/com/mikepenz/itemanimators/app/dummy/ImageDummyData.java b/app/src/main/java/com/mikepenz/itemanimators/app/dummy/ImageDummyData.java index e9643a8..2bbfe50 100644 --- a/app/src/main/java/com/mikepenz/itemanimators/app/dummy/ImageDummyData.java +++ b/app/src/main/java/com/mikepenz/itemanimators/app/dummy/ImageDummyData.java @@ -1,9 +1,10 @@ package com.mikepenz.itemanimators.app.dummy; +import com.mikepenz.fastadapter.IItem; import com.mikepenz.itemanimators.app.items.ImageItem; -import java.util.Arrays; +import java.util.ArrayList; import java.util.List; import java.util.Random; @@ -23,7 +24,7 @@ public static ImageItem getDummyItem() { } } - public static List getImages() { + public static List getImages() { return toList( new ImageItem().withName("Yang Zhuo Yong Cuo, Tibet China").withDescription("#100063").withImage("https://raw.githubusercontent.com/mikepenz/earthview-wallpapers/develop/thumb/yang_zhuo_yong_cuo,_tibet-china-63.jpg"), new ImageItem().withName("Yellowstone United States").withDescription("#100017").withImage("https://raw.githubusercontent.com/mikepenz/earthview-wallpapers/develop/thumb/yellowstone-united_states-17.jpg"), @@ -59,7 +60,11 @@ public static List getImages() { ); } - private static List toList(ImageItem... imageItems) { - return Arrays.asList(imageItems); + private static List toList(ImageItem... imageItems) { + ArrayList items = new ArrayList<>(); + for (ImageItem imageItem : imageItems) { + items.add(imageItem); + } + return items; } } diff --git a/app/src/main/java/com/mikepenz/itemanimators/app/items/ImageItem.java b/app/src/main/java/com/mikepenz/itemanimators/app/items/ImageItem.java index 0bb5969..eabe5dc 100644 --- a/app/src/main/java/com/mikepenz/itemanimators/app/items/ImageItem.java +++ b/app/src/main/java/com/mikepenz/itemanimators/app/items/ImageItem.java @@ -1,7 +1,6 @@ package com.mikepenz.itemanimators.app.items; import android.content.Context; -import androidx.recyclerview.widget.RecyclerView; import android.view.View; import android.widget.FrameLayout; import android.widget.ImageView; @@ -15,6 +14,7 @@ import java.util.List; +import androidx.recyclerview.widget.RecyclerView; import butterknife.BindView; import butterknife.ButterKnife; diff --git a/gradle.properties b/gradle.properties index 9109ca6..e1e354e 100644 --- a/gradle.properties +++ b/gradle.properties @@ -19,3 +19,4 @@ POM_DEVELOPER_ID=mikepenz POM_DEVELOPER_NAME=Mike Penz android.useAndroidX=true +android.enableJetifier=true From e135a63de89a812da17543ea9d0b61ac88731799 Mon Sep 17 00:00:00 2001 From: Mike Penz Date: Sat, 22 Sep 2018 16:15:11 +0200 Subject: [PATCH 2/4] * update gradle and gradle build tools --- build.gradle | 2 +- gradle/wrapper/gradle-wrapper.properties | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build.gradle b/build.gradle index 4de3256..4a56c0c 100644 --- a/build.gradle +++ b/build.gradle @@ -22,7 +22,7 @@ buildscript { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:3.3.0-alpha05' + classpath 'com.android.tools.build:gradle:3.3.0-alpha11' classpath 'com.github.dcendents:android-maven-gradle-plugin:2.1' classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.8.4' } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 581931c..9e8a339 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Sat Aug 11 19:17:43 CEST 2018 +#Sat Sep 22 15:53:59 CEST 2018 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.9-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-4.10-all.zip From e08c94444657c8443a49b9c510155d0255e03875 Mon Sep 17 00:00:00 2001 From: Mike Penz Date: Sat, 22 Sep 2018 16:16:01 +0200 Subject: [PATCH 3/4] * update androidX to the stable release --- app/build.gradle | 4 ++-- build.gradle | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 4300fa5..e580baf 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -59,8 +59,8 @@ dependencies { // used to fill the RecyclerView with the DrawerItems // and provides single and multi selection, collapsable items // https://github.com/mikepenz/FastAdapter - implementation('com.mikepenz:fastadapter:3.3.0-rc01') - implementation('com.mikepenz:fastadapter-commons:3.3.0-rc01') + implementation('com.mikepenz:fastadapter:3.3.0') + implementation('com.mikepenz:fastadapter-commons:3.3.0') //used to generate the Open Source section //https://github.com/mikepenz/AboutLibraries diff --git a/build.gradle b/build.gradle index 4a56c0c..e795ef4 100644 --- a/build.gradle +++ b/build.gradle @@ -13,7 +13,7 @@ buildscript { ] versions = [ - androidXVersion: '1.0.0-rc01' + androidXVersion: '1.0.0' ] } From 97f3e87982d79c3cfcabc44ebd4c5e806a655f42 Mon Sep 17 00:00:00 2001 From: Mike Penz Date: Sat, 22 Sep 2018 16:29:04 +0200 Subject: [PATCH 4/4] * [release] v1.1.0 --- README.md | 2 +- build.gradle | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 4bc00ff..0368abc 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ These `Animators` correctly work with all view states and `RecyclerView` states # Include in your project ## Using Maven ```javascript -implementation "com.mikepenz:itemanimators:1.1.0-rc01@aar" +implementation "com.mikepenz:itemanimators:1.1.0" implementation "androidx.recyclerview:recyclerview:${androidXVersion}" ``` diff --git a/build.gradle b/build.gradle index e795ef4..a008223 100644 --- a/build.gradle +++ b/build.gradle @@ -1,7 +1,7 @@ buildscript { ext { release = [ - versionName: "1.1.0-rc01", + versionName: "1.1.0", versionCode: 1100 ]