web: per-view max depth

This commit is contained in:
William Casarin 2022-11-19 12:32:35 -08:00
parent efb931163d
commit 85eae88724
2 changed files with 11 additions and 3 deletions

View file

@ -64,7 +64,10 @@ function init_home_model() {
...init_timeline('explore'), ...init_timeline('explore'),
seen: new Set(), seen: new Set(),
}, },
notifications: init_timeline('notifications'), notifications: {
...init_timeline('notifications'),
max_depth: 1,
},
profile: init_timeline('profile'), profile: init_timeline('profile'),
thread: init_timeline('thread'), thread: init_timeline('thread'),
}, },
@ -916,10 +919,15 @@ function get_thread_root_id(damus, id)
return ev.refs && ev.refs.root return ev.refs && ev.refs.root
} }
function get_default_max_depth(damus, view)
{
return view.max_depth || damus.max_depth
}
function get_thread_max_depth(damus, view, root_id) function get_thread_max_depth(damus, view, root_id)
{ {
if (!view.depths[root_id]) if (!view.depths[root_id])
return damus.max_depth return get_default_max_depth(damus, view)
return view.depths[root_id] return view.depths[root_id]
} }

View file

@ -5,7 +5,7 @@
function render_timeline_event(damus, view, ev) function render_timeline_event(damus, view, ev)
{ {
const root_id = get_thread_root_id(damus, ev.id) const root_id = get_thread_root_id(damus, ev.id)
const max_depth = root_id ? get_thread_max_depth(damus, view, root_id) : damus.max_depth const max_depth = root_id ? get_thread_max_depth(damus, view, root_id) : get_default_max_depth(damus, view)
if (ev.refs && ev.refs.root && view.expanded.has(ev.refs.root)) if (ev.refs && ev.refs.root && view.expanded.has(ev.refs.root))
max_depth = null max_depth = null