Support clearing of buffer lines with command /c or /clear
This commit is contained in:
parent
9f6f598f40
commit
f21cf4c046
2 changed files with 26 additions and 2 deletions
|
@ -427,6 +427,7 @@ function($rootScope,
|
|||
|
||||
|
||||
var fetchMoreLines = function(numLines) {
|
||||
$log.debug('Fetching ', numLines, ' lines');
|
||||
var buffer = models.getActiveBuffer();
|
||||
if (numLines === undefined) {
|
||||
// Math.max(undefined, *) = NaN -> need a number here
|
||||
|
@ -506,7 +507,7 @@ weechat.controller('WeechatCtrl', ['$rootScope', '$scope', '$store', '$timeout',
|
|||
q.push(scope.$$nextSibling);
|
||||
}
|
||||
}
|
||||
console.log(watchers);
|
||||
$log.debug(watchers);
|
||||
};
|
||||
|
||||
|
||||
|
@ -1208,6 +1209,7 @@ weechat.directive('inputBar', function() {
|
|||
controller: function($rootScope,
|
||||
$scope,
|
||||
$element,
|
||||
$log,
|
||||
connection,
|
||||
models) {
|
||||
|
||||
|
@ -1251,11 +1253,23 @@ weechat.directive('inputBar', function() {
|
|||
$scope.sendMessage = function() {
|
||||
|
||||
var input = $scope.getInputNode();
|
||||
models.getActiveBuffer().addToHistory(input.value); // log to buffer history
|
||||
var ab = models.getActiveBuffer();
|
||||
|
||||
// log to buffer history
|
||||
ab.addToHistory(input.value);
|
||||
|
||||
// Split the command into multiple commands based on line breaks
|
||||
_.each($scope.command.split(/\r?\n/), function(line) {
|
||||
connection.sendMessage(line);
|
||||
});
|
||||
|
||||
// Check for /clear command
|
||||
if ($scope.command === '/clear' || $scope.command === '/c') {
|
||||
$log.debug('Clearing lines');
|
||||
ab.clear();
|
||||
}
|
||||
|
||||
// Empty the input after it's sent
|
||||
input.value = '';
|
||||
};
|
||||
|
||||
|
|
10
js/models.js
10
js/models.js
|
@ -19,6 +19,7 @@ models.service('models', ['$rootScope', '$filter', function($rootScope, $filter)
|
|||
var notify = 3; // Default 3 == message
|
||||
var lines = [];
|
||||
var requestedLines = 0;
|
||||
var allLinesFetched = false;
|
||||
var nicklist = {};
|
||||
var history = [];
|
||||
var historyPos = 0;
|
||||
|
@ -197,6 +198,14 @@ models.service('models', ['$rootScope', '$filter', function($rootScope, $filter)
|
|||
return nicklist.hasOwnProperty('root');
|
||||
};
|
||||
|
||||
/* Clear all our buffer lines */
|
||||
var clear = function() {
|
||||
while(lines.length > 0) {
|
||||
lines.pop();
|
||||
}
|
||||
requestedLines = 0;
|
||||
};
|
||||
|
||||
return {
|
||||
id: pointer,
|
||||
fullName: fullName,
|
||||
|
@ -204,6 +213,7 @@ models.service('models', ['$rootScope', '$filter', function($rootScope, $filter)
|
|||
number: number,
|
||||
title: title,
|
||||
lines: lines,
|
||||
clear: clear,
|
||||
requestedLines: requestedLines,
|
||||
addLine: addLine,
|
||||
lastSeen: lastSeen,
|
||||
|
|
Loading…
Reference in a new issue