끝난 이클립스 합류 문구 · HOME 헤더 POP · 다국어 HOME 레이아웃 · 캠페인 표시 수정

This commit is contained in:
Sn-Kinos
2026-10-08 19:00:24 +09:00
parent a74edaef6b
commit 40b2c0e6f6
40 changed files with 1649 additions and 845 deletions
@@ -2,7 +2,6 @@ import 'dart:ui' as ui;
import 'package:flutter/material.dart';
import 'package:flutter/rendering.dart';
import 'package:flutter/services.dart';
import 'package:share_plus/share_plus.dart';
import '../../../core/i18n/app_locale.dart';
@@ -10,6 +9,7 @@ import '../../../core/theme/tokens.dart';
import '../../../core/ui/app_icons.dart';
import '../../campaign/campaign_share.dart' show shareHashtags, shareLink, shareBaseUrl;
import '../home_data.dart';
import '../../../core/ui/clipboard_copy.dart';
/// 브리핑 공유 — 「홈_브리핑 공유」 `266:90445` · 인스타 `272:240423` · 틱톡 `272:240430`.
///
@@ -128,13 +128,16 @@ class _BriefingShareDialogState extends State<BriefingShareDialog> {
setState(() => _busy = true);
try {
if (index == _icons.length - 1) {
await Clipboard.setData(ClipboardData(text: _text));
var announce = false;
await copyToClipboard(_text, () => announce = true);
if (!mounted) return;
// 오버레이를 닫고 알린다 — 열린 채로 띄우면 스낵바가 장막 뒤에 가린다.
Navigator.of(context).pop();
toast(widget.link == null
? l10n.briefingShareTextCopied
: l10n.briefingShareCopied);
if (announce) {
toast(widget.link == null
? l10n.briefingShareTextCopied
: l10n.briefingShareCopied);
}
return;
}
final file = await _capture();