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

Side by Side Diff: remoting/client/jni/jni_gl_display_handler.cc

Issue 2255663002: [Remoting Android] Use floating point coords for rendering the cursor (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Merge ToT Created 4 years, 4 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 unified diff | Download patch
« no previous file with comments | « remoting/client/jni/jni_gl_display_handler.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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
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
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
OLDNEW
« no previous file with comments | « remoting/client/jni/jni_gl_display_handler.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698