15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved.
25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file.
45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifndef CONTENT_PUBLIC_BROWSER_FAVICON_STATUS_H_
65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define CONTENT_PUBLIC_BROWSER_FAVICON_STATUS_H_
75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "content/common/content_export.h"
95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ui/gfx/image/image.h"
107dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch#include "url/gurl.h"
115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace content {
135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Collects the favicon related information for a NavigationEntry.
155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)struct CONTENT_EXPORT FaviconStatus {
165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  FaviconStatus();
175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  // Indicates whether we've gotten an official favicon for the page, or are
195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  // just using the default favicon.
205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  bool valid;
215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  // The URL of the favicon which was used to load it off the web.
235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  GURL url;
245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  // The favicon bitmap for the page. If the favicon has not been explicitly
265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  // set or it empty, it will return the default favicon. Note that this is
275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  // loaded asynchronously, so even if the favicon URL is valid we may return
285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  // the default favicon if we haven't gotten the data yet.
295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  gfx::Image image;
305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  // Copy and assignment is explicitly allowed for this struct.
325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)};
335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}  // namespace content
355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif  // CONTENT_PUBLIC_BROWSER_FAVICON_STATUS_H_
37