| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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/jni_gl_display_handler.h" | 5 #include "remoting/client/jni/jni_gl_display_handler.h" |
| 6 | 6 |
| 7 #include <android/native_window_jni.h> | 7 #include <android/native_window_jni.h> |
| 8 #include <array> | 8 #include <array> |
| 9 | 9 |
| 10 #include "base/android/jni_android.h" | 10 #include "base/android/jni_android.h" |
| (...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 108 DCHECK(env->GetArrayLength(jmatrix.obj()) == 9); | 108 DCHECK(env->GetArrayLength(jmatrix.obj()) == 9); |
| 109 std::array<float, 9> matrix; | 109 std::array<float, 9> matrix; |
| 110 env->GetFloatArrayRegion(jmatrix.obj(), 0, 9, matrix.data()); | 110 env->GetFloatArrayRegion(jmatrix.obj(), 0, 9, matrix.data()); |
| 111 ui_task_poster_->AddTask(base::Bind(&GlRenderer::OnPixelTransformationChanged, | 111 ui_task_poster_->AddTask(base::Bind(&GlRenderer::OnPixelTransformationChanged, |
| 112 renderer_.GetWeakPtr(), matrix)); | 112 renderer_.GetWeakPtr(), matrix)); |
| 113 } | 113 } |
| 114 | 114 |
| 115 void JniGlDisplayHandler::OnCursorPixelPositionChanged( | 115 void JniGlDisplayHandler::OnCursorPixelPositionChanged( |
| 116 JNIEnv* env, | 116 JNIEnv* env, |
| 117 const base::android::JavaParamRef<jobject>& caller, | 117 const base::android::JavaParamRef<jobject>& caller, |
| 118 int x, | 118 float x, |
| 119 int y) { | 119 float y) { |
| 120 DCHECK(runtime_->ui_task_runner()->BelongsToCurrentThread()); | 120 DCHECK(runtime_->ui_task_runner()->BelongsToCurrentThread()); |
| 121 ui_task_poster_->AddTask(base::Bind(&GlRenderer::OnCursorMoved, | 121 ui_task_poster_->AddTask(base::Bind(&GlRenderer::OnCursorMoved, |
| 122 renderer_.GetWeakPtr(), x, y)); | 122 renderer_.GetWeakPtr(), x, y)); |
| 123 } | 123 } |
| 124 | 124 |
| 125 void JniGlDisplayHandler::OnCursorVisibilityChanged( | 125 void JniGlDisplayHandler::OnCursorVisibilityChanged( |
| 126 JNIEnv* env, | 126 JNIEnv* env, |
| 127 const base::android::JavaParamRef<jobject>& caller, | 127 const base::android::JavaParamRef<jobject>& caller, |
| 128 bool visible) { | 128 bool visible) { |
| 129 DCHECK(runtime_->ui_task_runner()->BelongsToCurrentThread()); | 129 DCHECK(runtime_->ui_task_runner()->BelongsToCurrentThread()); |
| 130 ui_task_poster_->AddTask(base::Bind(&GlRenderer::OnCursorVisibilityChanged, | 130 ui_task_poster_->AddTask(base::Bind(&GlRenderer::OnCursorVisibilityChanged, |
| 131 renderer_.GetWeakPtr(), visible)); | 131 renderer_.GetWeakPtr(), visible)); |
| 132 } | 132 } |
| 133 | 133 |
| 134 void JniGlDisplayHandler::OnCursorInputFeedback( | 134 void JniGlDisplayHandler::OnCursorInputFeedback( |
| 135 JNIEnv* env, | 135 JNIEnv* env, |
| 136 const base::android::JavaParamRef<jobject>& caller, | 136 const base::android::JavaParamRef<jobject>& caller, |
| 137 int x, | 137 float x, |
| 138 int y, | 138 float y, |
| 139 float diameter) { | 139 float diameter) { |
| 140 DCHECK(runtime_->ui_task_runner()->BelongsToCurrentThread()); | 140 DCHECK(runtime_->ui_task_runner()->BelongsToCurrentThread()); |
| 141 ui_task_poster_->AddTask(base::Bind(&GlRenderer::OnCursorInputFeedback, | 141 ui_task_poster_->AddTask(base::Bind(&GlRenderer::OnCursorInputFeedback, |
| 142 renderer_.GetWeakPtr(), x, y, diameter)); | 142 renderer_.GetWeakPtr(), x, y, diameter)); |
| 143 } | 143 } |
| 144 | 144 |
| 145 bool JniGlDisplayHandler::CanRenderFrame() { | 145 bool JniGlDisplayHandler::CanRenderFrame() { |
| 146 DCHECK(runtime_->display_task_runner()->BelongsToCurrentThread()); | 146 DCHECK(runtime_->display_task_runner()->BelongsToCurrentThread()); |
| 147 return egl_context_ && egl_context_->IsWindowBound(); | 147 return egl_context_ && egl_context_->IsWindowBound(); |
| 148 } | 148 } |
| (...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 199 // static | 199 // static |
| 200 void JniGlDisplayHandler::ChangeCanvasSizeOnUiThread( | 200 void JniGlDisplayHandler::ChangeCanvasSizeOnUiThread( |
| 201 base::android::ScopedJavaGlobalRef<jobject> java_display, | 201 base::android::ScopedJavaGlobalRef<jobject> java_display, |
| 202 int width, | 202 int width, |
| 203 int height) { | 203 int height) { |
| 204 JNIEnv* env = base::android::AttachCurrentThread(); | 204 JNIEnv* env = base::android::AttachCurrentThread(); |
| 205 Java_GlDisplay_changeCanvasSize(env, java_display, width, height); | 205 Java_GlDisplay_changeCanvasSize(env, java_display, width, height); |
| 206 } | 206 } |
| 207 | 207 |
| 208 } // namespace remoting | 208 } // namespace remoting |
| OLD | NEW |