From 18497b017acebba95629a76442d4475fcfc27c80 Mon Sep 17 00:00:00 2001 From: Daniel Arantes Loverde Date: Mon, 24 Aug 2026 14:50:46 -0300 Subject: [PATCH] [lcenavigationview-adoption] Fix black nav bar background, add Cart title wrap setNavigationBarBackgroundColor was never called on the 15 screens adopted in 3456184, so it stayed at the default .clear and the real window background (black) showed through. Set it to AppColors.backgroundLight on all of them, matching each screen's own actual content background. Also wraps CartView's title in LCENavigationView for consistency with the rest of the app - no setLeftButton since Cart is a tab root, no back button needed. The other reported bug (empty right-button slot rendering a visible glass circle) is fixed in LCEssentials itself (separate repo, commit 8b0f650 on fix/navigation/liquid-glass-button-chrome) but won't take visual effect here until that's published and this repo's Package.resolved is bumped to point at it. --- PediFoods/Views/Auth/LegalViews.swift | 1 + PediFoods/Views/Main/AddAddressFormView.swift | 1 + PediFoods/Views/Main/AddCardFormView.swift | 1 + PediFoods/Views/Main/AddressesView.swift | 1 + PediFoods/Views/Main/CartView.swift | 17 +++++++++++------ PediFoods/Views/Main/CheckoutView.swift | 2 ++ PediFoods/Views/Main/OrderDetailsView.swift | 1 + PediFoods/Views/Main/OrderTrackingView.swift | 1 + PediFoods/Views/Main/OrdersView.swift | 1 + .../Views/Main/PizzaFlavorAddonsSheet.swift | 1 + .../Views/Main/PizzaProductDetailSheet.swift | 1 + PediFoods/Views/Main/ProductDetailSheet.swift | 1 + .../Views/Main/PublicLocationPickerView.swift | 1 + PediFoods/Views/Main/ReviewsView.swift | 2 ++ PediFoods/Views/Main/SavedCardsView.swift | 1 + PediFoods/Views/Main/UserProfileView.swift | 1 + 16 files changed, 28 insertions(+), 6 deletions(-) diff --git a/PediFoods/Views/Auth/LegalViews.swift b/PediFoods/Views/Auth/LegalViews.swift index ef568b3..7cd39a2 100644 --- a/PediFoods/Views/Auth/LegalViews.swift +++ b/PediFoods/Views/Auth/LegalViews.swift @@ -77,6 +77,7 @@ private struct LegalDocumentScreen: View { } .setLeftButton(image: AnyView(AppBackButtonIcon())) { dismiss() } .setTitle(text: Text(headerTitle).font(AppTypography.heading2).foregroundStyle(AppColors.textPrimary)) + .setNavigationBarBackgroundColor(AppColors.backgroundLight) } private var content: some View { diff --git a/PediFoods/Views/Main/AddAddressFormView.swift b/PediFoods/Views/Main/AddAddressFormView.swift index a7eb9e1..34b8db1 100644 --- a/PediFoods/Views/Main/AddAddressFormView.swift +++ b/PediFoods/Views/Main/AddAddressFormView.swift @@ -39,6 +39,7 @@ struct AddAddressFormView: View { } .setLeftButton(image: AnyView(AppBackButtonIcon())) { dismiss() } .setTitle(text: Text(existingAddress == nil ? "Novo endereço" : "Editar endereço").font(AppTypography.heading2).foregroundStyle(AppColors.textPrimary)) + .setNavigationBarBackgroundColor(AppColors.backgroundLight) } private var content: some View { diff --git a/PediFoods/Views/Main/AddCardFormView.swift b/PediFoods/Views/Main/AddCardFormView.swift index 54cc53f..f1dcd80 100644 --- a/PediFoods/Views/Main/AddCardFormView.swift +++ b/PediFoods/Views/Main/AddCardFormView.swift @@ -61,6 +61,7 @@ struct AddCardFormView: View { } .setLeftButton(image: AnyView(AppBackButtonIcon())) { dismiss() } .setTitle(text: Text("Novo Cartão").font(AppTypography.heading2).foregroundStyle(AppColors.textPrimary)) + .setNavigationBarBackgroundColor(AppColors.backgroundLight) } private var content: some View { diff --git a/PediFoods/Views/Main/AddressesView.swift b/PediFoods/Views/Main/AddressesView.swift index e61c7a8..3759e33 100644 --- a/PediFoods/Views/Main/AddressesView.swift +++ b/PediFoods/Views/Main/AddressesView.swift @@ -25,6 +25,7 @@ struct AddressesView: View { } .setLeftButton(image: AnyView(AppBackButtonIcon())) { dismiss() } .setTitle(text: Text("Meus Endereços").font(AppTypography.heading2).foregroundStyle(AppColors.textPrimary)) + .setNavigationBarBackgroundColor(AppColors.backgroundLight) } private var content: some View { diff --git a/PediFoods/Views/Main/CartView.swift b/PediFoods/Views/Main/CartView.swift index ac11fa7..f243921 100644 --- a/PediFoods/Views/Main/CartView.swift +++ b/PediFoods/Views/Main/CartView.swift @@ -1,5 +1,8 @@ import Foundation import SwiftUI +#if canImport(LCEssentials) +import LCEssentials +#endif struct CartView: View { @Binding var appState: AppState @@ -13,14 +16,16 @@ struct CartView: View { @State var isLoadingDeliveryFee = false var body: some View { + LCENavigationView { + content + } + .setTitle(text: Text("Meu Carrinho").font(AppTypography.heading1).foregroundStyle(AppColors.textPrimary)) + .setNavigationBarBackgroundColor(AppColors.backgroundLight) + } + + private var content: some View { ScrollView(showsIndicators: false) { VStack(spacing: 16) { - Text("Meu Carrinho") - .font(AppTypography.heading1) - .foregroundStyle(AppColors.textPrimary) - .frame(maxWidth: .infinity, alignment: .center) - .padding(.top, 20) - if appState.cart.items.isEmpty { VStack(spacing: 10) { Text("Seu carrinho está vazio") diff --git a/PediFoods/Views/Main/CheckoutView.swift b/PediFoods/Views/Main/CheckoutView.swift index 645517e..74ee19c 100644 --- a/PediFoods/Views/Main/CheckoutView.swift +++ b/PediFoods/Views/Main/CheckoutView.swift @@ -114,6 +114,7 @@ struct CheckoutView: View { } .setLeftButton(image: AnyView(AppBackButtonIcon())) { dismiss() } .setTitle(text: Text("Finalizar Pedido").font(AppTypography.heading2).foregroundStyle(AppColors.textPrimary)) + .setNavigationBarBackgroundColor(AppColors.backgroundLight) .appBottomSafeAreaInset { bottomBar } @@ -722,6 +723,7 @@ struct PaymentPixView: View { } .setLeftButton(image: AnyView(AppBackButtonIcon())) { dismiss() } .setTitle(text: Text("Pagamento via PIX").font(AppTypography.heading2).foregroundStyle(AppColors.textPrimary)) + .setNavigationBarBackgroundColor(AppColors.backgroundLight) .sheet(isPresented: $showChangePaymentSheet) { ChangePaymentSheet( pixContext: currentContext, diff --git a/PediFoods/Views/Main/OrderDetailsView.swift b/PediFoods/Views/Main/OrderDetailsView.swift index 7e0f3fa..fcf267c 100644 --- a/PediFoods/Views/Main/OrderDetailsView.swift +++ b/PediFoods/Views/Main/OrderDetailsView.swift @@ -23,6 +23,7 @@ struct OrderDetailsView: View { } .setLeftButton(image: AnyView(AppBackButtonIcon())) { dismiss() } .setTitle(text: Text("Detalhes do Pedido").font(AppTypography.heading2).foregroundStyle(AppColors.textPrimary)) + .setNavigationBarBackgroundColor(AppColors.backgroundLight) } private var content: some View { diff --git a/PediFoods/Views/Main/OrderTrackingView.swift b/PediFoods/Views/Main/OrderTrackingView.swift index e7dac35..c901e77 100644 --- a/PediFoods/Views/Main/OrderTrackingView.swift +++ b/PediFoods/Views/Main/OrderTrackingView.swift @@ -43,6 +43,7 @@ struct OrderTrackingView: View { } } .setTitle(text: Text("Pedido \(displayOrderTitle)").font(AppTypography.heading2).foregroundStyle(AppColors.textPrimary)) + .setNavigationBarBackgroundColor(AppColors.backgroundLight) .navigationDestination(item: $reviewDraft) { draft in MyReviewsView(initialOrder: draft) } diff --git a/PediFoods/Views/Main/OrdersView.swift b/PediFoods/Views/Main/OrdersView.swift index e4951c7..3335090 100644 --- a/PediFoods/Views/Main/OrdersView.swift +++ b/PediFoods/Views/Main/OrdersView.swift @@ -22,6 +22,7 @@ struct OrdersView: View { } .setLeftButton(image: AnyView(AppBackButtonIcon())) { dismiss() } .setTitle(text: Text("Meus Pedidos").font(AppTypography.heading2).foregroundStyle(AppColors.textPrimary)) + .setNavigationBarBackgroundColor(AppColors.backgroundLight) } private var content: some View { diff --git a/PediFoods/Views/Main/PizzaFlavorAddonsSheet.swift b/PediFoods/Views/Main/PizzaFlavorAddonsSheet.swift index 8ae2f7a..0c823a3 100644 --- a/PediFoods/Views/Main/PizzaFlavorAddonsSheet.swift +++ b/PediFoods/Views/Main/PizzaFlavorAddonsSheet.swift @@ -16,6 +16,7 @@ struct PizzaFlavorAddonsSheet: View { } .setLeftButton(image: AnyView(AppBackButtonIcon())) { dismiss() } .setTitle(text: Text("Adicionais").font(AppTypography.heading2).foregroundStyle(AppColors.textPrimary)) + .setNavigationBarBackgroundColor(AppColors.backgroundLight) } private var content: some View { diff --git a/PediFoods/Views/Main/PizzaProductDetailSheet.swift b/PediFoods/Views/Main/PizzaProductDetailSheet.swift index a2af392..f8a2f7c 100644 --- a/PediFoods/Views/Main/PizzaProductDetailSheet.swift +++ b/PediFoods/Views/Main/PizzaProductDetailSheet.swift @@ -224,6 +224,7 @@ struct PizzaProductDetailSheet: View { } .setLeftButton(image: AnyView(AppBackButtonIcon())) { dismiss() } .setTitle(text: Text("Monte sua pizza").font(AppTypography.heading2).foregroundStyle(AppColors.textPrimary)) + .setNavigationBarBackgroundColor(AppColors.backgroundLight) } private var content: some View { diff --git a/PediFoods/Views/Main/ProductDetailSheet.swift b/PediFoods/Views/Main/ProductDetailSheet.swift index ad6a4c3..bf2740c 100644 --- a/PediFoods/Views/Main/ProductDetailSheet.swift +++ b/PediFoods/Views/Main/ProductDetailSheet.swift @@ -78,6 +78,7 @@ struct ProductDetailSheet: View { } .setLeftButton(image: AnyView(AppBackButtonIcon())) { dismiss() } .setTitle(text: Text("Detalhes").font(AppTypography.heading2).foregroundStyle(AppColors.textPrimary)) + .setNavigationBarBackgroundColor(AppColors.backgroundLight) } private var content: some View { diff --git a/PediFoods/Views/Main/PublicLocationPickerView.swift b/PediFoods/Views/Main/PublicLocationPickerView.swift index 1e8e2d2..f2d179b 100644 --- a/PediFoods/Views/Main/PublicLocationPickerView.swift +++ b/PediFoods/Views/Main/PublicLocationPickerView.swift @@ -36,6 +36,7 @@ struct PublicLocationPickerView: View { } .setLeftButton(image: AnyView(AppBackButtonIcon())) { back() } .setTitle(text: Text(step == .state ? "Escolha seu estado" : "Escolha sua cidade").font(AppTypography.heading2).foregroundStyle(AppColors.textPrimary)) + .setNavigationBarBackgroundColor(AppColors.backgroundLight) } private var content: some View { diff --git a/PediFoods/Views/Main/ReviewsView.swift b/PediFoods/Views/Main/ReviewsView.swift index f01fa66..5318791 100644 --- a/PediFoods/Views/Main/ReviewsView.swift +++ b/PediFoods/Views/Main/ReviewsView.swift @@ -36,6 +36,7 @@ struct MyReviewsView: View { } .setLeftButton(image: AnyView(AppBackButtonIcon())) { dismiss() } .setTitle(text: Text("Minhas Avaliações").font(AppTypography.heading2).foregroundStyle(AppColors.textPrimary)) + .setNavigationBarBackgroundColor(AppColors.backgroundLight) .navigationDestination(item: $selectedDraft) { draft in OrderReviewView(draft: draft) { Task { await loadReviewsFromBackend(forceRefresh: true) } @@ -447,6 +448,7 @@ struct OrderReviewView: View { } .setLeftButton(image: AnyView(AppBackButtonIcon())) { dismiss() } .setTitle(text: Text("Avaliar Pedido").font(AppTypography.heading2).foregroundStyle(AppColors.textPrimary)) + .setNavigationBarBackgroundColor(AppColors.backgroundLight) } private var content: some View { diff --git a/PediFoods/Views/Main/SavedCardsView.swift b/PediFoods/Views/Main/SavedCardsView.swift index 097cca7..d31e91e 100644 --- a/PediFoods/Views/Main/SavedCardsView.swift +++ b/PediFoods/Views/Main/SavedCardsView.swift @@ -23,6 +23,7 @@ struct SavedCardsView: View { } .setLeftButton(image: AnyView(AppBackButtonIcon())) { dismiss() } .setTitle(text: Text("Meus Cartões").font(AppTypography.heading2).foregroundStyle(AppColors.textPrimary)) + .setNavigationBarBackgroundColor(AppColors.backgroundLight) } private var content: some View { diff --git a/PediFoods/Views/Main/UserProfileView.swift b/PediFoods/Views/Main/UserProfileView.swift index 6f11b15..5612744 100644 --- a/PediFoods/Views/Main/UserProfileView.swift +++ b/PediFoods/Views/Main/UserProfileView.swift @@ -34,6 +34,7 @@ struct UserProfileView: View { } .setLeftButton(image: AnyView(AppBackButtonIcon())) { dismiss() } .setTitle(text: Text("Meu Perfil").font(AppTypography.heading2).foregroundStyle(AppColors.textPrimary)) + .setNavigationBarBackgroundColor(AppColors.backgroundLight) } private var content: some View {