diff --git a/.changeset/poor-moose-approve.md b/.changeset/poor-moose-approve.md new file mode 100644 index 000000000..909417649 --- /dev/null +++ b/.changeset/poor-moose-approve.md @@ -0,0 +1,5 @@ +--- +'slate-react': patch +--- + +Scroll when inserting new text will now scroll parent scrollables diff --git a/packages/slate-react/src/components/editable.tsx b/packages/slate-react/src/components/editable.tsx index 623ae44d6..d2110ae76 100644 --- a/packages/slate-react/src/components/editable.tsx +++ b/packages/slate-react/src/components/editable.tsx @@ -216,7 +216,6 @@ export const Editable = (props: EditableProps) => { ) scrollIntoView(leafEl, { scrollMode: 'if-needed', - boundary: el, }) // @ts-ignore delete leafEl.getBoundingClientRect diff --git a/site/examples/scroll-into-view.tsx b/site/examples/scroll-into-view.tsx new file mode 100644 index 000000000..938a3e597 --- /dev/null +++ b/site/examples/scroll-into-view.tsx @@ -0,0 +1,70 @@ +import React, { useState, useMemo } from 'react' +import { createEditor, Descendant } from 'slate' +import { Slate, Editable, withReact } from 'slate-react' +import { withHistory } from 'slate-history' +import { css } from 'emotion' +import range from 'lodash/range' + +/** + * This is an example we can use to test the scrollIntoView functionality in + * `Editable`. Keeping it here for now as we may need it to make sure it is + * working properly after adding it. + * + * If all is good, we can remove this example. + * + * Note: + * The example needs to be added to `[example].tsx` before it can be used. + */ + +const ScrollIntoViewExample = () => { + return ( +