// 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 UI_OZONE_PLATFORM_WAYLAND_HOST_WAYLAND_SERIAL_TRACKER_H_ #define UI_OZONE_PLATFORM_WAYLAND_HOST_WAYLAND_SERIAL_TRACKER_H_ #include <cstdint> #include <optional> #include <vector> #include "base/containers/fixed_flat_map.h" #include "base/time/time.h" namespace wl { // Utility classes that help on tracking and retrieving "serial" values and // meta-data, received through Wayland protocol events. Each serial value is // associated with an event type, which is represented by a SerialType enum // entry. // // Note: SerialTracker must not be used to track related input object states, // e.g: whether a pointer button is pressed, or whether there are active touch // points. Instead, other specific APIs should be added/used for that. enum class SerialType { … }; struct Serial { … }; class SerialTracker final { … }; } // namespace wl #endif // UI_OZONE_PLATFORM_WAYLAND_HOST_WAYLAND_SERIAL_TRACKER_H_