Loading app/src/main/java/foundation/e/apps/application/ApplicationFragment.kt +13 −5 Original line number Diff line number Diff line Loading @@ -18,11 +18,15 @@ package foundation.e.apps.application import android.app.Dialog import android.content.Intent import android.os.Bundle import android.text.Html import android.text.SpannableString import android.util.Log import android.view.LayoutInflater import android.view.View import android.view.Window import androidx.fragment.app.Fragment import androidx.fragment.app.activityViewModels import androidx.fragment.app.viewModels Loading @@ -38,6 +42,8 @@ import foundation.e.apps.api.cleanapk.CleanAPKInterface import foundation.e.apps.api.fused.data.Origin import foundation.e.apps.api.fused.data.Status import foundation.e.apps.application.model.ApplicationScreenshotsRVAdapter import foundation.e.apps.databinding.ActivityMainBinding import foundation.e.apps.databinding.DialogTrackersLayoutBinding import foundation.e.apps.databinding.FragmentApplicationBinding import foundation.e.apps.manager.pkg.PkgManagerModule import javax.inject.Inject Loading Loading @@ -221,11 +227,13 @@ class ApplicationFragment : Fragment(R.layout.fragment_application) { ).show(childFragmentManager, TAG) } appTrackers.setOnClickListener { ApplicationDialogFragment( R.drawable.ic_tracker, getString(R.string.trackers), getString(R.string.trackers_description, "") ).show(childFragmentManager, TAG) val dialog = Dialog(requireContext()) dialog.requestWindowFeature(Window.FEATURE_NO_TITLE) val dialogBinding = DialogTrackersLayoutBinding.inflate(LayoutInflater.from(requireContext())) dialog.setContentView(dialogBinding.root) dialogBinding.trackersList.text = applicationViewModel.getTrackersText() dialog.show() } } Loading app/src/main/java/foundation/e/apps/application/ApplicationViewModel.kt +6 −0 Original line number Diff line number Diff line Loading @@ -92,4 +92,10 @@ class ApplicationViewModel @Inject constructor( val permString = list.toString().replace(", ", "\n") return permString.substring(1, permString.length - 1) } fun getTrackersText(): String { return fusedApp.value?.let { it.trackers.joinToString("\n") } ?: "" } } app/src/main/res/layout/dialog_trackers_layout.xml 0 → 100644 +42 −0 Original line number Diff line number Diff line <?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" xmlns:app="http://schemas.android.com/apk/res-auto"> <TextView android:id="@+id/title" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="18sp" android:textStyle="bold" android:textColor="@android:color/black" android:text="@string/trackers_title" android:layout_margin="20dp" app:layout_constraintTop_toTopOf="parent" app:layout_constraintLeft_toLeftOf="parent" /> <TextView android:id="@+id/trackers_list" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="16sp" android:textColor="@android:color/black" app:layout_constraintTop_toBottomOf="@+id/title" app:layout_constraintLeft_toLeftOf="@+id/title" android:layout_marginTop="20dp" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="16sp" android:text="@string/privacy_computed_using_text" android:textColor="@color/app_info_text_color_grey" app:layout_constraintTop_toBottomOf="@+id/trackers_list" app:layout_constraintLeft_toLeftOf="@id/trackers_list" android:layout_marginTop="20dp" /> </androidx.constraintlayout.widget.ConstraintLayout> No newline at end of file app/src/main/res/layout/fragment_application_privacy.xml +44 −17 Original line number Diff line number Diff line Loading @@ -34,32 +34,59 @@ android:textSize="18sp" android:textStyle="bold" /> <com.google.android.material.textview.MaterialTextView <RelativeLayout android:id="@+id/appPermissions" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:layout_marginStart="20dp" android:layout_marginEnd="20dp" android:layout_marginBottom="10dp" android:layout_marginBottom="10dp"> <com.google.android.material.textview.MaterialTextView android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_centerVertical="true" android:background="?android:selectableItemBackground" android:paddingTop="10dp" android:text="@string/permissions" android:textColor="?android:textColorPrimary" android:textSize="15sp" app:drawableEndCompat="@drawable/ic_arrow_forward" /> android:textSize="15sp" /> <com.google.android.material.textview.MaterialTextView <ImageView android:layout_width="25dp" android:layout_height="25dp" android:padding="4dp" android:src="@drawable/ic_arrow_forward" android:layout_centerVertical="true" android:layout_alignParentEnd="true"/> </RelativeLayout> <RelativeLayout android:id="@+id/appTrackers" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="start" android:layout_marginTop="5dp" android:layout_marginStart="20dp" android:layout_marginEnd="20dp" android:layout_marginBottom="10dp"> <com.google.android.material.textview.MaterialTextView android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_centerVertical="true" android:background="?android:selectableItemBackground" android:paddingTop="10dp" android:text="@string/trackers" android:text="@string/trackers_title" android:textColor="?android:textColorPrimary" android:textSize="15sp" app:drawableEndCompat="@drawable/ic_arrow_forward" /> android:textSize="15sp" /> <ImageView android:layout_width="25dp" android:layout_height="25dp" android:padding="4dp" android:src="@drawable/ic_arrow_forward" android:layout_centerVertical="true" android:layout_alignParentEnd="true"/> </RelativeLayout> </LinearLayout> app/src/main/res/values/strings.xml +4 −1 Original line number Diff line number Diff line Loading @@ -82,7 +82,7 @@ <string name="privacy_rating_out_of" translatable="false"><xliff:g id="rating">%1$s</xliff:g>/10</string> <string name="privacy_analyses">Privacy analyses</string> <string name="permissions">Permissions</string> <string name="trackers">Trackers</string> <string name="trackers_title">Trackers</string> <string name="trackers_description"><xliff:g id="rating">%1$s</xliff:g> \nComputed using Exodus Privacy analyses</string> <string name="information">Information</string> <string name="version">Version: <xliff:g id="version_code">%1$s</xliff:g></string> Loading Loading @@ -120,4 +120,7 @@ <string name="downloads">Downloads</string> <string name="updates">Updates</string> <!-- trackers_dialog--> <string name="privacy_computed_using_text">Computed using <a href="https://exodus-privacy.eu.org/en/">Exodus Privacy Analysis</a></string> </resources> No newline at end of file Loading
app/src/main/java/foundation/e/apps/application/ApplicationFragment.kt +13 −5 Original line number Diff line number Diff line Loading @@ -18,11 +18,15 @@ package foundation.e.apps.application import android.app.Dialog import android.content.Intent import android.os.Bundle import android.text.Html import android.text.SpannableString import android.util.Log import android.view.LayoutInflater import android.view.View import android.view.Window import androidx.fragment.app.Fragment import androidx.fragment.app.activityViewModels import androidx.fragment.app.viewModels Loading @@ -38,6 +42,8 @@ import foundation.e.apps.api.cleanapk.CleanAPKInterface import foundation.e.apps.api.fused.data.Origin import foundation.e.apps.api.fused.data.Status import foundation.e.apps.application.model.ApplicationScreenshotsRVAdapter import foundation.e.apps.databinding.ActivityMainBinding import foundation.e.apps.databinding.DialogTrackersLayoutBinding import foundation.e.apps.databinding.FragmentApplicationBinding import foundation.e.apps.manager.pkg.PkgManagerModule import javax.inject.Inject Loading Loading @@ -221,11 +227,13 @@ class ApplicationFragment : Fragment(R.layout.fragment_application) { ).show(childFragmentManager, TAG) } appTrackers.setOnClickListener { ApplicationDialogFragment( R.drawable.ic_tracker, getString(R.string.trackers), getString(R.string.trackers_description, "") ).show(childFragmentManager, TAG) val dialog = Dialog(requireContext()) dialog.requestWindowFeature(Window.FEATURE_NO_TITLE) val dialogBinding = DialogTrackersLayoutBinding.inflate(LayoutInflater.from(requireContext())) dialog.setContentView(dialogBinding.root) dialogBinding.trackersList.text = applicationViewModel.getTrackersText() dialog.show() } } Loading
app/src/main/java/foundation/e/apps/application/ApplicationViewModel.kt +6 −0 Original line number Diff line number Diff line Loading @@ -92,4 +92,10 @@ class ApplicationViewModel @Inject constructor( val permString = list.toString().replace(", ", "\n") return permString.substring(1, permString.length - 1) } fun getTrackersText(): String { return fusedApp.value?.let { it.trackers.joinToString("\n") } ?: "" } }
app/src/main/res/layout/dialog_trackers_layout.xml 0 → 100644 +42 −0 Original line number Diff line number Diff line <?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" xmlns:app="http://schemas.android.com/apk/res-auto"> <TextView android:id="@+id/title" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="18sp" android:textStyle="bold" android:textColor="@android:color/black" android:text="@string/trackers_title" android:layout_margin="20dp" app:layout_constraintTop_toTopOf="parent" app:layout_constraintLeft_toLeftOf="parent" /> <TextView android:id="@+id/trackers_list" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="16sp" android:textColor="@android:color/black" app:layout_constraintTop_toBottomOf="@+id/title" app:layout_constraintLeft_toLeftOf="@+id/title" android:layout_marginTop="20dp" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="16sp" android:text="@string/privacy_computed_using_text" android:textColor="@color/app_info_text_color_grey" app:layout_constraintTop_toBottomOf="@+id/trackers_list" app:layout_constraintLeft_toLeftOf="@id/trackers_list" android:layout_marginTop="20dp" /> </androidx.constraintlayout.widget.ConstraintLayout> No newline at end of file
app/src/main/res/layout/fragment_application_privacy.xml +44 −17 Original line number Diff line number Diff line Loading @@ -34,32 +34,59 @@ android:textSize="18sp" android:textStyle="bold" /> <com.google.android.material.textview.MaterialTextView <RelativeLayout android:id="@+id/appPermissions" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:layout_marginStart="20dp" android:layout_marginEnd="20dp" android:layout_marginBottom="10dp" android:layout_marginBottom="10dp"> <com.google.android.material.textview.MaterialTextView android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_centerVertical="true" android:background="?android:selectableItemBackground" android:paddingTop="10dp" android:text="@string/permissions" android:textColor="?android:textColorPrimary" android:textSize="15sp" app:drawableEndCompat="@drawable/ic_arrow_forward" /> android:textSize="15sp" /> <com.google.android.material.textview.MaterialTextView <ImageView android:layout_width="25dp" android:layout_height="25dp" android:padding="4dp" android:src="@drawable/ic_arrow_forward" android:layout_centerVertical="true" android:layout_alignParentEnd="true"/> </RelativeLayout> <RelativeLayout android:id="@+id/appTrackers" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="start" android:layout_marginTop="5dp" android:layout_marginStart="20dp" android:layout_marginEnd="20dp" android:layout_marginBottom="10dp"> <com.google.android.material.textview.MaterialTextView android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_centerVertical="true" android:background="?android:selectableItemBackground" android:paddingTop="10dp" android:text="@string/trackers" android:text="@string/trackers_title" android:textColor="?android:textColorPrimary" android:textSize="15sp" app:drawableEndCompat="@drawable/ic_arrow_forward" /> android:textSize="15sp" /> <ImageView android:layout_width="25dp" android:layout_height="25dp" android:padding="4dp" android:src="@drawable/ic_arrow_forward" android:layout_centerVertical="true" android:layout_alignParentEnd="true"/> </RelativeLayout> </LinearLayout>
app/src/main/res/values/strings.xml +4 −1 Original line number Diff line number Diff line Loading @@ -82,7 +82,7 @@ <string name="privacy_rating_out_of" translatable="false"><xliff:g id="rating">%1$s</xliff:g>/10</string> <string name="privacy_analyses">Privacy analyses</string> <string name="permissions">Permissions</string> <string name="trackers">Trackers</string> <string name="trackers_title">Trackers</string> <string name="trackers_description"><xliff:g id="rating">%1$s</xliff:g> \nComputed using Exodus Privacy analyses</string> <string name="information">Information</string> <string name="version">Version: <xliff:g id="version_code">%1$s</xliff:g></string> Loading Loading @@ -120,4 +120,7 @@ <string name="downloads">Downloads</string> <string name="updates">Updates</string> <!-- trackers_dialog--> <string name="privacy_computed_using_text">Computed using <a href="https://exodus-privacy.eu.org/en/">Exodus Privacy Analysis</a></string> </resources> No newline at end of file