// Copyright 2012 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_VIEWS_BUBBLE_BUBBLE_FRAME_VIEW_H_ #define UI_VIEWS_BUBBLE_BUBBLE_FRAME_VIEW_H_ #include <memory> #include <utility> #include "base/gtest_prod_util.h" #include "base/memory/raw_ptr.h" #include "ui/base/metadata/metadata_header_macros.h" #include "ui/gfx/font_list.h" #include "ui/gfx/geometry/insets.h" #include "ui/views/bubble/bubble_border.h" #include "ui/views/controls/button/button.h" #include "ui/views/controls/label.h" #include "ui/views/controls/progress_bar.h" #include "ui/views/input_event_activation_protector.h" #include "ui/views/layout/box_layout_view.h" #include "ui/views/style/typography.h" #include "ui/views/window/non_client_view.h" namespace gfx { class RoundedCornersF; } namespace views { class FootnoteContainerView; class ImageView; // The non-client frame view of bubble-styled widgets. // +- BubbleFrameView ------------------+ // | +- ProgressBar ------------------+ | // | +-----------------------(-)-(x)-+ | // | | HeaderView | | // | +-------------------------------+ | // | +-------------------------------+ | // | | TitleView | | // | +-------------------------------+ | // | +-- DialogClientView------------+ | // | | <<Dialog Contents View>> | | // | | <<OK and Cancel Buttons>> | | // | | <<...>> | | // | +-------------------------------+ | // | +-------------------------------+ | // | | FootnoteView | | // | +-------------------------------+ | // +------------------------------------+ // All views are optional except for DialogClientView. An ImageView // `main_image` might optionally occupy the top left corner (not // illustrated above). // If TitleView exists and HeaderView does not exists, the close // and the minimize buttons will be positioned at the end of the // title row. Otherwise, they will be positioned closer to the frame // edge. class VIEWS_EXPORT BubbleFrameView : public NonClientFrameView { … }; } // namespace views #endif // UI_VIEWS_BUBBLE_BUBBLE_FRAME_VIEW_H_