From 402d3bb40ea2b8a515f631a4bfc0ae7bf41e7db7 Mon Sep 17 00:00:00 2001 From: Siyamed SINIR Date: Thu, 25 Jul 2019 23:28:07 +0430 Subject: [PATCH 01/10] migrate to androidx use sdk 29 for building --- build.gradle | 11 ++++---- gradle.properties | 28 ++++++++++--------- library/build.gradle | 3 +- sample/build.gradle | 19 ++++++------- .../shapeimageview/sample/SampleActivity.java | 14 +++++----- .../sample/SampleBubbleFragment.java | 10 +++---- .../shapeimageview/sample/SampleFragment.java | 6 ++-- .../sample/SampleListFragment.java | 10 +++---- .../src/main/res/layout/activity_sample.xml | 4 +-- 9 files changed, 52 insertions(+), 53 deletions(-) diff --git a/build.gradle b/build.gradle index 0b571da..2c7b71a 100644 --- a/build.gradle +++ b/build.gradle @@ -1,21 +1,20 @@ buildscript { repositories { + google() jcenter() - mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:1.3.1' - classpath 'com.github.ben-manes:gradle-versions-plugin:0.11.3' + classpath 'com.android.tools.build:gradle:3.4.2' } } allprojects { repositories { + google() jcenter() - mavenCentral() } } -task wrapper(type: Wrapper) { - gradleVersion = '2.7' +task clean(type: Delete) { + delete rootProject.buildDir } \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index 8f8d75f..80f6fad 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,21 +1,23 @@ -VERSION_NAME=0.9.3 -VERSION_CODE=1 +VERSION_NAME=1.0.2 +VERSION_CODE=4 -ANDROID_BUILD_MIN_SDK_VERSION=9 -ANDROID_BUILD_TARGET_SDK_VERSION=23 -ANDROID_BUILD_TOOLS_VERSION=23.0.1 -ANDROID_BUILD_SDK_VERSION=23 +ANDROID_BUILD_MIN_SDK_VERSION=14 +ANDROID_BUILD_TARGET_SDK_VERSION=29 +ANDROID_BUILD_TOOLS_VERSION=29.0.0 +ANDROID_BUILD_SDK_VERSION=29 -GROUP=com.github.siyamed +GROUP=com.github.arefhosseini POM_DESCRIPTION=Provides a set of custom shaped android imageview components, and a framework to define more shapes. Implements both shader and bitmap mask based image views. Shader based one uses canvas draw methods and Path construct, Mask based one uses xfermode to draw image on bitmaps defined by android shape XML's or resource bitmaps. -POM_URL=https://github.com/siyamed/android-shape-imageview -POM_SCM_URL=https://github.com/siyamed/android-shape-imageview -POM_SCM_CONNECTION=scm:git@github.com:siyamed/android-shape-imageview.git -POM_SCM_DEV_CONNECTION=scm:git@github.com:siyamed/android-shape-imageview.git +POM_URL=https://github.com/arefhosseini/android-shape-imageview +POM_SCM_URL=https://github.com/arefhosseini/android-shape-imageview +POM_SCM_CONNECTION=scm:git@github.com:arefhosseini/android-shape-imageview.git +POM_SCM_DEV_CONNECTION=scm:git@github.com:arefhosseini/android-shape-imageview.git 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=siyamed -POM_DEVELOPER_NAME=Siyamed Sinir +POM_DEVELOPER_ID=arefhosseini +POM_DEVELOPER_NAME=Aref Hosseini +android.useAndroidX=true +android.enableJetifier=true diff --git a/library/build.gradle b/library/build.gradle index 741029a..e9b7e9f 100644 --- a/library/build.gradle +++ b/library/build.gradle @@ -1,5 +1,4 @@ apply plugin: 'com.android.library' -apply plugin: 'com.github.ben-manes.versions' android { compileSdkVersion Integer.parseInt(project.ANDROID_BUILD_SDK_VERSION) @@ -14,7 +13,7 @@ android { } dependencies { - compile group: 'net.sf.kxml', name: 'kxml2', version:'2.3.0' + implementation group: 'net.sf.kxml', name: 'kxml2', version:'2.3.0' } apply from: 'https://raw.github.com/chrisbanes/gradle-mvn-push/master/gradle-mvn-push.gradle' \ No newline at end of file diff --git a/sample/build.gradle b/sample/build.gradle index 7fb0d19..8544a06 100644 --- a/sample/build.gradle +++ b/sample/build.gradle @@ -1,16 +1,15 @@ apply plugin: 'com.android.application' -apply plugin: 'com.github.ben-manes.versions' android { compileSdkVersion Integer.parseInt(project.ANDROID_BUILD_SDK_VERSION) buildToolsVersion project.ANDROID_BUILD_TOOLS_VERSION defaultConfig { - applicationId "com.github.siyamed.shapeimageview.sample" + applicationId "com.github.arefhosseini.shapeimageview.sample" minSdkVersion Integer.parseInt(project.ANDROID_BUILD_MIN_SDK_VERSION) targetSdkVersion Integer.parseInt(project.ANDROID_BUILD_TARGET_SDK_VERSION) - versionCode 3 - versionName "1.0" + versionCode 4 + versionName "1.0.2" } buildTypes { release { @@ -21,10 +20,10 @@ android { } dependencies { - compile project(':library') - compile 'com.android.support:appcompat-v7:23.0.1' - compile 'com.squareup.picasso:picasso:2.5.2' - compile 'com.android.support:gridlayout-v7:23.0.1' - compile 'com.android.support:support-v4:23.0.1' - compile 'com.astuetz:pagerslidingtabstrip:1.0.1' + implementation project(':library') + implementation 'androidx.appcompat:appcompat:1.0.2' + implementation 'com.squareup.picasso:picasso:2.71828' + implementation 'androidx.gridlayout:gridlayout:1.0.0' + implementation 'androidx.legacy:legacy-support-v4:1.0.0' + implementation 'com.astuetz:pagerslidingtabstrip:1.0.1' } diff --git a/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleActivity.java b/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleActivity.java index aeacde0..c41a508 100644 --- a/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleActivity.java +++ b/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleActivity.java @@ -1,11 +1,11 @@ package com.github.siyamed.shapeimageview.sample; import android.os.Bundle; -import android.support.v4.app.Fragment; -import android.support.v4.app.FragmentManager; -import android.support.v4.app.FragmentPagerAdapter; -import android.support.v4.view.ViewPager; -import android.support.v7.app.AppCompatActivity; +import androidx.fragment.app.Fragment; +import androidx.fragment.app.FragmentManager; +import androidx.fragment.app.FragmentPagerAdapter; +import androidx.viewpager.widget.ViewPager; +import androidx.appcompat.app.AppCompatActivity; import com.astuetz.PagerSlidingTabStrip; @@ -18,9 +18,9 @@ protected void onCreate(Bundle savedInstanceState) { getSupportActionBar().hide(); - ViewPager pager = (ViewPager) findViewById(R.id.pager); + ViewPager pager = findViewById(R.id.pager); pager.setAdapter(new PagerAdapter(getSupportFragmentManager())); - PagerSlidingTabStrip tabStrip = (PagerSlidingTabStrip) findViewById(R.id.tabs); + PagerSlidingTabStrip tabStrip = findViewById(R.id.tabs); tabStrip.setViewPager(pager); } diff --git a/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleBubbleFragment.java b/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleBubbleFragment.java index e28de26..7bfd074 100644 --- a/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleBubbleFragment.java +++ b/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleBubbleFragment.java @@ -2,7 +2,7 @@ import android.content.Context; import android.os.Bundle; -import android.support.v4.app.Fragment; +import androidx.fragment.app.Fragment; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -38,13 +38,13 @@ public void onCreate(Bundle savedInstanceState) { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_chat_sample, container, false); - final Picasso picasso = Picasso.with(getActivity()); + final Picasso picasso = new Picasso.Builder(getActivity()).build(); picasso.setLoggingEnabled(true); picasso.setIndicatorsEnabled(false); int listLayout1 = getArguments().getInt(ARG_LAYOUT_1); int listLayout2 = getArguments().getInt(ARG_LAYOUT_2); - final ListView listView = (ListView) view.findViewById(R.id.list); + final ListView listView = view.findViewById(R.id.list); Adapter adapter = new Adapter(getActivity(), picasso, listLayout1, listLayout2); listView.setAdapter(adapter); @@ -91,8 +91,8 @@ public View getView(int position, View convertView, ViewGroup parent) { if(convertView == null) { convertView = LayoutInflater.from(getContext()).inflate(layout, parent, false); holder = new ViewHolder(); - holder.image = (ImageView) convertView.findViewById(R.id.image); - holder.text = (TextView) convertView.findViewById(R.id.text); + holder.image = convertView.findViewById(R.id.image); + holder.text = convertView.findViewById(R.id.text); convertView.setTag(holder); } else { holder = (ViewHolder) convertView.getTag(); diff --git a/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleFragment.java b/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleFragment.java index d3e1857..1f48567 100644 --- a/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleFragment.java +++ b/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleFragment.java @@ -1,7 +1,7 @@ package com.github.siyamed.shapeimageview.sample; import android.os.Bundle; -import android.support.v4.app.Fragment; +import androidx.fragment.app.Fragment; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -36,12 +36,12 @@ public void onCreate(Bundle savedInstanceState) { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(layout, container, false); - final ImageView imageView = (ImageView) view.findViewById(R.id.relative_test_img_1); + final ImageView imageView = view.findViewById(R.id.relative_test_img_1); if(imageView != null) { imageView.postDelayed(new Runnable() { @Override public void run() { - Picasso.with(getActivity()).load(Constants.IMAGES[0][0]).into(imageView); + Picasso.get().load(Constants.IMAGES[0][0]).into(imageView); } }, 3000); } diff --git a/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleListFragment.java b/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleListFragment.java index 6b7b941..4f373d5 100644 --- a/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleListFragment.java +++ b/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleListFragment.java @@ -2,7 +2,7 @@ import android.content.Context; import android.os.Bundle; -import android.support.v4.app.Fragment; +import androidx.fragment.app.Fragment; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -36,12 +36,12 @@ public void onCreate(Bundle savedInstanceState) { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_list_sample, container, false); - final Picasso picasso = Picasso.with(getActivity()); + final Picasso picasso = new Picasso.Builder(getActivity()).build(); picasso.setLoggingEnabled(true); picasso.setIndicatorsEnabled(false); int listLayout = getArguments().getInt(ARG_LAYOUT); - final ListView listView = (ListView) view.findViewById(R.id.list); + final ListView listView = view.findViewById(R.id.list); Adapter adapter = new Adapter(getActivity(), picasso, listLayout); listView.setAdapter(adapter); @@ -67,8 +67,8 @@ public View getView(int position, View convertView, ViewGroup parent) { if(convertView == null) { convertView = LayoutInflater.from(getContext()).inflate(layout, parent, false); holder = new ViewHolder(); - holder.image = (ImageView) convertView.findViewById(R.id.image); - holder.title = (TextView) convertView.findViewById(R.id.title); + holder.image = convertView.findViewById(R.id.image); + holder.title = convertView.findViewById(R.id.title); convertView.setTag(holder); } else { holder = (ViewHolder) convertView.getTag(); diff --git a/sample/src/main/res/layout/activity_sample.xml b/sample/src/main/res/layout/activity_sample.xml index e8ee97b..8e9b721 100644 --- a/sample/src/main/res/layout/activity_sample.xml +++ b/sample/src/main/res/layout/activity_sample.xml @@ -14,10 +14,10 @@ android:layout_height="48dip" app:pstsIndicatorColor="@color/green"/> - - + From fe2239919cd7a8134508be4113ae7470419561d2 Mon Sep 17 00:00:00 2001 From: Siyamed SINIR Date: Thu, 25 Jul 2019 23:46:02 +0430 Subject: [PATCH 02/10] update gradle-wrapper --- gradle/wrapper/gradle-wrapper.properties | 4 ++-- sample/build.gradle | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 6bbbf74..657798a 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Tue Sep 29 10:49:34 PDT 2015 +#Sun Jul 25 23:45:50 PDT 2019 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-2.7-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip diff --git a/sample/build.gradle b/sample/build.gradle index 8544a06..b343f2d 100644 --- a/sample/build.gradle +++ b/sample/build.gradle @@ -21,7 +21,7 @@ android { dependencies { implementation project(':library') - implementation 'androidx.appcompat:appcompat:1.0.2' + implementation 'androidx.appcompat:appcompat:1.1.0-rc01' implementation 'com.squareup.picasso:picasso:2.71828' implementation 'androidx.gridlayout:gridlayout:1.0.0' implementation 'androidx.legacy:legacy-support-v4:1.0.0' From 502110198a81d37da98c86093248d3484b0a4784 Mon Sep 17 00:00:00 2001 From: Siyamed SINIR Date: Thu, 25 Jul 2019 23:52:12 +0430 Subject: [PATCH 03/10] change package --- gradle.properties | 2 +- .../shapeimageview/test/BuildConfig.java | 13 ++++++++ .../shapeimageview/BuildConfig.java | 13 ++++++++ library/src/main/AndroidManifest.xml | 2 +- .../shapeimageview/BubbleImageView.java | 6 ++-- .../shapeimageview/CircularImageView.java | 6 ++-- .../shapeimageview/DiamondImageView.java | 6 ++-- .../shapeimageview/HeartImageView.java | 6 ++-- .../shapeimageview/HexagonImageView.java | 6 ++-- .../shapeimageview/OctogonImageView.java | 6 ++-- .../shapeimageview/PentagonImageView.java | 6 ++-- .../shapeimageview/RoundedImageView.java | 6 ++-- .../shapeimageview/ShaderImageView.java | 4 +-- .../shapeimageview/ShapeImageView.java | 6 ++-- .../shapeimageview/StarImageView.java | 6 ++-- .../mask/PorterCircularImageView.java | 2 +- .../shapeimageview/mask/PorterImageView.java | 4 +-- .../mask/PorterShapeImageView.java | 4 +-- .../shapeimageview/path/SvgUtil.java | 8 ++--- .../path/parser/CopyInputStream.java | 2 +- .../shapeimageview/path/parser/IdHandler.java | 2 +- .../shapeimageview/path/parser/IoUtil.java | 2 +- .../path/parser/NumberParse.java | 2 +- .../shapeimageview/path/parser/ParseUtil.java | 2 +- .../path/parser/ParserHelper.java | 2 +- .../shapeimageview/path/parser/PathInfo.java | 2 +- .../path/parser/PathParser.java | 2 +- .../shapeimageview/path/parser/SvgToPath.java | 2 +- .../path/parser/TransformParser.java | 2 +- .../shapeimageview/shader/BubbleShader.java | 4 +-- .../shapeimageview/shader/CircleShader.java | 2 +- .../shapeimageview/shader/RoundedShader.java | 4 +-- .../shapeimageview/shader/ShaderHelper.java | 4 +-- .../shapeimageview/shader/SvgShader.java | 8 ++--- sample/build.gradle | 4 +-- .../shapeimageview/sample/BuildConfig.java | 13 ++++++++ sample/src/main/AndroidManifest.xml | 4 +-- .../shapeimageview/sample/Constants.java | 2 +- .../shapeimageview/sample/SampleActivity.java | 2 +- .../sample/SampleBubbleFragment.java | 2 +- .../shapeimageview/sample/SampleFragment.java | 2 +- .../sample/SampleListFragment.java | 2 +- .../main/res/layout/fragment_all_sample.xml | 32 +++++++++---------- .../res/layout/fragment_porter_sample.xml | 10 +++--- .../res/layout/fragment_relative_sample.xml | 8 ++--- .../res/layout/fragment_shader_sample.xml | 24 +++++++------- .../layout/list_item_shader_bubble_left.xml | 2 +- .../layout/list_item_shader_bubble_right.xml | 2 +- .../res/layout/list_item_shader_circle.xml | 2 +- .../res/layout/list_item_shader_rounded.xml | 2 +- 50 files changed, 153 insertions(+), 114 deletions(-) create mode 100644 library/build/generated/source/buildConfig/androidTest/debug/com/github/arefhosseini/shapeimageview/test/BuildConfig.java create mode 100644 library/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/BuildConfig.java rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/BubbleImageView.java (88%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/CircularImageView.java (83%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/DiamondImageView.java (75%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/HeartImageView.java (76%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/HexagonImageView.java (75%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/OctogonImageView.java (75%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/PentagonImageView.java (76%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/RoundedImageView.java (83%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/ShaderImageView.java (96%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/ShapeImageView.java (88%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/StarImageView.java (75%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/mask/PorterCircularImageView.java (94%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/mask/PorterImageView.java (98%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/mask/PorterShapeImageView.java (96%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/path/SvgUtil.java (74%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/path/parser/CopyInputStream.java (93%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/path/parser/IdHandler.java (98%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/path/parser/IoUtil.java (84%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/path/parser/NumberParse.java (98%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/path/parser/ParseUtil.java (97%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/path/parser/ParserHelper.java (99%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/path/parser/PathInfo.java (94%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/path/parser/PathParser.java (99%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/path/parser/SvgToPath.java (99%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/path/parser/TransformParser.java (98%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/shader/BubbleShader.java (97%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/shader/CircleShader.java (97%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/shader/RoundedShader.java (95%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/shader/ShaderHelper.java (98%) rename library/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/shader/SvgShader.java (96%) create mode 100644 sample/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/sample/BuildConfig.java rename sample/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/sample/Constants.java (95%) rename sample/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/sample/SampleActivity.java (98%) rename sample/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/sample/SampleBubbleFragment.java (98%) rename sample/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/sample/SampleFragment.java (96%) rename sample/src/main/java/com/github/{siyamed => arefhosseini}/shapeimageview/sample/SampleListFragment.java (98%) diff --git a/gradle.properties b/gradle.properties index 80f6fad..97e98bf 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,5 +1,5 @@ VERSION_NAME=1.0.2 -VERSION_CODE=4 +VERSION_CODE=5 ANDROID_BUILD_MIN_SDK_VERSION=14 ANDROID_BUILD_TARGET_SDK_VERSION=29 diff --git a/library/build/generated/source/buildConfig/androidTest/debug/com/github/arefhosseini/shapeimageview/test/BuildConfig.java b/library/build/generated/source/buildConfig/androidTest/debug/com/github/arefhosseini/shapeimageview/test/BuildConfig.java new file mode 100644 index 0000000..51062e1 --- /dev/null +++ b/library/build/generated/source/buildConfig/androidTest/debug/com/github/arefhosseini/shapeimageview/test/BuildConfig.java @@ -0,0 +1,13 @@ +/** + * Automatically generated file. DO NOT MODIFY + */ +package com.github.siyamed.shapeimageview.test; + +public final class BuildConfig { + public static final boolean DEBUG = Boolean.parseBoolean("true"); + public static final String APPLICATION_ID = "com.github.siyamed.shapeimageview.test"; + public static final String BUILD_TYPE = "debug"; + public static final String FLAVOR = ""; + public static final int VERSION_CODE = 5; + public static final String VERSION_NAME = "1.0.2"; +} diff --git a/library/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/BuildConfig.java b/library/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/BuildConfig.java new file mode 100644 index 0000000..14af775 --- /dev/null +++ b/library/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/BuildConfig.java @@ -0,0 +1,13 @@ +/** + * Automatically generated file. DO NOT MODIFY + */ +package com.github.siyamed.shapeimageview; + +public final class BuildConfig { + public static final boolean DEBUG = Boolean.parseBoolean("true"); + public static final String APPLICATION_ID = "com.github.siyamed.shapeimageview"; + public static final String BUILD_TYPE = "debug"; + public static final String FLAVOR = ""; + public static final int VERSION_CODE = 5; + public static final String VERSION_NAME = "1.0.2"; +} diff --git a/library/src/main/AndroidManifest.xml b/library/src/main/AndroidManifest.xml index f2a0ccf..56e06eb 100644 --- a/library/src/main/AndroidManifest.xml +++ b/library/src/main/AndroidManifest.xml @@ -1,3 +1,3 @@ + package="com.github.arefhosseini.shapeimageview"> diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/BubbleImageView.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/BubbleImageView.java similarity index 88% rename from library/src/main/java/com/github/siyamed/shapeimageview/BubbleImageView.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/BubbleImageView.java index 4880a50..8017c42 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/BubbleImageView.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/BubbleImageView.java @@ -1,10 +1,10 @@ -package com.github.siyamed.shapeimageview; +package com.github.arefhosseini.shapeimageview; import android.content.Context; import android.util.AttributeSet; -import com.github.siyamed.shapeimageview.shader.BubbleShader; -import com.github.siyamed.shapeimageview.shader.ShaderHelper; +import com.github.arefhosseini.shapeimageview.shader.BubbleShader; +import com.github.arefhosseini.shapeimageview.shader.ShaderHelper; public class BubbleImageView extends ShaderImageView { private BubbleShader shader; diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/CircularImageView.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/CircularImageView.java similarity index 83% rename from library/src/main/java/com/github/siyamed/shapeimageview/CircularImageView.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/CircularImageView.java index d8098e4..700304a 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/CircularImageView.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/CircularImageView.java @@ -1,10 +1,10 @@ -package com.github.siyamed.shapeimageview; +package com.github.arefhosseini.shapeimageview; import android.content.Context; import android.util.AttributeSet; -import com.github.siyamed.shapeimageview.shader.CircleShader; -import com.github.siyamed.shapeimageview.shader.ShaderHelper; +import com.github.arefhosseini.shapeimageview.shader.CircleShader; +import com.github.arefhosseini.shapeimageview.shader.ShaderHelper; public class CircularImageView extends ShaderImageView { diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/DiamondImageView.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/DiamondImageView.java similarity index 75% rename from library/src/main/java/com/github/siyamed/shapeimageview/DiamondImageView.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/DiamondImageView.java index 84312fe..ee8fed2 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/DiamondImageView.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/DiamondImageView.java @@ -1,10 +1,10 @@ -package com.github.siyamed.shapeimageview; +package com.github.arefhosseini.shapeimageview; import android.content.Context; import android.util.AttributeSet; -import com.github.siyamed.shapeimageview.shader.ShaderHelper; -import com.github.siyamed.shapeimageview.shader.SvgShader; +import com.github.arefhosseini.shapeimageview.shader.ShaderHelper; +import com.github.arefhosseini.shapeimageview.shader.SvgShader; public class DiamondImageView extends ShaderImageView { diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/HeartImageView.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/HeartImageView.java similarity index 76% rename from library/src/main/java/com/github/siyamed/shapeimageview/HeartImageView.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/HeartImageView.java index 65c3453..3992360 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/HeartImageView.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/HeartImageView.java @@ -1,10 +1,10 @@ -package com.github.siyamed.shapeimageview; +package com.github.arefhosseini.shapeimageview; import android.content.Context; import android.util.AttributeSet; -import com.github.siyamed.shapeimageview.shader.ShaderHelper; -import com.github.siyamed.shapeimageview.shader.SvgShader; +import com.github.arefhosseini.shapeimageview.shader.ShaderHelper; +import com.github.arefhosseini.shapeimageview.shader.SvgShader; public class HeartImageView extends ShaderImageView { diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/HexagonImageView.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/HexagonImageView.java similarity index 75% rename from library/src/main/java/com/github/siyamed/shapeimageview/HexagonImageView.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/HexagonImageView.java index bc4bef6..5db410e 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/HexagonImageView.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/HexagonImageView.java @@ -1,10 +1,10 @@ -package com.github.siyamed.shapeimageview; +package com.github.arefhosseini.shapeimageview; import android.content.Context; import android.util.AttributeSet; -import com.github.siyamed.shapeimageview.shader.ShaderHelper; -import com.github.siyamed.shapeimageview.shader.SvgShader; +import com.github.arefhosseini.shapeimageview.shader.ShaderHelper; +import com.github.arefhosseini.shapeimageview.shader.SvgShader; public class HexagonImageView extends ShaderImageView { diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/OctogonImageView.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/OctogonImageView.java similarity index 75% rename from library/src/main/java/com/github/siyamed/shapeimageview/OctogonImageView.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/OctogonImageView.java index 64872dd..c49ffdf 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/OctogonImageView.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/OctogonImageView.java @@ -1,10 +1,10 @@ -package com.github.siyamed.shapeimageview; +package com.github.arefhosseini.shapeimageview; import android.content.Context; import android.util.AttributeSet; -import com.github.siyamed.shapeimageview.shader.ShaderHelper; -import com.github.siyamed.shapeimageview.shader.SvgShader; +import com.github.arefhosseini.shapeimageview.shader.ShaderHelper; +import com.github.arefhosseini.shapeimageview.shader.SvgShader; public class OctogonImageView extends ShaderImageView { diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/PentagonImageView.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/PentagonImageView.java similarity index 76% rename from library/src/main/java/com/github/siyamed/shapeimageview/PentagonImageView.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/PentagonImageView.java index 4764c98..70550ef 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/PentagonImageView.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/PentagonImageView.java @@ -1,10 +1,10 @@ -package com.github.siyamed.shapeimageview; +package com.github.arefhosseini.shapeimageview; import android.content.Context; import android.util.AttributeSet; -import com.github.siyamed.shapeimageview.shader.ShaderHelper; -import com.github.siyamed.shapeimageview.shader.SvgShader; +import com.github.arefhosseini.shapeimageview.shader.ShaderHelper; +import com.github.arefhosseini.shapeimageview.shader.SvgShader; public class PentagonImageView extends ShaderImageView { diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/RoundedImageView.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/RoundedImageView.java similarity index 83% rename from library/src/main/java/com/github/siyamed/shapeimageview/RoundedImageView.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/RoundedImageView.java index fed3d10..3f3d0e2 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/RoundedImageView.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/RoundedImageView.java @@ -1,10 +1,10 @@ -package com.github.siyamed.shapeimageview; +package com.github.arefhosseini.shapeimageview; import android.content.Context; import android.util.AttributeSet; -import com.github.siyamed.shapeimageview.shader.RoundedShader; -import com.github.siyamed.shapeimageview.shader.ShaderHelper; +import com.github.arefhosseini.shapeimageview.shader.RoundedShader; +import com.github.arefhosseini.shapeimageview.shader.ShaderHelper; public class RoundedImageView extends ShaderImageView { private RoundedShader shader; diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/ShaderImageView.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/ShaderImageView.java similarity index 96% rename from library/src/main/java/com/github/siyamed/shapeimageview/ShaderImageView.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/ShaderImageView.java index f4e83eb..0446517 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/ShaderImageView.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/ShaderImageView.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview; +package com.github.arefhosseini.shapeimageview; import android.content.Context; import android.graphics.Bitmap; @@ -7,7 +7,7 @@ import android.util.AttributeSet; import android.widget.ImageView; -import com.github.siyamed.shapeimageview.shader.ShaderHelper; +import com.github.arefhosseini.shapeimageview.shader.ShaderHelper; @SuppressWarnings("WeakerAccess") public abstract class ShaderImageView extends ImageView { diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/ShapeImageView.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/ShapeImageView.java similarity index 88% rename from library/src/main/java/com/github/siyamed/shapeimageview/ShapeImageView.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/ShapeImageView.java index 3e1d60f..21190ed 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/ShapeImageView.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/ShapeImageView.java @@ -1,10 +1,10 @@ -package com.github.siyamed.shapeimageview; +package com.github.arefhosseini.shapeimageview; import android.content.Context; import android.util.AttributeSet; -import com.github.siyamed.shapeimageview.shader.ShaderHelper; -import com.github.siyamed.shapeimageview.shader.SvgShader; +import com.github.arefhosseini.shapeimageview.shader.ShaderHelper; +import com.github.arefhosseini.shapeimageview.shader.SvgShader; public class ShapeImageView extends ShaderImageView { private SvgShader shader; diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/StarImageView.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/StarImageView.java similarity index 75% rename from library/src/main/java/com/github/siyamed/shapeimageview/StarImageView.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/StarImageView.java index 3f407cb..cca4d9a 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/StarImageView.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/StarImageView.java @@ -1,10 +1,10 @@ -package com.github.siyamed.shapeimageview; +package com.github.arefhosseini.shapeimageview; import android.content.Context; import android.util.AttributeSet; -import com.github.siyamed.shapeimageview.shader.ShaderHelper; -import com.github.siyamed.shapeimageview.shader.SvgShader; +import com.github.arefhosseini.shapeimageview.shader.ShaderHelper; +import com.github.arefhosseini.shapeimageview.shader.SvgShader; public class StarImageView extends ShaderImageView { diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/mask/PorterCircularImageView.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/mask/PorterCircularImageView.java similarity index 94% rename from library/src/main/java/com/github/siyamed/shapeimageview/mask/PorterCircularImageView.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/mask/PorterCircularImageView.java index 1368985..613f825 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/mask/PorterCircularImageView.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/mask/PorterCircularImageView.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview.mask; +package com.github.arefhosseini.shapeimageview.mask; import android.content.Context; import android.graphics.Canvas; diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/mask/PorterImageView.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/mask/PorterImageView.java similarity index 98% rename from library/src/main/java/com/github/siyamed/shapeimageview/mask/PorterImageView.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/mask/PorterImageView.java index 68f579e..70b311d 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/mask/PorterImageView.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/mask/PorterImageView.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview.mask; +package com.github.arefhosseini.shapeimageview.mask; import android.content.Context; import android.content.res.TypedArray; @@ -14,7 +14,7 @@ import android.util.Log; import android.widget.ImageView; -import com.github.siyamed.shapeimageview.R; +import com.github.arefhosseini.shapeimageview.R; @SuppressWarnings("WeakerAccess") public abstract class PorterImageView extends ImageView { diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/mask/PorterShapeImageView.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/mask/PorterShapeImageView.java similarity index 96% rename from library/src/main/java/com/github/siyamed/shapeimageview/mask/PorterShapeImageView.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/mask/PorterShapeImageView.java index fceff00..99a81c2 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/mask/PorterShapeImageView.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/mask/PorterShapeImageView.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview.mask; +package com.github.arefhosseini.shapeimageview.mask; import android.content.Context; import android.content.res.TypedArray; @@ -9,7 +9,7 @@ import android.graphics.drawable.Drawable; import android.util.AttributeSet; -import com.github.siyamed.shapeimageview.R; +import com.github.arefhosseini.shapeimageview.R; public class PorterShapeImageView extends PorterImageView { private Drawable shape; diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/path/SvgUtil.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/path/SvgUtil.java similarity index 74% rename from library/src/main/java/com/github/siyamed/shapeimageview/path/SvgUtil.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/path/SvgUtil.java index cc25fd8..89063af 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/path/SvgUtil.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/path/SvgUtil.java @@ -1,10 +1,10 @@ -package com.github.siyamed.shapeimageview.path; +package com.github.arefhosseini.shapeimageview.path; import android.content.Context; -import com.github.siyamed.shapeimageview.path.parser.IoUtil; -import com.github.siyamed.shapeimageview.path.parser.PathInfo; -import com.github.siyamed.shapeimageview.path.parser.SvgToPath; +import com.github.arefhosseini.shapeimageview.path.parser.IoUtil; +import com.github.arefhosseini.shapeimageview.path.parser.PathInfo; +import com.github.arefhosseini.shapeimageview.path.parser.SvgToPath; import java.io.InputStream; import java.util.Map; diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/CopyInputStream.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/CopyInputStream.java similarity index 93% rename from library/src/main/java/com/github/siyamed/shapeimageview/path/parser/CopyInputStream.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/CopyInputStream.java index a9b8b7f..d64b0ef 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/CopyInputStream.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/CopyInputStream.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview.path.parser; +package com.github.arefhosseini.shapeimageview.path.parser; import android.util.Log; diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/IdHandler.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/IdHandler.java similarity index 98% rename from library/src/main/java/com/github/siyamed/shapeimageview/path/parser/IdHandler.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/IdHandler.java index bfce6fc..e32fc3b 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/IdHandler.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/IdHandler.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview.path.parser; +package com.github.arefhosseini.shapeimageview.path.parser; import android.util.Log; diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/IoUtil.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/IoUtil.java similarity index 84% rename from library/src/main/java/com/github/siyamed/shapeimageview/path/parser/IoUtil.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/IoUtil.java index 98f69e2..757f4c0 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/IoUtil.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/IoUtil.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview.path.parser; +package com.github.arefhosseini.shapeimageview.path.parser; import java.io.InputStream; diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/NumberParse.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/NumberParse.java similarity index 98% rename from library/src/main/java/com/github/siyamed/shapeimageview/path/parser/NumberParse.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/NumberParse.java index a242f3b..312fe2e 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/NumberParse.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/NumberParse.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview.path.parser; +package com.github.arefhosseini.shapeimageview.path.parser; import org.xmlpull.v1.XmlPullParser; diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/ParseUtil.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/ParseUtil.java similarity index 97% rename from library/src/main/java/com/github/siyamed/shapeimageview/path/parser/ParseUtil.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/ParseUtil.java index 40ae679..16e4808 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/ParseUtil.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/ParseUtil.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview.path.parser; +package com.github.arefhosseini.shapeimageview.path.parser; import org.xmlpull.v1.XmlPullParser; diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/ParserHelper.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/ParserHelper.java similarity index 99% rename from library/src/main/java/com/github/siyamed/shapeimageview/path/parser/ParserHelper.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/ParserHelper.java index 0ce2b05..6392c30 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/ParserHelper.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/ParserHelper.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview.path.parser; +package com.github.arefhosseini.shapeimageview.path.parser; /* diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/PathInfo.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/PathInfo.java similarity index 94% rename from library/src/main/java/com/github/siyamed/shapeimageview/path/parser/PathInfo.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/PathInfo.java index bd18ecd..9a0ddc9 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/PathInfo.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/PathInfo.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview.path.parser; +package com.github.arefhosseini.shapeimageview.path.parser; import android.graphics.Matrix; import android.graphics.Path; diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/PathParser.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/PathParser.java similarity index 99% rename from library/src/main/java/com/github/siyamed/shapeimageview/path/parser/PathParser.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/PathParser.java index 554f2ff..2e6e3d7 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/PathParser.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/PathParser.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview.path.parser; +package com.github.arefhosseini.shapeimageview.path.parser; import android.graphics.Path; import android.graphics.RectF; diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/SvgToPath.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/SvgToPath.java similarity index 99% rename from library/src/main/java/com/github/siyamed/shapeimageview/path/parser/SvgToPath.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/SvgToPath.java index d17a986..0665a53 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/SvgToPath.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/SvgToPath.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview.path.parser; +package com.github.arefhosseini.shapeimageview.path.parser; import android.graphics.Matrix; import android.graphics.Path; diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/TransformParser.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/TransformParser.java similarity index 98% rename from library/src/main/java/com/github/siyamed/shapeimageview/path/parser/TransformParser.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/TransformParser.java index 6a6fe6f..50b5aa1 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/TransformParser.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/TransformParser.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview.path.parser; +package com.github.arefhosseini.shapeimageview.path.parser; import android.graphics.Matrix; import android.util.Log; diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/shader/BubbleShader.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/shader/BubbleShader.java similarity index 97% rename from library/src/main/java/com/github/siyamed/shapeimageview/shader/BubbleShader.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/shader/BubbleShader.java index 3719229..5a93899 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/shader/BubbleShader.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/shader/BubbleShader.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview.shader; +package com.github.arefhosseini.shapeimageview.shader; import android.annotation.SuppressLint; import android.content.Context; @@ -8,7 +8,7 @@ import android.graphics.Path; import android.util.AttributeSet; -import com.github.siyamed.shapeimageview.R; +import com.github.arefhosseini.shapeimageview.R; public class BubbleShader extends ShaderHelper { private static final int DEFAULT_HEIGHT_DP = 10; diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/shader/CircleShader.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/shader/CircleShader.java similarity index 97% rename from library/src/main/java/com/github/siyamed/shapeimageview/shader/CircleShader.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/shader/CircleShader.java index ba76684..cac9bfb 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/shader/CircleShader.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/shader/CircleShader.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview.shader; +package com.github.arefhosseini.shapeimageview.shader; import android.content.Context; import android.graphics.Canvas; diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/shader/RoundedShader.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/shader/RoundedShader.java similarity index 95% rename from library/src/main/java/com/github/siyamed/shapeimageview/shader/RoundedShader.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/shader/RoundedShader.java index 0b1a9b5..c6a68be 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/shader/RoundedShader.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/shader/RoundedShader.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview.shader; +package com.github.arefhosseini.shapeimageview.shader; import android.content.Context; import android.content.res.TypedArray; @@ -7,7 +7,7 @@ import android.graphics.RectF; import android.util.AttributeSet; -import com.github.siyamed.shapeimageview.R; +import com.github.arefhosseini.shapeimageview.R; public class RoundedShader extends ShaderHelper { diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/shader/ShaderHelper.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/shader/ShaderHelper.java similarity index 98% rename from library/src/main/java/com/github/siyamed/shapeimageview/shader/ShaderHelper.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/shader/ShaderHelper.java index 943976b..7d274a6 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/shader/ShaderHelper.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/shader/ShaderHelper.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview.shader; +package com.github.arefhosseini.shapeimageview.shader; import android.content.Context; import android.content.res.TypedArray; @@ -14,7 +14,7 @@ import android.util.AttributeSet; import android.util.DisplayMetrics; -import com.github.siyamed.shapeimageview.R; +import com.github.arefhosseini.shapeimageview.R; @SuppressWarnings("WeakerAccess") public abstract class ShaderHelper { diff --git a/library/src/main/java/com/github/siyamed/shapeimageview/shader/SvgShader.java b/library/src/main/java/com/github/arefhosseini/shapeimageview/shader/SvgShader.java similarity index 96% rename from library/src/main/java/com/github/siyamed/shapeimageview/shader/SvgShader.java rename to library/src/main/java/com/github/arefhosseini/shapeimageview/shader/SvgShader.java index 391f19a..6b14c75 100644 --- a/library/src/main/java/com/github/siyamed/shapeimageview/shader/SvgShader.java +++ b/library/src/main/java/com/github/arefhosseini/shapeimageview/shader/SvgShader.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview.shader; +package com.github.arefhosseini.shapeimageview.shader; import android.content.Context; import android.content.res.TypedArray; @@ -8,9 +8,9 @@ import android.graphics.Path; import android.util.AttributeSet; -import com.github.siyamed.shapeimageview.R; -import com.github.siyamed.shapeimageview.path.SvgUtil; -import com.github.siyamed.shapeimageview.path.parser.PathInfo; +import com.github.arefhosseini.shapeimageview.R; +import com.github.arefhosseini.shapeimageview.path.SvgUtil; +import com.github.arefhosseini.shapeimageview.path.parser.PathInfo; @SuppressWarnings("WeakerAccess") public class SvgShader extends ShaderHelper { diff --git a/sample/build.gradle b/sample/build.gradle index b343f2d..27d723a 100644 --- a/sample/build.gradle +++ b/sample/build.gradle @@ -8,8 +8,8 @@ android { applicationId "com.github.arefhosseini.shapeimageview.sample" minSdkVersion Integer.parseInt(project.ANDROID_BUILD_MIN_SDK_VERSION) targetSdkVersion Integer.parseInt(project.ANDROID_BUILD_TARGET_SDK_VERSION) - versionCode 4 - versionName "1.0.2" + versionCode 5 + versionName "1.0.3" } buildTypes { release { diff --git a/sample/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/sample/BuildConfig.java b/sample/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/sample/BuildConfig.java new file mode 100644 index 0000000..28a3475 --- /dev/null +++ b/sample/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/sample/BuildConfig.java @@ -0,0 +1,13 @@ +/** + * Automatically generated file. DO NOT MODIFY + */ +package com.github.siyamed.shapeimageview.sample; + +public final class BuildConfig { + public static final boolean DEBUG = Boolean.parseBoolean("true"); + public static final String APPLICATION_ID = "com.github.arefhosseini.shapeimageview.sample"; + public static final String BUILD_TYPE = "debug"; + public static final String FLAVOR = ""; + public static final int VERSION_CODE = 5; + public static final String VERSION_NAME = "1.0.3"; +} diff --git a/sample/src/main/AndroidManifest.xml b/sample/src/main/AndroidManifest.xml index a2fcac9..4a7e0dd 100644 --- a/sample/src/main/AndroidManifest.xml +++ b/sample/src/main/AndroidManifest.xml @@ -1,6 +1,6 @@ + package="com.github.arefhosseini.shapeimageview.sample" > @@ -13,7 +13,7 @@ android:label="@string/app_name" android:theme="@style/AppTheme" > diff --git a/sample/src/main/java/com/github/siyamed/shapeimageview/sample/Constants.java b/sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/Constants.java similarity index 95% rename from sample/src/main/java/com/github/siyamed/shapeimageview/sample/Constants.java rename to sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/Constants.java index 7e8b6d2..4d8f546 100644 --- a/sample/src/main/java/com/github/siyamed/shapeimageview/sample/Constants.java +++ b/sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/Constants.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview.sample; +package com.github.arefhosseini.shapeimageview.sample; public class Constants { diff --git a/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleActivity.java b/sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleActivity.java similarity index 98% rename from sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleActivity.java rename to sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleActivity.java index c41a508..837d4c0 100644 --- a/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleActivity.java +++ b/sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleActivity.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview.sample; +package com.github.arefhosseini.shapeimageview.sample; import android.os.Bundle; import androidx.fragment.app.Fragment; diff --git a/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleBubbleFragment.java b/sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleBubbleFragment.java similarity index 98% rename from sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleBubbleFragment.java rename to sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleBubbleFragment.java index 7bfd074..45a5df3 100644 --- a/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleBubbleFragment.java +++ b/sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleBubbleFragment.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview.sample; +package com.github.arefhosseini.shapeimageview.sample; import android.content.Context; import android.os.Bundle; diff --git a/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleFragment.java b/sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleFragment.java similarity index 96% rename from sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleFragment.java rename to sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleFragment.java index 1f48567..19ece23 100644 --- a/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleFragment.java +++ b/sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleFragment.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview.sample; +package com.github.arefhosseini.shapeimageview.sample; import android.os.Bundle; import androidx.fragment.app.Fragment; diff --git a/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleListFragment.java b/sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleListFragment.java similarity index 98% rename from sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleListFragment.java rename to sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleListFragment.java index 4f373d5..6609ed5 100644 --- a/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleListFragment.java +++ b/sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleListFragment.java @@ -1,4 +1,4 @@ -package com.github.siyamed.shapeimageview.sample; +package com.github.arefhosseini.shapeimageview.sample; import android.content.Context; import android.os.Bundle; diff --git a/sample/src/main/res/layout/fragment_all_sample.xml b/sample/src/main/res/layout/fragment_all_sample.xml index 451f73f..23f4f75 100644 --- a/sample/src/main/res/layout/fragment_all_sample.xml +++ b/sample/src/main/res/layout/fragment_all_sample.xml @@ -16,7 +16,7 @@ android:layout_width="match_parent" android:layout_height="wrap_content"> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Date: Fri, 26 Jul 2019 00:05:21 +0430 Subject: [PATCH 04/10] update gradle wrapper --- gradle/wrapper/gradle-wrapper.jar | Bin 53638 -> 55190 bytes gradle/wrapper/gradle-wrapper.properties | 3 +- gradlew | 72 ++++++++++-------- gradlew.bat | 14 +--- .../shapeimageview/test/BuildConfig.java | 4 +- .../shapeimageview/BuildConfig.java | 4 +- .../shapeimageview/sample/BuildConfig.java | 2 +- 7 files changed, 52 insertions(+), 47 deletions(-) diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index e8c6bf7bb47dff6b81c2cf7a349eb7e912c9fbe2..87b738cbd051603d91cc39de6cb000dd98fe6b02 100644 GIT binary patch literal 55190 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 z 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%0AB1q=av0)K=-*!|(RDoglJ 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 \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null APP_NAME="Gradle" APP_BASE_NAME=`basename "$0"` +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m"' + # Use the maximum available, or set MAX_FD != -1 to use that value. MAX_FD="maximum" -warn ( ) { +warn () { echo "$*" } -die ( ) { +die () { echo echo "$*" echo @@ -30,6 +48,7 @@ die ( ) { cygwin=false msys=false darwin=false +nonstop=false case "`uname`" in CYGWIN* ) cygwin=true @@ -40,26 +59,11 @@ case "`uname`" in MINGW* ) msys=true ;; + NONSTOP* ) + nonstop=true + ;; esac -# Attempt to set APP_HOME -# Resolve links: $0 may be a link -PRG="$0" -# Need this for relative symlinks. -while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG=`dirname "$PRG"`"/$link" - fi -done -SAVED="`pwd`" -cd "`dirname \"$PRG\"`/" >&- -APP_HOME="`pwd -P`" -cd "$SAVED" >&- - CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar # Determine the Java command to use to start the JVM. @@ -85,7 +89,7 @@ location of your Java installation." fi # Increase the maximum file descriptors if we can. -if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then +if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then MAX_FD_LIMIT=`ulimit -H -n` if [ $? -eq 0 ] ; then if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then @@ -150,11 +154,19 @@ if $cygwin ; then esac fi -# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules -function splitJvmOpts() { - JVM_OPTS=("$@") +# Escape application args +save () { + for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done + echo " " } -eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS -JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" +APP_ARGS=$(save "$@") + +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" + +# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong +if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then + cd "$(dirname "$0")" +fi -exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" +exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat index aec9973..0f8d593 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -8,14 +8,14 @@ @rem Set local scope for the variables with windows NT shell if "%OS%"=="Windows_NT" setlocal -@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS= - set DIRNAME=%~dp0 if "%DIRNAME%" == "" set DIRNAME=. set APP_BASE_NAME=%~n0 set APP_HOME=%DIRNAME% +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" + @rem Find java.exe if defined JAVA_HOME goto findJavaFromJavaHome @@ -46,10 +46,9 @@ echo location of your Java installation. goto fail :init -@rem Get command-line arguments, handling Windowz variants +@rem Get command-line arguments, handling Windows variants if not "%OS%" == "Windows_NT" goto win9xME_args -if "%@eval[2+2]" == "4" goto 4NT_args :win9xME_args @rem Slurp the command line arguments. @@ -60,11 +59,6 @@ set _SKIP=2 if "x%~1" == "x" goto execute set CMD_LINE_ARGS=%* -goto execute - -:4NT_args -@rem Get arguments from the 4NT Shell from JP Software -set CMD_LINE_ARGS=%$ :execute @rem Setup the command line diff --git a/library/build/generated/source/buildConfig/androidTest/debug/com/github/arefhosseini/shapeimageview/test/BuildConfig.java b/library/build/generated/source/buildConfig/androidTest/debug/com/github/arefhosseini/shapeimageview/test/BuildConfig.java index 51062e1..41366db 100644 --- a/library/build/generated/source/buildConfig/androidTest/debug/com/github/arefhosseini/shapeimageview/test/BuildConfig.java +++ b/library/build/generated/source/buildConfig/androidTest/debug/com/github/arefhosseini/shapeimageview/test/BuildConfig.java @@ -1,11 +1,11 @@ /** * Automatically generated file. DO NOT MODIFY */ -package com.github.siyamed.shapeimageview.test; +package com.github.arefhosseini.shapeimageview.test; public final class BuildConfig { public static final boolean DEBUG = Boolean.parseBoolean("true"); - public static final String APPLICATION_ID = "com.github.siyamed.shapeimageview.test"; + public static final String APPLICATION_ID = "com.github.arefhosseini.shapeimageview.test"; public static final String BUILD_TYPE = "debug"; public static final String FLAVOR = ""; public static final int VERSION_CODE = 5; diff --git a/library/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/BuildConfig.java b/library/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/BuildConfig.java index 14af775..670f435 100644 --- a/library/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/BuildConfig.java +++ b/library/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/BuildConfig.java @@ -1,11 +1,11 @@ /** * Automatically generated file. DO NOT MODIFY */ -package com.github.siyamed.shapeimageview; +package com.github.arefhosseini.shapeimageview; public final class BuildConfig { public static final boolean DEBUG = Boolean.parseBoolean("true"); - public static final String APPLICATION_ID = "com.github.siyamed.shapeimageview"; + public static final String APPLICATION_ID = "com.github.arefhosseini.shapeimageview"; public static final String BUILD_TYPE = "debug"; public static final String FLAVOR = ""; public static final int VERSION_CODE = 5; diff --git a/sample/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/sample/BuildConfig.java b/sample/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/sample/BuildConfig.java index 28a3475..3a04e8f 100644 --- a/sample/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/sample/BuildConfig.java +++ b/sample/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/sample/BuildConfig.java @@ -1,7 +1,7 @@ /** * Automatically generated file. DO NOT MODIFY */ -package com.github.siyamed.shapeimageview.sample; +package com.github.arefhosseini.shapeimageview.sample; public final class BuildConfig { public static final boolean DEBUG = Boolean.parseBoolean("true"); From c1f6dbbb41fc760888b3d2d486e4a03841507f28 Mon Sep 17 00:00:00 2001 From: Siyamed SINIR Date: Fri, 26 Jul 2019 00:23:41 +0430 Subject: [PATCH 05/10] update gradle wrapper --- gradle/wrapper/gradle-wrapper.properties | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 4b7e1f3..87d8475 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,6 @@ +#Fri Jul 26 00:14:28 IRDT 2019 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.5.1-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-5.5.1-all.zip From 7a37513f577a87f34251619cf12acf5b0aa62844 Mon Sep 17 00:00:00 2001 From: Siyamed SINIR Date: Fri, 26 Jul 2019 00:32:58 +0430 Subject: [PATCH 06/10] update build gradle --- build.gradle | 1 + library/build.gradle | 4 +--- sample/build.gradle | 1 + 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build.gradle b/build.gradle index 2c7b71a..28be4a7 100644 --- a/build.gradle +++ b/build.gradle @@ -12,6 +12,7 @@ allprojects { repositories { google() jcenter() + maven { url 'https://jitpack.io' } } } diff --git a/library/build.gradle b/library/build.gradle index e9b7e9f..7f0c163 100644 --- a/library/build.gradle +++ b/library/build.gradle @@ -14,6 +14,4 @@ android { dependencies { implementation group: 'net.sf.kxml', name: 'kxml2', version:'2.3.0' -} - -apply from: 'https://raw.github.com/chrisbanes/gradle-mvn-push/master/gradle-mvn-push.gradle' \ No newline at end of file +} \ No newline at end of file diff --git a/sample/build.gradle b/sample/build.gradle index 27d723a..7d51f38 100644 --- a/sample/build.gradle +++ b/sample/build.gradle @@ -26,4 +26,5 @@ dependencies { implementation 'androidx.gridlayout:gridlayout:1.0.0' implementation 'androidx.legacy:legacy-support-v4:1.0.0' implementation 'com.astuetz:pagerslidingtabstrip:1.0.1' + implementation project(':library') } From deaa4f1a12b6e1e67463b68838c97a0dc051a607 Mon Sep 17 00:00:00 2001 From: Aref Hosseini Date: Fri, 26 Jul 2019 00:53:39 +0430 Subject: [PATCH 07/10] Update README.md --- README.md | 74 +++++++++++++++---------------------------------------- 1 file changed, 20 insertions(+), 54 deletions(-) diff --git a/README.md b/README.md index f4bc550..ee1a0a7 100644 --- a/README.md +++ b/README.md @@ -1,52 +1,28 @@ -# Shape Image View -[![](https://travis-ci.org/siyamed/android-shape-imageview.svg?branch=master&style=flat)](https://travis-ci.org/siyamed/android-shape-imageview/) -[![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.github.siyamed/android-shape-imageview/badge.svg?style=flat)](https://maven-badges.herokuapp.com/maven-central/com.github.siyamed/android-shape-imageview) - -Provides a set of custom shaped android imageview components, and a framework to define more shapes. Implements both **shader** and **bitmap mask** based image views. - -[Shader]: http://developer.android.com/reference/android/graphics/BitmapShader.html -[Path.addPath]: http://developer.android.com/reference/android/graphics/Path.html#addPath(android.graphics.Path) -[Path]: http://developer.android.com/reference/android/graphics/Path.html -[xfermode]: http://developer.android.com/reference/android/graphics/Xfermode.html -[svg_location]: library/src/main/res/raw -[svg_rectangle]: http://www.w3schools.com/svg/svg_rect.asp -[svg_circle]: http://www.w3schools.com/svg/svg_circle.asp -[svg_ellipse]: http://www.w3schools.com/svg/svg_ellipse.asp -[svg_polygon]: http://www.w3schools.com/svg/svg_polygon.asp -[svg_path]: http://www.w3schools.com/svg/svg_path.asp -[svg_group]: https://developer.mozilla.org/en-US/docs/Web/SVG/Element/g -[svg_transformations]: https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/transform -[sample_app_play_store]: https://play.google.com/store/apps/details?id=com.github.siyamed.shapeimageview.sample -[youtube_video]: http://youtu.be/6fCkptmwxtQ - -* [Shader][Shader] based one uses *canvas draw methods* and *[Path][Path]* class, -* Mask based one uses [xfermode][xfermode] to draw image on bitmaps defined by android shape XML's or resource bitmaps. - -
- -Chat Bubble Image - - -Shape Image View - -
- -There are many projects online implementing such components, however one goal of this project is to provide a -performant/smooth scrolling **image view component framework** to define different shapes for imageviews. - -**For use with recycling view such as ListView or GridView please use shader based implementations.** - -[Sample app in play store][sample_app_play_store] - -[Youtube video][youtube_video] +# Shape Image View (Compatible with AndroidX) +[![](https://jitpack.io/v/arefhosseini/android-shape-imageview.svg)](https://jitpack.io/#arefhosseini/android-shape-imageview) + +[![](https://jitci.com/gh/arefhosseini/android-shape-imageview/svg)](https://jitci.com/gh/arefhosseini/android-shape-imageview) ## How to use -Gradle dependency: -```Groovy -compile 'com.github.siyamed:android-shape-imageview:0.9.+@aar' +Step 1. Add JitPack repository in your root build.gradle at the end of repositories: + +```groovy +allprojects { + repositories { + ... + maven { url 'https://jitpack.io' } + } +} ``` +Step 2. Add the dependency: + +```groovy +dependencies { + implementation 'com.github.arefhosseini:android-shape-imageview:1.0.2' +} +``` ###Shader Based ImageView's ####BubbleImageView ![Android Bubble ImageView](images/small-bubble.png) @@ -195,10 +171,6 @@ This method reads a shape file (either bitmap or an android shape xml), creates See/execute the [sample](sample) for a demonstration of the components. -If you are lazy check [this youtube video][youtube_video] demonstrating scrolling in the sample app - -You can download the [sample app from play store][sample_app_play_store] - ## Proguard ``` @@ -209,9 +181,3 @@ You can download the [sample app from play store][sample_app_play_store] -dontwarn com.github.siyamed.** -keep class com.github.siyamed.shapeimageview.**{ *; } ``` - -## References -* [MostafaGazar/CustomShapeImageView](https://github.com/MostafaGazar/CustomShapeImageView): Used this project a basis for bitmap masks -* [geosolutions-it/mapsforge/svg-android](https://github.com/geosolutions-it/mapsforge/tree/master/svg-android): Used and modified to create a path from a svg file - -[![Android Shape Image View on Android Arsenal](https://img.shields.io/badge/Android%20Arsenal-android--shape--imageview-brightgreen.svg?style=flat)](https://android-arsenal.com/details/1/932) From aed17e93e3176ff0aba0f5b400f98d37ee49e352 Mon Sep 17 00:00:00 2001 From: Aref Hosseini Date: Fri, 26 Jul 2019 01:27:31 +0430 Subject: [PATCH 08/10] Update README.md --- README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README.md b/README.md index ee1a0a7..56b4ea6 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,5 @@ # Shape Image View (Compatible with AndroidX) [![](https://jitpack.io/v/arefhosseini/android-shape-imageview.svg)](https://jitpack.io/#arefhosseini/android-shape-imageview) - [![](https://jitci.com/gh/arefhosseini/android-shape-imageview/svg)](https://jitci.com/gh/arefhosseini/android-shape-imageview) ## How to use From 4369a16cd0a3d517af56a16f8986aef1489f305c Mon Sep 17 00:00:00 2001 From: Aref Date: Fri, 26 Jul 2019 15:03:53 +0430 Subject: [PATCH 09/10] package refactoring --- gradle.properties | 18 +++++------ .../shapeimageview/test/BuildConfig.java | 13 -------- .../shapeimageview/BuildConfig.java | 13 -------- library/src/main/AndroidManifest.xml | 2 +- .../shapeimageview/BubbleImageView.java | 6 ++-- .../shapeimageview/CircularImageView.java | 6 ++-- .../shapeimageview/DiamondImageView.java | 6 ++-- .../shapeimageview/HeartImageView.java | 6 ++-- .../shapeimageview/HexagonImageView.java | 6 ++-- .../shapeimageview/OctogonImageView.java | 6 ++-- .../shapeimageview/PentagonImageView.java | 6 ++-- .../shapeimageview/RoundedImageView.java | 6 ++-- .../shapeimageview/ShaderImageView.java | 4 +-- .../shapeimageview/ShapeImageView.java | 6 ++-- .../shapeimageview/StarImageView.java | 6 ++-- .../mask/PorterCircularImageView.java | 2 +- .../shapeimageview/mask/PorterImageView.java | 4 +-- .../mask/PorterShapeImageView.java | 4 +-- .../shapeimageview/path/SvgUtil.java | 8 ++--- .../path/parser/CopyInputStream.java | 2 +- .../shapeimageview/path/parser/IdHandler.java | 2 +- .../shapeimageview/path/parser/IoUtil.java | 2 +- .../path/parser/NumberParse.java | 2 +- .../shapeimageview/path/parser/ParseUtil.java | 2 +- .../path/parser/ParserHelper.java | 2 +- .../shapeimageview/path/parser/PathInfo.java | 2 +- .../path/parser/PathParser.java | 2 +- .../shapeimageview/path/parser/SvgToPath.java | 2 +- .../path/parser/TransformParser.java | 2 +- .../shapeimageview/shader/BubbleShader.java | 4 +-- .../shapeimageview/shader/CircleShader.java | 2 +- .../shapeimageview/shader/RoundedShader.java | 4 +-- .../shapeimageview/shader/ShaderHelper.java | 4 +-- .../shapeimageview/shader/SvgShader.java | 8 ++--- sample/build.gradle | 7 ++-- .../shapeimageview/sample/BuildConfig.java | 13 -------- sample/src/main/AndroidManifest.xml | 4 +-- .../shapeimageview/sample/Constants.java | 2 +- .../shapeimageview/sample/SampleActivity.java | 2 +- .../sample/SampleBubbleFragment.java | 2 +- .../shapeimageview/sample/SampleFragment.java | 2 +- .../sample/SampleListFragment.java | 2 +- .../main/res/layout/fragment_all_sample.xml | 32 +++++++++---------- .../res/layout/fragment_porter_sample.xml | 10 +++--- .../res/layout/fragment_relative_sample.xml | 8 ++--- .../res/layout/fragment_shader_sample.xml | 24 +++++++------- .../layout/list_item_shader_bubble_left.xml | 2 +- .../layout/list_item_shader_bubble_right.xml | 2 +- .../res/layout/list_item_shader_circle.xml | 2 +- .../res/layout/list_item_shader_rounded.xml | 2 +- 50 files changed, 123 insertions(+), 163 deletions(-) delete mode 100644 library/build/generated/source/buildConfig/androidTest/debug/com/github/arefhosseini/shapeimageview/test/BuildConfig.java delete mode 100644 library/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/BuildConfig.java rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/BubbleImageView.java (88%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/CircularImageView.java (83%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/DiamondImageView.java (75%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/HeartImageView.java (76%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/HexagonImageView.java (75%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/OctogonImageView.java (75%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/PentagonImageView.java (76%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/RoundedImageView.java (83%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/ShaderImageView.java (96%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/ShapeImageView.java (88%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/StarImageView.java (75%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/mask/PorterCircularImageView.java (94%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/mask/PorterImageView.java (98%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/mask/PorterShapeImageView.java (96%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/path/SvgUtil.java (74%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/path/parser/CopyInputStream.java (93%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/path/parser/IdHandler.java (98%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/path/parser/IoUtil.java (84%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/path/parser/NumberParse.java (98%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/path/parser/ParseUtil.java (97%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/path/parser/ParserHelper.java (99%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/path/parser/PathInfo.java (94%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/path/parser/PathParser.java (99%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/path/parser/SvgToPath.java (99%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/path/parser/TransformParser.java (98%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/shader/BubbleShader.java (97%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/shader/CircleShader.java (97%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/shader/RoundedShader.java (95%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/shader/ShaderHelper.java (98%) rename library/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/shader/SvgShader.java (96%) delete mode 100644 sample/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/sample/BuildConfig.java rename sample/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/sample/Constants.java (95%) rename sample/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/sample/SampleActivity.java (98%) rename sample/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/sample/SampleBubbleFragment.java (98%) rename sample/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/sample/SampleFragment.java (96%) rename sample/src/main/java/com/github/{arefhosseini => siyamed}/shapeimageview/sample/SampleListFragment.java (98%) diff --git a/gradle.properties b/gradle.properties index 97e98bf..f517377 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,23 +1,23 @@ -VERSION_NAME=1.0.2 -VERSION_CODE=5 +VERSION_NAME=1.0.4 +VERSION_CODE=6 ANDROID_BUILD_MIN_SDK_VERSION=14 ANDROID_BUILD_TARGET_SDK_VERSION=29 ANDROID_BUILD_TOOLS_VERSION=29.0.0 ANDROID_BUILD_SDK_VERSION=29 -GROUP=com.github.arefhosseini +GROUP=com.github.siyamed POM_DESCRIPTION=Provides a set of custom shaped android imageview components, and a framework to define more shapes. Implements both shader and bitmap mask based image views. Shader based one uses canvas draw methods and Path construct, Mask based one uses xfermode to draw image on bitmaps defined by android shape XML's or resource bitmaps. -POM_URL=https://github.com/arefhosseini/android-shape-imageview -POM_SCM_URL=https://github.com/arefhosseini/android-shape-imageview -POM_SCM_CONNECTION=scm:git@github.com:arefhosseini/android-shape-imageview.git -POM_SCM_DEV_CONNECTION=scm:git@github.com:arefhosseini/android-shape-imageview.git +POM_URL=https://github.com/siyamed/android-shape-imageview +POM_SCM_URL=https://github.com/siyamed/android-shape-imageview +POM_SCM_CONNECTION=scm:git@github.com:siyamed/android-shape-imageview.git +POM_SCM_DEV_CONNECTION=scm:git@github.com:siyamed/android-shape-imageview.git 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=arefhosseini -POM_DEVELOPER_NAME=Aref Hosseini +POM_DEVELOPER_ID=siyamed +POM_DEVELOPER_NAME=Siyamed Sinir android.useAndroidX=true android.enableJetifier=true diff --git a/library/build/generated/source/buildConfig/androidTest/debug/com/github/arefhosseini/shapeimageview/test/BuildConfig.java b/library/build/generated/source/buildConfig/androidTest/debug/com/github/arefhosseini/shapeimageview/test/BuildConfig.java deleted file mode 100644 index 41366db..0000000 --- a/library/build/generated/source/buildConfig/androidTest/debug/com/github/arefhosseini/shapeimageview/test/BuildConfig.java +++ /dev/null @@ -1,13 +0,0 @@ -/** - * Automatically generated file. DO NOT MODIFY - */ -package com.github.arefhosseini.shapeimageview.test; - -public final class BuildConfig { - public static final boolean DEBUG = Boolean.parseBoolean("true"); - public static final String APPLICATION_ID = "com.github.arefhosseini.shapeimageview.test"; - public static final String BUILD_TYPE = "debug"; - public static final String FLAVOR = ""; - public static final int VERSION_CODE = 5; - public static final String VERSION_NAME = "1.0.2"; -} diff --git a/library/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/BuildConfig.java b/library/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/BuildConfig.java deleted file mode 100644 index 670f435..0000000 --- a/library/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/BuildConfig.java +++ /dev/null @@ -1,13 +0,0 @@ -/** - * Automatically generated file. DO NOT MODIFY - */ -package com.github.arefhosseini.shapeimageview; - -public final class BuildConfig { - public static final boolean DEBUG = Boolean.parseBoolean("true"); - public static final String APPLICATION_ID = "com.github.arefhosseini.shapeimageview"; - public static final String BUILD_TYPE = "debug"; - public static final String FLAVOR = ""; - public static final int VERSION_CODE = 5; - public static final String VERSION_NAME = "1.0.2"; -} diff --git a/library/src/main/AndroidManifest.xml b/library/src/main/AndroidManifest.xml index 56e06eb..f2a0ccf 100644 --- a/library/src/main/AndroidManifest.xml +++ b/library/src/main/AndroidManifest.xml @@ -1,3 +1,3 @@ + package="com.github.siyamed.shapeimageview"> diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/BubbleImageView.java b/library/src/main/java/com/github/siyamed/shapeimageview/BubbleImageView.java similarity index 88% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/BubbleImageView.java rename to library/src/main/java/com/github/siyamed/shapeimageview/BubbleImageView.java index 8017c42..4880a50 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/BubbleImageView.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/BubbleImageView.java @@ -1,10 +1,10 @@ -package com.github.arefhosseini.shapeimageview; +package com.github.siyamed.shapeimageview; import android.content.Context; import android.util.AttributeSet; -import com.github.arefhosseini.shapeimageview.shader.BubbleShader; -import com.github.arefhosseini.shapeimageview.shader.ShaderHelper; +import com.github.siyamed.shapeimageview.shader.BubbleShader; +import com.github.siyamed.shapeimageview.shader.ShaderHelper; public class BubbleImageView extends ShaderImageView { private BubbleShader shader; diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/CircularImageView.java b/library/src/main/java/com/github/siyamed/shapeimageview/CircularImageView.java similarity index 83% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/CircularImageView.java rename to library/src/main/java/com/github/siyamed/shapeimageview/CircularImageView.java index 700304a..d8098e4 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/CircularImageView.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/CircularImageView.java @@ -1,10 +1,10 @@ -package com.github.arefhosseini.shapeimageview; +package com.github.siyamed.shapeimageview; import android.content.Context; import android.util.AttributeSet; -import com.github.arefhosseini.shapeimageview.shader.CircleShader; -import com.github.arefhosseini.shapeimageview.shader.ShaderHelper; +import com.github.siyamed.shapeimageview.shader.CircleShader; +import com.github.siyamed.shapeimageview.shader.ShaderHelper; public class CircularImageView extends ShaderImageView { diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/DiamondImageView.java b/library/src/main/java/com/github/siyamed/shapeimageview/DiamondImageView.java similarity index 75% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/DiamondImageView.java rename to library/src/main/java/com/github/siyamed/shapeimageview/DiamondImageView.java index ee8fed2..84312fe 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/DiamondImageView.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/DiamondImageView.java @@ -1,10 +1,10 @@ -package com.github.arefhosseini.shapeimageview; +package com.github.siyamed.shapeimageview; import android.content.Context; import android.util.AttributeSet; -import com.github.arefhosseini.shapeimageview.shader.ShaderHelper; -import com.github.arefhosseini.shapeimageview.shader.SvgShader; +import com.github.siyamed.shapeimageview.shader.ShaderHelper; +import com.github.siyamed.shapeimageview.shader.SvgShader; public class DiamondImageView extends ShaderImageView { diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/HeartImageView.java b/library/src/main/java/com/github/siyamed/shapeimageview/HeartImageView.java similarity index 76% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/HeartImageView.java rename to library/src/main/java/com/github/siyamed/shapeimageview/HeartImageView.java index 3992360..65c3453 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/HeartImageView.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/HeartImageView.java @@ -1,10 +1,10 @@ -package com.github.arefhosseini.shapeimageview; +package com.github.siyamed.shapeimageview; import android.content.Context; import android.util.AttributeSet; -import com.github.arefhosseini.shapeimageview.shader.ShaderHelper; -import com.github.arefhosseini.shapeimageview.shader.SvgShader; +import com.github.siyamed.shapeimageview.shader.ShaderHelper; +import com.github.siyamed.shapeimageview.shader.SvgShader; public class HeartImageView extends ShaderImageView { diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/HexagonImageView.java b/library/src/main/java/com/github/siyamed/shapeimageview/HexagonImageView.java similarity index 75% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/HexagonImageView.java rename to library/src/main/java/com/github/siyamed/shapeimageview/HexagonImageView.java index 5db410e..bc4bef6 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/HexagonImageView.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/HexagonImageView.java @@ -1,10 +1,10 @@ -package com.github.arefhosseini.shapeimageview; +package com.github.siyamed.shapeimageview; import android.content.Context; import android.util.AttributeSet; -import com.github.arefhosseini.shapeimageview.shader.ShaderHelper; -import com.github.arefhosseini.shapeimageview.shader.SvgShader; +import com.github.siyamed.shapeimageview.shader.ShaderHelper; +import com.github.siyamed.shapeimageview.shader.SvgShader; public class HexagonImageView extends ShaderImageView { diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/OctogonImageView.java b/library/src/main/java/com/github/siyamed/shapeimageview/OctogonImageView.java similarity index 75% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/OctogonImageView.java rename to library/src/main/java/com/github/siyamed/shapeimageview/OctogonImageView.java index c49ffdf..64872dd 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/OctogonImageView.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/OctogonImageView.java @@ -1,10 +1,10 @@ -package com.github.arefhosseini.shapeimageview; +package com.github.siyamed.shapeimageview; import android.content.Context; import android.util.AttributeSet; -import com.github.arefhosseini.shapeimageview.shader.ShaderHelper; -import com.github.arefhosseini.shapeimageview.shader.SvgShader; +import com.github.siyamed.shapeimageview.shader.ShaderHelper; +import com.github.siyamed.shapeimageview.shader.SvgShader; public class OctogonImageView extends ShaderImageView { diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/PentagonImageView.java b/library/src/main/java/com/github/siyamed/shapeimageview/PentagonImageView.java similarity index 76% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/PentagonImageView.java rename to library/src/main/java/com/github/siyamed/shapeimageview/PentagonImageView.java index 70550ef..4764c98 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/PentagonImageView.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/PentagonImageView.java @@ -1,10 +1,10 @@ -package com.github.arefhosseini.shapeimageview; +package com.github.siyamed.shapeimageview; import android.content.Context; import android.util.AttributeSet; -import com.github.arefhosseini.shapeimageview.shader.ShaderHelper; -import com.github.arefhosseini.shapeimageview.shader.SvgShader; +import com.github.siyamed.shapeimageview.shader.ShaderHelper; +import com.github.siyamed.shapeimageview.shader.SvgShader; public class PentagonImageView extends ShaderImageView { diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/RoundedImageView.java b/library/src/main/java/com/github/siyamed/shapeimageview/RoundedImageView.java similarity index 83% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/RoundedImageView.java rename to library/src/main/java/com/github/siyamed/shapeimageview/RoundedImageView.java index 3f3d0e2..fed3d10 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/RoundedImageView.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/RoundedImageView.java @@ -1,10 +1,10 @@ -package com.github.arefhosseini.shapeimageview; +package com.github.siyamed.shapeimageview; import android.content.Context; import android.util.AttributeSet; -import com.github.arefhosseini.shapeimageview.shader.RoundedShader; -import com.github.arefhosseini.shapeimageview.shader.ShaderHelper; +import com.github.siyamed.shapeimageview.shader.RoundedShader; +import com.github.siyamed.shapeimageview.shader.ShaderHelper; public class RoundedImageView extends ShaderImageView { private RoundedShader shader; diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/ShaderImageView.java b/library/src/main/java/com/github/siyamed/shapeimageview/ShaderImageView.java similarity index 96% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/ShaderImageView.java rename to library/src/main/java/com/github/siyamed/shapeimageview/ShaderImageView.java index 0446517..f4e83eb 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/ShaderImageView.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/ShaderImageView.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview; +package com.github.siyamed.shapeimageview; import android.content.Context; import android.graphics.Bitmap; @@ -7,7 +7,7 @@ import android.util.AttributeSet; import android.widget.ImageView; -import com.github.arefhosseini.shapeimageview.shader.ShaderHelper; +import com.github.siyamed.shapeimageview.shader.ShaderHelper; @SuppressWarnings("WeakerAccess") public abstract class ShaderImageView extends ImageView { diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/ShapeImageView.java b/library/src/main/java/com/github/siyamed/shapeimageview/ShapeImageView.java similarity index 88% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/ShapeImageView.java rename to library/src/main/java/com/github/siyamed/shapeimageview/ShapeImageView.java index 21190ed..3e1d60f 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/ShapeImageView.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/ShapeImageView.java @@ -1,10 +1,10 @@ -package com.github.arefhosseini.shapeimageview; +package com.github.siyamed.shapeimageview; import android.content.Context; import android.util.AttributeSet; -import com.github.arefhosseini.shapeimageview.shader.ShaderHelper; -import com.github.arefhosseini.shapeimageview.shader.SvgShader; +import com.github.siyamed.shapeimageview.shader.ShaderHelper; +import com.github.siyamed.shapeimageview.shader.SvgShader; public class ShapeImageView extends ShaderImageView { private SvgShader shader; diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/StarImageView.java b/library/src/main/java/com/github/siyamed/shapeimageview/StarImageView.java similarity index 75% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/StarImageView.java rename to library/src/main/java/com/github/siyamed/shapeimageview/StarImageView.java index cca4d9a..3f407cb 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/StarImageView.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/StarImageView.java @@ -1,10 +1,10 @@ -package com.github.arefhosseini.shapeimageview; +package com.github.siyamed.shapeimageview; import android.content.Context; import android.util.AttributeSet; -import com.github.arefhosseini.shapeimageview.shader.ShaderHelper; -import com.github.arefhosseini.shapeimageview.shader.SvgShader; +import com.github.siyamed.shapeimageview.shader.ShaderHelper; +import com.github.siyamed.shapeimageview.shader.SvgShader; public class StarImageView extends ShaderImageView { diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/mask/PorterCircularImageView.java b/library/src/main/java/com/github/siyamed/shapeimageview/mask/PorterCircularImageView.java similarity index 94% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/mask/PorterCircularImageView.java rename to library/src/main/java/com/github/siyamed/shapeimageview/mask/PorterCircularImageView.java index 613f825..1368985 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/mask/PorterCircularImageView.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/mask/PorterCircularImageView.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview.mask; +package com.github.siyamed.shapeimageview.mask; import android.content.Context; import android.graphics.Canvas; diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/mask/PorterImageView.java b/library/src/main/java/com/github/siyamed/shapeimageview/mask/PorterImageView.java similarity index 98% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/mask/PorterImageView.java rename to library/src/main/java/com/github/siyamed/shapeimageview/mask/PorterImageView.java index 70b311d..68f579e 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/mask/PorterImageView.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/mask/PorterImageView.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview.mask; +package com.github.siyamed.shapeimageview.mask; import android.content.Context; import android.content.res.TypedArray; @@ -14,7 +14,7 @@ import android.util.Log; import android.widget.ImageView; -import com.github.arefhosseini.shapeimageview.R; +import com.github.siyamed.shapeimageview.R; @SuppressWarnings("WeakerAccess") public abstract class PorterImageView extends ImageView { diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/mask/PorterShapeImageView.java b/library/src/main/java/com/github/siyamed/shapeimageview/mask/PorterShapeImageView.java similarity index 96% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/mask/PorterShapeImageView.java rename to library/src/main/java/com/github/siyamed/shapeimageview/mask/PorterShapeImageView.java index 99a81c2..fceff00 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/mask/PorterShapeImageView.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/mask/PorterShapeImageView.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview.mask; +package com.github.siyamed.shapeimageview.mask; import android.content.Context; import android.content.res.TypedArray; @@ -9,7 +9,7 @@ import android.graphics.drawable.Drawable; import android.util.AttributeSet; -import com.github.arefhosseini.shapeimageview.R; +import com.github.siyamed.shapeimageview.R; public class PorterShapeImageView extends PorterImageView { private Drawable shape; diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/path/SvgUtil.java b/library/src/main/java/com/github/siyamed/shapeimageview/path/SvgUtil.java similarity index 74% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/path/SvgUtil.java rename to library/src/main/java/com/github/siyamed/shapeimageview/path/SvgUtil.java index 89063af..cc25fd8 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/path/SvgUtil.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/path/SvgUtil.java @@ -1,10 +1,10 @@ -package com.github.arefhosseini.shapeimageview.path; +package com.github.siyamed.shapeimageview.path; import android.content.Context; -import com.github.arefhosseini.shapeimageview.path.parser.IoUtil; -import com.github.arefhosseini.shapeimageview.path.parser.PathInfo; -import com.github.arefhosseini.shapeimageview.path.parser.SvgToPath; +import com.github.siyamed.shapeimageview.path.parser.IoUtil; +import com.github.siyamed.shapeimageview.path.parser.PathInfo; +import com.github.siyamed.shapeimageview.path.parser.SvgToPath; import java.io.InputStream; import java.util.Map; diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/CopyInputStream.java b/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/CopyInputStream.java similarity index 93% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/CopyInputStream.java rename to library/src/main/java/com/github/siyamed/shapeimageview/path/parser/CopyInputStream.java index d64b0ef..a9b8b7f 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/CopyInputStream.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/CopyInputStream.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview.path.parser; +package com.github.siyamed.shapeimageview.path.parser; import android.util.Log; diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/IdHandler.java b/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/IdHandler.java similarity index 98% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/IdHandler.java rename to library/src/main/java/com/github/siyamed/shapeimageview/path/parser/IdHandler.java index e32fc3b..bfce6fc 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/IdHandler.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/IdHandler.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview.path.parser; +package com.github.siyamed.shapeimageview.path.parser; import android.util.Log; diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/IoUtil.java b/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/IoUtil.java similarity index 84% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/IoUtil.java rename to library/src/main/java/com/github/siyamed/shapeimageview/path/parser/IoUtil.java index 757f4c0..98f69e2 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/IoUtil.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/IoUtil.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview.path.parser; +package com.github.siyamed.shapeimageview.path.parser; import java.io.InputStream; diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/NumberParse.java b/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/NumberParse.java similarity index 98% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/NumberParse.java rename to library/src/main/java/com/github/siyamed/shapeimageview/path/parser/NumberParse.java index 312fe2e..a242f3b 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/NumberParse.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/NumberParse.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview.path.parser; +package com.github.siyamed.shapeimageview.path.parser; import org.xmlpull.v1.XmlPullParser; diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/ParseUtil.java b/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/ParseUtil.java similarity index 97% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/ParseUtil.java rename to library/src/main/java/com/github/siyamed/shapeimageview/path/parser/ParseUtil.java index 16e4808..40ae679 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/ParseUtil.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/ParseUtil.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview.path.parser; +package com.github.siyamed.shapeimageview.path.parser; import org.xmlpull.v1.XmlPullParser; diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/ParserHelper.java b/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/ParserHelper.java similarity index 99% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/ParserHelper.java rename to library/src/main/java/com/github/siyamed/shapeimageview/path/parser/ParserHelper.java index 6392c30..0ce2b05 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/ParserHelper.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/ParserHelper.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview.path.parser; +package com.github.siyamed.shapeimageview.path.parser; /* diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/PathInfo.java b/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/PathInfo.java similarity index 94% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/PathInfo.java rename to library/src/main/java/com/github/siyamed/shapeimageview/path/parser/PathInfo.java index 9a0ddc9..bd18ecd 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/PathInfo.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/PathInfo.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview.path.parser; +package com.github.siyamed.shapeimageview.path.parser; import android.graphics.Matrix; import android.graphics.Path; diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/PathParser.java b/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/PathParser.java similarity index 99% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/PathParser.java rename to library/src/main/java/com/github/siyamed/shapeimageview/path/parser/PathParser.java index 2e6e3d7..554f2ff 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/PathParser.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/PathParser.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview.path.parser; +package com.github.siyamed.shapeimageview.path.parser; import android.graphics.Path; import android.graphics.RectF; diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/SvgToPath.java b/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/SvgToPath.java similarity index 99% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/SvgToPath.java rename to library/src/main/java/com/github/siyamed/shapeimageview/path/parser/SvgToPath.java index 0665a53..d17a986 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/SvgToPath.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/SvgToPath.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview.path.parser; +package com.github.siyamed.shapeimageview.path.parser; import android.graphics.Matrix; import android.graphics.Path; diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/TransformParser.java b/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/TransformParser.java similarity index 98% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/TransformParser.java rename to library/src/main/java/com/github/siyamed/shapeimageview/path/parser/TransformParser.java index 50b5aa1..6a6fe6f 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/path/parser/TransformParser.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/path/parser/TransformParser.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview.path.parser; +package com.github.siyamed.shapeimageview.path.parser; import android.graphics.Matrix; import android.util.Log; diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/shader/BubbleShader.java b/library/src/main/java/com/github/siyamed/shapeimageview/shader/BubbleShader.java similarity index 97% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/shader/BubbleShader.java rename to library/src/main/java/com/github/siyamed/shapeimageview/shader/BubbleShader.java index 5a93899..3719229 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/shader/BubbleShader.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/shader/BubbleShader.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview.shader; +package com.github.siyamed.shapeimageview.shader; import android.annotation.SuppressLint; import android.content.Context; @@ -8,7 +8,7 @@ import android.graphics.Path; import android.util.AttributeSet; -import com.github.arefhosseini.shapeimageview.R; +import com.github.siyamed.shapeimageview.R; public class BubbleShader extends ShaderHelper { private static final int DEFAULT_HEIGHT_DP = 10; diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/shader/CircleShader.java b/library/src/main/java/com/github/siyamed/shapeimageview/shader/CircleShader.java similarity index 97% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/shader/CircleShader.java rename to library/src/main/java/com/github/siyamed/shapeimageview/shader/CircleShader.java index cac9bfb..ba76684 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/shader/CircleShader.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/shader/CircleShader.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview.shader; +package com.github.siyamed.shapeimageview.shader; import android.content.Context; import android.graphics.Canvas; diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/shader/RoundedShader.java b/library/src/main/java/com/github/siyamed/shapeimageview/shader/RoundedShader.java similarity index 95% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/shader/RoundedShader.java rename to library/src/main/java/com/github/siyamed/shapeimageview/shader/RoundedShader.java index c6a68be..0b1a9b5 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/shader/RoundedShader.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/shader/RoundedShader.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview.shader; +package com.github.siyamed.shapeimageview.shader; import android.content.Context; import android.content.res.TypedArray; @@ -7,7 +7,7 @@ import android.graphics.RectF; import android.util.AttributeSet; -import com.github.arefhosseini.shapeimageview.R; +import com.github.siyamed.shapeimageview.R; public class RoundedShader extends ShaderHelper { diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/shader/ShaderHelper.java b/library/src/main/java/com/github/siyamed/shapeimageview/shader/ShaderHelper.java similarity index 98% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/shader/ShaderHelper.java rename to library/src/main/java/com/github/siyamed/shapeimageview/shader/ShaderHelper.java index 7d274a6..943976b 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/shader/ShaderHelper.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/shader/ShaderHelper.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview.shader; +package com.github.siyamed.shapeimageview.shader; import android.content.Context; import android.content.res.TypedArray; @@ -14,7 +14,7 @@ import android.util.AttributeSet; import android.util.DisplayMetrics; -import com.github.arefhosseini.shapeimageview.R; +import com.github.siyamed.shapeimageview.R; @SuppressWarnings("WeakerAccess") public abstract class ShaderHelper { diff --git a/library/src/main/java/com/github/arefhosseini/shapeimageview/shader/SvgShader.java b/library/src/main/java/com/github/siyamed/shapeimageview/shader/SvgShader.java similarity index 96% rename from library/src/main/java/com/github/arefhosseini/shapeimageview/shader/SvgShader.java rename to library/src/main/java/com/github/siyamed/shapeimageview/shader/SvgShader.java index 6b14c75..391f19a 100644 --- a/library/src/main/java/com/github/arefhosseini/shapeimageview/shader/SvgShader.java +++ b/library/src/main/java/com/github/siyamed/shapeimageview/shader/SvgShader.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview.shader; +package com.github.siyamed.shapeimageview.shader; import android.content.Context; import android.content.res.TypedArray; @@ -8,9 +8,9 @@ import android.graphics.Path; import android.util.AttributeSet; -import com.github.arefhosseini.shapeimageview.R; -import com.github.arefhosseini.shapeimageview.path.SvgUtil; -import com.github.arefhosseini.shapeimageview.path.parser.PathInfo; +import com.github.siyamed.shapeimageview.R; +import com.github.siyamed.shapeimageview.path.SvgUtil; +import com.github.siyamed.shapeimageview.path.parser.PathInfo; @SuppressWarnings("WeakerAccess") public class SvgShader extends ShaderHelper { diff --git a/sample/build.gradle b/sample/build.gradle index 7d51f38..98a0b06 100644 --- a/sample/build.gradle +++ b/sample/build.gradle @@ -5,11 +5,11 @@ android { buildToolsVersion project.ANDROID_BUILD_TOOLS_VERSION defaultConfig { - applicationId "com.github.arefhosseini.shapeimageview.sample" + applicationId "com.github.siyamed.shapeimageview.sample" minSdkVersion Integer.parseInt(project.ANDROID_BUILD_MIN_SDK_VERSION) targetSdkVersion Integer.parseInt(project.ANDROID_BUILD_TARGET_SDK_VERSION) - versionCode 5 - versionName "1.0.3" + versionCode 6 + versionName "1.0.4" } buildTypes { release { @@ -26,5 +26,4 @@ dependencies { implementation 'androidx.gridlayout:gridlayout:1.0.0' implementation 'androidx.legacy:legacy-support-v4:1.0.0' implementation 'com.astuetz:pagerslidingtabstrip:1.0.1' - implementation project(':library') } diff --git a/sample/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/sample/BuildConfig.java b/sample/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/sample/BuildConfig.java deleted file mode 100644 index 3a04e8f..0000000 --- a/sample/build/generated/source/buildConfig/debug/com/github/arefhosseini/shapeimageview/sample/BuildConfig.java +++ /dev/null @@ -1,13 +0,0 @@ -/** - * Automatically generated file. DO NOT MODIFY - */ -package com.github.arefhosseini.shapeimageview.sample; - -public final class BuildConfig { - public static final boolean DEBUG = Boolean.parseBoolean("true"); - public static final String APPLICATION_ID = "com.github.arefhosseini.shapeimageview.sample"; - public static final String BUILD_TYPE = "debug"; - public static final String FLAVOR = ""; - public static final int VERSION_CODE = 5; - public static final String VERSION_NAME = "1.0.3"; -} diff --git a/sample/src/main/AndroidManifest.xml b/sample/src/main/AndroidManifest.xml index 4a7e0dd..03e3b2d 100644 --- a/sample/src/main/AndroidManifest.xml +++ b/sample/src/main/AndroidManifest.xml @@ -1,6 +1,6 @@ + package="com.github.siyamed.shapeimageview.sample" > @@ -13,7 +13,7 @@ android:label="@string/app_name" android:theme="@style/AppTheme" > diff --git a/sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/Constants.java b/sample/src/main/java/com/github/siyamed/shapeimageview/sample/Constants.java similarity index 95% rename from sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/Constants.java rename to sample/src/main/java/com/github/siyamed/shapeimageview/sample/Constants.java index 4d8f546..7e8b6d2 100644 --- a/sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/Constants.java +++ b/sample/src/main/java/com/github/siyamed/shapeimageview/sample/Constants.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview.sample; +package com.github.siyamed.shapeimageview.sample; public class Constants { diff --git a/sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleActivity.java b/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleActivity.java similarity index 98% rename from sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleActivity.java rename to sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleActivity.java index 837d4c0..c41a508 100644 --- a/sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleActivity.java +++ b/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleActivity.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview.sample; +package com.github.siyamed.shapeimageview.sample; import android.os.Bundle; import androidx.fragment.app.Fragment; diff --git a/sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleBubbleFragment.java b/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleBubbleFragment.java similarity index 98% rename from sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleBubbleFragment.java rename to sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleBubbleFragment.java index 45a5df3..7bfd074 100644 --- a/sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleBubbleFragment.java +++ b/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleBubbleFragment.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview.sample; +package com.github.siyamed.shapeimageview.sample; import android.content.Context; import android.os.Bundle; diff --git a/sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleFragment.java b/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleFragment.java similarity index 96% rename from sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleFragment.java rename to sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleFragment.java index 19ece23..1f48567 100644 --- a/sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleFragment.java +++ b/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleFragment.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview.sample; +package com.github.siyamed.shapeimageview.sample; import android.os.Bundle; import androidx.fragment.app.Fragment; diff --git a/sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleListFragment.java b/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleListFragment.java similarity index 98% rename from sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleListFragment.java rename to sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleListFragment.java index 6609ed5..4f373d5 100644 --- a/sample/src/main/java/com/github/arefhosseini/shapeimageview/sample/SampleListFragment.java +++ b/sample/src/main/java/com/github/siyamed/shapeimageview/sample/SampleListFragment.java @@ -1,4 +1,4 @@ -package com.github.arefhosseini.shapeimageview.sample; +package com.github.siyamed.shapeimageview.sample; import android.content.Context; import android.os.Bundle; diff --git a/sample/src/main/res/layout/fragment_all_sample.xml b/sample/src/main/res/layout/fragment_all_sample.xml index 23f4f75..451f73f 100644 --- a/sample/src/main/res/layout/fragment_all_sample.xml +++ b/sample/src/main/res/layout/fragment_all_sample.xml @@ -16,7 +16,7 @@ android:layout_width="match_parent" android:layout_height="wrap_content"> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Date: Sat, 27 Jul 2019 21:35:04 +0430 Subject: [PATCH 10/10] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 56b4ea6..260b5ff 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,7 @@ allprojects { ```groovy dependencies { - implementation 'com.github.arefhosseini:android-shape-imageview:1.0.2' + implementation 'com.github.arefhosseini:android-shape-imageview:1.0.3' } ``` ###Shader Based ImageView's