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

Unified Diff: chrome/browser/resources/ntp_search/tile_page.js

Issue 11445009: NTP5: Reuse insertion/removal animations for Apps. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Addressing Dan's comment Created 8 years 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/resources/ntp_search/tile_page.js
diff --git a/chrome/browser/resources/ntp_search/tile_page.js b/chrome/browser/resources/ntp_search/tile_page.js
index a55d612a4a0345ef52d5c706995104da9c04df33..48b71b6012a2bbb813703c45cf0625c80a874bdb 100644
--- a/chrome/browser/resources/ntp_search/tile_page.js
+++ b/chrome/browser/resources/ntp_search/tile_page.js
@@ -480,10 +480,15 @@ cr.define('ntp', function() {
* number of tiles has changed, and finally will call |updateTiles_| which
* will in turn render the individual tiles.
* @param {Array} dataList The array of data.
+ * @param {boolean=} opt_create Whether to create tiles.
*/
- setDataList: function(dataList) {
+ setDataList: function(dataList, opt_create) {
this.dataList_ = dataList.slice(0, this.config.maxTileCount);
+ opt_create = typeof opt_create == 'undefined' ? true : opt_create;
+ if (!opt_create)
Dan Beam 2012/12/05 18:40:44 why isn't this simply 2 methods? `set dataList` an
pedro (no code reviews) 2012/12/05 20:03:55 For simplicity reasons, I'm trying to share as muc
Dan Beam 2012/12/05 20:05:54 If only I had a $1 for every time I heard that ;)
+ return;
+
var dataListLength = this.dataList_.length;
var tileCount = this.tileCount;
// Create or remove tiles if necessary.
@@ -846,7 +851,10 @@ cr.define('ntp', function() {
var tileBeingRestored = createTile(this, restoredData);
tileCells[index].appendChild(tileBeingRestored);
- var extraTile = extraCell.firstChild;
+ if (this.config.scrollable)
+ this.content_.scrollTop = tileCells[index].offsetTop;
+
+ var extraTile = extraCell && extraCell.firstChild;
Dan Beam 2012/12/05 18:40:44 IMO, these are slightly easier to understand for C
pedro (no code reviews) 2012/12/05 20:03:55 Done.
this.executeRepositioningAnimation_(tileBeingRestored, extraTile,
repositioningStartIndex, repositioningEndIndex, false);
@@ -947,7 +955,8 @@ cr.define('ntp', function() {
// Alternate the visualization of the target and extra tiles.
fadeTile(targetTile, !isRemoving);
- fadeTile(extraTile, isRemoving);
+ if (extraTile)
+ fadeTile(extraTile, isRemoving);
// Move tiles to the new position.
var tiles = this.tiles_;
@@ -982,7 +991,9 @@ cr.define('ntp', function() {
var tile = tiles[i];
this.resetTilePosition_(tile);
tile.style.zIndex = '';
- tileCells[i + positionDiff].assign(tile);
+ var tileCell = tileCells[i + positionDiff];
+ if (tileCell)
+ tileCell.assign(tile);
}
},

Powered by Google App Engine
This is Rietveld 408576698