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

Unified Diff: chrome/browser/ui/cocoa/handoff_active_url_observer.cc

Issue 799583002: Revert "mac: Allow Chrome to hand off its active URL to other devices." (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years 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: chrome/browser/ui/cocoa/handoff_active_url_observer.cc
diff --git a/chrome/browser/ui/cocoa/handoff_active_url_observer.cc b/chrome/browser/ui/cocoa/handoff_active_url_observer.cc
deleted file mode 100644
index 592a757408ab6233c7904badf30ee0b32485b2d2..0000000000000000000000000000000000000000
--- a/chrome/browser/ui/cocoa/handoff_active_url_observer.cc
+++ /dev/null
@@ -1,124 +0,0 @@
-// Copyright 2014 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "chrome/browser/ui/cocoa/handoff_active_url_observer.h"
-
-#include "base/logging.h"
-#include "chrome/browser/ui/browser_finder.h"
-#include "chrome/browser/ui/browser_list.h"
-#include "chrome/browser/ui/cocoa/handoff_active_url_observer_delegate.h"
-#include "chrome/browser/ui/tabs/tab_strip_model.h"
-#include "content/public/browser/web_contents.h"
-
-HandoffActiveURLObserver::HandoffActiveURLObserver(
- HandoffActiveURLObserverDelegate* delegate)
- : delegate_(delegate),
- active_tab_strip_model_(nullptr),
- active_browser_(nullptr) {
- DCHECK(delegate_);
-
- active_browser_ = chrome::FindLastActiveWithHostDesktopType(
- chrome::HOST_DESKTOP_TYPE_NATIVE);
- BrowserList::AddObserver(this);
- UpdateObservations();
-}
-
-HandoffActiveURLObserver::~HandoffActiveURLObserver() {
- BrowserList::RemoveObserver(this);
- StopObservingTabStripModel();
- StopObservingWebContents();
-}
-
-void HandoffActiveURLObserver::OnBrowserSetLastActive(Browser* browser) {
- active_browser_ = browser;
- UpdateObservations();
- delegate_->HandoffActiveURLChanged(GetActiveWebContents());
-}
-
-void HandoffActiveURLObserver::OnBrowserRemoved(Browser* removed_browser) {
- if (active_browser_ != removed_browser)
- return;
-
- active_browser_ = chrome::FindLastActiveWithHostDesktopType(
- chrome::HOST_DESKTOP_TYPE_NATIVE);
- UpdateObservations();
- delegate_->HandoffActiveURLChanged(GetActiveWebContents());
-}
-
-void HandoffActiveURLObserver::ActiveTabChanged(
- content::WebContents* old_contents,
- content::WebContents* new_contents,
- int index,
- int reason) {
- StartObservingWebContents(new_contents);
- delegate_->HandoffActiveURLChanged(new_contents);
-}
-
-void HandoffActiveURLObserver::TabStripModelDeleted() {
- StopObservingTabStripModel();
- StopObservingWebContents();
-}
-
-void HandoffActiveURLObserver::DidNavigateMainFrame(
- const content::LoadCommittedDetails& details,
- const content::FrameNavigateParams& params) {
- delegate_->HandoffActiveURLChanged(web_contents());
-}
-
-void HandoffActiveURLObserver::WebContentsDestroyed() {
- StopObservingWebContents();
-}
-
-void HandoffActiveURLObserver::UpdateObservations() {
- if (!active_browser_) {
- StopObservingTabStripModel();
- StopObservingWebContents();
- return;
- }
-
- TabStripModel* model = active_browser_->tab_strip_model();
- StartObservingTabStripModel(model);
-
- content::WebContents* web_contents = model->GetActiveWebContents();
- if (web_contents)
- StartObservingWebContents(web_contents);
- else
- StopObservingWebContents();
-}
-
-void HandoffActiveURLObserver::StartObservingTabStripModel(
- TabStripModel* tab_strip_model) {
- DCHECK(tab_strip_model);
-
- if (active_tab_strip_model_ == tab_strip_model)
- return;
-
- StopObservingTabStripModel();
- tab_strip_model->AddObserver(this);
- active_tab_strip_model_ = tab_strip_model;
-}
-
-void HandoffActiveURLObserver::StopObservingTabStripModel() {
- if (active_tab_strip_model_) {
- active_tab_strip_model_->RemoveObserver(this);
- active_tab_strip_model_ = nullptr;
- }
-}
-
-void HandoffActiveURLObserver::StartObservingWebContents(
- content::WebContents* web_contents) {
- DCHECK(web_contents);
- Observe(web_contents);
-}
-
-void HandoffActiveURLObserver::StopObservingWebContents() {
- Observe(nullptr);
-}
-
-content::WebContents* HandoffActiveURLObserver::GetActiveWebContents() {
- if (!active_browser_)
- return nullptr;
-
- return active_browser_->tab_strip_model()->GetActiveWebContents();
-}
« no previous file with comments | « chrome/browser/ui/cocoa/handoff_active_url_observer.h ('k') | chrome/browser/ui/cocoa/handoff_active_url_observer_delegate.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698