Cretezy / flutter_linkify

Turns text URLs and emails into clickable inline links in text for Flutter
https://pub.dartlang.org/packages/flutter_linkify
MIT License
262 stars 99 forks source link

Selectable text cannot copy #125

Open Juggler98 opened 8 months ago

Juggler98 commented 8 months ago

When select text, it doesn't provide copy button like in the previous version. Is it just me getting this issue?

aabughazaleh commented 8 months ago

same here

Thoxh commented 8 months ago

Same here on iOS 17.0 for iPhone debugging on physical device.

zhenorzz commented 8 months ago

find a solution to show copy & select all.

SelectableLinkify(
                        contextMenuBuilder: (context, editableTextState) {
                          return AdaptiveTextSelectionToolbar.buttonItems(
                            anchors: editableTextState.contextMenuAnchors,
                            buttonItems: <ContextMenuButtonItem>[
                              ContextMenuButtonItem(
                                onPressed: () {
                                  editableTextState.copySelection(
                                      SelectionChangedCause.toolbar);
                                },
                                type: ContextMenuButtonType.copy,
                              ),
                              ContextMenuButtonItem(
                                onPressed: () {
                                  editableTextState.selectAll(
                                      SelectionChangedCause.toolbar);
                                },
                                type: ContextMenuButtonType.selectAll,
                              ),
                            ],
                          );
                        },
                        text: utf8.decode(bytes),
)
rt234cw commented 7 months ago

find a solution to show copy & select all.

SelectableLinkify(
                        contextMenuBuilder: (context, editableTextState) {
                          return AdaptiveTextSelectionToolbar.buttonItems(
                            anchors: editableTextState.contextMenuAnchors,
                            buttonItems: <ContextMenuButtonItem>[
                              ContextMenuButtonItem(
                                onPressed: () {
                                  editableTextState.copySelection(
                                      SelectionChangedCause.toolbar);
                                },
                                type: ContextMenuButtonType.copy,
                              ),
                              ContextMenuButtonItem(
                                onPressed: () {
                                  editableTextState.selectAll(
                                      SelectionChangedCause.toolbar);
                                },
                                type: ContextMenuButtonType.selectAll,
                              ),
                            ],
                          );
                        },
                        text: utf8.decode(bytes),
)

it works! thanks!!

for those who doesn't know how to use text: utf8.decode(bytes)

text:utf8.decode(uft8.encode('your text.....'))

Kinwailo commented 3 months ago

use this for contextMenuBuilder is enough:

contextMenuBuilder: (_, state) =>
  AdaptiveTextSelectionToolbar.buttonItems(
    anchors: state.contextMenuAnchors,
    buttonItems: state.contextMenuButtonItems),
swayamshreemohanty commented 2 months ago

find a solution to show copy & select all.

SelectableLinkify(
                        contextMenuBuilder: (context, editableTextState) {
                          return AdaptiveTextSelectionToolbar.buttonItems(
                            anchors: editableTextState.contextMenuAnchors,
                            buttonItems: <ContextMenuButtonItem>[
                              ContextMenuButtonItem(
                                onPressed: () {
                                  editableTextState.copySelection(
                                      SelectionChangedCause.toolbar);
                                },
                                type: ContextMenuButtonType.copy,
                              ),
                              ContextMenuButtonItem(
                                onPressed: () {
                                  editableTextState.selectAll(
                                      SelectionChangedCause.toolbar);
                                },
                                type: ContextMenuButtonType.selectAll,
                              ),
                            ],
                          );
                        },
                        text: utf8.decode(bytes),
)

This is worked for me, thanks