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

Side by Side Diff: chrome/android/java/src/org/chromium/chrome/browser/compositor/bottombar/contextualsearch/ContextualSearchPanelMetrics.java

Issue 2863893002: [TTS] Remove two unused metrics. (Closed)
Patch Set: Created 3 years, 7 months 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 unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 package org.chromium.chrome.browser.compositor.bottombar.contextualsearch; 5 package org.chromium.chrome.browser.compositor.bottombar.contextualsearch;
6 6
7 import org.chromium.chrome.browser.compositor.bottombar.OverlayPanel.PanelState; 7 import org.chromium.chrome.browser.compositor.bottombar.OverlayPanel.PanelState;
8 import org.chromium.chrome.browser.compositor.bottombar.OverlayPanel.StateChange Reason; 8 import org.chromium.chrome.browser.compositor.bottombar.OverlayPanel.StateChange Reason;
9 import org.chromium.chrome.browser.contextualsearch.ContextualSearchBlacklist.Bl acklistReason; 9 import org.chromium.chrome.browser.contextualsearch.ContextualSearchBlacklist.Bl acklistReason;
10 import org.chromium.chrome.browser.contextualsearch.ContextualSearchHeuristics; 10 import org.chromium.chrome.browser.contextualsearch.ContextualSearchHeuristics;
(...skipping 19 matching lines...) Expand all
30 private boolean mWasSearchContentViewSeen; 30 private boolean mWasSearchContentViewSeen;
31 private boolean mIsPromoActive; 31 private boolean mIsPromoActive;
32 private boolean mHasExpanded; 32 private boolean mHasExpanded;
33 private boolean mHasMaximized; 33 private boolean mHasMaximized;
34 private boolean mHasExitedPeeking; 34 private boolean mHasExitedPeeking;
35 private boolean mHasExitedExpanded; 35 private boolean mHasExitedExpanded;
36 private boolean mHasExitedMaximized; 36 private boolean mHasExitedMaximized;
37 private boolean mIsSerpNavigation; 37 private boolean mIsSerpNavigation;
38 private boolean mWasActivatedByTap; 38 private boolean mWasActivatedByTap;
39 private boolean mWasPanelOpenedBeyondPeek; 39 private boolean mWasPanelOpenedBeyondPeek;
40 private boolean mWasSelectionPartOfUrl;
41 private boolean mWasContextualCardsDataShown; 40 private boolean mWasContextualCardsDataShown;
42 private boolean mWasQuickActionShown; 41 private boolean mWasQuickActionShown;
43 private int mQuickActionCategory; 42 private int mQuickActionCategory;
44 private boolean mWasQuickActionClicked; 43 private boolean mWasQuickActionClicked;
45 private boolean mWasSelectionAllCaps;
46 private boolean mDidSelectionStartWithCapital; 44 private boolean mDidSelectionStartWithCapital;
47 private char mSelectionFirstChar; 45 private char mSelectionFirstChar;
48 private int mSelectionLength; 46 private int mSelectionLength;
49 // Whether any Tap suppression heuristic was satisfied when the panel was sh own. 47 // Whether any Tap suppression heuristic was satisfied when the panel was sh own.
50 private boolean mWasAnyHeuristicSatisfiedOnPanelShow; 48 private boolean mWasAnyHeuristicSatisfiedOnPanelShow;
51 // Time when the panel was triggered (not reset by a chained search). 49 // Time when the panel was triggered (not reset by a chained search).
52 // Panel transitions are animated so mPanelTriggerTimeNs will be less than m FirstPeekTimeNs. 50 // Panel transitions are animated so mPanelTriggerTimeNs will be less than m FirstPeekTimeNs.
53 private long mPanelTriggerTimeFromTapNs; 51 private long mPanelTriggerTimeFromTapNs;
54 // Time when the panel peeks into view (not reset by a chained search). 52 // Time when the panel peeks into view (not reset by a chained search).
55 // Used to log total time the panel is showing (not closed). 53 // Used to log total time the panel is showing (not closed).
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
114 // Measure duration only when the promo is not involved. 112 // Measure duration only when the promo is not involved.
115 ContextualSearchUma.logDuration(mWasSearchContentViewSeen, isCha ined, durationMs); 113 ContextualSearchUma.logDuration(mWasSearchContentViewSeen, isCha ined, durationMs);
116 } 114 }
117 if (mIsPromoActive) { 115 if (mIsPromoActive) {
118 // The user is exiting still in the promo, without choosing an o ption. 116 // The user is exiting still in the promo, without choosing an o ption.
119 ContextualSearchUma.logPromoSeen(mWasSearchContentViewSeen, mWas ActivatedByTap); 117 ContextualSearchUma.logPromoSeen(mWasSearchContentViewSeen, mWas ActivatedByTap);
120 } else { 118 } else {
121 ContextualSearchUma.logResultsSeen(mWasSearchContentViewSeen, mW asActivatedByTap); 119 ContextualSearchUma.logResultsSeen(mWasSearchContentViewSeen, mW asActivatedByTap);
122 } 120 }
123 121
124 if (mWasSelectionPartOfUrl) {
125 ContextualSearchUma.logResultsSeenSelectionIsUrl(mWasSearchConte ntViewSeen,
126 mWasActivatedByTap);
127 }
128
129 if (mWasContextualCardsDataShown) { 122 if (mWasContextualCardsDataShown) {
130 ContextualSearchUma.logContextualCardsResultsSeen(mWasSearchCont entViewSeen); 123 ContextualSearchUma.logContextualCardsResultsSeen(mWasSearchCont entViewSeen);
131 } 124 }
132 if (mWasQuickActionShown) { 125 if (mWasQuickActionShown) {
133 ContextualSearchUma.logQuickActionResultsSeen(mWasSearchContentV iewSeen, 126 ContextualSearchUma.logQuickActionResultsSeen(mWasSearchContentV iewSeen,
134 mQuickActionCategory); 127 mQuickActionCategory);
135 ContextualSearchUma.logQuickActionClicked(mWasQuickActionClicked , 128 ContextualSearchUma.logQuickActionClicked(mWasQuickActionClicked ,
136 mQuickActionCategory); 129 mQuickActionCategory);
137 mTapSuppressionRankerLogger.log( 130 mTapSuppressionRankerLogger.log(
138 ContextualSearchRankerLogger.Feature.OUTCOME_WAS_QUICK_A CTION_CLICKED, 131 ContextualSearchRankerLogger.Feature.OUTCOME_WAS_QUICK_A CTION_CLICKED,
139 mWasQuickActionClicked); 132 mWasQuickActionClicked);
140 } 133 }
141 134
142 if (mWasSelectionAllCaps && mWasActivatedByTap) { 135 if (mDidSelectionStartWithCapital && mWasActivatedByTap) {
143 ContextualSearchUma.logAllCapsResultsSeen(mWasSearchContentViewS een);
144 } else if (mDidSelectionStartWithCapital && mWasActivatedByTap) {
145 ContextualSearchUma.logStartedWithCapitalResultsSeen(mWasSearchC ontentViewSeen); 136 ContextualSearchUma.logStartedWithCapitalResultsSeen(mWasSearchC ontentViewSeen);
146 } 137 }
147 138
148 ContextualSearchUma.logBlacklistSeen(mBlacklistReason, mWasSearchCon tentViewSeen); 139 ContextualSearchUma.logBlacklistSeen(mBlacklistReason, mWasSearchCon tentViewSeen);
149 140
150 if (mResultsSeenExperiments != null) { 141 if (mResultsSeenExperiments != null) {
151 mResultsSeenExperiments.logResultsSeen( 142 mResultsSeenExperiments.logResultsSeen(
152 mWasSearchContentViewSeen, mWasActivatedByTap); 143 mWasSearchContentViewSeen, mWasActivatedByTap);
153 mResultsSeenExperiments = null; 144 mResultsSeenExperiments = null;
154 } 145 }
155 146
156 if (mWasActivatedByTap) { 147 if (mWasActivatedByTap) {
157 boolean wasAnySuppressionHeuristicSatisfied = 148 boolean wasAnySuppressionHeuristicSatisfied = mWasAnyHeuristicSa tisfiedOnPanelShow;
158 mWasAnyHeuristicSatisfiedOnPanelShow || mWasSelectionPar tOfUrl;
159 ContextualSearchUma.logAnyTapSuppressionHeuristicSatisfied( 149 ContextualSearchUma.logAnyTapSuppressionHeuristicSatisfied(
160 mWasSearchContentViewSeen, wasAnySuppressionHeuristicSat isfied); 150 mWasSearchContentViewSeen, wasAnySuppressionHeuristicSat isfied);
161 // Log all the experiments to the Ranker logger. 151 // Log all the experiments to the Ranker logger.
162 if (mRankerLogExperiments != null) { 152 if (mRankerLogExperiments != null) {
163 writeSelectionFeaturesToRanker(); 153 writeSelectionFeaturesToRanker();
164 mTapSuppressionRankerLogger.logOutcome(mWasSearchContentView Seen); 154 mTapSuppressionRankerLogger.logOutcome(mWasSearchContentView Seen);
165 mRankerLogExperiments.logRankerTapSuppression(mTapSuppressio nRankerLogger); 155 mRankerLogExperiments.logRankerTapSuppression(mTapSuppressio nRankerLogger);
166 mTapSuppressionRankerLogger.writeLogAndReset(); 156 mTapSuppressionRankerLogger.writeLogAndReset();
167 mRankerLogExperiments = null; 157 mRankerLogExperiments = null;
168 } 158 }
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
235 225
236 if (isEndingSearch) { 226 if (isEndingSearch) {
237 mDidSearchInvolvePromo = false; 227 mDidSearchInvolvePromo = false;
238 mWasSearchContentViewSeen = false; 228 mWasSearchContentViewSeen = false;
239 mHasExpanded = false; 229 mHasExpanded = false;
240 mHasMaximized = false; 230 mHasMaximized = false;
241 mHasExitedPeeking = false; 231 mHasExitedPeeking = false;
242 mHasExitedExpanded = false; 232 mHasExitedExpanded = false;
243 mHasExitedMaximized = false; 233 mHasExitedMaximized = false;
244 mIsSerpNavigation = false; 234 mIsSerpNavigation = false;
245 mWasSelectionPartOfUrl = false;
246 mWasContextualCardsDataShown = false; 235 mWasContextualCardsDataShown = false;
247 mWasQuickActionShown = false; 236 mWasQuickActionShown = false;
248 mQuickActionCategory = QuickActionCategory.NONE; 237 mQuickActionCategory = QuickActionCategory.NONE;
249 mWasQuickActionClicked = false; 238 mWasQuickActionClicked = false;
250 mWasSelectionAllCaps = false;
251 mDidSelectionStartWithCapital = false; 239 mDidSelectionStartWithCapital = false;
252 mWasAnyHeuristicSatisfiedOnPanelShow = false; 240 mWasAnyHeuristicSatisfiedOnPanelShow = false;
253 mPanelTriggerTimeFromTapNs = 0; 241 mPanelTriggerTimeFromTapNs = 0;
254 } 242 }
255 } 243 }
256 244
257 /** 245 /**
258 * Sets the reason why the current selection was blacklisted. 246 * Sets the reason why the current selection was blacklisted.
259 * @param reason The given reason. 247 * @param reason The given reason.
260 */ 248 */
(...skipping 18 matching lines...) Expand all
279 } 267 }
280 268
281 /** 269 /**
282 * Sets whether the promo is active. 270 * Sets whether the promo is active.
283 */ 271 */
284 public void setIsPromoActive(boolean shown) { 272 public void setIsPromoActive(boolean shown) {
285 mIsPromoActive = shown; 273 mIsPromoActive = shown;
286 } 274 }
287 275
288 /** 276 /**
289 * @param wasPartOfUrl Whether the selected text was part of a URL.
290 */
291 public void setWasSelectionPartOfUrl(boolean wasPartOfUrl) {
292 mWasSelectionPartOfUrl = wasPartOfUrl;
293 }
294
295 /**
296 * @param wasContextualCardsDataShown Whether Contextual Cards data was show n in the Contextual 277 * @param wasContextualCardsDataShown Whether Contextual Cards data was show n in the Contextual
297 * Search Bar. 278 * Search Bar.
298 */ 279 */
299 public void setWasContextualCardsDataShown(boolean wasContextualCardsDataSho wn) { 280 public void setWasContextualCardsDataShown(boolean wasContextualCardsDataSho wn) {
300 mWasContextualCardsDataShown = wasContextualCardsDataShown; 281 mWasContextualCardsDataShown = wasContextualCardsDataShown;
301 } 282 }
302 283
303 /** 284 /**
304 * @param wasQuickActionShown Whether a quick action was shown in the Contex tual Search Bar. 285 * @param wasQuickActionShown Whether a quick action was shown in the Contex tual Search Bar.
305 * @param quickActionCategory The {@link QuickActionCategory} for the quick action. 286 * @param quickActionCategory The {@link QuickActionCategory} for the quick action.
(...skipping 15 matching lines...) Expand all
321 */ 302 */
322 public void onPanelTriggeredFromTap() { 303 public void onPanelTriggeredFromTap() {
323 mPanelTriggerTimeFromTapNs = System.nanoTime(); 304 mPanelTriggerTimeFromTapNs = System.nanoTime();
324 } 305 }
325 306
326 /** 307 /**
327 * @param selection The text that is selected when a selection is establishe d. 308 * @param selection The text that is selected when a selection is establishe d.
328 */ 309 */
329 public void onSelectionEstablished(String selection) { 310 public void onSelectionEstablished(String selection) {
330 mSelectionLength = selection.length(); 311 mSelectionLength = selection.length();
331 // In some locales, there is no concept of an upper or lower case letter . Account for this
332 // by checking that the selected text is not equivalent to selection#toL owerCase().
333 mWasSelectionAllCaps = selection.equals(selection.toUpperCase(Locale.get Default()))
334 && !selection.equals(selection.toLowerCase(Locale.getDefault())) ;
335 mSelectionFirstChar = selection.charAt(0); 312 mSelectionFirstChar = selection.charAt(0);
336 String firstChar = String.valueOf(mSelectionFirstChar); 313 String firstChar = String.valueOf(mSelectionFirstChar);
337 mDidSelectionStartWithCapital = firstChar.equals( 314 mDidSelectionStartWithCapital = firstChar.equals(
338 firstChar.toUpperCase(Locale.getDefault())) 315 firstChar.toUpperCase(Locale.getDefault()))
339 && !firstChar.equals(firstChar.toLowerCase(Locale.getDefault())) ; 316 && !firstChar.equals(firstChar.toLowerCase(Locale.getDefault())) ;
340 } 317 }
341 318
342 /** 319 /**
343 * Writes the set of selection features that we've collected for Ranker to i ts log. 320 * Writes the set of selection features that we've collected for Ranker to i ts log.
344 */ 321 */
345 private void writeSelectionFeaturesToRanker() { 322 private void writeSelectionFeaturesToRanker() {
346 mTapSuppressionRankerLogger.log( 323 mTapSuppressionRankerLogger.log(
347 ContextualSearchRankerLogger.Feature.SELECTION_LENGTH, mSelectio nLength); 324 ContextualSearchRankerLogger.Feature.SELECTION_LENGTH, mSelectio nLength);
348 mTapSuppressionRankerLogger.log( 325 mTapSuppressionRankerLogger.log(
349 ContextualSearchRankerLogger.Feature.SELECTION_FIRST_CHAR, mSele ctionFirstChar); 326 ContextualSearchRankerLogger.Feature.SELECTION_FIRST_CHAR, mSele ctionFirstChar);
350 mTapSuppressionRankerLogger.log(
351 ContextualSearchRankerLogger.Feature.SELECTION_WAS_ALL_CAPS, mWa sSelectionAllCaps);
352 } 327 }
353 328
354 /** 329 /**
355 * Called to record the time when a search request started, for resolve and prefetch timing. 330 * Called to record the time when a search request started, for resolve and prefetch timing.
356 */ 331 */
357 public void onSearchRequestStarted() { 332 public void onSearchRequestStarted() {
358 mSearchRequestStartTimeNs = System.nanoTime(); 333 mSearchRequestStartTimeNs = System.nanoTime();
359 } 334 }
360 335
361 /** 336 /**
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
421 396
422 /** 397 /**
423 * @param fromState The state the panel is transitioning from. 398 * @param fromState The state the panel is transitioning from.
424 * @return Whether there is an ongoing contextual search. 399 * @return Whether there is an ongoing contextual search.
425 */ 400 */
426 private boolean isOngoingContextualSearch(PanelState fromState) { 401 private boolean isOngoingContextualSearch(PanelState fromState) {
427 return fromState != PanelState.UNDEFINED && fromState != PanelState.CLOS ED; 402 return fromState != PanelState.UNDEFINED && fromState != PanelState.CLOS ED;
428 } 403 }
429 } 404 }
430 405
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698