From 6c8d5297c8d800fee273d724a3d5811ab8f67319 Mon Sep 17 00:00:00 2001 From: DarkKnight2122 <145188583+DarkKnight2122@users.noreply.github.com> Date: Sun, 22 Mar 2026 19:43:20 +0530 Subject: [PATCH 1/2] Task page layout harmonization. --- .../pages/themes/aphelion/AphelionTasksView.kt | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/app/src/main/kotlin/me/eternal/purrfectsnap/ui/manager/pages/themes/aphelion/AphelionTasksView.kt b/app/src/main/kotlin/me/eternal/purrfectsnap/ui/manager/pages/themes/aphelion/AphelionTasksView.kt index ce1236d3..b5c7ad82 100644 --- a/app/src/main/kotlin/me/eternal/purrfectsnap/ui/manager/pages/themes/aphelion/AphelionTasksView.kt +++ b/app/src/main/kotlin/me/eternal/purrfectsnap/ui/manager/pages/themes/aphelion/AphelionTasksView.kt @@ -97,6 +97,13 @@ fun TasksRootSection.AphelionTasksScreen(nav: NavBackStackEntry) { .fillMaxSize() .background(PurrfectPalette.backgroundGradient) ) { + val scrollOffset = routes.navigation?.globalScrollOffset ?: 0 + val focusFactor = (scrollOffset.toFloat() / Motion.HEADER_MORPH_THRESHOLD).coerceIn(0f, 1f) + val statusBarHeight = WindowInsets.statusBars.asPaddingValues().calculateTopPadding() + + val containerTopPadding = androidx.compose.ui.unit.lerp(statusBarHeight + 2.dp, 0.dp, focusFactor) + val topCorners = androidx.compose.ui.unit.lerp(28.dp, 0.dp, focusFactor) + val subtitle = if (activeTasks.isNotEmpty()) { translation.format( "summary_active", @@ -110,13 +117,13 @@ fun TasksRootSection.AphelionTasksScreen(nav: NavBackStackEntry) { ) } - // The "Structured Glass" Container (1:1 with build 33a7e8f) + // The "Structured Glass" Container (Dynamically Morphed) Surface( modifier = Modifier .fillMaxSize() .padding(horizontal = 12.dp) - .padding(top = 12.dp), - shape = RoundedCornerShape(topStart = 28.dp, topEnd = 28.dp, bottomStart = 0.dp, bottomEnd = 0.dp), + .padding(top = containerTopPadding), + shape = RoundedCornerShape(topStart = topCorners, topEnd = topCorners, bottomStart = 0.dp, bottomEnd = 0.dp), color = Color.White.copy(alpha = 0.04f), tonalElevation = 0.dp, shadowElevation = 0.dp, @@ -128,7 +135,7 @@ fun TasksRootSection.AphelionTasksScreen(nav: NavBackStackEntry) { contentPadding = PaddingValues( start = 10.dp, end = 10.dp, - top = controlsHeight, + top = controlsHeight - 44.dp, bottom = routes.bottomPadding + 20.dp ), verticalArrangement = Arrangement.spacedBy(16.dp) From 901e4f81b87e1fbe18843903f3d6a88619cd1adf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=CE=9ET=CE=9ERNAL?= <137927782+particle-box@users.noreply.github.com> Date: Sun, 22 Mar 2026 20:32:16 +0530 Subject: [PATCH 2/2] fix: Missing changes --- changelogs-stable.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/changelogs-stable.txt b/changelogs-stable.txt index 1777352c..6d6acf69 100644 --- a/changelogs-stable.txt +++ b/changelogs-stable.txt @@ -1,6 +1,7 @@ ## v1.5.1 - Fix: Splitting issue for video snaps sent through gallery media send override! - New: Toggle to turn off/on splitting for video snaps sent through send override +- Fix: Aphelion task page layout optimization(tq to Kaladin) ## v1.5.0 - Fix: Skip when marking as seen for newer versions of Snapchat