Add rounded corner clip
This commit is contained in:
parent
8d439ecf6f
commit
0b4bd1403b
@ -1,8 +1,5 @@
|
|||||||
package de.mm20.launcher2.ui.launcher
|
package de.mm20.launcher2.ui.launcher
|
||||||
|
|
||||||
import android.app.Activity
|
|
||||||
import android.util.Log
|
|
||||||
import android.view.WindowManager
|
|
||||||
import androidx.activity.compose.BackHandler
|
import androidx.activity.compose.BackHandler
|
||||||
import androidx.compose.animation.AnimatedVisibility
|
import androidx.compose.animation.AnimatedVisibility
|
||||||
import androidx.compose.animation.core.animateDpAsState
|
import androidx.compose.animation.core.animateDpAsState
|
||||||
@ -11,8 +8,6 @@ import androidx.compose.animation.slideOut
|
|||||||
import androidx.compose.foundation.ExperimentalFoundationApi
|
import androidx.compose.foundation.ExperimentalFoundationApi
|
||||||
import androidx.compose.foundation.gestures.LocalOverScrollConfiguration
|
import androidx.compose.foundation.gestures.LocalOverScrollConfiguration
|
||||||
import androidx.compose.foundation.gestures.Orientation
|
import androidx.compose.foundation.gestures.Orientation
|
||||||
import androidx.compose.foundation.gestures.detectDragGestures
|
|
||||||
import androidx.compose.foundation.gestures.detectVerticalDragGestures
|
|
||||||
import androidx.compose.foundation.layout.*
|
import androidx.compose.foundation.layout.*
|
||||||
import androidx.compose.foundation.rememberScrollState
|
import androidx.compose.foundation.rememberScrollState
|
||||||
import androidx.compose.foundation.verticalScroll
|
import androidx.compose.foundation.verticalScroll
|
||||||
@ -27,6 +22,7 @@ import androidx.compose.runtime.*
|
|||||||
import androidx.compose.runtime.livedata.observeAsState
|
import androidx.compose.runtime.livedata.observeAsState
|
||||||
import androidx.compose.ui.Alignment
|
import androidx.compose.ui.Alignment
|
||||||
import androidx.compose.ui.Modifier
|
import androidx.compose.ui.Modifier
|
||||||
|
import androidx.compose.ui.draw.clip
|
||||||
import androidx.compose.ui.geometry.Offset
|
import androidx.compose.ui.geometry.Offset
|
||||||
import androidx.compose.ui.graphics.Color
|
import androidx.compose.ui.graphics.Color
|
||||||
import androidx.compose.ui.input.nestedscroll.NestedScrollConnection
|
import androidx.compose.ui.input.nestedscroll.NestedScrollConnection
|
||||||
@ -42,7 +38,6 @@ import androidx.compose.ui.unit.dp
|
|||||||
import androidx.lifecycle.viewmodel.compose.viewModel
|
import androidx.lifecycle.viewmodel.compose.viewModel
|
||||||
import com.google.accompanist.pager.ExperimentalPagerApi
|
import com.google.accompanist.pager.ExperimentalPagerApi
|
||||||
import com.google.accompanist.systemuicontroller.rememberSystemUiController
|
import com.google.accompanist.systemuicontroller.rememberSystemUiController
|
||||||
import de.mm20.launcher2.ktx.isAtLeastApiLevel
|
|
||||||
import de.mm20.launcher2.ui.R
|
import de.mm20.launcher2.ui.R
|
||||||
import de.mm20.launcher2.ui.ktx.toPixels
|
import de.mm20.launcher2.ui.ktx.toPixels
|
||||||
import de.mm20.launcher2.ui.launcher.helper.WallpaperBlur
|
import de.mm20.launcher2.ui.launcher.helper.WallpaperBlur
|
||||||
@ -55,7 +50,7 @@ import de.mm20.launcher2.ui.utils.rememberNotificationShadeController
|
|||||||
import kotlin.math.roundToInt
|
import kotlin.math.roundToInt
|
||||||
|
|
||||||
@OptIn(
|
@OptIn(
|
||||||
ExperimentalPagerApi::class, ExperimentalMaterial3Api::class, ExperimentalMaterialApi::class,
|
ExperimentalMaterialApi::class,
|
||||||
ExperimentalFoundationApi::class
|
ExperimentalFoundationApi::class
|
||||||
)
|
)
|
||||||
@Composable
|
@Composable
|
||||||
@ -236,9 +231,11 @@ fun PagerScaffold(
|
|||||||
modifier = Modifier
|
modifier = Modifier
|
||||||
.requiredWidth(width)
|
.requiredWidth(width)
|
||||||
.fillMaxHeight()
|
.fillMaxHeight()
|
||||||
|
.padding(horizontal = 8.dp)
|
||||||
|
.clip(MaterialTheme.shapes.medium)
|
||||||
.nestedScroll(nestedScrollConnection)
|
.nestedScroll(nestedScrollConnection)
|
||||||
.verticalScroll(widgetsScrollState)
|
.verticalScroll(widgetsScrollState)
|
||||||
.padding(start = 8.dp, end = 8.dp, top = 8.dp, bottom = 64.dp)
|
.padding(top = 8.dp, bottom = 64.dp)
|
||||||
.padding(top = editModePadding),
|
.padding(top = editModePadding),
|
||||||
clockHeight = { clockHeight },
|
clockHeight = { clockHeight },
|
||||||
clockBottomPadding = { clockPadding },
|
clockBottomPadding = { clockPadding },
|
||||||
@ -257,9 +254,11 @@ fun PagerScaffold(
|
|||||||
modifier = Modifier
|
modifier = Modifier
|
||||||
.requiredWidth(width)
|
.requiredWidth(width)
|
||||||
.fillMaxHeight()
|
.fillMaxHeight()
|
||||||
|
.padding(horizontal = 8.dp)
|
||||||
|
.clip(MaterialTheme.shapes.medium)
|
||||||
.verticalScroll(searchScrollState, reverseScrolling = true)
|
.verticalScroll(searchScrollState, reverseScrolling = true)
|
||||||
.imePadding()
|
.imePadding()
|
||||||
.padding(start = 8.dp, end = 8.dp, top = 8.dp, bottom = 64.dp)
|
.padding(top = 8.dp, bottom = 64.dp)
|
||||||
.padding(bottom = webSearchPadding),
|
.padding(bottom = webSearchPadding),
|
||||||
reverse = true,
|
reverse = true,
|
||||||
)
|
)
|
||||||
|
|||||||
@ -19,7 +19,7 @@ import androidx.compose.runtime.*
|
|||||||
import androidx.compose.runtime.livedata.observeAsState
|
import androidx.compose.runtime.livedata.observeAsState
|
||||||
import androidx.compose.ui.Alignment
|
import androidx.compose.ui.Alignment
|
||||||
import androidx.compose.ui.Modifier
|
import androidx.compose.ui.Modifier
|
||||||
import androidx.compose.ui.draw.clipToBounds
|
import androidx.compose.ui.draw.clip
|
||||||
import androidx.compose.ui.geometry.Offset
|
import androidx.compose.ui.geometry.Offset
|
||||||
import androidx.compose.ui.graphics.Color
|
import androidx.compose.ui.graphics.Color
|
||||||
import androidx.compose.ui.graphics.TransformOrigin
|
import androidx.compose.ui.graphics.TransformOrigin
|
||||||
@ -185,7 +185,8 @@ fun PullDownScaffold(
|
|||||||
|
|
||||||
Box(
|
Box(
|
||||||
modifier = modifier
|
modifier = modifier
|
||||||
.clipToBounds()
|
.padding(horizontal = 8.dp)
|
||||||
|
.clip(MaterialTheme.shapes.medium)
|
||||||
.nestedScroll(nestedScrollConnection)
|
.nestedScroll(nestedScrollConnection)
|
||||||
.offset { IntOffset(0, offsetY.value.toInt()) },
|
.offset { IntOffset(0, offsetY.value.toInt()) },
|
||||||
contentAlignment = Alignment.TopCenter
|
contentAlignment = Alignment.TopCenter
|
||||||
@ -229,7 +230,7 @@ fun PullDownScaffold(
|
|||||||
.fillMaxWidth()
|
.fillMaxWidth()
|
||||||
.requiredHeight(height)
|
.requiredHeight(height)
|
||||||
.verticalScroll(searchScrollState)
|
.verticalScroll(searchScrollState)
|
||||||
.padding(8.dp)
|
.padding(vertical = 8.dp)
|
||||||
.padding(top = 56.dp)
|
.padding(top = 56.dp)
|
||||||
.padding(top = webSearchPadding)
|
.padding(top = webSearchPadding)
|
||||||
.imePadding()
|
.imePadding()
|
||||||
@ -247,7 +248,7 @@ fun PullDownScaffold(
|
|||||||
.fillMaxWidth()
|
.fillMaxWidth()
|
||||||
.requiredHeight(height)
|
.requiredHeight(height)
|
||||||
.verticalScroll(widgetsScrollState)
|
.verticalScroll(widgetsScrollState)
|
||||||
.padding(8.dp)
|
.padding(vertical = 8.dp)
|
||||||
.padding(top = editModePadding),
|
.padding(top = editModePadding),
|
||||||
clockHeight = { height },
|
clockHeight = { height },
|
||||||
editMode = isWidgetEditMode,
|
editMode = isWidgetEditMode,
|
||||||
@ -299,7 +300,7 @@ fun PullDownScaffold(
|
|||||||
modifier = Modifier
|
modifier = Modifier
|
||||||
.fillMaxWidth()
|
.fillMaxWidth()
|
||||||
.wrapContentHeight()
|
.wrapContentHeight()
|
||||||
.padding(8.dp)
|
.padding(vertical = 8.dp)
|
||||||
.offset { IntOffset(0, searchBarOffset.value.toInt()) }
|
.offset { IntOffset(0, searchBarOffset.value.toInt()) }
|
||||||
.offset {
|
.offset {
|
||||||
IntOffset(
|
IntOffset(
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user