copy link button on profile QR screens

This commit is contained in:
yaso 2026-06-22 11:19:15 +02:00
parent fd003b0100
commit 3d5fdde322
2 changed files with 51 additions and 0 deletions

View file

@ -5,6 +5,7 @@ import 'package:file_picker/file_picker.dart';
import 'package:file_saver/file_saver.dart'; import 'package:file_saver/file_saver.dart';
import 'package:flutter/foundation.dart'; import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_speed_dial/flutter_speed_dial.dart'; import 'package:flutter_speed_dial/flutter_speed_dial.dart';
import 'package:go_router/go_router.dart'; import 'package:go_router/go_router.dart';
import 'package:ken_logger/ken_logger.dart'; import 'package:ken_logger/ken_logger.dart';
@ -403,6 +404,30 @@ class _MihBusinessQrCodeState extends State<MihBusinessQrCode> {
); );
}, },
), ),
SpeedDialChild(
child: Icon(
Icons.copy_rounded,
color: MihColors.primary(),
),
label: "Copy Link",
labelBackgroundColor: MihColors.green(),
labelStyle: TextStyle(
color: MihColors.primary(),
fontWeight: FontWeight.bold,
),
backgroundColor: MihColors.green(),
onTap: () async {
await Clipboard.setData(
ClipboardData(text: "$qrCodedata${business.business_id}"),
);
if (!context.mounted) return;
ScaffoldMessenger.of(context).showSnackBar(
MihSnackBar(
child: Text("Link Copied!"),
),
);
},
),
]), ]),
) )
], ],

View file

@ -4,6 +4,7 @@ import 'package:file_picker/file_picker.dart';
import 'package:file_saver/file_saver.dart'; import 'package:file_saver/file_saver.dart';
import 'package:flutter/foundation.dart'; import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_speed_dial/flutter_speed_dial.dart'; import 'package:flutter_speed_dial/flutter_speed_dial.dart';
import 'package:go_router/go_router.dart'; import 'package:go_router/go_router.dart';
import 'package:ken_logger/ken_logger.dart'; import 'package:ken_logger/ken_logger.dart';
@ -402,6 +403,31 @@ class _MihPersonalQrCodeState extends State<MihPersonalQrCode> {
); );
}, },
), ),
SpeedDialChild(
child: Icon(
Icons.copy_rounded,
color: MihColors.primary(),
),
label: "Copy Link",
labelBackgroundColor: MihColors.green(),
labelStyle: TextStyle(
color: MihColors.primary(),
fontWeight: FontWeight.bold,
),
backgroundColor: MihColors.green(),
onTap: () async {
await Clipboard.setData(
ClipboardData(
text: "$_qrCodedata${user.username.toLowerCase()}"),
);
if (!context.mounted) return;
ScaffoldMessenger.of(context).showSnackBar(
MihSnackBar(
child: Text("Link Copied!"),
),
);
},
),
]), ]),
) )
], ],