chromium/chrome/browser/ui/views/payments/view_stack.h

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

#ifndef CHROME_BROWSER_UI_VIEWS_PAYMENTS_VIEW_STACK_H_
#define CHROME_BROWSER_UI_VIEWS_PAYMENTS_VIEW_STACK_H_

#include <vector>

#include "base/gtest_prod_util.h"
#include "base/memory/raw_ptr.h"
#include "ui/base/metadata/metadata_header_macros.h"
#include "ui/views/animation/bounds_animator.h"
#include "ui/views/animation/bounds_animator_observer.h"
#include "ui/views/view.h"

namespace payments {
class PaymentRequestBrowserTestBase;
}  // namespace payments

// This view represents a stack of views that slide in over one another from
// left to right. It manages the animation and lifetime of views that are
// pushed and popped on it. To use this class, add it to a view hierarchy, and
// call Push/Pop to animate views in and out.
class ViewStack : public views::BoundsAnimatorObserver,
                  public views::View {};

#endif  // CHROME_BROWSER_UI_VIEWS_PAYMENTS_VIEW_STACK_H_