Index: chrome/browser/extensions/api/hid/hid_device_manager.cc |
diff --git a/chrome/browser/extensions/api/hid/hid_device_manager.cc b/chrome/browser/extensions/api/hid/hid_device_manager.cc |
index fa6417054e0e72a0bc296447c97e4e537894fc1c..a8381b1c3255f35371f2533310a6facc246f77a0 100644 |
--- a/chrome/browser/extensions/api/hid/hid_device_manager.cc |
+++ b/chrome/browser/extensions/api/hid/hid_device_manager.cc |
@@ -49,6 +49,18 @@ scoped_ptr<base::ListValue> HidDeviceManager::GetApiDevices( |
api_device_info.device_id = resource_id; |
api_device_info.vendor_id = device_info.vendor_id; |
api_device_info.product_id = device_info.product_id; |
+ for (std::vector<device::HidUsageAndPage>::const_iterator usage_iter = |
+ device_info.usages.begin(); |
+ usage_iter != device_info.usages.end(); |
+ ++usage_iter) { |
+ api::hid::HidUsageAndPage* usage_and_page = |
+ new api::hid::HidUsageAndPage(); |
+ usage_and_page->usage_page = (*usage_iter).usage_page; |
+ usage_and_page->usage = (*usage_iter).usage; |
+ linked_ptr<api::hid::HidUsageAndPage> usage_and_page_ptr( |
+ usage_and_page); |
+ api_device_info.usages.push_back(usage_and_page_ptr); |
+ } |
api_devices->Append(api_device_info.ToValue().release()); |
} |
} |