bufferline: create and append prefix element

Diminish watcher count in the template by removing ng-repeat.
l-merge-prefix
David Cormier 11 years ago committed by Lorenz Hübschle-Schneider
parent 00953a7115
commit 626211b1af
  1. 2
      directives/bufferline.html
  2. 13
      js/glowingbear.js

@ -3,7 +3,7 @@
<span class="cof-chat_time cob-chat_time coa-chat_time" bo-text="bufferline.date|date:'HH'"></span><span class="cof-chat_time_delimiters cob-chat_time_delimiters coa-chat_time_delimiters">:</span><span class="cof-chat_time cob-chat_time coa-chat_time" bo-text="bufferline.date|date:'mm'"></span><span class="seconds"><span class="cof-chat_time_delimiters cob-chat_time_delimiters coa-chat_time_delimiters">:</span><span class="cof-chat_time cob-chat_time coa-chat_time" bo-text="bufferline.date|date:'ss'"></span></span>
</span>
</td>
<td class="prefix"><a ng-click="addMention(bufferline.prefix)"><span ng-repeat="part in bufferline.prefix" bo-class="part.classes" bo-html="part.text"></span></a></td>
<td class="prefix"></td>
<td class="message">
<div ng-repeat="metadata in bufferline.metadata" plugin data="metadata"></div>
<span ng-repeat="part in bufferline.content" class="text" bo-class="part.classes" bo-html="part.text|irclinky:'_blank'"></span>

@ -1245,9 +1245,14 @@ weechat.directive('bufferLine', function() {
link: {
pre: function preLink(scope, iElement, iAttrs, controller) {
for (var part in scope.bufferline.prefix) {
var prefix = "";
for (var partNum in scope.bufferline.prefix) {
var part = scope.bufferline.prefix[partNum];
prefix = angular.element("<span>" + part.text + "</span>");
for (var classNum in part.classes) {
prefix.addClass(part.classes[classNum]);
}
iElement.find('td.prefix').append(prefix);
}
}
},
@ -1255,7 +1260,7 @@ weechat.directive('bufferLine', function() {
controller: function($scope) {
}
}
};
});
weechat.directive('inputBar', function() {

Loading…
Cancel
Save