notedeck

One damus client to rule them all
git clone git://jb55.com/notedeck
Log | Files | Refs | README | LICENSE

commit 4db6f37017dc8e0ec58a7b0b489ee0e494a100d0
parent 6544d43d02b0528080436481ed9ff9b3175fd47c
Author: kernelkind <kernelkind@gmail.com>
Date:   Wed, 16 Jul 2025 13:09:53 -0400

track all timeline related subscriptions in `TimelineSub`

Signed-off-by: kernelkind <kernelkind@gmail.com>

Diffstat:
Mcrates/notedeck_columns/src/timeline/mod.rs | 9+++++----
1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/crates/notedeck_columns/src/timeline/mod.rs b/crates/notedeck_columns/src/timeline/mod.rs @@ -536,7 +536,7 @@ pub fn send_initial_timeline_filter( FilterState::Ready(filter) => { let filter = filter.to_owned(); - let new_filters = filter.into_iter().map(|f| { + let new_filters: Vec<Filter> = filter.into_iter().map(|f| { // limit the size of remote filters let default_limit = filter::default_remote_limit(); let mut lim = f.limit().unwrap_or(default_limit); @@ -567,8 +567,10 @@ pub fn send_initial_timeline_filter( let sub_id = subscriptions::new_sub_id(); subs.subs.insert(sub_id.clone(), SubKind::Initial); - if let Err(err) = relay.subscribe(sub_id, new_filters) { + if let Err(err) = relay.subscribe(sub_id.clone(), new_filters.clone()) { error!("error subscribing: {err}"); + } else { + timeline.subscription.force_add_remote(sub_id); } } @@ -756,8 +758,7 @@ pub fn is_timeline_ready( //let ck = &timeline.kind; //let subid = damus.gen_subid(&SubKind::Column(ck.clone())); - let subid = subscriptions::new_sub_id(); - pool.subscribe(subid, filter); + timeline.subscription.try_add_remote(pool, &filter); true } }