mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-05-07 19:35:03 -04:00
implement html5 notifications. (have to be explicitly requested under Config)
This commit is contained in:
parent
48f4497fe9
commit
60245c4f90
4 changed files with 37 additions and 3 deletions
|
@ -137,6 +137,23 @@ angular.module('RoomController', ['ngSanitize'])
|
|||
$scope.$on(eventHandlerService.MSG_EVENT, function(ngEvent, event, isLive) {
|
||||
if (isLive && event.room_id === $scope.room_id) {
|
||||
scrollToBottom();
|
||||
|
||||
if (window.Notification) {
|
||||
// FIXME: we should also notify based on a timer or other heuristics
|
||||
// rather than the window being minimised
|
||||
if (document.hidden) {
|
||||
var notification = new window.Notification(
|
||||
($scope.members[event.user_id].displayname || event.user_id) +
|
||||
" (" + $scope.room_alias + ")",
|
||||
{
|
||||
"body": event.content.body,
|
||||
"icon": $scope.members[event.user_id].avatar_url,
|
||||
});
|
||||
$timeout(function() {
|
||||
notification.close();
|
||||
}, 5 * 1000);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -154,7 +171,7 @@ angular.module('RoomController', ['ngSanitize'])
|
|||
paginate(MESSAGES_PER_PAGINATION);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
var paginate = function(numItems) {
|
||||
// console.log("paginate " + numItems);
|
||||
if ($scope.state.paginating) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue