oficina / docs Public

native/sync-batching

docs/superpowers/specs/2026-09-20-mac-document-windows.md +85 −0
docs/superpowers/specs/2026-09-20-mac-document-windows.md

Loading diff…

internal/docs/app.go +1 −0
internal/docs/app.go

Loading diff…

internal/docs/handlers.go +54 −1
internal/docs/handlers.go

Loading diff…

internal/docs/migrations/0008_document_creation_token.sql +2 −0
internal/docs/migrations/0008_document_creation_token.sql

Loading diff…

internal/docs/models.go +2 −1
internal/docs/models.go

Loading diff…

internal/docs/native_test.go +51 −0
internal/docs/native_test.go

Loading diff…

internal/docs/store.go +37 −0
internal/docs/store.go

Loading diff…

native/INSTANT-DOCUMENTS.md +28 −0
native/INSTANT-DOCUMENTS.md

Loading diff…

native/PrivacyInfo.xcprivacy +17 −0
native/PrivacyInfo.xcprivacy

Loading diff…

native/apple/Package.resolved +11 −2
native/apple/Package.resolved

Loading diff…

native/apple/Package.swift +8 −2
native/apple/Package.swift

Loading diff…

native/apple/Sources/DocsApp/DocsAccountWindow.swift +52 −0
native/apple/Sources/DocsApp/DocsAccountWindow.swift

Loading diff…

native/apple/Sources/DocsApp/DocsApp.swift +24 −10
native/apple/Sources/DocsApp/DocsApp.swift

Loading diff…

native/apple/Sources/DocsApp/DocsDocumentWindow.swift +23 −0
native/apple/Sources/DocsApp/DocsDocumentWindow.swift

Loading diff…

native/apple/Sources/DocsApp/DocsWindowCommands.swift +48 −0
native/apple/Sources/DocsApp/DocsWindowCommands.swift

Loading diff…

native/apple/Sources/DocsApp/DocsWindows.swift +63 −0
native/apple/Sources/DocsApp/DocsWindows.swift

Loading diff…

native/apple/Sources/DocsKit/CRDTReplica.swift +12 −1
native/apple/Sources/DocsKit/CRDTReplica.swift

Loading diff…

native/apple/Sources/DocsKit/DocsAccountActions.swift +10 −0
native/apple/Sources/DocsKit/DocsAccountActions.swift

Loading diff…

native/apple/Sources/DocsKit/DocsDocumentMenu.swift +28 −0
native/apple/Sources/DocsKit/DocsDocumentMenu.swift

Loading diff…

native/apple/Sources/DocsKit/DocsEditorCommands.swift +58 −0
native/apple/Sources/DocsKit/DocsEditorCommands.swift

Loading diff…

native/apple/Sources/DocsKit/DocsEditorContext.swift +21 −0
native/apple/Sources/DocsKit/DocsEditorContext.swift

Loading diff…

native/apple/Sources/DocsKit/DocsFonts.swift +1 −0
native/apple/Sources/DocsKit/DocsFonts.swift

Loading diff…

native/apple/Sources/DocsKit/DocsLayoutManager.swift +70 −0
native/apple/Sources/DocsKit/DocsLayoutManager.swift

Loading diff…

native/apple/Sources/DocsKit/DocsMacStrings.swift +5 −0
native/apple/Sources/DocsKit/DocsMacStrings.swift

Loading diff…

native/apple/Sources/DocsKit/DocsModel.swift +142 −14
native/apple/Sources/DocsKit/DocsModel.swift

Loading diff…

native/apple/Sources/DocsKit/DocsPagedTextView.swift +86 −21
native/apple/Sources/DocsKit/DocsPagedTextView.swift

Loading diff…

native/apple/Sources/DocsKit/DocsPaging.swift +28 −2
native/apple/Sources/DocsKit/DocsPaging.swift

Loading diff…

native/apple/Sources/DocsKit/DocsWorkspace.swift +205 −35
native/apple/Sources/DocsKit/DocsWorkspace.swift

Loading diff…

native/apple/Sources/DocsKit/DocumentBlockSpacing.swift +54 −0
native/apple/Sources/DocsKit/DocumentBlockSpacing.swift

Loading diff…

native/apple/Sources/DocsKit/DocumentCommands.swift +3 −1
native/apple/Sources/DocsKit/DocumentCommands.swift

Loading diff…

native/apple/Sources/DocsKit/DocumentExportControls.swift +9 −0
native/apple/Sources/DocsKit/DocumentExportControls.swift

Loading diff…

native/apple/Sources/DocsKit/DocumentInlineCode.swift +38 −0
native/apple/Sources/DocsKit/DocumentInlineCode.swift

Loading diff…

native/apple/Sources/DocsKit/DocumentPageLayout.swift +64 −0
native/apple/Sources/DocsKit/DocumentPageLayout.swift

Loading diff…

native/apple/Sources/DocsKit/DocumentRenderReconciliation.swift +21 −0
native/apple/Sources/DocsKit/DocumentRenderReconciliation.swift

