| Index: chrome/browser/metrics/metrics_log.cc
|
| diff --git a/chrome/browser/metrics/metrics_log.cc b/chrome/browser/metrics/metrics_log.cc
|
| index 9ebf3bc72e2dbe7c9e57ca7e3e8a4aade3a9e105..bcd0a18884c0493f005add20b7a6c2008726f771 100644
|
| --- a/chrome/browser/metrics/metrics_log.cc
|
| +++ b/chrome/browser/metrics/metrics_log.cc
|
| @@ -66,6 +66,7 @@ extern "C" IMAGE_DOS_HEADER __ImageBase;
|
|
|
| #if defined(OS_CHROMEOS)
|
| #include "chrome/browser/chromeos/login/user_manager.h"
|
| +#include "ui/events/x/touch_factory_x11.h"
|
| #endif
|
|
|
| using content::GpuDataManager;
|
| @@ -372,6 +373,18 @@ PairedDevice::Type AsBluetoothDeviceType(
|
| NOTREACHED();
|
| return PairedDevice::DEVICE_UNKNOWN;
|
| }
|
| +
|
| +void WriteTouchscreensProto(SystemProfileProto::Hardware* hardware) {
|
| + std::set<std::pair<int, int> > touchscreen_ids =
|
| + ui::TouchFactory::GetInstance()->GetTouchscreenIds();
|
| + std::set<std::pair<int, int> >::iterator it;
|
| + for (it = touchscreen_ids.begin(); it != touchscreen_ids.end(); ++it) {
|
| + SystemProfileProto::Hardware::TouchScreen* touchscreen =
|
| + hardware->add_external_touchscreen();
|
| + touchscreen->set_vendor_id(it->first);
|
| + touchscreen->set_product_id(it->second);
|
| + }
|
| +}
|
| #endif // defined(OS_CHROMEOS)
|
|
|
| // Round a timestamp measured in seconds since epoch to one with a granularity
|
| @@ -798,6 +811,7 @@ void MetricsLog::RecordEnvironment(
|
| base::Unretained(this)));
|
| DCHECK(adapter_.get());
|
| WriteBluetoothProto(hardware);
|
| + WriteTouchscreensProto(hardware);
|
| UpdateMultiProfileUserCount();
|
| #endif
|
|
|
|
|