popup_non_client_frame_view.h revision ddb351dbec246cf1fab5ec20d2d5520909041de1
1// Copyright (c) 2011 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.
4
5#ifndef CHROME_BROWSER_UI_VIEWS_FRAME_POPUP_NON_CLIENT_FRAME_VIEW_H_
6#define CHROME_BROWSER_UI_VIEWS_FRAME_POPUP_NON_CLIENT_FRAME_VIEW_H_
7#pragma once
8
9#include "chrome/browser/ui/views/frame/browser_non_client_frame_view.h"
10
11// BrowserNonClientFrameView implementation for popups. We let the window
12// manager implementation render the decorations for popups, so this draws
13// nothing.
14class PopupNonClientFrameView : public BrowserNonClientFrameView {
15 public:
16  PopupNonClientFrameView() {}
17
18  // NonClientFrameView:
19  virtual gfx::Rect GetBoundsForClientView() const OVERRIDE;
20  virtual bool AlwaysUseCustomFrame() const OVERRIDE;
21  virtual bool AlwaysUseNativeFrame() const OVERRIDE;
22  virtual gfx::Rect GetWindowBoundsForClientBounds(
23      const gfx::Rect& client_bounds) const OVERRIDE;
24  virtual int NonClientHitTest(const gfx::Point& point) OVERRIDE;
25  virtual void GetWindowMask(const gfx::Size& size, gfx::Path* window_mask)
26      OVERRIDE;
27  virtual void EnableClose(bool enable) OVERRIDE;
28  virtual void ResetWindowControls() OVERRIDE;
29  virtual void UpdateWindowIcon() OVERRIDE;
30
31  // BrowserNonClientFrameView:
32  virtual gfx::Rect GetBoundsForTabStrip(views::View* tabstrip) const OVERRIDE;
33  virtual int GetHorizontalTabStripVerticalOffset(bool restored) const OVERRIDE;
34  virtual void UpdateThrobber(bool running) OVERRIDE;
35
36 private:
37  DISALLOW_COPY_AND_ASSIGN(PopupNonClientFrameView);
38};
39
40#endif  // CHROME_BROWSER_UI_VIEWS_FRAME_POPUP_NON_CLIENT_FRAME_VIEW_H_
41