Accept IPlugin for result callback when starting activities for result.

This commit is contained in:
Bryce Curtis 2011-07-07 14:11:03 -05:00
parent 9d1e73656f
commit 0a7a77e77b
3 changed files with 12 additions and 7 deletions

View File

@ -49,7 +49,7 @@ import android.widget.EditText;
import android.widget.LinearLayout;
import com.phonegap.api.PhonegapActivity;
import com.phonegap.api.Plugin;
import com.phonegap.api.IPlugin;
import com.phonegap.api.PluginManager;
/**
@ -140,7 +140,7 @@ public class DroidGap extends PhonegapActivity {
private String baseUrl = null;
// Plugin to call when activity result is received
protected Plugin activityResultCallback = null;
protected IPlugin activityResultCallback = null;
protected boolean activityResultKeepRunning;
// Flag indicates that a loadUrl timeout occurred
@ -1288,7 +1288,7 @@ public class DroidGap extends PhonegapActivity {
* @param intent The intent to start
* @param requestCode The request code that is passed to callback to identify the activity
*/
public void startActivityForResult(Plugin command, Intent intent, int requestCode) {
public void startActivityForResult(IPlugin command, Intent intent, int requestCode) {
this.activityResultCallback = command;
this.activityResultKeepRunning = this.keepRunning;
@ -1313,14 +1313,14 @@ public class DroidGap extends PhonegapActivity {
*/
protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
super.onActivityResult(requestCode, resultCode, intent);
Plugin callback = this.activityResultCallback;
IPlugin callback = this.activityResultCallback;
if (callback != null) {
callback.onActivityResult(requestCode, resultCode, intent);
}
}
@Override
public void setActivityResultCallback(Plugin plugin) {
public void setActivityResultCallback(IPlugin plugin) {
this.activityResultCallback = plugin;
}

View File

@ -66,6 +66,11 @@ public interface IPlugin {
*/
void onResume(boolean multitasking);
/**
* Called when the activity receives a new intent.
*/
void onNewIntent(Intent intent);
/**
* The final call you receive before your activity is destroyed.
*/

View File

@ -39,12 +39,12 @@ public abstract class PhonegapActivity extends Activity {
* @param intent The intent to start
* @param requestCode The request code that is passed to callback to identify the activity
*/
abstract public void startActivityForResult(Plugin command, Intent intent, int requestCode);
abstract public void startActivityForResult(IPlugin command, Intent intent, int requestCode);
/**
* Set the plugin to be called when a sub-activity exits.
*
* @param plugin The plugin on which onActivityResult is to be called
*/
abstract public void setActivityResultCallback(Plugin plugin);
abstract public void setActivityResultCallback(IPlugin plugin);
}