ui: customizable tabs per column view

This reduces the number of choices the user needs to make. Some of these
filters were redundant anyways. This also saves memory.

Universe: Notes
Notificaitons: Notes & Replies
Everything else: Notes, Notes & Replies

Changelog-Changed: Simplified tab selections on some columns
Fixes: https://github.com/damus-io/notedeck/issues/517
This commit is contained in:
William Casarin
2024-12-19 08:48:07 -08:00
parent cb2330abac
commit 8025be823a
7 changed files with 75 additions and 46 deletions

View File

@@ -6,7 +6,7 @@ use notedeck::{filter::default_limit, FilterState, MuteFun, NoteCache, NoteRef};
use crate::{
multi_subscriber::MultiSubscriber,
notes_holder::NotesHolder,
timeline::{copy_notes_into_timeline, PubkeySource, Timeline, TimelineKind},
timeline::{copy_notes_into_timeline, PubkeySource, Timeline, TimelineKind, TimelineTab},
};
pub enum DisplayName<'a> {
@@ -62,8 +62,11 @@ impl Profile {
notes: Vec<NoteRef>,
is_muted: &MuteFun,
) -> Self {
let mut timeline =
Timeline::new(TimelineKind::profile(source), FilterState::ready(filters));
let mut timeline = Timeline::new(
TimelineKind::profile(source),
FilterState::ready(filters),
TimelineTab::full_tabs(),
);
copy_notes_into_timeline(&mut timeline, txn, ndb, note_cache, notes, is_muted);