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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkRow.java

Issue 1688033002: Rename EnhancedBookmarks to Bookmarks, part 1. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: comments from #2 Created 4 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/enhancedbookmarks/EnhancedBookmarkRow.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkRow.java b/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkRow.java
deleted file mode 100644
index 9ea1328bdf9d58cf2ef27acd924138bdd449e581..0000000000000000000000000000000000000000
--- a/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkRow.java
+++ /dev/null
@@ -1,285 +0,0 @@
-// Copyright 2015 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package org.chromium.chrome.browser.enhancedbookmarks;
-
-import android.content.Context;
-import android.util.AttributeSet;
-import android.view.View;
-import android.view.View.OnClickListener;
-import android.view.View.OnLongClickListener;
-import android.view.ViewGroup;
-import android.widget.AdapterView;
-import android.widget.AdapterView.OnItemClickListener;
-import android.widget.ArrayAdapter;
-import android.widget.Checkable;
-import android.widget.FrameLayout;
-import android.widget.ImageView;
-import android.widget.ListPopupWindow;
-import android.widget.TextView;
-
-import org.chromium.chrome.R;
-import org.chromium.chrome.browser.bookmark.BookmarksBridge.BookmarkItem;
-import org.chromium.chrome.browser.widget.TintedImageButton;
-import org.chromium.components.bookmarks.BookmarkId;
-
-import java.util.List;
-
-/**
- * Common logic for bookmark and folder rows.
- */
-abstract class EnhancedBookmarkRow extends FrameLayout implements EnhancedBookmarkUIObserver,
- Checkable, OnClickListener, OnLongClickListener {
-
- protected ImageView mIconImageView;
- protected TextView mTitleView;
- protected TintedImageButton mMoreIcon;
- private EnhancedBookmarkItemHighlightView mHighlightView;
-
- protected EnhancedBookmarkDelegate mDelegate;
- protected BookmarkId mBookmarkId;
- private ListPopupWindow mPopupMenu;
- private boolean mIsAttachedToWindow = false;
-
- /**
- * Constructor for inflating from XML.
- */
- public EnhancedBookmarkRow(Context context, AttributeSet attrs) {
- super(context, attrs);
- }
-
- /**
- * Updates this row for the given {@link BookmarkId}.
- * @return The {@link BookmarkItem} corresponding the given {@link BookmarkId}.
- */
- BookmarkItem setBookmarkId(BookmarkId bookmarkId) {
- mBookmarkId = bookmarkId;
- BookmarkItem bookmarkItem = mDelegate.getModel().getBookmarkById(bookmarkId);
- clearPopup();
- if (isSelectable()) {
- mMoreIcon.setVisibility(bookmarkItem.isEditable() ? VISIBLE : GONE);
- setChecked(mDelegate.isBookmarkSelected(bookmarkId));
- }
- return bookmarkItem;
- }
-
- /**
- * Same as {@link OnClickListener#onClick(View)} on this.
- * Subclasses should override this instead of setting their own OnClickListener because this
- * class handles onClick events in selection mode, and won't forward events to subclasses in
- * that case.
- */
- protected abstract void onClick();
-
- private void initialize() {
- mDelegate.addUIObserver(this);
- updateSelectionState();
- }
-
- private void clearPopup() {
- if (mPopupMenu != null) {
- if (mPopupMenu.isShowing()) mPopupMenu.dismiss();
- mPopupMenu = null;
- }
- }
-
- private void cleanup() {
- clearPopup();
- if (mDelegate != null) mDelegate.removeUIObserver(this);
- }
-
- private void updateSelectionState() {
- if (isSelectable()) mMoreIcon.setClickable(!mDelegate.isSelectionEnabled());
- }
-
- /**
- * @return Whether this row is selectable.
- */
- protected boolean isSelectable() {
- return true;
- }
-
- /**
- * Show drop-down menu after user click on more-info icon
- * @param view The anchor view for the menu
- */
- private void showMenu(View view) {
- if (mPopupMenu == null) {
- mPopupMenu = new ListPopupWindow(getContext(), null, 0,
- R.style.EnhancedBookmarkMenuStyle);
- mPopupMenu.setAdapter(new ArrayAdapter<String>(
- getContext(), R.layout.eb_popup_item, new String[] {
- getContext().getString(R.string.enhanced_bookmark_item_select),
- getContext().getString(R.string.enhanced_bookmark_item_edit),
- getContext().getString(R.string.enhanced_bookmark_item_move),
- getContext().getString(R.string.enhanced_bookmark_item_delete)}) {
- private static final int MOVE_POSITION = 2;
-
- @Override
- public boolean areAllItemsEnabled() {
- return false;
- }
-
- @Override
- public boolean isEnabled(int position) {
- if (position == MOVE_POSITION) {
- BookmarkItem bookmark = mDelegate.getModel().getBookmarkById(mBookmarkId);
- if (bookmark == null) return false;
- return bookmark.isMovable();
- }
- return true;
- }
-
- @Override
- public View getView(int position, View convertView, ViewGroup parent) {
- View view = super.getView(position, convertView, parent);
- view.setEnabled(isEnabled(position));
- return view;
- }
- });
- mPopupMenu.setAnchorView(view);
- mPopupMenu.setWidth(getResources().getDimensionPixelSize(
- R.dimen.enhanced_bookmark_item_popup_width));
- mPopupMenu.setVerticalOffset(-view.getHeight());
- mPopupMenu.setModal(true);
- mPopupMenu.setOnItemClickListener(new OnItemClickListener() {
- @Override
- public void onItemClick(AdapterView<?> parent, View view, int position,
- long id) {
- if (position == 0) {
- setChecked(mDelegate.toggleSelectionForBookmark(mBookmarkId));
- } else if (position == 1) {
- BookmarkItem item = mDelegate.getModel().getBookmarkById(mBookmarkId);
- if (item.isFolder()) {
- EnhancedBookmarkAddEditFolderActivity.startEditFolderActivity(
- getContext(), item.getId());
- } else {
- EnhancedBookmarkUtils.startEditActivity(
- getContext(), item.getId(), null);
- }
- } else if (position == 2) {
- EnhancedBookmarkFolderSelectActivity.startFolderSelectActivity(getContext(),
- mBookmarkId);
- } else if (position == 3) {
- mDelegate.getModel().deleteBookmarks(mBookmarkId);
- }
- mPopupMenu.dismiss();
- }
- });
- }
- mPopupMenu.show();
- mPopupMenu.getListView().setDivider(null);
- }
-
- // FrameLayout implementations.
-
- @Override
- protected void onFinishInflate() {
- super.onFinishInflate();
-
- mIconImageView = (ImageView) findViewById(R.id.bookmark_image);
- mTitleView = (TextView) findViewById(R.id.title);
-
- if (isSelectable()) {
- mHighlightView = (EnhancedBookmarkItemHighlightView) findViewById(R.id.highlight);
-
- mMoreIcon = (TintedImageButton) findViewById(R.id.more);
- mMoreIcon.setVisibility(VISIBLE);
- mMoreIcon.setOnClickListener(new OnClickListener() {
- @Override
- public void onClick(View view) {
- showMenu(view);
- }
- });
- }
-
- setOnClickListener(this);
- setOnLongClickListener(this);
- }
-
- @Override
- protected void onAttachedToWindow() {
- super.onAttachedToWindow();
- mIsAttachedToWindow = true;
- if (mDelegate != null) initialize();
- }
-
- @Override
- protected void onDetachedFromWindow() {
- super.onDetachedFromWindow();
- mIsAttachedToWindow = false;
- cleanup();
- }
-
- // OnClickListener implementation.
-
- @Override
- public final void onClick(View view) {
- assert view == this;
-
- if (mDelegate.isSelectionEnabled() && isSelectable()) {
- onLongClick(view);
- } else {
- onClick();
- }
- }
-
- // OnLongClickListener implementation.
-
- @Override
- public boolean onLongClick(View view) {
- assert view == this;
- if (!isSelectable()) return false;
- setChecked(mDelegate.toggleSelectionForBookmark(mBookmarkId));
- return true;
- }
-
- // Checkable implementations.
-
- @Override
- public boolean isChecked() {
- return mHighlightView.isChecked();
- }
-
- @Override
- public void toggle() {
- setChecked(!isChecked());
- }
-
- @Override
- public void setChecked(boolean checked) {
- mHighlightView.setChecked(checked);
- }
-
- // EnhancedBookmarkUIObserver implementations.
-
- @Override
- public void onEnhancedBookmarkDelegateInitialized(EnhancedBookmarkDelegate delegate) {
- assert mDelegate == null;
- mDelegate = delegate;
- if (mIsAttachedToWindow) initialize();
- }
-
- @Override
- public void onDestroy() {
- cleanup();
- }
-
- @Override
- public void onAllBookmarksStateSet() {
- }
-
- @Override
- public void onFolderStateSet(BookmarkId folder) {
- }
-
- @Override
- public void onFilterStateSet(EnhancedBookmarkFilter filter) {
- }
-
- @Override
- public void onSelectionStateChange(List<BookmarkId> selectedBookmarks) {
- updateSelectionState();
- }
-}

Powered by Google App Engine
This is Rietveld 408576698