fix widget / icon view layout

This commit is contained in:
Trey t
2022-02-26 11:50:51 -06:00
parent 5357b4ffb8
commit 09e1e96a0a
4 changed files with 21 additions and 39 deletions

View File

@@ -11,28 +11,6 @@ struct IconView: View {
@State public var iconViewModel: IconViewModel
private let facePercSize = 0.6
public let isPreview: Bool
private var gridXOffset: CGFloat {
if isPreview {
return CGFloat(0)
}
return CGFloat(6)
}
private var gridYOffset: CGFloat {
if isPreview {
return CGFloat(0)
}
return CGFloat(-8)
}
private var entireFuckingViewOffset: CGFloat {
if isPreview {
return CGFloat(0)
}
return CGFloat(25)
}
let columns = [
GridItem(.flexible(minimum: 1, maximum: 100), spacing: 1),
@@ -60,7 +38,7 @@ struct IconView: View {
ForEach(iconViewModel.background, id: \.self.1) { (bgOption, uuid) in
bgOption
.resizable()
.aspectRatio(1, contentMode: .fill)
.aspectRatio(contentMode: .fill)
.foregroundColor(iconViewModel.bgOverlayColor)
}
}
@@ -76,7 +54,9 @@ struct IconView: View {
.frame(width: geo.size.width*facePercSize,
height: geo.size.height*facePercSize,
alignment: .center)
.position(x: geo.size.width/2, y: geo.size.height/2)
.alignmentGuide(.top, computeValue: { _ in
return geo.size.width/2
})
iconViewModel.centerImage
.resizable()
@@ -85,11 +65,13 @@ struct IconView: View {
height: geo.size.height*facePercSize,
alignment: .center)
.foregroundColor(iconViewModel.bgOverlayColor)
.position(x: geo.size.width/2, y: geo.size.height/2)
.alignmentGuide(.top, computeValue: { _ in
return geo.size.width/2
})
}
.position(x: geo.size.width/2,
y: geo.size.height/2 - entireFuckingViewOffset)
y: geo.size.height/2)
}
}
}
@@ -97,7 +79,7 @@ struct IconView: View {
struct IconView_Previews: PreviewProvider {
static var previews: some View {
Group {
IconView(iconViewModel: IconViewModel.great, isPreview: false)
IconView(iconViewModel: IconViewModel.great)
.frame(width: 256, height: 256, alignment: .center)
// IconView(iconViewModel: IconViewModel.good, isPreview: true)