refactor: rename show image references to blur images

Closes: https://github.com/damus-io/damus/pull/1745
Reviewed-by: William Casarin <jb55@jb55.com>
Signed-off-by: William Casarin <jb55@jb55.com>
This commit is contained in:
ericholguin
2023-11-20 19:03:12 -07:00
committed by William Casarin
parent 3c11ba53ce
commit dfcef0ba95
8 changed files with 31 additions and 31 deletions

View File

@@ -107,8 +107,8 @@ class UserSettingsStore: ObservableObject {
@Setting(key: "left_handed", default_value: false) @Setting(key: "left_handed", default_value: false)
var left_handed: Bool var left_handed: Bool
@Setting(key: "always_show_images", default_value: false) @Setting(key: "blur_images", default_value: true)
var always_show_images: Bool var blur_images: Bool
@Setting(key: "media_previews", default_value: true) @Setting(key: "media_previews", default_value: true)
var media_previews: Bool var media_previews: Bool

View File

@@ -39,10 +39,10 @@ struct DMView: View {
Spacer(minLength: UIScreen.main.bounds.width * 0.2) Spacer(minLength: UIScreen.main.bounds.width * 0.2)
} }
let should_show_img = should_show_images(settings: damus_state.settings, contacts: damus_state.contacts, ev: event, our_pubkey: damus_state.pubkey) let should_blur_img = should_blur_images(settings: damus_state.settings, contacts: damus_state.contacts, ev: event, our_pubkey: damus_state.pubkey)
VStack(alignment: .trailing) { VStack(alignment: .trailing) {
NoteContentView(damus_state: damus_state, event: event, show_images: should_show_img, size: .normal, options: dm_options) NoteContentView(damus_state: damus_state, event: event, blur_images: should_blur_img, size: .normal, options: dm_options)
.fixedSize(horizontal: false, vertical: true) .fixedSize(horizontal: false, vertical: true)
.padding([.top, .leading, .trailing], 10) .padding([.top, .leading, .trailing], 10)
.padding([.bottom], 25) .padding([.bottom], 25)

View File

@@ -54,22 +54,22 @@ struct EventView: View {
} }
// blame the porn bots for this code // blame the porn bots for this code
func should_show_images(settings: UserSettingsStore, contacts: Contacts, ev: NostrEvent, our_pubkey: Pubkey, booster_pubkey: Pubkey? = nil) -> Bool { func should_blur_images(settings: UserSettingsStore, contacts: Contacts, ev: NostrEvent, our_pubkey: Pubkey, booster_pubkey: Pubkey? = nil) -> Bool {
if settings.always_show_images { if !settings.blur_images {
return true return false
} }
if ev.pubkey == our_pubkey { if ev.pubkey == our_pubkey {
return true return false
} }
if contacts.is_in_friendosphere(ev.pubkey) { if contacts.is_in_friendosphere(ev.pubkey) {
return true return false
} }
if let boost_key = booster_pubkey, contacts.is_in_friendosphere(boost_key) { if let boost_key = booster_pubkey, contacts.is_in_friendosphere(boost_key) {
return true
}
return false return false
} }
return true
}
func format_relative_time(_ created_at: UInt32) -> String func format_relative_time(_ created_at: UInt32) -> String
{ {

View File

@@ -11,19 +11,19 @@ struct EventBody: View {
let damus_state: DamusState let damus_state: DamusState
let event: NostrEvent let event: NostrEvent
let size: EventViewKind let size: EventViewKind
let should_show_img: Bool let should_blur_img: Bool
let options: EventViewOptions let options: EventViewOptions
init(damus_state: DamusState, event: NostrEvent, size: EventViewKind, should_show_img: Bool? = nil, options: EventViewOptions) { init(damus_state: DamusState, event: NostrEvent, size: EventViewKind, should_blur_img: Bool? = nil, options: EventViewOptions) {
self.damus_state = damus_state self.damus_state = damus_state
self.event = event self.event = event
self.size = size self.size = size
self.options = options self.options = options
self.should_show_img = should_show_img ?? should_show_images(settings: damus_state.settings, contacts: damus_state.contacts, ev: event, our_pubkey: damus_state.pubkey) self.should_blur_img = should_blur_img ?? should_blur_images(settings: damus_state.settings, contacts: damus_state.contacts, ev: event, our_pubkey: damus_state.pubkey)
} }
var note_content: some View { var note_content: some View {
NoteContentView(damus_state: damus_state, event: event, show_images: should_show_img, size: size, options: options) NoteContentView(damus_state: damus_state, event: event, blur_images: should_blur_img, size: size, options: options)
.frame(maxWidth: .infinity, alignment: .leading) .frame(maxWidth: .infinity, alignment: .leading)
} }

View File

@@ -54,7 +54,7 @@ struct LongformView: View {
EventShell(state: state, event: event.event, options: options) { EventShell(state: state, event: event.event, options: options) {
SelectableText(attributedString: AttributedString(stringLiteral: event.title ?? "Untitled"), size: .title) SelectableText(attributedString: AttributedString(stringLiteral: event.title ?? "Untitled"), size: .title)
NoteContentView(damus_state: state, event: event.event, show_images: true, size: .selected, options: options) NoteContentView(damus_state: state, event: event.event, blur_images: false, size: .selected, options: options)
} }
} }
} }

View File

@@ -45,11 +45,11 @@ struct TextEvent: View {
} }
func EvBody(options: EventViewOptions) -> some View { func EvBody(options: EventViewOptions) -> some View {
let show_imgs = should_show_images(settings: damus.settings, contacts: damus.contacts, ev: event, our_pubkey: damus.pubkey) let blur_imgs = should_blur_images(settings: damus.settings, contacts: damus.contacts, ev: event, our_pubkey: damus.pubkey)
return NoteContentView( return NoteContentView(
damus_state: damus, damus_state: damus,
event: event, event: event,
show_images: show_imgs, blur_images: blur_imgs,
size: .normal, size: .normal,
options: options options: options
) )

View File

@@ -26,7 +26,7 @@ struct NoteContentView: View {
let damus_state: DamusState let damus_state: DamusState
let event: NostrEvent let event: NostrEvent
@State var show_images: Bool @State var blur_images: Bool
@State var load_media: Bool = false @State var load_media: Bool = false
let size: EventViewKind let size: EventViewKind
let preview_height: CGFloat? let preview_height: CGFloat?
@@ -40,10 +40,10 @@ struct NoteContentView: View {
return self.artifacts_model.state.artifacts ?? .separated(.just_content(event.get_content(damus_state.keypair))) return self.artifacts_model.state.artifacts ?? .separated(.just_content(event.get_content(damus_state.keypair)))
} }
init(damus_state: DamusState, event: NostrEvent, show_images: Bool, size: EventViewKind, options: EventViewOptions) { init(damus_state: DamusState, event: NostrEvent, blur_images: Bool, size: EventViewKind, options: EventViewOptions) {
self.damus_state = damus_state self.damus_state = damus_state
self.event = event self.event = event
self.show_images = show_images self.blur_images = blur_images
self.size = size self.size = size
self.options = options self.options = options
self.preview_height = lookup_cached_preview_size(previews: damus_state.previews, evid: event.id) self.preview_height = lookup_cached_preview_size(previews: damus_state.previews, evid: event.id)
@@ -62,7 +62,7 @@ struct NoteContentView: View {
} }
var preview: LinkViewRepresentable? { var preview: LinkViewRepresentable? {
guard show_images, guard blur_images,
case .loaded(let preview) = preview_model.state, case .loaded(let preview) = preview_model.state,
case .value(let cached) = preview else { case .value(let cached) = preview else {
return nil return nil
@@ -93,7 +93,7 @@ struct NoteContentView: View {
func previewView(links: [URL]) -> some View { func previewView(links: [URL]) -> some View {
Group { Group {
if let preview = self.preview, show_images { if let preview = self.preview, blur_images {
if let preview_height { if let preview_height {
preview preview
.frame(height: preview_height) .frame(height: preview_height)
@@ -137,14 +137,14 @@ struct NoteContentView: View {
if artifacts.media.count > 0 { if artifacts.media.count > 0 {
if !damus_state.settings.media_previews && !load_media { if !damus_state.settings.media_previews && !load_media {
loadMediaButton(artifacts: artifacts) loadMediaButton(artifacts: artifacts)
} else if show_images || (show_images && !damus_state.settings.media_previews && load_media) { } else if !blur_images || (!blur_images && !damus_state.settings.media_previews && load_media) {
ImageCarousel(state: damus_state, evid: event.id, urls: artifacts.media) ImageCarousel(state: damus_state, evid: event.id, urls: artifacts.media)
} else if !show_images || (!show_images && !damus_state.settings.media_previews && load_media) { } else if blur_images || (blur_images && !damus_state.settings.media_previews && load_media) {
ZStack { ZStack {
ImageCarousel(state: damus_state, evid: event.id, urls: artifacts.media) ImageCarousel(state: damus_state, evid: event.id, urls: artifacts.media)
Blur() Blur()
.onTapGesture { .onTapGesture {
show_images = true blur_images = false
} }
} }
} }
@@ -661,17 +661,17 @@ struct NoteContentView_Previews: PreviewProvider {
Group { Group {
VStack { VStack {
NoteContentView(damus_state: state, event: test_note, show_images: true, size: .normal, options: []) NoteContentView(damus_state: state, event: test_note, blur_images: false, size: .normal, options: [])
} }
.previewDisplayName("Short note") .previewDisplayName("Short note")
VStack { VStack {
NoteContentView(damus_state: state, event: test_encoded_note_with_image!, show_images: true, size: .normal, options: []) NoteContentView(damus_state: state, event: test_encoded_note_with_image!, blur_images: false, size: .normal, options: [])
} }
.previewDisplayName("Note with image") .previewDisplayName("Note with image")
VStack { VStack {
NoteContentView(damus_state: state2, event: test_longform_event.event, show_images: true, size: .normal, options: [.wide]) NoteContentView(damus_state: state2, event: test_longform_event.event, blur_images: false, size: .normal, options: [.wide])
.border(Color.red) .border(Color.red)
} }
.previewDisplayName("Long-form note") .previewDisplayName("Long-form note")

View File

@@ -78,7 +78,7 @@ struct AppearanceSettingsView: View {
// MARK: - Images // MARK: - Images
Section(NSLocalizedString("Images", comment: "Section title for images configuration.")) { Section(NSLocalizedString("Images", comment: "Section title for images configuration.")) {
self.EnableAnimationsToggle self.EnableAnimationsToggle
Toggle(NSLocalizedString("Always show images", comment: "Setting to always show and never blur images"), isOn: $settings.always_show_images) Toggle(NSLocalizedString("Blur images", comment: "Setting to blur images"), isOn: $settings.blur_images)
.toggleStyle(.switch) .toggleStyle(.switch)
Toggle(NSLocalizedString("Media previews", comment: "Setting to show media"), isOn: $settings.media_previews) Toggle(NSLocalizedString("Media previews", comment: "Setting to show media"), isOn: $settings.media_previews)