VerticalScrollbar

This commit is contained in:
dotmg 2025-11-28 10:53:19 +01:00
parent bba28fd7c1
commit be1b541faa
5 changed files with 60 additions and 6 deletions

View file

@ -0,0 +1,8 @@
package mg.dot.feufaro
actual fun launchFilePicker(
mimeTypes: Array<String>,
onFileSelected: (path: String?) -> Unit
): Unit {
}

View file

@ -0,0 +1,12 @@
package mg.dot.feufaro.ui
import androidx.compose.foundation.ScrollState
import androidx.compose.runtime.Composable
@Composable
actual fun MyVerticalScrollbar (
scrollState: ScrollState,
content: @Composable () -> Unit
){
content()
}

View file

@ -1,7 +1,6 @@
package mg.dot.feufaro package mg.dot.feufaro
import SharedScreenModel import SharedScreenModel
import androidx.compose.foundation.VerticalScrollbar
import androidx.compose.foundation.background import androidx.compose.foundation.background
import androidx.compose.foundation.gestures.detectTapGestures import androidx.compose.foundation.gestures.detectTapGestures
import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Arrangement
@ -17,7 +16,6 @@ import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.safeDrawing import androidx.compose.foundation.layout.safeDrawing
import androidx.compose.foundation.layout.windowInsetsPadding import androidx.compose.foundation.layout.windowInsetsPadding
import androidx.compose.foundation.rememberScrollState import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.rememberScrollbarAdapter
import androidx.compose.foundation.verticalScroll import androidx.compose.foundation.verticalScroll
import androidx.compose.material3.Text import androidx.compose.material3.Text
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
@ -44,6 +42,7 @@ import cafe.adriel.voyager.core.screen.Screen
import cafe.adriel.voyager.koin.koinScreenModel import cafe.adriel.voyager.koin.koinScreenModel
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
import mg.dot.feufaro.data.GridTUOData import mg.dot.feufaro.data.GridTUOData
import mg.dot.feufaro.ui.MyVerticalScrollbar
import mg.dot.feufaro.viewmodel.SolfaScreenModel import mg.dot.feufaro.viewmodel.SolfaScreenModel
import java.io.ObjectStreamException import java.io.ObjectStreamException
@ -186,10 +185,9 @@ object ScreenSolfa : Screen {
} }
} }
} }
VerticalScrollbar( MyVerticalScrollbar(
adapter = rememberScrollbarAdapter(scrollState), scrollState,
modifier = Modifier.fillMaxHeight(0.5f).background(Color.Green).align(Alignment.CenterEnd) ) {}
)
} }
} }

View file

@ -0,0 +1,10 @@
package mg.dot.feufaro.ui
import androidx.compose.foundation.ScrollState
import androidx.compose.runtime.Composable
@Composable
expect fun MyVerticalScrollbar (
scrollState: ScrollState,
content: @Composable () -> Unit
)

View file

@ -0,0 +1,26 @@
package mg.dot.feufaro.ui
import androidx.compose.foundation.ScrollState
import androidx.compose.foundation.VerticalScrollbar
import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.fillMaxHeight
import androidx.compose.foundation.rememberScrollbarAdapter
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
@Composable
actual fun MyVerticalScrollbar (
scrollState: ScrollState,
content: @Composable () -> Unit
) {
Box {
content()
VerticalScrollbar(
adapter = rememberScrollbarAdapter(scrollState = scrollState),
modifier = Modifier.fillMaxHeight(0.5f).background(Color.Green).align(Alignment.CenterEnd)
)
}
}