OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 cr.define('print_preview', function() { | 5 cr.define('print_preview', function() { |
6 'use strict'; | 6 'use strict'; |
7 | 7 |
8 /** | 8 /** |
9 * Component that displays a list of destinations with a heading, action link, | 9 * Component that displays a list of destinations with a heading, action link, |
10 * and "Show All..." button. An event is dispatched when the action link is | 10 * and "Show All..." button. An event is dispatched when the action link is |
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
121 /** | 121 /** |
122 * Gets estimated height of the destination list for the given number of | 122 * Gets estimated height of the destination list for the given number of |
123 * items. | 123 * items. |
124 * @param {number} Number of items to render in the destination list. | 124 * @param {number} Number of items to render in the destination list. |
125 * @return {number} Height (in pixels) of the destination list. | 125 * @return {number} Height (in pixels) of the destination list. |
126 */ | 126 */ |
127 getEstimatedHeightInPixels: function(numItems) { | 127 getEstimatedHeightInPixels: function(numItems) { |
128 numItems = Math.min(numItems, this.destinations_.length); | 128 numItems = Math.min(numItems, this.destinations_.length); |
129 var headerHeight = | 129 var headerHeight = |
130 this.getChildElement('.destination-list > header').offsetHeight; | 130 this.getChildElement('.destination-list > header').offsetHeight; |
131 return headerHeight + numItems * DestinationList.HEIGHT_OF_ITEM_; | 131 return headerHeight + (numItems > 0 ? |
| 132 numItems * DestinationList.HEIGHT_OF_ITEM_ : |
| 133 // To account for "No destinations found" message. |
| 134 DestinationList.HEIGHT_OF_ITEM_); |
132 }, | 135 }, |
133 | 136 |
134 /** @param {boolean} isVisible Whether the throbber is visible. */ | 137 /** @param {boolean} isVisible Whether the throbber is visible. */ |
135 setIsThrobberVisible: function(isVisible) { | 138 setIsThrobberVisible: function(isVisible) { |
136 setIsVisible(this.getChildElement('.throbber-container'), isVisible); | 139 setIsVisible(this.getChildElement('.throbber-container'), isVisible); |
137 }, | 140 }, |
138 | 141 |
139 /** | 142 /** |
140 * @param {number} size Size of list when destination list is in collapsed | 143 * @param {number} size Size of list when destination list is in collapsed |
141 * mode (a.k.a non-show-all mode). | 144 * mode (a.k.a non-show-all mode). |
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
268 cr.dispatchSimpleEvent(this, | 271 cr.dispatchSimpleEvent(this, |
269 DestinationList.EventType.ACTION_LINK_ACTIVATED); | 272 DestinationList.EventType.ACTION_LINK_ACTIVATED); |
270 } | 273 } |
271 }; | 274 }; |
272 | 275 |
273 // Export | 276 // Export |
274 return { | 277 return { |
275 DestinationList: DestinationList | 278 DestinationList: DestinationList |
276 }; | 279 }; |
277 }); | 280 }); |
OLD | NEW |