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

Side by Side Diff: remoting/android/java/src/org/chromium/chromoting/GlDesktopView.java

Issue 2297073002: [Remoting Android] Move feedback type to radius logic out of DesktopView (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 unified diff | Download patch
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 package org.chromium.chromoting; 5 package org.chromium.chromoting;
6 6
7 import android.graphics.Matrix; 7 import android.graphics.Matrix;
8 import android.graphics.PointF; 8 import android.graphics.PointF;
9 import android.view.SurfaceHolder; 9 import android.view.SurfaceHolder;
10 10
11 import org.chromium.chromoting.jni.Client; 11 import org.chromium.chromoting.jni.Client;
12 import org.chromium.chromoting.jni.GlDisplay; 12 import org.chromium.chromoting.jni.GlDisplay;
13 13
14 /** 14 /**
15 * The user interface for viewing and interacting with a specific remote host. U ses OpenGL to draw 15 * The user interface for viewing and interacting with a specific remote host. U ses OpenGL to draw
16 * the desktop and cursor. Should be used entirely on the UI thread. 16 * the desktop and cursor. Should be used entirely on the UI thread.
17 */ 17 */
18 public class GlDesktopView extends DesktopView implements SurfaceHolder.Callback { 18 public class GlDesktopView extends DesktopView implements SurfaceHolder.Callback {
19 private final GlDisplay mDisplay; 19 private final GlDisplay mDisplay;
20 private final InputFeedbackRadiusMapper mMapper;
20 21
21 private Object mOnHostSizeChangedListenerKey; 22 private Object mOnHostSizeChangedListenerKey;
22 private Object mOnCanvasRenderedListenerKey; 23 private Object mOnCanvasRenderedListenerKey;
23 24
24 private Event.ParameterRunnable<Void> mProcessAnimationRunnable; 25 private Event.ParameterRunnable<Void> mProcessAnimationRunnable;
25 26
26 private float mScaleFactor; 27 private float mScaleFactor;
27 28
28 public GlDesktopView(GlDisplay display, Desktop desktop, Client client) { 29 public GlDesktopView(GlDisplay display, Desktop desktop, Client client) {
29 super(desktop, client); 30 super(desktop, client);
30 Preconditions.notNull(display); 31 Preconditions.notNull(display);
31 mDisplay = display; 32 mDisplay = display;
32 33
33 mProcessAnimationRunnable = new Event.ParameterRunnable<Void>() { 34 mProcessAnimationRunnable = new Event.ParameterRunnable<Void>() {
34 @Override 35 @Override
35 public void run(Void p) { 36 public void run(Void p) {
36 mInputHandler.processAnimation(); 37 mInputHandler.processAnimation();
37 } 38 }
38 }; 39 };
39 40
40 mScaleFactor = 0; 41 mMapper = new InputFeedbackRadiusMapper(this);
joedow 2016/08/31 22:14:12 mMapper isn't very descriptive. Perhaps mInputFee
Yuwei 2016/08/31 22:24:57 Done.
41 42
42 getHolder().addCallback(this); 43 getHolder().addCallback(this);
43 } 44 }
44 45
45 @Override 46 @Override
46 public void showInputFeedback(InputFeedbackType feedbackToShow, PointF pos) { 47 public void showInputFeedback(InputFeedbackType feedbackToShow, PointF pos) {
47 float diameter = getFeedbackRadius(feedbackToShow, mScaleFactor) * 2.0f; 48 float diameter = mMapper.getFeedbackRadius(feedbackToShow, mScaleFactor) * 2.0f;
48 if (diameter <= 0.0f) { 49 if (diameter <= 0.0f) {
49 return; 50 return;
50 } 51 }
51 mDisplay.showCursorInputFeedback(pos.x, pos.y, diameter); 52 mDisplay.showCursorInputFeedback(pos.x, pos.y, diameter);
52 } 53 }
53 54
54 @Override 55 @Override
55 public void transformationChanged(Matrix matrix) { 56 public void transformationChanged(Matrix matrix) {
56 float[] matrixArray = new float[9]; 57 float[] matrixArray = new float[9];
57 matrix.getValues(matrixArray); 58 matrix.getValues(matrixArray);
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
107 // the listeners when the surface is about to be destroyed. 108 // the listeners when the surface is about to be destroyed.
108 if (mOnHostSizeChangedListenerKey != null) { 109 if (mOnHostSizeChangedListenerKey != null) {
109 mDisplay.onHostSizeChanged().remove(mOnHostSizeChangedListenerKey); 110 mDisplay.onHostSizeChanged().remove(mOnHostSizeChangedListenerKey);
110 } 111 }
111 if (mOnCanvasRenderedListenerKey != null) { 112 if (mOnCanvasRenderedListenerKey != null) {
112 mDisplay.onCanvasRendered().remove(mOnCanvasRenderedListenerKey); 113 mDisplay.onCanvasRendered().remove(mOnCanvasRenderedListenerKey);
113 } 114 }
114 mDisplay.surfaceDestroyed(); 115 mDisplay.surfaceDestroyed();
115 } 116 }
116 } 117 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698