Showing
1 changed file
with
37 additions
and
11 deletions
| @@ -10,13 +10,16 @@ import 'package:doublefeel_flutter/app/routes/app_pages.dart'; | @@ -10,13 +10,16 @@ import 'package:doublefeel_flutter/app/routes/app_pages.dart'; | ||
| 10 | import 'package:doublefeel_flutter/app/utils/assets_helper.dart'; | 10 | import 'package:doublefeel_flutter/app/utils/assets_helper.dart'; |
| 11 | import 'package:doublefeel_flutter/app/utils/dialog_utils.dart'; | 11 | import 'package:doublefeel_flutter/app/utils/dialog_utils.dart'; |
| 12 | import 'package:doublefeel_flutter/core/config/app_environment_config.dart'; | 12 | import 'package:doublefeel_flutter/core/config/app_environment_config.dart'; |
| 13 | +import 'package:doublefeel_flutter/core/services/thinking_data_service.dart'; | ||
| 13 | import 'package:doublefeel_flutter/core/theme/app_theme.dart'; | 14 | import 'package:doublefeel_flutter/core/theme/app_theme.dart'; |
| 15 | +import 'package:doublefeel_flutter/core/util/app_toast.dart'; | ||
| 14 | import 'package:doublefeel_flutter/core/util/size_extensions.dart'; | 16 | import 'package:doublefeel_flutter/core/util/size_extensions.dart'; |
| 15 | import 'package:doublefeel_flutter/data/local/user_preferences_storage.dart'; | 17 | import 'package:doublefeel_flutter/data/local/user_preferences_storage.dart'; |
| 16 | import 'package:doublefeel_flutter/data/models/local/user_preferences.dart'; | 18 | import 'package:doublefeel_flutter/data/models/local/user_preferences.dart'; |
| 17 | import 'package:doublefeel_flutter/data/models/user/user_models.dart'; | 19 | import 'package:doublefeel_flutter/data/models/user/user_models.dart'; |
| 18 | import 'package:doublefeel_flutter/l10n/l10n_extensions.dart'; | 20 | import 'package:doublefeel_flutter/l10n/l10n_extensions.dart'; |
| 19 | import 'package:flutter/material.dart'; | 21 | import 'package:flutter/material.dart'; |
| 22 | +import 'package:flutter/services.dart'; | ||
| 20 | import 'package:get/get.dart'; | 23 | import 'package:get/get.dart'; |
| 21 | import 'package:intl/intl.dart'; | 24 | import 'package:intl/intl.dart'; |
| 22 | 25 | ||
| @@ -207,17 +210,40 @@ class _ProfileHeader extends StatelessWidget { | @@ -207,17 +210,40 @@ class _ProfileHeader extends StatelessWidget { | ||
| 207 | ), | 210 | ), |
| 208 | ], | 211 | ], |
| 209 | ), | 212 | ), |
| 210 | - const SizedBox(height: 1), | ||
| 211 | - Text( | ||
| 212 | - 'ID:${user?.uniqueCode ?? ''}', | ||
| 213 | - maxLines: 1, | ||
| 214 | - overflow: TextOverflow.ellipsis, | ||
| 215 | - style: TextStyle( | ||
| 216 | - color: context.colors.textSecondary, | ||
| 217 | - fontSize: 14, | ||
| 218 | - fontWeight: FontWeight.w400, | ||
| 219 | - height: 1.4, | ||
| 220 | - ), | 213 | + const SizedBox(height: 4), |
| 214 | + Row( | ||
| 215 | + children: [ | ||
| 216 | + Text( | ||
| 217 | + 'ID:${user?.uniqueCode ?? ''}', | ||
| 218 | + maxLines: 1, | ||
| 219 | + overflow: TextOverflow.ellipsis, | ||
| 220 | + style: TextStyle( | ||
| 221 | + color: context.colors.textSecondary, | ||
| 222 | + fontSize: 14, | ||
| 223 | + fontWeight: FontWeight.w400, | ||
| 224 | + height: 1.4, | ||
| 225 | + ), | ||
| 226 | + ), | ||
| 227 | + GestureDetector( | ||
| 228 | + onTap: () { | ||
| 229 | + Clipboard.setData( | ||
| 230 | + ClipboardData(text: user?.uniqueCode ?? ''), | ||
| 231 | + ); | ||
| 232 | + AppToast.show(context.l10n.copiedSuccessfully); | ||
| 233 | + ta.track('click_doublefeel_my_page', | ||
| 234 | + properties: {'click_content': '复制ID'}); | ||
| 235 | + }, | ||
| 236 | + child: Padding( | ||
| 237 | + padding: const EdgeInsets.all(4.0), | ||
| 238 | + child: Image.asset( | ||
| 239 | + width: 12, | ||
| 240 | + height: 12, | ||
| 241 | + 'assets/images/common/ic_copy_purple.webp', | ||
| 242 | + color: Color(0xFFA89EC5), | ||
| 243 | + ), | ||
| 244 | + ), | ||
| 245 | + ), | ||
| 246 | + ], | ||
| 221 | ), | 247 | ), |
| 222 | ], | 248 | ], |
| 223 | ), | 249 | ), |
-
Please register or login to post a comment