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

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

Issue 2449653002: [Contextual Search] Add support for a static icon (Closed)
Patch Set: Changes from donnd@ review Created 4 years, 1 month 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 android.content.Context; 7 import android.content.Context;
8 import android.view.ViewGroup; 8 import android.view.ViewGroup;
9 9
10 import org.chromium.chrome.R; 10 import org.chromium.chrome.R;
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
45 * The {@link ContextualSearchCaptionControl} used to control the Caption Vie w. 45 * The {@link ContextualSearchCaptionControl} used to control the Caption Vie w.
46 */ 46 */
47 private final ContextualSearchCaptionControl mCaptionControl; 47 private final ContextualSearchCaptionControl mCaptionControl;
48 48
49 /** 49 /**
50 * The {@link ContextualSearchQuickActionControl} used to control quick acti on behavior. 50 * The {@link ContextualSearchQuickActionControl} used to control quick acti on behavior.
51 */ 51 */
52 private final ContextualSearchQuickActionControl mQuickActionControl; 52 private final ContextualSearchQuickActionControl mQuickActionControl;
53 53
54 /** 54 /**
55 * The {@link ContextualSearchImageControl} for the panel.
56 */
57 private ContextualSearchImageControl mImageControl;
58
59 /**
55 * The opacity of the Bar's Search Context. 60 * The opacity of the Bar's Search Context.
56 */ 61 */
57 private float mSearchBarContextOpacity = 1.f; 62 private float mSearchBarContextOpacity = 1.f;
58 63
59 /** 64 /**
60 * The opacity of the Bar's Search Term. 65 * The opacity of the Bar's Search Term.
61 */ 66 */
62 private float mSearchBarTermOpacity = 1.f; 67 private float mSearchBarTermOpacity = 1.f;
63 68
64 // Dimensions used for laying out the search bar. 69 // Dimensions used for laying out the search bar.
65 private final float mTextLayerMinHeight; 70 private final float mTextLayerMinHeight;
66 private final float mTermCaptionSpacing; 71 private final float mTermCaptionSpacing;
67 72
68 /** 73 /**
69 * Constructs a new bottom bar control container by inflating views from XML . 74 * Constructs a new bottom bar control container by inflating views from XML .
70 * 75 *
71 * @param panel The panel. 76 * @param panel The panel.
72 * @param context The context used to build this view. 77 * @param context The context used to build this view.
73 * @param container The parent view for the bottom bar views. 78 * @param container The parent view for the bottom bar views.
74 * @param loader The resource loader that will handle the snapshot captur ing. 79 * @param loader The resource loader that will handle the snapshot captur ing.
75 */ 80 */
76 public ContextualSearchBarControl(OverlayPanel panel, 81 public ContextualSearchBarControl(OverlayPanel panel,
77 Context context, 82 Context context,
78 ViewGroup container, 83 ViewGroup container,
79 DynamicResourceLoader loader) { 84 DynamicResourceLoader loader) {
80 mOverlayPanel = panel; 85 mOverlayPanel = panel;
86 mImageControl = new ContextualSearchImageControl(panel, context);
81 mContextControl = new ContextualSearchContextControl(panel, context, con tainer, loader); 87 mContextControl = new ContextualSearchContextControl(panel, context, con tainer, loader);
82 mSearchTermControl = new ContextualSearchTermControl(panel, context, con tainer, loader); 88 mSearchTermControl = new ContextualSearchTermControl(panel, context, con tainer, loader);
83 mCaptionControl = new ContextualSearchCaptionControl(panel, context, con tainer, loader); 89 mCaptionControl = new ContextualSearchCaptionControl(panel, context, con tainer, loader);
84 mQuickActionControl = new ContextualSearchQuickActionControl(); 90 mQuickActionControl = new ContextualSearchQuickActionControl();
85 91
86 mTextLayerMinHeight = context.getResources().getDimension( 92 mTextLayerMinHeight = context.getResources().getDimension(
87 R.dimen.contextual_search_text_layer_min_height); 93 R.dimen.contextual_search_text_layer_min_height);
88 mTermCaptionSpacing = context.getResources().getDimension( 94 mTermCaptionSpacing = context.getResources().getDimension(
89 R.dimen.contextual_search_term_caption_spacing); 95 R.dimen.contextual_search_term_caption_spacing);
90 } 96 }
91 97
92 /** 98 /**
99 * @return The {@link ContextualSearchImageControl} for the panel.
100 */
101 public ContextualSearchImageControl getImageControl() {
102 return mImageControl;
103 }
104
105 /**
93 * Returns the minimum height that the text layer (containing the Search Con text, Term and 106 * Returns the minimum height that the text layer (containing the Search Con text, Term and
94 * Caption) should be. 107 * Caption) should be.
95 */ 108 */
96 public float getTextLayerMinHeight() { 109 public float getTextLayerMinHeight() {
97 return mTextLayerMinHeight; 110 return mTextLayerMinHeight;
98 } 111 }
99 112
100 /** 113 /**
101 * Returns the spacing that should be placed between the Search Term and Cap tion. 114 * Returns the spacing that should be placed between the Search Term and Cap tion.
102 */ 115 */
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
202 * Sets the quick action if one is available. 215 * Sets the quick action if one is available.
203 * @param quickActionUri The URI for the intent associated with the quick ac tion. 216 * @param quickActionUri The URI for the intent associated with the quick ac tion.
204 * @param quickActionCategory The category for the quick action. 217 * @param quickActionCategory The category for the quick action.
205 */ 218 */
206 public void setQuickAction(String quickActionUri, String quickActionCategory ) { 219 public void setQuickAction(String quickActionUri, String quickActionCategory ) {
207 mQuickActionControl.setQuickAction(quickActionUri, quickActionCategory); 220 mQuickActionControl.setQuickAction(quickActionUri, quickActionCategory);
208 if (mQuickActionControl.hasQuickAction()) { 221 if (mQuickActionControl.hasQuickAction()) {
209 // TODO(twellington): should the quick action caption be stored sepa rately from the 222 // TODO(twellington): should the quick action caption be stored sepa rately from the
210 // regular caption? 223 // regular caption?
211 mCaptionControl.setCaption(mQuickActionControl.getCaption()); 224 mCaptionControl.setCaption(mQuickActionControl.getCaption());
225 mImageControl.setStaticIconResourceId(mQuickActionControl.getIconRes Id());
212 } 226 }
213 } 227 }
214 228
215 /** 229 /**
216 * @return The {@link ContextualSearchQuickActionControl} for the panel. 230 * @return The {@link ContextualSearchQuickActionControl} for the panel.
217 */ 231 */
218 public ContextualSearchQuickActionControl getQuickActionControl() { 232 public ContextualSearchQuickActionControl getQuickActionControl() {
219 return mQuickActionControl; 233 return mQuickActionControl;
220 } 234 }
221 235
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
286 // They will both be partially visible for overlapPercentage of the anim ation duration. 300 // They will both be partially visible for overlapPercentage of the anim ation duration.
287 float overlapPercentage = .75f; 301 float overlapPercentage = .75f;
288 float fadingOutPercentage = Math.max(1 - (percentage / overlapPercentage ), 0.f); 302 float fadingOutPercentage = Math.max(1 - (percentage / overlapPercentage ), 0.f);
289 float fadingInPercentage = 303 float fadingInPercentage =
290 Math.max(percentage - (1 - overlapPercentage), 0.f) / overlapPer centage; 304 Math.max(percentage - (1 - overlapPercentage), 0.f) / overlapPer centage;
291 305
292 mSearchBarContextOpacity = fadingOutPercentage; 306 mSearchBarContextOpacity = fadingOutPercentage;
293 mSearchBarTermOpacity = fadingInPercentage; 307 mSearchBarTermOpacity = fadingInPercentage;
294 } 308 }
295 } 309 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698