Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(94)

Unified Diff: ios/chrome/browser/ui/history/history_collection_view_controller.mm

Issue 2592843002: [ios] Adds history user action metrics (Closed)
Patch Set: Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | ios/chrome/browser/ui/history/history_panel_view_controller.mm » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ios/chrome/browser/ui/history/history_collection_view_controller.mm
diff --git a/ios/chrome/browser/ui/history/history_collection_view_controller.mm b/ios/chrome/browser/ui/history/history_collection_view_controller.mm
index c2c010360832627a6b280f0861faedca1db39484..10fe97de52b30a743d763fd51e8462a2019d61e6 100644
--- a/ios/chrome/browser/ui/history/history_collection_view_controller.mm
+++ b/ios/chrome/browser/ui/history/history_collection_view_controller.mm
@@ -12,6 +12,8 @@
#include "base/mac/foundation_util.h"
#import "base/mac/objc_property_releaser.h"
#include "base/mac/scoped_nsobject.h"
+#include "base/metrics/user_metrics.h"
+#include "base/metrics/user_metrics_action.h"
#include "base/strings/sys_string_conversions.h"
#include "base/strings/utf_string_conversions.h"
#include "components/browsing_data/core/history_notice_utils.h"
@@ -110,6 +112,8 @@ const CGFloat kSeparatorInset = 10;
// Displays context menu on cell pressed with gestureRecognizer.
- (void)displayContextMenuInvokedByGestureRecognizer:
(UILongPressGestureRecognizer*)gestureRecognizer;
+// Helper method for opening URL's and recording metrics.
+- (void)openURLWithCompletion:(ProceduralBlock)completionHandler;
// Opens URL in the current tab and dismisses the history view.
- (void)openURL:(const GURL&)URL;
// Opens URL in a new non-incognito tab and dismisses the history view.
@@ -145,6 +149,7 @@ const CGFloat kSeparatorInset = 10;
_browserState = browserState;
_delegate.reset(delegate);
_URLLoader.reset(loader);
+ base::RecordAction(base::UserMetricsAction("HistoryPage_EntryLinkClick"));
lpromero 2016/12/20 23:37:30 Feels weird to have it here. Idem than what Jackie
sczs 2016/12/21 04:24:26 You're right, the "Click" part of the name makes i
Jackie Quinn 2016/12/21 17:18:19 Also I think this is for when you tap on a history
sczs 2016/12/21 19:41:51 Ooooh, that makes everything different! Couldn't f
[self loadModel];
// Add initial info section as header.
[self.collectionViewModel
@@ -739,42 +744,50 @@ const CGFloat kSeparatorInset = 10;
[self.contextMenuCoordinator start];
}
+- (void)openURLWithCompletion:(ProceduralBlock)completionHandler {
Jackie Quinn 2016/12/20 23:15:54 Shouldn't this be closeHistoryWithCompletion?
sczs 2016/12/21 04:24:26 You're right I think it would be clearer.
+ if ([self.currentQuery length]) {
lpromero 2016/12/20 23:37:30 Is this always cleared when exiting search? Feels
sczs 2016/12/21 04:24:26 Yes it should (from what I've seen) It was the bes
Jackie Quinn 2016/12/21 17:18:19 There's also self.isSearching.
+ base::RecordAction(
+ base::UserMetricsAction("HistoryPage_SearchResultClick"));
Jackie Quinn 2016/12/20 23:15:54 Is this always going to be invoked from a click? I
sczs 2016/12/21 04:24:26 I was trying record this action everytime an item
Jackie Quinn 2016/12/21 17:18:19 I feel like it may be better to just have a separa
+ }
+ [self.delegate historyCollectionViewController:self
+ shouldCloseWithCompletion:completionHandler];
+}
+
- (void)openURL:(const GURL&)URL {
GURL copiedURL(URL);
- [self.delegate historyCollectionViewController:self
- shouldCloseWithCompletion:^{
- [self.URLLoader
- loadURL:copiedURL
- referrer:web::Referrer()
- transition:ui::PAGE_TRANSITION_AUTO_BOOKMARK
- rendererInitiated:NO];
- }];
+ ProceduralBlock completionHandler = ^{
+ [self.URLLoader loadURL:copiedURL
+ referrer:web::Referrer()
+ transition:ui::PAGE_TRANSITION_AUTO_BOOKMARK
+ rendererInitiated:NO];
+ };
+ [self openURLWithCompletion:completionHandler];
}
- (void)openURLInNewTab:(const GURL&)URL {
GURL copiedURL(URL);
- [self.delegate historyCollectionViewController:self
- shouldCloseWithCompletion:^{
- [self.URLLoader webPageOrderedOpen:copiedURL
- referrer:web::Referrer()
- windowName:nil
- inIncognito:NO
- inBackground:NO
- appendTo:kLastTab];
- }];
+ ProceduralBlock completionHandler = ^{
+ [self.URLLoader webPageOrderedOpen:copiedURL
+ referrer:web::Referrer()
+ windowName:nil
+ inIncognito:NO
+ inBackground:NO
+ appendTo:kLastTab];
+ };
+ [self openURLWithCompletion:completionHandler];
}
- (void)openURLInNewIncognitoTab:(const GURL&)URL {
GURL copiedURL(URL);
- [self.delegate historyCollectionViewController:self
- shouldCloseWithCompletion:^{
- [self.URLLoader webPageOrderedOpen:copiedURL
- referrer:web::Referrer()
- windowName:nil
- inIncognito:YES
- inBackground:NO
- appendTo:kLastTab];
- }];
+ ProceduralBlock completionHandler = ^{
+ [self.URLLoader webPageOrderedOpen:copiedURL
+ referrer:web::Referrer()
+ windowName:nil
+ inIncognito:YES
+ inBackground:NO
+ appendTo:kLastTab];
+ };
+ [self openURLWithCompletion:completionHandler];
}
- (void)copyURL:(const GURL&)URL {
« no previous file with comments | « no previous file | ios/chrome/browser/ui/history/history_panel_view_controller.mm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698