mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
3cc335e615
Summary: Changelog: [iOS][internal] - Add tangentialPressure property to PointerEvent interface This diff adds the tangentialPressure property to the PointerEvent implementation on iOS. This one is pretty simple considering iOS doesn't have the concept of tangential pressure so we just hard code it to 0 as defined by the spec. Reviewed By: lunaleaps Differential Revision: D37759634 fbshipit-source-id: 7ca0e47267f5fde76ace2b96d05ea2e154cb4b8f
86 lines
2.3 KiB
C++
86 lines
2.3 KiB
C++
/*
|
||
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
||
*
|
||
* This source code is licensed under the MIT license found in the
|
||
* LICENSE file in the root directory of this source tree.
|
||
*/
|
||
|
||
#pragma once
|
||
|
||
#include <react/renderer/core/ReactPrimitives.h>
|
||
#include <react/renderer/debug/DebugStringConvertible.h>
|
||
#include <react/renderer/graphics/Geometry.h>
|
||
|
||
namespace facebook {
|
||
namespace react {
|
||
|
||
struct PointerEvent {
|
||
/*
|
||
* A unique identifier for the pointer causing the event.
|
||
*/
|
||
int pointerId;
|
||
/*
|
||
* The normalized pressure of the pointer input in the range 0 to 1, where 0
|
||
* and 1 represent the minimum and maximum pressure the hardware is capable of
|
||
* detecting, respectively.
|
||
*/
|
||
Float pressure;
|
||
/*
|
||
* Indicates the device type that caused the event (mouse, pen, touch, etc.)
|
||
*/
|
||
std::string pointerType;
|
||
/*
|
||
* Point within the application's viewport at which the event occurred (as
|
||
* opposed to the coordinate within the page).
|
||
*/
|
||
Point clientPoint;
|
||
/*
|
||
* The width (magnitude on the X axis), in CSS pixels, of the contact geometry
|
||
* of the pointer
|
||
*/
|
||
Float width;
|
||
/*
|
||
* The height (magnitude on the y axis), in CSS pixels, of the contact
|
||
* geometry of the pointer
|
||
*/
|
||
Float height;
|
||
/*
|
||
* The plane angle (in degrees, in the range of -90 to 90) between the Y–Z
|
||
* plane and the plane containing both the pointer (e.g. pen stylus) axis and
|
||
* the Y axis.
|
||
*/
|
||
int tiltX;
|
||
/*
|
||
* The plane angle (in degrees, in the range of -90 to 90) between the X–Z
|
||
* plane and the plane containing both the pointer (e.g. pen stylus) axis and
|
||
* the X axis.
|
||
*/
|
||
int tiltY;
|
||
/*
|
||
* Returns a long with details about the event, depending on the event type.
|
||
*/
|
||
int detail;
|
||
/*
|
||
* The buttons being depressed (if any) when the mouse event was fired.
|
||
*/
|
||
int buttons;
|
||
/*
|
||
* The normalized tangential pressure of the pointer input (also known as
|
||
* barrel pressure or cylinder stress) in the range -1 to 1, where 0 is the
|
||
* neutral position of the control.
|
||
*/
|
||
Float tangentialPressure;
|
||
};
|
||
|
||
#if RN_DEBUG_STRING_CONVERTIBLE
|
||
|
||
std::string getDebugName(PointerEvent const &pointerEvent);
|
||
std::vector<DebugStringConvertibleObject> getDebugProps(
|
||
PointerEvent const &pointerEvent,
|
||
DebugStringConvertibleOptions options);
|
||
|
||
#endif
|
||
|
||
} // namespace react
|
||
} // namespace facebook
|