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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/history/HistoryManager.java

Issue 2703463002: [List UI Unification] Basic list unification for phones (Closed)
Patch Set: [List UI Unification] Basic list unification for phones Created 3 years, 10 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/history/HistoryManager.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryManager.java b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryManager.java
index bf4ea624b9380bb98fb6c8e664867594ff5ea7c2..216c8a3faaaf3b1cbd524cb1074cda6f945be93c 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryManager.java
@@ -17,12 +17,10 @@ import android.support.annotation.VisibleForTesting;
import android.support.graphics.drawable.VectorDrawableCompat;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
-import android.support.v7.widget.RecyclerView.ItemAnimator;
import android.support.v7.widget.RecyclerView.OnScrollListener;
import android.support.v7.widget.Toolbar.OnMenuItemClickListener;
import android.view.LayoutInflater;
import android.view.MenuItem;
-import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
@@ -43,7 +41,6 @@ import org.chromium.chrome.browser.snackbar.Snackbar;
import org.chromium.chrome.browser.snackbar.SnackbarManager.SnackbarController;
import org.chromium.chrome.browser.snackbar.SnackbarManager.SnackbarManageable;
import org.chromium.chrome.browser.util.IntentUtils;
-import org.chromium.chrome.browser.widget.FadingShadowView;
import org.chromium.chrome.browser.widget.selection.SelectableListLayout;
import org.chromium.chrome.browser.widget.selection.SelectableListToolbar.SearchDelegate;
import org.chromium.chrome.browser.widget.selection.SelectionDelegate;
@@ -66,7 +63,6 @@ public class HistoryManager implements OnMenuItemClickListener, SignInStateObser
private static HistoryProvider sProviderForTests;
private final int mListItemLateralShadowSizePx;
- private final int mDefaultLateralListItemMarginPx;
private final Activity mActivity;
private final boolean mIsDisplayedInNativePage;
@@ -75,9 +71,7 @@ public class HistoryManager implements OnMenuItemClickListener, SignInStateObser
private final SelectionDelegate<HistoryItem> mSelectionDelegate;
private final HistoryManagerToolbar mToolbar;
private final TextView mEmptyView;
- private final FadingShadowView mToolbarShadow;
private final RecyclerView mRecyclerView;
- private final ItemAnimator mItemAnimator;
private LargeIconBridge mLargeIconBridge;
private boolean mIsSearching;
@@ -103,7 +97,6 @@ public class HistoryManager implements OnMenuItemClickListener, SignInStateObser
// 2. Initialize RecyclerView.
mRecyclerView = mSelectableListLayout.initializeRecyclerView(mHistoryAdapter);
- mItemAnimator = mRecyclerView.getItemAnimator();
// 3. Initialize toolbar.
mToolbar = (HistoryManagerToolbar) mSelectableListLayout.initializeToolbar(
@@ -112,8 +105,6 @@ public class HistoryManager implements OnMenuItemClickListener, SignInStateObser
R.color.default_primary_color, false, this);
mToolbar.setManager(this);
mToolbar.initializeSearchView(this, R.string.history_manager_search, R.id.search_menu_id);
- mToolbarShadow = (FadingShadowView) mSelectableListLayout.findViewById(R.id.shadow);
- mToolbarShadow.setVisibility(View.GONE);
// 4. Configure values for HorizontalDisplayStyle.WIDE and HorizontalDisplayStyle.REGULAR.
// The list item shadow is part of the drawable nine-patch used as the list item background.
@@ -122,24 +113,19 @@ public class HistoryManager implements OnMenuItemClickListener, SignInStateObser
Rect listItemShadow = new Rect();
ApiCompatibilityUtils.getDrawable(
mActivity.getResources(), R.drawable.card_middle).getPadding(listItemShadow);
- int cardCornerRadius =
- mActivity.getResources().getDimensionPixelSize(R.dimen.list_item_corner_radius);
assert listItemShadow.left == listItemShadow.right;
// The list item shadow size is used in HorizontalDisplayStyle.WIDE to visually align other
// elements with the edge of the list items.
mListItemLateralShadowSizePx = listItemShadow.left;
- // A negative margin is used in HorizontalDisplayStyle.REGULAR to hide the lateral shadow.
- mDefaultLateralListItemMarginPx = -(listItemShadow.left + cardCornerRadius);
mSelectableListLayout.setHasWideDisplayStyle(mListItemLateralShadowSizePx);
// 5. Initialize empty view.
mEmptyView = mSelectableListLayout.initializeEmptyView(
VectorDrawableCompat.create(
- mActivity.getResources(), R.drawable.history_big,
- mActivity.getTheme()),
- R.string.history_manager_empty);
+ mActivity.getResources(), R.drawable.history_big, mActivity.getTheme()),
+ R.string.history_manager_empty, R.string.history_manager_no_results);
// TODO(twellington): remove this after unifying bookmarks and downloads UI with history.
mEmptyView.setTextColor(ApiCompatibilityUtils.getColor(mActivity.getResources(),
R.color.google_grey_500));
@@ -159,8 +145,6 @@ public class HistoryManager implements OnMenuItemClickListener, SignInStateObser
mRecyclerView.addOnScrollListener(new OnScrollListener() {
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
- setToolbarShadowVisibility();
-
if (!mHistoryAdapter.canLoadMoreItems()) return;
// Load more items if the scroll position is close to the bottom of the list.
@@ -222,11 +206,8 @@ public class HistoryManager implements OnMenuItemClickListener, SignInStateObser
return true;
} else if (item.getItemId() == R.id.search_menu_id) {
mHistoryAdapter.removeHeader();
-
- mRecyclerView.setItemAnimator(null);
mToolbar.showSearchView();
- mToolbarShadow.setVisibility(View.VISIBLE);
- mSelectableListLayout.setEmptyViewText(R.string.history_manager_no_results);
+ mSelectableListLayout.onStartSearch();
recordUserAction("Search");
mIsSearching = true;
return true;
@@ -325,10 +306,8 @@ public class HistoryManager implements OnMenuItemClickListener, SignInStateObser
@Override
public void onEndSearch() {
mHistoryAdapter.onEndSearch();
- mSelectableListLayout.setEmptyViewText(R.string.history_manager_empty);
+ mSelectableListLayout.onEndSearch();
mIsSearching = false;
- setToolbarShadowVisibility();
- mRecyclerView.setItemAnimator(mItemAnimator);
}
/**
@@ -355,15 +334,6 @@ public class HistoryManager implements OnMenuItemClickListener, SignInStateObser
return mListItemLateralShadowSizePx;
}
- /**
- * @return The start and end margin for list items when in the regular horizontal display style.
- * This value should be used to hide the lateral shadows on list items.
- * @see org.chromium.chrome.browser.widget.displaystyle.HorizontalDisplayStyle#REGULAR
- */
- public int getDefaultLateralListItemMarginPx() {
- return mDefaultLateralListItemMarginPx;
- }
-
private void openItemsInNewTabs(List<HistoryItem> items, boolean isIncognito) {
recordSelectionCountHistorgram("Open");
recordUserActionWithOptionalSearch("OpenSelected" + (isIncognito ? "Incognito" : ""));
@@ -401,11 +371,6 @@ public class HistoryManager implements OnMenuItemClickListener, SignInStateObser
return mHistoryAdapter;
}
- @VisibleForTesting
- View getToolbarShadowForTests() {
- return mToolbarShadow;
- }
-
/**
* @param action The user action string to record.
*/
@@ -446,7 +411,6 @@ public class HistoryManager implements OnMenuItemClickListener, SignInStateObser
@Override
public void onSelectionStateChange(List<HistoryItem> selectedItems) {
mHistoryAdapter.onSelectionStateChange(mSelectionDelegate.isSelectionEnabled());
- setToolbarShadowVisibility();
}
@Override
@@ -458,10 +422,4 @@ public class HistoryManager implements OnMenuItemClickListener, SignInStateObser
public void onDismissNoAction(Object actionData) {
// Handler for the link copied snackbar. Do nothing.
}
-
- private void setToolbarShadowVisibility() {
- boolean showShadow = mRecyclerView.computeVerticalScrollOffset() != 0
- || mIsSearching || mSelectionDelegate.isSelectionEnabled();
- mToolbarShadow.setVisibility(showShadow ? View.VISIBLE : View.GONE);
- }
}

Powered by Google App Engine
This is Rietveld 408576698