upgrade androidx.browser to 1.2.0 (#1595)

main
Konrad Pozniak 5 years ago committed by GitHub
parent d9d2fdbc4b
commit 8aa217c028
  1. 3
      app/build.gradle
  2. 14
      app/src/main/java/com/keylesspalace/tusky/LoginActivity.kt
  3. 16
      app/src/main/java/com/keylesspalace/tusky/util/LinkHelper.java

@ -107,7 +107,8 @@ dependencies {
implementation "androidx.core:core-ktx:1.2.0-beta01" implementation "androidx.core:core-ktx:1.2.0-beta01"
implementation "androidx.appcompat:appcompat:1.1.0" implementation "androidx.appcompat:appcompat:1.1.0"
implementation "androidx.fragment:fragment-ktx:1.1.0" implementation "androidx.fragment:fragment-ktx:1.1.0"
implementation "androidx.browser:browser:1.0.0" implementation "androidx.browser:browser:1.2.0"
implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.0.0"
implementation "androidx.recyclerview:recyclerview:1.0.0" implementation "androidx.recyclerview:recyclerview:1.0.0"
implementation "androidx.exifinterface:exifinterface:1.0.0" implementation "androidx.exifinterface:exifinterface:1.0.0"
implementation "androidx.cardview:cardview:1.0.0" implementation "androidx.cardview:cardview:1.0.0"

@ -20,14 +20,15 @@ import android.content.Context
import android.content.Intent import android.content.Intent
import android.content.SharedPreferences import android.content.SharedPreferences
import android.net.Uri import android.net.Uri
import android.os.Build
import android.os.Bundle import android.os.Bundle
import androidx.browser.customtabs.CustomTabsIntent
import android.text.method.LinkMovementMethod import android.text.method.LinkMovementMethod
import android.util.Log import android.util.Log
import android.view.MenuItem import android.view.MenuItem
import android.view.View import android.view.View
import android.widget.TextView import android.widget.TextView
import androidx.appcompat.app.AlertDialog import androidx.appcompat.app.AlertDialog
import androidx.browser.customtabs.CustomTabsIntent
import com.bumptech.glide.Glide import com.bumptech.glide.Glide
import com.keylesspalace.tusky.di.Injectable import com.keylesspalace.tusky.di.Injectable
import com.keylesspalace.tusky.entity.AccessToken import com.keylesspalace.tusky.entity.AccessToken
@ -345,9 +346,16 @@ class LoginActivity : BaseActivity(), Injectable {
private fun openInCustomTab(uri: Uri, context: Context): Boolean { private fun openInCustomTab(uri: Uri, context: Context): Boolean {
val toolbarColor = ThemeUtils.getColor(context, R.attr.custom_tab_toolbar) val toolbarColor = ThemeUtils.getColor(context, R.attr.custom_tab_toolbar)
val customTabsIntent = CustomTabsIntent.Builder() val customTabsIntentBuilder = CustomTabsIntent.Builder()
.setToolbarColor(toolbarColor) .setToolbarColor(toolbarColor)
.build()
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O_MR1) {
customTabsIntentBuilder.setNavigationBarColor(
ThemeUtils.getColor(context, android.R.attr.navigationBarColor)
)
}
val customTabsIntent = customTabsIntentBuilder.build()
try { try {
customTabsIntent.launchUrl(context, uri) customTabsIntent.launchUrl(context, uri)
} catch (e: ActivityNotFoundException) { } catch (e: ActivityNotFoundException) {

@ -19,6 +19,7 @@ import android.content.ActivityNotFoundException;
import android.content.Context; import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.net.Uri; import android.net.Uri;
import android.os.Build;
import android.text.SpannableStringBuilder; import android.text.SpannableStringBuilder;
import android.text.Spanned; import android.text.Spanned;
import android.text.method.LinkMovementMethod; import android.text.method.LinkMovementMethod;
@ -68,7 +69,7 @@ public class LinkHelper {
* @param listener to notify about particular spans that are clicked * @param listener to notify about particular spans that are clicked
*/ */
public static void setClickableText(TextView view, Spanned content, public static void setClickableText(TextView view, Spanned content,
@Nullable Status.Mention[] mentions, final LinkListener listener) { @Nullable Status.Mention[] mentions, final LinkListener listener) {
SpannableStringBuilder builder = new SpannableStringBuilder(content); SpannableStringBuilder builder = new SpannableStringBuilder(content);
URLSpan[] urlSpans = content.getSpans(0, content.length(), URLSpan.class); URLSpan[] urlSpans = content.getSpans(0, content.length(), URLSpan.class);
for (URLSpan span : urlSpans) { for (URLSpan span : urlSpans) {
@ -221,10 +222,17 @@ public class LinkHelper {
public static void openLinkInCustomTab(Uri uri, Context context) { public static void openLinkInCustomTab(Uri uri, Context context) {
int toolbarColor = ThemeUtils.getColor(context, R.attr.custom_tab_toolbar); int toolbarColor = ThemeUtils.getColor(context, R.attr.custom_tab_toolbar);
CustomTabsIntent customTabsIntent = new CustomTabsIntent.Builder() CustomTabsIntent.Builder customTabsIntentBuilder = new CustomTabsIntent.Builder()
.setToolbarColor(toolbarColor) .setToolbarColor(toolbarColor)
.setShowTitle(true) .setShowTitle(true);
.build();
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.O_MR1) {
customTabsIntentBuilder.setNavigationBarColor(
ThemeUtils.getColor(context, android.R.attr.navigationBarColor)
);
}
CustomTabsIntent customTabsIntent = customTabsIntentBuilder.build();
try { try {
customTabsIntent.launchUrl(context, uri); customTabsIntent.launchUrl(context, uri);
} catch (ActivityNotFoundException e) { } catch (ActivityNotFoundException e) {

Loading…
Cancel
Save