diff --git a/build.gradle b/build.gradle index 762c758..c393373 100644 --- a/build.gradle +++ b/build.gradle @@ -2,10 +2,15 @@ buildscript { repositories { + google() // here jcenter() + maven { + url 'https://maven.google.com/' + name 'Google' + } } dependencies { - classpath 'com.android.tools.build:gradle:1.5.0' + classpath 'com.android.tools.build:gradle:3.2.1' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files @@ -14,16 +19,21 @@ buildscript { allprojects { repositories { + google() // here + maven { + url 'https://maven.google.com/' + name 'Google' + } jcenter() } } ext { - compileSdkVersion = 23 - buildToolsVersion = '23.0.2' - supportLibsVersion = '23.1.1' - targetSdkVersion = 22 - minSdkVersion = 11 - versionCode = 13 - versionName = "0.4.3" + compileSdkVersion = 28 + buildToolsVersion = '28.0.3' + supportLibsVersion = '28.0.0' + targetSdkVersion = 28 + minSdkVersion = 14 + versionCode = 14 + versionName = "0.4.4" } diff --git a/gradle.properties b/gradle.properties index 6d53fd5..2d90035 100644 --- a/gradle.properties +++ b/gradle.properties @@ -30,4 +30,6 @@ POM_LICENCE_NAME=The Apache Software License, Version 2.0 POM_LICENCE_URL=http://www.apache.org/licenses/LICENSE-2.0.txt POM_LICENCE_DIST=repo POM_DEVELOPER_ID=jacobtabak -POM_DEVELOPER_NAME=Jacob Tabak \ No newline at end of file +POM_DEVELOPER_NAME=Jacob Tabak +android.useAndroidX=true +android.enableJetifier=true \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index c0e747b..a464cf1 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Fri Dec 12 10:27:39 CST 2014 +#Wed Oct 24 22:25:20 CEST 2018 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-2.9-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip diff --git a/library/build.gradle b/library/build.gradle index e287d90..3e2f7a2 100644 --- a/library/build.gradle +++ b/library/build.gradle @@ -11,13 +11,13 @@ android { versionName rootProject.ext.versionName as String } compileOptions { - sourceCompatibility JavaVersion.VERSION_1_7 - targetCompatibility JavaVersion.VERSION_1_7 + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 } } dependencies { - compile "com.android.support:recyclerview-v7:${rootProject.supportLibsVersion}" + compile 'androidx.recyclerview:recyclerview:1.0.0' } apply from: 'gradle-maven-push.gradle' diff --git a/library/src/main/java/com/timehop/stickyheadersrecyclerview/HeaderPositionCalculator.java b/library/src/main/java/com/timehop/stickyheadersrecyclerview/HeaderPositionCalculator.java index 3b26de6..8ed9f82 100644 --- a/library/src/main/java/com/timehop/stickyheadersrecyclerview/HeaderPositionCalculator.java +++ b/library/src/main/java/com/timehop/stickyheadersrecyclerview/HeaderPositionCalculator.java @@ -1,8 +1,6 @@ package com.timehop.stickyheadersrecyclerview; import android.graphics.Rect; -import android.support.v7.widget.LinearLayoutManager; -import android.support.v7.widget.RecyclerView; import android.view.View; import android.view.ViewGroup; import android.widget.LinearLayout; @@ -11,6 +9,9 @@ import com.timehop.stickyheadersrecyclerview.calculation.DimensionCalculator; import com.timehop.stickyheadersrecyclerview.util.OrientationProvider; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; + /** * Calculates the position and location of header views */ diff --git a/library/src/main/java/com/timehop/stickyheadersrecyclerview/StickyRecyclerHeadersAdapter.java b/library/src/main/java/com/timehop/stickyheadersrecyclerview/StickyRecyclerHeadersAdapter.java index 23990fa..1e5fe42 100644 --- a/library/src/main/java/com/timehop/stickyheadersrecyclerview/StickyRecyclerHeadersAdapter.java +++ b/library/src/main/java/com/timehop/stickyheadersrecyclerview/StickyRecyclerHeadersAdapter.java @@ -1,8 +1,9 @@ package com.timehop.stickyheadersrecyclerview; -import android.support.v7.widget.RecyclerView; import android.view.ViewGroup; +import androidx.recyclerview.widget.RecyclerView; + public interface StickyRecyclerHeadersAdapter { /** * Get the ID of the header associated with this item. For example, if your headers group diff --git a/library/src/main/java/com/timehop/stickyheadersrecyclerview/StickyRecyclerHeadersDecoration.java b/library/src/main/java/com/timehop/stickyheadersrecyclerview/StickyRecyclerHeadersDecoration.java index 4673f8c..a722619 100644 --- a/library/src/main/java/com/timehop/stickyheadersrecyclerview/StickyRecyclerHeadersDecoration.java +++ b/library/src/main/java/com/timehop/stickyheadersrecyclerview/StickyRecyclerHeadersDecoration.java @@ -2,8 +2,6 @@ import android.graphics.Canvas; import android.graphics.Rect; -import android.support.v7.widget.LinearLayoutManager; -import android.support.v7.widget.RecyclerView; import android.util.SparseArray; import android.view.View; @@ -14,6 +12,9 @@ import com.timehop.stickyheadersrecyclerview.util.LinearLayoutOrientationProvider; import com.timehop.stickyheadersrecyclerview.util.OrientationProvider; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; + public class StickyRecyclerHeadersDecoration extends RecyclerView.ItemDecoration { private final StickyRecyclerHeadersAdapter mAdapter; diff --git a/library/src/main/java/com/timehop/stickyheadersrecyclerview/StickyRecyclerHeadersTouchListener.java b/library/src/main/java/com/timehop/stickyheadersrecyclerview/StickyRecyclerHeadersTouchListener.java index 4a093ed..addfab2 100644 --- a/library/src/main/java/com/timehop/stickyheadersrecyclerview/StickyRecyclerHeadersTouchListener.java +++ b/library/src/main/java/com/timehop/stickyheadersrecyclerview/StickyRecyclerHeadersTouchListener.java @@ -1,11 +1,12 @@ package com.timehop.stickyheadersrecyclerview; -import android.support.v7.widget.RecyclerView; import android.view.GestureDetector; import android.view.MotionEvent; import android.view.SoundEffectConstants; import android.view.View; +import androidx.recyclerview.widget.RecyclerView; + public class StickyRecyclerHeadersTouchListener implements RecyclerView.OnItemTouchListener { private final GestureDetector mTapDetector; private final RecyclerView mRecyclerView; diff --git a/library/src/main/java/com/timehop/stickyheadersrecyclerview/caching/HeaderProvider.java b/library/src/main/java/com/timehop/stickyheadersrecyclerview/caching/HeaderProvider.java index a0115c8..d4ee5b0 100644 --- a/library/src/main/java/com/timehop/stickyheadersrecyclerview/caching/HeaderProvider.java +++ b/library/src/main/java/com/timehop/stickyheadersrecyclerview/caching/HeaderProvider.java @@ -1,8 +1,9 @@ package com.timehop.stickyheadersrecyclerview.caching; -import android.support.v7.widget.RecyclerView; import android.view.View; +import androidx.recyclerview.widget.RecyclerView; + /** * Implemented by objects that provide header views for decoration */ diff --git a/library/src/main/java/com/timehop/stickyheadersrecyclerview/caching/HeaderViewCache.java b/library/src/main/java/com/timehop/stickyheadersrecyclerview/caching/HeaderViewCache.java index 94247fd..bea3f10 100644 --- a/library/src/main/java/com/timehop/stickyheadersrecyclerview/caching/HeaderViewCache.java +++ b/library/src/main/java/com/timehop/stickyheadersrecyclerview/caching/HeaderViewCache.java @@ -1,14 +1,15 @@ package com.timehop.stickyheadersrecyclerview.caching; -import android.support.v4.util.LongSparseArray; -import android.support.v7.widget.LinearLayoutManager; -import android.support.v7.widget.RecyclerView; import android.view.View; import android.view.ViewGroup; import com.timehop.stickyheadersrecyclerview.StickyRecyclerHeadersAdapter; import com.timehop.stickyheadersrecyclerview.util.OrientationProvider; +import androidx.collection.LongSparseArray; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; + /** * An implementation of {@link HeaderProvider} that creates and caches header views */ @@ -24,6 +25,7 @@ public HeaderViewCache(StickyRecyclerHeadersAdapter adapter, mOrientationProvider = orientationProvider; } + @Override public View getHeader(RecyclerView parent, int position) { long headerId = mAdapter.getHeaderId(position); diff --git a/library/src/main/java/com/timehop/stickyheadersrecyclerview/rendering/HeaderRenderer.java b/library/src/main/java/com/timehop/stickyheadersrecyclerview/rendering/HeaderRenderer.java index 992ea33..5673a4c 100644 --- a/library/src/main/java/com/timehop/stickyheadersrecyclerview/rendering/HeaderRenderer.java +++ b/library/src/main/java/com/timehop/stickyheadersrecyclerview/rendering/HeaderRenderer.java @@ -2,13 +2,14 @@ import android.graphics.Canvas; import android.graphics.Rect; -import android.support.v7.widget.RecyclerView; import android.view.View; import android.widget.LinearLayout; import com.timehop.stickyheadersrecyclerview.calculation.DimensionCalculator; import com.timehop.stickyheadersrecyclerview.util.OrientationProvider; +import androidx.recyclerview.widget.RecyclerView; + /** * Responsible for drawing headers to the canvas provided by the item decoration */ diff --git a/library/src/main/java/com/timehop/stickyheadersrecyclerview/util/LinearLayoutOrientationProvider.java b/library/src/main/java/com/timehop/stickyheadersrecyclerview/util/LinearLayoutOrientationProvider.java index 7ad0a9f..2c38dd2 100644 --- a/library/src/main/java/com/timehop/stickyheadersrecyclerview/util/LinearLayoutOrientationProvider.java +++ b/library/src/main/java/com/timehop/stickyheadersrecyclerview/util/LinearLayoutOrientationProvider.java @@ -1,7 +1,7 @@ package com.timehop.stickyheadersrecyclerview.util; -import android.support.v7.widget.LinearLayoutManager; -import android.support.v7.widget.RecyclerView; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; /** * OrientationProvider for ReyclerViews who use a LinearLayoutManager diff --git a/library/src/main/java/com/timehop/stickyheadersrecyclerview/util/OrientationProvider.java b/library/src/main/java/com/timehop/stickyheadersrecyclerview/util/OrientationProvider.java index 0b3dd2b..03b7f54 100644 --- a/library/src/main/java/com/timehop/stickyheadersrecyclerview/util/OrientationProvider.java +++ b/library/src/main/java/com/timehop/stickyheadersrecyclerview/util/OrientationProvider.java @@ -1,6 +1,7 @@ package com.timehop.stickyheadersrecyclerview.util; -import android.support.v7.widget.RecyclerView; + +import androidx.recyclerview.widget.RecyclerView; /** * Interface for getting the orientation of a RecyclerView from its LayoutManager diff --git a/sample/build.gradle b/sample/build.gradle index ae057ff..1695611 100644 --- a/sample/build.gradle +++ b/sample/build.gradle @@ -14,12 +14,12 @@ android { versionName rootProject.ext.versionName as String } compileOptions { - sourceCompatibility JavaVersion.VERSION_1_7 - targetCompatibility JavaVersion.VERSION_1_7 + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 } } dependencies { compile project(':library') - compile "com.android.support:appcompat-v7:${rootProject.supportLibsVersion}" + compile 'androidx.appcompat:appcompat:1.0.0' } diff --git a/sample/src/main/java/com/timehop/stickyheadersrecyclerview/sample/AnimalsAdapter.java b/sample/src/main/java/com/timehop/stickyheadersrecyclerview/sample/AnimalsAdapter.java index 1872b4c..bc13b82 100644 --- a/sample/src/main/java/com/timehop/stickyheadersrecyclerview/sample/AnimalsAdapter.java +++ b/sample/src/main/java/com/timehop/stickyheadersrecyclerview/sample/AnimalsAdapter.java @@ -1,11 +1,12 @@ package com.timehop.stickyheadersrecyclerview.sample; -import android.support.v7.widget.RecyclerView; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; +import androidx.recyclerview.widget.RecyclerView; + /** * Adapter holding a list of animal names of type String. Note that each item must be unique. diff --git a/sample/src/main/java/com/timehop/stickyheadersrecyclerview/sample/DividerDecoration.java b/sample/src/main/java/com/timehop/stickyheadersrecyclerview/sample/DividerDecoration.java index 9321961..0e656c7 100644 --- a/sample/src/main/java/com/timehop/stickyheadersrecyclerview/sample/DividerDecoration.java +++ b/sample/src/main/java/com/timehop/stickyheadersrecyclerview/sample/DividerDecoration.java @@ -5,10 +5,11 @@ import android.graphics.Canvas; import android.graphics.Rect; import android.graphics.drawable.Drawable; -import android.support.v7.widget.LinearLayoutManager; -import android.support.v7.widget.RecyclerView; import android.view.View; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; + public class DividerDecoration extends RecyclerView.ItemDecoration { diff --git a/sample/src/main/java/com/timehop/stickyheadersrecyclerview/sample/MainActivity.java b/sample/src/main/java/com/timehop/stickyheadersrecyclerview/sample/MainActivity.java index 591bd10..96db0b8 100644 --- a/sample/src/main/java/com/timehop/stickyheadersrecyclerview/sample/MainActivity.java +++ b/sample/src/main/java/com/timehop/stickyheadersrecyclerview/sample/MainActivity.java @@ -5,9 +5,6 @@ import android.os.Bundle; import android.os.Handler; import android.os.Looper; -import android.support.v7.app.AppCompatActivity; -import android.support.v7.widget.LinearLayoutManager; -import android.support.v7.widget.RecyclerView; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -22,6 +19,10 @@ import java.security.SecureRandom; +import androidx.appcompat.app.AppCompatActivity; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; + public class MainActivity extends AppCompatActivity { @Override diff --git a/sample/src/main/java/com/timehop/stickyheadersrecyclerview/sample/RecyclerItemClickListener.java b/sample/src/main/java/com/timehop/stickyheadersrecyclerview/sample/RecyclerItemClickListener.java index 20eb47b..73f2a76 100644 --- a/sample/src/main/java/com/timehop/stickyheadersrecyclerview/sample/RecyclerItemClickListener.java +++ b/sample/src/main/java/com/timehop/stickyheadersrecyclerview/sample/RecyclerItemClickListener.java @@ -1,11 +1,12 @@ package com.timehop.stickyheadersrecyclerview.sample; import android.content.Context; -import android.support.v7.widget.RecyclerView; import android.view.GestureDetector; import android.view.MotionEvent; import android.view.View; +import androidx.recyclerview.widget.RecyclerView; + public class RecyclerItemClickListener implements RecyclerView.OnItemTouchListener { private OnItemClickListener mListener; diff --git a/sample/src/main/res/layout/activity_main.xml b/sample/src/main/res/layout/activity_main.xml index 071f7b0..e41e622 100644 --- a/sample/src/main/res/layout/activity_main.xml +++ b/sample/src/main/res/layout/activity_main.xml @@ -29,7 +29,7 @@ -