| // Copyright (c) 2006-2008 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/history/page_usage_data.h" |
| |
| #include <algorithm> |
| |
| #include "third_party/skia/include/core/SkBitmap.h" |
| |
| PageUsageData::PageUsageData(history::URLID id) |
| : id_(id), |
| thumbnail_(NULL), |
| thumbnail_set_(false), |
| thumbnail_pending_(false), |
| favicon_(NULL), |
| favicon_set_(false), |
| favicon_pending_(false), |
| score_(0.0) { |
| } |
| |
| PageUsageData::~PageUsageData() { |
| delete thumbnail_; |
| delete favicon_; |
| } |
| |
| void PageUsageData::SetThumbnail(SkBitmap* img) { |
| if (thumbnail_ && thumbnail_ != img) |
| delete thumbnail_; |
| |
| thumbnail_ = img; |
| thumbnail_set_ = true; |
| } |
| |
| void PageUsageData::SetFavicon(SkBitmap* img) { |
| if (favicon_ && favicon_ != img) |
| delete favicon_; |
| favicon_ = img; |
| favicon_set_ = true; |
| } |
| |
| // static |
| bool PageUsageData::Predicate(const PageUsageData* lhs, |
| const PageUsageData* rhs) { |
| return lhs->GetScore() > rhs->GetScore(); |
| } |