| Index: content/browser/tab_contents/tab_contents_observer.cc
|
| ===================================================================
|
| --- content/browser/tab_contents/tab_contents_observer.cc (revision 80315)
|
| +++ content/browser/tab_contents/tab_contents_observer.cc (working copy)
|
| @@ -7,6 +7,23 @@
|
| #include "content/browser/renderer_host/render_view_host.h"
|
| #include "content/browser/tab_contents/tab_contents.h"
|
|
|
| +TabContentsObserver::Registrar::Registrar(TabContentsObserver* observer)
|
| + : observer_(observer), tab_(NULL) {
|
| +}
|
| +
|
| +TabContentsObserver::Registrar::~Registrar() {
|
| + if (tab_)
|
| + tab_->RemoveObserver(observer_);
|
| +}
|
| +
|
| +void TabContentsObserver::Registrar::Observe(TabContents* tab) {
|
| + if (tab_)
|
| + tab_->RemoveObserver(observer_);
|
| + tab_ = tab;
|
| + if (tab_)
|
| + tab_->AddObserver(observer_);
|
| +}
|
| +
|
| void TabContentsObserver::NavigateToPendingEntry() {
|
| }
|
|
|
| @@ -41,6 +58,10 @@
|
| tab_contents_->AddObserver(this);
|
| }
|
|
|
| +TabContentsObserver::TabContentsObserver()
|
| + : tab_contents_(NULL), routing_id_(MSG_ROUTING_NONE) {
|
| +}
|
| +
|
| TabContentsObserver::~TabContentsObserver() {
|
| if (tab_contents_)
|
| tab_contents_->RemoveObserver(this);
|
|
|