Add Permissions on Onboading Page

This commit is contained in:
Rahul Kumar Patel
2021-03-01 14:08:13 +05:30
parent 254a5d995f
commit 38e9e8771d
15 changed files with 541 additions and 51 deletions

View File

@@ -0,0 +1,72 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
~ Aurora Store
~ Copyright (C) 2021, Rahul Kumar Patel <whyorean@gmail.com>
~
~ Aurora Store is free software: you can redistribute it and/or modify
~ it under the terms of the GNU General Public License as published by
~ the Free Software Foundation, either version 2 of the License, or
~ (at your option) any later version.
~
~ Aurora Store is distributed in the hope that it will be useful,
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
~ GNU General Public License for more details.
~
~ You should have received a copy of the GNU General Public License
~ along with Aurora Store. If not, see <http://www.gnu.org/licenses/>.
~
-->
<LinearLayout 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:layout_width="match_parent"
android:layout_height="match_parent"
android:divider="@drawable/divider"
android:orientation="horizontal"
android:showDividers="middle">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical">
<androidx.appcompat.widget.AppCompatTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:includeFontPadding="true"
android:paddingStart="@dimen/padding_normal"
android:paddingEnd="@dimen/padding_normal"
android:text="@string/onboarding_title_permissions"
android:textAlignment="textStart"
android:textColor="?colorAccent"
android:textSize="42sp"
app:fontFamily="@font/montserrat_regular" />
<androidx.appcompat.widget.AppCompatTextView
style="@style/AuroraTextStyle.Subtitle.Alt"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingStart="@dimen/padding_normal"
android:paddingEnd="@dimen/padding_normal"
android:text="@string/onboarding_permission_select"
android:textAlignment="textStart" />
</LinearLayout>
<com.airbnb.epoxy.EpoxyRecyclerView
android:id="@+id/epoxy_recycler"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:clipToPadding="false"
android:overScrollMode="never"
android:padding="@dimen/padding_normal"
android:scrollbars="none"
app:itemSpacing="@dimen/margin_small"
tools:listitem="@layout/view_installer" />
</LinearLayout>

View File

@@ -0,0 +1,63 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
~ Aurora Store
~ Copyright (C) 2021, Rahul Kumar Patel <whyorean@gmail.com>
~
~ Aurora Store is free software: you can redistribute it and/or modify
~ it under the terms of the GNU General Public License as published by
~ the Free Software Foundation, either version 2 of the License, or
~ (at your option) any later version.
~
~ Aurora Store is distributed in the hope that it will be useful,
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
~ GNU General Public License for more details.
~
~ You should have received a copy of the GNU General Public License
~ along with Aurora Store. If not, see <http://www.gnu.org/licenses/>.
~
-->
<LinearLayout 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:layout_width="match_parent"
android:layout_height="match_parent"
android:divider="@drawable/divider"
android:orientation="vertical"
android:showDividers="middle">
<androidx.appcompat.widget.AppCompatTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:includeFontPadding="true"
android:paddingStart="@dimen/padding_normal"
android:paddingEnd="@dimen/padding_normal"
android:text="@string/onboarding_title_permissions"
android:textAlignment="textStart"
android:textColor="?colorAccent"
android:textSize="42sp"
app:fontFamily="@font/montserrat_regular" />
<androidx.appcompat.widget.AppCompatTextView
style="@style/AuroraTextStyle.Subtitle.Alt"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingStart="@dimen/padding_normal"
android:paddingEnd="@dimen/padding_normal"
android:text="@string/onboarding_permission_select"
android:textAlignment="textStart" />
<com.airbnb.epoxy.EpoxyRecyclerView
android:id="@+id/epoxy_recycler"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:clipToPadding="false"
android:overScrollMode="never"
android:padding="@dimen/padding_normal"
android:scrollbars="none"
app:itemSpacing="@dimen/margin_small"
tools:listitem="@layout/view_installer" />
</LinearLayout>

View File

@@ -0,0 +1,42 @@
<?xml version="1.0" encoding="utf-8"?><!--
~ Aurora Store
~ Copyright (C) 2021, Rahul Kumar Patel <whyorean@gmail.com>
~
~ Aurora Store is free software: you can redistribute it and/or modify
~ it under the terms of the GNU General Public License as published by
~ the Free Software Foundation, either version 2 of the License, or
~ (at your option) any later version.
~
~ Aurora Store is distributed in the hope that it will be useful,
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
~ GNU General Public License for more details.
~
~ You should have received a copy of the GNU General Public License
~ along with Aurora Store. If not, see <http://www.gnu.org/licenses/>.
~
-->
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="@dimen/margin_xxsmall"
android:paddingBottom="@dimen/margin_xxsmall">
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/img"
android:layout_width="@dimen/icon_size_default"
android:layout_height="@dimen/icon_size_default"
android:layout_marginStart="@dimen/margin_small"
android:layout_marginEnd="@dimen/margin_small" />
<LinearLayout
android:id="@+id/permission_labels"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_alignParentTop="true"
android:layout_toEndOf="@id/img"
android:orientation="vertical"
android:textAppearance="@style/TextAppearance.Aurora.Line1" />
</RelativeLayout>

