Skip to content
Open
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
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
## Improved
- Sync devices: Linked devices now come first, and the one-time Wi-Fi transfer moves below them
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ internal object DestinationIndex {
SettingsDestination.INTEGRATIONS -> R.string.settings_integrations_summary
SettingsDestination.SCROBBLING -> R.string.scrobbling_summary
SettingsDestination.BACKUP -> R.string.settings_backup_summary
SettingsDestination.SYNC -> R.string.sync_devices_subtitle
SettingsDestination.SYNC -> R.string.sync_devices_summary
SettingsDestination.PROFILES -> R.string.profiles_summary
SettingsDestination.PROFILE_EDIT -> null
SettingsDestination.HISTORY -> R.string.settings_history_summary
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,9 @@ import androidx.compose.foundation.rememberScrollState
import androidx.compose.foundation.verticalScroll
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.outlined.SyncDisabled
import androidx.compose.material.icons.outlined.Wifi
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.HorizontalDivider
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Scaffold
import androidx.compose.runtime.Composable
Expand Down Expand Up @@ -319,6 +321,13 @@ private fun SyncSetupStep(
) {
when (step) {
Step.CHOOSER -> {
LinkedDevicesSection(hostOnly)
HorizontalDivider()
SyncStepHeader(
icon = Icons.Outlined.Wifi,
title = stringResource(R.string.sync_one_time_title),
body = stringResource(R.string.sync_one_time_body),
)
if (oneTimeElsewhere != null) {
SyncInfoRow(icon = Icons.Outlined.SyncDisabled, text = stringResource(R.string.sync_default_only_title, oneTimeElsewhere))
} else {
Expand All @@ -327,7 +336,6 @@ private fun SyncSetupStep(
onReceive = { if (hostOnly) onHost(SyncRole.RECEIVER) else onStepChange(Step.RECEIVE_TRANSPORT) },
)
}
LinkedDevicesSection(hostOnly)
}

Step.SEND_SELECT -> {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ import androidx.compose.material.icons.outlined.QrCode2
import androidx.compose.material.icons.outlined.QrCodeScanner
import androidx.compose.material.icons.outlined.Shield
import androidx.compose.material.icons.outlined.Upload
import androidx.compose.material.icons.outlined.Wifi
import androidx.compose.material3.HorizontalDivider
import androidx.compose.material3.Icon
import androidx.compose.material3.IconButton
Expand Down Expand Up @@ -66,10 +65,6 @@ internal fun SyncChooserContent(
onSend: () -> Unit,
onReceive: () -> Unit,
) {
SyncStepHeader(
icon = Icons.Outlined.Wifi,
body = stringResource(R.string.sync_intro),
)
SyncOptions(
listOf(
SyncOption(
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package io.github.aedev.flow.ui.screens.sync.linked

import androidx.compose.material3.HorizontalDivider
import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.getValue
Expand Down Expand Up @@ -44,7 +43,6 @@ internal fun LinkedDevicesSection(
}
}

HorizontalDivider()
val words = state.words
var scanning by rememberSaveable { mutableStateOf(false) }
when {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ internal fun LinkedSetup(
SyncStepHeader(
icon = Icons.Outlined.Devices,
title = stringResource(R.string.linked_title),
body = stringResource(R.string.linked_intro),
body = stringResource(R.string.linked_always_intro),
)
SyncOptions(
listOf(
Expand Down
7 changes: 4 additions & 3 deletions app/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2656,7 +2656,7 @@
<string name="linked_consent_ask">Ask each time</string>
<string name="linked_consent_allowed">Allowed</string>
<string name="linked_consent_declined">Not allowed</string>
<string name="linked_intro">Keep this device in sync with your other devices through your own Flow sync server, a WebDAV folder, or your Wi-Fi network. Everything is encrypted on your devices; no server can read it.</string>
<string name="linked_always_intro">Your devices stay in sync all the time through your own Flow sync server, a WebDAV folder, or your Wi-Fi network. Everything is end-to-end encrypted; no server can read it.</string>
<string name="linked_create_title">Create a group</string>
<string name="linked_create_body">Start linking on a Flow sync server, in a WebDAV folder, or on this network</string>
<string name="linked_where_title">Where should your devices sync?</string>
Expand Down Expand Up @@ -2804,7 +2804,7 @@
<string name="linked_profile_switch_body">Only the profile in use can start syncing, so Flow restarts in it first. Then turn on syncing there.</string>
<string name="linked_profile_switch">Switch to sync</string>
<string name="sync_default_only_title">Switch to %1$s to sync</string>
<string name="sync_devices_subtitle">Sync library, history &amp; profile over local Wi-Fi</string>
<string name="sync_devices_summary">Keep library, history &amp; profile in sync across your devices, end-to-end encrypted</string>
<string name="sync_notification_title">Syncing devices</string>
<string name="sync_notification_text">Transferring your library over local Wi-Fi…</string>
<string name="sync_notification_channel">Device sync</string>
Expand All @@ -2819,7 +2819,8 @@
<string name="sync_collection_music_profile">Music taste profile</string>
<string name="sync_preparing">Preparing…</string>
<string name="sync_connecting">Connecting…</string>
<string name="sync_intro">Sync your library, history, likes and settings with another device over Wi-Fi. Nothing leaves your network.</string>
<string name="sync_one_time_title">One-time transfer</string>
<string name="sync_one_time_body">Copy your library, history, likes and settings to another device once, over Wi-Fi. Nothing leaves your network.</string>
<string name="sync_send_to_device">Send to a device</string>
<string name="sync_receive_from_device">Receive from a device</string>
<string name="sync_pairing_title">How should the devices pair?</string>
Expand Down
Loading