| Index: chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkActionBar.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkActionBar.java b/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkActionBar.java
|
| deleted file mode 100644
|
| index 3e783782e1c13b6e792768918d86655daaeb1335..0000000000000000000000000000000000000000
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkActionBar.java
|
| +++ /dev/null
|
| @@ -1,304 +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.app.Activity;
|
| -import android.content.Context;
|
| -import android.support.v7.app.ActionBarDrawerToggle;
|
| -import android.support.v7.widget.Toolbar;
|
| -import android.support.v7.widget.Toolbar.OnMenuItemClickListener;
|
| -import android.text.TextUtils;
|
| -import android.util.AttributeSet;
|
| -import android.view.MenuItem;
|
| -import android.view.View;
|
| -import android.view.View.OnClickListener;
|
| -
|
| -import org.chromium.base.ApiCompatibilityUtils;
|
| -import org.chromium.chrome.R;
|
| -import org.chromium.chrome.browser.bookmark.BookmarksBridge.BookmarkItem;
|
| -import org.chromium.chrome.browser.bookmark.BookmarksBridge.BookmarkModelObserver;
|
| -import org.chromium.chrome.browser.offlinepages.OfflinePageUtils;
|
| -import org.chromium.chrome.browser.widget.NumberRollView;
|
| -import org.chromium.components.bookmarks.BookmarkId;
|
| -import org.chromium.components.bookmarks.BookmarkType;
|
| -
|
| -import java.util.List;
|
| -
|
| -/**
|
| - * Main action bar of Enhanced Bookmark UI. It is responsible for displaying title and buttons
|
| - * associated with the current context.
|
| - */
|
| -public class EnhancedBookmarkActionBar extends Toolbar implements EnhancedBookmarkUIObserver,
|
| - OnMenuItemClickListener, OnClickListener {
|
| - private static final int NAVIGATION_BUTTON_NONE = 0;
|
| - private static final int NAVIGATION_BUTTON_MENU = 1;
|
| - private static final int NAVIGATION_BUTTON_BACK = 2;
|
| - private static final int NAVIGATION_BUTTON_SELECTION_BACK = 3;
|
| -
|
| - private int mNavigationButton;
|
| - private BookmarkItem mCurrentFolder;
|
| - private EnhancedBookmarkDelegate mDelegate;
|
| - private ActionBarDrawerToggle mActionBarDrawerToggle;
|
| - private boolean mIsSelectionEnabled;
|
| -
|
| - private BookmarkModelObserver mBookmarkModelObserver = new BookmarkModelObserver() {
|
| - @Override
|
| - public void bookmarkModelChanged() {
|
| - onSelectionStateChange(mDelegate.getSelectedBookmarks());
|
| - }
|
| - };
|
| -
|
| - public EnhancedBookmarkActionBar(Context context, AttributeSet attrs) {
|
| - super(context, attrs);
|
| - setNavigationOnClickListener(this);
|
| - inflateMenu(R.menu.eb_action_bar_menu);
|
| - setOnMenuItemClickListener(this);
|
| -
|
| - getMenu()
|
| - .findItem(R.id.search_menu_id)
|
| - .setTitle(OfflinePageUtils.getStringId(
|
| - R.string.enhanced_bookmark_action_bar_search));
|
| - getMenu()
|
| - .findItem(R.id.selection_mode_edit_menu_id)
|
| - .setTitle(OfflinePageUtils.getStringId(R.string.edit_bookmark));
|
| - getMenu()
|
| - .findItem(R.id.selection_mode_move_menu_id)
|
| - .setTitle(OfflinePageUtils.getStringId(R.string.enhanced_bookmark_action_bar_move));
|
| - getMenu()
|
| - .findItem(R.id.selection_mode_delete_menu_id)
|
| - .setTitle(OfflinePageUtils.getStringId(
|
| - R.string.enhanced_bookmark_action_bar_delete));
|
| - }
|
| -
|
| - @Override
|
| - public void onClick(View view) {
|
| - switch (mNavigationButton) {
|
| - case NAVIGATION_BUTTON_NONE:
|
| - break;
|
| - case NAVIGATION_BUTTON_MENU:
|
| - // ActionBarDrawerToggle handles this.
|
| - break;
|
| - case NAVIGATION_BUTTON_BACK:
|
| - mDelegate.openFolder(mCurrentFolder.getParentId());
|
| - break;
|
| - case NAVIGATION_BUTTON_SELECTION_BACK:
|
| - mDelegate.clearSelection();
|
| - break;
|
| - default:
|
| - assert false : "Incorrect navigation button state";
|
| - }
|
| - }
|
| -
|
| - @Override
|
| - public boolean onMenuItemClick(MenuItem menuItem) {
|
| - if (menuItem.getItemId() == R.id.edit_menu_id) {
|
| - EnhancedBookmarkAddEditFolderActivity.startEditFolderActivity(getContext(),
|
| - mCurrentFolder.getId());
|
| - return true;
|
| - } else if (menuItem.getItemId() == R.id.close_menu_id) {
|
| - EnhancedBookmarkUtils.finishActivityOnPhone(getContext());
|
| - return true;
|
| - } else if (menuItem.getItemId() == R.id.search_menu_id) {
|
| - mDelegate.openSearchUI();
|
| - return true;
|
| - } else if (menuItem.getItemId() == R.id.selection_mode_edit_menu_id) {
|
| - List<BookmarkId> list = mDelegate.getSelectedBookmarks();
|
| - assert list.size() == 1;
|
| - BookmarkItem item = mDelegate.getModel().getBookmarkById(list.get(0));
|
| - if (item.isFolder()) {
|
| - EnhancedBookmarkAddEditFolderActivity.startEditFolderActivity(getContext(),
|
| - item.getId());
|
| - } else {
|
| - EnhancedBookmarkUtils.startEditActivity(getContext(), item.getId(), null);
|
| - }
|
| - return true;
|
| - } else if (menuItem.getItemId() == R.id.selection_mode_move_menu_id) {
|
| - List<BookmarkId> list = mDelegate.getSelectedBookmarks();
|
| - if (list.size() >= 1) {
|
| - EnhancedBookmarkFolderSelectActivity.startFolderSelectActivity(getContext(),
|
| - list.toArray(new BookmarkId[list.size()]));
|
| - }
|
| - return true;
|
| - } else if (menuItem.getItemId() == R.id.selection_mode_delete_menu_id) {
|
| - mDelegate.getModel().deleteBookmarks(
|
| - mDelegate.getSelectedBookmarks().toArray(new BookmarkId[0]));
|
| - return true;
|
| - }
|
| -
|
| - assert false : "Unhandled menu click.";
|
| - return false;
|
| - }
|
| -
|
| - /**
|
| - * Update the current navigation button (the top-left icon on LTR)
|
| - * @param navigationButton one of NAVIGATION_BUTTON_* constants.
|
| - */
|
| - private void setNavigationButton(int navigationButton) {
|
| - int iconResId = 0;
|
| - int contentDescriptionId = 0;
|
| -
|
| - if (navigationButton == NAVIGATION_BUTTON_MENU && !mDelegate.doesDrawerExist()) {
|
| - mNavigationButton = NAVIGATION_BUTTON_NONE;
|
| - } else {
|
| - mNavigationButton = navigationButton;
|
| - }
|
| -
|
| - if (mNavigationButton == NAVIGATION_BUTTON_MENU) {
|
| - initActionBarDrawerToggle();
|
| - // ActionBarDrawerToggle will take care of icon and content description, so just return.
|
| - return;
|
| - }
|
| -
|
| - if (mActionBarDrawerToggle != null) {
|
| - mActionBarDrawerToggle.setDrawerIndicatorEnabled(false);
|
| - mDelegate.getDrawerLayout().setDrawerListener(null);
|
| - }
|
| -
|
| - setNavigationOnClickListener(this);
|
| -
|
| - switch (mNavigationButton) {
|
| - case NAVIGATION_BUTTON_NONE:
|
| - break;
|
| - case NAVIGATION_BUTTON_BACK:
|
| - iconResId = R.drawable.eb_back_normal;
|
| - contentDescriptionId = R.string.accessibility_toolbar_btn_back;
|
| - break;
|
| - case NAVIGATION_BUTTON_SELECTION_BACK:
|
| - iconResId = R.drawable.eb_cancel_active;
|
| - contentDescriptionId = R.string.accessibility_enhanced_bookmark_cancel_selection;
|
| - break;
|
| - default:
|
| - assert false : "Incorrect navigationButton argument";
|
| - }
|
| -
|
| - if (iconResId == 0) {
|
| - setNavigationIcon(null);
|
| - } else {
|
| - setNavigationIcon(iconResId);
|
| - }
|
| - setNavigationContentDescription(contentDescriptionId);
|
| - }
|
| -
|
| - /**
|
| - * Set up ActionBarDrawerToggle, a.k.a. hamburger button.
|
| - */
|
| - private void initActionBarDrawerToggle() {
|
| - // Sadly, the only way to set correct toolbar button listener for ActionBarDrawerToggle
|
| - // is constructing, so we will need to construct every time we re-show this button.
|
| - mActionBarDrawerToggle = new ActionBarDrawerToggle((Activity) getContext(),
|
| - mDelegate.getDrawerLayout(), this,
|
| - R.string.accessibility_enhanced_bookmark_drawer_toggle_btn_open,
|
| - R.string.accessibility_enhanced_bookmark_drawer_toggle_btn_close);
|
| - mDelegate.getDrawerLayout().setDrawerListener(mActionBarDrawerToggle);
|
| - mActionBarDrawerToggle.syncState();
|
| - }
|
| -
|
| - void showLoadingUi() {
|
| - setTitle(null);
|
| - setNavigationButton(NAVIGATION_BUTTON_NONE);
|
| - getMenu().findItem(R.id.search_menu_id).setVisible(false);
|
| - getMenu().findItem(R.id.edit_menu_id).setVisible(false);
|
| - }
|
| -
|
| - // EnhancedBookmarkUIObserver implementations.
|
| -
|
| - @Override
|
| - public void onEnhancedBookmarkDelegateInitialized(EnhancedBookmarkDelegate delegate) {
|
| - mDelegate = delegate;
|
| - mDelegate.addUIObserver(this);
|
| - if (!delegate.isDialogUi()) getMenu().removeItem(R.id.close_menu_id);
|
| - delegate.getModel().addObserver(mBookmarkModelObserver);
|
| - }
|
| -
|
| - @Override
|
| - public void onDestroy() {
|
| - mDelegate.removeUIObserver(this);
|
| - mDelegate.getModel().removeObserver(mBookmarkModelObserver);
|
| - }
|
| -
|
| - @Override
|
| - public void onAllBookmarksStateSet() {
|
| - setTitle(getTitleForAllItems());
|
| - setNavigationButton(NAVIGATION_BUTTON_MENU);
|
| - getMenu().findItem(R.id.search_menu_id).setVisible(true);
|
| - getMenu().findItem(R.id.edit_menu_id).setVisible(false);
|
| - }
|
| -
|
| - @Override
|
| - public void onFolderStateSet(BookmarkId folder) {
|
| - mCurrentFolder = mDelegate.getModel().getBookmarkById(folder);
|
| -
|
| - getMenu().findItem(R.id.search_menu_id).setVisible(false);
|
| - getMenu().findItem(R.id.edit_menu_id).setVisible(mCurrentFolder.isEditable());
|
| -
|
| - // If the parent folder is a top level node, we don't go up anymore.
|
| - if (mDelegate.getModel().getTopLevelFolderParentIDs().contains(
|
| - mCurrentFolder.getParentId())) {
|
| - if (TextUtils.isEmpty(mCurrentFolder.getTitle())) {
|
| - setTitle(getTitleForAllItems());
|
| - } else {
|
| - setTitle(mCurrentFolder.getTitle());
|
| - }
|
| - setNavigationButton(NAVIGATION_BUTTON_MENU);
|
| - } else {
|
| - setTitle(mCurrentFolder.getTitle());
|
| - setNavigationButton(NAVIGATION_BUTTON_BACK);
|
| - }
|
| - }
|
| -
|
| - @Override
|
| - public void onFilterStateSet(EnhancedBookmarkFilter filter) {
|
| - assert filter == EnhancedBookmarkFilter.OFFLINE_PAGES;
|
| - setTitle(R.string.enhanced_bookmark_title_bar_filter_offline_pages);
|
| - setNavigationButton(NAVIGATION_BUTTON_MENU);
|
| - getMenu().findItem(R.id.edit_menu_id).setVisible(false);
|
| - }
|
| -
|
| - @Override
|
| - public void onSelectionStateChange(List<BookmarkId> selectedBookmarks) {
|
| - boolean wasSelectionEnabled = mIsSelectionEnabled;
|
| - mIsSelectionEnabled = mDelegate.isSelectionEnabled();
|
| - NumberRollView numberRollView = (NumberRollView) findViewById(R.id.selection_mode_number);
|
| - if (mIsSelectionEnabled) {
|
| - setNavigationButton(NAVIGATION_BUTTON_SELECTION_BACK);
|
| - setTitle(null);
|
| -
|
| - getMenu().setGroupVisible(R.id.normal_menu_group, false);
|
| - getMenu().setGroupVisible(R.id.selection_mode_menu_group, true);
|
| - // Editing a bookmark action on multiple selected items doesn't make sense. So disable.
|
| - getMenu().findItem(R.id.selection_mode_edit_menu_id).setVisible(
|
| - selectedBookmarks.size() == 1);
|
| - // Partner bookmarks can't move, so if the selection includes a partner bookmark,
|
| - // disable the move button.
|
| - for (BookmarkId bookmark : selectedBookmarks) {
|
| - if (bookmark.getType() == BookmarkType.PARTNER) {
|
| - getMenu().findItem(R.id.selection_mode_move_menu_id).setVisible(false);
|
| - break;
|
| - }
|
| - }
|
| -
|
| - setBackgroundColor(
|
| - ApiCompatibilityUtils.getColor(getResources(), R.color.light_active_color));
|
| -
|
| - numberRollView.setVisibility(View.VISIBLE);
|
| - if (!wasSelectionEnabled) numberRollView.setNumber(0, false);
|
| - numberRollView.setNumber(selectedBookmarks.size(), true);
|
| - } else {
|
| - getMenu().setGroupVisible(R.id.normal_menu_group, true);
|
| - getMenu().setGroupVisible(R.id.selection_mode_menu_group, false);
|
| - setBackgroundColor(ApiCompatibilityUtils.getColor(getResources(),
|
| - R.color.enhanced_bookmark_appbar_background));
|
| -
|
| - numberRollView.setVisibility(View.GONE);
|
| - numberRollView.setNumber(0, false);
|
| -
|
| - mDelegate.notifyStateChange(this);
|
| - }
|
| - }
|
| -
|
| - private int getTitleForAllItems() {
|
| - return OfflinePageUtils.getStringId(R.string.enhanced_bookmark_title_bar_all_items);
|
| - }
|
| -}
|
|
|