Fix copy to clipboard for icon message
This commit is contained in:
parent
45a6e88b3c
commit
7bc24603b2
|
|
@ -8,12 +8,14 @@ class IconMessage extends StatelessWidget {
|
||||||
this.iconData,
|
this.iconData,
|
||||||
this.color,
|
this.color,
|
||||||
this.trailing,
|
this.trailing,
|
||||||
|
this.copyToClipboard = false,
|
||||||
});
|
});
|
||||||
|
|
||||||
final String text;
|
final String text;
|
||||||
final IconData iconData;
|
final IconData iconData;
|
||||||
final Color color;
|
final Color color;
|
||||||
final Widget trailing;
|
final Widget trailing;
|
||||||
|
final bool copyToClipboard;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
|
|
@ -30,7 +32,8 @@ class IconMessage extends StatelessWidget {
|
||||||
),
|
),
|
||||||
SizedBox(width: 16),
|
SizedBox(width: 16),
|
||||||
Expanded(
|
Expanded(
|
||||||
child: CopyToClipboard(
|
child: copyToClipboard
|
||||||
|
? CopyToClipboard(
|
||||||
value: text,
|
value: text,
|
||||||
child: Text(
|
child: Text(
|
||||||
text,
|
text,
|
||||||
|
|
@ -39,6 +42,13 @@ class IconMessage extends StatelessWidget {
|
||||||
color: Colors.white,
|
color: Colors.white,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
)
|
||||||
|
: Text(
|
||||||
|
text,
|
||||||
|
maxLines: null,
|
||||||
|
style: TextStyle(
|
||||||
|
color: Colors.white,
|
||||||
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
if (trailing != null) ...[
|
if (trailing != null) ...[
|
||||||
|
|
|
||||||
|
|
@ -300,7 +300,7 @@ class ClientOverview extends StatelessWidget {
|
||||||
.present(localization.active, localization.archived),
|
.present(localization.active, localization.archived),
|
||||||
),
|
),
|
||||||
if ((client.publicNotes ?? '').isNotEmpty) ...[
|
if ((client.publicNotes ?? '').isNotEmpty) ...[
|
||||||
IconMessage(client.publicNotes),
|
IconMessage(client.publicNotes, copyToClipboard: true),
|
||||||
ListDivider()
|
ListDivider()
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
|
|
|
||||||
|
|
@ -184,7 +184,8 @@ class ExpenseOverview extends StatelessWidget {
|
||||||
),
|
),
|
||||||
ListDivider(),
|
ListDivider(),
|
||||||
if ((expense.privateNotes ?? '').isNotEmpty) ...[
|
if ((expense.privateNotes ?? '').isNotEmpty) ...[
|
||||||
IconMessage(expense.privateNotes, iconData: Icons.lock),
|
IconMessage(expense.privateNotes,
|
||||||
|
iconData: Icons.lock, copyToClipboard: true),
|
||||||
ListDivider(),
|
ListDivider(),
|
||||||
],
|
],
|
||||||
FieldGrid(fields),
|
FieldGrid(fields),
|
||||||
|
|
@ -217,7 +218,7 @@ class ExpenseOverview extends StatelessWidget {
|
||||||
),
|
),
|
||||||
..._buildDetailsList(),
|
..._buildDetailsList(),
|
||||||
if ((expense.publicNotes ?? '').isNotEmpty) ...[
|
if ((expense.publicNotes ?? '').isNotEmpty) ...[
|
||||||
IconMessage(expense.publicNotes),
|
IconMessage(expense.publicNotes, copyToClipboard: true),
|
||||||
ListDivider()
|
ListDivider()
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
|
|
|
||||||
|
|
@ -139,10 +139,8 @@ class InvoiceOverview extends StatelessWidget {
|
||||||
|
|
||||||
if ((invoice.privateNotes ?? '').isNotEmpty) {
|
if ((invoice.privateNotes ?? '').isNotEmpty) {
|
||||||
widgets.addAll([
|
widgets.addAll([
|
||||||
IconMessage(
|
IconMessage(invoice.privateNotes,
|
||||||
invoice.privateNotes,
|
iconData: Icons.lock, copyToClipboard: true),
|
||||||
iconData: Icons.lock,
|
|
||||||
),
|
|
||||||
ListDivider(),
|
ListDivider(),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
@ -510,7 +508,7 @@ class InvoiceOverview extends StatelessWidget {
|
||||||
if ((invoice.publicNotes ?? '').isNotEmpty) {
|
if ((invoice.publicNotes ?? '').isNotEmpty) {
|
||||||
widgets.addAll([
|
widgets.addAll([
|
||||||
ListDivider(),
|
ListDivider(),
|
||||||
IconMessage(invoice.publicNotes),
|
IconMessage(invoice.publicNotes, copyToClipboard: true),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -166,7 +166,8 @@ class _PaymentViewState extends State<PaymentView> {
|
||||||
payment.privateNotes.isNotEmpty
|
payment.privateNotes.isNotEmpty
|
||||||
? Column(
|
? Column(
|
||||||
children: <Widget>[
|
children: <Widget>[
|
||||||
IconMessage(payment.privateNotes),
|
IconMessage(payment.privateNotes,
|
||||||
|
copyToClipboard: true),
|
||||||
Container(
|
Container(
|
||||||
color: Theme.of(context).cardColor,
|
color: Theme.of(context).cardColor,
|
||||||
height: 12.0,
|
height: 12.0,
|
||||||
|
|
|
||||||
|
|
@ -108,7 +108,8 @@ class _ProjectOverviewState extends State<ProjectOverview> {
|
||||||
),
|
),
|
||||||
ListDivider(),
|
ListDivider(),
|
||||||
if ((project.privateNotes ?? '').isNotEmpty) ...[
|
if ((project.privateNotes ?? '').isNotEmpty) ...[
|
||||||
IconMessage(project.privateNotes, iconData: Icons.lock),
|
IconMessage(project.privateNotes,
|
||||||
|
iconData: Icons.lock, copyToClipboard: true),
|
||||||
ListDivider()
|
ListDivider()
|
||||||
],
|
],
|
||||||
EntityListTile(
|
EntityListTile(
|
||||||
|
|
@ -156,7 +157,10 @@ class _ProjectOverviewState extends State<ProjectOverview> {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
if ((project.publicNotes ?? '').isNotEmpty) {
|
if ((project.publicNotes ?? '').isNotEmpty) {
|
||||||
widgets.addAll([IconMessage(project.publicNotes), ListDivider()]);
|
widgets.addAll([
|
||||||
|
IconMessage(project.publicNotes, copyToClipboard: true),
|
||||||
|
ListDivider()
|
||||||
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
return widgets;
|
return widgets;
|
||||||
|
|
|
||||||
|
|
@ -182,7 +182,7 @@ class _TaskOverviewState extends State<TaskOverview> {
|
||||||
|
|
||||||
if (task.description.isNotEmpty) {
|
if (task.description.isNotEmpty) {
|
||||||
widgets.addAll([
|
widgets.addAll([
|
||||||
IconMessage(task.description),
|
IconMessage(task.description, copyToClipboard: true),
|
||||||
ListDivider(),
|
ListDivider(),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -84,7 +84,7 @@ class _TransactionViewState extends State<TransactionView> {
|
||||||
],
|
],
|
||||||
if (transaction.isConverted) ...[
|
if (transaction.isConverted) ...[
|
||||||
if (transaction.description.isNotEmpty) ...[
|
if (transaction.description.isNotEmpty) ...[
|
||||||
IconMessage(transaction.description),
|
IconMessage(transaction.description, copyToClipboard: true),
|
||||||
ListDivider(),
|
ListDivider(),
|
||||||
],
|
],
|
||||||
EntityListTile(
|
EntityListTile(
|
||||||
|
|
|
||||||
|
|
@ -93,7 +93,8 @@ class VendorOverview extends StatelessWidget {
|
||||||
),
|
),
|
||||||
ListDivider(),
|
ListDivider(),
|
||||||
if ((vendor.privateNotes ?? '').isNotEmpty) ...[
|
if ((vendor.privateNotes ?? '').isNotEmpty) ...[
|
||||||
IconMessage(vendor.privateNotes, iconData: Icons.lock),
|
IconMessage(vendor.privateNotes,
|
||||||
|
iconData: Icons.lock, copyToClipboard: true),
|
||||||
ListDivider()
|
ListDivider()
|
||||||
],
|
],
|
||||||
if (vendor.hasUser)
|
if (vendor.hasUser)
|
||||||
|
|
@ -143,7 +144,7 @@ class VendorOverview extends StatelessWidget {
|
||||||
.present(localization.active, localization.archived),
|
.present(localization.active, localization.archived),
|
||||||
),
|
),
|
||||||
if ((vendor.publicNotes ?? '').isNotEmpty) ...[
|
if ((vendor.publicNotes ?? '').isNotEmpty) ...[
|
||||||
IconMessage(vendor.publicNotes),
|
IconMessage(vendor.publicNotes, copyToClipboard: true),
|
||||||
ListDivider()
|
ListDivider()
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue