Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5d5b3783 authored by John Reck's avatar John Reck Committed by Android (Google) Code Review
Browse files

Merge "Support email and phone types"

parents 42d840b9 3a0e011f
Loading
Loading
Loading
Loading
+33 −24
Original line number Diff line number Diff line
@@ -9241,7 +9241,8 @@ public class WebView extends AbsoluteLayout
    private void setHitTestResult(WebKitHitTest hit) {
        if (hit == null) {
            mInitialHitTestResult = null;
        } else {
            return;
        }
        mInitialHitTestResult = new HitTestResult();
        if (hit.mLinkUrl != null) {
            mInitialHitTestResult.mType = HitTestResult.SRC_ANCHOR_TYPE;
@@ -9256,19 +9257,27 @@ public class WebView extends AbsoluteLayout
        } else if (hit.mEditable) {
            mInitialHitTestResult.mType = HitTestResult.EDIT_TEXT_TYPE;
        } else if (hit.mIntentUrl != null) {
            String substr = null;
            if (hit.mIntentUrl.startsWith(SCHEME_GEO)) {
                mInitialHitTestResult.mType = HitTestResult.GEO_TYPE;
                    String substr = hit.mIntentUrl.substring(SCHEME_GEO.length());
                substr = hit.mIntentUrl.substring(SCHEME_GEO.length());
            } else if (hit.mIntentUrl.startsWith(SCHEME_TEL)) {
                mInitialHitTestResult.mType = HitTestResult.PHONE_TYPE;
                substr = hit.mIntentUrl.substring(SCHEME_TEL.length());
            } else if (hit.mIntentUrl.startsWith(SCHEME_MAILTO)) {
                mInitialHitTestResult.mType = HitTestResult.EMAIL_TYPE;
                substr = hit.mIntentUrl.substring(SCHEME_MAILTO.length());
            } else {
                return;
            }
            try {
                mInitialHitTestResult.mExtra = URLDecoder.decode(substr, "UTF-8");
                    } catch (UnsupportedEncodingException e) {
            } catch (Throwable e) {
                Log.w(LOGTAG, "Failed to decode GEO URL!", e);
                mInitialHitTestResult.mType = HitTestResult.UNKNOWN_TYPE;
            }
        }
    }
        }
    }

    private boolean shouldDrawHighlightRect() {
        if (mFocusedNode == null || mInitialHitTestResult == null) {