View File

@@ -55,7 +55,7 @@
android:layout_width="@dimen/icon_size_category"
android:layout_height="@dimen/icon_size_category"
android:layout_alignParentEnd="true"
android:layout_centerInParent="true"
android:layout_centerVertical="true"
android:clickable="false"
android:focusable="false"
android:minWidth="0dp" />

View File

@@ -20,23 +20,34 @@
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="@dimen/margin_xxsmall"
android:paddingBottom="@dimen/margin_xxsmall">
android:background="@drawable/bg_outlined_padded"
android:orientation="horizontal">
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/img"
android:layout_width="@dimen/icon_size_default"
android:layout_height="@dimen/icon_size_default"
android:layout_marginStart="@dimen/margin_small"
android:layout_marginEnd="@dimen/margin_small" />
<LinearLayout
android:id="@+id/permission_labels"
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/line1"
style="@style/AuroraTextStyle.Subtitle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_alignParentTop="true"
android:layout_toEndOf="@id/img"
android:orientation="vertical"
android:textAppearance="@style/TextAppearance.Aurora.Line1" />
</RelativeLayout>
android:layout_toStartOf="@id/btn_action" />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/line2"
style="@style/AuroraTextStyle.Line1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/line1"
android:layout_alignStart="@id/line1"
android:layout_alignEnd="@id/line1"
android:maxLines="5"
android:layout_marginTop="@dimen/margin_xxsmall" />
<com.google.android.material.button.MaterialButton
android:id="@+id/btn_action"
style="@style/Widget.MaterialComponents.Button.TextButton.Dialog.Flush"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:layout_marginStart="@dimen/margin_small"
android:text="@string/action_grant" />
</RelativeLayout>

View File

@@ -45,6 +45,6 @@
android:layout_width="@dimen/icon_size_category"
android:layout_height="@dimen/icon_size_category"
android:layout_alignParentEnd="true"
android:layout_centerInParent="true"
android:layout_centerVertical="true"
android:minWidth="0dp" />
</RelativeLayout>

View File

@@ -79,6 +79,8 @@
<string name="action_filter_rating">"Ratings"</string>
<string name="action_finish">"Finish"</string>
<string name="action_get_local_apk">"Save App bundle"</string>
<string name="action_grant">"Grant"</string>
<string name="action_granted">"Granted"</string>
<string name="action_home">"Home"</string>
<string name="action_ignore">"Ignore"</string>
<string name="action_ignore_version">Ignore version</string>
@@ -241,13 +243,22 @@
<string name="notification_installation_auto">"Click to install"</string>
<string name="onboarding_installer_select">"Select a suitable installer"</string>
<string name="onboarding_permission_select">"Aurora Store requires following permissions"</string>
<string name="onboarding_theme_select">"Select what you like"</string>
<string name="onboarding_title_accent">"Accent"</string>
<string name="onboarding_title_installer">"Installer"</string>
<string name="onboarding_title_permissions">"Permissions"</string>
<string name="onboarding_title_theme">"Themes"</string>
<string name="onboarding_title_welcome">"Welcome"</string>
<string name="onboarding_welcome_select">"How you doing?"</string>
<string name="onboarding_permission_esa">"External Storage Access"</string>
<string name="onboarding_permission_esa_desc">"To save downloads (APKs &amp; OBBs), export &amp; import device configs on external storage."</string>
<string name="onboarding_permission_esm">"External Storage Manager"</string>
<string name="onboarding_permission_esm_desc">"Required on devices running Android R+, additional to External Storage Access"</string>
<string name="onboarding_permission_installer">"Installer Permission"</string>
<string name="onboarding_permission_installer_desc">"Allow installing apps from Aurora Store"</string>
<string name="pref_abandon_session">"Force clear installation sessions"</string>
<string name="pref_abandon_session_desc">"Clear abandon or pending installation sessions"</string>
<string name="pref_app_download">"Downloads"</string>
@@ -328,5 +339,6 @@
<string name="toast_apk_whitelisted">"Whitelisted"</string>
<string name="toast_clipboard_copied">"Copied to clipboard"</string>
<string name="toast_developer_setting_failed">"Failed to open developer settings, make sure it is enabled from device settings."</string>
<string name="toast_permission_granted">"Permission granted"</string>
<string name="toast_spoof_applied">"Device spoof applied successfully."</string>
</resources>