New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 691805 link

Starred by 2 users

Issue metadata

Status: Started
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 1
Type: Task


Participants' hotlists:
Downloads-OfflineContentProvider-Refactor


Sign in to add a comment

Unify offline content into a single provider and bridge

Project Member Reported by dtrainor@chromium.org, Feb 13 2017

Issue description

Refactor the multiple JNI bridges we have for exposing offline content (currently downloads and offline pages) into a single provider and JNI bridge.

This bug includes:
- Create the provider interfaces.
- Build the JNI bridge and java side of the provider interfaces.
- Implement the provider interface for both downloads and offline pages.
- Migrate the UI to use the provider.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Mar 7 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b4cc24562bca56bd56c7e461e39324eef85a19aa

commit b4cc24562bca56bd56c7e461e39324eef85a19aa
Author: dtrainor <dtrainor@chromium.org>
Date: Tue Mar 07 01:07:17 2017

Initial checkin of OfflineContentProvider.

This patch adds the initial OfflineContentProvider interface and
aggregator.  This will be the framework that exposes different types of
downloads to the front end UI.  The aggregator groups multiple OfflineContentProviders and
exposes them as a single list of OfflineItems.

BUG=691805

Review-Url: https://codereview.chromium.org/2690333002
Cr-Commit-Position: refs/heads/master@{#455011}

[modify] https://crrev.com/b4cc24562bca56bd56c7e461e39324eef85a19aa/chrome/browser/BUILD.gn
[modify] https://crrev.com/b4cc24562bca56bd56c7e461e39324eef85a19aa/components/BUILD.gn
[add] https://crrev.com/b4cc24562bca56bd56c7e461e39324eef85a19aa/components/offline_items_collection/OWNERS
[add] https://crrev.com/b4cc24562bca56bd56c7e461e39324eef85a19aa/components/offline_items_collection/core/BUILD.gn
[add] https://crrev.com/b4cc24562bca56bd56c7e461e39324eef85a19aa/components/offline_items_collection/core/DEPS
[add] https://crrev.com/b4cc24562bca56bd56c7e461e39324eef85a19aa/components/offline_items_collection/core/offline_content_aggregator.cc
[add] https://crrev.com/b4cc24562bca56bd56c7e461e39324eef85a19aa/components/offline_items_collection/core/offline_content_aggregator.h
[add] https://crrev.com/b4cc24562bca56bd56c7e461e39324eef85a19aa/components/offline_items_collection/core/offline_content_aggregator_unittest.cc
[add] https://crrev.com/b4cc24562bca56bd56c7e461e39324eef85a19aa/components/offline_items_collection/core/offline_content_provider.h
[add] https://crrev.com/b4cc24562bca56bd56c7e461e39324eef85a19aa/components/offline_items_collection/core/offline_item.cc
[add] https://crrev.com/b4cc24562bca56bd56c7e461e39324eef85a19aa/components/offline_items_collection/core/offline_item.h
[add] https://crrev.com/b4cc24562bca56bd56c7e461e39324eef85a19aa/components/offline_items_collection/core/offline_item_filter.h
[add] https://crrev.com/b4cc24562bca56bd56c7e461e39324eef85a19aa/components/offline_items_collection/core/offline_item_state.h
[add] https://crrev.com/b4cc24562bca56bd56c7e461e39324eef85a19aa/components/offline_items_collection/core/test_support/BUILD.gn
[add] https://crrev.com/b4cc24562bca56bd56c7e461e39324eef85a19aa/components/offline_items_collection/core/test_support/mock_offline_content_provider.cc
[add] https://crrev.com/b4cc24562bca56bd56c7e461e39324eef85a19aa/components/offline_items_collection/core/test_support/mock_offline_content_provider.h
[add] https://crrev.com/b4cc24562bca56bd56c7e461e39324eef85a19aa/components/offline_items_collection/core/test_support/scoped_mock_offline_content_provider.cc
[add] https://crrev.com/b4cc24562bca56bd56c7e461e39324eef85a19aa/components/offline_items_collection/core/test_support/scoped_mock_offline_content_provider.h

Project Member

Comment 2 by bugdroid1@chromium.org, Mar 9 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0317c3b457483a2b3521d60a27e96cad31aeb416

commit 0317c3b457483a2b3521d60a27e96cad31aeb416
Author: dtrainor <dtrainor@chromium.org>
Date: Thu Mar 09 18:43:46 2017

Initial checkin of the Java OfflineContentProvider

This patch adds the Java counterpart to the C++ OfflineContentProvider.
This patch also connects the native and Java components with a Java/C++
bridge pair and adds the factory methods necessary to create and pass
OfflineItems from C++ to Java.

BUG=691805

Review-Url: https://codereview.chromium.org/2707003003
Cr-Commit-Position: refs/heads/master@{#455808}

[modify] https://crrev.com/0317c3b457483a2b3521d60a27e96cad31aeb416/chrome/android/BUILD.gn
[modify] https://crrev.com/0317c3b457483a2b3521d60a27e96cad31aeb416/components/offline_items_collection/core/BUILD.gn
[modify] https://crrev.com/0317c3b457483a2b3521d60a27e96cad31aeb416/components/offline_items_collection/core/DEPS
[add] https://crrev.com/0317c3b457483a2b3521d60a27e96cad31aeb416/components/offline_items_collection/core/android/java/src/org/chromium/components/offline_items_collection/ContentId.java
[add] https://crrev.com/0317c3b457483a2b3521d60a27e96cad31aeb416/components/offline_items_collection/core/android/java/src/org/chromium/components/offline_items_collection/OfflineContentAggregatorBridge.java
[add] https://crrev.com/0317c3b457483a2b3521d60a27e96cad31aeb416/components/offline_items_collection/core/android/java/src/org/chromium/components/offline_items_collection/OfflineContentProvider.java
[add] https://crrev.com/0317c3b457483a2b3521d60a27e96cad31aeb416/components/offline_items_collection/core/android/java/src/org/chromium/components/offline_items_collection/OfflineItem.java
[add] https://crrev.com/0317c3b457483a2b3521d60a27e96cad31aeb416/components/offline_items_collection/core/android/java/src/org/chromium/components/offline_items_collection/OfflineItemBridge.java
[add] https://crrev.com/0317c3b457483a2b3521d60a27e96cad31aeb416/components/offline_items_collection/core/android/offline_content_aggregator_bridge.cc
[add] https://crrev.com/0317c3b457483a2b3521d60a27e96cad31aeb416/components/offline_items_collection/core/android/offline_content_aggregator_bridge.h
[add] https://crrev.com/0317c3b457483a2b3521d60a27e96cad31aeb416/components/offline_items_collection/core/android/offline_item_bridge.cc
[add] https://crrev.com/0317c3b457483a2b3521d60a27e96cad31aeb416/components/offline_items_collection/core/android/offline_item_bridge.h
[modify] https://crrev.com/0317c3b457483a2b3521d60a27e96cad31aeb416/components/offline_items_collection/core/offline_item_filter.h
[modify] https://crrev.com/0317c3b457483a2b3521d60a27e96cad31aeb416/components/offline_items_collection/core/offline_item_state.h

Project Member

Comment 3 by bugdroid1@chromium.org, Mar 20 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e43c093fdaa7ce7eb41a084a15ff5fa12f08537d

commit e43c093fdaa7ce7eb41a084a15ff5fa12f08537d
Author: dtrainor <dtrainor@chromium.org>
Date: Mon Mar 20 21:14:22 2017

Attaches OfflineContentAggregator to Profile

This CL hooks the OfflineContentAggregator to a BrowserContext and adds
a Java bridge to get access to the Java component as well.

BUG=691805

Review-Url: https://codereview.chromium.org/2729983002
Cr-Commit-Position: refs/heads/master@{#458185}

[modify] https://crrev.com/e43c093fdaa7ce7eb41a084a15ff5fa12f08537d/chrome/android/java/DEPS
[add] https://crrev.com/e43c093fdaa7ce7eb41a084a15ff5fa12f08537d/chrome/android/java/src/org/chromium/chrome/browser/download/items/OfflineContentAggregatorFactory.java
[modify] https://crrev.com/e43c093fdaa7ce7eb41a084a15ff5fa12f08537d/chrome/android/java_sources.gni
[modify] https://crrev.com/e43c093fdaa7ce7eb41a084a15ff5fa12f08537d/chrome/browser/BUILD.gn
[modify] https://crrev.com/e43c093fdaa7ce7eb41a084a15ff5fa12f08537d/chrome/browser/android/chrome_jni_registrar.cc
[add] https://crrev.com/e43c093fdaa7ce7eb41a084a15ff5fa12f08537d/chrome/browser/android/download/items/offline_content_aggregator_factory_android.cc
[add] https://crrev.com/e43c093fdaa7ce7eb41a084a15ff5fa12f08537d/chrome/browser/android/download/items/offline_content_aggregator_factory_android.h
[add] https://crrev.com/e43c093fdaa7ce7eb41a084a15ff5fa12f08537d/chrome/browser/offline_items_collection/OWNERS
[add] https://crrev.com/e43c093fdaa7ce7eb41a084a15ff5fa12f08537d/chrome/browser/offline_items_collection/offline_content_aggregator_factory.cc
[add] https://crrev.com/e43c093fdaa7ce7eb41a084a15ff5fa12f08537d/chrome/browser/offline_items_collection/offline_content_aggregator_factory.h
[modify] https://crrev.com/e43c093fdaa7ce7eb41a084a15ff5fa12f08537d/components/offline_items_collection/core/BUILD.gn
[modify] https://crrev.com/e43c093fdaa7ce7eb41a084a15ff5fa12f08537d/components/offline_items_collection/core/DEPS
[modify] https://crrev.com/e43c093fdaa7ce7eb41a084a15ff5fa12f08537d/components/offline_items_collection/core/android/offline_content_aggregator_bridge.cc
[modify] https://crrev.com/e43c093fdaa7ce7eb41a084a15ff5fa12f08537d/components/offline_items_collection/core/android/offline_content_aggregator_bridge.h
[modify] https://crrev.com/e43c093fdaa7ce7eb41a084a15ff5fa12f08537d/components/offline_items_collection/core/offline_content_aggregator.h

Project Member

Comment 4 by bugdroid1@chromium.org, Mar 22 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/da65ddd7e896738a9ccbeacf277105394d429291

commit da65ddd7e896738a9ccbeacf277105394d429291
Author: dtrainor <dtrainor@chromium.org>
Date: Wed Mar 22 21:18:23 2017

Support providers with two namespaces

OfflinePages requires a single provider to be able to handle exposing
items with two namespaces.  This CL adds support for that in the
OfflineContentAggregator.  A provider can be registered for more than
one namespace at once.  Also adds a test to validate that the dual
namespaces works as expected and documents the few odd behavior points
that aren't currently supported.

BUG=691805

Review-Url: https://codereview.chromium.org/2757773002
Cr-Commit-Position: refs/heads/master@{#458879}

[modify] https://crrev.com/da65ddd7e896738a9ccbeacf277105394d429291/components/offline_items_collection/core/offline_content_aggregator.cc
[modify] https://crrev.com/da65ddd7e896738a9ccbeacf277105394d429291/components/offline_items_collection/core/offline_content_aggregator.h
[modify] https://crrev.com/da65ddd7e896738a9ccbeacf277105394d429291/components/offline_items_collection/core/offline_content_aggregator_unittest.cc

Project Member

Comment 6 by bugdroid1@chromium.org, Mar 29 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8b97a74f58c8b45a85de5c5521a58a54a0935700

commit 8b97a74f58c8b45a85de5c5521a58a54a0935700
Author: dtrainor <dtrainor@chromium.org>
Date: Wed Mar 29 07:39:05 2017

Initial work to move downloads to ContentIds

Right now the DownloadNotificationService identifies downloads by a
GUID and a boolean, which lets it both uniquely identify that item and
associate it with an underlying provider (download or offline page).
We're moving all downloaded content to be identified by a ContentId and
represented as an OfflineItem.  As part of that work (based on need
priority) we're moving the DownloadNotificationService to use ContentIds
instead of a GUID and boolean.

Migration details:
1. Downloads will be given the namespace LEGACY_DOWNLOADS until they are
migrated.
2. Offline pages will be given the namespace LEGACY_OFFLINE_PAGES until
they are migrated.
3. The backend provider will be determined by the ContentId based on the
legacy constants mentioned above.

BUG=691805

Review-Url: https://codereview.chromium.org/2768953002
Cr-Commit-Position: refs/heads/master@{#460319}

[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/chrome/android/BUILD.gn
[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadBroadcastReceiver.java
[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadInfo.java
[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadItem.java
[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadManagerService.java
[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadNotificationService.java
[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadServiceDelegate.java
[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadSharedPreferenceEntry.java
[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadSharedPreferenceHelper.java
[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadSnackbarController.java
[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadUtils.java
[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/chrome/android/java/src/org/chromium/chrome/browser/download/SystemDownloadNotifier.java
[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadHistoryAdapter.java
[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/downloads/OfflinePageDownloadBridge.java
[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/chrome/android/javatests/DEPS
[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadManagerServiceTest.java
[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadNotificationServiceTest.java
[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/chrome/android/javatests/src/org/chromium/chrome/browser/download/MockDownloadNotificationService.java
[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/chrome/android/junit/DEPS
[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/chrome/android/junit/src/org/chromium/chrome/browser/download/DownloadSharedPreferenceEntryTest.java
[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/components/offline_items_collection/core/BUILD.gn
[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/components/offline_items_collection/core/android/java/src/org/chromium/components/offline_items_collection/ContentId.java
[add] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/components/offline_items_collection/core/android/java/src/org/chromium/components/offline_items_collection/LegacyHelpers.java
[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/components/offline_items_collection/core/offline_item.cc
[modify] https://crrev.com/8b97a74f58c8b45a85de5c5521a58a54a0935700/components/offline_items_collection/core/offline_item.h

Project Member

Comment 7 by bugdroid1@chromium.org, Mar 30 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e872b7528ab479490c19761d64a3784d68ae271f

commit e872b7528ab479490c19761d64a3784d68ae271f
Author: dtrainor <dtrainor@chromium.org>
Date: Thu Mar 30 03:09:47 2017

Glue OfflineContentProvider to the download service

Add support for OfflineItems showing up in the DownloadNotificationService.
This consists of a few changes:
- Building a glue class between the OfflineContentAggregator and the
SystemDownloadNotifier.
- Adding some properties to DownloadInfo to support the properties
OfflineItem needs ('isTransient' and 'isOpenable').
- Update the SharedPrefs to store the isTransient property.

BUG=691805

Review-Url: https://codereview.chromium.org/2771803004
Cr-Commit-Position: refs/heads/master@{#460636}

[modify] https://crrev.com/e872b7528ab479490c19761d64a3784d68ae271f/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
[modify] https://crrev.com/e872b7528ab479490c19761d64a3784d68ae271f/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadInfo.java
[modify] https://crrev.com/e872b7528ab479490c19761d64a3784d68ae271f/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadManagerService.java
[modify] https://crrev.com/e872b7528ab479490c19761d64a3784d68ae271f/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadNotificationService.java
[modify] https://crrev.com/e872b7528ab479490c19761d64a3784d68ae271f/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadNotifier.java
[modify] https://crrev.com/e872b7528ab479490c19761d64a3784d68ae271f/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadSharedPreferenceEntry.java
[modify] https://crrev.com/e872b7528ab479490c19761d64a3784d68ae271f/chrome/android/java/src/org/chromium/chrome/browser/download/SystemDownloadNotifier.java
[add] https://crrev.com/e872b7528ab479490c19761d64a3784d68ae271f/chrome/android/java/src/org/chromium/chrome/browser/download/items/OfflineContentAggregatorNotificationBridgeUi.java
[add] https://crrev.com/e872b7528ab479490c19761d64a3784d68ae271f/chrome/android/java/src/org/chromium/chrome/browser/download/items/OfflineContentAggregatorNotificationBridgeUiFactory.java
[modify] https://crrev.com/e872b7528ab479490c19761d64a3784d68ae271f/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/downloads/OfflinePageNotificationBridge.java
[modify] https://crrev.com/e872b7528ab479490c19761d64a3784d68ae271f/chrome/android/java_sources.gni
[modify] https://crrev.com/e872b7528ab479490c19761d64a3784d68ae271f/chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadManagerServiceTest.java
[modify] https://crrev.com/e872b7528ab479490c19761d64a3784d68ae271f/chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadNotificationServiceTest.java
[modify] https://crrev.com/e872b7528ab479490c19761d64a3784d68ae271f/chrome/android/javatests/src/org/chromium/chrome/browser/download/MockDownloadNotificationService.java
[modify] https://crrev.com/e872b7528ab479490c19761d64a3784d68ae271f/chrome/android/junit/src/org/chromium/chrome/browser/download/DownloadSharedPreferenceEntryTest.java
[modify] https://crrev.com/e872b7528ab479490c19761d64a3784d68ae271f/chrome/browser/android/chrome_jni_registrar.cc
[modify] https://crrev.com/e872b7528ab479490c19761d64a3784d68ae271f/components/offline_items_collection/core/android/java/src/org/chromium/components/offline_items_collection/OfflineItem.java
[modify] https://crrev.com/e872b7528ab479490c19761d64a3784d68ae271f/components/offline_items_collection/core/android/java/src/org/chromium/components/offline_items_collection/OfflineItemBridge.java
[modify] https://crrev.com/e872b7528ab479490c19761d64a3784d68ae271f/components/offline_items_collection/core/android/offline_item_bridge.cc
[modify] https://crrev.com/e872b7528ab479490c19761d64a3784d68ae271f/components/offline_items_collection/core/offline_item.cc
[modify] https://crrev.com/e872b7528ab479490c19761d64a3784d68ae271f/components/offline_items_collection/core/offline_item.h
[modify] https://crrev.com/e872b7528ab479490c19761d64a3784d68ae271f/components/offline_items_collection/core/offline_item_state.h

Project Member

Comment 9 by bugdroid1@chromium.org, Apr 18 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/cdde15e4fb35971f7008d9fadfa3192d301ac763

commit cdde15e4fb35971f7008d9fadfa3192d301ac763
Author: dtrainor <dtrainor@chromium.org>
Date: Tue Apr 18 05:09:06 2017

Add support for pulling icons for OfflineItems

- Add the concept of OfflineItemVisuals, which are heavyweight visual
components associated with an OfflineItem.  Make that API async and
by request only.
- Hook up the OfflineItemVisuals to the current bridge pipeline and
notification system.  This involves building a small cache in the bridge
that handles passing these to the notification layer so that these are
queried infrequently.  In the future, having a unified cache mechanism
would be better, but right now notifications and downloads home have
very different caching characteristics.
- Added support for showing the icons in notifications.  There are still
some jumps where the icon vanishes and reappears because we process the
action before notifying native.  A follow up patch should look into
removing setting those notifications early.

BUG=691805

Review-Url: https://codereview.chromium.org/2811803006
Cr-Commit-Position: refs/heads/master@{#465146}

[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadInfo.java
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadNotificationService.java
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/chrome/android/java/src/org/chromium/chrome/browser/download/SystemDownloadNotifier.java
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/chrome/android/java/src/org/chromium/chrome/browser/download/items/OfflineContentAggregatorNotificationBridgeUi.java
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/chrome/android/java/src/org/chromium/chrome/browser/download/items/OfflineContentAggregatorNotificationBridgeUiFactory.java
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/chrome/android/java_sources.gni
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/chrome/android/javatests/src/org/chromium/chrome/browser/download/DownloadNotificationServiceTest.java
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/chrome/android/javatests/src/org/chromium/chrome/browser/download/MockDownloadNotificationService.java
[add] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/chrome/android/junit/src/org/chromium/chrome/browser/download/items/OfflineContentAggregatorNotificationBridgeUiTest.java
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/components/offline_items_collection/core/BUILD.gn
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/components/offline_items_collection/core/DEPS
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/components/offline_items_collection/core/android/java/src/org/chromium/components/offline_items_collection/OfflineContentAggregatorBridge.java
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/components/offline_items_collection/core/android/java/src/org/chromium/components/offline_items_collection/OfflineContentProvider.java
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/components/offline_items_collection/core/android/java/src/org/chromium/components/offline_items_collection/OfflineItem.java
[add] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/components/offline_items_collection/core/android/java/src/org/chromium/components/offline_items_collection/OfflineItemVisuals.java
[add] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/components/offline_items_collection/core/android/java/src/org/chromium/components/offline_items_collection/VisualsCallback.java
[rename] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/components/offline_items_collection/core/android/java/src/org/chromium/components/offline_items_collection/bridges/OfflineItemBridge.java
[add] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/components/offline_items_collection/core/android/java/src/org/chromium/components/offline_items_collection/bridges/OfflineItemVisualsBridge.java
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/components/offline_items_collection/core/android/offline_content_aggregator_bridge.cc
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/components/offline_items_collection/core/android/offline_content_aggregator_bridge.h
[add] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/components/offline_items_collection/core/android/offline_item_visuals_bridge.cc
[add] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/components/offline_items_collection/core/android/offline_item_visuals_bridge.h
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/components/offline_items_collection/core/offline_content_aggregator.cc
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/components/offline_items_collection/core/offline_content_aggregator.h
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/components/offline_items_collection/core/offline_content_aggregator_unittest.cc
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/components/offline_items_collection/core/offline_content_provider.h
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/components/offline_items_collection/core/offline_item.cc
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/components/offline_items_collection/core/offline_item.h
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/components/offline_items_collection/core/test_support/mock_offline_content_provider.h
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/components/offline_items_collection/core/throttled_offline_content_provider.cc
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/components/offline_items_collection/core/throttled_offline_content_provider.h
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/components/offline_items_collection/core/throttled_offline_content_provider_unittest.cc
[modify] https://crrev.com/cdde15e4fb35971f7008d9fadfa3192d301ac763/tools/android/eclipse/.classpath

Project Member

Comment 10 by bugdroid1@chromium.org, Apr 28 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/82ecc71c03b9c7a0478849b3df403c1518b05642

commit 82ecc71c03b9c7a0478849b3df403c1518b05642
Author: dtrainor <dtrainor@chromium.org>
Date: Fri Apr 28 08:13:11 2017

Remove the GUID requirement from the ContentId

In Java persisting the ContentId required it to be a guid.  This removes
that dependency.  Note that legacy downloads still have their own checks
for requiring the id to be a guid, but if the download isn't associated
with a legacy download the checks should not occur.

BUG=691805

Review-Url: https://codereview.chromium.org/2843073002
Cr-Commit-Position: refs/heads/master@{#467929}

[modify] https://crrev.com/82ecc71c03b9c7a0478849b3df403c1518b05642/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadNotificationService.java
[modify] https://crrev.com/82ecc71c03b9c7a0478849b3df403c1518b05642/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadSharedPreferenceEntry.java
[modify] https://crrev.com/82ecc71c03b9c7a0478849b3df403c1518b05642/chrome/android/junit/src/org/chromium/chrome/browser/download/DownloadSharedPreferenceEntryTest.java

Cc: jming@chromium.org dtrainor@chromium.org
Labels: -M-59 M-63
Owner: shaktisahu@chromium.org
Project Member

Comment 12 by bugdroid1@chromium.org, Aug 31 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f98fee26a2413fe98ef1f1810938ed6d28729df5

commit f98fee26a2413fe98ef1f1810938ed6d28729df5
Author: Shakti Sahu <shaktisahu@chromium.org>
Date: Thu Aug 31 22:27:17 2017

OfflineContentProvider : Added a param has_user_gesture to ResumeDownload

Bug: 691805
Change-Id: I12ea7c4e69a92db7f8dd1a61704b6321ba13b1b2
Reviewed-on: https://chromium-review.googlesource.com/644160
Commit-Queue: Shakti Sahu <shaktisahu@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Cr-Commit-Position: refs/heads/master@{#499046}
[modify] https://crrev.com/f98fee26a2413fe98ef1f1810938ed6d28729df5/chrome/android/java/src/org/chromium/chrome/browser/download/items/OfflineContentAggregatorNotificationBridgeUi.java
[modify] https://crrev.com/f98fee26a2413fe98ef1f1810938ed6d28729df5/components/offline_items_collection/core/android/java/src/org/chromium/components/offline_items_collection/OfflineContentAggregatorBridge.java
[modify] https://crrev.com/f98fee26a2413fe98ef1f1810938ed6d28729df5/components/offline_items_collection/core/android/java/src/org/chromium/components/offline_items_collection/OfflineContentProvider.java
[modify] https://crrev.com/f98fee26a2413fe98ef1f1810938ed6d28729df5/components/offline_items_collection/core/android/offline_content_aggregator_bridge.cc
[modify] https://crrev.com/f98fee26a2413fe98ef1f1810938ed6d28729df5/components/offline_items_collection/core/android/offline_content_aggregator_bridge.h
[modify] https://crrev.com/f98fee26a2413fe98ef1f1810938ed6d28729df5/components/offline_items_collection/core/offline_content_aggregator.cc
[modify] https://crrev.com/f98fee26a2413fe98ef1f1810938ed6d28729df5/components/offline_items_collection/core/offline_content_aggregator.h
[modify] https://crrev.com/f98fee26a2413fe98ef1f1810938ed6d28729df5/components/offline_items_collection/core/offline_content_aggregator_unittest.cc
[modify] https://crrev.com/f98fee26a2413fe98ef1f1810938ed6d28729df5/components/offline_items_collection/core/offline_content_provider.h
[modify] https://crrev.com/f98fee26a2413fe98ef1f1810938ed6d28729df5/components/offline_items_collection/core/test_support/mock_offline_content_provider.h
[modify] https://crrev.com/f98fee26a2413fe98ef1f1810938ed6d28729df5/components/offline_items_collection/core/throttled_offline_content_provider.cc
[modify] https://crrev.com/f98fee26a2413fe98ef1f1810938ed6d28729df5/components/offline_items_collection/core/throttled_offline_content_provider.h
[modify] https://crrev.com/f98fee26a2413fe98ef1f1810938ed6d28729df5/components/offline_items_collection/core/throttled_offline_content_provider_unittest.cc

Project Member

Comment 13 by bugdroid1@chromium.org, Sep 12 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b966618ce92a08ebfd2e633e8b719654ad145547

commit b966618ce92a08ebfd2e633e8b719654ad145547
Author: Shakti Sahu <shaktisahu@chromium.org>
Date: Tue Sep 12 01:48:12 2017

Downloads : Added support for OfflineContentProvider backend in download home

This is the first step of the OfflineContentProvider refactor. Currently
download home (DownloadHistoryAdapter) supports offline pages and download
backends. This CL also adds OfflineContentProvider as the third backend,
which will make later it easy to migrate offline pages and download
backends to use OfflineContentProvider. Since nobody is using
OfflineContentProvider to show up in download home, this CL shouldn't
have any impact.

Bug: 691805
Change-Id: Ifaa3fe315ebf65456d01a9f94cc718c90b0798dc
Reviewed-on: https://chromium-review.googlesource.com/644314
Commit-Queue: Shakti Sahu <shaktisahu@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Cr-Commit-Position: refs/heads/master@{#501146}
[modify] https://crrev.com/b966618ce92a08ebfd2e633e8b719654ad145547/chrome/android/java/src/org/chromium/chrome/browser/download/items/OfflineContentAggregatorFactory.java
[modify] https://crrev.com/b966618ce92a08ebfd2e633e8b719654ad145547/chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadHistoryAdapter.java
[modify] https://crrev.com/b966618ce92a08ebfd2e633e8b719654ad145547/chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadHistoryItemWrapper.java
[modify] https://crrev.com/b966618ce92a08ebfd2e633e8b719654ad145547/chrome/android/javatests/src/org/chromium/chrome/browser/download/ui/DownloadHistoryAdapterTest.java
[modify] https://crrev.com/b966618ce92a08ebfd2e633e8b719654ad145547/components/offline_items_collection/core/android/java/src/org/chromium/components/offline_items_collection/OfflineItem.java
[modify] https://crrev.com/b966618ce92a08ebfd2e633e8b719654ad145547/components/offline_items_collection/core/android/java/src/org/chromium/components/offline_items_collection/bridges/OfflineItemBridge.java
[modify] https://crrev.com/b966618ce92a08ebfd2e633e8b719654ad145547/components/offline_items_collection/core/android/offline_item_bridge.cc
[modify] https://crrev.com/b966618ce92a08ebfd2e633e8b719654ad145547/components/offline_items_collection/core/offline_item.cc
[modify] https://crrev.com/b966618ce92a08ebfd2e633e8b719654ad145547/components/offline_items_collection/core/offline_item.h

Sign in to add a comment