From 81c60af859066ef42cfe0fceb9d8289c4f91acf5 Mon Sep 17 00:00:00 2001 From: Joe Li Date: Mon, 28 Sep 2026 14:32:11 -0700 Subject: [PATCH 1/4] Render adjacent headings and paragraphs in one text view Each heading and paragraph rendered in its own UITextView/NSTextView, so a text selection could not extend past the block it started in. Pre-render now merges each run of adjacent top-level headings and paragraphs into a single `.textGroup` renderable, shown in one text view, so users can select and copy across those blocks. Blocks in a group are joined by paragraph breaks spaced to match `blockSpacing`, accounting for TextKit 2 (UIKit) applying the next block's line spacing at a break and TextKit 1 (AppKit) the previous block's. Paragraph line spacing now lives in the attributed content, so the view-level `lineSpacing` parameter is removed. Grouping is skipped when `blockSpacing` is below the paragraph line spacing. A group keeps its first block's ID and all text blocks render in one `BlockView` branch, so streaming reuses the same text view. Paragraph views append streamed text instead of replacing it, which preserves the user's selection. Groups expose one accessibility element per block, keeping heading traits and citation actions, and `plainText` still separates blocks with blank lines for the "Select more text" modal. Re-record the two iPhone `testMarkdownLists_uikit` references, which shift by at most 2px from rounding the group's height once instead of per paragraph. macOS renders are pixel-identical. Refs #133 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- README.md | 2 +- Sources/MarkdownText/Block/Document+.swift | 1 + Sources/MarkdownText/Block/Paragraph+.swift | 1 + .../Models/MarkdownRenderable+TextGroup.swift | 130 +++++++ .../Models/MarkdownRenderable.swift | 13 + .../Models/RenderableDocument.swift | 5 +- Sources/MarkdownText/UI/BlockView.swift | 8 +- .../UI/Paragraph/AppKit/ParagraphNSView.swift | 98 ++++-- .../AppKit/ParagraphView+macOS.swift | 13 +- .../UI/Paragraph/ParagraphViewCache.swift | 2 +- .../UI/Paragraph/UIKit/ParagraphUIView.swift | 90 +++-- .../Paragraph/UIKit/ParagraphView+iOS.swift | 17 +- .../Utilities/NSAttributedString+.swift | 16 + .../MarkdownTextTests/MarkdownTextTests.swift | 6 +- .../ParagraphViewTests.swift | 3 +- Tests/MarkdownTextTests/TextGroupTests.swift | 322 ++++++++++++++++++ ...arkdownLists_uikit.iPhone16-dark-US-en.png | Bin 361619 -> 361510 bytes ...rkdownLists_uikit.iPhone16-light-US-en.png | Bin 361322 -> 361246 bytes 18 files changed, 645 insertions(+), 82 deletions(-) create mode 100644 Sources/MarkdownText/Models/MarkdownRenderable+TextGroup.swift create mode 100644 Tests/MarkdownTextTests/TextGroupTests.swift diff --git a/README.md b/README.md index efae63a8..af9e2204 100644 --- a/README.md +++ b/README.md @@ -98,7 +98,7 @@ The renderer targets the subset of CommonMark + GitHub-flavored Markdown that LL ### Supported - [x] Headings (`#` … `######`) -- [x] Paragraphs with soft and hard line breaks +- [x] Paragraphs with soft and hard line breaks (adjacent headings and paragraphs share one text view, so a text selection can span them) - [x] Images (`![alt](url)`) — block-level, opt-in via the experimental `ImageConfig` (remote-allowlist, asset-catalog, and bundled-resource sources; tap to open the built-in fullscreen viewer) - [x] **Bold**, *italic*, ***bold-italic***, ~~strikethrough~~ - [x] `Inline code` diff --git a/Sources/MarkdownText/Block/Document+.swift b/Sources/MarkdownText/Block/Document+.swift index c3b4a777..a740fb1e 100644 --- a/Sources/MarkdownText/Block/Document+.swift +++ b/Sources/MarkdownText/Block/Document+.swift @@ -13,5 +13,6 @@ extension Markdown.Document { return self .blockConvertibleChildren .map { $0.convert(attributeContainer: NSAttributeContainer(), config: config) } + .groupingAdjacentTextBlocks(config: config) } } diff --git a/Sources/MarkdownText/Block/Paragraph+.swift b/Sources/MarkdownText/Block/Paragraph+.swift index d1162c04..d6f30f0e 100644 --- a/Sources/MarkdownText/Block/Paragraph+.swift +++ b/Sources/MarkdownText/Block/Paragraph+.swift @@ -26,6 +26,7 @@ extension Paragraph: BlockConvertible { } container[.foregroundColor] = MDColor(config.paragraphStyle.textColor) let paragraphContent: NSMutableAttributedString = self.buildParagraphContent(container: container, config: config) + paragraphContent.applyParagraphLayout() return MarkdownRenderable.paragraph(id: self.id, content: paragraphContent) } diff --git a/Sources/MarkdownText/Models/MarkdownRenderable+TextGroup.swift b/Sources/MarkdownText/Models/MarkdownRenderable+TextGroup.swift new file mode 100644 index 00000000..83745a89 --- /dev/null +++ b/Sources/MarkdownText/Models/MarkdownRenderable+TextGroup.swift @@ -0,0 +1,130 @@ +// +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See LICENSE in the project root for license information. +// + +import Foundation +#if canImport(UIKit) +import UIKit +#elseif canImport(AppKit) +import AppKit +#endif + +extension NSAttributedString.Key { + /// Library-internal: marks each block of a `.textGroup`, so its text view can + /// expose one accessibility element per block. + static let textBlock = NSAttributedString.Key("markdown.textBlock") +} + +/// The value of `.textBlock`: the block's ID, and its level if it's a heading. +struct TextBlock: Hashable { + let id: String + let headingLevel: Int? +} + +extension MarkdownRenderable { + /// Line spacing paragraphs render with; headings have none. + static let paragraphLineSpacing: CGFloat = 5 + + /// The text of headings and paragraphs: the blocks that can share a text view. + fileprivate var textBlockContent: NSMutableAttributedString? { + switch self { + case .paragraph(_, let content), .heading(_, _, let content): return content + default: return nil + } + } + + fileprivate var headingLevel: Int? { + guard case .heading(_, let level, _) = self else { return nil } + return level + } + + /// The line spacing a text block renders with. + fileprivate var lineSpacing: CGFloat { + isHeading ? 0 : Self.paragraphLineSpacing + } +} + +extension NSMutableAttributedString { + /// Applies the line spacing and alignment paragraphs render with. + func applyParagraphLayout() { + updateParagraphStyle { + $0.lineSpacing = MarkdownRenderable.paragraphLineSpacing + $0.alignment = .left + } + } +} + +extension Array where Element == MarkdownRenderable { + + /// Merges each run of adjacent headings and paragraphs into a single + /// `.textGroup`, so the run renders in one text view and a text selection + /// can span it. + /// + /// A group keeps its first block's ID, so as streaming appends blocks + /// SwiftUI keeps updating the same text view. + func groupingAdjacentTextBlocks(config: MarkdownRenderConfig) -> [MarkdownRenderable] { + // A paragraph break can't be tighter than the line spacing, so keep + // separate views rather than change the layout. + guard config.blockSpacing >= MarkdownRenderable.paragraphLineSpacing else { + return self + } + var result: [MarkdownRenderable] = [] + var run: [MarkdownRenderable] = [] + + func flushRun() { + if run.count > 1 { + result.append(.textGroup(id: run[0].id, blocks: run, content: run.joinedAsTextBlocks(config: config))) + } else { + result += run + } + run.removeAll() + } + + for renderable in self { + if renderable.textBlockContent != nil { + run.append(renderable) + } else { + flushRun() + result.append(renderable) + } + } + flushRun() + return result + } + + /// Joins text blocks with paragraph breaks, spaced to match the + /// `blockSpacing` gap that `BlockView` puts between separate blocks. + private func joinedAsTextBlocks(config: MarkdownRenderConfig) -> NSMutableAttributedString { + let separator = NSAttributedString(string: "\n", attributes: [.font: config.paragraphStyle.textFonts.normal]) + let result = NSMutableAttributedString() + var previousLineSpacing: CGFloat = 0 + for block in self { + guard let content = block.textBlockContent else { continue } + if result.length > 0 { + result.append(separator) + } + let start = result.length + result.append(content) + result.addAttribute(.textBlock, value: TextBlock(id: block.id, headingLevel: block.headingLevel), range: NSRange(location: start, length: content.length)) + if start > 0 { + // Only the block's first line: later lines come from soft/hard breaks. + let firstLine = (result.string as NSString).paragraphRange(for: NSRange(location: start, length: 0)) + let spacing = config.blockSpacing - lineSpacingAtBreak(after: previousLineSpacing, before: block.lineSpacing) + result.updateParagraphStyle(in: firstLine) { $0.paragraphSpacingBefore = spacing } + } + previousLineSpacing = block.lineSpacing + } + return result + } + + /// The line spacing TextKit already puts at a break between two blocks: the + /// next block's in TextKit 2 (UITextView), the previous block's in TextKit 1 (NSTextView). + private func lineSpacingAtBreak(after previous: CGFloat, before next: CGFloat) -> CGFloat { + #if canImport(UIKit) + return next + #else + return previous + #endif + } +} diff --git a/Sources/MarkdownText/Models/MarkdownRenderable.swift b/Sources/MarkdownText/Models/MarkdownRenderable.swift index 397f3c99..f1aa8530 100644 --- a/Sources/MarkdownText/Models/MarkdownRenderable.swift +++ b/Sources/MarkdownText/Models/MarkdownRenderable.swift @@ -18,6 +18,11 @@ indirect enum MarkdownRenderable: Identifiable, Equatable, @unchecked Sendable { /// To be rendered as a paragraph case paragraph(id: String, content: NSMutableAttributedString) + /// Adjacent top-level headings and paragraphs rendered in a single text view + /// so a text selection can span them. `content` joins the `blocks` with + /// paragraph breaks, keeping `blockSpacing` between them. See `groupingAdjacentTextBlocks(config:)`. + case textGroup(id: String, blocks: [MarkdownRenderable], content: NSMutableAttributedString) + /// To be rendered as LaTeX (Math formatting) case latex(id: String, content: String) @@ -49,6 +54,7 @@ indirect enum MarkdownRenderable: Identifiable, Equatable, @unchecked Sendable { var id: String { switch self { case .paragraph(let id, _): return id + case .textGroup(let id, _, _): return id case .latex(let id, _): return id case .heading(let id, _, _): return id case .orderedList(let id, _): return id @@ -74,6 +80,13 @@ indirect enum MarkdownRenderable: Identifiable, Equatable, @unchecked Sendable { default: return false } } + + var isHeading: Bool { + switch self { + case .heading: return true + default: return false + } + } } struct MarkdownListItem: Equatable { diff --git a/Sources/MarkdownText/Models/RenderableDocument.swift b/Sources/MarkdownText/Models/RenderableDocument.swift index 2ef23d75..e18818c6 100644 --- a/Sources/MarkdownText/Models/RenderableDocument.swift +++ b/Sources/MarkdownText/Models/RenderableDocument.swift @@ -50,6 +50,7 @@ public struct RenderableDocument: Equatable, Sendable { attributes[.kern] = kern } let content = NSMutableAttributedString(string: plainText, attributes: attributes) + content.applyParagraphLayout() self.init(renderables: [.paragraph(id: UUID().uuidString, content: content)]) } @@ -84,6 +85,8 @@ extension MarkdownRenderable { switch self { case .paragraph(_, let content), .heading(_, _, let content): return content.string + case .textGroup(_, let blocks, _): + return blocks.compactMap { $0.plainText }.joined(separator: "\n\n") case .latex(_, let content): return content case .orderedList(_, let items): @@ -129,7 +132,7 @@ private extension BlockQuoteType { extension MarkdownRenderable { func extractAttributedStrings() -> [NSAttributedString] { switch self { - case .paragraph(_, let str): + case .paragraph(_, let str), .textGroup(_, _, let str): return [str] case .orderedList(_, let items): return items.flatMap { $0.attributedStrings() } diff --git a/Sources/MarkdownText/UI/BlockView.swift b/Sources/MarkdownText/UI/BlockView.swift index b7fa300d..79bc0317 100644 --- a/Sources/MarkdownText/UI/BlockView.swift +++ b/Sources/MarkdownText/UI/BlockView.swift @@ -38,14 +38,12 @@ struct SingleBlockView: View { var body: some View { Group { switch renderable { - case .heading(_, _, let contents): + case .heading(_, _, let contents), .paragraph(_, let contents), .textGroup(_, _, let contents): + // One branch for all text blocks, so a block that becomes a group while streaming keeps its text view. ParagraphView(contents: contents) - .transition(.opacity) - .accessibilityAddTraits(.isHeader) - case .paragraph(_, let contents): - ParagraphView(contents: contents, lineSpacing: 5) .fixedSize(horizontal: false, vertical: true) .transition(.opacity) + .accessibilityAddTraits(renderable.isHeading ? .isHeader : []) case .latex(_, let latexString): ScrollView(.horizontal) { HStack(spacing: 0) { diff --git a/Sources/MarkdownText/UI/Paragraph/AppKit/ParagraphNSView.swift b/Sources/MarkdownText/UI/Paragraph/AppKit/ParagraphNSView.swift index c4327bd0..0da20c27 100644 --- a/Sources/MarkdownText/UI/Paragraph/AppKit/ParagraphNSView.swift +++ b/Sources/MarkdownText/UI/Paragraph/AppKit/ParagraphNSView.swift @@ -20,8 +20,8 @@ class ParagraphNSView: NSTextView { static let animationDuration: CFTimeInterval = ParagraphAnimationConstants.fadeInDuration private(set) var paragraphContents: NSMutableAttributedString = NSMutableAttributedString() - private(set) var lineSpacing: CGFloat? private var activeAnimations: [FadeAnimationData] = [] + private var blockAccessibilityElements: [NSAccessibilityElement]? private var fadeAnimationDisplayLink: CADisplayLink? private var cachedSize: CachedParagraphNSViewSize? @@ -114,28 +114,29 @@ class ParagraphNSView: NSTextView { // MARK: - Content Update - func setParagraphContents(_ newContents: NSMutableAttributedString, lineSpacing: CGFloat? = nil, animatedByWord: Bool) { + func setParagraphContents(_ newContents: NSMutableAttributedString, animatedByWord: Bool) { AppAppearance.update(appearance: effectiveAppearance) - guard paragraphContents != newContents || self.lineSpacing != lineSpacing else { + guard paragraphContents != newContents else { return } + // Streamed text usually only grows: appending just the tail keeps the user's + // selection and the layout of the text already shown. Not when in-flight fades + // must be cleared, as their partial alpha lives in the text storage. + let isAppending = (animatedByWord || activeAnimations.isEmpty) && newContents.hasPrefix(paragraphContents) self.paragraphContents = newContents - self.lineSpacing = lineSpacing let oldLength = textStorage?.length ?? 0 - let finalString: NSMutableAttributedString - if lineSpacing != nil { - finalString = applyLineSpacing(to: newContents, lineSpacing: lineSpacing) - } else { - finalString = newContents - } tearDownDisplayLink() invalidateCachedSize() - textStorage?.setAttributedString(finalString) + if isAppending { + textStorage?.append(newContents.attributedSubstring(from: NSRange(location: oldLength, length: newContents.length - oldLength))) + } else { + textStorage?.setAttributedString(newContents) + } - configureAccessibility(for: finalString) + configureAccessibility(for: newContents) invalidateIntrinsicContentSize() @@ -143,7 +144,7 @@ class ParagraphNSView: NSTextView { if animatedByWord, newContentLength > 0 { let newContentRange = NSRange(location: oldLength, length: newContentLength) - let wordRanges = finalString.splitIntoWords(withIn: newContentRange) + let wordRanges = newContents.splitIntoWords(withIn: newContentRange) let wordCount = wordRanges.count let delayBetweenWords: Double = ParagraphAnimationConstants.delayBetweenWordsRatio / Double(max(wordCount, 1)) let baseStartTime = CACurrentMediaTime() @@ -166,19 +167,6 @@ class ParagraphNSView: NSTextView { } } - // MARK: - Line Spacing - - private func applyLineSpacing(to attributedString: NSMutableAttributedString, lineSpacing: CGFloat?) -> NSMutableAttributedString { - let result = NSMutableAttributedString(attributedString: attributedString) - if let lineSpacing { - let paragraphStyle = NSMutableParagraphStyle() - paragraphStyle.lineSpacing = lineSpacing - paragraphStyle.alignment = .left - result.addAttribute(.paragraphStyle, value: paragraphStyle, range: NSRange(location: 0, length: result.length)) - } - return result - } - // MARK: - View Setup private func setupView() { @@ -232,6 +220,13 @@ class ParagraphNSView: NSTextView { } private func configureAccessibility(for attributedString: NSAttributedString) { + // A text group exposes one element per block, as separate views did, so + // VoiceOver still moves block by block and finds headings. + blockAccessibilityElements = makeBlockAccessibilityElements(for: attributedString) + guard blockAccessibilityElements == nil else { + setAccessibilityLabel(nil) + return + } if let content = generateAccessibilityContent(from: attributedString) { setAccessibilityLabel(content.label) } else { @@ -239,6 +234,40 @@ class ParagraphNSView: NSTextView { } } + /// One element per `.textBlock`, or `nil` when the text isn't a text group. + private func makeBlockAccessibilityElements(for attributedString: NSAttributedString) -> [NSAccessibilityElement]? { + var elements: [NSAccessibilityElement] = [] + attributedString.enumerateAttribute(.textBlock, in: NSRange(location: 0, length: attributedString.length)) { value, range, _ in + guard let block = value as? TextBlock else { return } + let text = attributedString.attributedSubstring(from: range) + let element = TextBlockAccessibilityElement(textView: self, range: range) + // The raw value of NSAccessibilityHeadingRole, which is only declared from macOS 26. + element.setAccessibilityRole(block.headingLevel == nil ? .staticText : NSAccessibility.Role(rawValue: "AXHeading")) + element.setAccessibilityLabel(generateAccessibilityContent(from: text)?.label ?? text.string) + element.setAccessibilityParent(self) + elements.append(element) + } + return elements.isEmpty ? nil : elements + } + + override func isAccessibilityElement() -> Bool { + blockAccessibilityElements == nil && super.isAccessibilityElement() + } + + override func accessibilityChildren() -> [Any]? { + blockAccessibilityElements ?? super.accessibilityChildren() + } + + /// The area the characters in `range` are laid out in, in this view's coordinates. + func boundingRect(forCharacterRange range: NSRange) -> CGRect { + guard let layoutManager, let textContainer else { + return .zero + } + let glyphRange = layoutManager.glyphRange(forCharacterRange: range, actualCharacterRange: nil) + let rect = layoutManager.boundingRect(forGlyphRange: glyphRange, in: textContainer) + return rect.offsetBy(dx: textContainerOrigin.x, dy: textContainerOrigin.y) + } + // MARK: - Fade Animation @objc private func updateFadeAnimation() { @@ -414,4 +443,21 @@ private struct ContextMenuAction { let selectedText: String } +/// A block of a text group, framed by where its text is laid out. +private final class TextBlockAccessibilityElement: NSAccessibilityElement { + private weak var textView: ParagraphNSView? + private let range: NSRange + + init(textView: ParagraphNSView, range: NSRange) { + self.textView = textView + self.range = range + super.init() + } + + override func accessibilityFrame() -> NSRect { + guard let textView else { return .zero } + return NSAccessibility.screenRect(fromView: textView, rect: textView.boundingRect(forCharacterRange: range)) + } +} + #endif diff --git a/Sources/MarkdownText/UI/Paragraph/AppKit/ParagraphView+macOS.swift b/Sources/MarkdownText/UI/Paragraph/AppKit/ParagraphView+macOS.swift index befa77fd..210a322e 100644 --- a/Sources/MarkdownText/UI/Paragraph/AppKit/ParagraphView+macOS.swift +++ b/Sources/MarkdownText/UI/Paragraph/AppKit/ParagraphView+macOS.swift @@ -12,7 +12,6 @@ struct ParagraphView: NSViewRepresentable { @Environment(\.markdownController) var markdownController: MarkdownController? var contents: NSMutableAttributedString - var lineSpacing: CGFloat? func makeCoordinator() -> Coordinator { Coordinator() @@ -26,7 +25,7 @@ struct ParagraphView: NSViewRepresentable { // paragraph gets its own view instead. let view = ParagraphNSView() view.onUrlTap = openUrlFunction - view.setParagraphContents(contents, lineSpacing: lineSpacing, animatedByWord: false) + view.setParagraphContents(contents, animatedByWord: false) view.setTextContextMenu(config.resolvedTextContextMenu) view.setMarkdownController(markdownController) @@ -42,9 +41,9 @@ struct ParagraphView: NSViewRepresentable { } func updateNSView(_ view: ParagraphNSView, context: Context) { - if view.paragraphContents != contents || view.lineSpacing != lineSpacing { + if view.paragraphContents != contents { let shouldAnimate = view.window != nil && config.shouldAnimateText - view.setParagraphContents(contents, lineSpacing: lineSpacing, animatedByWord: shouldAnimate) + view.setParagraphContents(contents, animatedByWord: shouldAnimate) } view.setTextContextMenu(config.resolvedTextContextMenu) view.setMarkdownController(markdownController) @@ -55,10 +54,9 @@ struct ParagraphView: NSViewRepresentable { return nil } - if contents != context.coordinator.lastContents || lineSpacing != context.coordinator.lastLineSpacing { + if contents != context.coordinator.lastContents { context.coordinator.sizeCache.removeAll() context.coordinator.lastContents = contents - context.coordinator.lastLineSpacing = lineSpacing } let cacheKey = (width * 10).rounded() / 10 @@ -76,13 +74,12 @@ struct ParagraphView: NSViewRepresentable { class Coordinator { var sizeCache: [CGFloat: CGSize] = [:] var lastContents: NSMutableAttributedString? - var lastLineSpacing: CGFloat? } } extension ParagraphView: Equatable { static func == (lhs: ParagraphView, rhs: ParagraphView) -> Bool { - lhs.contents.isEqual(to: rhs.contents) && lhs.lineSpacing == rhs.lineSpacing + lhs.contents.isEqual(to: rhs.contents) } } #endif diff --git a/Sources/MarkdownText/UI/Paragraph/ParagraphViewCache.swift b/Sources/MarkdownText/UI/Paragraph/ParagraphViewCache.swift index 6d357dc9..f57681b7 100644 --- a/Sources/MarkdownText/UI/Paragraph/ParagraphViewCache.swift +++ b/Sources/MarkdownText/UI/Paragraph/ParagraphViewCache.swift @@ -14,7 +14,7 @@ class ParagraphViewCache { static let shared: ParagraphViewCache = .init() - func createOrReuseView(contents: NSMutableAttributedString, lineSpacing: CGFloat?) -> MDParagraphView { + func createOrReuseView(contents: NSMutableAttributedString) -> MDParagraphView { if let availableView = findAvailableCachedView() { return availableView } diff --git a/Sources/MarkdownText/UI/Paragraph/UIKit/ParagraphUIView.swift b/Sources/MarkdownText/UI/Paragraph/UIKit/ParagraphUIView.swift index 56f3f10c..67f22d0a 100644 --- a/Sources/MarkdownText/UI/Paragraph/UIKit/ParagraphUIView.swift +++ b/Sources/MarkdownText/UI/Paragraph/UIKit/ParagraphUIView.swift @@ -24,7 +24,6 @@ class ParagraphUIView: UITextView { static let animationDuration: CFTimeInterval = ParagraphAnimationConstants.fadeInDuration private(set) var paragraphContents: NSMutableAttributedString = NSMutableAttributedString() - private(set) var lineSpacing: CGFloat? private var activeAnimations: [FadeAnimationData] = [] private var fadeAnimationDisplayLink: CADisplayLink? private var cachedSize: CachedParagraphUIViewSize? @@ -99,35 +98,37 @@ class ParagraphUIView: UITextView { invalidateIntrinsicContentSize() } - func setParagraphContents(_ newContents: NSMutableAttributedString, lineSpacing: CGFloat? = nil, animatedByWord: Bool) { + func setParagraphContents(_ newContents: NSMutableAttributedString, animatedByWord: Bool) { // Keep the cached interface style up to date for citation preview rendering. // This runs on the main thread so it's safe to read traitCollection here. AppAppearance.update(style: traitCollection.userInterfaceStyle) - guard paragraphContents != newContents || self.lineSpacing != lineSpacing else { + guard paragraphContents != newContents else { return } + // Streamed text usually only grows: appending just the tail keeps the user's + // selection and the layout of the text already shown. Not when in-flight fades + // must be cleared, as their partial alpha lives in the text storage. + let isAppending = (animatedByWord || activeAnimations.isEmpty) && newContents.hasPrefix(paragraphContents) self.paragraphContents = newContents - self.lineSpacing = lineSpacing let oldAttributedString: NSAttributedString = attributedText - let finalString: NSMutableAttributedString - if lineSpacing != nil { - finalString = applyLineSpacing(to: newContents, lineSpacing: lineSpacing) - } else { - finalString = newContents - } - guard finalString != oldAttributedString else { + guard newContents != oldAttributedString else { return } // Stop display link update before updating the attributed string tearDownDisplayLink() invalidateCachedSize() - attributedText = finalString + if isAppending { + let appendedRange = NSRange(location: textStorage.length, length: newContents.length - textStorage.length) + textStorage.append(newContents.attributedSubstring(from: appendedRange)) + } else { + attributedText = newContents + } - configureAccessibility(for: finalString) + configureAccessibility(for: newContents) invalidateIntrinsicContentSize() @@ -161,14 +162,6 @@ class ParagraphUIView: UITextView { } } - private func applyLineSpacing(to attributedString: NSMutableAttributedString, lineSpacing: CGFloat?) -> NSMutableAttributedString { - let result = NSMutableAttributedString(attributedString: attributedString) - if let lineSpacing { - result.setLineSpacing(lineSpacing) - } - return result - } - private func setupView() { // Only register if not already registered to prevent conflicts if NSTextAttachment.textAttachmentViewProviderClass(forFileType: UTType.data.identifier) == nil { @@ -249,6 +242,16 @@ class ParagraphUIView: UITextView { /// Configure accessibility properties for the text view private func configureAccessibility(for attributedString: NSAttributedString) { + // A text group exposes one element per block, as separate views did, so + // VoiceOver still moves block by block and finds headings. + let blockElements = blockAccessibilityElements(for: attributedString) + isAccessibilityElement = blockElements == nil + accessibilityElements = blockElements + guard blockElements == nil else { + accessibilityLabel = nil + accessibilityCustomActions = nil + return + } // Generate the full accessibility content directly if let accessibilityContent = generateAccessibilityContent(from: attributedString) { // We have citations, use the generated content @@ -261,6 +264,33 @@ class ParagraphUIView: UITextView { } } + /// One element per `.textBlock`, or `nil` when the text isn't a text group. + private func blockAccessibilityElements(for attributedString: NSAttributedString) -> [UIAccessibilityElement]? { + var elements: [UIAccessibilityElement] = [] + attributedString.enumerateAttribute(.textBlock, in: NSRange(location: 0, length: attributedString.length)) { value, range, _ in + guard let block = value as? TextBlock else { return } + let text = attributedString.attributedSubstring(from: range) + let content = generateAccessibilityContent(from: text) + let element = TextBlockAccessibilityElement(container: self, range: range) + element.accessibilityLabel = content?.label ?? text.string + element.accessibilityCustomActions = content?.actions + element.accessibilityTraits = block.headingLevel == nil ? .staticText : .header + elements.append(element) + } + return elements.isEmpty ? nil : elements + } + + /// The area the characters in `range` are laid out in, in this view's coordinates. + func boundingRect(forCharacterRange range: NSRange) -> CGRect { + guard let start = position(from: beginningOfDocument, offset: range.location), + let end = position(from: start, offset: range.length), + let textRange = textRange(from: start, to: end) else { + return .zero + } + let rect = selectionRects(for: textRange).reduce(CGRect.null) { $0.union($1.rect) } + return rect.isNull ? .zero : rect + } + @objc private func updateFadeAnimation() { let currentTime = CACurrentMediaTime() var completedAnimations: [UUID] = [] @@ -379,12 +409,18 @@ extension ParagraphUIView: UITextViewDelegate { } } -fileprivate extension NSMutableAttributedString { - func setLineSpacing(_ lineSpacing: CGFloat) { - let paragraphStyle = NSMutableParagraphStyle() - paragraphStyle.lineSpacing = lineSpacing - paragraphStyle.alignment = .left - addAttribute(.paragraphStyle, value: paragraphStyle, range: NSRange(location: 0, length: length)) +/// A block of a text group, framed by where its text is laid out. +private final class TextBlockAccessibilityElement: UIAccessibilityElement { + private let range: NSRange + + init(container: ParagraphUIView, range: NSRange) { + self.range = range + super.init(accessibilityContainer: container) + } + + override var accessibilityFrameInContainerSpace: CGRect { + get { (accessibilityContainer as? ParagraphUIView)?.boundingRect(forCharacterRange: range) ?? .zero } + set { super.accessibilityFrameInContainerSpace = newValue } } } #endif diff --git a/Sources/MarkdownText/UI/Paragraph/UIKit/ParagraphView+iOS.swift b/Sources/MarkdownText/UI/Paragraph/UIKit/ParagraphView+iOS.swift index c1fdd341..f1459750 100644 --- a/Sources/MarkdownText/UI/Paragraph/UIKit/ParagraphView+iOS.swift +++ b/Sources/MarkdownText/UI/Paragraph/UIKit/ParagraphView+iOS.swift @@ -12,7 +12,6 @@ struct ParagraphView: UIViewRepresentable { @Environment(\.markdownController) var markdownController: MarkdownController? var contents: NSMutableAttributedString - var lineSpacing: CGFloat? func makeCoordinator() -> Coordinator { Coordinator() @@ -20,9 +19,9 @@ struct ParagraphView: UIViewRepresentable { func makeUIView(context: Context) -> ParagraphUIView { let openUrlFunction = openURL.callAsFunction(_:) - let view = ParagraphViewCache.shared.createOrReuseView(contents: contents, lineSpacing: lineSpacing) + let view = ParagraphViewCache.shared.createOrReuseView(contents: contents) view.onUrlTap = openUrlFunction - view.setParagraphContents(contents, lineSpacing: lineSpacing, animatedByWord: false) + view.setParagraphContents(contents, animatedByWord: false) view.setTextContextMenu(config.resolvedTextContextMenu) view.setMarkdownController(markdownController) @@ -37,9 +36,9 @@ struct ParagraphView: UIViewRepresentable { } func updateUIView(_ view: ParagraphUIView, context: Context) { - if view.paragraphContents != contents || view.lineSpacing != lineSpacing { + if view.paragraphContents != contents { let shouldAnimate = view.window != nil && config.shouldAnimateText // only animate when visible - view.setParagraphContents(contents, lineSpacing: lineSpacing, animatedByWord: shouldAnimate) + view.setParagraphContents(contents, animatedByWord: shouldAnimate) } view.setTextContextMenu(config.resolvedTextContextMenu) view.setMarkdownController(markdownController) @@ -51,11 +50,10 @@ struct ParagraphView: UIViewRepresentable { return nil } - // Check if content or lineSpacing changed - if so, clear the cache - if contents != context.coordinator.lastContents || lineSpacing != context.coordinator.lastLineSpacing { + // Check if content changed - if so, clear the cache + if contents != context.coordinator.lastContents { context.coordinator.sizeCache.removeAll() context.coordinator.lastContents = contents - context.coordinator.lastLineSpacing = lineSpacing } // Round width to avoid cache misses from floating point precision issues @@ -80,13 +78,12 @@ struct ParagraphView: UIViewRepresentable { // Cache all calculated sizes keyed by width var sizeCache: [CGFloat: CGSize] = [:] var lastContents: NSMutableAttributedString? - var lastLineSpacing: CGFloat? } } extension ParagraphView: Equatable { static func == (lhs: ParagraphView, rhs: ParagraphView) -> Bool { - lhs.contents == rhs.contents && lhs.lineSpacing == rhs.lineSpacing + lhs.contents == rhs.contents } } #endif diff --git a/Sources/MarkdownText/Utilities/NSAttributedString+.swift b/Sources/MarkdownText/Utilities/NSAttributedString+.swift index d3af12e0..c80eed1f 100644 --- a/Sources/MarkdownText/Utilities/NSAttributedString+.swift +++ b/Sources/MarkdownText/Utilities/NSAttributedString+.swift @@ -11,6 +11,10 @@ import AppKit #endif extension NSAttributedString { + func hasPrefix(_ prefix: NSAttributedString) -> Bool { + length >= prefix.length && attributedSubstring(from: NSRange(location: 0, length: prefix.length)).isEqual(to: prefix) + } + func splitIntoWords(withIn range: NSRange) -> [NSRange] { var words: [NSRange] = [] let string = self.string as NSString @@ -67,3 +71,15 @@ extension NSAttributedString { return words } } + +extension NSMutableAttributedString { + /// Updates the paragraph style of every run in `range` (the whole string by + /// default), keeping properties set by earlier passes. + func updateParagraphStyle(in range: NSRange? = nil, _ update: (NSMutableParagraphStyle) -> Void) { + enumerateAttribute(.paragraphStyle, in: range ?? NSRange(location: 0, length: length)) { value, runRange, _ in + let paragraphStyle = (value as? NSParagraphStyle)?.mutableCopy() as? NSMutableParagraphStyle ?? NSMutableParagraphStyle() + update(paragraphStyle) + addAttribute(.paragraphStyle, value: paragraphStyle, range: runRange) + } + } +} diff --git a/Tests/MarkdownTextTests/MarkdownTextTests.swift b/Tests/MarkdownTextTests/MarkdownTextTests.swift index 2f81132c..2ed8961e 100644 --- a/Tests/MarkdownTextTests/MarkdownTextTests.swift +++ b/Tests/MarkdownTextTests/MarkdownTextTests.swift @@ -255,7 +255,11 @@ final class MarkdownTextTests: XCTestCase { let document = await parser.parse(text: text) let renderableDoc = await RenderableDocument(document: document, config: .default) - let renderables = renderableDoc.renderables + // The heading and paragraph share a text group; inspect its blocks. + guard case .textGroup(_, let renderables, _) = renderableDoc.renderables.first else { + XCTFail("Heading and paragraph should be grouped") + return + } // Verify it parses without error XCTAssertEqual(renderables.count, 2) diff --git a/Tests/MarkdownTextTests/ParagraphViewTests.swift b/Tests/MarkdownTextTests/ParagraphViewTests.swift index d1d932fc..7f068dc9 100644 --- a/Tests/MarkdownTextTests/ParagraphViewTests.swift +++ b/Tests/MarkdownTextTests/ParagraphViewTests.swift @@ -41,8 +41,7 @@ struct ParagraphViewTests { private func createParagraphView(from attributedString: NSAttributedString) -> ParagraphView { let mutableAttributedString = NSMutableAttributedString(attributedString: attributedString) return ParagraphView( - contents: mutableAttributedString, - lineSpacing: nil + contents: mutableAttributedString ) } diff --git a/Tests/MarkdownTextTests/TextGroupTests.swift b/Tests/MarkdownTextTests/TextGroupTests.swift new file mode 100644 index 00000000..ed525ea7 --- /dev/null +++ b/Tests/MarkdownTextTests/TextGroupTests.swift @@ -0,0 +1,322 @@ +// +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See LICENSE in the project root for license information. +// + +import Markdown +@testable import SwiftStreamingMarkdown +import SwiftUI +import XCTest + +@MainActor +final class TextGroupTests: XCTestCase { + + private let parser = MarkdownParserImpl() + + private func renderableDocument(for text: String, config: MarkdownRenderConfig = .default) async -> RenderableDocument { + let document = await parser.parse(text: text) + return await RenderableDocument(document: document, config: config) + } + + private func textGroup(_ text: String, config: MarkdownRenderConfig = .default) async -> (blocks: [MarkdownRenderable], content: NSMutableAttributedString)? { + guard case .textGroup(_, let blocks, let content) = await renderableDocument(for: text, config: config).renderables.first else { + XCTFail("Expected a text group") + return nil + } + return (blocks, content) + } + + // MARK: - Grouping + + func test_adjacentHeadingsAndParagraphs_areGroupedIntoOneRenderable() async { + let renderables = await renderableDocument(for: "# Title\n\nFirst paragraph.\n\nSecond paragraph.\n\n## Section").renderables + + XCTAssertEqual(renderables.count, 1) + guard case .textGroup(_, let blocks, let content) = renderables.first else { + return XCTFail("Expected adjacent text blocks to be grouped") + } + XCTAssertEqual(blocks.compactMap { $0.plainText }, ["Title", "First paragraph.", "Second paragraph.", "Section"]) + XCTAssertEqual(content.string, "Title\nFirst paragraph.\nSecond paragraph.\nSection") + } + + func test_textBlocksSeparatedByOtherBlocks_areNotGrouped() async { + let renderables = await renderableDocument(for: "# Intro\n\n- item\n\nOutro.").renderables + + XCTAssertEqual(renderables.count, 3) + guard case .heading = renderables[0], case .unorderedList = renderables[1], case .paragraph = renderables[2] else { + return XCTFail("Expected heading, list, paragraph") + } + } + + func test_blockSpacingBelowLineSpacing_keepsBlocksSeparate() async { + let config = MarkdownRenderConfig.default.withBlockSpacing(value: 2) + let renderables = await renderableDocument(for: "# Title\n\nBody.", config: config).renderables + + XCTAssertEqual(renderables.count, 2, "A paragraph break can't be spaced tighter than the line spacing") + } + + func test_group_keepsFirstBlockID_asBlocksStreamIn() async { + let before = await renderableDocument(for: "# Title").renderables + let after = await renderableDocument(for: "# Title\n\nBody").renderables + + XCTAssertEqual(before.map(\.id), after.map(\.id), "A stable ID keeps SwiftUI updating the same text view") + } + + func test_blockSpacing_appliesOnlyToEachBlocksFirstLine() async { + let config = MarkdownRenderConfig.default + guard let group = await textGroup("First.\n\nSecond, line one\nSecond, line two", config: config) else { return } + func spacingBefore(_ text: String) -> CGFloat { + let location = (group.content.string as NSString).range(of: text).location + let style = group.content.attribute(.paragraphStyle, at: location, effectiveRange: nil) as? NSParagraphStyle + return style?.paragraphSpacingBefore ?? 0 + } + + XCTAssertEqual(spacingBefore("First."), 0) + XCTAssertEqual(spacingBefore("Second, line one"), config.blockSpacing - MarkdownRenderable.paragraphLineSpacing) + XCTAssertEqual(spacingBefore("Second, line two"), 0, "Soft-break lines belong to the same block") + } + + func test_plainText_keepsBlankLineBetweenGroupedBlocks() async { + let document = await renderableDocument(for: "# Title\n\nFirst.\n\nSecond.") + + XCTAssertEqual(document.plainText, "Title\n\nFirst.\n\nSecond.") + } + + // MARK: - Rendering + + /// A group must lay out exactly like its blocks stacked `blockSpacing` apart, + /// so grouping is visually a no-op. Pairs keep one break's error from + /// cancelling out another's. + func test_groupHeight_matchesStackedBlocks_forEveryKindOfBreak() async { + let heading = "# A heading long enough to wrap onto a second line" + let paragraph = "A paragraph that is long enough to wrap across several lines at this width." + let pairs = [(heading, paragraph), (paragraph, heading), (paragraph, paragraph), (heading, heading)] + for blockSpacing: CGFloat in [MarkdownRenderConfig.defaultBlockSpacing, 10] { + let config = MarkdownRenderConfig.default.withBlockSpacing(value: blockSpacing) + for (first, second) in pairs { + guard let group = await textGroup("\(first)\n\n\(second)", config: config) else { return } + + let stacked = group.blocks.map(measuredHeight(ofBlock:)).reduce(blockSpacing, +) + + XCTAssertEqual(measuredHeight(of: group.content), stacked, accuracy: measurementAccuracy, "'\(first)' then '\(second)', blockSpacing \(blockSpacing)") + } + } + } + + func test_adjacentTextBlocks_renderInOneTextView() async { + let document = await renderableDocument(for: "# Title\n\nFirst paragraph.\n\n```\ncode\n```\n\nLast paragraph.") + + let textViews = renderedTextViews(for: [document])[0] + + XCTAssertEqual(textViews.map(\.paragraphContents.string), ["Title\nFirst paragraph.", "Last paragraph."]) + } + + /// When streaming turns a lone heading into a group, SwiftUI must update the + /// same text view rather than recreate it, so appended words can fade in. + func test_blockBecomingGroup_keepsItsTextView() async { + let single = await renderableDocument(for: "# Title") + let grouped = await renderableDocument(for: "# Title\n\nBody") + + let renders = renderedTextViews(for: [single, grouped]) + + XCTAssertEqual(renders.map(\.count), [1, 1]) + XCTAssertTrue(renders[0].first === renders[1].first, "Expected the text view to be reused") + XCTAssertEqual(renders[1].first?.paragraphContents.string, "Title\nBody") + } + + // MARK: - Streaming updates + + func test_streamingAppend_keepsSelection() async { + guard let first = await textGroup("# Title\n\nFirst"), let second = await textGroup("# Title\n\nFirst paragraph") else { return } + + withHostedParagraphView { view in + view.setParagraphContents(first.content, animatedByWord: false) + view.selection = NSRange(location: 0, length: 5) + + view.setParagraphContents(second.content, animatedByWord: true) + + XCTAssertEqual(view.displayedText.string, "Title\nFirst paragraph") + XCTAssertEqual(view.selection, NSRange(location: 0, length: 5), "Appended text must not reset the selection") + } + } + + func test_nonAnimatedUpdate_clearsInFlightFades() async { + guard let first = await textGroup("# Title\n\nFirst"), let second = await textGroup("# Title\n\nFirst paragraph") else { return } + + withHostedParagraphView { view in + view.setParagraphContents(first.content, animatedByWord: true) + view.setParagraphContents(second.content, animatedByWord: false) + + let displayed = view.displayedText.attribute(.foregroundColor, at: 0, effectiveRange: nil) as? MDColor + let source = second.content.attribute(.foregroundColor, at: 0, effectiveRange: nil) as? MDColor + XCTAssertEqual(displayed, source, "A fade cut short must not leave text translucent") + } + } + + // MARK: - Accessibility + + func test_group_exposesOneAccessibilityElementPerBlock() async { + guard let group = await textGroup("# Title\n\nBody text.") else { return } + + withHostedParagraphView { view in + view.setParagraphContents(group.content, animatedByWord: false) + let elements = view.blockElements + + XCTAssertFalse(view.isOneAccessibilityElement, "The blocks are the elements, not the whole text view") + XCTAssertEqual(elements.map { $0.label }, ["Title", "Body text."]) + XCTAssertEqual(elements.map { $0.isHeading }, [true, false]) + guard elements.count == 2 else { return } + XCTAssertFalse(elements[0].frame.isEmpty) + XCTAssertTrue(isAbove(elements[0].frame, elements[1].frame), "Each element must be framed on its own block") + } + } + + func test_singleBlock_staysOneAccessibilityElement() async { + guard case .paragraph(_, let content) = await renderableDocument(for: "Just one paragraph.").renderables.first else { + return XCTFail("Expected a paragraph") + } + + withHostedParagraphView { view in + view.setParagraphContents(content, animatedByWord: false) + + XCTAssertTrue(view.isOneAccessibilityElement) + XCTAssertTrue(view.blockElements.isEmpty) + } + } + + // MARK: - Helpers + + private func measuredHeight(ofBlock block: MarkdownRenderable) -> CGFloat { + switch block { + case .heading(_, _, let content), .paragraph(_, let content): return measuredHeight(of: content) + default: return 0 + } + } + + private func measuredHeight(of content: NSMutableAttributedString, width: CGFloat = 300) -> CGFloat { + let view = MDParagraphView() + view.setParagraphContents(content, animatedByWord: false) + #if canImport(UIKit) + return view.sizeThatFits(CGSize(width: width, height: .greatestFiniteMagnitude)).height + #else + return view.measureSize(fittingWidth: width).height + #endif + } + + #if canImport(UIKit) + private let measurementAccuracy: CGFloat = 0.01 + + /// Whether `upper` sits above `lower`, in view coordinates that grow downwards. + private func isAbove(_ upper: CGRect, _ lower: CGRect) -> Bool { + upper.maxY <= lower.minY + } + + /// Renders each document in turn in the same host and returns the paragraph + /// text views present after each render. + private func renderedTextViews(for documents: [RenderableDocument]) -> [[ParagraphUIView]] { + let host = UIHostingController(rootView: DocumentView(renderableDocument: documents[0])) + let window = UIWindow(frame: CGRect(x: 0, y: 0, width: 390, height: 844)) + window.rootViewController = host + window.makeKeyAndVisible() + defer { window.isHidden = true } + return documents.map { document in + host.rootView = DocumentView(renderableDocument: document) + host.view.setNeedsLayout() + host.view.layoutIfNeeded() + return host.view.descendants(ofType: ParagraphUIView.self) + } + } + + private func withHostedParagraphView(_ body: (ParagraphUIView) -> Void) { + let window = UIWindow(frame: CGRect(x: 0, y: 0, width: 390, height: 844)) + let view = ParagraphUIView(frame: CGRect(x: 0, y: 0, width: 350, height: 400)) + window.addSubview(view) + window.makeKeyAndVisible() + defer { window.isHidden = true } + _ = view.becomeFirstResponder() + body(view) + } + #elseif canImport(AppKit) + /// Separate views each round their height up to a whole point. + private let measurementAccuracy: CGFloat = 1 + + /// Whether `upper` sits above `lower`, in screen coordinates that grow upwards. + private func isAbove(_ upper: CGRect, _ lower: CGRect) -> Bool { + upper.minY >= lower.maxY + } + + private func renderedTextViews(for documents: [RenderableDocument]) -> [[ParagraphNSView]] { + let host = NSHostingController(rootView: DocumentView(renderableDocument: documents[0])) + let window = NSWindow(contentViewController: host) + window.setContentSize(CGSize(width: 390, height: 844)) + return documents.map { document in + host.rootView = DocumentView(renderableDocument: document) + host.view.layoutSubtreeIfNeeded() + return host.view.descendants(ofType: ParagraphNSView.self) + } + } + + private func withHostedParagraphView(_ body: (ParagraphNSView) -> Void) { + let window = NSWindow(contentRect: CGRect(x: 0, y: 0, width: 390, height: 844), styleMask: [.titled], backing: .buffered, defer: false) + let view = ParagraphNSView() + view.frame = CGRect(x: 0, y: 0, width: 350, height: 400) + window.contentView?.addSubview(view) + window.makeFirstResponder(view) + body(view) + } + #endif +} + +/// What a text view exposes to accessibility for one block. +private struct BlockElement { + let label: String? + let isHeading: Bool + let frame: CGRect +} + +#if canImport(UIKit) +private extension ParagraphUIView { + var selection: NSRange { + get { selectedRange } + set { selectedRange = newValue } + } + var displayedText: NSAttributedString { attributedText } + var isOneAccessibilityElement: Bool { isAccessibilityElement } + var blockElements: [BlockElement] { + (accessibilityElements as? [UIAccessibilityElement] ?? []).map { + BlockElement(label: $0.accessibilityLabel, isHeading: $0.accessibilityTraits.contains(.header), frame: $0.accessibilityFrameInContainerSpace) + } + } +} + +private extension UIView { + func descendants(ofType type: T.Type) -> [T] { + subviews.flatMap { subview -> [T] in + ((subview as? T).map { [$0] } ?? []) + subview.descendants(ofType: type) + } + } +} +#elseif canImport(AppKit) +private extension ParagraphNSView { + var selection: NSRange { + get { selectedRange() } + set { setSelectedRange(newValue) } + } + var displayedText: NSAttributedString { attributedString() } + var isOneAccessibilityElement: Bool { isAccessibilityElement() } + var blockElements: [BlockElement] { + guard !isAccessibilityElement() else { return [] } + return (accessibilityChildren() as? [NSAccessibilityElement] ?? []).map { + BlockElement(label: $0.accessibilityLabel(), isHeading: $0.accessibilityRole()?.rawValue == "AXHeading", frame: $0.accessibilityFrame()) + } + } +} + +private extension NSView { + func descendants(ofType type: T.Type) -> [T] { + subviews.flatMap { subview -> [T] in + ((subview as? T).map { [$0] } ?? []) + subview.descendants(ofType: type) + } + } +} +#endif diff --git a/Tests/MarkdownTextTests/__Snapshots__/MarkdownTextSnapshotTests/testMarkdownLists_uikit.iPhone16-dark-US-en.png b/Tests/MarkdownTextTests/__Snapshots__/MarkdownTextSnapshotTests/testMarkdownLists_uikit.iPhone16-dark-US-en.png index 8464ae9bed9f149d425b8785ed81bc4df7baf203..fd9fbc36319db027d6fa545e5bb5928ec1bafee9 100755 GIT binary patch literal 361510 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

bq1WSO1gBxzU2hXf& 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W@%-tGKeO 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

5y^)jQG>p^J98Rj(%Zmd1=x+0Dra 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