@@ -91,49 +91,37 @@ class LanguageToolController extends TextEditingController {
9191 super .value = newValue;
9292 }
9393
94- /// Controller constructor
94+ /// Controller constructor.
9595 ///
96- /// [highlightStyle] - Color scheme to highlight mistakes
97- /// [delayType] - Represents the type of delay for language checking.
96+ /// [highlightStyle] - Color scheme to highlight mistakes.
9897 ///
98+ /// [delayType] - Represents the type of delay for language checking.
9999 /// [DelayType.debouncing] - Calls a function when a user hasn't carried out
100100 /// the event in a specific amount of time.
101- ///
102101 /// [DelayType.throttling] - Calls a function at intervals of a specified
103102 /// amount of time while the user is carrying out the event.
104- /// [delay] - Represents the duration of the delay for language checking.
105103 ///
104+ /// [delay] - Represents the duration of the delay for language checking.
106105 /// If the delay is [Duration.zero] , no delaying is applied.
106+ ///
107+ /// You can optionally provide a custom [languageCheckService] to fully control
108+ /// how text is analyzed and processed. When provided, [delayType] and [delay]
109+ /// are ignored.
107110 LanguageToolController ({
108111 bool isEnabled = true ,
109112 this .highlightStyle = const HighlightStyle (),
110113 DelayType delayType = DelayType .debouncing,
111114 Duration delay = Duration .zero,
115+ LanguageCheckService ? languageCheckService,
112116 }) : _isEnabled = isEnabled {
113- _languageCheckService = _getLanguageCheckService (
114- delayType: delayType,
115- delay: delay,
116- languageToolClient: LanguageToolClient (),
117- );
117+ _languageCheckService = languageCheckService ??
118+ _getLanguageCheckService (
119+ delayType: delayType,
120+ delay: delay,
121+ languageToolClient: LanguageToolClient (),
122+ );
118123 }
119124
120- /// Creates a [LanguageToolController] with a custom [LanguageCheckService] .
121- ///
122- /// This constructor allows you to provide your own implementation of the
123- /// language checking service, giving you full control over how text is
124- /// analyzed and processed.
125- ///
126- /// Parameters:
127- /// * [languageCheckService] - The service responsible for performing language
128- /// checks and grammar validation. This parameter is required.
129- /// * [highlightStyle] - Color scheme to highlight mistakes
130- LanguageToolController .withService ({
131- required LanguageCheckService languageCheckService,
132- bool isEnabled = true ,
133- this .highlightStyle = const HighlightStyle (),
134- }) : _languageCheckService = languageCheckService,
135- _isEnabled = isEnabled;
136-
137125 static LanguageCheckService _getLanguageCheckService ({
138126 required DelayType delayType,
139127 required Duration delay,
0 commit comments