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

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

Issue 1206673003: Merge java_staging/src into java/src. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 6 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_staging/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItem.java
diff --git a/chrome/android/java_staging/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItem.java b/chrome/android/java_staging/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItem.java
deleted file mode 100644
index 6e2adaa00e2a1e5d3db31a7e28b3dceec9ca37db..0000000000000000000000000000000000000000
--- a/chrome/android/java_staging/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItem.java
+++ /dev/null
@@ -1,275 +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.graphics.PorterDuff;
-import android.net.Uri;
-import android.util.AttributeSet;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.AdapterView;
-import android.widget.AdapterView.OnItemClickListener;
-import android.widget.ArrayAdapter;
-import android.widget.FrameLayout;
-import android.widget.ListPopupWindow;
-import android.widget.TextView;
-
-import org.chromium.chrome.R;
-import org.chromium.chrome.browser.BookmarksBridge.BookmarkItem;
-import org.chromium.chrome.browser.enhanced_bookmarks.LaunchLocation;
-import org.chromium.chrome.browser.enhancedbookmarks.EnhancedBookmarkItemsAdapter.BookmarkGrid;
-import org.chromium.chrome.browser.enhancedbookmarks.EnhancedBookmarkManager.UIState;
-import org.chromium.chrome.browser.widget.TintedImageButton;
-import org.chromium.components.bookmarks.BookmarkId;
-import org.chromium.components.bookmarks.BookmarkType;
-
-import java.util.List;
-
-/**
- * A view that shows a bookmark's title, screenshot, URL, etc, shown in the enhanced bookmarks UI.
- */
-public class EnhancedBookmarkItem extends FrameLayout implements EnhancedBookmarkUIObserver,
- BookmarkGrid {
-
- private EnhancedBookmarkSalientImageView mSalientImageView;
- private TintedImageButton mMoreIcon;
- private TextView mFolderTitleView;
- private TextView mTitleView;
- private TextView mUrlView;
- private EnhancedBookmarkItemHighlightView mHighlightView;
-
- private BookmarkId mBookmarkId;
- private EnhancedBookmarkDelegate mDelegate;
- private ListPopupWindow mPopupMenu;
- private boolean mIsAttachedToWindow = false;
-
- /**
- * Constructor for inflating from XML.
- */
- public EnhancedBookmarkItem(Context context, AttributeSet attrs) {
- super(context, attrs);
- }
-
- @Override
- protected void onFinishInflate() {
- super.onFinishInflate();
- mSalientImageView = (EnhancedBookmarkSalientImageView) findViewById(R.id.bookamrk_image);
- mMoreIcon = (TintedImageButton) findViewById(R.id.more);
- mMoreIcon.setOnClickListener(this);
- mMoreIcon.setColorFilterMode(PorterDuff.Mode.SRC.MULTIPLY);
- mFolderTitleView = (TextView) findViewById(R.id.folder_title);
- mTitleView = (TextView) findViewById(R.id.title);
- mUrlView = (TextView) findViewById(R.id.url);
- mHighlightView = (EnhancedBookmarkItemHighlightView) findViewById(R.id.highlight);
- }
-
- @Override
- public void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
- // Ensure all items are of the same width.
- int updatedWidthMeasureSpec = MeasureSpec.makeMeasureSpec(
- MeasureSpec.getSize(widthMeasureSpec),
- MeasureSpec.EXACTLY);
- super.onMeasure(updatedWidthMeasureSpec, heightMeasureSpec);
- }
-
- @Override
- public void setBookmarkId(BookmarkId bookmarkId) {
- mBookmarkId = bookmarkId;
- updateBookmarkInfo();
- }
-
- @Override
- public BookmarkId getBookmarkId() {
- return mBookmarkId;
- }
-
- /**
- * 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 = 1;
-
- @Override
- public boolean areAllItemsEnabled() {
- return false;
- }
-
- @Override
- public boolean isEnabled(int position) {
- // Partner bookmarks can't move, so disable that.
- return mBookmarkId.getType() != BookmarkType.PARTNER
- || position != MOVE_POSITION;
- }
-
- @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) {
- EnhancedBookmarkUtils.startEditActivity(getContext(), mBookmarkId);
- } else if (position == 2) {
- EnhancedBookmarkFolderSelectActivity.startFolderSelectActivity(getContext(),
- mBookmarkId);
- } else if (position == 3) {
- mDelegate.getModel().deleteBookmarks(mBookmarkId);
- }
- mPopupMenu.dismiss();
- }
- });
- }
- mPopupMenu.show();
- mPopupMenu.getListView().setDivider(null);
- }
-
- private void initialize() {
- mDelegate.addUIObserver(this);
- updateSelectionState();
- }
-
- private void cleanup() {
- if (mPopupMenu != null) mPopupMenu.dismiss();
- if (mDelegate != null) mDelegate.removeUIObserver(this);
- }
-
- private void updateSelectionState() {
- mMoreIcon.setClickable(!mDelegate.isSelectionEnabled());
- }
-
- /**
- * Update the UI to reflect the current bookmark information.
- */
- void updateBookmarkInfo() {
- if (mBookmarkId == null) return;
-
- BookmarkItem bookmarkItem = mDelegate.getModel().getBookmarkById(mBookmarkId);
- mMoreIcon.setVisibility(bookmarkItem.isEditable() ? VISIBLE : GONE);
-
- mTitleView.setText(bookmarkItem.getTitle());
- mUrlView.setText(Uri.parse(bookmarkItem.getUrl()).getHost());
-
- mFolderTitleView.setVisibility(View.INVISIBLE);
- BookmarkId parentId = bookmarkItem.getParentId();
- // On folder mode, folder name is shown at top so no need to show it again.
- if (mDelegate.getCurrentState() != UIState.STATE_FOLDER
- && parentId != null) {
- BookmarkItem parentItem = mDelegate.getModel().getBookmarkById(parentId);
- if (parentItem != null) {
- mFolderTitleView.setVisibility(View.VISIBLE);
- mFolderTitleView.setText(parentItem.getTitle());
- }
- }
-
- mSalientImageView.load(mDelegate.getModel(), bookmarkItem.getUrl(),
- EnhancedBookmarkUtils.generateBackgroundColor(bookmarkItem));
- }
-
- @Override
- public void onClick(View view) {
- if (view == mMoreIcon) {
- showMenu(view);
- } else {
- int launchLocation = -1;
- switch (mDelegate.getCurrentState()) {
- case UIState.STATE_ALL_BOOKMARKS:
- launchLocation = LaunchLocation.ALL_ITEMS;
- break;
- case UIState.STATE_FOLDER:
- launchLocation = LaunchLocation.FOLDER;
- break;
- case UIState.STATE_LOADING:
- assert false :
- "The main content shouldn't be inflated if it's still loading";
- break;
- default:
- assert false : "State not valid";
- break;
- }
- mDelegate.openBookmark(mBookmarkId, launchLocation);
- }
- }
-
- @Override
- protected void onAttachedToWindow() {
- super.onAttachedToWindow();
- mIsAttachedToWindow = true;
- if (mDelegate != null) initialize();
- }
-
- @Override
- protected void onDetachedFromWindow() {
- super.onDetachedFromWindow();
- mIsAttachedToWindow = false;
- cleanup();
- }
-
- // 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 onSelectionStateChange(List<BookmarkId> selectedBookmarks) {
- updateSelectionState();
- }
-}

Powered by Google App Engine
This is Rietveld 408576698