| Index: ui/android/java/src/org/chromium/ui/gfx/ActivityNativeWindow.java
|
| diff --git a/ui/android/java/src/org/chromium/ui/gfx/ActivityNativeWindow.java b/ui/android/java/src/org/chromium/ui/gfx/ActivityNativeWindow.java
|
| deleted file mode 100644
|
| index 821a8a8cb500e522dce0401622dad09c68b8c23d..0000000000000000000000000000000000000000
|
| --- a/ui/android/java/src/org/chromium/ui/gfx/ActivityNativeWindow.java
|
| +++ /dev/null
|
| @@ -1,152 +0,0 @@
|
| -// Copyright (c) 2012 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.ui.gfx;
|
| -
|
| -import android.app.Activity;
|
| -import android.content.ActivityNotFoundException;
|
| -import android.content.Intent;
|
| -import android.os.Bundle;
|
| -import android.util.SparseArray;
|
| -import android.widget.Toast;
|
| -
|
| -import java.util.HashMap;
|
| -
|
| -/**
|
| - * The window that has access to the main activity and is able to create and receive intents,
|
| - * and show error messages.
|
| - */
|
| -public class ActivityNativeWindow extends NativeWindow {
|
| -
|
| - // Constants used for intent request code bounding.
|
| - private static final int REQUEST_CODE_PREFIX = 1000;
|
| - private static final int REQUEST_CODE_RANGE_SIZE = 100;
|
| - // A string used as a key to store intent errors in a bundle
|
| - static final String WINDOW_CALLBACK_ERRORS = "window_callback_errors";
|
| -
|
| - private int mNextRequestCode = 0;
|
| - protected Activity mActivity;
|
| - protected SparseArray<IntentCallback> mOutstandingIntents;
|
| - protected HashMap<Integer, String> mIntentErrors;
|
| -
|
| - /**
|
| - * @param activity
|
| - */
|
| - public ActivityNativeWindow(Activity activity) {
|
| - super(activity);
|
| - mActivity = activity;
|
| - mOutstandingIntents = new SparseArray<IntentCallback>();
|
| - mIntentErrors = new HashMap<Integer, String>();
|
| -
|
| - }
|
| -
|
| - /**
|
| - * Shows an intent and returns the results to the callback object.
|
| - * @param intent The intent that needs to be showed.
|
| - * @param callback The object that will receive the results for the intent.
|
| - * @param error The error string to be show if activity is paused before intent results.
|
| - * @return Whether the intent was shown.
|
| - */
|
| - @Override
|
| - public boolean showIntent(Intent intent, IntentCallback callback, String error) {
|
| - int requestCode = REQUEST_CODE_PREFIX + mNextRequestCode;
|
| - mNextRequestCode = (mNextRequestCode + 1) % REQUEST_CODE_RANGE_SIZE;
|
| -
|
| - try {
|
| - mActivity.startActivityForResult(intent, requestCode);
|
| - } catch (ActivityNotFoundException e) {
|
| - return false;
|
| - }
|
| -
|
| - mOutstandingIntents.put(requestCode, callback);
|
| - if (error != null) mIntentErrors.put(requestCode, error);
|
| -
|
| - return true;
|
| - }
|
| -
|
| - /**
|
| - * Displays an error message with a provided error message string.
|
| - * @param error The error message string to be displayed.
|
| - */
|
| - @Override
|
| - public void showError(String error) {
|
| - if (error != null) {
|
| - Toast.makeText(mActivity, error, Toast.LENGTH_SHORT).show();
|
| - }
|
| - }
|
| -
|
| - /**
|
| - * Displays an error message for a nonexistent callback.
|
| - * @param error The error message string to be displayed.
|
| - */
|
| - protected void showCallbackNonExistentError(String error) {
|
| - showError(error);
|
| - }
|
| -
|
| - /**
|
| - * Broadcasts the given intent to all interested BroadcastReceivers.
|
| - */
|
| - @Override
|
| - public void sendBroadcast(Intent intent) {
|
| - mActivity.sendBroadcast(intent);
|
| - }
|
| -
|
| - /**
|
| - * @return Application activity.
|
| - */
|
| - public Activity getActivity() {
|
| - return mActivity;
|
| - }
|
| -
|
| - /**
|
| - * Saves the error messages that should be shown if any pending intents would return
|
| - * after the application has been put onPause.
|
| - * @param bundle The bundle to save the information in onPause
|
| - */
|
| - public void saveInstanceState(Bundle bundle) {
|
| - bundle.putSerializable(WINDOW_CALLBACK_ERRORS, mIntentErrors);
|
| - }
|
| -
|
| - /**
|
| - * Restores the error messages that should be shown if any pending intents would return
|
| - * after the application has been put onPause.
|
| - * @param bundle The bundle to restore the information from onResume
|
| - */
|
| - public void restoreInstanceState(Bundle bundle) {
|
| - if (bundle == null) return;
|
| -
|
| - Object errors = bundle.getSerializable(WINDOW_CALLBACK_ERRORS);
|
| - if (errors instanceof HashMap) {
|
| - @SuppressWarnings("unchecked")
|
| - HashMap<Integer, String> intentErrors = (HashMap<Integer, String>) errors;
|
| - mIntentErrors = intentErrors;
|
| - }
|
| - }
|
| -
|
| - /**
|
| - * Responds to the intent result if the intent was created by the native window.
|
| - * @param requestCode Request code of the requested intent.
|
| - * @param resultCode Result code of the requested intent.
|
| - * @param data The data returned by the intent.
|
| - * @return Boolean value of whether the intent was started by the native window.
|
| - */
|
| - public boolean onActivityResult(int requestCode, int resultCode, Intent data) {
|
| - IntentCallback callback = mOutstandingIntents.get(requestCode);
|
| - mOutstandingIntents.delete(requestCode);
|
| - String errorMessage = mIntentErrors.remove(requestCode);
|
| -
|
| - if (callback != null) {
|
| - callback.onIntentCompleted(this, resultCode,
|
| - mActivity.getContentResolver(), data);
|
| - return true;
|
| - } else {
|
| - if (errorMessage != null) {
|
| - showCallbackNonExistentError(errorMessage);
|
| - return true;
|
| - }
|
| - }
|
| - return false;
|
| - }
|
| -
|
| -}
|
|
|