Chromium Code Reviews| Index: content/public/android/java/src/org/chromium/content/browser/LoadUrlParams.java |
| diff --git a/content/public/android/java/src/org/chromium/content/browser/LoadUrlParams.java b/content/public/android/java/src/org/chromium/content/browser/LoadUrlParams.java |
| index 24d153f92ea367b27f42a1b6bdaa371c76a4380d..fd84c836767c99230577cf4809c35872e0070bc2 100644 |
| --- a/content/public/android/java/src/org/chromium/content/browser/LoadUrlParams.java |
| +++ b/content/public/android/java/src/org/chromium/content/browser/LoadUrlParams.java |
| @@ -63,9 +63,25 @@ public class LoadUrlParams { |
| * @param isBase64Encoded True if the data is encoded in Base 64 format. |
| */ |
| public static LoadUrlParams createLoadDataParams( |
| - String data, String mimeType, boolean isBase64Encoded) { |
| + String data, String mimeType, boolean isBase64Encoded) { |
| + return createLoadDataParams(data, mimeType, isBase64Encoded, null); |
| + } |
| + |
| + /** |
| + * Helper method to create a LoadUrlParams object for data url. |
| + * @param data Data to be loaded. |
| + * @param mimeType Mime type of the data. |
| + * @param isBase64Encoded True if the data is encoded in Base 64 format. |
| + * @param charset The character set for the data. Pass null if the mime type |
| + * does not require a special charset. |
| + */ |
| + public static LoadUrlParams createLoadDataParams( |
| + String data, String mimeType, boolean isBase64Encoded, String charset) { |
| StringBuilder dataUrl = new StringBuilder("data:"); |
| dataUrl.append(mimeType); |
| + if (charset != null && !charset.isEmpty()) { |
|
joth
2012/12/17 17:56:25
Do we like this style?
if (!"".equals(charset)) .
benm (inactive)
2012/12/17 18:00:44
Not sure there's an official convention, but that'
|
| + dataUrl.append(";charset=" + charset); |
| + } |
| if (isBase64Encoded) { |
| dataUrl.append(";base64"); |
| } |
| @@ -94,7 +110,29 @@ public class LoadUrlParams { |
| public static LoadUrlParams createLoadDataParamsWithBaseUrl( |
| String data, String mimeType, boolean isBase64Encoded, |
| String baseUrl, String historyUrl) { |
| - LoadUrlParams params = createLoadDataParams(data, mimeType, isBase64Encoded); |
| + return createLoadDataParamsWithBaseUrl(data, mimeType, isBase64Encoded, |
| + baseUrl, historyUrl, null); |
| + } |
| + |
| + /** |
| + * Helper method to create a LoadUrlParams object for data url with base |
| + * and virtual url. |
| + * @param data Data to be loaded. |
| + * @param mimeType Mime type of the data. |
| + * @param isBase64Encoded True if the data is encoded in Base 64 format. |
| + * @param baseUrl Base url of this data load. Note that for WebView compatibility, |
| + * baseUrl and historyUrl are ignored if this is a data: url. |
| + * Defaults to about:blank if null. |
| + * @param historyUrl History url for this data load. Note that for WebView compatibility, |
| + * this is ignored if baseUrl is a data: url. Defaults to about:blank |
| + * if null. |
| + * @param charset The character set for the data. Pass null if the mime type |
| + * does not require a special charset. |
| + */ |
| + public static LoadUrlParams createLoadDataParamsWithBaseUrl( |
| + String data, String mimeType, boolean isBase64Encoded, |
| + String baseUrl, String historyUrl, String charset) { |
| + LoadUrlParams params = createLoadDataParams(data, mimeType, isBase64Encoded, charset); |
| // For WebView compatibility, when the base URL has the 'data:' |
| // scheme, we treat it as a regular data URL load and skip setting |
| // baseUrl and historyUrl. |
|
joth
2012/12/17 17:56:25
Out of scope for this patch to change this, but co
benm (inactive)
2012/12/17 18:00:44
will do
|