Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(14)

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadManagerUi.java

Issue 2270233003: [Android] Implement empty view for download manager ui (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: don't use compound drawable Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadManagerUi.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadManagerUi.java b/chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadManagerUi.java
index c3ea3c47f327818aeb8c589094050be17c5416c1..0ff9341b80d4e769593bf996661f71fb627c9dc4 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadManagerUi.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadManagerUi.java
@@ -14,6 +14,7 @@ import android.support.v4.widget.DrawerLayout;
import android.support.v4.widget.DrawerLayout.DrawerListener;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
+import android.support.v7.widget.RecyclerView.AdapterDataObserver;
import android.support.v7.widget.Toolbar.OnMenuItemClickListener;
import android.text.TextUtils;
import android.view.Gravity;
@@ -115,10 +116,24 @@ public class DownloadManagerUi implements OnMenuItemClickListener {
private final SpaceDisplay mSpaceDisplay;
private final ListView mFilterView;
private final RecyclerView mRecyclerView;
+ private final View mEmptyView;
private BasicNativePage mNativePage;
private final AtomicInteger mNumberOfFilesBeingDeleted = new AtomicInteger();
+ private final AdapterDataObserver mAdapterObserver = new AdapterDataObserver() {
+ @Override
+ public void onChanged() {
+ if (mHistoryAdapter.getItemCount() == 0) {
+ mEmptyView.setVisibility(View.VISIBLE);
+ mRecyclerView.setVisibility(View.GONE);
+ } else {
+ mEmptyView.setVisibility(View.GONE);
+ mRecyclerView.setVisibility(View.VISIBLE);
+ }
+ }
+ };
+
public DownloadManagerUi(
Activity activity, boolean isOffTheRecord, ComponentName parentComponent) {
mActivity = activity;
@@ -131,6 +146,9 @@ public class DownloadManagerUi implements OnMenuItemClickListener {
mHistoryAdapter = new DownloadHistoryAdapter(isOffTheRecord, parentComponent);
mHistoryAdapter.initialize(mBackendProvider);
addObserver(mHistoryAdapter);
+ mHistoryAdapter.registerAdapterDataObserver(mAdapterObserver);
+
+ mEmptyView = mMainView.findViewById(R.id.empty_view);
mSpaceDisplay = new SpaceDisplay(mMainView, mHistoryAdapter);
mHistoryAdapter.registerAdapterDataObserver(mSpaceDisplay);
@@ -190,6 +208,7 @@ public class DownloadManagerUi implements OnMenuItemClickListener {
mBackendProvider.getOfflinePageBridge().destroy();
+ mHistoryAdapter.unregisterAdapterDataObserver(mAdapterObserver);
mHistoryAdapter.unregisterAdapterDataObserver(mSpaceDisplay);
}
« no previous file with comments | « chrome/android/java/res/layout/download_main.xml ('k') | chrome/android/java/strings/android_chrome_strings.grd » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698