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

Side by Side Diff: chrome/android/java/src/org/chromium/chrome/browser/widget/ClipDrawableProgressBar.java

Issue 2885013004: Remove unused histograms Omnibox.ProgressBar (Closed)
Patch Set: add bug link to obselete tag 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
« no previous file with comments | « no previous file | chrome/android/java/src/org/chromium/chrome/browser/widget/ToolbarProgressBar.java » ('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 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.widget; 5 package org.chromium.chrome.browser.widget;
6 6
7 import android.content.Context; 7 import android.content.Context;
8 import android.graphics.Color; 8 import android.graphics.Color;
9 import android.graphics.Rect; 9 import android.graphics.Rect;
10 import android.graphics.drawable.ClipDrawable; 10 import android.graphics.drawable.ClipDrawable;
(...skipping 21 matching lines...) Expand all
32 public int progressBarBackgroundColor; 32 public int progressBarBackgroundColor;
33 } 33 }
34 34
35 // ClipDrawable's max is a fixed constant 10000. 35 // ClipDrawable's max is a fixed constant 10000.
36 // http://developer.android.com/reference/android/graphics/drawable/ClipDraw able.html 36 // http://developer.android.com/reference/android/graphics/drawable/ClipDraw able.html
37 private static final int CLIP_DRAWABLE_MAX = 10000; 37 private static final int CLIP_DRAWABLE_MAX = 10000;
38 38
39 private final ColorDrawable mForegroundDrawable; 39 private final ColorDrawable mForegroundDrawable;
40 private int mBackgroundColor = Color.TRANSPARENT; 40 private int mBackgroundColor = Color.TRANSPARENT;
41 private float mProgress; 41 private float mProgress;
42 private int mProgressUpdateCount;
43 private int mDesiredVisibility; 42 private int mDesiredVisibility;
44 43
45 /** 44 /**
46 * Create the progress bar with a custom height. 45 * Create the progress bar with a custom height.
47 * @param context An Android context. 46 * @param context An Android context.
48 * @param height The height in px of the progress bar. 47 * @param height The height in px of the progress bar.
49 */ 48 */
50 public ClipDrawableProgressBar(Context context, int height) { 49 public ClipDrawableProgressBar(Context context, int height) {
51 super(context); 50 super(context);
52 51
(...skipping 24 matching lines...) Expand all
77 /** 76 /**
78 * Set the current progress to the specified value. 77 * Set the current progress to the specified value.
79 * 78 *
80 * @param progress The new progress, between 0.0 and 1.0. 79 * @param progress The new progress, between 0.0 and 1.0.
81 */ 80 */
82 public void setProgress(float progress) { 81 public void setProgress(float progress) {
83 assert 0.0f <= progress && progress <= 1.0f; 82 assert 0.0f <= progress && progress <= 1.0f;
84 if (mProgress == progress) return; 83 if (mProgress == progress) return;
85 84
86 mProgress = progress; 85 mProgress = progress;
87 mProgressUpdateCount += 1;
88 getDrawable().setLevel(Math.round(progress * CLIP_DRAWABLE_MAX)); 86 getDrawable().setLevel(Math.round(progress * CLIP_DRAWABLE_MAX));
89 } 87 }
90 88
91 /** 89 /**
92 * @return Foreground color of the progress bar. 90 * @return Foreground color of the progress bar.
93 */ 91 */
94 public int getForegroundColor() { 92 public int getForegroundColor() {
95 return mForegroundDrawable.getColor(); 93 return mForegroundDrawable.getColor();
96 } 94 }
97 95
(...skipping 25 matching lines...) Expand all
123 getRight(), 121 getRight(),
124 getBottom()); 122 getBottom());
125 drawingInfoOut.progressBarBackgroundRect.set( 123 drawingInfoOut.progressBarBackgroundRect.set(
126 getLeft(), 124 getLeft(),
127 getTop(), 125 getTop(),
128 drawingInfoOut.progressBarRect.left, 126 drawingInfoOut.progressBarRect.left,
129 getBottom()); 127 getBottom());
130 } 128 }
131 } 129 }
132 130
133 /**
134 * Resets progress update count to 0.
135 */
136 public void resetProgressUpdateCount() {
137 mProgressUpdateCount = 0;
138 }
139
140 /**
141 * @return Progress update count since reset.
142 */
143 public int getProgressUpdateCount() {
144 return mProgressUpdateCount;
145 }
146
147 private void updateInternalVisibility() { 131 private void updateInternalVisibility() {
148 int oldVisibility = getVisibility(); 132 int oldVisibility = getVisibility();
149 int newVisibility = mDesiredVisibility; 133 int newVisibility = mDesiredVisibility;
150 if (getAlpha() == 0 && mDesiredVisibility == VISIBLE) newVisibility = IN VISIBLE; 134 if (getAlpha() == 0 && mDesiredVisibility == VISIBLE) newVisibility = IN VISIBLE;
151 if (oldVisibility != newVisibility) super.setVisibility(newVisibility); 135 if (oldVisibility != newVisibility) super.setVisibility(newVisibility);
152 } 136 }
153 137
154 private int applyAlpha(int color, float alpha) { 138 private int applyAlpha(int color, float alpha) {
155 return (Math.round(alpha * (color >>> 24)) << 24) | (0x00ffffff & color) ; 139 return (Math.round(alpha * (color >>> 24)) << 24) | (0x00ffffff & color) ;
156 } 140 }
(...skipping 28 matching lines...) Expand all
185 public void setForegroundColor(int color) { 169 public void setForegroundColor(int color) {
186 mForegroundDrawable.setColor(color); 170 mForegroundDrawable.setColor(color);
187 } 171 }
188 172
189 @Override 173 @Override
190 protected boolean onSetAlpha(int alpha) { 174 protected boolean onSetAlpha(int alpha) {
191 updateInternalVisibility(); 175 updateInternalVisibility();
192 return super.onSetAlpha(alpha); 176 return super.onSetAlpha(alpha);
193 } 177 }
194 } 178 }
OLDNEW
« no previous file with comments | « no previous file | chrome/android/java/src/org/chromium/chrome/browser/widget/ToolbarProgressBar.java » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698