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

Side by Side Diff: chrome/browser/resources/ntp4/new_tab.js

Issue 7776001: ntp4: improved app install, try 2 (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix trash change Created 9 years, 4 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 /** 5 /**
6 * @fileoverview New tab page 6 * @fileoverview New tab page
7 * This is the main code for the new tab page used by touch-enabled Chrome 7 * This is the main code for the new tab page used by touch-enabled Chrome
8 * browsers. For now this is still a prototype. 8 * browsers. For now this is still a prototype.
9 */ 9 */
10 10
(...skipping 329 matching lines...) Expand 10 before | Expand all | Expand 10 after
340 340
341 document.documentElement.classList.remove('starting-up'); 341 document.documentElement.classList.remove('starting-up');
342 } 342 }
343 343
344 /** 344 /**
345 * Called by chrome when a new app has been added to chrome. 345 * Called by chrome when a new app has been added to chrome.
346 * @param {Object} app A data structure full of relevant information for the 346 * @param {Object} app A data structure full of relevant information for the
347 * app. 347 * app.
348 */ 348 */
349 function appAdded(app, opt_highlight) { 349 function appAdded(app, opt_highlight) {
350 // If the page is already open when a new app is installed, the hash will 350 if (app.id == highlightAppId) {
351 // be set once again.
352 var appID = getAndClearAppIDHash();
353 if (appID == app.id)
354 opt_highlight = true; 351 opt_highlight = true;
352 highlightAppId = null;
353 }
355 354
356 var pageIndex = app.page_index || 0; 355 var pageIndex = app.page_index || 0;
357 356
358 if (pageIndex >= appsPages.length) { 357 if (pageIndex >= appsPages.length) {
359 while (pageIndex >= appsPages.length) { 358 while (pageIndex >= appsPages.length) {
360 appendAppsPage(new ntp4.AppsPage(), ''); 359 appendAppsPage(new ntp4.AppsPage(), '');
361 } 360 }
362 updateSliderCards(); 361 updateSliderCards();
363 } 362 }
364 363
365 var page = appsPages[pageIndex]; 364 var page = appsPages[pageIndex];
366 if (opt_highlight) 365 page.appendApp(app, opt_highlight);
367 cardSlider.selectCardByValue(page);
368 page.appendApp(app, true);
369 } 366 }
370 367
371 /** 368 /**
369 * Sets that an app should be highlighted if it is added. Called right before
370 * appAdded for new installs.
371 */
372 function setAppToBeHighlighted(appId) {
373 highlightAppId = appId;
Rick Byers 2011/08/29 16:01:00 Should you perhaps assert that highlightAppId is n
Evan Stade 2011/08/29 18:15:16 yea I assume it's possible if unlikely to have a r
Rick Byers 2011/08/29 19:51:12 Yeah, I guess the race potential and highlight-las
374 }
375
376 /**
372 * Called by chrome when an existing app has been removed/uninstalled from 377 * Called by chrome when an existing app has been removed/uninstalled from
373 * chrome. 378 * chrome.
374 * @param {Object} appData A data structure full of relevant information for 379 * @param {Object} appData A data structure full of relevant information for
375 * the app. 380 * the app.
376 */ 381 */
377 function appRemoved(appData) { 382 function appRemoved(appData) {
378 var app = $(appData.id); 383 var app = $(appData.id);
379 assert(app, 'trying to remove an app that doesn\'t exist'); 384 assert(app, 'trying to remove an app that doesn\'t exist');
380 385
381 var tile = findAncestorByClass(app, 'tile'); 386 var tile = findAncestorByClass(app, 'tile');
(...skipping 386 matching lines...) Expand 10 before | Expand all | Expand 10 after
768 appsPrefChangeCallback: appsPrefChangeCallback, 773 appsPrefChangeCallback: appsPrefChangeCallback,
769 assert: assert, 774 assert: assert,
770 enterRearrangeMode: enterRearrangeMode, 775 enterRearrangeMode: enterRearrangeMode,
771 getAppsCallback: getAppsCallback, 776 getAppsCallback: getAppsCallback,
772 getAppsPageIndex: getAppsPageIndex, 777 getAppsPageIndex: getAppsPageIndex,
773 getCardSlider: getCardSlider, 778 getCardSlider: getCardSlider,
774 initialize: initialize, 779 initialize: initialize,
775 isRTL: isRTL, 780 isRTL: isRTL,
776 leaveRearrangeMode: leaveRearrangeMode, 781 leaveRearrangeMode: leaveRearrangeMode,
777 saveAppPageName: saveAppPageName, 782 saveAppPageName: saveAppPageName,
783 setAppToBeHighlighted: setAppToBeHighlighted,
778 setBookmarksData: setBookmarksData, 784 setBookmarksData: setBookmarksData,
779 setMostVisitedPages: setMostVisitedPages, 785 setMostVisitedPages: setMostVisitedPages,
780 setRecentlyClosedTabs: setRecentlyClosedTabs, 786 setRecentlyClosedTabs: setRecentlyClosedTabs,
781 showNotification: showNotification, 787 showNotification: showNotification,
782 themeChanged: themeChanged 788 themeChanged: themeChanged
783 }; 789 };
784 }); 790 });
785 791
786 // publish ntp globals 792 // publish ntp globals
787 // TODO(estade): update the content handlers to use ntp namespace instead of 793 // TODO(estade): update the content handlers to use ntp namespace instead of
788 // making these global. 794 // making these global.
789 var assert = ntp4.assert; 795 var assert = ntp4.assert;
790 var getAppsCallback = ntp4.getAppsCallback; 796 var getAppsCallback = ntp4.getAppsCallback;
791 var appsPrefChangeCallback = ntp4.appsPrefChangeCallback; 797 var appsPrefChangeCallback = ntp4.appsPrefChangeCallback;
792 var themeChanged = ntp4.themeChanged; 798 var themeChanged = ntp4.themeChanged;
793 var recentlyClosedTabs = ntp4.setRecentlyClosedTabs; 799 var recentlyClosedTabs = ntp4.setRecentlyClosedTabs;
794 var setMostVisitedPages = ntp4.setMostVisitedPages; 800 var setMostVisitedPages = ntp4.setMostVisitedPages;
795 801
796 document.addEventListener('DOMContentLoaded', ntp4.initialize); 802 document.addEventListener('DOMContentLoaded', ntp4.initialize);
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698