rework setup

Signed-off-by: androidacy-user <opensource@androidacy.com>
pull/299/head
androidacy-user 1 year ago
parent 888b624ff6
commit 3217eaddee

@ -22,6 +22,7 @@ import com.fox2code.mmm.repo.RepoManager;
import com.fox2code.mmm.utils.realm.ReposList;
import com.fox2code.rosettax.LanguageActivity;
import com.fox2code.rosettax.LanguageSwitcher;
import com.google.android.material.bottomnavigation.BottomNavigationItemView;
import com.google.android.material.button.MaterialButton;
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
import com.google.android.material.materialswitch.MaterialSwitch;
@ -48,11 +49,7 @@ public class SetupActivity extends FoxActivity implements LanguageActivity {
ActionBar actionBar = getSupportActionBar();
if (actionBar != null) {
// back button is close button
actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_TITLE | ActionBar.DISPLAY_USE_LOGO | ActionBar.DISPLAY_SHOW_HOME);
actionBar.setLogo(R.drawable.ic_foreground);
// set title
actionBar.setTitle(R.string.setup_title);
actionBar.show();
actionBar.hide();
}
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION, 0);
createFiles();
@ -153,7 +150,7 @@ public class SetupActivity extends FoxActivity implements LanguageActivity {
});
// Set up the buttons
// Setup button
MaterialButton setupButton = view.findViewById(R.id.setup_finish);
BottomNavigationItemView setupButton = view.findViewById(R.id.setup_finish);
setupButton.setOnClickListener(v -> {
Timber.i("Setup button clicked");
// get instance of editor
@ -191,8 +188,7 @@ public class SetupActivity extends FoxActivity implements LanguageActivity {
finish();
});
// Cancel button
MaterialButton cancelButton = view.findViewById(R.id.setup_cancel);
cancelButton.setText(R.string.cancel);
BottomNavigationItemView cancelButton = view.findViewById(R.id.cancel_setup);
cancelButton.setOnClickListener(v -> {
Timber.i("Cancel button clicked");
// Set first launch to false and restart the activity

@ -0,0 +1,5 @@
<vector android:height="24dp" android:tint="?attr/colorControlNormal"
android:viewportHeight="24" android:viewportWidth="24"
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="@android:color/white" android:pathData="M19,6.4L17.6,5 12,10.6 6.4,5 5,6.4 10.6,12 5,17.6 6.4,19 12,13.4 17.6,19 19,17.6 13.4,12z"/>
</vector>

@ -1,10 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.core.widget.NestedScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
<androidx.core.widget.NestedScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/setupScrollView"
android:layout_width="match_parent"
android:id="setupScrollView"
android:layout_height="wrap_content"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:context=".SetupActivity"
@ -16,11 +15,21 @@
android:orientation="vertical"
android:padding="8dp">
<com.google.android.material.textview.MaterialTextView
android:id="@+id/setup_summary"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/setup_message" />
<!-- Title -->
<com.google.android.material.textview.MaterialTextView
android:id="@+id/setup_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/setup_title"
android:textAppearance="@style/TextAppearance.Material3.HeadlineLarge" />
<com.google.android.material.textview.MaterialTextView
android:id="@+id/setup_summary"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="2dp"
android:text="@string/setup_message"
android:textAppearance="@style/TextAppearance.Material3.BodyMedium" />
<!-- Theme radio select. Options are system, light, dark, black, transparent_light -->
@ -30,62 +39,60 @@
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.google.android.material.button.MaterialButton
android:id="@+id/setup_theme_button"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="4dp"
android:layout_marginEnd="4dp"
android:layout_weight="1"
android:backgroundTint="@color/gray_900"
android:foreground="?attr/selectableItemBackground"
android:padding="12dp"
android:text="@string/setup_theme_button"
android:textColor="@color/white"
android:textSize="16sp"
app:icon="@drawable/ic_baseline_palette_24"
app:iconGravity="textStart"
app:iconPadding="8dp"
app:iconTint="@color/white"
app:iconTintMode="src_in"
app:rippleColor="@color/gray_800" tools:ignore="DuplicateSpeakableTextCheck" />
<com.google.android.material.button.MaterialButton
android:id="@+id/setup_language_button"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="4dp"
android:layout_marginTop="4dp"
android:layout_weight="1"
android:backgroundTint="@color/gray_900"
android:foreground="?attr/selectableItemBackground"
android:padding="12dp"
android:text="@string/setup_language_button"
android:textColor="@color/white"
android:textSize="16sp"
app:icon="@drawable/ic_baseline_language_24"
app:iconGravity="textStart"
app:iconPadding="8dp"
app:iconTint="@color/white"
app:iconTintMode="src_in"
app:rippleColor="@color/gray_800" tools:ignore="DuplicateSpeakableTextCheck" />
</LinearLayout>
<com.google.android.material.textview.MaterialTextView
android:layout_width="match_parent"
<com.google.android.material.button.MaterialButton
android:id="@+id/setup_theme_button"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_margin="4dp"
android:text="@string/repos"
android:textAppearance="@android:style/TextAppearance.Material.Headline" /><com.google.android.material.materialswitch.MaterialSwitch
android:id="@+id/setup_androidacy_repo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="4dp"
android:checked="false"
android:key="pref_androidacy_repo_enabled"
android:text="@string/setup_androidacy_repo"
android:textAppearance="@android:style/TextAppearance.Material.Subhead" />
android:layout_marginTop="4dp"
android:layout_marginEnd="4dp"
android:layout_weight="1"
android:padding="12dp"
android:text="@string/setup_theme_button"
android:textSize="16sp"
app:icon="@drawable/ic_baseline_palette_24"
style="@style/Widget.Material3.Button.IconButton.Outlined"
app:iconGravity="textStart"
app:iconPadding="8dp"
app:iconTintMode="src_in"
app:rippleColor="@color/gray_800"
tools:ignore="DuplicateSpeakableTextCheck" />
<com.google.android.material.button.MaterialButton
android:id="@+id/setup_language_button"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="4dp"
android:layout_marginTop="4dp"
android:layout_weight="1"
style="@style/Widget.Material3.Button.IconButton.Outlined"
android:padding="12dp"
android:text="@string/setup_language_button"
android:textSize="16sp"
app:icon="@drawable/ic_baseline_language_24"
app:iconGravity="textStart"
app:iconPadding="8dp"
app:iconTintMode="src_in"
app:rippleColor="@color/gray_800"
tools:ignore="DuplicateSpeakableTextCheck" />
</LinearLayout>
<com.google.android.material.textview.MaterialTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="4dp"
android:text="@string/repos"
android:textAppearance="@android:style/TextAppearance.Material.Headline" />
<com.google.android.material.materialswitch.MaterialSwitch
android:id="@+id/setup_androidacy_repo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="4dp"
android:checked="false"
android:key="pref_androidacy_repo_enabled"
android:text="@string/setup_androidacy_repo"
android:textSize="18sp" />
<!-- Small summary for above switch -->
<com.google.android.material.textview.MaterialTextView
@ -97,78 +104,108 @@
android:text="@string/setup_androidacy_repo_summary"
android:textAppearance="@android:style/TextAppearance.Material.Small" />
<com.google.android.material.materialswitch.MaterialSwitch
android:id="@+id/setup_magisk_alt_repo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="4dp"
android:checked="false"
android:key="pref_magisk_alt_repo_enabled"
android:text="@string/setup_magisk_alt_repo"
android:textAppearance="@android:style/TextAppearance.Material.Subhead" />
<com.google.android.material.materialswitch.MaterialSwitch
android:id="@+id/setup_magisk_alt_repo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="4dp"
android:checked="false"
android:key="pref_magisk_alt_repo_enabled"
android:text="@string/setup_magisk_alt_repo"
android:textSize="18sp" />
<!-- Small summary for above switch -->
<com.google.android.material.textview.MaterialTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="4dp"
android:layout_marginBottom="4dp"
android:drawableStart="@drawable/ic_baseline_info_24"
android:drawablePadding="8dp"
android:text="@string/setup_magisk_alt_repo_summary"
android:textAppearance="@android:style/TextAppearance.Material.Small" />
<com.google.android.material.textview.MaterialTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="4dp"
android:text="@string/setup_custom_repos"
android:textAppearance="@android:style/TextAppearance.Material.Caption" />
<com.google.android.material.textview.MaterialTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="2dp"
android:text="@string/setup_custom_repos"
android:textAppearance="@android:style/TextAppearance.Material.Caption" />
<com.google.android.material.textview.MaterialTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="4dp"
android:text="@string/misc"
android:textAppearance="@android:style/TextAppearance.Material.Headline" />
<com.google.android.material.textview.MaterialTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="4dp"
android:text="@string/crash_reporting_headline"
android:textAppearance="@android:style/TextAppearance.Material.Headline" />
<com.google.android.material.materialswitch.MaterialSwitch
android:id="@+id/setup_crash_reporting"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="4dp"
android:checked="false"
android:key="pref_crash_reporting_enabled"
android:text="@string/setup_crash_reporting"
android:textAppearance="@android:style/TextAppearance.Material.Subhead" />
<com.google.android.material.textview.MaterialTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="4dp"
android:drawableStart="@drawable/ic_baseline_info_24"
android:drawablePadding="8dp"
android:text="@string/setup_crash_reporting_summary"
android:textAppearance="@android:style/TextAppearance.Material.Small" />
<com.google.android.material.materialswitch.MaterialSwitch
android:id="@+id/setup_background_update_check"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="4dp"
android:checked="false"
android:key="pref_background_update_check"
android:text="@string/setup_background_update_check"
android:textAppearance="@android:style/TextAppearance.Material.Subhead" />
<com.google.android.material.textview.MaterialTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="4dp"
android:drawableStart="@drawable/ic_baseline_info_24"
android:drawablePadding="8dp"
android:text="@string/setup_background_update_check_summary"
android:textAppearance="@android:style/TextAppearance.Material.Small"
app:icon="@drawable/ic_baseline_info_24" />
<com.google.android.material.materialswitch.MaterialSwitch
android:id="@+id/setup_crash_reporting"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="4dp"
android:checked="false"
android:key="pref_crash_reporting_enabled"
android:text="@string/setup_crash_reporting"
android:textAppearance="@android:style/TextAppearance.Material.Subhead"
android:textSize="18sp" />
<com.google.android.material.textview.MaterialTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="4dp"
android:drawableStart="@drawable/ic_baseline_info_24"
android:drawablePadding="8dp"
android:text="@string/setup_crash_reporting_summary"
android:textAppearance="@android:style/TextAppearance.Material.Small" />
<com.google.android.material.textview.MaterialTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="4dp"
android:text="@string/setup_update_check_headline"
android:textAppearance="@android:style/TextAppearance.Material.Headline" />
<com.google.android.material.materialswitch.MaterialSwitch
android:id="@+id/setup_background_update_check"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="4dp"
android:checked="false"
android:key="pref_background_update_check"
android:text="@string/setup_background_update_check"
android:textSize="18sp" />
<com.google.android.material.textview.MaterialTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="4dp"
android:drawableStart="@drawable/ic_baseline_info_24"
android:drawablePadding="8dp"
android:text="@string/setup_background_update_check_summary"
android:textAppearance="@android:style/TextAppearance.Material.Small"
app:icon="@drawable/ic_baseline_info_24" />
<!-- require wifi switch -->
<com.google.android.material.materialswitch.MaterialSwitch
android:id="@+id/setup_background_update_check_require_wifi"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="4dp"
android:checked="false"
android:key="pref_background_update_check_require_wifi"
android:text="@string/setup_background_update_check_require_wifi"
android:textSize="18sp" />
<!-- description for require wifi switch -->
<com.google.android.material.textview.MaterialTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="4dp"
android:drawableStart="@drawable/ic_baseline_info_24"
android:drawablePadding="8dp"
android:text="@string/setup_background_update_check_require_wifi_summary"
android:textAppearance="@android:style/TextAppearance.Material.Small"
app:icon="@drawable/ic_baseline_info_24" />
<!-- Placeholder for future settings -->
<!--<com.google.android.material.materialswitch.MaterialSwitch
@ -181,30 +218,19 @@
android:textAppearance="@android:style/TextAppearance.Material.Small"
android:text="@string/setup_app_analytics" />-->
<!-- Linear layout for the finish and cancel buttons -->
<LinearLayout
android:layout_width="wrap_content"
<!-- bottom nav for cancel and finish -->
<com.google.android.material.bottomnavigation.BottomNavigationView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
android:layout_gravity="bottom"
android:layout_margin="4dp"
android:orientation="horizontal">
<com.google.android.material.button.MaterialButton
android:id="@+id/setup_cancel"
android:layout_width="120dp"
android:layout_height="wrap_content"
android:layout_marginEnd="2dp"
android:layout_weight="1"
android:text="@string/cancel" />
<com.google.android.material.button.MaterialButton
android:id="@+id/setup_finish"
android:layout_width="120dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/finish" />
</LinearLayout>
app:menu="@menu/setup_bottom_nav"
app:compatShadowEnabled="true"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
android:background="?attr/colorSurface"
android:elevation="4dp" />
</LinearLayout>
</androidx.core.widget.NestedScrollView>

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<!-- cancel and finish setup -->
<item
android:id="@+id/cancel_setup"
android:icon="@drawable/baseline_close_24"
android:title="@string/cancel"
app:showAsAction="ifRoom" />
<!-- save and finish setup -->
<item
android:id="@+id/setup_finish"
android:icon="@drawable/baseline_check_24"
android:title="@string/finish"
app:showAsAction="ifRoom" />
</menu>

@ -375,4 +375,8 @@
<string name="modules">Modules</string>
<string name="no_browser">You do not have a browser installed. Please install one to continue.</string>
<string name="search">Search</string>
<string name="crash_reporting_headline">Crash reporting</string>
<string name="setup_update_check_headline">Update checks</string>
<string name="setup_background_update_check_require_wifi">Require wifi for update checks</string>
<string name="setup_background_update_check_require_wifi_summary">Require wifi or an otherwise unmetered connection to do update checks</string>
</resources>

Loading…
Cancel
Save