mirror of
https://codeberg.org/Freeyourgadget/Gadgetbridge.git
synced 2026-07-31 07:44:24 +02:00
Endurain: Make remaining strings translatable and rename settings screen
This commit is contained in:
@@ -260,8 +260,8 @@
|
||||
android:label="@string/healthconnect_settings"
|
||||
android:parentActivityName=".activities.SettingsActivity" />
|
||||
<activity
|
||||
android:name=".activities.endurain.EndurainPreferencesActivity"
|
||||
android:label="Endurain"
|
||||
android:name=".activities.endurain.OnlineFitnessTrackersPreferencesActivity"
|
||||
android:label="@string/prefs_online_fitness_trackers_title"
|
||||
android:parentActivityName=".activities.SettingsActivity" />
|
||||
<activity
|
||||
android:name=".activities.AboutUserPreferencesActivity"
|
||||
|
||||
+3
-3
@@ -66,7 +66,7 @@ import nodomain.freeyourgadget.gadgetbridge.R;
|
||||
import nodomain.freeyourgadget.gadgetbridge.activities.automations.AutomationsSettingsActivity;
|
||||
import nodomain.freeyourgadget.gadgetbridge.activities.charts.ChartsPreferencesActivity;
|
||||
import nodomain.freeyourgadget.gadgetbridge.activities.discovery.DiscoveryPairingPreferenceActivity;
|
||||
import nodomain.freeyourgadget.gadgetbridge.activities.endurain.EndurainPreferencesActivity;
|
||||
import nodomain.freeyourgadget.gadgetbridge.activities.endurain.OnlineFitnessTrackersPreferencesActivity;
|
||||
import nodomain.freeyourgadget.gadgetbridge.activities.maps.MapsSettingsActivity;
|
||||
import nodomain.freeyourgadget.gadgetbridge.activities.preferences.HealthConnectPreferencesActivity;
|
||||
import nodomain.freeyourgadget.gadgetbridge.externalevents.TimeChangeReceiver;
|
||||
@@ -415,10 +415,10 @@ public class SettingsActivity extends AbstractSettingsActivityV2 {
|
||||
});
|
||||
}
|
||||
|
||||
pref = findPreference("pref_category_endurain");
|
||||
pref = findPreference("pref_category_online_fitness_trackers");
|
||||
if (pref != null) {
|
||||
pref.setOnPreferenceClickListener(preference -> {
|
||||
Intent enableIntent = new Intent(requireContext(), EndurainPreferencesActivity.class);
|
||||
Intent enableIntent = new Intent(requireContext(), OnlineFitnessTrackersPreferencesActivity.class);
|
||||
startActivity(enableIntent);
|
||||
return true;
|
||||
});
|
||||
|
||||
+1
-1
@@ -35,7 +35,7 @@ class EndurainOAuthCallbackActivity : AbstractGBActivity() {
|
||||
super.onCreate(savedInstanceState)
|
||||
|
||||
// Bring us back to front to dismiss the custom tab
|
||||
val dismissIntent = Intent(applicationContext, EndurainPreferencesActivity::class.java).apply {
|
||||
val dismissIntent = Intent(applicationContext, OnlineFitnessTrackersPreferencesActivity::class.java).apply {
|
||||
flags = Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_SINGLE_TOP
|
||||
}
|
||||
startActivity(dismissIntent)
|
||||
|
||||
+4
-4
@@ -28,16 +28,16 @@ import nodomain.freeyourgadget.gadgetbridge.activities.AbstractSettingsActivityV
|
||||
import nodomain.freeyourgadget.gadgetbridge.util.DateTimeUtils
|
||||
import nodomain.freeyourgadget.gadgetbridge.util.GB
|
||||
|
||||
class EndurainPreferencesActivity : AbstractSettingsActivityV2() {
|
||||
class OnlineFitnessTrackersPreferencesActivity : AbstractSettingsActivityV2() {
|
||||
override fun newFragment(): PreferenceFragmentCompat =
|
||||
EndurainPreferencesFragment()
|
||||
OnlineFitnessTrackersPreferencesFragment()
|
||||
|
||||
class EndurainPreferencesFragment : AbstractPreferenceFragment() {
|
||||
class OnlineFitnessTrackersPreferencesFragment : AbstractPreferenceFragment() {
|
||||
|
||||
private val vm: EndurainSetupViewModel by viewModels()
|
||||
|
||||
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
|
||||
setPreferencesFromResource(R.xml.endurain_preferences, rootKey)
|
||||
setPreferencesFromResource(R.xml.online_fitness_trackers_preferences, rootKey)
|
||||
|
||||
updateNetworkWarning()
|
||||
wireLoginPreference()
|
||||
+9
-8
@@ -704,7 +704,8 @@ class WorkoutDetailsFragment : Fragment(), MenuProvider {
|
||||
val gpxFile = ActivitySummaryUtils.getShareableGpxFile(activityTrackProvider, workout.summary)
|
||||
|
||||
if (gpxFile == null) {
|
||||
GB.toast(requireContext(), "No GPX track in this activity", Toast.LENGTH_LONG, GB.INFO)
|
||||
GB.toast(requireContext(),
|
||||
getString(R.string.no_gpx_track_in_activity_toast), Toast.LENGTH_LONG, GB.INFO)
|
||||
return
|
||||
}
|
||||
|
||||
@@ -713,7 +714,7 @@ class WorkoutDetailsFragment : Fragment(), MenuProvider {
|
||||
} catch (e: Exception) {
|
||||
GB.toast(
|
||||
requireContext(),
|
||||
"Unable to display GPX track: ${e.localizedMessage}",
|
||||
getString(R.string.unable_to_display_gpx_track_toast, e.localizedMessage),
|
||||
Toast.LENGTH_LONG,
|
||||
GB.ERROR,
|
||||
e
|
||||
@@ -727,7 +728,7 @@ class WorkoutDetailsFragment : Fragment(), MenuProvider {
|
||||
val gpxFile = ActivitySummaryUtils.getShareableGpxFile(activityTrackProvider, workout.summary)
|
||||
|
||||
if (gpxFile == null) {
|
||||
GB.toast(requireContext(), "No GPX track in this activity", Toast.LENGTH_LONG, GB.INFO)
|
||||
GB.toast(requireContext(), getString(R.string.no_gpx_track_in_activity_toast), Toast.LENGTH_LONG, GB.INFO)
|
||||
return
|
||||
}
|
||||
|
||||
@@ -736,7 +737,7 @@ class WorkoutDetailsFragment : Fragment(), MenuProvider {
|
||||
} catch (e: Exception) {
|
||||
GB.toast(
|
||||
requireContext(),
|
||||
"Unable to share GPX track: ${e.localizedMessage}",
|
||||
getString(R.string.unable_to_share_gpx_track_toast, e.localizedMessage),
|
||||
Toast.LENGTH_LONG,
|
||||
GB.ERROR,
|
||||
e
|
||||
@@ -752,7 +753,7 @@ class WorkoutDetailsFragment : Fragment(), MenuProvider {
|
||||
val gpxFile = ActivitySummaryUtils.getShareableGpxFile(activityTrackProvider, workout.summary)
|
||||
|
||||
if (gpxFile == null) {
|
||||
GB.toast("No GPX track in this activity", Toast.LENGTH_LONG, GB.INFO)
|
||||
GB.toast(getString(R.string.no_gpx_track_in_activity_toast), Toast.LENGTH_LONG, GB.INFO)
|
||||
return
|
||||
}
|
||||
|
||||
@@ -770,13 +771,13 @@ class WorkoutDetailsFragment : Fragment(), MenuProvider {
|
||||
activity?.runOnUiThread {
|
||||
if (newId != null)
|
||||
GB.toast(
|
||||
"Successfully uploaded to Endurain",
|
||||
getString(R.string.endurain_successfully_uploaded_toast),
|
||||
Toast.LENGTH_SHORT,
|
||||
GB.INFO
|
||||
)
|
||||
else
|
||||
GB.toast(
|
||||
"Error while uploading to Endurain",
|
||||
getString(R.string.endurain_error_while_uploading_toast),
|
||||
Toast.LENGTH_SHORT,
|
||||
GB.INFO
|
||||
)
|
||||
@@ -785,7 +786,7 @@ class WorkoutDetailsFragment : Fragment(), MenuProvider {
|
||||
}
|
||||
} catch (e: Exception) {
|
||||
GB.toast(
|
||||
"Unable to upload GPX file to Endurain: ${e.localizedMessage}",
|
||||
getString(R.string.endurain_unable_to_upload_gpx_file_toast, e.localizedMessage),
|
||||
Toast.LENGTH_LONG,
|
||||
GB.ERROR,
|
||||
e
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
android:id="@+id/title"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="Endurain setup"
|
||||
android:text="@string/endurain_setup_title"
|
||||
android:textAppearance="?attr/textAppearanceHeadlineSmall" />
|
||||
|
||||
<!-- SERVER -->
|
||||
@@ -20,7 +20,7 @@
|
||||
android:id="@+id/server_layout"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:hint="Endurain server">
|
||||
android:hint="@string/endurain_setup_server">
|
||||
|
||||
<com.google.android.material.textfield.TextInputEditText
|
||||
android:id="@+id/server_input"
|
||||
@@ -42,14 +42,14 @@
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:text="Local" />
|
||||
android:text="@string/endurain_setup_login_type_local" />
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/sso_login_button"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:text="SSO" />
|
||||
android:text="@string/endurain_setup_login_type_sso" />
|
||||
</com.google.android.material.button.MaterialButtonToggleGroup>
|
||||
|
||||
<!-- LOCAL LOGIN -->
|
||||
@@ -91,7 +91,7 @@
|
||||
android:id="@+id/mfa_input"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:hint="MFA Code"
|
||||
android:hint="@string/endurain_setup_mfa_code"
|
||||
android:inputType="number"
|
||||
android:maxLength="6" />
|
||||
</com.google.android.material.textfield.TextInputLayout>
|
||||
@@ -114,7 +114,7 @@
|
||||
android:id="@+id/next_button"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="Next" />
|
||||
android:text="@string/endurain_setup_next" />
|
||||
</LinearLayout>
|
||||
|
||||
</LinearLayout>
|
||||
@@ -53,7 +53,7 @@
|
||||
<item
|
||||
android:id="@+id/activity_action_upload_to_endurain"
|
||||
android:icon="@drawable/ic_file_upload"
|
||||
android:title="Upload to Endurain"
|
||||
android:title="@string/activity_detail_upload_to_endurain"
|
||||
app:showAsAction="never" />
|
||||
|
||||
<item
|
||||
|
||||
@@ -4960,4 +4960,26 @@
|
||||
<string name="endurain_server_version">\nServer version: %1$s</string>
|
||||
<string name="endurain_logout_failed">Logout failed</string>
|
||||
<string name="endurain_logged_out_successfully">Logged out successfully</string>
|
||||
<string name="prefs_online_fitness_trackers_title">Online fitness trackers</string>
|
||||
<string name="prefs_online_fitness_trackers_summary">Configure how to reach and use online fitness trackers</string>
|
||||
<string name="warning_network_required_title">Network required</string>
|
||||
<string name="warning_network_required_summary">This integration requires network connectivity. Please install and enable the internet helper add-on app.</string>
|
||||
<string name="pref_info_endurain_status_title">Endurain status</string>
|
||||
<string name="pref_endurain_log_in_title">Log in to Endurain</string>
|
||||
<string name="pref_endurain_log_in_summary">Tap here to enter the Endurain server and log in</string>
|
||||
<string name="pref_endurain_log_out_title">Log out of Endurain</string>
|
||||
<string name="pref_endurain_log_out_summary">Tap here to log out, this disables the integration</string>
|
||||
<string name="no_gpx_track_in_activity_toast">No GPX track in this activity</string>
|
||||
<string name="unable_to_display_gpx_track_toast">Unable to display GPX track: %1$s</string>
|
||||
<string name="unable_to_share_gpx_track_toast">Unable to share GPX track: %1$s</string>
|
||||
<string name="endurain_successfully_uploaded_toast">Successfully uploaded to Endurain</string>
|
||||
<string name="endurain_error_while_uploading_toast">Error while uploading to Endurain</string>
|
||||
<string name="endurain_unable_to_upload_gpx_file_toast">Unable to upload GPX file to Endurain: %1$s</string>
|
||||
<string name="endurain_setup_title">Endurain setup</string>
|
||||
<string name="endurain_setup_server">Endurain server</string>
|
||||
<string name="endurain_setup_login_type_local">Local</string>
|
||||
<string name="endurain_setup_login_type_sso">SSO</string>
|
||||
<string name="endurain_setup_mfa_code">MFA code</string>
|
||||
<string name="endurain_setup_next">Next</string>
|
||||
<string name="activity_detail_upload_to_endurain">Upload to Endurain</string>
|
||||
</resources>
|
||||
|
||||
@@ -1,24 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<PreferenceScreen
|
||||
xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<Preference
|
||||
android:icon="@drawable/ic_warning"
|
||||
android:key="pref_key_network_required"
|
||||
android:title="Network required"
|
||||
android:summary="This integration requires network connectivity. Please install and enable the internet helper add-on app." />
|
||||
<Preference
|
||||
android:icon="@drawable/ic_info"
|
||||
android:key="pref_key_status"
|
||||
android:title="Endurain status"
|
||||
android:summary="Logged in on endurain.example.com" />
|
||||
<Preference
|
||||
android:icon="@drawable/ic_language"
|
||||
android:key="pref_key_log_in"
|
||||
android:title="Log in to Endurain"
|
||||
android:summary="Tap here to enter the Endurain server and log in" />
|
||||
<Preference
|
||||
android:icon="@drawable/ic_language"
|
||||
android:key="pref_key_log_out"
|
||||
android:title="Log out of Endurain"
|
||||
android:summary="Tap here to log out, this disables the integration" />
|
||||
</PreferenceScreen>
|
||||
@@ -0,0 +1,27 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<PreferenceScreen
|
||||
xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<Preference
|
||||
android:icon="@drawable/ic_warning"
|
||||
android:key="pref_key_network_required"
|
||||
android:title="@string/warning_network_required_title"
|
||||
android:summary="@string/warning_network_required_summary" />
|
||||
<PreferenceCategory
|
||||
android:title="Endurain">
|
||||
<Preference
|
||||
android:icon="@drawable/ic_info"
|
||||
android:key="pref_key_status"
|
||||
android:title="@string/pref_info_endurain_status_title"
|
||||
android:summary="Logged in on endurain.example.com" />
|
||||
<Preference
|
||||
android:icon="@drawable/ic_language"
|
||||
android:key="pref_key_log_in"
|
||||
android:title="@string/pref_endurain_log_in_title"
|
||||
android:summary="@string/pref_endurain_log_in_summary" />
|
||||
<Preference
|
||||
android:icon="@drawable/ic_language"
|
||||
android:key="pref_key_log_out"
|
||||
android:title="@string/pref_endurain_log_out_title"
|
||||
android:summary="@string/pref_endurain_log_out_summary" />
|
||||
</PreferenceCategory>
|
||||
</PreferenceScreen>
|
||||
@@ -388,12 +388,11 @@
|
||||
android:title="@string/prefs_internet_helper_title"
|
||||
android:summary="@string/prefs_internet_helper_summary" />
|
||||
|
||||
<!-- FIXME: Use Endurain logo and translate strings -->
|
||||
<PreferenceScreen
|
||||
android:icon="@drawable/ic_shoe"
|
||||
android:key="pref_category_endurain"
|
||||
android:title="Endurain"
|
||||
android:summary="Configure how to reach and use this self-hosted online fitness tracker" />
|
||||
android:key="pref_category_online_fitness_trackers"
|
||||
android:title="@string/prefs_online_fitness_trackers_title"
|
||||
android:summary="@string/prefs_online_fitness_trackers_summary" />
|
||||
</PreferenceScreen>
|
||||
|
||||
<Preference
|
||||
|
||||
Reference in New Issue
Block a user