Skip to content

Commit

Permalink
Mute hellthreads everywhere
Browse files Browse the repository at this point in the history
  • Loading branch information
jb55 committed Aug 20, 2023
1 parent d5b9441 commit ae2f725
Show file tree
Hide file tree
Showing 4 changed files with 20 additions and 18 deletions.
23 changes: 11 additions & 12 deletions damus/Models/HomeModel.swift
Original file line number Diff line number Diff line change
Expand Up @@ -562,15 +562,9 @@ class HomeModel {

func handle_notification(ev: NostrEvent) {
// don't show notifications from ourselves
guard ev.pubkey != damus_state.pubkey else {
return
}

guard event_has_our_pubkey(ev, our_pubkey: self.damus_state.pubkey) else {
return
}

guard should_show_event(contacts: damus_state.contacts, ev: ev) && !damus_state.muted_threads.isMutedThread(ev, privkey: damus_state.keypair.privkey) else {
guard ev.pubkey != damus_state.pubkey,
event_has_our_pubkey(ev, our_pubkey: self.damus_state.pubkey),
should_show_event(privkey: self.damus_state.keypair.privkey, hellthreads: damus_state.muted_threads, contacts: damus_state.contacts, ev: ev) else {
return
}

Expand Down Expand Up @@ -608,7 +602,7 @@ class HomeModel {


func handle_text_event(sub_id: String, _ ev: NostrEvent) {
guard should_show_event(contacts: damus_state.contacts, ev: ev) else {
guard should_show_event(privkey: damus_state.keypair.privkey, hellthreads: damus_state.muted_threads, contacts: damus_state.contacts, ev: ev) else {
return
}

Expand All @@ -635,7 +629,7 @@ class HomeModel {
}

func handle_dm(_ ev: NostrEvent) {
guard should_show_event(contacts: damus_state.contacts, ev: ev) else {
guard should_show_event(privkey: damus_state.keypair.privkey, hellthreads: damus_state.muted_threads, contacts: damus_state.contacts, ev: ev) else {
return
}

Expand Down Expand Up @@ -1100,10 +1094,15 @@ func event_has_our_pubkey(_ ev: NostrEvent, our_pubkey: Pubkey) -> Bool {
}


func should_show_event(contacts: Contacts, ev: NostrEvent) -> Bool {
func should_show_event(privkey: Privkey?, hellthreads: MutedThreadsManager, contacts: Contacts, ev: NostrEvent) -> Bool {
if contacts.is_muted(ev.pubkey) {
return false
}

if hellthreads.isMutedThread(ev, privkey: privkey) {
return false
}

return ev.should_show_event
}

Expand Down
5 changes: 3 additions & 2 deletions damus/Models/SearchHomeModel.swift
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ class SearchHomeModel: ObservableObject {
}

func filter_muted() {
events.filter { should_show_event(contacts: damus_state.contacts, ev: $0) }
events.filter { should_show_event(privkey: damus_state.keypair.privkey, hellthreads: damus_state.muted_threads, contacts: damus_state.contacts, ev: $0) }
self.objectWillChange.send()
}

Expand All @@ -60,7 +60,8 @@ class SearchHomeModel: ObservableObject {
guard sub_id == self.base_subid || sub_id == self.profiles_subid else {
return
}
if ev.is_textlike && should_show_event(contacts: damus_state.contacts, ev: ev) && !ev.is_reply(nil) {
if ev.is_textlike && should_show_event(privkey: damus_state.keypair.privkey, hellthreads: damus_state.muted_threads, contacts: damus_state.contacts, ev: ev) && !ev.is_reply(nil)
{
if !damus_state.settings.multiple_events_per_pubkey && seen_pubkey.contains(ev.pubkey) {
return
}
Expand Down
6 changes: 4 additions & 2 deletions damus/Models/SearchModel.swift
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,9 @@ class SearchModel: ObservableObject {
}

func filter_muted() {
self.events.filter { should_show_event(contacts: state.contacts, ev: $0) }
self.events.filter {
should_show_event(privkey: state.keypair.privkey, hellthreads: state.muted_threads, contacts: state.contacts, ev: $0)
}
self.objectWillChange.send()
}

Expand Down Expand Up @@ -55,7 +57,7 @@ class SearchModel: ObservableObject {
return
}

guard should_show_event(contacts: state.contacts, ev: ev) else {
guard should_show_event(privkey: state.keypair.privkey, hellthreads: state.muted_threads, contacts: state.contacts, ev: ev) else {
return
}

Expand Down
4 changes: 2 additions & 2 deletions damus/Views/Events/MutedEventView.swift
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,11 @@ struct MutedEventView: View {
self.damus_state = damus_state
self.event = event
self.selected = selected
self._shown = State(initialValue: should_show_event(contacts: damus_state.contacts, ev: event))
self._shown = State(initialValue: should_show_event(privkey: damus_state.keypair.privkey, hellthreads: damus_state.muted_threads, contacts: damus_state.contacts, ev: event))
}

var should_mute: Bool {
return !should_show_event(contacts: damus_state.contacts, ev: event)
return !should_show_event(privkey: damus_state.keypair.privkey, hellthreads: damus_state.muted_threads, contacts: damus_state.contacts, ev: event)
}

var MutedBox: some View {
Expand Down

0 comments on commit ae2f725

Please sign in to comment.