|
|
@ -796,7 +796,7 @@ weechat.controller('WeechatCtrl', ['$rootScope', '$scope', '$store', '$timeout', |
|
|
|
// Try to find buffer with notification
|
|
|
|
// Try to find buffer with notification
|
|
|
|
for (i in sortedBuffers) { |
|
|
|
for (i in sortedBuffers) { |
|
|
|
buffer = sortedBuffers[i]; |
|
|
|
buffer = sortedBuffers[i]; |
|
|
|
if (buffer.notification > 0) { |
|
|
|
if (buffer.notification > 0 && !buffer.hidden) { |
|
|
|
$scope.setActiveBuffer(buffer.id); |
|
|
|
$scope.setActiveBuffer(buffer.id); |
|
|
|
return; // return instead of break so that the second for loop isn't executed
|
|
|
|
return; // return instead of break so that the second for loop isn't executed
|
|
|
|
} |
|
|
|
} |
|
|
@ -804,7 +804,7 @@ weechat.controller('WeechatCtrl', ['$rootScope', '$scope', '$store', '$timeout', |
|
|
|
// No notifications, find first buffer with unread lines instead
|
|
|
|
// No notifications, find first buffer with unread lines instead
|
|
|
|
for (i in sortedBuffers) { |
|
|
|
for (i in sortedBuffers) { |
|
|
|
buffer = sortedBuffers[i]; |
|
|
|
buffer = sortedBuffers[i]; |
|
|
|
if (buffer.unread > 0) { |
|
|
|
if (buffer.unread > 0 && !buffer.hidden) { |
|
|
|
$scope.setActiveBuffer(buffer.id); |
|
|
|
$scope.setActiveBuffer(buffer.id); |
|
|
|
return; |
|
|
|
return; |
|
|
|
} |
|
|
|
} |
|
|
@ -819,12 +819,18 @@ weechat.controller('WeechatCtrl', ['$rootScope', '$scope', '$store', '$timeout', |
|
|
|
// direction is +1 for next buffer, -1 for previous buffer
|
|
|
|
// direction is +1 for next buffer, -1 for previous buffer
|
|
|
|
var sortedBuffers = _.sortBy($scope.getBuffers(), $rootScope.predicate); |
|
|
|
var sortedBuffers = _.sortBy($scope.getBuffers(), $rootScope.predicate); |
|
|
|
var activeBuffer = models.getActiveBuffer(); |
|
|
|
var activeBuffer = models.getActiveBuffer(); |
|
|
|
var index = sortedBuffers.indexOf(activeBuffer); |
|
|
|
var index = sortedBuffers.indexOf(activeBuffer) + direction; |
|
|
|
if (index >= 0) { |
|
|
|
var newBuffer; |
|
|
|
var newBuffer = sortedBuffers[index + direction]; |
|
|
|
|
|
|
|
if (newBuffer) { |
|
|
|
// look for next non-hidden buffer
|
|
|
|
$scope.setActiveBuffer(newBuffer.id); |
|
|
|
while (index >= 0 && index < sortedBuffers.length && |
|
|
|
|
|
|
|
(!newBuffer || newBuffer.hidden)) { |
|
|
|
|
|
|
|
newBuffer = sortedBuffers[index]; |
|
|
|
|
|
|
|
index += direction; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (!!newBuffer) { |
|
|
|
|
|
|
|
$scope.setActiveBuffer(newBuffer.id); |
|
|
|
} |
|
|
|
} |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|