From d1e85efabceaba62186e9e839d76d424392adbc5 Mon Sep 17 00:00:00 2001 From: "mpearson@chromium.org" Date: Sat, 14 Jul 2012 16:38:46 +0000 Subject: Revert 146740 - Handle interface to prerenders. The prerender_manager now returns a PrerenderHandle* when creating a prerender; this is a useful object for canceling the prerender, as well as signaling navigation, etc... BUG=None Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=146735 Review URL: https://chromiumcodereview.appspot.com/10553029 TBR=gavinp@chromium.org Review URL: https://chromiumcodereview.appspot.com/10779007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@146741 0039d316-1c4b-4281-b951-d872f2087c98 --- chrome/browser/prerender/prerender_handle.cc | 71 ---------------------------- 1 file changed, 71 deletions(-) delete mode 100644 chrome/browser/prerender/prerender_handle.cc (limited to 'chrome/browser/prerender/prerender_handle.cc') diff --git a/chrome/browser/prerender/prerender_handle.cc b/chrome/browser/prerender/prerender_handle.cc deleted file mode 100644 index 24de791..0000000 --- a/chrome/browser/prerender/prerender_handle.cc +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright (c) 2012 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/prerender/prerender_handle.h" - -#include - -#include "chrome/browser/prerender/prerender_contents.h" - -namespace prerender { - -PrerenderHandle::~PrerenderHandle() { - DCHECK(!IsValid()); - // This shouldn't occur, but we also shouldn't leak if it does. - if (IsValid()) - OnCancel(); -} - -void PrerenderHandle::OnNavigateAway() { - DCHECK(CalledOnValidThread()); - if (!IsValid()) - return; - prerender_data_->OnNavigateAwayByHandle(); - prerender_data_.reset(); -} - -void PrerenderHandle::OnCancel() { - DCHECK(CalledOnValidThread()); - if (!IsValid()) - return; - prerender_data_->OnCancelByHandle(); - prerender_data_.reset(); -} - -bool PrerenderHandle::IsValid() const { - return prerender_data_ != NULL; -} - -bool PrerenderHandle::IsPending() const { - DCHECK(CalledOnValidThread()); - return prerender_data_ && !prerender_data_->contents(); -} - -bool PrerenderHandle::IsPrerendering() const { - DCHECK(CalledOnValidThread()); - return prerender_data_ && prerender_data_->contents(); -} - -bool PrerenderHandle::IsFinishedLoading() const { - DCHECK(CalledOnValidThread()); - if (!prerender_data_ || IsPending()) - return false; - return prerender_data_->contents()->has_finished_loading(); -} - -PrerenderHandle::PrerenderHandle( - PrerenderManager::PrerenderData* prerender_data) - : prerender_data_(prerender_data->AsWeakPtr()), - weak_ptr_factory_(this) { - prerender_data->OnNewHandle(); -} - -void PrerenderHandle::SwapPrerenderDataWith( - PrerenderHandle* other_prerender_handle) { - DCHECK(CalledOnValidThread()); - DCHECK(other_prerender_handle); - std::swap(prerender_data_, other_prerender_handle->prerender_data_); -} - -} // namespace prerender -- cgit v1.1