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

Unified Diff: remoting/client/jni/jni_client.cc

Issue 2338473002: [Remoting Android] JniGlDisplayHandler calls invalidate() on UI thread (Closed)
Patch Set: Reviewer's Feedback Created 4 years, 3 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
« no previous file with comments | « remoting/client/jni/jni_client.h ('k') | remoting/client/jni/jni_gl_display_handler.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: remoting/client/jni/jni_client.cc
diff --git a/remoting/client/jni/jni_client.cc b/remoting/client/jni/jni_client.cc
index 2e16fca968655504946e9e5e7bd86e951fdd6205..8265ac268daba885b67467df24385bbc9ec383cc 100644
--- a/remoting/client/jni/jni_client.cc
+++ b/remoting/client/jni/jni_client.cc
@@ -10,7 +10,6 @@
#include "jni/Client_jni.h"
#include "remoting/client/jni/chromoting_jni_instance.h"
#include "remoting/client/jni/chromoting_jni_runtime.h"
-#include "remoting/client/jni/display_updater_factory.h"
#include "remoting/client/jni/jni_gl_display_handler.h"
#include "remoting/client/jni/jni_pairing_secret_fetcher.h"
#include "remoting/client/jni/jni_touch_event_data.h"
@@ -39,8 +38,7 @@ JniClient::~JniClient() {
DisconnectFromHost();
}
-void JniClient::ConnectToHost(DisplayUpdaterFactory* updater_factory,
- const std::string& username,
+void JniClient::ConnectToHost(const std::string& username,
const std::string& auth_token,
const std::string& host_jid,
const std::string& host_id,
@@ -56,8 +54,8 @@ void JniClient::ConnectToHost(DisplayUpdaterFactory* updater_factory,
host_id));
session_.reset(new ChromotingJniInstance(
runtime_, GetWeakPtr(), secret_fetcher_->GetWeakPtr(),
- updater_factory->CreateCursorShapeStub(),
- updater_factory->CreateVideoRenderer(),
+ display_handler_->CreateCursorShapeStub(),
+ display_handler_->CreateVideoRenderer(),
username, auth_token, host_jid, host_id,
host_pubkey, pairing_id, pairing_secret, capabilities, flags));
session_->Connect();
@@ -75,6 +73,7 @@ void JniClient::DisconnectFromHost() {
secret_fetcher_.release());
}
if (display_handler_) {
+ display_handler_->Invalidate();
runtime_->display_task_runner()->DeleteSoon(FROM_HERE,
display_handler_.release());
}
@@ -162,11 +161,9 @@ void JniClient::Connect(
const base::android::JavaParamRef<jstring>& pairSecret,
const base::android::JavaParamRef<jstring>& capabilities,
const base::android::JavaParamRef<jstring>& flags) {
- JniGlDisplayHandler* raw_display_handler = new JniGlDisplayHandler(runtime_);
- raw_display_handler->InitializeClient(java_client_);
- display_handler_.reset(raw_display_handler);
- ConnectToHost(raw_display_handler,
- ConvertJavaStringToUTF8(env, username),
+ display_handler_.reset(new JniGlDisplayHandler(runtime_));
+ display_handler_->Initialize(java_client_);
+ ConnectToHost(ConvertJavaStringToUTF8(env, username),
ConvertJavaStringToUTF8(env, authToken),
ConvertJavaStringToUTF8(env, hostJid),
ConvertJavaStringToUTF8(env, hostId),
« no previous file with comments | « remoting/client/jni/jni_client.h ('k') | remoting/client/jni/jni_gl_display_handler.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698