Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(96)

Unified Diff: mojo/examples/browser/browser.cc

Issue 372273004: Shutdown cleanup (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: mojo/examples/browser/browser.cc
diff --git a/mojo/examples/browser/browser.cc b/mojo/examples/browser/browser.cc
index 1474556d6044f46acf2006a5204eed44a375e30b..ac6f5f1dd1da4d12ecbcae5b9ed982dc3fa2ef82 100644
--- a/mojo/examples/browser/browser.cc
+++ b/mojo/examples/browser/browser.cc
@@ -205,6 +205,12 @@ class Browser : public ApplicationDelegate,
root_->SetFocus();
CreateWidget(root_);
}
+ virtual void OnViewManagerDisconnected(
+ view_manager::ViewManager* view_manager) OVERRIDE {
+ DCHECK_EQ(view_manager_, view_manager);
+ view_manager_ = NULL;
+ base::MessageLoop::current()->Quit();
+ }
// views::TextfieldController:
virtual bool HandleKeyEvent(views::Textfield* sender,
@@ -232,6 +238,10 @@ class Browser : public ApplicationDelegate,
else if (gained_focus == root_)
focus_client->FocusWindow(widget_->GetNativeView());
}
+ virtual void OnNodeDestroyed(view_manager::Node* node) OVERRIDE {
+ DCHECK_EQ(root_, node);
+ node->RemoveObserver(this);
+ }
scoped_ptr<ViewsInit> views_init_;

Powered by Google App Engine
This is Rietveld 408576698