OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/renderer/extensions/notifications_native_handler.h" | 5 #include "chrome/renderer/extensions/notifications_native_handler.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 | 8 |
9 #include "base/logging.h" | 9 #include "base/logging.h" |
10 #include "base/values.h" | 10 #include "base/values.h" |
11 #include "chrome/common/extensions/api/notifications/notification_style.h" | 11 #include "chrome/common/extensions/api/notifications/notification_style.h" |
12 #include "chrome/renderer/extensions/chrome_v8_context.h" | 12 #include "chrome/renderer/extensions/chrome_v8_context.h" |
13 #include "content/public/renderer/v8_value_converter.h" | 13 #include "content/public/renderer/v8_value_converter.h" |
14 #include "ui/base/layout.h" | 14 #include "ui/base/layout.h" |
15 | 15 |
16 namespace extensions { | 16 namespace extensions { |
17 | 17 |
18 NotificationsNativeHandler::NotificationsNativeHandler(ScriptContext* context) | 18 NotificationsNativeHandler::NotificationsNativeHandler(ScriptContext* context) |
19 : ObjectBackedNativeHandler(context) { | 19 : ObjectBackedNativeHandler(context) { |
20 RouteFunction( | 20 RouteFunction( |
21 "GetNotificationImageSizes", | 21 "GetNotificationImageSizes", |
22 base::Bind(&NotificationsNativeHandler::GetNotificationImageSizes, | 22 base::Bind(&NotificationsNativeHandler::GetNotificationImageSizes, |
23 base::Unretained(this))); | 23 base::Unretained(this))); |
24 } | 24 } |
25 | 25 |
26 void NotificationsNativeHandler::GetNotificationImageSizes( | 26 void NotificationsNativeHandler::GetNotificationImageSizes( |
27 const v8::FunctionCallbackInfo<v8::Value>& args) { | 27 const v8::FunctionCallbackInfo<v8::Value>& args) { |
28 NotificationBitmapSizes bitmap_sizes = NotificationBitmapSizes(); | 28 NotificationBitmapSizes bitmap_sizes = GetNotificationBitmapSizes(); |
29 | 29 |
30 float scale_factor = | 30 float scale_factor = |
31 ui::GetScaleForScaleFactor(ui::GetSupportedScaleFactors().back()); | 31 ui::GetScaleForScaleFactor(ui::GetSupportedScaleFactors().back()); |
32 | 32 |
33 scoped_ptr<base::DictionaryValue> dict(new base::DictionaryValue); | 33 scoped_ptr<base::DictionaryValue> dict(new base::DictionaryValue); |
34 dict->SetDouble("scaleFactor", scale_factor); | 34 dict->SetDouble("scaleFactor", scale_factor); |
35 dict->SetInteger("icon.width", bitmap_sizes.icon_size.width()); | 35 dict->SetInteger("icon.width", bitmap_sizes.icon_size.width()); |
36 dict->SetInteger("icon.height", bitmap_sizes.icon_size.height()); | 36 dict->SetInteger("icon.height", bitmap_sizes.icon_size.height()); |
37 dict->SetInteger("image.width", bitmap_sizes.image_size.width()); | 37 dict->SetInteger("image.width", bitmap_sizes.image_size.width()); |
38 dict->SetInteger("image.height", bitmap_sizes.image_size.height()); | 38 dict->SetInteger("image.height", bitmap_sizes.image_size.height()); |
39 dict->SetInteger("buttonIcon.width", bitmap_sizes.button_icon_size.width()); | 39 dict->SetInteger("buttonIcon.width", bitmap_sizes.button_icon_size.width()); |
40 dict->SetInteger("buttonIcon.height", bitmap_sizes.button_icon_size.height()); | 40 dict->SetInteger("buttonIcon.height", bitmap_sizes.button_icon_size.height()); |
41 | 41 |
42 scoped_ptr<content::V8ValueConverter> converter( | 42 scoped_ptr<content::V8ValueConverter> converter( |
43 content::V8ValueConverter::create()); | 43 content::V8ValueConverter::create()); |
44 args.GetReturnValue().Set( | 44 args.GetReturnValue().Set( |
45 converter->ToV8Value(dict.get(), context()->v8_context())); | 45 converter->ToV8Value(dict.get(), context()->v8_context())); |
46 } | 46 } |
47 | 47 |
48 } // namespace extensions | 48 } // namespace extensions |
OLD | NEW |