Add this files

git-svn-id: svn://10.0.0.236/trunk@46266 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
idk%eng.sun.com
1999-09-08 00:21:03 +00:00
parent f8078c4c9a
commit f363d1453d
31 changed files with 1548 additions and 196 deletions

View File

@@ -16,6 +16,7 @@
#include "PlugletInstance.h"
#include "PlugletEngine.h"
#include "PlugletStreamListener.h"
#include "PlugletInstancePeer.h"
jmethodID PlugletInstance::initializeMID = NULL;
jmethodID PlugletInstance::startMID = NULL;
@@ -38,6 +39,7 @@ PlugletInstance::PlugletInstance(jobject object) {
PlugletInstance::~PlugletInstance() {
PlugletEngine::GetJNIEnv()->DeleteGlobalRef(jthis);
NS_RELEASE(peer);
}
NS_METHOD PlugletInstance::HandleEvent(nsPluginEvent* event, PRBool* handled) {
@@ -46,9 +48,9 @@ NS_METHOD PlugletInstance::HandleEvent(nsPluginEvent* event, PRBool* handled) {
}
NS_METHOD PlugletInstance::Initialize(nsIPluginInstancePeer* _peer) {
JNIEnv *env = PlugletEngine::GetJNIEnv();
if (!printMID) {
//nb check for null after each and every JNI call
JNIEnv *env = PlugletEngine::GetJNIEnv();
jclass clazz = env->FindClass("org/mozilla/pluglet/PlugletInstance");
initializeMID = env->GetMethodID(clazz,"initialize","(Lorg/mozilla/pluglet/mozilla/PlugletInstancePeer;)V");
startMID = env->GetMethodID(clazz,"start","()V");
@@ -60,7 +62,11 @@ NS_METHOD PlugletInstance::Initialize(nsIPluginInstancePeer* _peer) {
}
peer = _peer;
peer->AddRef();
//nb call java
jobject obj = PlugletInstancePeer::GetJObject(peer);
if (!obj) {
return NS_ERROR_FAILURE;
}
env->CallVoidMethod(jthis,initializeMID,obj);
return NS_OK;
}