Index: athena/activity/activity_frame_view.cc |
diff --git a/athena/activity/activity_frame_view.cc b/athena/activity/activity_frame_view.cc |
index fa0c36c0e422a2bd5c0d364cef26f4835558a86f..6be5d6f9284344dbede41bf45c146b6b64294377 100644 |
--- a/athena/activity/activity_frame_view.cc |
+++ b/athena/activity/activity_frame_view.cc |
@@ -59,11 +59,17 @@ ActivityFrameView::ActivityFrameView(views::Widget* frame, |
UpdateWindowTitle(); |
UpdateWindowIcon(); |
+ view_model_->SetActivityView(this); |
+ |
WindowManager::Get()->AddObserver(this); |
} |
ActivityFrameView::~ActivityFrameView() { |
WindowManager::Get()->RemoveObserver(this); |
+ |
+ // |view_model_| is already destroyed at this time. So do not attempt to reset |
+ // the activity-view by calling SetActivityView(nullptr); |
+ // http://crbug.com/427113 |
} |
gfx::Rect ActivityFrameView::GetBoundsForClientView() const { |
@@ -169,6 +175,18 @@ void ActivityFrameView::OnPaintBackground(gfx::Canvas* canvas) { |
canvas->DrawRect(border_bounds, SkColorSetA(SK_ColorGRAY, 0x7f)); |
} |
+void ActivityFrameView::UpdateTitle() { |
+ UpdateWindowTitle(); |
+} |
+ |
+void ActivityFrameView::UpdateIcon() { |
+ UpdateWindowIcon(); |
+} |
+ |
+void ActivityFrameView::UpdateRepresentativeColor() { |
+ UpdateWindowTitle(); |
+} |
+ |
void ActivityFrameView::OnOverviewModeEnter() { |
view_model_->PrepareContentsForOverview(); |
in_overview_ = true; |