Index: athena/activity/activity_frame_view.h |
diff --git a/athena/activity/activity_frame_view.h b/athena/activity/activity_frame_view.h |
index 43b1ac93d9101e02ec0ed16dac9c74df8acfe94a..7e7bee06256a1fb9e9179c04c3c34c3c3f10a958 100644 |
--- a/athena/activity/activity_frame_view.h |
+++ b/athena/activity/activity_frame_view.h |
@@ -5,10 +5,13 @@ |
#ifndef ATHENA_ACTIVITY_ACTIVITY_FRAME_VIEW_H_ |
#define ATHENA_ACTIVITY_ACTIVITY_FRAME_VIEW_H_ |
+#include "athena/wm/public/window_manager_observer.h" |
#include "base/memory/scoped_ptr.h" |
+#include "ui/gfx/insets.h" |
#include "ui/views/window/non_client_view.h" |
namespace views { |
+class ImageView; |
class Label; |
class Widget; |
} |
@@ -18,7 +21,8 @@ namespace athena { |
class ActivityViewModel; |
// A NonClientFrameView used for activity. |
-class ActivityFrameView : public views::NonClientFrameView { |
+class ActivityFrameView : public views::NonClientFrameView, |
+ public WindowManagerObserver { |
public: |
// Internal class name. |
static const char kViewClassName[]; |
@@ -26,7 +30,7 @@ class ActivityFrameView : public views::NonClientFrameView { |
ActivityFrameView(views::Widget* frame, ActivityViewModel* view_model); |
virtual ~ActivityFrameView(); |
- // views::NonClientFrameView overrides: |
+ // views::NonClientFrameView: |
virtual gfx::Rect GetBoundsForClientView() const OVERRIDE; |
virtual gfx::Rect GetWindowBoundsForClientBounds( |
const gfx::Rect& client_bounds) const OVERRIDE; |
@@ -37,18 +41,29 @@ class ActivityFrameView : public views::NonClientFrameView { |
virtual void UpdateWindowIcon() OVERRIDE; |
virtual void UpdateWindowTitle() OVERRIDE; |
- // views::View overrides: |
+ // views::View: |
virtual gfx::Size GetPreferredSize() const OVERRIDE; |
virtual const char* GetClassName() const OVERRIDE; |
virtual void Layout() OVERRIDE; |
+ virtual void OnPaintBackground(gfx::Canvas* canvas) OVERRIDE; |
private: |
+ // WindowManagerObserver: |
+ virtual void OnOverviewModeEnter() OVERRIDE; |
+ virtual void OnOverviewModeExit() OVERRIDE; |
+ virtual void OnActivityOrderHasChanged() OVERRIDE; |
+ |
+ gfx::Insets NonClientBorderInsets() const; |
int NonClientTopBorderHeight() const; |
// Not owned. |
views::Widget* frame_; |
ActivityViewModel* view_model_; |
views::Label* title_; |
+ views::ImageView* icon_; |
+ |
+ // Whether overview mode is active. |
+ bool in_overview_; |
DISALLOW_COPY_AND_ASSIGN(ActivityFrameView); |
}; |