Chromium Code Reviews| 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 = "chrome://newtab/suggestions_page.js"; | |
|
Evan Stade
2012/02/17 20:07:35
src can just be suggestions_page.js (it's relative
GeorgeY
2012/02/21 23:32:23
Done.
| |
| 119 document.getElementsByTagName('head')[0].appendChild(suggestions_script); | |
|
Evan Stade
2012/02/17 20:07:35
document.querySelector('head')
GeorgeY
2012/02/21 23:32:23
Done.
| |
| 120 } | |
| 121 | |
| 116 if (templateData.isWebStoreExperimentEnabled) { | 122 if (templateData.isWebStoreExperimentEnabled) { |
| 117 var webstoreLink = localStrings.getString('webStoreLink'); | 123 var webstoreLink = localStrings.getString('webStoreLink'); |
| 118 var url = appendParam(webstoreLink, 'utm_source', 'chrome-ntp-launcher'); | 124 var url = appendParam(webstoreLink, 'utm_source', 'chrome-ntp-launcher'); |
| 119 $('chrome-web-store-href').href = url; | 125 $('chrome-web-store-href').href = url; |
| 120 | 126 |
| 121 $('chrome-web-store-href').addEventListener('click', | 127 $('chrome-web-store-href').addEventListener('click', |
| 122 onChromeWebStoreButtonClick); | 128 onChromeWebStoreButtonClick); |
| 123 | 129 |
| 124 $('footer-content').classList.add('enable-cws-experiment'); | 130 $('footer-content').classList.add('enable-cws-experiment'); |
| 125 } | 131 } |
| (...skipping 288 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 414 | 420 |
| 415 function setRecentlyClosedTabs(dataItems) { | 421 function setRecentlyClosedTabs(dataItems) { |
| 416 $('recently-closed-menu-button').dataItems = dataItems; | 422 $('recently-closed-menu-button').dataItems = dataItems; |
| 417 } | 423 } |
| 418 | 424 |
| 419 function setMostVisitedPages(data, hasBlacklistedUrls) { | 425 function setMostVisitedPages(data, hasBlacklistedUrls) { |
| 420 newTabView.mostVisitedPage.data = data; | 426 newTabView.mostVisitedPage.data = data; |
| 421 cr.dispatchSimpleEvent(document, 'sectionready', true, true); | 427 cr.dispatchSimpleEvent(document, 'sectionready', true, true); |
| 422 } | 428 } |
| 423 | 429 |
| 430 function setSuggestionsPages(data, hasBlacklistedUrls) { | |
| 431 newTabView.suggestionsPage.data = data; | |
| 432 } | |
| 433 | |
| 424 /** | 434 /** |
| 425 * Set the dominant color for a node. This will be called in response to | 435 * Set the dominant color for a node. This will be called in response to |
| 426 * getFaviconDominantColor. The node represented by |id| better have a setter | 436 * getFaviconDominantColor. The node represented by |id| better have a setter |
| 427 * for stripeColor. | 437 * for stripeColor. |
| 428 * @param {string} id The ID of a node. | 438 * @param {string} id The ID of a node. |
| 429 * @param {string} color The color represented as a CSS string. | 439 * @param {string} color The color represented as a CSS string. |
| 430 */ | 440 */ |
| 431 function setStripeColor(id, color) { | 441 function setStripeColor(id, color) { |
| 432 var node = $(id); | 442 var node = $(id); |
| 433 if (node) | 443 if (node) |
| (...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 498 } | 508 } |
| 499 | 509 |
| 500 function getAppsPageIndex() { | 510 function getAppsPageIndex() { |
| 501 return newTabView.getAppsPageIndex.apply(newTabView, arguments); | 511 return newTabView.getAppsPageIndex.apply(newTabView, arguments); |
| 502 } | 512 } |
| 503 | 513 |
| 504 function getCardSlider() { | 514 function getCardSlider() { |
| 505 return newTabView.cardSlider; | 515 return newTabView.cardSlider; |
| 506 } | 516 } |
| 507 | 517 |
| 518 function getNewTabView() { | |
| 519 return newTabView; | |
| 520 } | |
| 521 | |
| 508 function leaveRearrangeMode() { | 522 function leaveRearrangeMode() { |
| 509 return newTabView.leaveRearrangeMode.apply(newTabView, arguments); | 523 return newTabView.leaveRearrangeMode.apply(newTabView, arguments); |
| 510 } | 524 } |
| 511 | 525 |
| 512 function saveAppPageName() { | 526 function saveAppPageName() { |
| 513 return newTabView.saveAppPageName.apply(newTabView, arguments); | 527 return newTabView.saveAppPageName.apply(newTabView, arguments); |
| 514 } | 528 } |
| 515 | 529 |
| 516 function setAppToBeHighlighted(appId) { | 530 function setAppToBeHighlighted(appId) { |
| 517 newTabView.highlightAppId = appId; | 531 newTabView.highlightAppId = appId; |
| 518 } | 532 } |
| 519 | 533 |
| 520 // Return an object with all the exports | 534 // Return an object with all the exports |
| 521 return { | 535 return { |
| 522 appAdded: appAdded, | 536 appAdded: appAdded, |
| 523 appRemoved: appRemoved, | 537 appRemoved: appRemoved, |
| 524 appsPrefChangeCallback: appsPrefChangeCallback, | 538 appsPrefChangeCallback: appsPrefChangeCallback, |
| 525 enterRearrangeMode: enterRearrangeMode, | 539 enterRearrangeMode: enterRearrangeMode, |
| 526 getAppsCallback: getAppsCallback, | 540 getAppsCallback: getAppsCallback, |
| 527 getAppsPageIndex: getAppsPageIndex, | 541 getAppsPageIndex: getAppsPageIndex, |
| 528 getCardSlider: getCardSlider, | 542 getCardSlider: getCardSlider, |
| 543 getNewTabView: getNewTabView, | |
| 529 onLoad: onLoad, | 544 onLoad: onLoad, |
| 530 leaveRearrangeMode: leaveRearrangeMode, | 545 leaveRearrangeMode: leaveRearrangeMode, |
| 546 localStrings: localStrings, | |
|
Evan Stade
2012/02/17 20:07:35
don't export. Just create new LocalStrings whereve
GeorgeY
2012/02/21 23:32:23
Done.
| |
| 531 saveAppPageName: saveAppPageName, | 547 saveAppPageName: saveAppPageName, |
| 532 setAppToBeHighlighted: setAppToBeHighlighted, | 548 setAppToBeHighlighted: setAppToBeHighlighted, |
| 533 setMostVisitedPages: setMostVisitedPages, | 549 setMostVisitedPages: setMostVisitedPages, |
| 550 setSuggestionsPages: setSuggestionsPages, | |
| 534 setRecentlyClosedTabs: setRecentlyClosedTabs, | 551 setRecentlyClosedTabs: setRecentlyClosedTabs, |
| 535 setStripeColor: setStripeColor, | 552 setStripeColor: setStripeColor, |
| 536 showNotification: showNotification, | 553 showNotification: showNotification, |
| 537 themeChanged: themeChanged, | 554 themeChanged: themeChanged, |
| 538 updateLogin: updateLogin | 555 updateLogin: updateLogin |
| 539 }; | 556 }; |
| 540 }); | 557 }); |
| 541 | 558 |
| 542 // publish ntp globals | 559 // publish ntp globals |
| 543 // TODO(estade): update the content handlers to use ntp namespace instead of | 560 // TODO(estade): update the content handlers to use ntp namespace instead of |
| 544 // making these global. | 561 // making these global. |
| 545 var getAppsCallback = ntp4.getAppsCallback; | 562 var getAppsCallback = ntp4.getAppsCallback; |
| 546 var appsPrefChangeCallback = ntp4.appsPrefChangeCallback; | 563 var appsPrefChangeCallback = ntp4.appsPrefChangeCallback; |
| 547 var themeChanged = ntp4.themeChanged; | 564 var themeChanged = ntp4.themeChanged; |
| 548 var recentlyClosedTabs = ntp4.setRecentlyClosedTabs; | 565 var recentlyClosedTabs = ntp4.setRecentlyClosedTabs; |
| 549 var setMostVisitedPages = ntp4.setMostVisitedPages; | 566 var setMostVisitedPages = ntp4.setMostVisitedPages; |
| 550 var updateLogin = ntp4.updateLogin; | 567 var updateLogin = ntp4.updateLogin; |
| 551 | 568 |
| 552 document.addEventListener('DOMContentLoaded', ntp4.onLoad); | 569 document.addEventListener('DOMContentLoaded', ntp4.onLoad); |
| OLD | NEW |