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

Side by Side Diff: chrome/android/java/src/org/chromium/chrome/browser/preferences/datareduction/DataReductionSiteBreakdownView.java

Issue 2953523002: Add 'Other' category on the Data Saver site-breakdown page (Closed)
Patch Set: Created 3 years, 6 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
« no previous file with comments | « no previous file | components/data_reduction_proxy/core/browser/data_reduction_proxy_data_use_observer.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2017 The Chromium Authors. All rights reserved. 1 // Copyright 2017 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.preferences.datareduction; 5 package org.chromium.chrome.browser.preferences.datareduction;
6 6
7 import android.content.Context; 7 import android.content.Context;
8 import android.graphics.drawable.Drawable; 8 import android.graphics.drawable.Drawable;
9 import android.support.annotation.ColorInt; 9 import android.support.annotation.ColorInt;
10 import android.text.format.Formatter; 10 import android.text.format.Formatter;
(...skipping 12 matching lines...) Expand all
23 import java.util.Collections; 23 import java.util.Collections;
24 import java.util.Comparator; 24 import java.util.Comparator;
25 import java.util.List; 25 import java.util.List;
26 26
27 /** 27 /**
28 * A site breakdown view to be used by the Data Saver settings page. It displays the top ten sites 28 * A site breakdown view to be used by the Data Saver settings page. It displays the top ten sites
29 * with the most data use or data savings. 29 * with the most data use or data savings.
30 */ 30 */
31 public class DataReductionSiteBreakdownView extends LinearLayout { 31 public class DataReductionSiteBreakdownView extends LinearLayout {
32 private static final int NUM_DATA_USE_ITEMS_TO_ADD = 10; 32 private static final int NUM_DATA_USE_ITEMS_TO_ADD = 10;
33
34 // Hostname used for the other bucket which consists of chrome-services traf fic.
35 // This should be in sync with the same in DataReductionProxyDataUseObserver .
36 private static final String OTHER_HOST_NAME = "Other";
rajendrant 2017/06/20 23:24:25 Not sure if a new string should be added in androi
megjablon 2017/06/20 23:45:46 This should definitely be translated. It will prob
rajendrant 2017/06/21 00:30:31 OK. I am adding an entry in android_chrome_strings
37
33 private int mNumDataUseItemsToDisplay = 10; 38 private int mNumDataUseItemsToDisplay = 10;
34 39
35 private TableLayout mTableLayout; 40 private TableLayout mTableLayout;
36 private TextView mDataUsedTitle; 41 private TextView mDataUsedTitle;
37 private TextView mDataSavedTitle; 42 private TextView mDataSavedTitle;
38 private List<DataReductionDataUseItem> mDataUseItems; 43 private List<DataReductionDataUseItem> mDataUseItems;
39 @ColorInt 44 @ColorInt
40 private int mTextColor; 45 private int mTextColor;
41 @ColorInt 46 @ColorInt
42 private int mLightTextColor; 47 private int mLightTextColor;
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
122 } 127 }
123 return drawables[2]; 128 return drawables[2];
124 } 129 }
125 130
126 /** 131 /**
127 * Sorts the DataReductionDataUseItems by most to least data used. 132 * Sorts the DataReductionDataUseItems by most to least data used.
128 */ 133 */
129 private static final class DataUsedComparator 134 private static final class DataUsedComparator
130 implements Comparator<DataReductionDataUseItem>, Serializable { 135 implements Comparator<DataReductionDataUseItem>, Serializable {
131 @Override 136 @Override
132 public int compare(DataReductionDataUseItem lhs, DataReductionDataUseIte m rhs) { 137 public int compare(DataReductionDataUseItem lhs, DataReductionDataUseIte m rhs) {
megjablon 2017/06/20 23:45:46 Please add a comment as to what this is doing. At
rajendrant 2017/06/21 00:30:31 Done.
133 if (lhs.getDataUsed() < rhs.getDataUsed()) { 138 if (OTHER_HOST_NAME.equals(lhs.getHostname())) {
139 return 1;
140 } else if (OTHER_HOST_NAME.equals(rhs.getHostname())) {
141 return -1;
142 } else if (lhs.getDataUsed() < rhs.getDataUsed()) {
134 return 1; 143 return 1;
135 } else if (lhs.getDataUsed() > rhs.getDataUsed()) { 144 } else if (lhs.getDataUsed() > rhs.getDataUsed()) {
136 return -1; 145 return -1;
137 } 146 }
138 return 0; 147 return 0;
139 } 148 }
140 } 149 }
141 150
142 /** 151 /**
143 * Sorts the DataReductionDataUseItems by most to least data saved. If data saved is equal, most 152 * Sorts the DataReductionDataUseItems by most to least data saved. If data saved is equal, most
144 * likely because both items have zero data saving, then sort by data used. 153 * likely because both items have zero data saving, then sort by data used.
145 */ 154 */
146 private static class DataSavedComparator 155 private static class DataSavedComparator
147 implements Comparator<DataReductionDataUseItem>, Serializable { 156 implements Comparator<DataReductionDataUseItem>, Serializable {
148 @Override 157 @Override
149 public int compare(DataReductionDataUseItem lhs, DataReductionDataUseIte m rhs) { 158 public int compare(DataReductionDataUseItem lhs, DataReductionDataUseIte m rhs) {
megjablon 2017/06/20 23:45:46 Also a comment here.
rajendrant 2017/06/21 00:30:31 Done.
150 if (lhs.getDataSaved() < rhs.getDataSaved()) { 159 if (OTHER_HOST_NAME.equals(lhs.getHostname())) {
160 return 1;
161 } else if (OTHER_HOST_NAME.equals(rhs.getHostname())) {
162 return -1;
163 } else if (lhs.getDataSaved() < rhs.getDataSaved()) {
151 return 1; 164 return 1;
152 } else if (lhs.getDataSaved() > rhs.getDataSaved()) { 165 } else if (lhs.getDataSaved() > rhs.getDataSaved()) {
153 return -1; 166 return -1;
154 } else if (lhs.getDataUsed() < rhs.getDataUsed()) { 167 } else if (lhs.getDataUsed() < rhs.getDataUsed()) {
155 return 1; 168 return 1;
156 } else if (lhs.getDataUsed() > rhs.getDataUsed()) { 169 } else if (lhs.getDataUsed() > rhs.getDataUsed()) {
157 return -1; 170 return -1;
158 } 171 }
159 return 0; 172 return 0;
160 } 173 }
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
221 mNumDataUseItemsToDisplay += NUM_DATA_USE_ITEMS_TO_ADD; 234 mNumDataUseItemsToDisplay += NUM_DATA_USE_ITEMS_TO_ADD;
222 updateSiteBreakdown(); 235 updateSiteBreakdown();
223 } 236 }
224 }); 237 });
225 238
226 mTableLayout.addView(row, mNumDataUseItemsToDisplay + 1); 239 mTableLayout.addView(row, mNumDataUseItemsToDisplay + 1);
227 } 240 }
228 241
229 mTableLayout.requestLayout(); 242 mTableLayout.requestLayout();
230 } 243 }
231 } 244 }
OLDNEW
« no previous file with comments | « no previous file | components/data_reduction_proxy/core/browser/data_reduction_proxy_data_use_observer.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698