Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / chrome / browser / ui / views / frame / browser_non_client_frame_view_mac.h
blob9707b50f0c21612a705a129e99b6a802dd18ac46
1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_NON_CLIENT_FRAME_VIEW_MAC_H_
6 #define CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_NON_CLIENT_FRAME_VIEW_MAC_H_
8 #include "chrome/browser/ui/views/frame/browser_non_client_frame_view.h"
10 class BrowserNonClientFrameViewMac : public BrowserNonClientFrameView {
11 public:
12 // Mac implementation of BrowserNonClientFrameView.
13 BrowserNonClientFrameViewMac(BrowserFrame* frame, BrowserView* browser_view);
14 ~BrowserNonClientFrameViewMac() override;
16 // BrowserNonClientFrameView:
17 gfx::Rect GetBoundsForTabStrip(views::View* tabstrip) const override;
18 int GetTopInset() const override;
19 int GetThemeBackgroundXInset() const override;
20 void UpdateThrobber(bool running) override;
22 // views::NonClientFrameView:
23 gfx::Rect GetBoundsForClientView() const override;
24 gfx::Rect GetWindowBoundsForClientBounds(
25 const gfx::Rect& client_bounds) const override;
26 int NonClientHitTest(const gfx::Point& point) override;
27 void GetWindowMask(const gfx::Size& size, gfx::Path* window_mask) override;
28 void ResetWindowControls() override;
29 void UpdateWindowIcon() override;
30 void UpdateWindowTitle() override;
31 void SizeConstraintsChanged() override;
33 // views::View:
34 gfx::Size GetMinimumSize() const override;
36 protected:
37 // views::View:
38 void OnPaint(gfx::Canvas* canvas) override;
40 // BrowserNonClientFrameView:
41 void UpdateNewAvatarButtonImpl() override;
43 private:
44 void PaintThemedFrame(gfx::Canvas* canvas);
45 void PaintToolbarBackground(gfx::Canvas* canvas);
47 DISALLOW_COPY_AND_ASSIGN(BrowserNonClientFrameViewMac);
50 #endif // CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_NON_CLIENT_FRAME_VIEW_MAC_H_