diff options
Diffstat (limited to 'chrome/browser/prerender/prerender_handle.cc')
-rw-r--r-- | chrome/browser/prerender/prerender_handle.cc | 71 |
1 files changed, 0 insertions, 71 deletions
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 <algorithm> - -#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 |