Loading diff…

native/apple/Sources/DocsKit/DocumentThumbnail.swift +3 −1
native/apple/Sources/DocsKit/DocumentThumbnail.swift

Loading diff…

native/apple/Sources/DocsKit/DocumentToolbarSelection.swift +38 −0
native/apple/Sources/DocsKit/DocumentToolbarSelection.swift

Loading diff…

native/apple/Sources/DocsKit/EditorToolbar.swift +39 −20
native/apple/Sources/DocsKit/EditorToolbar.swift

Loading diff…

native/apple/Sources/DocsKit/NativeDocumentTextView.swift +17 −3
native/apple/Sources/DocsKit/NativeDocumentTextView.swift

Loading diff…

native/apple/Sources/DocsKit/NativeTextProjection.swift +53 −6
native/apple/Sources/DocsKit/NativeTextProjection.swift

Loading diff…

native/apple/Sources/DocsKit/Resources/ar.lproj/Localizable.strings +2 −0
native/apple/Sources/DocsKit/Resources/ar.lproj/Localizable.strings

Loading diff…

native/apple/Sources/DocsKit/Resources/ar.lproj/Mac.strings +51 −0
native/apple/Sources/DocsKit/Resources/ar.lproj/Mac.strings

Loading diff…

native/apple/Sources/DocsKit/Resources/bn.lproj/Localizable.strings +2 −0
native/apple/Sources/DocsKit/Resources/bn.lproj/Localizable.strings

Loading diff…

native/apple/Sources/DocsKit/Resources/bn.lproj/Mac.strings +51 −0
native/apple/Sources/DocsKit/Resources/bn.lproj/Mac.strings

Loading diff…

native/apple/Sources/DocsKit/Resources/en.lproj/Localizable.strings +2 −0
native/apple/Sources/DocsKit/Resources/en.lproj/Localizable.strings

Loading diff…

native/apple/Sources/DocsKit/Resources/en.lproj/Mac.strings +51 −0
native/apple/Sources/DocsKit/Resources/en.lproj/Mac.strings

Loading diff…

native/apple/Sources/DocsKit/Resources/es.lproj/Localizable.strings +2 −0
native/apple/Sources/DocsKit/Resources/es.lproj/Localizable.strings

Loading diff…

native/apple/Sources/DocsKit/Resources/es.lproj/Mac.strings +51 −0
native/apple/Sources/DocsKit/Resources/es.lproj/Mac.strings

Loading diff…

native/apple/Sources/DocsKit/Resources/ga.lproj/Localizable.strings +2 −0
native/apple/Sources/DocsKit/Resources/ga.lproj/Localizable.strings

Loading diff…

native/apple/Sources/DocsKit/Resources/ga.lproj/Mac.strings +51 −0
native/apple/Sources/DocsKit/Resources/ga.lproj/Mac.strings

Loading diff…

native/apple/Sources/DocsKit/Resources/hi.lproj/Localizable.strings +2 −0
native/apple/Sources/DocsKit/Resources/hi.lproj/Localizable.strings

Loading diff…

native/apple/Sources/DocsKit/Resources/hi.lproj/Mac.strings +51 −0
native/apple/Sources/DocsKit/Resources/hi.lproj/Mac.strings

Loading diff…

native/apple/Sources/DocsKit/Resources/ja.lproj/Localizable.strings +2 −0
native/apple/Sources/DocsKit/Resources/ja.lproj/Localizable.strings

Loading diff…

native/apple/Sources/DocsKit/Resources/ja.lproj/Mac.strings +51 −0
native/apple/Sources/DocsKit/Resources/ja.lproj/Mac.strings

Loading diff…

native/apple/Sources/DocsKit/Resources/pt.lproj/Localizable.strings +2 −0
native/apple/Sources/DocsKit/Resources/pt.lproj/Localizable.strings

Loading diff…

native/apple/Sources/DocsKit/Resources/pt.lproj/Mac.strings +51 −0
native/apple/Sources/DocsKit/Resources/pt.lproj/Mac.strings

Loading diff…

native/apple/Sources/DocsKit/Resources/ru.lproj/Localizable.strings +2 −0
native/apple/Sources/DocsKit/Resources/ru.lproj/Localizable.strings

Loading diff…

native/apple/Sources/DocsKit/Resources/ru.lproj/Mac.strings +51 −0
native/apple/Sources/DocsKit/Resources/ru.lproj/Mac.strings

Loading diff…

native/apple/Sources/DocsKit/Resources/vi.lproj/Localizable.strings +2 −0
native/apple/Sources/DocsKit/Resources/vi.lproj/Localizable.strings

Loading diff…

native/apple/Sources/DocsKit/Resources/vi.lproj/Mac.strings +51 −0
native/apple/Sources/DocsKit/Resources/vi.lproj/Mac.strings

Loading diff…

