upgrade androidx.browser to 1.2.0 (#1595)

This commit is contained in:
Konrad Pozniak 2019-12-20 20:08:02 +01:00 committed by GitHub
parent 60b9a9c40b
commit 516546a3bf
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 25 additions and 8 deletions

View file

@ -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"

View file

@ -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) {

View file

@ -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) {