OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "remoting/client/jni/chromoting_jni_runtime.h" | 5 #include "remoting/client/jni/chromoting_jni_runtime.h" |
6 | 6 |
7 #include "base/android/jni_android.h" | 7 #include "base/android/jni_android.h" |
8 #include "base/android/jni_array.h" | 8 #include "base/android/jni_array.h" |
9 #include "base/android/jni_string.h" | 9 #include "base/android/jni_string.h" |
10 #include "base/android/library_loader/library_loader_hooks.h" | 10 #include "base/android/library_loader/library_loader_hooks.h" |
(...skipping 21 matching lines...) Expand all Loading... |
32 namespace remoting { | 32 namespace remoting { |
33 | 33 |
34 bool RegisterChromotingJniRuntime(JNIEnv* env) { | 34 bool RegisterChromotingJniRuntime(JNIEnv* env) { |
35 return remoting::RegisterNativesImpl(env); | 35 return remoting::RegisterNativesImpl(env); |
36 } | 36 } |
37 | 37 |
38 // Implementation of stubs defined in JniInterface_jni.h. These are the entry | 38 // Implementation of stubs defined in JniInterface_jni.h. These are the entry |
39 // points for JNI calls from Java into C++. | 39 // points for JNI calls from Java into C++. |
40 | 40 |
41 static void LoadNative(JNIEnv* env, | 41 static void LoadNative(JNIEnv* env, |
42 const JavaParamRef<jclass>& clazz, | 42 const JavaParamRef<jclass>& clazz) { |
43 const JavaParamRef<jobject>& context) { | |
44 base::android::InitApplicationContext(env, context); | |
45 | |
46 // The google_apis functions check the command-line arguments to make sure no | 43 // The google_apis functions check the command-line arguments to make sure no |
47 // runtime API keys have been specified by the environment. Unfortunately, we | 44 // runtime API keys have been specified by the environment. Unfortunately, we |
48 // neither launch Chromium nor have a command line, so we need to prevent | 45 // neither launch Chromium nor have a command line, so we need to prevent |
49 // them from DCHECKing out when they go looking. | 46 // them from DCHECKing out when they go looking. |
50 base::CommandLine::Init(0, nullptr); | 47 base::CommandLine::Init(0, nullptr); |
51 | 48 |
52 // Create the singleton now so that the Chromoting threads will be set up. | 49 // Create the singleton now so that the Chromoting threads will be set up. |
53 remoting::ChromotingJniRuntime::GetInstance(); | 50 remoting::ChromotingJniRuntime::GetInstance(); |
54 } | 51 } |
55 | 52 |
(...skipping 338 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
394 | 391 |
395 JNIEnv* env = base::android::AttachCurrentThread(); | 392 JNIEnv* env = base::android::AttachCurrentThread(); |
396 Java_JniInterface_redrawGraphicsInternal(env); | 393 Java_JniInterface_redrawGraphicsInternal(env); |
397 } | 394 } |
398 | 395 |
399 void ChromotingJniRuntime::DetachFromVmAndSignal(base::WaitableEvent* waiter) { | 396 void ChromotingJniRuntime::DetachFromVmAndSignal(base::WaitableEvent* waiter) { |
400 base::android::DetachFromVM(); | 397 base::android::DetachFromVM(); |
401 waiter->Signal(); | 398 waiter->Signal(); |
402 } | 399 } |
403 } // namespace remoting | 400 } // namespace remoting |
OLD | NEW |