feat: 다국어 지원 및 다중 통화 환율 변환 기능 확대
- ExchangeRateService에 JPY, CNY 환율 지원 추가 - 구독 서비스별 다국어 표시 이름 지원 - 분석 화면 차트 및 UI/UX 개선 - 설정 화면 전면 리팩토링 - SMS 스캔 기능 사용성 개선 - 전체 앱 다국어 번역 확대 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -122,26 +122,17 @@ class _SwipeableSubscriptionCardState extends State<SwipeableSubscriptionCard>
|
||||
}
|
||||
|
||||
void _handlePanEnd(DragEndDetails details) {
|
||||
final duration = DateTime.now().difference(_startTime!);
|
||||
final velocity = details.velocity.pixelsPerSecond.dx;
|
||||
|
||||
// 탭/스와이프 처리 분기
|
||||
|
||||
// 탭 처리 - 짧은 시간 내에 작은 움직임만 있었다면 탭으로 처리
|
||||
if (_isValidTap &&
|
||||
duration.inMilliseconds < _tapDurationMs &&
|
||||
_currentOffset.abs() < _tapTolerance) {
|
||||
_processTap();
|
||||
return;
|
||||
}
|
||||
|
||||
// 스와이프 처리
|
||||
// 스와이프 처리만 수행 (탭은 SubscriptionCard에서 처리)
|
||||
_processSwipe(velocity);
|
||||
}
|
||||
|
||||
// 헬퍼 메서드
|
||||
void _processTap() {
|
||||
print('[SwipeableSubscriptionCard] _processTap 호출됨');
|
||||
if (widget.onTap != null) {
|
||||
print('[SwipeableSubscriptionCard] onTap 콜백 실행');
|
||||
widget.onTap!();
|
||||
}
|
||||
_animateToOffset(0);
|
||||
@@ -151,6 +142,12 @@ class _SwipeableSubscriptionCardState extends State<SwipeableSubscriptionCard>
|
||||
final extent = _currentOffset.abs();
|
||||
final deleteThreshold = _cardWidth * _deleteThresholdPercent;
|
||||
|
||||
// 아주 작은 움직임은 무시하고 원위치로 복귀
|
||||
if (extent < _tapTolerance) {
|
||||
_animateToOffset(0);
|
||||
return;
|
||||
}
|
||||
|
||||
if (extent > deleteThreshold || velocity.abs() > _velocityThreshold) {
|
||||
// 삭제 실행
|
||||
if (widget.onDelete != null) {
|
||||
@@ -261,7 +258,7 @@ class _SwipeableSubscriptionCardState extends State<SwipeableSubscriptionCard>
|
||||
angle: _currentOffset / 2000,
|
||||
child: SubscriptionCard(
|
||||
subscription: widget.subscription,
|
||||
onTap: widget.onTap,
|
||||
onTap: widget.onTap, // onTap 콜백을 전달하여 SubscriptionCard 내부에서도 탭 처리 가능하도록 함
|
||||
),
|
||||
),
|
||||
),
|
||||
@@ -279,6 +276,7 @@ class _SwipeableSubscriptionCardState extends State<SwipeableSubscriptionCard>
|
||||
onPanStart: _handlePanStart,
|
||||
onPanUpdate: _handlePanUpdate,
|
||||
onPanEnd: _handlePanEnd,
|
||||
// onTap 제거 - SubscriptionCard의 AnimatedGlassmorphismCard에서 처리하도록 함
|
||||
child: _buildCard(),
|
||||
),
|
||||
],
|
||||
|
||||
Reference in New Issue
Block a user