native/apple/Sources/DocsKit/Resources/yue.lproj/Localizable.strings +2 −0
native/apple/Sources/DocsKit/Resources/yue.lproj/Localizable.strings

Loading diff…

native/apple/Sources/DocsKit/Resources/yue.lproj/Mac.strings +51 −0
native/apple/Sources/DocsKit/Resources/yue.lproj/Mac.strings

Loading diff…

native/apple/Sources/DocsKit/Resources/zh-Hans.lproj/Localizable.strings +2 −0
native/apple/Sources/DocsKit/Resources/zh-Hans.lproj/Localizable.strings

Loading diff…

native/apple/Sources/DocsKit/Resources/zh-Hans.lproj/Mac.strings +51 −0
native/apple/Sources/DocsKit/Resources/zh-Hans.lproj/Mac.strings

Loading diff…

native/apple/Tests/DocsKitTests/BrowserTypographyTests.swift +179 −0
native/apple/Tests/DocsKitTests/BrowserTypographyTests.swift

Loading diff…

native/apple/Tests/DocsKitTests/DocumentDraftTests.swift +72 −0
native/apple/Tests/DocsKitTests/DocumentDraftTests.swift

Loading diff…

native/apple/Tests/DocsKitTests/DocumentPageEditingTests.swift +113 −0
native/apple/Tests/DocsKitTests/DocumentPageEditingTests.swift

Loading diff…

native/apple/Tests/DocsKitTests/DocumentRenderReconciliationTests.swift +49 −0
native/apple/Tests/DocsKitTests/DocumentRenderReconciliationTests.swift

Loading diff…

native/apple/Tests/DocsKitTests/DocumentSyncIntegrationTests.swift +61 −0
native/apple/Tests/DocsKitTests/DocumentSyncIntegrationTests.swift

Loading diff…

native/apple/Tests/DocsKitTests/DocumentToolbarSelectionTests.swift +82 −0
native/apple/Tests/DocsKitTests/DocumentToolbarSelectionTests.swift

Loading diff…

native/apple/Tests/DocsKitTests/DocumentTypographyTests.swift +47 −0
native/apple/Tests/DocsKitTests/DocumentTypographyTests.swift

Loading diff…

native/apple/Tests/DocsKitTests/HomeLoadingTests.swift +22 −0
native/apple/Tests/DocsKitTests/HomeLoadingTests.swift

Loading diff…

native/apple/Tests/DocsWindowTests/WindowRoutingTests.swift +44 −0
native/apple/Tests/DocsWindowTests/WindowRoutingTests.swift

Loading diff…

native/crdt/examples/caret_fixture.rs +11 −0
native/crdt/examples/caret_fixture.rs

Loading diff…

native/crdt/src/lib.rs +22 −9
native/crdt/src/lib.rs

Loading diff…

native/crdt/tests/replica.rs +24 −0
native/crdt/tests/replica.rs

Loading diff…

native/ios/Assets.xcassets/AppIcon.appiconset/AppIcon.png binary
native/ios/Assets.xcassets/AppIcon.appiconset/AppIcon.png

Loading diff…

native/ios/Info.plist +35 −0
native/ios/Info.plist

Loading diff…

native/ios/project.yml +44 −24
native/ios/project.yml

Loading diff…

native/mac-updates.json +6 −0
native/mac-updates.json

Loading diff…

native/macos/AppIcon.icns binary
native/macos/AppIcon.icns

Loading diff…

native/macos/AppStore.entitlements +12 −0
native/macos/AppStore.entitlements

Loading diff…

native/macos/Info.plist +43 −0
native/macos/Info.plist

Loading diff…

native/macos/project.yml +54 −0
native/macos/project.yml

Loading diff…

native/scripts/build-mac.sh +2 −1
native/scripts/build-mac.sh

Loading diff…

native/scripts/test-document-drafts.py +77 −0
native/scripts/test-document-drafts.py

Loading diff…

native/scripts/test-document-window.py +63 −0
native/scripts/test-document-window.py

Loading diff…

native/scripts/test-home-loading.py +36 −0
native/scripts/test-home-loading.py

Loading diff…

native/scripts/test-sync-latency.py +61 −0
native/scripts/test-sync-latency.py

Loading diff…

native/smoke/document-window/Package.resolved +23 −0
native/smoke/document-window/Package.resolved

Loading diff…

native/smoke/document-window/Package.swift +7 −0
native/smoke/document-window/Package.swift

Loading diff…

native/smoke/document-window/README.md +41 −0
native/smoke/document-window/README.md

Loading diff…

native/smoke/document-window/Sources/DocsWindowCommands.swift +1 −0
native/smoke/document-window/Sources/DocsWindowCommands.swift

Loading diff…

native/smoke/document-window/Sources/DocsWindows.swift +1 −0
native/smoke/document-window/Sources/DocsWindows.swift

Loading diff…

native/smoke/document-window/Sources/Smoke.swift +192 −0
native/smoke/document-window/Sources/Smoke.swift

Loading diff…