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

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

Issue 2691373004: [Android History] Even more polish (Closed)
Patch Set: [Android History] Even more polish 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 eeb792a600d35180df6feecb054375d04ed713c1..bf4ea624b9380bb98fb6c8e664867594ff5ea7c2 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
@@ -39,6 +39,9 @@ import org.chromium.chrome.browser.preferences.PreferencesLauncher;
import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.signin.SigninManager;
import org.chromium.chrome.browser.signin.SigninManager.SignInStateObserver;
+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;
@@ -54,7 +57,8 @@ import java.util.List;
* Displays and manages the UI for browsing history.
*/
public class HistoryManager implements OnMenuItemClickListener, SignInStateObserver,
- SelectionObserver<HistoryItem>, SearchDelegate {
+ SelectionObserver<HistoryItem>, SearchDelegate,
+ SnackbarController {
private static final int FAVICON_MAX_CACHE_SIZE_BYTES = 10 * 1024 * 1024; // 10MB
private static final int MEGABYTES_TO_BYTES = 1024 * 1024;
private static final String METRICS_PREFIX = "Android.HistoryPage.";
@@ -118,8 +122,8 @@ 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.card_corner_radius);
+ 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
@@ -184,6 +188,8 @@ public class HistoryManager implements OnMenuItemClickListener, SignInStateObser
@Override
public boolean onMenuItemClick(MenuItem item) {
+ mToolbar.hideOverflowMenu();
+
if (item.getItemId() == R.id.close_menu_id && !isDisplayedInNativePage()) {
mActivity.finish();
return true;
@@ -195,6 +201,10 @@ public class HistoryManager implements OnMenuItemClickListener, SignInStateObser
recordUserActionWithOptionalSearch("CopyLink");
Clipboard clipboard = new Clipboard(mActivity);
clipboard.setText(mSelectionDelegate.getSelectedItems().get(0).getUrl());
+ mSelectionDelegate.clearSelection();
+ Snackbar snackbar = Snackbar.make(mActivity.getString(R.string.copied), this,
+ Snackbar.TYPE_NOTIFICATION, Snackbar.UMA_HISTORY_LINK_COPIED);
+ ((SnackbarManageable) mActivity).getSnackbarManager().showSnackbar(snackbar);
return true;
} else if (item.getItemId() == R.id.selection_mode_open_in_incognito) {
openItemsInNewTabs(mSelectionDelegate.getSelectedItems(), true);
@@ -439,6 +449,16 @@ public class HistoryManager implements OnMenuItemClickListener, SignInStateObser
setToolbarShadowVisibility();
}
+ @Override
+ public void onAction(Object actionData) {
+ // Handler for the link copied snackbar. Do nothing.
+ }
+
+ @Override
+ public void onDismissNoAction(Object actionData) {
+ // Handler for the link copied snackbar. Do nothing.
+ }
+
private void setToolbarShadowVisibility() {
boolean showShadow = mRecyclerView.computeVerticalScrollOffset() != 0
|| mIsSearching || mSelectionDelegate.isSelectionEnabled();

Powered by Google App Engine
This is Rietveld 408576698