@lexical/extension/NormalizeTripleClickSelectionExtension
Interfaces
NormalizeTripleClickSelectionConfig
Defined in: packages/lexical-extension/src/NormalizeTripleClickSelectionExtension.ts:42
Properties
$fixFocusOverselection
$fixFocusOverselection: () =>
void
Defined in: packages/lexical-extension/src/NormalizeTripleClickSelectionExtension.ts:50
The update function to call when triple click is detected
Returns
void
dateNow
dateNow: () =>
number
Defined in: packages/lexical-extension/src/NormalizeTripleClickSelectionExtension.ts:48
The clock function used for delay-based merging, default Date.now
Returns
number
disabled
disabled:
boolean
Defined in: packages/lexical-extension/src/NormalizeTripleClickSelectionExtension.ts:44
true to disable this extension
thresholdMsec
thresholdMsec:
number
Defined in: packages/lexical-extension/src/NormalizeTripleClickSelectionExtension.ts:46
The maximum number of msec from the triple click to expect a selection change, default 100
NormalizeTripleClickSelectionOutput
Defined in: packages/lexical-extension/src/NormalizeTripleClickSelectionExtension.ts:53
Properties
$fixFocusOverselection
$fixFocusOverselection:
Signal<() =>void>
Defined in: packages/lexical-extension/src/NormalizeTripleClickSelectionExtension.ts:61
The update function to call when triple click is detected
dateNow
dateNow:
Signal<() =>number>
Defined in: packages/lexical-extension/src/NormalizeTripleClickSelectionExtension.ts:59
The clock function used for delay-based merging, default Date.now
disabled
disabled:
Signal<boolean>
Defined in: packages/lexical-extension/src/NormalizeTripleClickSelectionExtension.ts:55
true to disable this extension
thresholdMsec
thresholdMsec:
Signal<number>
Defined in: packages/lexical-extension/src/NormalizeTripleClickSelectionExtension.ts:57
The maximum number of msec from the triple click to expect a selection change, default 100
Variables
NormalizeTripleClickSelectionExtension
constNormalizeTripleClickSelectionExtension:LexicalExtension<NormalizeTripleClickSelectionConfig,"@lexical/NormalizeTripleClickSelection",NormalizeTripleClickSelectionOutput,unknown>
Defined in: packages/lexical-extension/src/NormalizeTripleClickSelectionExtension.ts:154
This extension handles triple-click events and will move the focus towards the anchor in certain conditions to meet expectations. Simply speaking, the focus should prefer to land at the end of a node rather than the beginning of its next sibling, and it should not skip over a LineBreakNode.
In order to fix the result visually and avoid a flash of over-selection it will also eagerly manipulate the DOM selection directly.
It is conservative in that it only fires this
$fixFocusOverselection callback when it has detected a triple click,
but it provides the function as an output signal so that it can both
be called from other places and it can be replaced or wrapped with
different functionality.