fix: remove Pro-only placeholder in consumer APK, fix A-1/A-3 visibility
- sake_detail_screen: hide SakeMbtiStampSection when isProVersion=false (consumer APK no longer shows Pro版限定 placeholder at card bottom) - sake_grid_item / sake_list_item: apply Pressable to actual tap targets (grid/list cards now animate on press instead of non-interactive LevelTitleCard) - soul_screen / sommelier_screen: ambient glow alpha 0.07→0.12 for visibility Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
17e8d52a67
commit
4758aa5c9c
|
|
@ -105,7 +105,7 @@ class _SommelierScreenState extends ConsumerState<SommelierScreen> {
|
|||
shape: BoxShape.circle,
|
||||
gradient: RadialGradient(
|
||||
colors: [
|
||||
Theme.of(context).extension<AppColors>()!.brandAccent.withValues(alpha: 0.07),
|
||||
Theme.of(context).extension<AppColors>()!.brandAccent.withValues(alpha: 0.12),
|
||||
Colors.transparent,
|
||||
],
|
||||
),
|
||||
|
|
|
|||
|
|
@ -18,6 +18,7 @@ import '../widgets/sake_detail/sake_detail_memo.dart';
|
|||
import '../widgets/sake_detail/sake_detail_specs.dart';
|
||||
import 'sake_detail/widgets/sake_photo_edit_modal.dart';
|
||||
import 'sake_detail/sections/sake_mbti_stamp_section.dart';
|
||||
import '../main.dart' show isProVersion;
|
||||
import 'sake_detail/sections/sake_basic_info_section.dart';
|
||||
import 'sake_detail/widgets/sake_detail_sliver_app_bar.dart';
|
||||
import '../services/mbti_compatibility_service.dart';
|
||||
|
|
@ -265,9 +266,11 @@ class _SakeDetailScreenState extends ConsumerState<SakeDetailScreen> {
|
|||
const SizedBox(height: 48),
|
||||
],
|
||||
|
||||
// MBTI Diagnostic Stamp Section (Phase C3)
|
||||
SakeMbtiStampSection(sake: _sake),
|
||||
const SizedBox(height: 24),
|
||||
// MBTI Diagnostic Stamp Section (Pro only)
|
||||
if (isProVersion) ...[
|
||||
SakeMbtiStampSection(sake: _sake),
|
||||
const SizedBox(height: 24),
|
||||
],
|
||||
],
|
||||
),
|
||||
),
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@ class _SoulScreenState extends ConsumerState<SoulScreen> {
|
|||
shape: BoxShape.circle,
|
||||
gradient: RadialGradient(
|
||||
colors: [
|
||||
appColors.brandPrimary.withValues(alpha: 0.07),
|
||||
appColors.brandPrimary.withValues(alpha: 0.12),
|
||||
Colors.transparent,
|
||||
],
|
||||
),
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ import '../../theme/app_theme.dart';
|
|||
import '../../theme/app_colors.dart';
|
||||
import '../../providers/ui_experiment_provider.dart';
|
||||
import 'package:lucide_icons/lucide_icons.dart';
|
||||
import '../common/pressable.dart';
|
||||
|
||||
class SakeGridItem extends ConsumerWidget {
|
||||
final SakeItem sake;
|
||||
|
|
@ -24,7 +25,8 @@ class SakeGridItem extends ConsumerWidget {
|
|||
final isSelected = ref.watch(selectedMenuSakeIdsProvider).contains(sake.id);
|
||||
final appColors = Theme.of(context).extension<AppColors>()!;
|
||||
|
||||
return Card(
|
||||
return Pressable(
|
||||
child: Card(
|
||||
clipBehavior: Clip.antiAlias,
|
||||
// Highlight selected
|
||||
shape: isMenuMode && isSelected
|
||||
|
|
@ -198,8 +200,9 @@ class SakeGridItem extends ConsumerWidget {
|
|||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
);
|
||||
), // Stack
|
||||
), // InkWell
|
||||
), // Card
|
||||
); // Pressable
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ import '../../screens/sake_detail_screen.dart';
|
|||
import '../../theme/app_theme.dart';
|
||||
import '../../theme/app_colors.dart';
|
||||
import 'package:lucide_icons/lucide_icons.dart';
|
||||
// Haptic via InkWell? No, explicit HapticFeedback used generally.
|
||||
import '../common/pressable.dart';
|
||||
|
||||
class SakeListItem extends ConsumerWidget {
|
||||
final SakeItem sake;
|
||||
|
|
@ -29,9 +29,10 @@ class SakeListItem extends ConsumerWidget {
|
|||
// Adaptive selection color
|
||||
final selectedColor = appColors.brandAccent.withValues(alpha: 0.15);
|
||||
|
||||
return Card(
|
||||
return Pressable(
|
||||
child: Card(
|
||||
clipBehavior: Clip.antiAlias,
|
||||
elevation: 1, // Slight elevation
|
||||
elevation: 1,
|
||||
color: isMenuMode && isSelected ? selectedColor : null,
|
||||
shape: isMenuMode && isSelected
|
||||
? RoundedRectangleBorder(side: BorderSide(color: appColors.brandAccent, width: 2), borderRadius: BorderRadius.circular(6))
|
||||
|
|
@ -208,8 +209,9 @@ class SakeListItem extends ConsumerWidget {
|
|||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
);
|
||||
), // Row
|
||||
), // InkWell
|
||||
), // Card
|
||||
); // Pressable
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue