add workaround for webview not opening links externally on 5.x after latest update, thanks google

This commit is contained in:
Andrew Dolgov 2015-06-10 14:55:07 +03:00
parent a7dbdbe7b5
commit 913a3e8a83
3 changed files with 37 additions and 3 deletions

View File

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="org.fox.ttrss"
android:versionCode="346"
android:versionName="1.120" >
android:versionCode="347"
android:versionName="1.121" >
<uses-sdk
android:minSdkVersion="15"

View File

@ -24,6 +24,7 @@ import android.webkit.WebChromeClient;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebView.HitTestResult;
import android.webkit.WebViewClient;
import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.ScrollView;
@ -373,6 +374,22 @@ public class ArticleFragment extends Fragment {
m_web = (WebView)view.findViewById(R.id.article_content);
m_web.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
try {
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(intent);
return true;
} catch (Exception e){
e.printStackTrace();
}
return false;
} });
m_web.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {

View File

@ -23,6 +23,7 @@ import android.view.ViewGroup;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebView.HitTestResult;
import android.webkit.WebViewClient;
import android.widget.ImageView;
import android.widget.ScrollView;
import android.widget.TextView;
@ -243,7 +244,23 @@ public class OfflineArticleFragment extends Fragment {
final WebView web = (WebView)view.findViewById(R.id.article_content);
if (web != null) {
web.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
try {
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(intent);
return true;
} catch (Exception e){
e.printStackTrace();
}
return false;
} });
web.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {