| // Copyright (c) 2011 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. |
| |
| // Multiply-included message file, no traditional include guard. |
| #include <vector> |
| |
| #include "chrome/common/favicon_url.h" |
| #include "ipc/ipc_message.h" |
| #include "ipc/ipc_message_macros.h" |
| #include "ipc/ipc_param_traits.h" |
| #include "third_party/skia/include/core/SkBitmap.h" |
| |
| #define IPC_MESSAGE_START IconMsgStart |
| |
| IPC_ENUM_TRAITS(FaviconURL::IconType) |
| |
| IPC_STRUCT_TRAITS_BEGIN(FaviconURL) |
| IPC_STRUCT_TRAITS_MEMBER(icon_url) |
| IPC_STRUCT_TRAITS_MEMBER(icon_type) |
| IPC_STRUCT_TRAITS_END() |
| |
| // Messages sent from the browser to the renderer. |
| |
| // Requests the renderer to download the specified favicon image encode it as |
| // PNG and send the PNG data back ala IconHostMsg_DidDownloadFavicon. |
| IPC_MESSAGE_ROUTED3(IconMsg_DownloadFavicon, |
| int /* identifier for the request */, |
| GURL /* URL of the image */, |
| int /* Size of the image. Normally 0, but set if you have |
| a preferred image size to request, such as when |
| downloading the favicon */) |
| |
| // Messages sent from the renderer to the browser. |
| |
| // Notification that the urls for the favicon of a site has been determined. |
| IPC_MESSAGE_ROUTED2(IconHostMsg_UpdateFaviconURL, |
| int32 /* page_id */, |
| std::vector<FaviconURL> /* urls of the favicon */) |
| |
| IPC_MESSAGE_ROUTED4(IconHostMsg_DidDownloadFavicon, |
| int /* Identifier of the request */, |
| GURL /* URL of the image */, |
| bool /* true if there was a network error */, |
| SkBitmap /* image_data */) |