Fixed size of translated text

Changelog-Fixed: Fixed size of translated text
This commit is contained in:
William Casarin
2023-03-31 09:26:39 -07:00
parent 35ee2f5744
commit 9ba3543d91
4 changed files with 18 additions and 6 deletions

View File

@@ -15,12 +15,14 @@ struct SelectableText: View {
@State private var selectedTextHeight: CGFloat = .zero
@State private var selectedTextWidth: CGFloat = .zero
let size: EventViewKind
var body: some View {
GeometryReader { geo in
TextViewRepresentable(
attributedString: attributedString,
textColor: UIColor.label,
font: UIFont.preferredFont(forTextStyle: .title2),
font: eventviewsize_to_uifont(size),
fixedWidth: selectedTextWidth,
height: $selectedTextHeight
)

View File

@@ -11,6 +11,7 @@ import NaturalLanguage
struct TranslateView: View {
let damus_state: DamusState
let event: NostrEvent
let size: EventViewKind
@State var checkingTranslationStatus: Bool = false
@State var currentLanguage: String = "en"
@@ -65,7 +66,7 @@ struct TranslateView: View {
}
.translate_button_style()
SelectableText(attributedString: artifacts.content)
SelectableText(attributedString: artifacts.content, size: self.size)
}
}
@@ -129,6 +130,6 @@ extension View {
struct TranslateView_Previews: PreviewProvider {
static var previews: some View {
let ds = test_damus_state()
TranslateView(damus_state: ds, event: test_event)
TranslateView(damus_state: ds, event: test_event, size: .normal)
}
}

View File

@@ -25,7 +25,16 @@ func eventviewsize_to_font(_ size: EventViewKind) -> Font {
}
}
func eventviewsize_to_uifont(_ size: EventViewKind) -> UIFont {
switch size {
case .small:
return .preferredFont(forTextStyle: .body)
case .normal:
return .preferredFont(forTextStyle: .body)
case .selected:
return .preferredFont(forTextStyle: .title2)
}
}
struct EventView: View {
let event: NostrEvent

View File

@@ -63,7 +63,7 @@ struct NoteContentView: View {
}
var translateView: some View {
TranslateView(damus_state: damus_state, event: event)
TranslateView(damus_state: damus_state, event: event, size: self.size)
}
var previewView: some View {
@@ -85,7 +85,7 @@ struct NoteContentView: View {
var MainContent: some View {
VStack(alignment: .leading) {
if size == .selected {
SelectableText(attributedString: artifacts.content)
SelectableText(attributedString: artifacts.content, size: self.size)
} else {
if with_padding {
truncatedText