removed the transparent status bar (temporarily)

master
y20k 2022-03-24 20:54:30 +01:00
parent 63036e5668
commit c99c8d343d
No known key found for this signature in database
GPG Key ID: 824D4259F41FAFF6
24 changed files with 95 additions and 89 deletions

View File

@ -10,8 +10,8 @@ android {
applicationId 'org.y20k.trackbook' applicationId 'org.y20k.trackbook'
minSdkVersion 25 minSdkVersion 25
targetSdkVersion 31 targetSdkVersion 31
versionCode 49 versionCode 50
versionName '2.1.1' versionName '2.1.2'
resConfigs "en", "da", "de", "fr", "hr", "id", "it", "ja", "nb-rNO", "nl", "pl", "pt-rBR", "ru", "sv", "tr", "zh-rCN" resConfigs "en", "da", "de", "fr", "hr", "id", "it", "ja", "nb-rNO", "nl", "pl", "pt-rBR", "ru", "sv", "tr", "zh-rCN"
} }
@ -59,16 +59,16 @@ dependencies {
// AndroidX // AndroidX
def navigationVersion = "2.3.5" def navigationVersion = "2.3.5"
implementation "androidx.activity:activity-ktx:1.4.0" implementation "androidx.activity:activity-ktx:1.4.0"
implementation 'androidx.appcompat:appcompat:1.4.0' implementation 'androidx.appcompat:appcompat:1.4.1'
implementation 'androidx.constraintlayout:constraintlayout:2.1.2' implementation 'androidx.constraintlayout:constraintlayout:2.1.3'
implementation 'androidx.core:core-ktx:1.7.0' implementation 'androidx.core:core-ktx:1.7.0'
implementation "androidx.navigation:navigation-fragment-ktx:$navigationVersion" implementation "androidx.navigation:navigation-fragment-ktx:$navigationVersion"
implementation "androidx.navigation:navigation-ui-ktx:$navigationVersion" implementation "androidx.navigation:navigation-ui-ktx:$navigationVersion"
implementation 'androidx.preference:preference-ktx:1.1.1' implementation 'androidx.preference:preference-ktx:1.2.0'
implementation 'com.google.android.material:material:1.6.0-alpha01' implementation 'com.google.android.material:material:1.6.0-alpha03'
// Gson // Gson
implementation 'com.google.code.gson:gson:2.8.9' implementation 'com.google.code.gson:gson:2.9.0'
// OpenStreetMap // OpenStreetMap
implementation 'org.osmdroid:osmdroid-android:6.1.11' implementation 'org.osmdroid:osmdroid-android:6.1.11'

View File

@ -65,6 +65,7 @@ class MapFragment : Fragment(), YesNoDialog.YesNoDialogListener, MapOverlayHelpe
/* Overrides onCreate from Fragment */ /* Overrides onCreate from Fragment */
override fun onCreate(savedInstanceState: Bundle?) { override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState) super.onCreate(savedInstanceState)
// TODO make only MapFragment's status bar transparent - see: https://gist.github.com/Dvik/a3de88d39da9d1d6d175025a56c5e797#file-viewextension-kt and https://proandroiddev.com/android-full-screen-ui-with-transparent-status-bar-ef52f3adde63
// get current best location // get current best location
currentBestLocation = LocationHelper.getLastKnownLocation(activity as Context) currentBestLocation = LocationHelper.getLastKnownLocation(activity as Context)
// get saved tracking state // get saved tracking state
@ -223,7 +224,6 @@ class MapFragment : Fragment(), YesNoDialog.YesNoDialogListener, MapOverlayHelpe
private fun resumeTracking() { private fun resumeTracking() {
// request activity recognition permission on Android Q+ if denied // request activity recognition permission on Android Q+ if denied
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q && ContextCompat.checkSelfPermission(activity as Context, Manifest.permission.ACTIVITY_RECOGNITION) == PackageManager.PERMISSION_DENIED) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q && ContextCompat.checkSelfPermission(activity as Context, Manifest.permission.ACTIVITY_RECOGNITION) == PackageManager.PERMISSION_DENIED) {
LogHelper.e(TAG, "permissions resume DING") // todo remove
resumeTrackingPermissionLauncher.launch(Manifest.permission.ACTIVITY_RECOGNITION) resumeTrackingPermissionLauncher.launch(Manifest.permission.ACTIVITY_RECOGNITION)
} else { } else {
// start service via intent so that it keeps running after unbind // start service via intent so that it keeps running after unbind

View File

@ -28,10 +28,16 @@ import android.os.Bundle
import android.view.View import android.view.View
import android.widget.Toast import android.widget.Toast
import androidx.preference.* import androidx.preference.*
import kotlinx.coroutines.* import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Deferred
import kotlinx.coroutines.Dispatchers.IO import kotlinx.coroutines.Dispatchers.IO
import kotlinx.coroutines.async
import kotlinx.coroutines.launch
import org.y20k.trackbook.core.Tracklist import org.y20k.trackbook.core.Tracklist
import org.y20k.trackbook.helpers.* import org.y20k.trackbook.helpers.AppThemeHelper
import org.y20k.trackbook.helpers.FileHelper
import org.y20k.trackbook.helpers.LengthUnitHelper
import org.y20k.trackbook.helpers.LogHelper
/* /*
@ -48,9 +54,6 @@ class SettingsFragment : PreferenceFragmentCompat(), YesNoDialog.YesNoDialogList
super.onViewCreated(view, savedInstanceState) super.onViewCreated(view, savedInstanceState)
// set the background color // set the background color
view.setBackgroundColor(resources.getColor(R.color.app_window_background, null)) view.setBackgroundColor(resources.getColor(R.color.app_window_background, null))
// add padding - necessary because translucent status bar is used
val topPadding: Int = UiHelper.getStatusBarHeight(activity as Context)
view.setPadding(0, topPadding, 0, 0)
} }
@ -226,7 +229,7 @@ class SettingsFragment : PreferenceFragmentCompat(), YesNoDialog.YesNoDialogList
/* Removes track and track files for given position - used by TracklistFragment */ /* Removes track and track files for given position - used by TracklistFragment */
fun deleteNonStarred(context: Context) { private fun deleteNonStarred(context: Context) {
CoroutineScope(IO).launch { CoroutineScope(IO).launch {
var tracklist: Tracklist = FileHelper.readTracklist(context) var tracklist: Tracklist = FileHelper.readTracklist(context)
val deferred: Deferred<Tracklist> = async { FileHelper.deleteNonStarredSuspended(context, tracklist) } val deferred: Deferred<Tracklist> = async { FileHelper.deleteNonStarredSuspended(context, tracklist) }

View File

@ -41,7 +41,10 @@ import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
import org.y20k.trackbook.core.Track import org.y20k.trackbook.core.Track
import org.y20k.trackbook.dialogs.RenameTrackDialog import org.y20k.trackbook.dialogs.RenameTrackDialog
import org.y20k.trackbook.helpers.* import org.y20k.trackbook.helpers.FileHelper
import org.y20k.trackbook.helpers.LogHelper
import org.y20k.trackbook.helpers.MapOverlayHelper
import org.y20k.trackbook.helpers.TrackHelper
import org.y20k.trackbook.ui.TrackFragmentLayoutHolder import org.y20k.trackbook.ui.TrackFragmentLayoutHolder
@ -66,14 +69,13 @@ class TrackFragment : Fragment(), RenameTrackDialog.RenameTrackListener, YesNoDi
/* Overrides onCreateView from Fragment */ /* Overrides onCreateView from Fragment */
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View { override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View {
// initialize layout // initialize layout
val statusBarHeight: Int = UiHelper.getStatusBarHeight(activity as Context)
val track: Track val track: Track
if (this::trackFileUriString.isInitialized && trackFileUriString.isNotBlank()) { if (this::trackFileUriString.isInitialized && trackFileUriString.isNotBlank()) {
track = FileHelper.readTrack(activity as Context, Uri.parse(trackFileUriString)) track = FileHelper.readTrack(activity as Context, Uri.parse(trackFileUriString))
} else { } else {
track = Track() track = Track()
} }
layout = TrackFragmentLayoutHolder(activity as Context, this as MapOverlayHelper.MarkerListener, inflater, statusBarHeight, container, track) layout = TrackFragmentLayoutHolder(activity as Context, this as MapOverlayHelper.MarkerListener, inflater, container, track)
// set up share button // set up share button
layout.shareButton.setOnClickListener { layout.shareButton.setOnClickListener {

View File

@ -71,10 +71,6 @@ class TracklistFragment : Fragment(), TracklistAdapter.TracklistAdapterListener,
trackElementList = rootView.findViewById(R.id.track_element_list) trackElementList = rootView.findViewById(R.id.track_element_list)
tracklistOnboarding = rootView.findViewById(R.id.track_list_onboarding) tracklistOnboarding = rootView.findViewById(R.id.track_list_onboarding)
// add padding - necessary because translucent status bar is used
val topPadding: Int = UiHelper.getStatusBarHeight(activity as Context)
trackElementList.setPadding(0, topPadding, 0, 0)
// set up recycler view // set up recycler view
trackElementList.layoutManager = CustomLinearLayoutManager(activity as Context) trackElementList.layoutManager = CustomLinearLayoutManager(activity as Context)
trackElementList.itemAnimator = DefaultItemAnimator() trackElementList.itemAnimator = DefaultItemAnimator()
@ -90,7 +86,7 @@ class TracklistFragment : Fragment(), TracklistAdapter.TracklistAdapterListener,
} }
} }
val itemTouchHelper = ItemTouchHelper(swipeHandler) val itemTouchHelper = ItemTouchHelper(swipeHandler)
itemTouchHelper.attachToRecyclerView(rootView.findViewById(R.id.track_element_list)) itemTouchHelper.attachToRecyclerView(trackElementList)
// toggle onboarding layout // toggle onboarding layout
toggleOnboardingLayout() toggleOnboardingLayout()

View File

@ -120,12 +120,14 @@ data class MapFragmentLayoutHolder(private var context: Context, private var mar
// add compass to map // add compass to map
val compassOverlay = CompassOverlay(context, InternalCompassOrientationProvider(context), mapView) val compassOverlay = CompassOverlay(context, InternalCompassOrientationProvider(context), mapView)
compassOverlay.enableCompass() compassOverlay.enableCompass()
compassOverlay.setCompassCenter(36f, 36f + (statusBarHeight / densityScalingFactor)) // compassOverlay.setCompassCenter(36f, 36f + (statusBarHeight / densityScalingFactor)) // TODO uncomment when transparent status bar is re-implemented
compassOverlay.setCompassCenter(36f, 36f)
mapView.overlays.add(compassOverlay) mapView.overlays.add(compassOverlay)
// position the live statistics // position the live statistics
(liveStatisticsDistanceView.layoutParams as ConstraintLayout.LayoutParams).apply { (liveStatisticsDistanceView.layoutParams as ConstraintLayout.LayoutParams).apply {
topMargin = (12 * densityScalingFactor).toInt() + statusBarHeight // topMargin = (12 * densityScalingFactor).toInt() + statusBarHeight // TODO uncomment when transparent status bar is re-implemented
topMargin = (12 * densityScalingFactor).toInt()
} }
// add my location overlay // add my location overlay

View File

@ -57,7 +57,8 @@ import kotlin.math.roundToInt
/* /*
* TrackFragmentLayoutHolder class * TrackFragmentLayoutHolder class
*/ */
data class TrackFragmentLayoutHolder(private var context: Context, private var markerListener: MapOverlayHelper.MarkerListener, private var inflater: LayoutInflater, private var statusBarHeight: Int, private var container: ViewGroup?, var track: Track): MapListener { //data class TrackFragmentLayoutHolder(private var context: Context, private var markerListener: MapOverlayHelper.MarkerListener, private var inflater: LayoutInflater, private var statusBarHeight: Int, private var container: ViewGroup?, var track: Track): MapListener { TODO REMOVE
data class TrackFragmentLayoutHolder(private var context: Context, private var markerListener: MapOverlayHelper.MarkerListener, private var inflater: LayoutInflater, private var container: ViewGroup?, var track: Track): MapListener {
/* Define log tag */ /* Define log tag */
private val TAG: String = LogHelper.makeLogTag(TrackFragmentLayoutHolder::class.java) private val TAG: String = LogHelper.makeLogTag(TrackFragmentLayoutHolder::class.java)
@ -147,7 +148,8 @@ data class TrackFragmentLayoutHolder(private var context: Context, private var m
// add compass to map // add compass to map
val compassOverlay = CompassOverlay(context, InternalCompassOrientationProvider(context), mapView) val compassOverlay = CompassOverlay(context, InternalCompassOrientationProvider(context), mapView)
compassOverlay.enableCompass() compassOverlay.enableCompass()
compassOverlay.setCompassCenter(36f, 36f + (statusBarHeight / UiHelper.getDensityScalingFactor(context))) compassOverlay.setCompassCenter(36f, 36f)
// compassOverlay.setCompassCenter(36f, 36f + (statusBarHeight / UiHelper.getDensityScalingFactor(context))) TODO REMOVE
mapView.overlays.add(compassOverlay) mapView.overlays.add(compassOverlay)
// create map overlay // create map overlay

View File

@ -14,7 +14,7 @@
android:layout_marginStart="24dp" android:layout_marginStart="24dp"
android:layout_marginTop="20dp" android:layout_marginTop="20dp"
android:layout_marginEnd="24dp" android:layout_marginEnd="24dp"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body2" android:textAppearance="@style/TextAppearance.Material3.BodyMedium"
android:textColor="@color/text_default" android:textColor="@color/text_default"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
@ -30,7 +30,8 @@
android:layout_marginEnd="24dp" android:layout_marginEnd="24dp"
android:scrollbars="vertical" android:scrollbars="vertical"
android:text="@string/dialog_generic_details_button" android:text="@string/dialog_generic_details_button"
android:textAppearance="@style/TextAppearance.MaterialComponents.Button" android:textAllCaps="true"
android:textAppearance="@style/TextAppearance.Material3.TitleSmall"
android:textColor="@color/text_default" android:textColor="@color/text_default"
android:visibility="gone" android:visibility="gone"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
@ -46,7 +47,7 @@
android:layout_marginTop="4dp" android:layout_marginTop="4dp"
android:layout_marginEnd="24dp" android:layout_marginEnd="24dp"
android:scrollbars="vertical" android:scrollbars="vertical"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body2" android:textAppearance="@style/TextAppearance.Material3.BodyMedium"
android:textColor="@color/text_default" android:textColor="@color/text_default"
android:textIsSelectable="true" android:textIsSelectable="true"
android:visibility="gone" android:visibility="gone"

View File

@ -13,7 +13,7 @@
android:layout_marginTop="8dp" android:layout_marginTop="8dp"
android:layout_marginEnd="24dp" android:layout_marginEnd="24dp"
android:text="@string/track_list_p_element_statistics" android:text="@string/track_list_p_element_statistics"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body2" android:textAppearance="@style/TextAppearance.Material3.TitleSmall"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />
@ -23,7 +23,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginBottom="8dp" android:layout_marginBottom="8dp"
android:textAppearance="@style/TextAppearance.MaterialComponents.Headline4" android:textAppearance="@style/TextAppearance.Material3.DisplaySmall"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="@+id/total_distance_p" app:layout_constraintEnd_toEndOf="@+id/total_distance_p"
app:layout_constraintStart_toStartOf="@+id/total_distance_p" app:layout_constraintStart_toStartOf="@+id/total_distance_p"

View File

@ -25,8 +25,8 @@
android:layout_marginTop="8dp" android:layout_marginTop="8dp"
android:ellipsize="end" android:ellipsize="end"
android:singleLine="true" android:singleLine="true"
android:textAppearance="@style/TextAppearance.MaterialComponents.Headline6" android:textAppearance="@style/TextAppearance.Material3.BodyLarge"
android:textColor="@color/text_lightweight" android:textColor="@color/text_default"
app:layout_constraintBottom_toTopOf="@+id/track_data" app:layout_constraintBottom_toTopOf="@+id/track_data"
app:layout_constraintEnd_toStartOf="@+id/star_button" app:layout_constraintEnd_toStartOf="@+id/star_button"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
@ -40,7 +40,7 @@
android:layout_marginBottom="8dp" android:layout_marginBottom="8dp"
android:ellipsize="end" android:ellipsize="end"
android:singleLine="true" android:singleLine="true"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body2" android:textAppearance="@style/TextAppearance.Material3.BodyMedium"
android:textColor="@color/text_lightweight" android:textColor="@color/text_lightweight"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="@+id/track_name" app:layout_constraintEnd_toEndOf="@+id/track_name"

View File

@ -65,9 +65,8 @@
android:paddingRight="6dp" android:paddingRight="6dp"
android:paddingBottom="2dp" android:paddingBottom="2dp"
android:text="@string/fab_sub_menu_save" android:text="@string/fab_sub_menu_save"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body2" android:textAppearance="@style/TextAppearance.Material3.LabelLarge"
android:textColor="@color/fab_button_card_text" android:textColor="@color/fab_button_card_text" />
android:textStyle="bold" />
</com.google.android.material.card.MaterialCardView> </com.google.android.material.card.MaterialCardView>
<!-- BUTTON CLEAR --> <!-- BUTTON CLEAR -->
@ -113,9 +112,8 @@
android:paddingRight="6dp" android:paddingRight="6dp"
android:paddingBottom="2dp" android:paddingBottom="2dp"
android:text="@string/fab_sub_menu_clear" android:text="@string/fab_sub_menu_clear"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body2" android:textAppearance="@style/TextAppearance.Material3.LabelLarge"
android:textColor="@color/fab_button_card_text" android:textColor="@color/fab_button_card_text" />
android:textStyle="bold" />
</com.google.android.material.card.MaterialCardView> </com.google.android.material.card.MaterialCardView>
<!-- BUTTON RESUME --> <!-- BUTTON RESUME -->
@ -160,9 +158,8 @@
android:paddingRight="6dp" android:paddingRight="6dp"
android:paddingBottom="2dp" android:paddingBottom="2dp"
android:text="@string/fab_sub_menu_resume" android:text="@string/fab_sub_menu_resume"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body2" android:textAppearance="@style/TextAppearance.Material3.LabelLarge"
android:textColor="@color/fab_button_card_text" android:textColor="@color/fab_button_card_text" />
android:textStyle="bold" />
</com.google.android.material.card.MaterialCardView> </com.google.android.material.card.MaterialCardView>

View File

@ -11,13 +11,15 @@
<androidx.recyclerview.widget.RecyclerView <androidx.recyclerview.widget.RecyclerView
android:id="@+id/track_element_list" android:id="@+id/track_element_list"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="0dp" android:layout_height="match_parent"
android:layout_marginTop="4dp" android:layout_marginTop="4dp"
android:layout_marginBottom="4dp" android:layout_marginBottom="4dp"
android:clipToPadding="false"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0" />
<!-- ONBOARDING --> <!-- ONBOARDING -->
<include <include

View File

@ -13,11 +13,10 @@
android:layout_marginEnd="8dp" android:layout_marginEnd="8dp"
android:layout_marginBottom="16dp" android:layout_marginBottom="16dp"
android:text="@string/track_list_onboarding_h1_part_1" android:text="@string/track_list_onboarding_h1_part_1"
android:textAppearance="@style/TextAppearance.MaterialComponents.Headline6" android:textAppearance="@style/TextAppearance.Material3.HeadlineSmall"
android:textColor="@color/text_default" android:textColor="@color/text_default"
app:layout_constraintBottom_toTopOf="@+id/trackbook_icon" app:layout_constraintBottom_toTopOf="@+id/trackbook_icon"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.532"
app:layout_constraintStart_toStartOf="parent" /> app:layout_constraintStart_toStartOf="parent" />
<ImageView <ImageView
@ -38,7 +37,7 @@
android:layout_marginTop="16dp" android:layout_marginTop="16dp"
android:layout_marginEnd="8dp" android:layout_marginEnd="8dp"
android:text="@string/track_list_onboarding_h1_part_2" android:text="@string/track_list_onboarding_h1_part_2"
android:textAppearance="@style/TextAppearance.MaterialComponents.Headline6" android:textAppearance="@style/TextAppearance.Material3.HeadlineSmall"
android:textColor="@color/text_default" android:textColor="@color/text_default"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"

View File

@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" <androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/statistics_view" android:id="@+id/statistics_view"
@ -31,7 +32,7 @@
android:ellipsize="end" android:ellipsize="end"
android:singleLine="true" android:singleLine="true"
android:textAllCaps="true" android:textAllCaps="true"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body1" android:textAppearance="@style/TextAppearance.Material3.TitleMedium"
android:textColor="@color/text_default" android:textColor="@color/text_default"
android:textStyle="bold" android:textStyle="bold"
app:layout_constraintEnd_toStartOf="@+id/edit_button" app:layout_constraintEnd_toStartOf="@+id/edit_button"
@ -80,7 +81,7 @@
android:layout_marginTop="24dp" android:layout_marginTop="24dp"
android:text="@string/statistics_sheet_p_distance" android:text="@string/statistics_sheet_p_distance"
android:textAllCaps="false" android:textAllCaps="false"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body2" android:textAppearance="@style/TextAppearance.Material3.BodyMedium"
android:textColor="@color/text_lightweight" android:textColor="@color/text_lightweight"
app:layout_constraintStart_toStartOf="@+id/statistics_track_name_headline" app:layout_constraintStart_toStartOf="@+id/statistics_track_name_headline"
app:layout_constraintTop_toBottomOf="@+id/statistics_track_name_headline" /> app:layout_constraintTop_toBottomOf="@+id/statistics_track_name_headline" />
@ -90,7 +91,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="16dp" android:layout_marginStart="16dp"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body1" android:textAppearance="@style/TextAppearance.Material3.BodyLarge"
android:textColor="@color/text_default" android:textColor="@color/text_default"
app:layout_constraintBottom_toBottomOf="@+id/statistics_p_distance" app:layout_constraintBottom_toBottomOf="@+id/statistics_p_distance"
app:layout_constraintStart_toEndOf="@+id/statistics_p_distance" app:layout_constraintStart_toEndOf="@+id/statistics_p_distance"
@ -103,7 +104,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="16dp" android:layout_marginTop="16dp"
android:text="@string/statistics_sheet_p_steps" android:text="@string/statistics_sheet_p_steps"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body2" android:textAppearance="@style/TextAppearance.Material3.BodyMedium"
android:textColor="@color/text_lightweight" android:textColor="@color/text_lightweight"
app:layout_constraintStart_toStartOf="@+id/statistics_p_distance" app:layout_constraintStart_toStartOf="@+id/statistics_p_distance"
app:layout_constraintTop_toBottomOf="@+id/statistics_p_distance" /> app:layout_constraintTop_toBottomOf="@+id/statistics_p_distance" />
@ -113,7 +114,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="16dp" android:layout_marginStart="16dp"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body1" android:textAppearance="@style/TextAppearance.Material3.BodyLarge"
android:textColor="@color/text_default" android:textColor="@color/text_default"
app:layout_constraintBottom_toBottomOf="@+id/statistics_p_steps" app:layout_constraintBottom_toBottomOf="@+id/statistics_p_steps"
app:layout_constraintStart_toEndOf="@+id/statistics_p_steps" app:layout_constraintStart_toEndOf="@+id/statistics_p_steps"
@ -126,7 +127,7 @@
android:layout_height="0dp" android:layout_height="0dp"
android:layout_marginTop="16dp" android:layout_marginTop="16dp"
android:text="@string/statistics_sheet_p_waypoints" android:text="@string/statistics_sheet_p_waypoints"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body2" android:textAppearance="@style/TextAppearance.Material3.BodyMedium"
android:textColor="@color/text_lightweight" android:textColor="@color/text_lightweight"
app:layout_constraintStart_toStartOf="@+id/statistics_p_steps" app:layout_constraintStart_toStartOf="@+id/statistics_p_steps"
app:layout_constraintTop_toBottomOf="@+id/statistics_p_steps" /> app:layout_constraintTop_toBottomOf="@+id/statistics_p_steps" />
@ -136,7 +137,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="16dp" android:layout_marginStart="16dp"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body1" android:textAppearance="@style/TextAppearance.Material3.BodyLarge"
android:textColor="@color/text_default" android:textColor="@color/text_default"
app:layout_constraintBottom_toBottomOf="@+id/statistics_p_waypoints" app:layout_constraintBottom_toBottomOf="@+id/statistics_p_waypoints"
app:layout_constraintStart_toEndOf="@+id/statistics_p_waypoints" app:layout_constraintStart_toEndOf="@+id/statistics_p_waypoints"
@ -149,7 +150,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="16dp" android:layout_marginTop="16dp"
android:text="@string/statistics_sheet_p_duration" android:text="@string/statistics_sheet_p_duration"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body2" android:textAppearance="@style/TextAppearance.Material3.BodyMedium"
android:textColor="@color/text_lightweight" android:textColor="@color/text_lightweight"
app:layout_constraintStart_toStartOf="@+id/statistics_p_waypoints" app:layout_constraintStart_toStartOf="@+id/statistics_p_waypoints"
app:layout_constraintTop_toBottomOf="@+id/statistics_p_waypoints" /> app:layout_constraintTop_toBottomOf="@+id/statistics_p_waypoints" />
@ -159,7 +160,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="16dp" android:layout_marginStart="16dp"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body1" android:textAppearance="@style/TextAppearance.Material3.BodyLarge"
android:textColor="@color/text_default" android:textColor="@color/text_default"
app:layout_constraintBottom_toBottomOf="@+id/statistics_p_duration" app:layout_constraintBottom_toBottomOf="@+id/statistics_p_duration"
app:layout_constraintStart_toEndOf="@+id/statistics_p_duration" app:layout_constraintStart_toEndOf="@+id/statistics_p_duration"
@ -172,7 +173,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="16dp" android:layout_marginTop="16dp"
android:text="@string/statistics_sheet_p_recording_paused" android:text="@string/statistics_sheet_p_recording_paused"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body2" android:textAppearance="@style/TextAppearance.Material3.BodyMedium"
android:textColor="@color/text_lightweight" android:textColor="@color/text_lightweight"
app:layout_constraintStart_toStartOf="@+id/statistics_p_duration" app:layout_constraintStart_toStartOf="@+id/statistics_p_duration"
app:layout_constraintTop_toBottomOf="@+id/statistics_p_duration" /> app:layout_constraintTop_toBottomOf="@+id/statistics_p_duration" />
@ -182,7 +183,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="16dp" android:layout_marginStart="16dp"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body1" android:textAppearance="@style/TextAppearance.Material3.BodyLarge"
android:textColor="@color/text_default" android:textColor="@color/text_default"
app:layout_constraintBottom_toBottomOf="@+id/statistics_p_recording_paused" app:layout_constraintBottom_toBottomOf="@+id/statistics_p_recording_paused"
app:layout_constraintStart_toEndOf="@+id/statistics_p_recording_paused" app:layout_constraintStart_toEndOf="@+id/statistics_p_recording_paused"
@ -195,7 +196,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="16dp" android:layout_marginTop="16dp"
android:text="@string/statistics_sheet_p_velocity" android:text="@string/statistics_sheet_p_velocity"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body2" android:textAppearance="@style/TextAppearance.Material3.BodyMedium"
android:textColor="@color/text_lightweight" android:textColor="@color/text_lightweight"
app:layout_constraintStart_toStartOf="@+id/statistics_p_recording_paused" app:layout_constraintStart_toStartOf="@+id/statistics_p_recording_paused"
app:layout_constraintTop_toBottomOf="@+id/statistics_p_recording_paused" /> app:layout_constraintTop_toBottomOf="@+id/statistics_p_recording_paused" />
@ -205,7 +206,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="16dp" android:layout_marginStart="16dp"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body1" android:textAppearance="@style/TextAppearance.Material3.BodyLarge"
android:textColor="@color/text_default" android:textColor="@color/text_default"
app:layout_constraintBottom_toBottomOf="@+id/statistics_p_velocity" app:layout_constraintBottom_toBottomOf="@+id/statistics_p_velocity"
app:layout_constraintStart_toEndOf="@+id/statistics_p_velocity" app:layout_constraintStart_toEndOf="@+id/statistics_p_velocity"
@ -218,7 +219,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="16dp" android:layout_marginTop="16dp"
android:text="@string/statistics_sheet_p_recording_start" android:text="@string/statistics_sheet_p_recording_start"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body2" android:textAppearance="@style/TextAppearance.Material3.BodyMedium"
android:textColor="@color/text_lightweight" android:textColor="@color/text_lightweight"
app:layout_constraintStart_toStartOf="@+id/statistics_p_velocity" app:layout_constraintStart_toStartOf="@+id/statistics_p_velocity"
app:layout_constraintTop_toBottomOf="@+id/statistics_p_velocity" /> app:layout_constraintTop_toBottomOf="@+id/statistics_p_velocity" />
@ -228,7 +229,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="16dp" android:layout_marginStart="16dp"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body1" android:textAppearance="@style/TextAppearance.Material3.BodyLarge"
android:textColor="@color/text_default" android:textColor="@color/text_default"
app:layout_constraintBottom_toBottomOf="@+id/statistics_p_recording_start" app:layout_constraintBottom_toBottomOf="@+id/statistics_p_recording_start"
app:layout_constraintStart_toEndOf="@+id/statistics_p_recording_start" app:layout_constraintStart_toEndOf="@+id/statistics_p_recording_start"
@ -241,7 +242,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="16dp" android:layout_marginTop="16dp"
android:text="@string/statistics_sheet_p_recording_stop" android:text="@string/statistics_sheet_p_recording_stop"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body2" android:textAppearance="@style/TextAppearance.Material3.BodyMedium"
android:textColor="@color/text_lightweight" android:textColor="@color/text_lightweight"
app:layout_constraintStart_toStartOf="@+id/statistics_p_recording_start" app:layout_constraintStart_toStartOf="@+id/statistics_p_recording_start"
app:layout_constraintTop_toBottomOf="@+id/statistics_p_recording_start" /> app:layout_constraintTop_toBottomOf="@+id/statistics_p_recording_start" />
@ -251,7 +252,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="16dp" android:layout_marginStart="16dp"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body1" android:textAppearance="@style/TextAppearance.Material3.BodyLarge"
android:textColor="@color/text_default" android:textColor="@color/text_default"
app:layout_constraintBottom_toBottomOf="@+id/statistics_p_recording_stop" app:layout_constraintBottom_toBottomOf="@+id/statistics_p_recording_stop"
app:layout_constraintStart_toEndOf="@+id/statistics_p_recording_stop" app:layout_constraintStart_toEndOf="@+id/statistics_p_recording_stop"
@ -264,7 +265,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="16dp" android:layout_marginTop="16dp"
android:text="@string/statistics_sheet_p_positive_elevation" android:text="@string/statistics_sheet_p_positive_elevation"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body2" android:textAppearance="@style/TextAppearance.Material3.BodyMedium"
android:textColor="@color/text_lightweight" android:textColor="@color/text_lightweight"
app:layout_constraintStart_toStartOf="@+id/statistics_p_recording_stop" app:layout_constraintStart_toStartOf="@+id/statistics_p_recording_stop"
app:layout_constraintTop_toBottomOf="@+id/statistics_p_recording_stop" /> app:layout_constraintTop_toBottomOf="@+id/statistics_p_recording_stop" />
@ -274,7 +275,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="16dp" android:layout_marginStart="16dp"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body1" android:textAppearance="@style/TextAppearance.Material3.BodyLarge"
android:textColor="@color/text_default" android:textColor="@color/text_default"
app:layout_constraintBottom_toBottomOf="@+id/statistics_p_positive_elevation" app:layout_constraintBottom_toBottomOf="@+id/statistics_p_positive_elevation"
app:layout_constraintStart_toEndOf="@+id/statistics_p_positive_elevation" app:layout_constraintStart_toEndOf="@+id/statistics_p_positive_elevation"
@ -287,7 +288,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="16dp" android:layout_marginTop="16dp"
android:text="@string/statistics_sheet_p_negative_elevation" android:text="@string/statistics_sheet_p_negative_elevation"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body2" android:textAppearance="@style/TextAppearance.Material3.BodyMedium"
android:textColor="@color/text_lightweight" android:textColor="@color/text_lightweight"
app:layout_constraintStart_toStartOf="@+id/statistics_p_positive_elevation" app:layout_constraintStart_toStartOf="@+id/statistics_p_positive_elevation"
app:layout_constraintTop_toBottomOf="@+id/statistics_p_positive_elevation" /> app:layout_constraintTop_toBottomOf="@+id/statistics_p_positive_elevation" />
@ -297,7 +298,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="16dp" android:layout_marginStart="16dp"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body1" android:textAppearance="@style/TextAppearance.Material3.BodyLarge"
android:textColor="@color/text_default" android:textColor="@color/text_default"
app:layout_constraintBottom_toBottomOf="@+id/statistics_p_negative_elevation" app:layout_constraintBottom_toBottomOf="@+id/statistics_p_negative_elevation"
app:layout_constraintStart_toEndOf="@+id/statistics_p_negative_elevation" app:layout_constraintStart_toEndOf="@+id/statistics_p_negative_elevation"
@ -310,7 +311,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="16dp" android:layout_marginTop="16dp"
android:text="@string/statistics_sheet_p_max_altitude" android:text="@string/statistics_sheet_p_max_altitude"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body2" android:textAppearance="@style/TextAppearance.Material3.BodyMedium"
android:textColor="@color/text_lightweight" android:textColor="@color/text_lightweight"
app:layout_constraintStart_toStartOf="@+id/statistics_p_negative_elevation" app:layout_constraintStart_toStartOf="@+id/statistics_p_negative_elevation"
app:layout_constraintTop_toBottomOf="@+id/statistics_p_negative_elevation" /> app:layout_constraintTop_toBottomOf="@+id/statistics_p_negative_elevation" />
@ -320,7 +321,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="16dp" android:layout_marginStart="16dp"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body1" android:textAppearance="@style/TextAppearance.Material3.BodyLarge"
android:textColor="@color/text_default" android:textColor="@color/text_default"
app:layout_constraintBottom_toBottomOf="@+id/statistics_p_max_altitude" app:layout_constraintBottom_toBottomOf="@+id/statistics_p_max_altitude"
app:layout_constraintStart_toEndOf="@+id/statistics_p_max_altitude" app:layout_constraintStart_toEndOf="@+id/statistics_p_max_altitude"
@ -334,7 +335,7 @@
android:layout_marginTop="16dp" android:layout_marginTop="16dp"
android:layout_marginBottom="16dp" android:layout_marginBottom="16dp"
android:text="@string/statistics_sheet_p_min_altitude" android:text="@string/statistics_sheet_p_min_altitude"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body2" android:textAppearance="@style/TextAppearance.Material3.BodyMedium"
android:textColor="@color/text_lightweight" android:textColor="@color/text_lightweight"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="@+id/statistics_p_max_altitude" app:layout_constraintStart_toStartOf="@+id/statistics_p_max_altitude"
@ -345,7 +346,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginStart="16dp" android:layout_marginStart="16dp"
android:textAppearance="@style/TextAppearance.MaterialComponents.Body1" android:textAppearance="@style/TextAppearance.Material3.BodyLarge"
android:textColor="@color/text_default" android:textColor="@color/text_default"
app:layout_constraintBottom_toBottomOf="@+id/statistics_p_min_altitude" app:layout_constraintBottom_toBottomOf="@+id/statistics_p_min_altitude"
app:layout_constraintStart_toEndOf="@+id/statistics_p_min_altitude" app:layout_constraintStart_toEndOf="@+id/statistics_p_min_altitude"

View File

@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<!-- placeholder text - todo remove -->
<!-- App Name --> <!-- App Name -->
<string name="app_name">Trackbook</string> <string name="app_name">Trackbook</string>
<!-- please do not translate app_name - transcription into different alphabet types is fine though --> <!-- please do not translate app_name - transcription into different alphabet types is fine though -->

View File

@ -5,6 +5,7 @@
<color name="app_window_background">@color/trackbook_neutral_very_dark</color> <color name="app_window_background">@color/trackbook_neutral_very_dark</color>
<color name="bottom_navigation_background">@color/trackbook_neutral_black</color> <color name="bottom_navigation_background">@color/trackbook_neutral_black</color>
<color name="status_bar_background">@color/trackbook_neutral_black</color>
<color name="dialog_background">@color/trackbook_neutral_darker</color> <color name="dialog_background">@color/trackbook_neutral_darker</color>
<color name="bottom_navigation_element">@color/trackbook_neutral_medium_light</color> <color name="bottom_navigation_element">@color/trackbook_neutral_medium_light</color>

View File

@ -2,12 +2,13 @@
<resources> <resources>
<!-- Base application theme. --> <!-- Base application theme. -->
<style name="Theme" parent="Theme.Material3.DayNight.NoActionBar"> <style name="AppTheme" parent="Theme.Material3.DayNight.NoActionBar">
<!-- Do not use primary colored elevation overlays to present a visual hierarchy - TO COLORFUL -->
<!-- Show transparent status bar --> <item name="elevationOverlayEnabled">false</item>
<item name="android:windowTranslucentStatus">true</item> <!-- Don't show light status bar -->
<item name="android:windowLightStatusBar">false</item>
<item name="android:statusBarColor">@color/status_bar_background</item>
</style> </style>
</resources> </resources>

View File

@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<!-- placeholder text - todo remove -->
<!-- App Name --> <!-- App Name -->
<string name="app_name">Trackbook</string> <string name="app_name">Trackbook</string>
<!-- please do not translate app_name - transcription into different alphabet types is fine though --> <!-- please do not translate app_name - transcription into different alphabet types is fine though -->

View File

@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<!-- placeholder text - todo remove -->
<!-- App Name --> <!-- App Name -->
<string name="app_name">Trackbook</string> <string name="app_name">Trackbook</string>
<!-- please do not translate app_name - transcription into different alphabet types is fine though --> <!-- please do not translate app_name - transcription into different alphabet types is fine though -->

View File

@ -5,6 +5,7 @@
<color name="app_window_background">@color/trackbook_neutral_very_light</color> <color name="app_window_background">@color/trackbook_neutral_very_light</color>
<color name="bottom_navigation_background">@color/trackbook_neutral_white</color> <color name="bottom_navigation_background">@color/trackbook_neutral_white</color>
<color name="status_bar_background">@color/trackbook_neutral_white</color>
<color name="dialog_background">@color/trackbook_neutral_very_light</color> <color name="dialog_background">@color/trackbook_neutral_very_light</color>
<color name="bottom_navigation_element">@color/trackbook_neutral_medium_light</color> <color name="bottom_navigation_element">@color/trackbook_neutral_medium_light</color>

View File

@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<!-- placeholder text - todo remove -->
<!-- App Name --> <!-- App Name -->
<string name="app_name">Trackbook</string> <string name="app_name">Trackbook</string>
<!-- please do not translate app_name - transcription into different alphabet types is fine though --> <!-- please do not translate app_name - transcription into different alphabet types is fine though -->

View File

@ -5,8 +5,10 @@
<style name="AppTheme" parent="Theme.Material3.DayNight.NoActionBar"> <style name="AppTheme" parent="Theme.Material3.DayNight.NoActionBar">
<!-- Do not use primary colored elevation overlays to present a visual hierarchy - TO COLORFUL --> <!-- Do not use primary colored elevation overlays to present a visual hierarchy - TO COLORFUL -->
<item name="elevationOverlayEnabled">false</item> <item name="elevationOverlayEnabled">false</item>
<!-- Show transparent status bar -->
<item name="android:windowTranslucentStatus">true</item> <!-- Use "light" Status Bar -->
<item name="android:windowLightStatusBar">true</item>
<item name="android:statusBarColor">@color/status_bar_background</item>
</style> </style>

View File

@ -3,14 +3,14 @@
buildscript { buildscript {
ext { ext {
kotlin_version = '1.6.10' kotlin_version = '1.6.10'
navigation_version = '2.3.3' navigation_version = '2.3.5'
} }
repositories { repositories {
google() google()
mavenCentral() mavenCentral()
} }
dependencies { dependencies {
classpath 'com.android.tools.build:gradle:7.0.4' classpath 'com.android.tools.build:gradle:7.1.2'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath "androidx.navigation:navigation-safe-args-gradle-plugin:$navigation_version" classpath "androidx.navigation:navigation-safe-args-gradle-plugin:$navigation_version"

View File

@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-all.zip distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-all.zip
zipStoreBase=GRADLE_USER_HOME zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists zipStorePath=wrapper/dists