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

Unified Diff: ui/android/java/src/org/chromium/ui/gfx/ActivityNativeWindow.java

Issue 14169011: [Android] Rename NativeWindow to WindowAndroid. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Return Activity context for now Created 7 years, 8 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: 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;
- }
-
-}
« no previous file with comments | « ui/android/java/src/org/chromium/ui/WindowAndroid.java ('k') | ui/android/java/src/org/chromium/ui/gfx/NativeWindow.java » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698