TF-4142 Implement hyperlink insertion
This commit is contained in:
@@ -30,6 +30,7 @@ class BottomBarComposerWidget extends StatelessWidget {
|
||||
final VoidCallback printDraftAction;
|
||||
final VoidCallback toggleMarkAsImportantAction;
|
||||
final VoidCallback saveAsTemplateAction;
|
||||
final VoidCallback onOpenInsertLink;
|
||||
final OnMenuChanged? onPopupMenuChanged;
|
||||
|
||||
const BottomBarComposerWidget({
|
||||
@@ -52,6 +53,7 @@ class BottomBarComposerWidget extends StatelessWidget {
|
||||
required this.printDraftAction,
|
||||
required this.toggleMarkAsImportantAction,
|
||||
required this.saveAsTemplateAction,
|
||||
required this.onOpenInsertLink,
|
||||
this.onPopupMenuChanged,
|
||||
});
|
||||
|
||||
@@ -110,6 +112,22 @@ class BottomBarComposerWidget extends StatelessWidget {
|
||||
),
|
||||
),
|
||||
const SizedBox(width: BottomBarComposerWidgetStyle.space),
|
||||
AbsorbPointer(
|
||||
absorbing: isCodeViewEnabled,
|
||||
child: TMailButtonWidget.fromIcon(
|
||||
icon: imagePaths.icInsertLink,
|
||||
iconColor: isCodeViewEnabled
|
||||
? BottomBarComposerWidgetStyle.disabledIconColor
|
||||
: BottomBarComposerWidgetStyle.iconColor,
|
||||
borderRadius: BottomBarComposerWidgetStyle.iconRadius,
|
||||
backgroundColor: Colors.transparent,
|
||||
padding: BottomBarComposerWidgetStyle.iconPadding,
|
||||
iconSize: BottomBarComposerWidgetStyle.iconSize,
|
||||
tooltipMessage: AppLocalizations.of(context).insertLink,
|
||||
onTapActionCallback: onOpenInsertLink,
|
||||
),
|
||||
),
|
||||
const SizedBox(width: BottomBarComposerWidgetStyle.space),
|
||||
PopupMenuOverlayWidget(
|
||||
controller: menuMoreOptionController,
|
||||
iconButton: HighlightSVGIconOnHover(
|
||||
|
||||
@@ -39,6 +39,7 @@ class WebEditorWidget extends StatefulWidget {
|
||||
final OnEditorTextSizeChanged? onEditorTextSizeChanged;
|
||||
final double? height;
|
||||
final double? horizontalPadding;
|
||||
final LinkOverlayOptions? linkOverlayOptions;
|
||||
final OnDragEnterListener? onDragEnter;
|
||||
final OnDragOverListener? onDragOver;
|
||||
final OnPasteImageSuccessAction? onPasteImageSuccessAction;
|
||||
@@ -60,6 +61,7 @@ class WebEditorWidget extends StatefulWidget {
|
||||
this.onEditorTextSizeChanged,
|
||||
this.height,
|
||||
this.horizontalPadding,
|
||||
this.linkOverlayOptions,
|
||||
this.onDragEnter,
|
||||
this.onDragOver,
|
||||
this.onPasteImageSuccessAction,
|
||||
@@ -141,6 +143,9 @@ class _WebEditorState extends State<WebEditorWidget> {
|
||||
useDefaultFontStyle: true,
|
||||
customScrollbar: true,
|
||||
),
|
||||
useLinkTooltipOverlay: true,
|
||||
linkOverlayOptions: widget.linkOverlayOptions
|
||||
?? const LinkOverlayOptions(),
|
||||
spellCheck: true,
|
||||
disableDragAndDrop: true,
|
||||
normalizeHtmlTextWhenDropping: true,
|
||||
|
||||
Reference in New Issue
Block a user