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; |
- } |
-} |