blob: 13fe296bb65363476c7d97ca8fe96644703ca342 [file] [log] [blame]
// Copyright 2023 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_EVENTS_BACK_GESTURE_EVENT_H_
#define UI_EVENTS_BACK_GESTURE_EVENT_H_
#include "ui/events/events_export.h"
#include "ui/gfx/geometry/point_f.h"
namespace ui {
// Indicates the edge of the screen where the gesture started.
// GENERATED_JAVA_ENUM_PACKAGE: org.chromium.ui.base
enum class BackGestureEventSwipeEdge { LEFT, RIGHT };
// This event provides information about gestures which start at the edge of a
// browser window and should trigger a back/forward navigation on the associated
// web contents. This maps closely to Android's concept of back gesture
// navigation.
class EVENTS_EXPORT BackGestureEvent {
public:
BackGestureEvent(const gfx::PointF& location, float progress);
BackGestureEvent(const BackGestureEvent&) = default;
BackGestureEvent& operator=(const BackGestureEvent&) = default;
~BackGestureEvent() = default;
const gfx::PointF& location() const { return location_; }
float progress() const { return progress_; }
private:
gfx::PointF location_;
float progress_;
};
} // namespace ui
#endif // UI_EVENTS_BACK_GESTURE_EVENT_H_