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

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

Issue 8382010: Some fixups for app notifications: (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 9 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 | 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 cr.define('ntp4', function() { 5 cr.define('ntp4', function() {
6 'use strict'; 6 'use strict';
7 7
8 var localStrings = new LocalStrings; 8 var localStrings = new LocalStrings;
9 9
10 var APP_LAUNCH = { 10 var APP_LAUNCH = {
(...skipping 283 matching lines...) Expand 10 before | Expand all | Expand 10 after
294 this.appImgSrc_ = null; 294 this.appImgSrc_ = null;
295 } 295 }
296 this.classList.remove('icon-loading'); 296 this.classList.remove('icon-loading');
297 }, 297 },
298 298
299 // Shows a notification text below the app icon and stuffs the attributes 299 // Shows a notification text below the app icon and stuffs the attributes
300 // necessary to show the bubble when the user clicks on the notification 300 // necessary to show the bubble when the user clicks on the notification
301 // text. 301 // text.
302 setupNotification_: function(notification) { 302 setupNotification_: function(notification) {
303 // Remove the old notification from this node (if any). 303 // Remove the old notification from this node (if any).
304 if (this.appNotification_) 304 if (this.appNotification_ && this.appNotification_.parentNode)
305 this.appNotification_.parentNode.removeChild(this.appNotification_); 305 this.appNotification_.parentNode.removeChild(this.appNotification_);
306 306
307 if (notification) { 307 if (notification) {
308 // Add a new notification to this node. 308 // Add a new notification to this node.
309 var appNotification = this.ownerDocument.createElement('span'); 309 var appNotification = this.ownerDocument.createElement('span');
310 appNotification.className = 'app-notification'; 310 appNotification.className = 'app-notification';
311 appNotification.textContent = notification['title']; 311 appNotification.textContent = notification['title'];
312 appNotification.addEventListener('click', 312 appNotification.addEventListener('click',
313 this.onNotificationClick_.bind(this)); 313 this.onNotificationClick_.bind(this));
314 appNotification.notificationTitle = notification['title']; 314 appNotification.notificationTitle = notification['title'];
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after
448 messageDiv.textContent = message; 448 messageDiv.textContent = message;
449 container.appendChild(messageDiv); 449 container.appendChild(messageDiv);
450 if (link && linkMessage) { 450 if (link && linkMessage) {
451 var anchor = this.ownerDocument.createElement('a'); 451 var anchor = this.ownerDocument.createElement('a');
452 anchor.href = link; 452 anchor.href = link;
453 anchor.textContent = linkMessage; 453 anchor.textContent = linkMessage;
454 container.appendChild(anchor); 454 container.appendChild(anchor);
455 } 455 }
456 456
457 var infoBubble = new cr.ui.Bubble; 457 var infoBubble = new cr.ui.Bubble;
458 infoBubble.appId = this.appData_.id;
458 infoBubble.anchorNode = e.target; 459 infoBubble.anchorNode = e.target;
459 infoBubble.content = container; 460 infoBubble.content = container;
461 infoBubble.handleCloseEvent = function() {
462 chrome.send('closeNotification', [this.appId]);
463 this.hide();
464 };
460 infoBubble.show(); 465 infoBubble.show();
461 }, 466 },
462 467
463 /** 468 /**
464 * Adds a node to the list of targets that will launch the app. This list 469 * Adds a node to the list of targets that will launch the app. This list
465 * is also used in onMousedown to determine whether the app contents should 470 * is also used in onMousedown to determine whether the app contents should
466 * be shown as active (if we don't do this, then clicking anywhere in 471 * be shown as active (if we don't do this, then clicking anywhere in
467 * appContents, even a part that is outside the ideally clickable region, 472 * appContents, even a part that is outside the ideally clickable region,
468 * will cause the app icon to look active). 473 * will cause the app icon to look active).
469 * @param {HTMLElement} node The node that should be clickable. 474 * @param {HTMLElement} node The node that should be clickable.
(...skipping 321 matching lines...) Expand 10 before | Expand all | Expand 10 after
791 appNotificationChanged: appNotificationChanged, 796 appNotificationChanged: appNotificationChanged,
792 AppsPage: AppsPage, 797 AppsPage: AppsPage,
793 launchAppAfterEnable: launchAppAfterEnable, 798 launchAppAfterEnable: launchAppAfterEnable,
794 }; 799 };
795 }); 800 });
796 801
797 // TODO(estade): update the content handlers to use ntp namespace instead of 802 // TODO(estade): update the content handlers to use ntp namespace instead of
798 // making these global. 803 // making these global.
799 var appNotificationChanged = ntp4.appNotificationChanged; 804 var appNotificationChanged = ntp4.appNotificationChanged;
800 var launchAppAfterEnable = ntp4.launchAppAfterEnable; 805 var launchAppAfterEnable = ntp4.launchAppAfterEnable;
OLDNEW
« no previous file with comments | « chrome/browser/extensions/extension_app_api.cc ('k') | chrome/browser/ui/webui/ntp/app_launcher_handler.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698