chromium/content/common/input/input_injector_mojom_traits.h

// Copyright 2021 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef CONTENT_COMMON_INPUT_INPUT_INJECTOR_MOJOM_TRAITS_H_
#define CONTENT_COMMON_INPUT_INPUT_INJECTOR_MOJOM_TRAITS_H_

#include "content/common/input/input_injector.mojom.h"
#include "content/common/input/synthetic_pinch_gesture_params.h"
#include "content/common/input/synthetic_pointer_action_list_params.h"
#include "content/common/input/synthetic_pointer_action_params.h"
#include "content/common/input/synthetic_smooth_drag_gesture_params.h"
#include "content/common/input/synthetic_smooth_scroll_gesture_params.h"
#include "content/common/input/synthetic_tap_gesture_params.h"
#include "ui/events/types/scroll_types.h"
#include "ui/gfx/geometry/point_f.h"

namespace mojo {

template <>
struct EnumTraits<content::mojom::PointerActionType,
                  content::SyntheticPointerActionParams::PointerActionType> {};

template <>
struct EnumTraits<content::mojom::SyntheticButton,
                  content::SyntheticPointerActionParams::Button> {};

template <>
struct StructTraits<content::mojom::SyntheticSmoothDragDataView,
                    content::SyntheticSmoothDragGestureParams> {};

template <>
struct StructTraits<content::mojom::SyntheticPinchDataView,
                    content::SyntheticPinchGestureParams> {};

template <>
struct StructTraits<content::mojom::SyntheticSmoothScrollDataView,
                    content::SyntheticSmoothScrollGestureParams> {};

template <>
struct StructTraits<content::mojom::SyntheticTapDataView,
                    content::SyntheticTapGestureParams> {};

template <>
struct StructTraits<content::mojom::SyntheticPointerActionParamsDataView,
                    content::SyntheticPointerActionParams> {};

template <>
struct StructTraits<content::mojom::SyntheticPointerActionDataView,
                    content::SyntheticPointerActionListParams> {};

}  // namespace mojo

#endif  // CONTENT_COMMON_INPUT_INPUT_INJECTOR_MOJOM_TRAITS_H_