#ifndef THIRD_PARTY_BLINK_PUBLIC_MOJOM_INPUT_INPUT_HANDLER_MOJOM_SHARED_H_
#define THIRD_PARTY_BLINK_PUBLIC_MOJOM_INPUT_INPUT_HANDLER_MOJOM_SHARED_H_
#include <stdint.h>
#include <functional>
#include <iosfwd>
#include <type_traits>
#include <utility>
#include "mojo/public/cpp/bindings/array_data_view.h"
#include "mojo/public/cpp/bindings/enum_traits.h"
#include "mojo/public/cpp/bindings/interface_data_view.h"
#include "mojo/public/cpp/bindings/lib/bindings_internal.h"
#include "mojo/public/cpp/bindings/lib/serialization.h"
#include "mojo/public/cpp/bindings/map_data_view.h"
#include "mojo/public/cpp/bindings/string_data_view.h"
#include "third_party/perfetto/include/perfetto/tracing/traced_value_forward.h"
#include "third_party/blink/public/mojom/input/input_handler.mojom-shared-internal.h"
#include "cc/mojom/browser_controls_offset_tags_info.mojom-shared.h"
#include "cc/mojom/browser_controls_state.mojom-shared.h"
#include "cc/mojom/overscroll_behavior.mojom-shared.h"
#include "cc/mojom/touch_action.mojom-shared.h"
#include "mojo/public/mojom/base/string16.mojom-shared.h"
#include "mojo/public/mojom/base/time.mojom-shared.h"
#include "third_party/blink/public/mojom/input/gesture_event.mojom-shared.h"
#include "third_party/blink/public/mojom/input/handwriting_gesture_result.mojom-shared.h"
#include "third_party/blink/public/mojom/input/input_event_result.mojom-shared.h"
#include "third_party/blink/public/mojom/input/input_event.mojom-shared.h"
#include "third_party/blink/public/mojom/input/pointer_lock_context.mojom-shared.h"
#include "third_party/blink/public/mojom/input/pointer_lock_result.mojom-shared.h"
#include "third_party/blink/public/mojom/input/stylus_writing_gesture.mojom-shared.h"
#include "third_party/blink/public/mojom/input/touch_event.mojom-shared.h"
#include "third_party/blink/public/mojom/selection_menu/selection_menu_behavior.mojom-shared.h"
#include "ui/base/ime/mojom/ime_types.mojom-shared.h"
#include "ui/events/mojom/event_constants.mojom-shared.h"
#include "ui/events/mojom/event_latency_metadata.mojom-shared.h"
#include "ui/events/mojom/event.mojom-shared.h"
#include "ui/events/mojom/scroll_granularity.mojom-shared.h"
#include "ui/gfx/geometry/mojom/geometry.mojom-shared.h"
#include "ui/gfx/range/mojom/range.mojom-shared.h"
#include "ui/latency/mojom/latency_info.mojom-shared.h"
#include "mojo/public/cpp/bindings/lib/interface_serialization.h"
#include "mojo/public/cpp/system/data_pipe.h"
#include "mojo/public/cpp/bindings/native_enum.h"
#include "mojo/public/cpp/bindings/lib/native_struct_serialization.h"
#include "base/component_export.h"
namespace blink::mojom {
class KeyDataDataView;
class PointerDataDataView;
class WheelDataDataView;
class MouseDataDataView;
class ScrollDataDataView;
class PinchBeginDataDataView;
class PinchUpdateDataDataView;
class PinchEndDataDataView;
class FlingDataDataView;
class TapDataDataView;
class TapDownDataDataView;
class GestureDataDataView;
class TouchPointDataView;
class TouchDataDataView;
class EventDataView;
class DidOverscrollParamsDataView;
class TouchActionOptionalDataView;
class EditCommandDataView;
class SelectAroundCaretResultDataView;
}
namespace mojo {
namespace internal {
template <>
struct MojomTypeTraits<::blink::mojom::KeyDataDataView> { … };
template <>
struct MojomTypeTraits<::blink::mojom::PointerDataDataView> { … };
template <>
struct MojomTypeTraits<::blink::mojom::WheelDataDataView> { … };
template <>
struct MojomTypeTraits<::blink::mojom::MouseDataDataView> { … };
template <>
struct MojomTypeTraits<::blink::mojom::ScrollDataDataView> { … };
template <>
struct MojomTypeTraits<::blink::mojom::PinchBeginDataDataView> { … };
template <>
struct MojomTypeTraits<::blink::mojom::PinchUpdateDataDataView> { … };
template <>
struct MojomTypeTraits<::blink::mojom::PinchEndDataDataView> { … };
template <>
struct MojomTypeTraits<::blink::mojom::FlingDataDataView> { … };
template <>
struct MojomTypeTraits<::blink::mojom::TapDataDataView> { … };
template <>
struct MojomTypeTraits<::blink::mojom::TapDownDataDataView> { … };
template <>
struct MojomTypeTraits<::blink::mojom::GestureDataDataView> { … };
template <>
struct MojomTypeTraits<::blink::mojom::TouchPointDataView> { … };
template <>
struct MojomTypeTraits<::blink::mojom::TouchDataDataView> { … };
template <>
struct MojomTypeTraits<::blink::mojom::EventDataView> { … };
template <>
struct MojomTypeTraits<::blink::mojom::DidOverscrollParamsDataView> { … };
template <>
struct MojomTypeTraits<::blink::mojom::TouchActionOptionalDataView> { … };
template <>
struct MojomTypeTraits<::blink::mojom::EditCommandDataView> { … };
template <>
struct MojomTypeTraits<::blink::mojom::SelectAroundCaretResultDataView> { … };
}
}
namespace blinkmojom
namespace std {
template <>
struct hash<::blink::mojom::SelectionGranularity>
: public mojo::internal::EnumHashImpl<::blink::mojom::SelectionGranularity> { … };
template <>
struct hash<::blink::mojom::PanAction>
: public mojo::internal::EnumHashImpl<::blink::mojom::PanAction> { … };
template <>
struct hash<::blink::mojom::FocusState>
: public mojo::internal::EnumHashImpl<::blink::mojom::FocusState> { … };
}
namespace mojo {
namespace internal {
Serializer< ::blink::mojom::SelectionGranularity, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::PanAction, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::FocusState, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::KeyDataDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::PointerDataDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::WheelDataDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::MouseDataDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::ScrollDataDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::PinchBeginDataDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::PinchUpdateDataDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::PinchEndDataDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::FlingDataDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::TapDataDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::TapDownDataDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::GestureDataDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::TouchPointDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::TouchDataDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::EventDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::DidOverscrollParamsDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::TouchActionOptionalDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::EditCommandDataView, MaybeConstUserType>;
}
namespace internal {
Serializer< ::blink::mojom::SelectAroundCaretResultDataView, MaybeConstUserType>;
}
}
namespace blink::mojom {
inline void KeyDataDataView::GetTextDataView(
::mojo_base::mojom::String16DataView* output) { … }
inline void KeyDataDataView::GetUnmodifiedTextDataView(
::mojo_base::mojom::String16DataView* output) { … }
inline void PointerDataDataView::GetWidgetPositionDataView(
::gfx::mojom::PointFDataView* output) { … }
inline void PointerDataDataView::GetScreenPositionDataView(
::gfx::mojom::PointFDataView* output) { … }
inline void PointerDataDataView::GetMouseDataDataView(
MouseDataDataView* output) { … }
inline void MouseDataDataView::GetWheelDataDataView(
WheelDataDataView* output) { … }
inline void GestureDataDataView::GetScreenPositionDataView(
::gfx::mojom::PointFDataView* output) { … }
inline void GestureDataDataView::GetWidgetPositionDataView(
::gfx::mojom::PointFDataView* output) { … }
inline void GestureDataDataView::GetContactSizeDataView(
::gfx::mojom::SizeDataView* output) { … }
inline void GestureDataDataView::GetScrollDataDataView(
ScrollDataDataView* output) { … }
inline void GestureDataDataView::GetPinchBeginDataDataView(
PinchBeginDataDataView* output) { … }
inline void GestureDataDataView::GetPinchUpdateDataDataView(
PinchUpdateDataDataView* output) { … }
inline void GestureDataDataView::GetPinchEndDataDataView(
PinchEndDataDataView* output) { … }
inline void GestureDataDataView::GetTapDataDataView(
TapDataDataView* output) { … }
inline void GestureDataDataView::GetTapDownDataDataView(
TapDownDataDataView* output) { … }
inline void GestureDataDataView::GetFlingDataDataView(
FlingDataDataView* output) { … }
inline void TouchPointDataView::GetPointerDataDataView(
PointerDataDataView* output) { … }
inline void TouchDataDataView::GetTouchesDataView(
mojo::ArrayDataView<TouchPointDataView>* output) { … }
inline void EventDataView::GetTimestampDataView(
::mojo_base::mojom::TimeTicksDataView* output) { … }
inline void EventDataView::GetLatencyDataView(
::ui::mojom::LatencyInfoDataView* output) { … }
inline void EventDataView::GetEventLatencyMetadataDataView(
::ui::mojom::EventLatencyMetadataDataView* output) { … }
inline void EventDataView::GetKeyDataDataView(
KeyDataDataView* output) { … }
inline void EventDataView::GetPointerDataDataView(
PointerDataDataView* output) { … }
inline void EventDataView::GetGestureDataDataView(
GestureDataDataView* output) { … }
inline void EventDataView::GetTouchDataDataView(
TouchDataDataView* output) { … }
inline void DidOverscrollParamsDataView::GetAccumulatedOverscrollDataView(
::gfx::mojom::Vector2dFDataView* output) { … }
inline void DidOverscrollParamsDataView::GetLatestOverscrollDeltaDataView(
::gfx::mojom::Vector2dFDataView* output) { … }
inline void DidOverscrollParamsDataView::GetCurrentFlingVelocityDataView(
::gfx::mojom::Vector2dFDataView* output) { … }
inline void DidOverscrollParamsDataView::GetCausalEventViewportPointDataView(
::gfx::mojom::PointFDataView* output) { … }
inline void DidOverscrollParamsDataView::GetOverscrollBehaviorDataView(
::cc::mojom::OverscrollBehaviorDataView* output) { … }
inline void EditCommandDataView::GetNameDataView(
mojo::StringDataView* output) { … }
inline void EditCommandDataView::GetValueDataView(
mojo::StringDataView* output) { … }
}
namespace perfetto {
template <>
struct COMPONENT_EXPORT(MOJOM_SHARED_BLINK_COMMON_EXPORT) TraceFormatTraits<::blink::mojom::SelectionGranularity> { … };
}
namespace perfetto {
template <>
struct COMPONENT_EXPORT(MOJOM_SHARED_BLINK_COMMON_EXPORT) TraceFormatTraits<::blink::mojom::PanAction> { … };
}
namespace perfetto {
template <>
struct COMPONENT_EXPORT(MOJOM_SHARED_BLINK_COMMON_EXPORT) TraceFormatTraits<::blink::mojom::FocusState> { … };
}
#endif