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

Commit cd5c289b authored by Michael Wright's avatar Michael Wright Committed by Automerger Merge Worker
Browse files

Convert TouchInputMapper enums to enum classes. am: aff169e9 am: 54da491a am: 47c26f5b

Original change: https://android-review.googlesource.com/c/platform/frameworks/native/+/1455627

Change-Id: Ice34d7fb6af39b8bb2fb4aff9ce1ef395fc21b5f
parents 21bdc1b2 47c26f5b
Loading
Loading
Loading
Loading
+6 −6
Original line number Original line Diff line number Diff line
@@ -92,15 +92,15 @@ private:
class MultiTouchInputMapper : public TouchInputMapper {
class MultiTouchInputMapper : public TouchInputMapper {
public:
public:
    explicit MultiTouchInputMapper(InputDeviceContext& deviceContext);
    explicit MultiTouchInputMapper(InputDeviceContext& deviceContext);
    virtual ~MultiTouchInputMapper();
    ~MultiTouchInputMapper() override;


    virtual void reset(nsecs_t when) override;
    void reset(nsecs_t when) override;
    virtual void process(const RawEvent* rawEvent) override;
    void process(const RawEvent* rawEvent) override;


protected:
protected:
    virtual void syncTouch(nsecs_t when, RawState* outState);
    void syncTouch(nsecs_t when, RawState* outState) override;
    virtual void configureRawPointerAxes();
    void configureRawPointerAxes() override;
    virtual bool hasStylus() const;
    bool hasStylus() const override;


private:
private:
    MultiTouchMotionAccumulator mMultiTouchMotionAccumulator;
    MultiTouchMotionAccumulator mMultiTouchMotionAccumulator;
+6 −6
Original line number Original line Diff line number Diff line
@@ -25,15 +25,15 @@ namespace android {
class SingleTouchInputMapper : public TouchInputMapper {
class SingleTouchInputMapper : public TouchInputMapper {
public:
public:
    explicit SingleTouchInputMapper(InputDeviceContext& deviceContext);
    explicit SingleTouchInputMapper(InputDeviceContext& deviceContext);
    virtual ~SingleTouchInputMapper();
    ~SingleTouchInputMapper() override;


    virtual void reset(nsecs_t when) override;
    void reset(nsecs_t when) override;
    virtual void process(const RawEvent* rawEvent) override;
    void process(const RawEvent* rawEvent) override;


protected:
protected:
    virtual void syncTouch(nsecs_t when, RawState* outState);
    void syncTouch(nsecs_t when, RawState* outState) override;
    virtual void configureRawPointerAxes();
    void configureRawPointerAxes() override;
    virtual bool hasStylus() const;
    bool hasStylus() const override;


private:
private:
    SingleTouchMotionAccumulator mSingleTouchMotionAccumulator;
    SingleTouchMotionAccumulator mSingleTouchMotionAccumulator;
+205 −202

File changed.

Preview size limit exceeded, changes collapsed.

+67 −68
Original line number Original line Diff line number Diff line
@@ -17,6 +17,8 @@
#ifndef _UI_INPUTREADER_TOUCH_INPUT_MAPPER_H
#ifndef _UI_INPUTREADER_TOUCH_INPUT_MAPPER_H
#define _UI_INPUTREADER_TOUCH_INPUT_MAPPER_H
#define _UI_INPUTREADER_TOUCH_INPUT_MAPPER_H


#include <stdint.h>

#include "CursorButtonAccumulator.h"
#include "CursorButtonAccumulator.h"
#include "CursorScrollAccumulator.h"
#include "CursorScrollAccumulator.h"
#include "EventHub.h"
#include "EventHub.h"
@@ -24,8 +26,6 @@
#include "InputReaderBase.h"
#include "InputReaderBase.h"
#include "TouchButtonAccumulator.h"
#include "TouchButtonAccumulator.h"


#include <stdint.h>

namespace android {
namespace android {


/* Raw axis information from the driver. */
/* Raw axis information from the driver. */
@@ -133,25 +133,24 @@ struct CookedPointerData {
class TouchInputMapper : public InputMapper {
class TouchInputMapper : public InputMapper {
public:
public:
    explicit TouchInputMapper(InputDeviceContext& deviceContext);
    explicit TouchInputMapper(InputDeviceContext& deviceContext);
    virtual ~TouchInputMapper();
    ~TouchInputMapper() override;


    virtual uint32_t getSources() override;
    uint32_t getSources() override;
    virtual void populateDeviceInfo(InputDeviceInfo* deviceInfo) override;
    void populateDeviceInfo(InputDeviceInfo* deviceInfo) override;
    virtual void dump(std::string& dump) override;
    void dump(std::string& dump) override;
    virtual void configure(nsecs_t when, const InputReaderConfiguration* config,
    void configure(nsecs_t when, const InputReaderConfiguration* config, uint32_t changes) override;
                           uint32_t changes) override;
    void reset(nsecs_t when) override;
    virtual void reset(nsecs_t when) override;
    void process(const RawEvent* rawEvent) override;
    virtual void process(const RawEvent* rawEvent) override;


    int32_t getKeyCodeState(uint32_t sourceMask, int32_t keyCode) override;
    virtual int32_t getKeyCodeState(uint32_t sourceMask, int32_t keyCode) override;
    int32_t getScanCodeState(uint32_t sourceMask, int32_t scanCode) override;
    virtual int32_t getScanCodeState(uint32_t sourceMask, int32_t scanCode) override;
    bool markSupportedKeyCodes(uint32_t sourceMask, size_t numCodes, const int32_t* keyCodes,
    virtual bool markSupportedKeyCodes(uint32_t sourceMask, size_t numCodes,
                               uint8_t* outFlags) override;
                                       const int32_t* keyCodes, uint8_t* outFlags) override;


    void cancelTouch(nsecs_t when) override;
    virtual void cancelTouch(nsecs_t when) override;
    void timeoutExpired(nsecs_t when) override;
    virtual void timeoutExpired(nsecs_t when) override;
    void updateExternalStylusState(const StylusState& state) override;
    virtual void updateExternalStylusState(const StylusState& state) override;
    std::optional<int32_t> getAssociatedDisplayId() override;
    virtual std::optional<int32_t> getAssociatedDisplayId() override;


protected:
protected:
    CursorButtonAccumulator mCursorButtonAccumulator;
    CursorButtonAccumulator mCursorButtonAccumulator;
@@ -177,12 +176,12 @@ protected:
    // Input sources and device mode.
    // Input sources and device mode.
    uint32_t mSource;
    uint32_t mSource;


    enum DeviceMode {
    enum class DeviceMode {
        DEVICE_MODE_DISABLED,   // input is disabled
        DISABLED,   // input is disabled
        DEVICE_MODE_DIRECT,     // direct mapping (touchscreen)
        DIRECT,     // direct mapping (touchscreen)
        DEVICE_MODE_UNSCALED,   // unscaled mapping (touchpad)
        UNSCALED,   // unscaled mapping (touchpad)
        DEVICE_MODE_NAVIGATION, // unscaled mapping with assist gesture (touch navigation)
        NAVIGATION, // unscaled mapping with assist gesture (touch navigation)
        DEVICE_MODE_POINTER,    // pointer mapping (pointer)
        POINTER,    // pointer mapping (pointer)
    };
    };
    DeviceMode mDeviceMode;
    DeviceMode mDeviceMode;


@@ -191,11 +190,11 @@ protected:


    // Immutable configuration parameters.
    // Immutable configuration parameters.
    struct Parameters {
    struct Parameters {
        enum DeviceType {
        enum class DeviceType {
            DEVICE_TYPE_TOUCH_SCREEN,
            TOUCH_SCREEN,
            DEVICE_TYPE_TOUCH_PAD,
            TOUCH_PAD,
            DEVICE_TYPE_TOUCH_NAVIGATION,
            TOUCH_NAVIGATION,
            DEVICE_TYPE_POINTER,
            POINTER,
        };
        };


        DeviceType deviceType;
        DeviceType deviceType;
@@ -205,9 +204,9 @@ protected:
        bool hasButtonUnderPad;
        bool hasButtonUnderPad;
        std::string uniqueDisplayId;
        std::string uniqueDisplayId;


        enum GestureMode {
        enum class GestureMode {
            GESTURE_MODE_SINGLE_TOUCH,
            SINGLE_TOUCH,
            GESTURE_MODE_MULTI_TOUCH,
            MULTI_TOUCH,
        };
        };
        GestureMode gestureMode;
        GestureMode gestureMode;


@@ -217,13 +216,13 @@ protected:
    // Immutable calibration parameters in parsed form.
    // Immutable calibration parameters in parsed form.
    struct Calibration {
    struct Calibration {
        // Size
        // Size
        enum SizeCalibration {
        enum class SizeCalibration {
            SIZE_CALIBRATION_DEFAULT,
            DEFAULT,
            SIZE_CALIBRATION_NONE,
            NONE,
            SIZE_CALIBRATION_GEOMETRIC,
            GEOMETRIC,
            SIZE_CALIBRATION_DIAMETER,
            DIAMETER,
            SIZE_CALIBRATION_BOX,
            BOX,
            SIZE_CALIBRATION_AREA,
            AREA,
        };
        };


        SizeCalibration sizeCalibration;
        SizeCalibration sizeCalibration;
@@ -236,11 +235,11 @@ protected:
        bool sizeIsSummed;
        bool sizeIsSummed;


        // Pressure
        // Pressure
        enum PressureCalibration {
        enum class PressureCalibration {
            PRESSURE_CALIBRATION_DEFAULT,
            DEFAULT,
            PRESSURE_CALIBRATION_NONE,
            NONE,
            PRESSURE_CALIBRATION_PHYSICAL,
            PHYSICAL,
            PRESSURE_CALIBRATION_AMPLITUDE,
            AMPLITUDE,
        };
        };


        PressureCalibration pressureCalibration;
        PressureCalibration pressureCalibration;
@@ -248,30 +247,30 @@ protected:
        float pressureScale;
        float pressureScale;


        // Orientation
        // Orientation
        enum OrientationCalibration {
        enum class OrientationCalibration {
            ORIENTATION_CALIBRATION_DEFAULT,
            DEFAULT,
            ORIENTATION_CALIBRATION_NONE,
            NONE,
            ORIENTATION_CALIBRATION_INTERPOLATED,
            INTERPOLATED,
            ORIENTATION_CALIBRATION_VECTOR,
            VECTOR,
        };
        };


        OrientationCalibration orientationCalibration;
        OrientationCalibration orientationCalibration;


        // Distance
        // Distance
        enum DistanceCalibration {
        enum class DistanceCalibration {
            DISTANCE_CALIBRATION_DEFAULT,
            DEFAULT,
            DISTANCE_CALIBRATION_NONE,
            NONE,
            DISTANCE_CALIBRATION_SCALED,
            SCALED,
        };
        };


        DistanceCalibration distanceCalibration;
        DistanceCalibration distanceCalibration;
        bool haveDistanceScale;
        bool haveDistanceScale;
        float distanceScale;
        float distanceScale;


        enum CoverageCalibration {
        enum class CoverageCalibration {
            COVERAGE_CALIBRATION_DEFAULT,
            DEFAULT,
            COVERAGE_CALIBRATION_NONE,
            NONE,
            COVERAGE_CALIBRATION_BOX,
            BOX,
        };
        };


        CoverageCalibration coverageCalibration;
        CoverageCalibration coverageCalibration;
@@ -524,16 +523,16 @@ private:
        uint64_t distance : 48; // squared distance
        uint64_t distance : 48; // squared distance
    };
    };


    enum PointerUsage {
    enum class PointerUsage {
        POINTER_USAGE_NONE,
        NONE,
        POINTER_USAGE_GESTURES,
        GESTURES,
        POINTER_USAGE_STYLUS,
        STYLUS,
        POINTER_USAGE_MOUSE,
        MOUSE,
    };
    };
    PointerUsage mPointerUsage;
    PointerUsage mPointerUsage;


    struct PointerGesture {
    struct PointerGesture {
        enum Mode {
        enum class Mode {
            // No fingers, button is not pressed.
            // No fingers, button is not pressed.
            // Nothing happening.
            // Nothing happening.
            NEUTRAL,
            NEUTRAL,
@@ -646,9 +645,9 @@ private:
            firstTouchTime = LLONG_MIN;
            firstTouchTime = LLONG_MIN;
            activeTouchId = -1;
            activeTouchId = -1;
            activeGestureId = -1;
            activeGestureId = -1;
            currentGestureMode = NEUTRAL;
            currentGestureMode = Mode::NEUTRAL;
            currentGestureIdBits.clear();
            currentGestureIdBits.clear();
            lastGestureMode = NEUTRAL;
            lastGestureMode = Mode::NEUTRAL;
            lastGestureIdBits.clear();
            lastGestureIdBits.clear();
            downTime = 0;
            downTime = 0;
            velocityTracker.clear();
            velocityTracker.clear();