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

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

Issue 1292923004: Refactor chrome's action mode logics and namings (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: make webview to compile Created 5 years, 4 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/CustomSelectionActionModeCallback.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/CustomSelectionActionModeCallback.java b/chrome/android/java/src/org/chromium/chrome/browser/CustomSelectionActionModeCallback.java
deleted file mode 100644
index f226cd59823b8ddb6d0b20274db46dcf14e24537..0000000000000000000000000000000000000000
--- a/chrome/android/java/src/org/chromium/chrome/browser/CustomSelectionActionModeCallback.java
+++ /dev/null
@@ -1,110 +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;
-
-import android.view.ActionMode;
-import android.view.Menu;
-import android.view.MenuItem;
-
-import java.lang.reflect.Field;
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-
-/**
- * A class that represents a custom ActionMode.Callback.
- */
-public class CustomSelectionActionModeCallback implements ActionMode.Callback {
-
- private static boolean sInitializedTypeMethods;
- private static Method sGetTypeMethod;
- private static int sTypeFloating;
-
- private ContextualMenuBar mContextualMenuBar;
-
- /**
- * Sets the @param contextualMenuBar.
- */
- public void setContextualMenuBar(ContextualMenuBar contextualMenuBar) {
- mContextualMenuBar = contextualMenuBar;
- }
-
- @Override
- public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
- return true;
- }
-
- @Override
- public void onDestroyActionMode(ActionMode mode) {
- if (isFloatingActionMode(mode)) return;
- mContextualMenuBar.hideControls();
- }
-
- @Override
- public boolean onCreateActionMode(ActionMode mode, Menu menu) {
- if (isFloatingActionMode(mode)) return true;
- mContextualMenuBar.showControls();
- return true;
- }
-
- @Override
- public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
- return false;
- }
-
- // TODO(tedchoc): Delete this method and replace with just getType() when a public M SDK is
- // available.
- private static boolean isFloatingActionMode(ActionMode mode) {
- initializeGetTypeMethods();
-
- if (sGetTypeMethod == null) return false;
-
- Object retVal = null;
- try {
- retVal = sGetTypeMethod.invoke(mode);
- } catch (IllegalAccessException e) {
- return false;
- } catch (IllegalArgumentException e) {
- return false;
- } catch (InvocationTargetException e) {
- return false;
- }
- if (!(retVal instanceof Integer)) return false;
-
- return ((Integer) retVal).intValue() == sTypeFloating;
- }
-
- private static void initializeGetTypeMethods() {
- if (sInitializedTypeMethods) return;
- sInitializedTypeMethods = true;
-
- Method getType = null;
- int typeFloating = -1;
- try {
- getType = ActionMode.class.getMethod("getType");
- } catch (NoSuchMethodException e) {
- return;
- }
-
- try {
- Field field = ActionMode.class.getField("TYPE_FLOATING");
- Object value = field.get(null);
-
- if (value instanceof Integer) {
- typeFloating = (Integer) value;
- } else {
- return;
- }
- } catch (NoSuchFieldException e) {
- return;
- } catch (IllegalAccessException e) {
- return;
- } catch (IllegalArgumentException e) {
- return;
- }
-
- sGetTypeMethod = getType;
- sTypeFloating = typeFloating;
- }
-}

Powered by Google App Engine
This is Rietveld 408576698