Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions android/demo-app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,7 @@ dependencies {
implementation project(':ui-maplibre-car-app')

implementation libs.maplibre.compose
implementation libs.car.app.compose

implementation platform(libs.okhttp.bom)
implementation libs.okhttp.core
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ import androidx.compose.runtime.snapshotFlow
import androidx.lifecycle.DefaultLifecycleObserver
import androidx.lifecycle.Lifecycle
import androidx.lifecycle.LifecycleOwner
import com.maplibre.compose.car.ComposableScreen
import com.rallista.car.app.compose.ComposableScreen
import com.stadiamaps.ferrostar.AppModule
import com.stadiamaps.ferrostar.R
import com.stadiamaps.ferrostar.car.app.intent.NavigationDestination
Expand Down
5 changes: 2 additions & 3 deletions android/gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ androidx-activity-compose = "1.13.0"
compose = "2026.02.01"
okhttp = "5.3.2"
maplibre-compose = "0.13.0"
rallista-maplibre-compose = "1.7.0"
car-app-compose = "0.0.2"
playServicesLocation = "21.3.0"
junit = "4.13.2"
junitVersion = "1.3.0"
Expand Down Expand Up @@ -63,8 +63,7 @@ okhttp-mock = { group = "com.github.gmazzo", name = "okhttp-mock", version.ref =
kotlinx-serialization = { group = "org.jetbrains.kotlinx", name = "kotlinx-serialization-json", version.ref = "kotlinx-serialization" }
# MapLibre
maplibre-compose = { group = "org.maplibre.compose", name = "maplibre-compose-android", version.ref = "maplibre-compose" }
rallista-maplibre-compose = { group = "io.github.rallista", name = "maplibre-compose", version.ref = "rallista-maplibre-compose" }
rallista-maplibre-compose-car-app = { group = "io.github.rallista", name = "maplibre-compose-car-app", version.ref = "rallista-maplibre-compose" }
car-app-compose = { group = "io.github.rallista", name = "car-app-compose", version.ref = "car-app-compose" }
# Google Play Services (for Google module)
play-services-location = { module = "com.google.android.gms:play-services-location", version.ref = "playServicesLocation" }
# Testing
Expand Down
3 changes: 1 addition & 2 deletions android/ui-maplibre-car-app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,7 @@ dependencies {
implementation libs.androidx.compose.ui.graphics
implementation libs.androidx.compose.ui.tooling
implementation libs.androidx.compose.material3
api libs.rallista.maplibre.compose
api libs.rallista.maplibre.compose.car.app
api libs.car.app.compose

implementation project(':core')
implementation project(':ui-compose')
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import androidx.compose.runtime.derivedStateOf
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.ui.platform.LocalDensity
import com.maplibre.compose.surface.SurfaceGestureCallback
import com.rallista.car.app.compose.SurfaceGestureCallback
import com.stadiamaps.ferrostar.maplibreui.runtime.NavigationMapState
import kotlin.time.Duration

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package com.stadiamaps.ferrostar.ui.maplibre.car.app.runtime
import androidx.compose.runtime.Composable
import androidx.compose.ui.unit.Density
import androidx.compose.ui.unit.DpOffset
import com.maplibre.compose.surface.SurfaceGestureCallback
import com.rallista.car.app.compose.SurfaceGestureCallback
import com.stadiamaps.ferrostar.maplibreui.runtime.NavigationMapState
import kotlin.time.Duration
import kotlin.time.Duration.Companion.milliseconds
Expand All @@ -12,11 +12,11 @@ internal const val DEFAULT_FLING_VELOCITY_FACTOR = 0.1f

@Composable internal fun defaultFlingDuration(): Duration = 300.milliseconds

internal class ComposeMapSurfaceGestureCallback(
private val navigationMapState: NavigationMapState,
private val density: Density,
private val flingDuration: Duration,
private val flingVelocityFactor: Float,
class ComposeMapSurfaceGestureCallback(
val navigationMapState: NavigationMapState,
val density: Density,
val flingDuration: Duration,
val flingVelocityFactor: Float,
) : SurfaceGestureCallback {
override fun onScroll(distanceX: Float, distanceY: Float) {
// Preserve the old Ramani surface-gesture sign convention until DHU validation proves
Expand Down
Loading