Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7556c37b authored by Jeff Brown's avatar Jeff Brown Committed by Android (Google) Code Review
Browse files

Merge "Completely remove skia dependency from libinput."

parents 174c2604 313eff7b
Loading
Loading
Loading
Loading
+0 −21
Original line number Diff line number Diff line
@@ -28,10 +28,6 @@
#include <utils/RefBase.h>
#include <utils/String8.h>

#ifdef HAVE_ANDROID_OS
class SkMatrix;
#endif

/*
 * Additional private constants not defined in ndk/ui/input.h.
 */
@@ -533,23 +529,6 @@ public:
    // Matrix is in row-major form and compatible with SkMatrix.
    void transform(const float matrix[9]);

#ifdef SkMatrix_DEFINED
    // Helper for interoperating with Skia matrices since Skia isn't part of the PDK.
    inline void transform(const SkMatrix* matrix) {
        float m[9];
        m[0] = SkScalarToFloat(matrix->get(SkMatrix::kMScaleX));
        m[1] = SkScalarToFloat(matrix->get(SkMatrix::kMSkewX));
        m[2] = SkScalarToFloat(matrix->get(SkMatrix::kMTransX));
        m[3] = SkScalarToFloat(matrix->get(SkMatrix::kMSkewY));
        m[4] = SkScalarToFloat(matrix->get(SkMatrix::kMScaleY));
        m[5] = SkScalarToFloat(matrix->get(SkMatrix::kMTransY));
        m[6] = SkScalarToFloat(matrix->get(SkMatrix::kMPersp0));
        m[7] = SkScalarToFloat(matrix->get(SkMatrix::kMPersp1));
        m[8] = SkScalarToFloat(matrix->get(SkMatrix::kMPersp2));
        transform(m);
    }
#endif

#ifdef HAVE_ANDROID_OS
    status_t readFromParcel(Parcel* parcel);
    status_t writeToParcel(Parcel* parcel) const;
+1 −2
Original line number Diff line number Diff line
@@ -14,8 +14,7 @@ shared_libraries := \
    libutils \
    libbinder \
    libui \
    libstlport \
    libskia
    libstlport

static_libraries := \
    libgtest \
+17 −4
Original line number Diff line number Diff line
@@ -17,7 +17,6 @@
#include <math.h>

#include <binder/Parcel.h>
#include <core/SkMatrix.h>
#include <gtest/gtest.h>
#include <input/Input.h>

@@ -519,6 +518,20 @@ TEST_F(MotionEventTest, Parcel) {
    ASSERT_NO_FATAL_FAILURE(assertEqualsEventWithHistory(&outEvent));
}

static void setRotationMatrix(float matrix[9], float angle) {
    float sin = sinf(angle);
    float cos = cosf(angle);
    matrix[0] = cos;
    matrix[1] = -sin;
    matrix[2] = 0;
    matrix[3] = sin;
    matrix[4] = cos;
    matrix[5] = 0;
    matrix[6] = 0;
    matrix[7] = 0;
    matrix[8] = 1.0f;
}

TEST_F(MotionEventTest, Transform) {
    // Generate some points on a circle.
    // Each point 'i' is a point on a circle of radius ROTATION centered at (3,2) at an angle
@@ -561,9 +574,9 @@ TEST_F(MotionEventTest, Transform) {
    ASSERT_NEAR(originalRawY, event.getRawY(0), 0.001);

    // Apply a rotation about the origin by ROTATION degrees clockwise.
    SkMatrix matrix;
    matrix.setRotate(ROTATION);
    event.transform(&matrix);
    float matrix[9];
    setRotationMatrix(matrix, ROTATION * PI_180);
    event.transform(matrix);

    // Check the points.
    for (size_t i = 0; i < pointerCount; i++) {