Index: chrome/browser/resources/md_history/synced_device_manager.js |
diff --git a/chrome/browser/resources/md_history/synced_device_manager.js b/chrome/browser/resources/md_history/synced_device_manager.js |
index b62a950c04c1232cec6655c9e982877e2ce3e447..5952e9bbc785cf4070dc31b4e2d974b9b36086c5 100644 |
--- a/chrome/browser/resources/md_history/synced_device_manager.js |
+++ b/chrome/browser/resources/md_history/synced_device_manager.js |
@@ -54,7 +54,9 @@ Polymer({ |
fetchingSyncedTabs_: { |
type: Boolean, |
value: false, |
- } |
+ }, |
+ |
+ hasSeenForeignData_: Boolean, |
}, |
listeners: { |
@@ -65,6 +67,9 @@ Polymer({ |
attached: function() { |
// Update the sign in state. |
chrome.send('otherDevicesInitialized'); |
+ md_history.BrowserService.getInstance().recordHistogram( |
+ SYNCED_TABS_HISTOGRAM_NAME, SyncedTabsHistogram.INITIALIZED, |
+ SyncedTabsHistogram.LIMIT); |
}, |
/** |
@@ -124,15 +129,22 @@ Polymer({ |
onOpenAllTap_: function() { |
var menu = assert(this.$.menu.getIfExists()); |
- md_history.BrowserService.getInstance().openForeignSessionAllTabs( |
+ var browserService = md_history.BrowserService.getInstance(); |
+ browserService.recordHistogram( |
+ SYNCED_TABS_HISTOGRAM_NAME, SyncedTabsHistogram.OPEN_ALL, |
+ SyncedTabsHistogram.LIMIT); |
+ browserService.openForeignSessionAllTabs( |
menu.itemData); |
menu.closeMenu(); |
}, |
onDeleteSessionTap_: function() { |
var menu = assert(this.$.menu.getIfExists()); |
- md_history.BrowserService.getInstance().deleteForeignSession( |
- menu.itemData); |
+ var browserService = md_history.BrowserService.getInstance(); |
+ browserService.recordHistogram( |
+ SYNCED_TABS_HISTOGRAM_NAME, SyncedTabsHistogram.HIDE_FOR_NOW, |
+ SyncedTabsHistogram.LIMIT); |
+ browserService.deleteForeignSession(menu.itemData); |
menu.closeMenu(); |
}, |
@@ -198,6 +210,13 @@ Polymer({ |
if (!sessionList) |
return; |
+ if (sessionList.length > 0 && !this.hasSeenForeignData_) { |
+ this.hasSeenForeignData_ = true; |
+ md_history.BrowserService.getInstance().recordHistogram( |
+ SYNCED_TABS_HISTOGRAM_NAME, SyncedTabsHistogram.HAS_FOREIGN_DATA, |
+ SyncedTabsHistogram.LIMIT); |
+ } |
+ |
// First, update any existing devices that have changed. |
var updateCount = Math.min(sessionList.length, this.syncedDevices_.length); |
for (var i = 0; i < updateCount; i++) { |