Chromium Code Reviews| Index: chrome/android/java/src/org/chromium/chrome/browser/omnibox/UrlBar.java |
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omnibox/UrlBar.java b/chrome/android/java/src/org/chromium/chrome/browser/omnibox/UrlBar.java |
| index 9dc8a9860b4073bb498982825d4de174ba3cdef4..bdfcf546429a20181174647f210263037ddc5ce7 100644 |
| --- a/chrome/android/java/src/org/chromium/chrome/browser/omnibox/UrlBar.java |
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/omnibox/UrlBar.java |
| @@ -12,6 +12,7 @@ import android.graphics.Canvas; |
| import android.graphics.Paint; |
| import android.graphics.Rect; |
| import android.net.Uri; |
| +import android.os.Build; |
| import android.os.StrictMode; |
| import android.os.SystemClock; |
| import android.text.Editable; |
| @@ -758,6 +759,13 @@ public class UrlBar extends VerticallyFixedEditText { |
| */ |
| public boolean setUrl(String url, String formattedUrl) { |
| if (!TextUtils.isEmpty(formattedUrl)) { |
| + // Because Android versions 4.2 and before lack proper RTL support, |
| + // wrap the formatted URL with LTR control characters. |
| + // This is quite hacky, but fixes a security bug. crbug.com/709417 |
| + if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.JELLY_BEAN_MR1) { |
| + formattedUrl = '\u200E' + formattedUrl; |
|
tommycli
2017/04/27 01:36:33
This I have confirmed does not negatively affect t
Matt Giuca
2017/04/27 03:33:07
Yeah this looks like exactly the right spot.
Ted C
2017/04/27 16:26:50
Agreed...I didn't even know what this was before r
tommycli
2017/04/27 17:23:14
Done. Great I made a constant at the top of the fi
|
| + } |
| + |
| try { |
| URL javaUrl = new URL(url); |
| mFormattedUrlLocation = |