Jelajahi Sumber

Add color gradient for dark scheme

dnzxy 2 tahun lalu
induk
melakukan
fe0407a403

+ 1 - 1
FreeAPS/Sources/Modules/Home/View/Chart/MainChartView.swift

@@ -274,7 +274,7 @@ struct MainChartView: View {
         .scaleEffect(x: 1, y: -1)
         .frame(width: fullGlucoseWidth(viewWidth: fullSize.width) + additionalWidth(viewWidth: fullSize.width))
         .frame(maxHeight: Config.basalHeight)
-        .background(Color.clear)
+        .background(colorScheme == .dark ? Color.black.opacity(0.8) : Color.clear)
         .onChange(of: tempBasals) { _ in
             calculateBasalPoints(fullSize: fullSize)
         }

+ 21 - 11
FreeAPS/Sources/Modules/Home/View/HomeRootView.swift

@@ -513,11 +513,11 @@ extension Home {
         }
 
         @ViewBuilder private func bottomPanel(_: GeometryProxy) -> some View {
-            let colourRectangle: Color = colorScheme == .dark ? .gray.opacity(0.2) : .white
+            let colorRectangle: Color = colorScheme == .dark ? .black.opacity(0.8) : .white
 
             ZStack {
                 Rectangle()
-                    .fill(colourRectangle)
+                    .fill(colorRectangle)
                     .frame(height: UIScreen.main.bounds.height / 13)
                     .cornerRadius(15)
                     .shadow(radius: 3)
@@ -627,34 +627,43 @@ extension Home {
         }
 
         var body: some View {
-            let colourBackground: Color = colorScheme == .dark ? .black.opacity(0.5) : .gray.opacity(0.1)
-            let colourChart: Color = colorScheme == .dark ? .gray.opacity(0.2) : .white
+            let colorBackground = colorScheme == .dark ? LinearGradient(
+                gradient: Gradient(colors: [
+                    // RGB(3, 15, 28)
+                    Color(red: 0.011, green: 0.058, blue: 0.109),
+                    // RGB(1, 3, 8)
+                    Color(red: 0.003, green: 0.011, blue: 0.031)
+                ]),
+                startPoint: .top,
+                endPoint: .bottom
+            )
+                :
+                LinearGradient(gradient: Gradient(colors: [Color.gray.opacity(0.1)]), startPoint: .top, endPoint: .bottom)
+            let colourChart: Color = colorScheme == .dark ? .black.opacity(0.8) : .white
 
             GeometryReader { geo in
                 VStack(spacing: 0) {
                     ZStack {
                         glucoseView
-                            .padding(.top, 75)
 
                         loopView
                             /// circles width is 110, loops width is 35 -> (110/2) - (35/2) = 55 - 17.5 = 37.5
                             .offset(x: UIScreen.main.bounds.width * 0.43, y: -37.5)
-                            .padding(.top, 75)
                             .padding(.trailing, 10)
                     }
+                    .padding(.top, 75)
 
                     Spacer()
 
                     header(geo)
-                        .padding(.top, 40)
                         .padding([.leading, .trailing], 10)
+                        .padding(.top, 15)
 
                     Spacer()
 
                     infoPanel
                         .padding([.leading, .trailing], 10)
-
-                    Spacer()
+                        .padding(.bottom, 10)
 
                     RoundedRectangle(cornerRadius: 15)
                         .fill(colourChart)
@@ -677,11 +686,12 @@ extension Home {
                     bottomPanel(geo)
                         .padding(.top, 3)
                 }
-                .edgesIgnoringSafeArea(.vertical)
+                .background(colorBackground)
+                .edgesIgnoringSafeArea(.all)
             }
             .onAppear(perform: configureView)
             .navigationTitle("Home")
-            .background(colourBackground)
+
             .navigationBarHidden(true)
             .ignoresSafeArea(.keyboard)
             .popup(isPresented: isStatusPopupPresented, alignment: .top, direction: .top) {