| Index: chrome/android/java/src/org/chromium/chrome/browser/download/DownloadInfo.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadInfo.java b/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadInfo.java
|
| index 0932df91351b9f4cf011f9e505d26c9327cfe155..233c85cdd206e17ac906198f920a2da56a423505 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadInfo.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadInfo.java
|
| @@ -4,11 +4,14 @@
|
|
|
| package org.chromium.chrome.browser.download;
|
|
|
| +import android.graphics.Bitmap;
|
| +
|
| import org.chromium.base.annotations.CalledByNative;
|
| import org.chromium.components.offline_items_collection.ContentId;
|
| import org.chromium.components.offline_items_collection.LegacyHelpers;
|
| import org.chromium.components.offline_items_collection.OfflineItem;
|
| import org.chromium.components.offline_items_collection.OfflineItemState;
|
| +import org.chromium.components.offline_items_collection.OfflineItemVisuals;
|
| import org.chromium.content_public.browser.DownloadState;
|
|
|
| /**
|
| @@ -42,6 +45,7 @@ public final class DownloadInfo {
|
| private final ContentId mContentId;
|
| private final boolean mIsOpenable;
|
| private final boolean mIsTransient;
|
| + private final Bitmap mIcon;
|
|
|
| private DownloadInfo(Builder builder) {
|
| mUrl = builder.mUrl;
|
| @@ -74,6 +78,7 @@ public final class DownloadInfo {
|
| }
|
| mIsOpenable = builder.mIsOpenable;
|
| mIsTransient = builder.mIsTransient;
|
| + mIcon = builder.mIcon;
|
| }
|
|
|
| public String getUrl() {
|
| @@ -182,12 +187,16 @@ public final class DownloadInfo {
|
| return mIsTransient;
|
| }
|
|
|
| + public Bitmap getIcon() {
|
| + return mIcon;
|
| + }
|
| +
|
| /**
|
| * Helper method to build a {@link DownloadInfo} from an {@link OfflineItem}.
|
| * @param item The {@link OfflineItem} to mimic.
|
| * @return A {@link DownloadInfo} containing the relevant fields from {@code item}.
|
| */
|
| - public static DownloadInfo fromOfflineItem(OfflineItem item) {
|
| + public static DownloadInfo fromOfflineItem(OfflineItem item, OfflineItemVisuals visuals) {
|
| int state;
|
| switch (item.state) {
|
| case OfflineItemState.COMPLETE:
|
| @@ -225,6 +234,7 @@ public final class DownloadInfo {
|
| .setBytesReceived(item.receivedBytes)
|
| .setPercentCompleted(item.percentCompleted)
|
| .setTimeRemainingInMillis(item.timeRemainingMs)
|
| + .setIcon(visuals == null ? null : visuals.icon)
|
| .build();
|
| }
|
|
|
| @@ -257,6 +267,7 @@ public final class DownloadInfo {
|
| private ContentId mContentId;
|
| private boolean mIsOpenable = true;
|
| private boolean mIsTransient;
|
| + private Bitmap mIcon;
|
|
|
| public Builder setUrl(String url) {
|
| mUrl = url;
|
| @@ -384,6 +395,11 @@ public final class DownloadInfo {
|
| return this;
|
| }
|
|
|
| + public Builder setIcon(Bitmap icon) {
|
| + mIcon = icon;
|
| + return this;
|
| + }
|
| +
|
| public DownloadInfo build() {
|
| return new DownloadInfo(this);
|
| }
|
| @@ -416,7 +432,8 @@ public final class DownloadInfo {
|
| .setIsOffTheRecord(downloadInfo.isOffTheRecord())
|
| .setIsOfflinePage(downloadInfo.isOfflinePage())
|
| .setState(downloadInfo.state())
|
| - .setLastAccessTime(downloadInfo.getLastAccessTime());
|
| + .setLastAccessTime(downloadInfo.getLastAccessTime())
|
| + .setIcon(downloadInfo.getIcon());
|
| return builder;
|
| }
|
| }
|
|
|