Chromium Code Reviews| Index: chrome/browser/bookmarks/bookmark_stats.cc |
| diff --git a/chrome/browser/bookmarks/bookmark_stats.cc b/chrome/browser/bookmarks/bookmark_stats.cc |
| index 5d4d3dac8efffb3ef5e605ace47019fd39b0f78a..f6e0cbd80aa4b874912111d69c3be5a5146a3c6f 100644 |
| --- a/chrome/browser/bookmarks/bookmark_stats.cc |
| +++ b/chrome/browser/bookmarks/bookmark_stats.cc |
| @@ -5,17 +5,31 @@ |
| #include "chrome/browser/bookmarks/bookmark_stats.h" |
| #include "base/metrics/histogram.h" |
| +#include "chrome/browser/bookmarks/bookmark_model.h" |
| #include "content/public/browser/user_metrics.h" |
| -void RecordBookmarkLaunch(BookmarkLaunchLocation location) { |
| +void RecordBookmarkLaunch(const BookmarkNode* node, |
| + BookmarkLaunchLocation location) { |
| if (location == BOOKMARK_LAUNCH_LOCATION_DETACHED_BAR || |
| location == BOOKMARK_LAUNCH_LOCATION_ATTACHED_BAR) { |
| content::RecordAction( |
| content::UserMetricsAction("ClickedBookmarkBarURLButton")); |
| } |
| - |
| UMA_HISTOGRAM_ENUMERATION( |
| "Bookmarks.LaunchLocation", location, BOOKMARK_LAUNCH_LOCATION_LIMIT); |
| + |
| + if (!node) return; |
|
sky
2013/11/01 20:26:38
nit: no single line if.
Yaron
2013/11/01 22:11:43
Done.
|
| + |
| + // In the cases where a bookmark node is provided, record the depth of the |
| + // bookmark in the tree. |
| + |
| + int depth = 0; // start at 0 to offset permanent bookmark folders. |
| + for (const BookmarkNode* iter = node; !iter->parent()->is_root(); |
|
sky
2013/11/01 20:26:38
nit: walking up until iter is NULL is less code.
Yaron
2013/11/01 22:11:43
Done.
|
| + iter = iter->parent()) { |
| + depth++; |
| + } |
| + |
| + UMA_HISTOGRAM_COUNTS("Bookmarks.LaunchDepth", depth); |
| } |
| void RecordBookmarkFolderOpen(BookmarkLaunchLocation location) { |