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

Side by Side Diff: chrome/browser/resources/ntp/apps.js

Issue 3771007: Scroll new apps into view when they are installed. (Closed)
Patch Set: different way to adjust spacing Created 10 years, 2 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 | « chrome/browser/resources/ntp/apps.css ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 var MAX_APPS_PER_ROW = 6; 5 var MAX_APPS_PER_ROW = 6;
6 6
7 // We offset the webstore icon horizontally during promo and it only fits if 7 // We offset the webstore icon horizontally during promo and it only fits if
8 // there are two columns of space. Since one column is always reserved for the 8 // there are two columns of space. Since one column is always reserved for the
9 // webstore icon, we only need to subtract one from the normal maximum. 9 // webstore icon, we only need to subtract one from the normal maximum.
10 var MAX_PROMO_APPS = MAX_APPS_PER_ROW - 1; 10 var MAX_PROMO_APPS = MAX_APPS_PER_ROW - 1;
(...skipping 226 matching lines...) Expand 10 before | Expand all | Expand 10 after
237 createElement: function(app) { 237 createElement: function(app) {
238 var div = createElement(app); 238 var div = createElement(app);
239 var a = div.firstChild; 239 var a = div.firstChild;
240 240
241 a.onclick = handleClick; 241 a.onclick = handleClick;
242 a.style.backgroundImage = url(app['icon_big']); 242 a.style.backgroundImage = url(app['icon_big']);
243 if (hashParams['app-id'] == app['id']) { 243 if (hashParams['app-id'] == app['id']) {
244 div.setAttribute('new', 'new'); 244 div.setAttribute('new', 'new');
245 // Delay changing the attribute a bit to let the page settle down a bit. 245 // Delay changing the attribute a bit to let the page settle down a bit.
246 setTimeout(function() { 246 setTimeout(function() {
247 // Make sure the new icon is scrolled into view.
248 document.body.scrollTop = document.body.scrollHeight;
249
247 // This will trigger the 'bounce' animation defined in apps.css. 250 // This will trigger the 'bounce' animation defined in apps.css.
248 div.setAttribute('new', 'installed'); 251 div.setAttribute('new', 'installed');
249 }, 500); 252 }, 500);
250 div.addEventListener('webkitAnimationEnd', function(e) { 253 div.addEventListener('webkitAnimationEnd', function(e) {
251 div.removeAttribute('new'); 254 div.removeAttribute('new');
252 255
253 // If we get new data (eg because something installs in another tab, 256 // If we get new data (eg because something installs in another tab,
254 // or because we uninstall something here), don't run the install 257 // or because we uninstall something here), don't run the install
255 // animation again. 258 // animation again.
256 document.documentElement.setAttribute("install-animation-enabled", 259 document.documentElement.setAttribute("install-animation-enabled",
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
306 var elm = createElement({ 309 var elm = createElement({
307 'id': 'web-store-entry', 310 'id': 'web-store-entry',
308 'name': localStrings.getString('web_store_title'), 311 'name': localStrings.getString('web_store_title'),
309 'launch_url': localStrings.getString('web_store_url') 312 'launch_url': localStrings.getString('web_store_url')
310 }); 313 });
311 elm.setAttribute('app-id', 'web-store-entry'); 314 elm.setAttribute('app-id', 'web-store-entry');
312 return elm; 315 return elm;
313 } 316 }
314 }; 317 };
315 })(); 318 })();
OLDNEW
« no previous file with comments | « chrome/browser/resources/ntp/apps.css ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698