TF-874 Fix duplicate focusable when focus to editor composer on mobile

This commit is contained in:
dab246
2023-02-20 16:40:26 +07:00
committed by Dat Vu
parent aaf345632a
commit dbf9caf9c8
2 changed files with 18 additions and 10 deletions
@@ -316,6 +316,22 @@ class ComposerController extends BaseController {
subjectEmailInputFocusNode = FocusNode();
}
void initRichTextForMobile(BuildContext context, HtmlEditorApi editorApi) {
richTextMobileTabletController.htmlEditorApi = editorApi;
keyboardRichTextController.onCreateHTMLEditor(
editorApi,
onEnterKeyDown: _onEnterKeyDown,
context: context,
);
richTextMobileTabletController.htmlEditorApi?.onFocus = () {
FocusManager.instance.primaryFocus?.unfocus();
_collapseAllRecipient();
_autoCreateEmailTag();
};
}
void _initEmail() {
final arguments = kIsWeb ? mailboxDashBoardController.routerArguments : Get.arguments;
if (arguments is ComposerArguments) {
@@ -1483,7 +1499,7 @@ class ComposerController extends BaseController {
popBack();
}
void onEnterKeyDown() {
void _onEnterKeyDown() {
if(scrollController.position.pixels < scrollController.position.maxScrollExtent) {
scrollController.animateTo(
scrollController.position.pixels + 20,
@@ -599,7 +599,6 @@ class ComposerView extends GetWidget<ComposerController>
}
Widget _buildHtmlEditor(BuildContext context, {String? initialContent}) {
final richTextMobileTabletController = controller.richTextMobileTabletController;
return Padding(
padding: const EdgeInsets.only(left: 16, right: 16, bottom: 20),
child: HtmlEditor(
@@ -607,14 +606,7 @@ class ComposerView extends GetWidget<ComposerController>
minHeight: 550,
addDefaultSelectionMenuItems: false,
initialContent: initialContent ?? '',
onCreated: (editorApi) {
richTextMobileTabletController.htmlEditorApi = editorApi;
controller.keyboardRichTextController.onCreateHTMLEditor(
editorApi,
onEnterKeyDown: controller.onEnterKeyDown,
context: context,
);
},
onCreated: (editorApi) => controller.initRichTextForMobile(context, editorApi)
),
);
}