Index: remoting/client/jni/jni_client.cc |
diff --git a/remoting/client/jni/jni_client.cc b/remoting/client/jni/jni_client.cc |
index 185433c2ac207a33a151818337cc64b460e30c9a..bb8f9e1742436ba9ae5f2b4572a67d7df45ad33d 100644 |
--- a/remoting/client/jni/jni_client.cc |
+++ b/remoting/client/jni/jni_client.cc |
@@ -70,6 +70,10 @@ void JniClient::DisconnectFromHost() { |
runtime_->network_task_runner()->DeleteSoon(FROM_HERE, |
secret_fetcher_.release()); |
} |
+ if (display_handler_) { |
+ runtime_->display_task_runner()->DeleteSoon(FROM_HERE, |
+ display_handler_.release()); |
+ } |
} |
void JniClient::OnConnectionState(protocol::ConnectionToHost::State state, |
@@ -147,7 +151,6 @@ bool JniClient::RegisterJni(JNIEnv* env) { |
void JniClient::Connect( |
JNIEnv* env, |
const base::android::JavaParamRef<jobject>& caller, |
- jlong display_handler, |
const base::android::JavaParamRef<jstring>& username, |
const base::android::JavaParamRef<jstring>& authToken, |
const base::android::JavaParamRef<jstring>& hostJid, |
@@ -157,11 +160,15 @@ void JniClient::Connect( |
const base::android::JavaParamRef<jstring>& pairSecret, |
const base::android::JavaParamRef<jstring>& capabilities, |
const base::android::JavaParamRef<jstring>& flags) { |
- // TODO(yuweih): Remove this line when JniClient owns JniDisplayHandler. |
- DisplayUpdaterFactory* factory_ptr = reinterpret_cast<JniDisplayHandler*>( |
- display_handler); |
- DCHECK(factory_ptr); |
- ConnectToHost(factory_ptr, |
+#if defined(REMOTING_ANDROID_ENABLE_OPENGL_RENDERER) |
+ NOTIMPLEMENTED(); |
Lambros
2016/06/29 00:18:39
This won't compile - raw_display_handler will be u
Yuwei
2016/06/29 00:40:10
That's right but I don't think it matters? I would
Sergey Ulanov
2016/06/30 18:52:51
It doesn't matter much, but this code will fail to
Yuwei
2016/06/30 19:52:02
Done.
|
+#else |
+ JniDisplayHandler* raw_display_handler = new JniDisplayHandler(runtime_); |
+#endif // defined(REMOTING_ANDROID_ENABLE_OPENGL_RENDERER) |
+ Java_Client_setDisplay(env, java_client_.obj(), |
+ raw_display_handler->GetJavaDisplay().obj()); |
+ display_handler_.reset(raw_display_handler); |
+ ConnectToHost(raw_display_handler, |
ConvertJavaStringToUTF8(env, username), |
ConvertJavaStringToUTF8(env, authToken), |
ConvertJavaStringToUTF8(env, hostJid), |