Added a property to control the detect word boundary behaviour

pull/1102/head
sourabhguptazeil 2 years ago
parent 5aa99ea7ce
commit e75877eb2b
  1. 9
      lib/src/widgets/delegate.dart
  2. 2
      lib/src/widgets/editor.dart
  3. 3
      lib/src/widgets/text_selection.dart

@ -66,7 +66,9 @@ class EditorTextSelectionGestureDetectorBuilder {
/// Creates a [EditorTextSelectionGestureDetectorBuilder]. /// Creates a [EditorTextSelectionGestureDetectorBuilder].
/// ///
/// The [delegate] must not be null. /// The [delegate] must not be null.
EditorTextSelectionGestureDetectorBuilder({required this.delegate}); EditorTextSelectionGestureDetectorBuilder({
required this.delegate,
this.detectWordBoundary = true});
/// The delegate for this [EditorTextSelectionGestureDetectorBuilder]. /// The delegate for this [EditorTextSelectionGestureDetectorBuilder].
/// ///
@ -83,6 +85,8 @@ class EditorTextSelectionGestureDetectorBuilder {
/// a stylus. /// a stylus.
bool shouldShowSelectionToolbar = true; bool shouldShowSelectionToolbar = true;
bool detectWordBoundary = true;
/// The [State] of the [EditableText] for which the builder will provide a /// The [State] of the [EditableText] for which the builder will provide a
/// [EditorTextSelectionGestureDetector]. /// [EditorTextSelectionGestureDetector].
@protected @protected
@ -354,7 +358,8 @@ class EditorTextSelectionGestureDetectorBuilder {
onDragSelectionUpdate: onDragSelectionUpdate, onDragSelectionUpdate: onDragSelectionUpdate,
onDragSelectionEnd: onDragSelectionEnd, onDragSelectionEnd: onDragSelectionEnd,
behavior: behavior, behavior: behavior,
child: child, detectWordBoundary: detectWordBoundary,
child: child
); );
} }
} }

@ -596,7 +596,7 @@ class QuillEditorState extends State<QuillEditor>
class _QuillEditorSelectionGestureDetectorBuilder class _QuillEditorSelectionGestureDetectorBuilder
extends EditorTextSelectionGestureDetectorBuilder { extends EditorTextSelectionGestureDetectorBuilder {
_QuillEditorSelectionGestureDetectorBuilder(this._state, this._detectWordBoundary) _QuillEditorSelectionGestureDetectorBuilder(this._state, this._detectWordBoundary)
: super(delegate: _state); : super(delegate: _state, detectWordBoundary: _detectWordBoundary);
final QuillEditorState _state; final QuillEditorState _state;
final bool _detectWordBoundary; final bool _detectWordBoundary;

@ -714,6 +714,7 @@ class EditorTextSelectionGestureDetector extends StatefulWidget {
this.onDragSelectionUpdate, this.onDragSelectionUpdate,
this.onDragSelectionEnd, this.onDragSelectionEnd,
this.behavior, this.behavior,
this.detectWordBoundary = true,
Key? key, Key? key,
}) : super(key: key); }) : super(key: key);
@ -789,6 +790,8 @@ class EditorTextSelectionGestureDetector extends StatefulWidget {
/// Child below this widget. /// Child below this widget.
final Widget child; final Widget child;
final bool detectWordBoundary;
@override @override
State<StatefulWidget> createState() => State<StatefulWidget> createState() =>
_EditorTextSelectionGestureDetectorState(); _EditorTextSelectionGestureDetectorState();

Loading…
Cancel
Save