def update
## let's see you do THIS in python
- @threads = @ts.threads.select { |t| !@hidden_threads[t] && !t.has_label?(:killed) }.sort_by { |t| t.date }.reverse
+ @threads = @ts.threads.select { |t| !@hidden_threads[t] }.sort_by { |t| t.date }.reverse
@size_width = (@threads.map { |t| t.size }.max || 0).num_digits
regen_text
end
end
def load_n_threads_background n=LOAD_MORE_THREAD_NUM, opts={}
- return if @load_thread
- @load_thread = Redwood::reporting_thread do
+ return if @load_thread # todo: wrap in mutex
+ @load_thread = Redwood::reporting_thread do
num = load_n_threads n, opts
opts[:when_done].call(num) if opts[:when_done]
@load_thread = nil
m = builder.call
add_message m
load_thread_for_message m, :load_killed => opts[:load_killed]
- yield @threads.size if block_given?
+ yield size if block_given?
end
end