Index: chrome/browser/ui/gtk/sad_tab_gtk.cc |
diff --git a/chrome/browser/ui/gtk/sad_tab_gtk.cc b/chrome/browser/ui/gtk/sad_tab_gtk.cc |
index 37a25d7f207f72280cb27d72cf131dd9d9cfa32c..62732b9ce203a4dd5489f306ba9f64896cf517e3 100644 |
--- a/chrome/browser/ui/gtk/sad_tab_gtk.cc |
+++ b/chrome/browser/ui/gtk/sad_tab_gtk.cc |
@@ -4,6 +4,7 @@ |
#include "chrome/browser/ui/gtk/sad_tab_gtk.h" |
+#include "base/metrics/histogram.h" |
#include "base/utf_string_conversions.h" |
#include "chrome/browser/ui/gtk/gtk_chrome_link_button.h" |
#include "chrome/browser/ui/gtk/tab_contents/chrome_web_contents_view_delegate_gtk.h" |
@@ -57,6 +58,23 @@ SadTabGtk::SadTabGtk(WebContents* web_contents, chrome::SadTabKind kind) |
kind_(kind) { |
DCHECK(web_contents_); |
+ switch (kind_) { |
+ case chrome::SAD_TAB_KIND_CRASHED: { |
+ static int crashed = 0; |
+ UMA_HISTOGRAM_CUSTOM_COUNTS( |
+ "Tabs.SadTab.CrashCreated", ++crashed, 1, 1000, 50); |
+ break; |
+ } |
+ case chrome::SAD_TAB_KIND_KILLED: { |
+ static int killed = 0; |
+ UMA_HISTOGRAM_CUSTOM_COUNTS( |
+ "Tabs.SadTab.KilledCreated", ++killed, 1, 1000, 50); |
+ break; |
+ } |
+ default: |
+ NOTREACHED(); |
+ } |
+ |
// Use an event box to get the background painting correctly. |
event_box_.Own(gtk_event_box_new()); |
gtk_widget_modify_bg(event_box_.get(), GTK_STATE_NORMAL, |
@@ -156,6 +174,23 @@ SadTabGtk::~SadTabGtk() { |
} |
void SadTabGtk::Show() { |
+ switch (kind_) { |
+ case chrome::SAD_TAB_KIND_CRASHED: { |
+ static int crashed = 0; |
+ UMA_HISTOGRAM_CUSTOM_COUNTS( |
+ "Tabs.SadTab.CrashDisplayed", ++crashed, 1, 1000, 50); |
+ break; |
+ } |
+ case chrome::SAD_TAB_KIND_KILLED: { |
+ static int killed = 0; |
+ UMA_HISTOGRAM_CUSTOM_COUNTS( |
+ "Tabs.SadTab.KilledDisplayed", ++killed, 1, 1000, 50); |
+ break; |
+ } |
+ default: |
+ NOTREACHED(); |
+ } |
+ |
GtkWidget* expanded_container = |
ChromeWebContentsViewDelegateGtk::GetFor(web_contents_)-> |
expanded_container(); |