| Index: remoting/android/java/src/org/chromium/chromoting/RenderStub.java
|
| diff --git a/remoting/android/java/src/org/chromium/chromoting/RenderStub.java b/remoting/android/java/src/org/chromium/chromoting/RenderStub.java
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..84adde1b2e80d6c759ea52e65ad84e063f67e2d5
|
| --- /dev/null
|
| +++ b/remoting/android/java/src/org/chromium/chromoting/RenderStub.java
|
| @@ -0,0 +1,59 @@
|
| +// Copyright 2016 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +package org.chromium.chromoting;
|
| +
|
| +import android.graphics.Matrix;
|
| +import android.graphics.PointF;
|
| +
|
| +/**
|
| + * Interface with a set of functions to control the behavior of the remote host renderer.
|
| + */
|
| +public interface RenderStub {
|
| + /** Used to define the animation feedback shown when a user touches the screen. */
|
| + enum InputFeedbackType {
|
| + NONE,
|
| + SHORT_TOUCH_ANIMATION,
|
| + LONG_TOUCH_ANIMATION,
|
| + LONG_TRACKPAD_ANIMATION
|
| + }
|
| +
|
| + /**
|
| + * Resets the stub with |view|. The stub should avoid holding strong reference to |view|.
|
| + */
|
| + void setDesktopView(DesktopView view);
|
| +
|
| + /** Triggers a brief animation to indicate the existence and location of an input event. */
|
| + void showInputFeedback(InputFeedbackType feedbackToShow, PointF pos);
|
| +
|
| + /**
|
| + * Informs the stub that its transformation matrix (for rendering the remote desktop bitmap)
|
| + * has been changed, which requires repainting.
|
| + */
|
| + void setTransformation(Matrix matrix);
|
| +
|
| + /**
|
| + * Informs the stub that the cursor position has been moved, which requires repainting.
|
| + */
|
| + void moveCursor(PointF pos);
|
| +
|
| + /**
|
| + * Informs the stub that the cursor visibility has been changed (for different input mode),
|
| + * which requires repainting.
|
| + */
|
| + void setCursorVisibility(boolean visible);
|
| +
|
| + /** An {@link Event} triggered when the client size is changed. */
|
| + Event<SizeChangedEventParameter> onClientSizeChanged();
|
| +
|
| + /**
|
| + * An {@link Event} triggered when the size of the host desktop is changed.
|
| + */
|
| + Event<SizeChangedEventParameter> onHostSizeChanged();
|
| +
|
| + /**
|
| + * An {@link} triggered when a frame has been rendered.
|
| + */
|
| + Event<Void> onCanvasRendered();
|
| +}
|
|
|