| 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 /** | 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 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 106 'webkitTransitionEnd', onNotificationTransitionEnd); | 106 'webkitTransitionEnd', onNotificationTransitionEnd); |
| 107 | 107 |
| 108 cr.ui.decorate($('recently-closed-menu-button'), ntp4.RecentMenuButton); | 108 cr.ui.decorate($('recently-closed-menu-button'), ntp4.RecentMenuButton); |
| 109 chrome.send('getRecentlyClosedTabs'); | 109 chrome.send('getRecentlyClosedTabs'); |
| 110 | 110 |
| 111 newTabView.appendTilePage(new ntp4.MostVisitedPage(), | 111 newTabView.appendTilePage(new ntp4.MostVisitedPage(), |
| 112 localStrings.getString('mostvisited'), | 112 localStrings.getString('mostvisited'), |
| 113 false); | 113 false); |
| 114 chrome.send('getMostVisited'); | 114 chrome.send('getMostVisited'); |
| 115 | 115 |
| 116 if (templateData.isSuggestionsPageEnabled) { |
| 117 var suggestions_script = document.createElement('script'); |
| 118 suggestions_script.src = 'suggestions_page.js'; |
| 119 suggestions_script.onload = function() { |
| 120 newTabView.appendTilePage(new ntp4.SuggestionsPage(), |
| 121 localStrings.getString('suggestions'), |
| 122 false, |
| 123 (newTabView.appsPages.length > 0) ? |
| 124 newTabView.appsPages[0] : null); |
| 125 chrome.send('getSuggestions'); |
| 126 }; |
| 127 document.querySelector('head').appendChild(suggestions_script); |
| 128 } |
| 129 |
| 116 var webstoreLink = localStrings.getString('webStoreLink'); | 130 var webstoreLink = localStrings.getString('webStoreLink'); |
| 117 if (templateData.isWebStoreExperimentEnabled) { | 131 if (templateData.isWebStoreExperimentEnabled) { |
| 118 var url = appendParam(webstoreLink, 'utm_source', 'chrome-ntp-launcher'); | 132 var url = appendParam(webstoreLink, 'utm_source', 'chrome-ntp-launcher'); |
| 119 $('chrome-web-store-href').href = url; | 133 $('chrome-web-store-href').href = url; |
| 120 $('chrome-web-store-href').addEventListener('click', | 134 $('chrome-web-store-href').addEventListener('click', |
| 121 onChromeWebStoreButtonClick); | 135 onChromeWebStoreButtonClick); |
| 122 | 136 |
| 123 $('footer-content').classList.add('enable-cws-experiment'); | 137 $('footer-content').classList.add('enable-cws-experiment'); |
| 124 } | 138 } |
| 125 | 139 |
| (...skipping 292 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 418 | 432 |
| 419 function setRecentlyClosedTabs(dataItems) { | 433 function setRecentlyClosedTabs(dataItems) { |
| 420 $('recently-closed-menu-button').dataItems = dataItems; | 434 $('recently-closed-menu-button').dataItems = dataItems; |
| 421 } | 435 } |
| 422 | 436 |
| 423 function setMostVisitedPages(data, hasBlacklistedUrls) { | 437 function setMostVisitedPages(data, hasBlacklistedUrls) { |
| 424 newTabView.mostVisitedPage.data = data; | 438 newTabView.mostVisitedPage.data = data; |
| 425 cr.dispatchSimpleEvent(document, 'sectionready', true, true); | 439 cr.dispatchSimpleEvent(document, 'sectionready', true, true); |
| 426 } | 440 } |
| 427 | 441 |
| 442 function setSuggestionsPages(data, hasBlacklistedUrls) { |
| 443 newTabView.suggestionsPage.data = data; |
| 444 } |
| 445 |
| 428 /** | 446 /** |
| 429 * Set the dominant color for a node. This will be called in response to | 447 * Set the dominant color for a node. This will be called in response to |
| 430 * getFaviconDominantColor. The node represented by |id| better have a setter | 448 * getFaviconDominantColor. The node represented by |id| better have a setter |
| 431 * for stripeColor. | 449 * for stripeColor. |
| 432 * @param {string} id The ID of a node. | 450 * @param {string} id The ID of a node. |
| 433 * @param {string} color The color represented as a CSS string. | 451 * @param {string} color The color represented as a CSS string. |
| 434 */ | 452 */ |
| 435 function setStripeColor(id, color) { | 453 function setStripeColor(id, color) { |
| 436 var node = $(id); | 454 var node = $(id); |
| 437 if (node) | 455 if (node) |
| (...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 533 appsPrefChangeCallback: appsPrefChangeCallback, | 551 appsPrefChangeCallback: appsPrefChangeCallback, |
| 534 enterRearrangeMode: enterRearrangeMode, | 552 enterRearrangeMode: enterRearrangeMode, |
| 535 getAppsCallback: getAppsCallback, | 553 getAppsCallback: getAppsCallback, |
| 536 getAppsPageIndex: getAppsPageIndex, | 554 getAppsPageIndex: getAppsPageIndex, |
| 537 getCardSlider: getCardSlider, | 555 getCardSlider: getCardSlider, |
| 538 onLoad: onLoad, | 556 onLoad: onLoad, |
| 539 leaveRearrangeMode: leaveRearrangeMode, | 557 leaveRearrangeMode: leaveRearrangeMode, |
| 540 saveAppPageName: saveAppPageName, | 558 saveAppPageName: saveAppPageName, |
| 541 setAppToBeHighlighted: setAppToBeHighlighted, | 559 setAppToBeHighlighted: setAppToBeHighlighted, |
| 542 setMostVisitedPages: setMostVisitedPages, | 560 setMostVisitedPages: setMostVisitedPages, |
| 561 setSuggestionsPages: setSuggestionsPages, |
| 543 setRecentlyClosedTabs: setRecentlyClosedTabs, | 562 setRecentlyClosedTabs: setRecentlyClosedTabs, |
| 544 setStripeColor: setStripeColor, | 563 setStripeColor: setStripeColor, |
| 545 showNotification: showNotification, | 564 showNotification: showNotification, |
| 546 themeChanged: themeChanged, | 565 themeChanged: themeChanged, |
| 547 updateLogin: updateLogin | 566 updateLogin: updateLogin |
| 548 }; | 567 }; |
| 549 }); | 568 }); |
| 550 | 569 |
| 551 // publish ntp globals | 570 // publish ntp globals |
| 552 // TODO(estade): update the content handlers to use ntp namespace instead of | 571 // TODO(estade): update the content handlers to use ntp namespace instead of |
| 553 // making these global. | 572 // making these global. |
| 554 var getAppsCallback = ntp4.getAppsCallback; | 573 var getAppsCallback = ntp4.getAppsCallback; |
| 555 var appsPrefChangeCallback = ntp4.appsPrefChangeCallback; | 574 var appsPrefChangeCallback = ntp4.appsPrefChangeCallback; |
| 556 var themeChanged = ntp4.themeChanged; | 575 var themeChanged = ntp4.themeChanged; |
| 557 var recentlyClosedTabs = ntp4.setRecentlyClosedTabs; | 576 var recentlyClosedTabs = ntp4.setRecentlyClosedTabs; |
| 558 var setMostVisitedPages = ntp4.setMostVisitedPages; | 577 var setMostVisitedPages = ntp4.setMostVisitedPages; |
| 559 var updateLogin = ntp4.updateLogin; | 578 var updateLogin = ntp4.updateLogin; |
| 560 | 579 |
| 561 document.addEventListener('DOMContentLoaded', ntp4.onLoad); | 580 document.addEventListener('DOMContentLoaded', ntp4.onLoad); |
| OLD | NEW |