From dcd492f5dd6652f3e78e4b5dc378f62fd756b5b3 Mon Sep 17 00:00:00 2001 From: "m.attari" Date: Thu, 1 Aug 2019 15:58:26 +0300 Subject: [PATCH 1/4] read more accessibility --- .../java/com/borjabravo/readmoretextview/ReadMoreTextView.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreTextView.java b/readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreTextView.java index f560151..262c01a 100644 --- a/readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreTextView.java +++ b/readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreTextView.java @@ -42,7 +42,7 @@ public class ReadMoreTextView extends TextView { private CharSequence text; private BufferType bufferType; - private boolean readMore = true; + public boolean readMore = true; private int trimLength; private CharSequence trimCollapsedText; private CharSequence trimExpandedText; From 12a121eca63c36a1b49031b2aa1a4f6eb3a816bb Mon Sep 17 00:00:00 2001 From: "m.attari" Date: Sun, 4 Aug 2019 10:10:50 +0300 Subject: [PATCH 2/4] read more accessibility --- .../com/borjabravo/readmoretextview/ReadMoreTextView.java | 8 +++++++- readmoretextview/src/main/res/values/attrs.xml | 1 + 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreTextView.java b/readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreTextView.java index 262c01a..c11c27f 100644 --- a/readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreTextView.java +++ b/readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreTextView.java @@ -38,11 +38,12 @@ public class ReadMoreTextView extends TextView { private static final int DEFAULT_TRIM_LINES = 2; private static final int INVALID_END_INDEX = -1; private static final boolean DEFAULT_SHOW_TRIM_EXPANDED_TEXT = true; + private static final boolean DEFAULT_READ_MORE = true; private static final String ELLIPSIZE = "... "; private CharSequence text; private BufferType bufferType; - public boolean readMore = true; + private boolean readMore; private int trimLength; private CharSequence trimCollapsedText; private CharSequence trimExpandedText; @@ -73,6 +74,7 @@ public ReadMoreTextView(Context context, AttributeSet attrs) { ContextCompat.getColor(context, R.color.accent)); this.showTrimExpandedText = typedArray.getBoolean(R.styleable.ReadMoreTextView_showTrimExpandedText, DEFAULT_SHOW_TRIM_EXPANDED_TEXT); + this.readMore = typedArray.getBoolean(R.styleable.ReadMoreTextView_readMore, DEFAULT_READ_MORE); this.trimMode = typedArray.getInt(R.styleable.ReadMoreTextView_trimMode, TRIM_MODE_LINES); typedArray.recycle(); viewMoreSpan = new ReadMoreClickableSpan(); @@ -178,6 +180,10 @@ public void setTrimLines(int trimLines) { this.trimLines = trimLines; } + public void setReadMore(boolean readMore) { + this.readMore = readMore; + } + private class ReadMoreClickableSpan extends ClickableSpan { @Override public void onClick(View widget) { diff --git a/readmoretextview/src/main/res/values/attrs.xml b/readmoretextview/src/main/res/values/attrs.xml index 54da4a8..8de7fb3 100644 --- a/readmoretextview/src/main/res/values/attrs.xml +++ b/readmoretextview/src/main/res/values/attrs.xml @@ -5,6 +5,7 @@ + From d00f2981ed20996707bac535bf29ccad0e02f1cb Mon Sep 17 00:00:00 2001 From: "m.attari" Date: Sun, 4 Aug 2019 12:30:00 +0300 Subject: [PATCH 3/4] - updating SDK - ReadMoreListener --- app/build.gradle | 10 +++++----- build.gradle | 13 +++++++++---- gradle/wrapper/gradle-wrapper.properties | 4 ++-- .../readmoretextview/ReadMoreListener.java | 9 +++++++++ .../readmoretextview/ReadMoreTextView.java | 9 +++++++++ 5 files changed, 34 insertions(+), 11 deletions(-) create mode 100644 readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreListener.java diff --git a/app/build.gradle b/app/build.gradle index 7c556c1..b13a69c 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,13 +1,13 @@ apply plugin: 'com.android.application' android { - compileSdkVersion 27 - buildToolsVersion "27.0.0" + compileSdkVersion 28 + buildToolsVersion "28.0.3" defaultConfig { applicationId "com.borjabravo.readmoretextview" minSdkVersion 14 - targetSdkVersion 27 + targetSdkVersion 28 versionCode 1 versionName "1.0" } @@ -25,8 +25,8 @@ android { } dependencies { - implementation 'com.android.support:appcompat-v7:27.0.0' - implementation 'com.android.support:design:27.0.0' + implementation 'com.android.support:appcompat-v7:28.0.0' + implementation 'com.android.support:design:28.0.0' implementation project(':readmoretextview') testImplementation 'junit:junit:4.12' } diff --git a/build.gradle b/build.gradle index ea35e68..5f94fdf 100644 --- a/build.gradle +++ b/build.gradle @@ -1,18 +1,23 @@ buildscript { repositories { - jcenter() google() + maven { + url "https://maven.google.com" + } + jcenter() + mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:3.0.0' - classpath 'com.novoda:bintray-release:0.5.0' + classpath 'com.android.tools.build:gradle:3.4.2' + classpath 'com.novoda:bintray-release:0.8.0' } } allprojects { repositories { - jcenter() google() + mavenCentral() + jcenter() } } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index b692f5e..4d49568 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Sun Nov 12 12:19:18 CET 2017 +#Sun Aug 04 11:57:53 EEST 2019 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip diff --git a/readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreListener.java b/readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreListener.java new file mode 100644 index 0000000..8c9e0f9 --- /dev/null +++ b/readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreListener.java @@ -0,0 +1,9 @@ +package com.borjabravo.readmoretextview; + +/** + * Created by Mays Atari. + */ + +public interface ReadMoreListener { + void onReadMoreClick(boolean readMore); +} diff --git a/readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreTextView.java b/readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreTextView.java index c11c27f..cd0d202 100644 --- a/readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreTextView.java +++ b/readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreTextView.java @@ -50,6 +50,7 @@ public class ReadMoreTextView extends TextView { private ReadMoreClickableSpan viewMoreSpan; private int colorClickableText; private boolean showTrimExpandedText; + private ReadMoreListener readMoreListener; private int trimMode; private int lineEndIndex; @@ -184,11 +185,19 @@ public void setReadMore(boolean readMore) { this.readMore = readMore; } + public void setReadMoreListener(ReadMoreListener readMoreListener) { + this.readMoreListener = readMoreListener; + } + private class ReadMoreClickableSpan extends ClickableSpan { @Override public void onClick(View widget) { readMore = !readMore; setText(); + + if(readMoreListener != null){ + readMoreListener.onReadMoreClick(readMore); + } } @Override From 16ec8b6916b4be6f4c3826d35c041afb466917b3 Mon Sep 17 00:00:00 2001 From: "m.attari" Date: Sun, 4 Aug 2019 17:52:31 +0300 Subject: [PATCH 4/4] - updating SDK --- app/build.gradle | 4 ++-- .../borjabravo/readmoretextviewsample/MainActivity.java | 2 +- build.gradle | 2 -- gradle.properties | 4 +++- readmoretextview/build.gradle | 8 ++++---- .../com/borjabravo/readmoretextview/ReadMoreTextView.java | 4 +++- 6 files changed, 13 insertions(+), 11 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index b13a69c..4e213b9 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -25,8 +25,8 @@ android { } dependencies { - implementation 'com.android.support:appcompat-v7:28.0.0' - implementation 'com.android.support:design:28.0.0' + implementation 'androidx.appcompat:appcompat:1.0.2' + implementation 'com.google.android.material:material:1.0.0' implementation project(':readmoretextview') testImplementation 'junit:junit:4.12' } diff --git a/app/src/main/java/com/borjabravo/readmoretextviewsample/MainActivity.java b/app/src/main/java/com/borjabravo/readmoretextviewsample/MainActivity.java index 8f50499..8b97bf4 100644 --- a/app/src/main/java/com/borjabravo/readmoretextviewsample/MainActivity.java +++ b/app/src/main/java/com/borjabravo/readmoretextviewsample/MainActivity.java @@ -1,7 +1,7 @@ package com.borjabravo.readmoretextviewsample; import android.os.Bundle; -import android.support.v7.app.AppCompatActivity; +import androidx.appcompat.app.AppCompatActivity; import android.widget.TextView; public class MainActivity extends AppCompatActivity { diff --git a/build.gradle b/build.gradle index 5f94fdf..d41323b 100644 --- a/build.gradle +++ b/build.gradle @@ -5,7 +5,6 @@ buildscript { url "https://maven.google.com" } jcenter() - mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:3.4.2' @@ -16,7 +15,6 @@ buildscript { allprojects { repositories { google() - mavenCentral() jcenter() } } diff --git a/gradle.properties b/gradle.properties index 1d3591c..915f0e6 100644 --- a/gradle.properties +++ b/gradle.properties @@ -15,4 +15,6 @@ # When configured, Gradle will run in incubating parallel mode. # This option should only be used with decoupled projects. More details, visit # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects -# org.gradle.parallel=true \ No newline at end of file +# org.gradle.parallel=true +android.enableJetifier=true +android.useAndroidX=true \ No newline at end of file diff --git a/readmoretextview/build.gradle b/readmoretextview/build.gradle index 1fefb5e..a1d0a2a 100644 --- a/readmoretextview/build.gradle +++ b/readmoretextview/build.gradle @@ -12,12 +12,12 @@ publish { } android { - compileSdkVersion 27 - buildToolsVersion '27.0.0' + compileSdkVersion 28 + buildToolsVersion '28.0.3' defaultConfig { minSdkVersion 14 - targetSdkVersion 27 + targetSdkVersion 28 versionCode 1 versionName "1.0" } @@ -28,6 +28,6 @@ android { } dependencies { - implementation 'com.android.support:support-compat:27.0.0' + implementation 'androidx.core:core:1.0.2' testImplementation 'junit:junit:4.12' } \ No newline at end of file diff --git a/readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreTextView.java b/readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreTextView.java index cd0d202..0b5a0b0 100644 --- a/readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreTextView.java +++ b/readmoretextview/src/main/java/com/borjabravo/readmoretextview/ReadMoreTextView.java @@ -15,11 +15,11 @@ */ package com.borjabravo.readmoretextview; + import android.content.Context; import android.content.res.TypedArray; import android.graphics.Color; import android.os.Build; -import android.support.v4.content.ContextCompat; import android.text.SpannableStringBuilder; import android.text.Spanned; import android.text.TextPaint; @@ -30,6 +30,8 @@ import android.view.ViewTreeObserver; import android.widget.TextView; +import androidx.core.content.ContextCompat; + public class ReadMoreTextView extends TextView { private static final int TRIM_MODE_LINES = 0;