Releases
v1.1.0
Compare
Sorry, something went wrong.
No results found
1.1.0 (2026-10-19)
Features
add shared wire protocol, boot config and core contracts (f12d132 ), closes #318 #343 #322 #227 #3305
add the custom keyboard state machine and drivers (b4f40bc )
add the exampleoldarch app and the web E2E workspace (54a932d ), closes #318 #205
add the native EditorController (10ca920 ), closes #343 #322 #227 #299 #318 #69 #346
add the process-wide keyboard store behind useKeyboard (cfdbe93 )
add the TenTapKeyboard Android module in Java (70e03bc ), closes #50 #350
back useEditorBridge with the EditorController (5e347c1 ), closes #51 #206
confirm keyboard state with the native module and re-show the IME on Android (805afe8 )
example-expo: add the Expo SDK 57 example app (a043d05 )
example-expo: give the example app a themed look with light and dark mode (9f2239a )
example: add the RN 0.81 example app (274e2f9 )
export the custom keyboard and 1.1 additions from the root entry (5a54bdd )
ios: add the TenTapKeyboard native module and modernise the podspec (46bab45 ), closes #302 #285
rebuild RichText on the editor controller (1e63234 ), closes #343 #322 #342 #205 #323 #308 #336 #299 #321
restore CustomKeyboard, ColorKeyboard and the keyboard API (5071991 ), closes #51 #285 #302 #50
restore the color keyboard theme (c972aab ), closes #285 #239
route core bridge commands through BridgeContext (d7bd741 ), closes #309 #62 #338 #327 #339
toolbar: export HEADING_ITEMS and ToolbarContext, generate heading items (99e1f3e ), closes #295 #296
toolbar: label the toolbar buttons for accessibility (aba1e14 )
web: add the web runtime (c930acb ), closes #343 #322 #227 react-native-webview#3305 #318 #339
web: rebuild useTenTap on the runtime (24be9f6 ), closes #343 #322 #309 #327 #289 #323 #336 #342 #309
Bug Fixes
add a protocol to links typed without one (efc9e7f ), closes #255
android: give the editor its focus back after a collapsed layout (9ec869e )
android: give the editor its focus back when a key would move it (1550357 )
android: keep a bottom-anchored editor still while keyboards swap (7270cfa )
android: keep a custom keyboard open through a rotation (cc62e98 )
android: keep the editor still when the system keyboard replaces a custom one (3f0031c )
android: keep the keyboard up after inserting a link (2d52cb4 )
android: keep the loading WebView laid out so its accessibility nodes get bounds (bdf2c5d )
android: keep the toolbar and keyboard area steady while keyboards swap (ded07f7 )
android: read newArchEnabled from the library project so React Native 0.82+ builds codegen (94df839 )
android: refocus the autofocus input when it kept focus without the IME (101f15e )
android: report an IME that opens before its insets have a height (5475c94 )
android: show the IME again when autofocus could not bring it up (2b3226f )
android: show the keyboard when the editor is focused and it stays down (dc7efea )
android: stop scripting a WebView whose renderer is gone (bea6a67 )
blur before dropping the latch when dismissing an unfocused open (f448e58 )
content: ignore fetched content that predates a later setContent (a458800 )
content: keep useEditorContent current with legacy bundles (dceab95 )
core: parse inline-only HTML in setContent with preserveWhitespace full (17176d4 )
core: separate selected blocks with one newline inside lists and quotes (e55529e )
deps: install @tiptap/react, react-dom and the other 1.0 dependencies again (9f189b8 )
deps: make @tiptap/react an optional peer dependency (53b9b67 )
deps: restore the 1.0.1 react-dom range (f69d73a )
drop scripts sent to a disposed controller without warning (80eb2b3 )
dynamic-height: detect a clamp at a height native already reached (82f5e96 )
dynamic-height: do not replay an older page's switch onto a new page (1ce28b1 )
dynamic-height: inject the corrected stylesheet into custom bundles built against 1.0 (b7a240c )
dynamic-height: keep the document of a 1.0 bundle when dynamicHeight changes (ceb222f )
dynamic-height: keep the editor visible inside a capped parent (479c8a3 )
dynamic-height: pad by scrollBottomOffset in dynamic-height mode (9a51dae )
dynamic-height: reset flex so a capped editor lays out on Fabric (9d9243f )
dynamic-height: switch dynamicHeight without reloading the WebView (88a1f16 )
editor: add the array methods older Android WebViews lack (e794315 )
editor: boot the default editor through the web runtime (f9ecda0 ), closes #336 #342
editor: keep the first block's margin inside the editor (8d0f1dd )
editor: keep the selection through a collapsed layout (9bb7130 )
editor: leave empty unset until the page reports its first state, as 1.0 did (4e13ec1 )
editor: let 1.0 code assign editor option and state fields (6eca826 )
editor: let useScrollToCaret follow a capped dynamic-height editor (689a097 )
editor: re-render RichText and Toolbar under memoized parents when options change (00613cc )
editor: set EditorHelper.editorLastInstance while the editor renders (9c44a0e )
example-expo: keep the toolbar and custom keyboard above the keyboard (cba9d85 )
example: give the modal keyboard example its own safe area provider (d7534e3 )
example: keep keyboard screens clear of the landscape sensor housing (cb78b8f )
example: keep the overlay keyboard example toolbar at its own height (19cc80b )
example: leave the caret room on the Dynamic height and NavigationHeader screens (a175109 )
example: leave the editor room in short landscape windows (22200e4 )
example: let editor taps through the compose toolbar's keyboard padding (246476a )
example: pin react-dom to the example's React for the Advanced web bundle (e427881 )
example: report words and characters under the right CounterBridge keys (2244e8c )
hooks: let useBridgeState follow subscription states like 1.0 (80e3748 )
import the selection highlight extension from @tiptap/core (06eec77 ), closes #67
ios: keep recovering an editor whose renderers keep crashing (2ebb75d )
keep hard breaks in getSelectedText (7c5239a ), closes #338
keep the caret below an image inserted at the end (cfcc42f ), closes #273 #291
keep the keyboard module importable on react-native-web (1d49c5b )
keep the new workspaces out of the library declaration build (6318d45 )
keep the web editor ready across react-native-web-webview renders (ccf0881 )
keyboard: apply 'stable' mode on the next open when the window lacked focus (f94a7af )
keyboard: bring the system keyboard back when suppression verification fails (e68990f )
keyboard: count a 'stable' host once across a StrictMode re-attach (519b029 )
keyboard: cover the navigation bar on edge-to-edge Android (06e812e )
keyboard: fall back for one open when the editor was not focused yet (87aa6ee )
keyboard: give a keyboard without a height the system height when switching to it (407ae97 )
keyboard: give an event-only suppression check time for a slow IME hide (8b351ea )
keyboard: keep Android's stable window mode until the last host detaches (8587352 )
keyboard: keep the overlay keyboard inside its host view (339242e )
keyboard: keep the toolbar on the keyboard and the caret above the toolbar (2d3f664 )
keyboard: keep the toolbar on the keyboard on edge-to-edge Android (39ec161 )
keyboard: let a bare CustomKeyboardExtension hold ColorKeyboard again (44df459 )
keyboard: let ColorKeyboard buttons shrink on narrow screens (b09f74a )
keyboard: place an overlay keyboard in window coordinates after a rotation (56b9ca5 )
keyboard: place the toolbar on the keyboard from measured geometry (66cccab )
keyboard: prefix custom keyboard warnings with [TenTap] like the rest of the library (3c0b0f1 )
keyboard: read the Android status bar height from the window insets (c58faf4 )
keyboard: read the navigation bar inset again on every open (98e2012 )
keyboard: release only the iOS suppression a host made itself (aba4a23 )
keyboard: reset the bottom insets when scrollBottomOffset is unset (2df7c00 )
keyboard: reset the system keyboard state when listening resumes (f491ae7 )
keyboard: resize an open custom keyboard when the window rotates (09361ad )
keyboard: retry the native driver after one focus failure with the editor focused (81a6a6d )
keyboard: skip the fallback suppression after the transition ended (fe95088 )
let RichText accept spread copies of the editor (b295a6c )
let RN 0.74-0.76 autolinking detect the Android package (af6e7de )
link: honor an explicit http defaultProtocol (2e75b40 )
link: keep TipTap's autolink protocol and record a configured one (b881cdd )
link: turn a bare email address into a mailto link (2441fcf )
load every bridge's type augmentation with EditorBridge (#290 ) (e0b13af )
make setPlaceholder update the placeholder on tiptap 3 (11742a7 )
native: do not replay commands after a late 1.1 handshake (648e3e4 )
native: hold capability-gated RPCs until the bundle is known (95ab636 )
native: keep a ready page when the WebView ref detaches and comes back (d17dcea )
native: keep RPC timeouts running after the editor unmounts (21a6d44 )
native: replay content after a reload without firing onChange (860eca0 )
native: resolve deprecated asyncMessages requests from core replies (ccf6bcb )
package: declare the React Native 0.74 floor as a peer range (5f30e5f )
package: drop react-dom from runtime dependencies (992f30d ), closes #315
package: emit only declarations into lib-web/typescript (20d5fc7 )
package: keep the react-native peer dependency at * (2edf594 )
package: leave the editor build input and empty .d.js files out of the tarball (0763f4a )
package: publish the Node 18 engines range again (3eb149e )
queue CoreBridge injectJS until the editor is ready (87ddbf6 )
replay the outbox when the handshake arrives after the ready fallback (1b5729b )
resolve the advanced example's web editor build against local lib-web (93059d7 ), closes #334
restore inputmode on the previously suppressed WebView when another is suppressed (77194d7 )
RichText: replace a recovered WebView again when it never becomes ready (c6b56cb )
RichText: restore the latest edits after a renderer crash (2164add )
route WebView messages and load events to the editor controller (db046ef )
skip autofocus and editable commands when CoreBridge is absent (c29637a )
start injected stylesheet and boot scripts with a semicolon (dfc006a )
theme: type the resolved themes with a colorKeyboard (5ef9de5 )
toolbar: apply an Android link to the selection held when the link bar opened (37eac2c )
toolbar: close the link bar when the keyboard is dismissed and honor hidden (ef44c9d )
toolbar: link the range selected while the Android link bar is open (51dba01 )
toolbar: remount per context, add headingItems and keep the link bar open (b13a2d6 ), closes #298 #295 #252 #239 #173
track applied keyboard insets per editor controller (bf7fdbf )
types: accept 1.0-style configureTiptapExtensionsOnRunTime overrides (ea95b8e )
types: declare editorHtml in the root entry (7143f6b )
types: keep React Native codegen types out of the root declarations (ceee75b )
web: apply the dynamic-height stylesheet without !important so app CSS can size the editor (7c4b186 )
web: count the first and last block margins in the dynamic height (e9c38b9 )
web: keep a custom keyboard open when the editor blurs (29533a6 )
web: keep another editor's messages out of a custom onMessage (d86d990 )
web: keep stored marks off a composition the Android keyboard starts on its own (e92e9b4 )
web: keep suppressing scroll for the first new line after a pause (6247348 ), closes #236 #244
web: keep the caret visible when the keyboard grows (3aa5afd )
web: keep the editor's text in place when a keyboard closes (c556660 )
web: keep the toolbar in its row and the editor focused (cd84ecc )
web: publish focus only when the document focus actually changes (368400b )
web: run web-only bridges that have no TipTap extension (48c668d )
web: skip the react-native-webview version lookup on web (b876103 )
web: stop touching the DOM when focusListener is imported (887142a )
whitelist HistoryBridge under its 0.7.x name for legacy bundles (c92a1f0 )
You can’t perform that action at this time.