web: fix remove event from timeline
This commit is contained in:
parent
4cb4e77e6e
commit
543738aa8e
2 changed files with 25 additions and 17 deletions
|
@ -125,7 +125,7 @@ async function on_pool_eose(relay, sub_id) {
|
||||||
case ids.home:
|
case ids.home:
|
||||||
const events = model_events_arr(model);
|
const events = model_events_arr(model);
|
||||||
// TODO filter out events to friends of friends
|
// TODO filter out events to friends of friends
|
||||||
on_eose_comments(ids, model, events, relay)
|
request_profiles(ids, model, events, relay)
|
||||||
pool.unsubscribe(ids.home, relay);
|
pool.unsubscribe(ids.home, relay);
|
||||||
if (!model.inited) {
|
if (!model.inited) {
|
||||||
model.inited = true;
|
model.inited = true;
|
||||||
|
@ -160,19 +160,19 @@ function on_pool_event(relay, sub_id, ev) {
|
||||||
model_process_event(model, ev);
|
model_process_event(model, ev);
|
||||||
}
|
}
|
||||||
|
|
||||||
function on_eose_profiles(ids, model, relay) {
|
//function on_eose_profiles(ids, model, relay) {
|
||||||
const prefix = difficulty_to_prefix(model.pow);
|
// const prefix = difficulty_to_prefix(model.pow);
|
||||||
const fofs = Array.from(model.contacts.friend_of_friends);
|
// const fofs = Array.from(model.contacts.friend_of_friends);
|
||||||
let pow_filter = {kinds: STANDARD_KINDS, limit: 50};
|
// let pow_filter = {kinds: STANDARD_KINDS, limit: 50};
|
||||||
if (model.pow > 0)
|
// if (model.pow > 0)
|
||||||
pow_filter.ids = [ prefix ];
|
// pow_filter.ids = [ prefix ];
|
||||||
let explore_filters = [ pow_filter ];
|
// let explore_filters = [ pow_filter ];
|
||||||
if (fofs.length > 0)
|
// if (fofs.length > 0)
|
||||||
explore_filters.push({kinds: STANDARD_KINDS, authors: fofs, limit: 50});
|
// explore_filters.push({kinds: STANDARD_KINDS, authors: fofs, limit: 50});
|
||||||
model.pool.subscribe(ids.explore, explore_filters, relay);
|
// model.pool.subscribe(ids.explore, explore_filters, relay);
|
||||||
}
|
//}
|
||||||
|
|
||||||
function on_eose_comments(ids, model, events, relay) {
|
function request_profiles(ids, model, events, relay) {
|
||||||
const pubkeys = events.reduce((s, ev) => {
|
const pubkeys = events.reduce((s, ev) => {
|
||||||
s.add(ev.pubkey);
|
s.add(ev.pubkey);
|
||||||
for (const tag of ev.tags) {
|
for (const tag of ev.tags) {
|
||||||
|
|
|
@ -90,12 +90,20 @@ function view_timeline_update(model) {
|
||||||
const left_overs = [];
|
const left_overs = [];
|
||||||
while (model.invalidated.length > 0) {
|
while (model.invalidated.length > 0) {
|
||||||
var evid = model.invalidated.pop();
|
var evid = model.invalidated.pop();
|
||||||
if (model.elements[evid])
|
|
||||||
|
// Remove deleted events first
|
||||||
|
if (model_is_event_deleted(model, evid)) {
|
||||||
|
let x = model.elements[evid];
|
||||||
|
if (x && x.parentElement) {
|
||||||
|
x.parentElement.removeChild(x);
|
||||||
|
delete model.elements[evid];
|
||||||
|
}
|
||||||
continue;
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Skip non-renderables and already created
|
||||||
var ev = model.all_events[evid];
|
var ev = model.all_events[evid];
|
||||||
if (!event_is_renderable(ev) || model_is_event_deleted(model, evid)) {
|
if (!event_is_renderable(ev) || model.elements[evid]) {
|
||||||
let x = find_node("#ev"+evid, el);
|
|
||||||
if (x) el.removeChild(x);
|
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue