Skip to content

[579] bulk apply utxo tags#611

Open
roy-noncelab wants to merge 19 commits intodevelopfrom
enhance/579-bulk-apply-UTXO-tags
Open

[579] bulk apply utxo tags#611
roy-noncelab wants to merge 19 commits intodevelopfrom
enhance/579-bulk-apply-UTXO-tags

Conversation

@roy-noncelab
Copy link
Collaborator

@roy-noncelab roy-noncelab commented Feb 25, 2026

TS 42

추가/변경 사항

공통
선택된 UTXO 없이 바텀 시트 버튼 클릭 시 UTXO 선택 필요 팝업 생성

UTXO 선택 모드 바텀 시트
4 하단 구역 버튼으로 변경 - 보내기, 태그 적용, 사용 잠금, 잠금 해제

보내기 버튼
보내기 화면으로 전환
화면 전환 시 선택된 UTXO 상태의 보내기 화면에 이동
사용 잠금된 utxo 선택 시 사용 불가능 토스트 알림

태그 적용 버튼
태그 적용 바텀 시트 생성

  • 태그 상태 표시 : 선택 없음 - 색상 없음 / 선택 있음 - 그라데이션 / 모두 선택 - 색상
  • 태그 추가하기, 삭제하기(삭제는 해당 태그 적용된 utxo가 없는 경우에만 가능)
  • 태그 long press - 태그 편집 바텀 시트
  • 완료 클릭 시 적용
  • 선택 모드 > 태그 적용, UTXO 화면에서 태그 편집 버튼: 총 2가지 방법으로 바텀 시트 생성

utxo_tag_util.dart 추가

사용 잠금/잠금 해제
기존의 사용 잠금 / 잠금 해제 버튼 기능으로 구현

이미지

특이 사항

태그 적용된 UTXO가 사용되었음에도 태그 적용된 목록에 남아있던 버그 - 버그로 인해 태그 적용된 UTXO가 없음에도 태그 삭제가 안되는 문제 수정

#579

@roy-noncelab roy-noncelab added this to the Deploy 0.9.0/3.8.0 milestone Feb 25, 2026
@roy-noncelab roy-noncelab self-assigned this Feb 25, 2026
@roy-noncelab roy-noncelab added the ✨enhance UI 및 사용성 개선 이슈 label Feb 25, 2026
@roy-noncelab roy-noncelab linked an issue Feb 25, 2026 that may be closed by this pull request
5 tasks
import 'package:provider/provider.dart';

class UtxoTagUtil {
static List<String> calculateUpdatedTags({
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

util 성격의 함수가 아님
calculateUpdatedTags -> utxo_tag_provider로 이동

import 'package:flutter_svg/svg.dart';
import 'package:provider/provider.dart';

enum UtxoTagApplyEditMode { add, delete, changAppliedTags, update }
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

changAppliedTags -> chang'e' 빠짐 오타 수정 필요

void showTagBottomSheet() {
final selectedUtxoIds = _utxoListKey.currentState?._selectedUtxoIds.toList() ?? [];

showModalBottomSheet(
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

class TagApplyResult {
final UtxoTagApplyEditMode mode;
final Map<String, TagApplyState> tagStates;
final List updatedTags; // 필요하면
const TagApplyResult({
required this.mode,
required this.tagStates,
this.updatedTags = const [],
});
}

위 클래스를 정의하고,
TagApplyBottomSheet에서 Navigator.pop으로 위 타입의 결과를 반환하게 하여 각 Screen에서 처리하는 것이 더 좋아보임

utxo_tag_util.dart 파일과 내부 함수들 모두 제거하는게 더 나아보이긴 하는데, 리팩토링 포인트여서 필수 반영사항은 아닙니다.

@@ -107,7 +107,7 @@ class UtxoDetailViewModel extends ChangeNotifier {
String utxoId,
Copy link
Collaborator

@ella-noncelab ella-noncelab Feb 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이 함수는 더 이상 사용되지 않고 있네요

tagStates: tagStates,
walletId: widget.id,
selectedUtxoIds: selectedUtxoIds,
getCurrentTagsCallback: (_) => _viewModel.selectedUtxoTagList.map((e) => e.name).toList(),
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

getCurrentTagsCallback : selectedUtxoTags인데 currentTags라고 네이밍되어 있어서 헷갈림

Copy link
Collaborator Author

@roy-noncelab roy-noncelab Feb 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

코드 이름 수정 기준
선택 모드 - select 사용
태그, 정렬 등의 필터 - apply, active 사용
해당(하나의) UTXO - current 사용

@ella-noncelab
Copy link
Collaborator

스크린샷 2026-02-26 오후 1 29 00

UTXO 리스트 카드 UI 수정 필요

@ella-noncelab
Copy link
Collaborator

utxo_detail_screen에서 태그를 달거나 해제할 때 해당 화면에 바로 반영이 안되는 버그가 잇습니다.

@noncelab noncelab removed this from the Deploy 0.9.0/3.8.0 milestone Feb 26, 2026
@ella-noncelab
Copy link
Collaborator

리뷰 완료 - 도이께서 UTXO 화면 개선 하시면서 머지할 예정입니다.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

✨enhance UI 및 사용성 개선 이슈

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Enhance] UTXO 태그 일괄 적용

3 participants