// Copyright © 2019 The CefSharp Authors. All rights reserved.
//
// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
using CefSharp.Enums;
namespace CefSharp.Structs
{
///
/// Touch Event
///
public struct TouchEvent
{
///
/// Id of a touch point. Must be unique per touch, can be any number except -1.
/// Note that a maximum of 16 concurrent touches will be tracked; touches
/// beyond that will be ignored.
///
public int Id { get; set; }
///
/// X coordinate relative to the left side of the view.
///
public float X { get; set; }
///
/// Y coordinate relative to the top side of the view.
///
public float Y { get; set; }
///
/// X radius in pixels. Set to 0 if not applicable.
///
public float RadiusX { get; set; }
///
/// Y radius in pixels. Set to 0 if not applicable.
///
public float RadiusY { get; set; }
///
/// Rotation angle in radians. Set to 0 if not applicable.
///
public float RotationAngle { get; set; }
///
/// The device type that caused the event.
///
public PointerType PointerType { get; set; }
///
/// The normalized pressure of the pointer input in the range of [0,1].
/// Set to 0 if not applicable.
///
public float Pressure { get; set; }
///
/// The state of the touch point. Touches begin with one event
/// followed by zero or more events and finally one
/// or event.
/// Events not respecting this order will be ignored.
///
public TouchEventType Type { get; set; }
///
/// Bit flags describing any pressed modifier keys.
///
public CefEventFlags Modifiers { get; set; }
}
}