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 7787014: ntp4: fix positioning of notification bar (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 years, 3 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
« no previous file with comments | « chrome/browser/resources/ntp4/new_tab.html ('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) 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 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
49 */ 49 */
50 var bookmarksPage; 50 var bookmarksPage;
51 51
52 /** 52 /**
53 * The 'dots-list' element. 53 * The 'dots-list' element.
54 * @type {!Element|undefined} 54 * @type {!Element|undefined}
55 */ 55 */
56 var dotList; 56 var dotList;
57 57
58 /** 58 /**
59 * The 'notification-container' element.
60 * @type {!Element|undefined}
61 */
62 var notificationContainer;
63
64 /**
59 * The left and right paging buttons. 65 * The left and right paging buttons.
60 * @type {!Element|undefined} 66 * @type {!Element|undefined}
61 */ 67 */
62 var pageSwitcherStart; 68 var pageSwitcherStart;
63 var pageSwitcherEnd; 69 var pageSwitcherEnd;
64 70
65 /** 71 /**
66 * The 'trash' element. Note that technically this is unnecessary, 72 * The 'trash' element. Note that technically this is unnecessary,
67 * JavaScript creates the object for us based on the id. But I don't want 73 * JavaScript creates the object for us based on the id. But I don't want
68 * to rely on the ID being the same, and JSCompiler doesn't know about it. 74 * to rely on the ID being the same, and JSCompiler doesn't know about it.
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
148 }, true); 154 }, true);
149 155
150 tilePages = pageList.getElementsByClassName('tile-page'); 156 tilePages = pageList.getElementsByClassName('tile-page');
151 appsPages = pageList.getElementsByClassName('apps-page'); 157 appsPages = pageList.getElementsByClassName('apps-page');
152 158
153 pageSwitcherStart = getRequiredElement('page-switcher-start'); 159 pageSwitcherStart = getRequiredElement('page-switcher-start');
154 ntp4.initializePageSwitcher(pageSwitcherStart); 160 ntp4.initializePageSwitcher(pageSwitcherStart);
155 pageSwitcherEnd = getRequiredElement('page-switcher-end'); 161 pageSwitcherEnd = getRequiredElement('page-switcher-end');
156 ntp4.initializePageSwitcher(pageSwitcherEnd); 162 ntp4.initializePageSwitcher(pageSwitcherEnd);
157 163
164 notificationContainer = getRequiredElement('notification-container');
165 notificationContainer.addEventListener(
166 'webkitTransitionEnd', onNotificationTransitionEnd);
167
158 // Initialize the cardSlider without any cards at the moment 168 // Initialize the cardSlider without any cards at the moment
159 var sliderFrame = getRequiredElement('card-slider-frame'); 169 var sliderFrame = getRequiredElement('card-slider-frame');
160 cardSlider = new CardSlider(sliderFrame, pageList, sliderFrame.offsetWidth); 170 cardSlider = new CardSlider(sliderFrame, pageList, sliderFrame.offsetWidth);
161 cardSlider.initialize(); 171 cardSlider.initialize();
162 172
163 // Ensure the slider is resized appropriately with the window 173 // Ensure the slider is resized appropriately with the window
164 window.addEventListener('resize', function() { 174 window.addEventListener('resize', function() {
165 cardSlider.resize(sliderFrame.offsetWidth); 175 cardSlider.resize(sliderFrame.offsetWidth);
166 updatePageSwitchers(); 176 updatePageSwitchers();
167 }); 177 });
(...skipping 536 matching lines...) Expand 10 before | Expand all | Expand 10 after
704 linksBin.appendChild(link); 714 linksBin.appendChild(link);
705 } 715 }
706 716
707 document.querySelector('#notification button').onclick = function(e) { 717 document.querySelector('#notification button').onclick = function(e) {
708 if (opt_closeHandler) 718 if (opt_closeHandler)
709 opt_closeHandler(); 719 opt_closeHandler();
710 hideNotification(); 720 hideNotification();
711 }; 721 };
712 722
713 var timeout = opt_timeout || 10000; 723 var timeout = opt_timeout || 10000;
714 $('notification').classList.remove('inactive'); 724 notificationContainer.hidden = false;
725 notificationContainer.classList.remove('inactive');
715 notificationTimeout_ = window.setTimeout(hideNotification, timeout); 726 notificationTimeout_ = window.setTimeout(hideNotification, timeout);
716 } 727 }
717 728
718 /** 729 /**
719 * Hide the notification bubble. 730 * Hide the notification bubble.
720 */ 731 */
721 function hideNotification() { 732 function hideNotification() {
722 $('notification').classList.add('inactive'); 733 notificationContainer.classList.add('inactive');
734 }
735
736 /**
737 * When done fading out, set hidden to true so the notification can't be
738 * tabbed to or clicked.
739 */
740 function onNotificationTransitionEnd(e) {
741 if (notificationContainer.classList.contains('inactive'));
742 notificationContainer.hidden = true;
723 } 743 }
724 744
725 function setRecentlyClosedTabs(dataItems) { 745 function setRecentlyClosedTabs(dataItems) {
726 $('recently-closed-menu-button').dataItems = dataItems; 746 $('recently-closed-menu-button').dataItems = dataItems;
727 } 747 }
728 748
729 function setMostVisitedPages(data, hasBlacklistedUrls) { 749 function setMostVisitedPages(data, hasBlacklistedUrls) {
730 mostVisitedPage.data = data; 750 mostVisitedPage.data = data;
731 } 751 }
732 752
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
833 var assert = ntp4.assert; 853 var assert = ntp4.assert;
834 var getAppsCallback = ntp4.getAppsCallback; 854 var getAppsCallback = ntp4.getAppsCallback;
835 var appsPrefChangeCallback = ntp4.appsPrefChangeCallback; 855 var appsPrefChangeCallback = ntp4.appsPrefChangeCallback;
836 var themeChanged = ntp4.themeChanged; 856 var themeChanged = ntp4.themeChanged;
837 var recentlyClosedTabs = ntp4.setRecentlyClosedTabs; 857 var recentlyClosedTabs = ntp4.setRecentlyClosedTabs;
838 var setMostVisitedPages = ntp4.setMostVisitedPages; 858 var setMostVisitedPages = ntp4.setMostVisitedPages;
839 859
840 document.addEventListener('DOMContentLoaded', ntp4.initialize); 860 document.addEventListener('DOMContentLoaded', ntp4.initialize);
841 window.addEventListener('online', ntp4.updateOfflineEnabledApps); 861 window.addEventListener('online', ntp4.updateOfflineEnabledApps);
842 window.addEventListener('offline', ntp4.updateOfflineEnabledApps); 862 window.addEventListener('offline', ntp4.updateOfflineEnabledApps);
OLDNEW
« no previous file with comments | « chrome/browser/resources/ntp4/new_tab.html ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698