Chromium Code Reviews| Index: chrome/browser/notifications/notification_conversion_helper.h |
| diff --git a/chrome/browser/notifications/notification_conversion_helper.h b/chrome/browser/notifications/notification_conversion_helper.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..c9535790c505e327ea5bae079c6253bb7357925a |
| --- /dev/null |
| +++ b/chrome/browser/notifications/notification_conversion_helper.h |
| @@ -0,0 +1,52 @@ |
| +// Copyright 2014 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. |
| + |
| +#ifndef CHROME_BROWSER_NOTIFICATIONS_NOTIFICATION_CONVERSION_HELPER_H_ |
| +#define CHROME_BROWSER_NOTIFICATIONS_NOTIFICATION_CONVERSION_HELPER_H_ |
| + |
| +#include "chrome/browser/notifications/notification.h" |
| +#include "ui/message_center/notification_types.h" |
| + |
| +namespace extensions { |
| +namespace api { |
| +namespace notifications { |
| +struct NotificationOptions; |
| +struct NotificationBitmap; |
| +} // namespace notifications |
| +} // namespace api |
| +} // namespace extensions |
| + |
| +namespace gfx { |
| +class Image; |
| +} |
| + |
| +class NotificationConversionHelper { |
|
dewittj
2014/08/13 18:30:18
please add a class comment
liyanhou
2014/08/13 20:28:57
Done.
|
| + public: |
| + // Converts Notification::Notification data to |
| + // extensions::api::notifications::NotificationOptions. |
| + static void NotificationToNotificationOptions( |
| + const Notification& notification, |
| + extensions::api::notifications::NotificationOptions* options); |
| + |
| + // Converts gfx::Image (in ARGB format) type to |
| + // extensions::api::notifications::NotificationBitmap type (RGBA). |
| + static void GfxImageToNotificationBitmap( |
| + const gfx::Image* gfx_image, |
| + extensions::api::notifications::NotificationBitmap* return_image_args); |
| + |
| + // Converts an extensions::api::notifications::NotificationBitmap type object |
| + // with width, height, and data in RGBA format into an gfx::Image (ARGB). |
| + static bool NotificationBitmapToGfxImage( |
| + float max_scale, |
| + const gfx::Size& target_size_dips, |
| + extensions::api::notifications::NotificationBitmap* notification_bitmap, |
| + gfx::Image* return_image); |
| + |
| + private: |
| + // Conversts message_center::NotificationType to string type used to convert |
| + // to extensions::api::notifications::TemplateType |
| + static std::string MapTypeToString(message_center::NotificationType type); |
| +}; |
| + |
| +#endif // CHROME_BROWSER_NOTIFICATIONS_NOTIFICATION_CONVERSION_HELPER_H_ |