File tree Expand file tree Collapse file tree
app/src/main/kotlin/io/bashpsk/emptylibs
jetpack-ui/src/main/kotlin/io/bashpsk/emptylibs/jetpackui/text Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -47,8 +47,8 @@ fun LazyTextViewerScreen() {
4747 derivedStateOf {
4848 File (
4949 Environment .getExternalStoragePublicDirectory(Environment .DIRECTORY_DOWNLOADS ),
50- " Empty Libs.txt"
51- // "EmptyLayer.kt"
50+ // "Empty Libs.txt"
51+ " EmptyLayer.kt"
5252 )
5353 }
5454 }
Original file line number Diff line number Diff line change @@ -44,14 +44,16 @@ fun LazyTextViewer(
4444 val textMeasurer = rememberTextMeasurer()
4545 val horizontalScrollState = rememberScrollState()
4646
47- val firstVisibleItemIndex by remember { derivedStateOf { layoutState.firstVisibleItemIndex } }
47+ val lastVisibleItemIndex by remember {
48+ derivedStateOf { layoutState.layoutInfo.visibleItemsInfo.lastOrNull()?.index ? : 0 }
49+ }
4850
49- val numberIndex by remember(firstVisibleItemIndex , state.totalLines) {
51+ val numberIndex by remember(lastVisibleItemIndex , state.totalLines) {
5052 derivedStateOf {
5153 when {
5254
5355 state.totalLines < 100 -> state.totalLines
54- else -> firstVisibleItemIndex .coerceIn(0 until state.totalLines)
56+ else -> lastVisibleItemIndex .coerceIn(0 until state.totalLines)
5557 }
5658 }
5759 }
@@ -61,7 +63,7 @@ fun LazyTextViewer(
6163 with (density) {
6264 textMeasurer.measure(
6365 density = density,
64- text = state.getFormattedLineNumber(index = state.totalLines ),
66+ text = state.getFormattedLineNumber(index = numberIndex ),
6567 style = properties.numberStyle,
6668 maxLines = 1
6769 ).size.width.toDp()
You can’t perform that action at this time.
0 commit comments