Skip to content

Commit f8b96a2

Browse files
committed
problem: don't know when note has already been read
1 parent a154494 commit f8b96a2

File tree

3 files changed

+24
-21
lines changed

3 files changed

+24
-21
lines changed

src/lib/views/messages/Messages.svelte

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -62,12 +62,11 @@
6262
renderQueue.subscribe((q) => {});
6363
6464
//remove viewed and add new items that haven't been viewed
65-
let shortListLength = derived([renderQueue, viewed], ([$renderQ, $viewed]) => {
66-
//todo: if root cool, but if not, keep loading more 3 at a time
65+
let shortListLength = derived([renderQueue, viewed, threadParentID], ([$renderQ, $viewed, $parentID]) => {
6766
let dirty = false;
6867
let updated: NostrEvent[] = [];
6968
for (let e of _stableShortlist) {
70-
if (!$viewed.has(e.id)) {
69+
if (!$viewed.has(e.id) || $parentID != "root") {
7170
//console.log(72, e.id);
7271
updated.push(e);
7372
} else {

src/lib/views/messages/RenderKind1.svelte

Lines changed: 20 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,7 @@
77
import { derived, type Writable } from 'svelte/store';
88
import type { FrontendData } from '@/snort_workers/types';
99
import { inview } from 'svelte-inview';
10-
import { viewed } from '@/workers_snort/firehose_master';
11-
10+
import { viewed } from '@/workers_snort/firehose_master';
1211
1312
export let note: NostrEvent;
1413
export let onClickReply: () => void;
@@ -17,7 +16,6 @@
1716
$: childrenCount = $store?.replies.get(note.id) ? $store.replies.get(note.id)!.size : 0;
1817
</script>
1918

20-
2119
<div class="w-full mt-2">
2220
<div class="grid">
2321
<div class="flex gap-2">
@@ -56,24 +54,29 @@
5654
</div>
5755
</div>
5856
</div>
59-
<div class="justify-end items-center inline-flex">
60-
<h6 class="text-gray-500 text-xs font-normal leading-4 py-1">
61-
{new Date(note.created_at * 1000).toLocaleString()}
62-
</h6>
57+
<div class="flex justify-between">
58+
<h6 class="text-gray-500 text-xs font-normal leading-4 py-1">
59+
60+
</h6>
61+
<div class="justify-end items-center inline-flex">
62+
<h6 class="text-gray-500 text-xs font-normal leading-4 py-1">
63+
{new Date(note.created_at * 1000).toLocaleString()} {#if $viewed.has(note.id)}✓{/if}
64+
</h6>
65+
</div>
6366
</div>
6467
</div>
6568
</div>
6669
</div>
6770
</div>
6871
</div>
6972
<div
70-
use:inview={{}}
71-
on:inview_leave={(event) => {
72-
if (event.detail.scrollDirection.vertical == "up") {
73-
viewed.update(v=>{
74-
v.add(note.id)
75-
return v
76-
})
77-
}
78-
}}
79-
></div>
73+
use:inview={{}}
74+
on:inview_leave={(event) => {
75+
if (event.detail.scrollDirection.vertical == 'up') {
76+
viewed.update((v) => {
77+
v.add(note.id);
78+
return v;
79+
});
80+
}
81+
}}
82+
></div>

src/lib/views/messages/RenderKind1AsThreadHead.svelte

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import Reply from "./Reply.svelte";
88
import { derived, type Writable } from "svelte/store";
99
import type { FrontendData } from "@/snort_workers/types";
10+
import { viewed } from "@/workers_snort/firehose_master";
1011
1112
export let note:NostrEvent
1213
export let store: Writable<FrontendData>
@@ -32,7 +33,7 @@
3233
</div>
3334
<div class="justify-end items-center inline-flex">
3435
<h6 class="text-gray-500 text-xs font-normal leading-4 py-1">
35-
{new Date(note.created_at * 1000).toLocaleString()}
36+
{new Date(note.created_at * 1000).toLocaleString()}{#if $viewed.has(note.id)}✓{/if}
3637
</h6>
3738
</div>
3839
</div>

0 commit comments

Comments
 (0)