fix(backup): hard-lock status area to 66pt on all pages for consistent stat alignment
Replace opacity(0) approach with a ZStack(.frame(height:66)) container. ZStack is empty on pages 1/2 but still allocates exactly 66pt, so the page indicator and stats strip sit at the same absolute Y on every page. Co-Authored-By: Kutesir <kutesir@provoc.ug> Co-Authored-By: Sentry <sentry@provoc.ug>
This commit is contained in:
@@ -681,15 +681,20 @@ struct BackupView: View {
|
|||||||
}
|
}
|
||||||
.padding(.bottom, 4)
|
.padding(.bottom, 4)
|
||||||
|
|
||||||
cascadingArrows
|
// Fixed-height container — guarantees identical Y for all pages
|
||||||
.frame(height: 16)
|
ZStack(alignment: .top) {
|
||||||
.padding(.bottom, 8)
|
if ringPage == 0 {
|
||||||
.opacity(ringPage == 0 ? 1 : 0)
|
VStack(spacing: 0) {
|
||||||
|
cascadingArrows
|
||||||
circleStatusRow
|
.frame(height: 16)
|
||||||
.padding(.horizontal, AppTheme.hPad)
|
.padding(.bottom, 8)
|
||||||
.padding(.bottom, 10)
|
circleStatusRow
|
||||||
.opacity(ringPage == 0 ? 1 : 0)
|
.padding(.horizontal, AppTheme.hPad)
|
||||||
|
.padding(.bottom, 10)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.frame(height: 66)
|
||||||
}
|
}
|
||||||
// Pull zone floats above the ring on all pages
|
// Pull zone floats above the ring on all pages
|
||||||
.overlay(alignment: .top) {
|
.overlay(alignment: .top) {
|
||||||
|
|||||||
Reference in New Issue
Block a user