diff --git a/.idea/.name b/.idea/.name index d32d4d9b6251957931b84cc786da239b2c317f33..5f549977a4944693264276ba3c22bfca11d87ea9 100644 --- a/.idea/.name +++ b/.idea/.name @@ -1 +1 @@ -PrivacyCentralApp \ No newline at end of file +AdvancedPrivacy diff --git a/DEVELOPMENT.md b/DEVELOPMENT.md index 2743aac638f8a8140f3131a940b4a678b2fc20f1..88354c646b27dc91f2736940bf133b5777ab7c1c 100644 --- a/DEVELOPMENT.md +++ b/DEVELOPMENT.md @@ -1,11 +1,11 @@ -# PrivacyCentral Development Guide +# AdvancedPrivacy Development Guide This guide contains development related information to help a developer in getting better understanding of project structure. ## Architecture -The architecture of PrivacyCentralApp is based on [clean architecture](https://blog.cleancoder.com/uncle-bob/2012/08/13/the-clean-architecture.html). For presentation layer, we use [Model-View-Intent](http://hannesdorfmann.com/android/model-view-intent/) design pattern which is a unidirectional reactive flow pattern. We use it in conjunction to ViewModel to make our features lifecycle aware. Our android app is having single activity multiple fragments. +The architecture of AdvancedPrivacy is based on [clean architecture](https://blog.cleancoder.com/uncle-bob/2012/08/13/the-clean-architecture.html). For presentation layer, we use [Model-View-Intent](http://hannesdorfmann.com/android/model-view-intent/) design pattern which is a unidirectional reactive flow pattern. We use it in conjunction to ViewModel to make our features lifecycle aware. Our android app is having single activity multiple fragments. ### Clean Architecture -Clean architecture is the building block of PrivacyCentralApp. This architecture is based on the following principles: +Clean architecture is the building block of AdvancedPrivacy. This architecture is based on the following principles: 1. **Independent of Frameworks**. The architecture does not depend on the existence of some library of feature laden software. This allows you to use such frameworks as tools, rather than having to cram your system into their limited constraints. 2. **Testable**. The business rules can be tested without the UI, Database, Web Server, or any other external element. 3. **Independent of UI**. The UI can change easily, without changing the rest of the system. A Web UI could be replaced with a console UI, for example, without changing the business rules. @@ -19,7 +19,7 @@ Clean architecture is the building block of PrivacyCentralApp. This architecture MVI is used at the presentation layer of clean architecture. It is very much similar to [Redux](https://redux.js.org/) in terms of implementation and working. It has three main components. -- **View**: This is where activities, fragments and other android components live. It is responsible for publishing user intent/actions to the model and rendering the state returned by the model. In PrivacyCentralApp, it is just an interface which is implemented by android components. +- **View**: This is where activities, fragments and other android components live. It is responsible for publishing user intent/actions to the model and rendering the state returned by the model. In AdvancedPrivacy, it is just an interface which is implemented by android components. - **Intent**: In context of our app, we call them actions. These are simple data classes having any extra payload like inputs, ids etc. - **Model (data layer at presentation level)**: This is responsible for processing the actions, communicating with domain use-cases and mutating the state of the model. It acts as a Store from redux but for our use case, we call it a **Feature**. @@ -33,7 +33,7 @@ Elements of a feature: 2. **State**: Simple POJO (kotlin data class) representing various UI states of the application. 3. **SingleEventProducer**: This is a function which is invoked by the reducer to publish single events (that can/should only be consumed once like displaying toast, snackbar message or sending an analytics event). This function takes action, effect, current state as input and it returns a `SingleEvent`. By default this function is null for any Feature. -### Architecture Overview of PrivacyCentral App +### Architecture Overview of AdvancedPrivacy App ![](art/privacycentral-arch.png) diff --git a/README.md b/README.md index 9d582391aff711b8472ab69d58f1e42d1e9ebec4..35a7958c9049109468a99e0d343382e5a15a4175 100644 --- a/README.md +++ b/README.md @@ -101,7 +101,6 @@ modules must be build and deployed in the following order: - ./gradlew :privacymodule-api:assembleRelease - ./gradlew --console=verbose publishToMavenLocal // To make it available locally for dev. - ./gradlew --console=verbose publish // To publish it on gitlab for release. -- [privacymodule-e](../../../e_privacycentral_privacymodulese) - [privacymodule-tor](../../../e_privacycentral_privacymoduletor) - [app] @@ -117,6 +116,18 @@ For building from CLI, you can execute this command: You can build the apk locally by using above instructions or you can download the latest stable apk from `master` branch pipeline. ### To run apk on /e/OS devices + +If you are running your tests on a `/test` build, the debug buildtype already sign it with the appropriate key, and without the persistant flag, to allow further updates. +But the first time, to replace the AdvancedPrivacy app, embeded in the test build, you have to use the following commands: + + ```shell + adb root && adb remount + adb push your_advanced_privacy_debug_build.apk /system/priv-app/AdvancedPrivacy/AdvancedPrivacy.apk + adb shell kill -9 $(adb shell pidof -s foundation.e.advancedprivacy) + ``` + +#### AdvancedPrivacy requiement against the system + AdvancedPrivacy needs to be installed as system app and whitelisting in order to grant some system specific permissions. Follow these steps to make it work properly on /e/OS 1. From `Developer options`, enable `Android debugging` and `Rooted debugging` @@ -135,13 +146,13 @@ AdvancedPrivacy needs to be installed as system app and whitelisting in order to ``` 1. Push permissions whitelist. - - it requires the whitelisting [privapp-permissions-foundation.e.privacycentralapp.xml](privapp-permissions-foundation.e.privacycentralapp.xml) file that can be found in the project repository. + - it requires the whitelisting [privapp-permissions-foundation.e.advancedprivacy.xml](privapp-permissions-foundation.e.advancedprivacy.xml) file that can be found in the project repository. - then use the following command ```bash - adb push privapp-permissions-foundation.e.privacycentralapp.xml /system/etc/permissions/ + adb push privapp-permissions-foundation.e.advancedprivacy.xml /system/etc/permissions/ ``` -1. Allow the fake location service to run in background. Add in the file /system/etc/permissions/platform.xml . +1. Allow the fake location service to run in background. Add in the file /system/etc/permissions/platform.xml . 1. Reboot the device ```shell diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index c155aa5dd174bc5f8592fe9074d59dda0b4a1230..246b7c0d318a6a3f76057e76d9f75db78ea1cb99 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -17,7 +17,7 @@ --> @@ -40,15 +40,15 @@ android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" - android:name=".PrivacyCentralApplication" + android:name="foundation.e.advancedprivacy.AdvancedPrivacyApplication" android:persistent="${persistent}" android:supportsRtl="true" - android:theme="@style/Theme.PrivacyCentralApp" + android:theme="@style/Theme.AdvancedPrivacy" android:windowSoftInputMode="adjustResize" tools:replace="android:icon,android:label,android:theme" > @@ -59,7 +59,7 @@ @@ -70,14 +70,14 @@ android:resource="@xml/widget_info" /> - - @@ -87,7 +87,7 @@ . */ -package foundation.e.privacycentralapp +package foundation.e.advancedprivacy import android.app.Application import com.mapbox.mapboxsdk.Mapbox import foundation.e.lib.telemetry.Telemetry -class PrivacyCentralApplication : Application() { +class AdvancedPrivacyApplication : Application() { // Initialize the dependency container. val dependencyContainer: DependencyContainer by lazy { DependencyContainer(this) } diff --git a/app/src/main/java/foundation/e/privacycentralapp/DependencyContainer.kt b/app/src/main/java/foundation/e/advancedprivacy/DependencyContainer.kt similarity index 84% rename from app/src/main/java/foundation/e/privacycentralapp/DependencyContainer.kt rename to app/src/main/java/foundation/e/advancedprivacy/DependencyContainer.kt index aab81d5da2ba9b3fc621e129d041d17cbecb2d54..91e2f449e7c9701ec972f715317b3e8b4ab4a782 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/DependencyContainer.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/DependencyContainer.kt @@ -16,7 +16,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp +package foundation.e.advancedprivacy import android.app.Application import android.content.Context @@ -25,24 +25,24 @@ import androidx.lifecycle.DEFAULT_ARGS_KEY import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModelProvider import androidx.lifecycle.viewmodel.CreationExtras -import foundation.e.privacycentralapp.common.WarningDialog -import foundation.e.privacycentralapp.data.repositories.AppListsRepository -import foundation.e.privacycentralapp.data.repositories.LocalStateRepository -import foundation.e.privacycentralapp.data.repositories.TrackersRepository -import foundation.e.privacycentralapp.domain.usecases.AppListUseCase -import foundation.e.privacycentralapp.domain.usecases.FakeLocationStateUseCase -import foundation.e.privacycentralapp.domain.usecases.GetQuickPrivacyStateUseCase -import foundation.e.privacycentralapp.domain.usecases.IpScramblingStateUseCase -import foundation.e.privacycentralapp.domain.usecases.ShowFeaturesWarningUseCase -import foundation.e.privacycentralapp.domain.usecases.TrackersStateUseCase -import foundation.e.privacycentralapp.domain.usecases.TrackersStatisticsUseCase -import foundation.e.privacycentralapp.dummy.CityDataSource -import foundation.e.privacycentralapp.features.dashboard.DashboardViewModel -import foundation.e.privacycentralapp.features.internetprivacy.InternetPrivacyViewModel -import foundation.e.privacycentralapp.features.location.FakeLocationViewModel -import foundation.e.privacycentralapp.features.trackers.TrackersViewModel -import foundation.e.privacycentralapp.features.trackers.apptrackers.AppTrackersFragment -import foundation.e.privacycentralapp.features.trackers.apptrackers.AppTrackersViewModel +import foundation.e.advancedprivacy.common.WarningDialog +import foundation.e.advancedprivacy.data.repositories.AppListsRepository +import foundation.e.advancedprivacy.data.repositories.LocalStateRepository +import foundation.e.advancedprivacy.data.repositories.TrackersRepository +import foundation.e.advancedprivacy.domain.usecases.AppListUseCase +import foundation.e.advancedprivacy.domain.usecases.FakeLocationStateUseCase +import foundation.e.advancedprivacy.domain.usecases.GetQuickPrivacyStateUseCase +import foundation.e.advancedprivacy.domain.usecases.IpScramblingStateUseCase +import foundation.e.advancedprivacy.domain.usecases.ShowFeaturesWarningUseCase +import foundation.e.advancedprivacy.domain.usecases.TrackersStateUseCase +import foundation.e.advancedprivacy.domain.usecases.TrackersStatisticsUseCase +import foundation.e.advancedprivacy.dummy.CityDataSource +import foundation.e.advancedprivacy.features.dashboard.DashboardViewModel +import foundation.e.advancedprivacy.features.internetprivacy.InternetPrivacyViewModel +import foundation.e.advancedprivacy.features.location.FakeLocationViewModel +import foundation.e.advancedprivacy.features.trackers.TrackersViewModel +import foundation.e.advancedprivacy.features.trackers.apptrackers.AppTrackersFragment +import foundation.e.advancedprivacy.features.trackers.apptrackers.AppTrackersViewModel import foundation.e.privacymodules.fakelocation.FakeLocationModule import foundation.e.privacymodules.ipscrambler.IpScramblerModule import foundation.e.privacymodules.ipscramblermodule.IIpScramblerModule diff --git a/app/src/main/java/foundation/e/privacycentralapp/Notifications.kt b/app/src/main/java/foundation/e/advancedprivacy/Notifications.kt similarity index 96% rename from app/src/main/java/foundation/e/privacycentralapp/Notifications.kt rename to app/src/main/java/foundation/e/advancedprivacy/Notifications.kt index 0df3e180e928a794871b16ec5f3c679ce865a295..68c4bd304e9a1563916305e3e2433b309231446e 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/Notifications.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/Notifications.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp +package foundation.e.advancedprivacy import android.app.NotificationChannel import android.app.NotificationManager @@ -25,10 +25,10 @@ import android.content.Intent import androidx.annotation.StringRes import androidx.core.app.NotificationCompat import androidx.core.app.NotificationManagerCompat -import foundation.e.privacycentralapp.domain.entities.InternetPrivacyMode -import foundation.e.privacycentralapp.domain.entities.MainFeatures -import foundation.e.privacycentralapp.domain.usecases.GetQuickPrivacyStateUseCase -import foundation.e.privacycentralapp.main.MainActivity +import foundation.e.advancedprivacy.domain.entities.InternetPrivacyMode +import foundation.e.advancedprivacy.domain.entities.MainFeatures +import foundation.e.advancedprivacy.domain.usecases.GetQuickPrivacyStateUseCase +import foundation.e.advancedprivacy.main.MainActivity import foundation.e.privacymodules.permissions.PermissionsPrivacyModule import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.flow.distinctUntilChanged diff --git a/app/src/main/java/foundation/e/privacycentralapp/UpdateTrackersWorker.kt b/app/src/main/java/foundation/e/advancedprivacy/UpdateTrackersWorker.kt similarity index 94% rename from app/src/main/java/foundation/e/privacycentralapp/UpdateTrackersWorker.kt rename to app/src/main/java/foundation/e/advancedprivacy/UpdateTrackersWorker.kt index 13511da5277f497930bc0989e9bdcf143bf9b569..418f75bba93e2ad3cd92a0e70f617864cb542abc 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/UpdateTrackersWorker.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/UpdateTrackersWorker.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp +package foundation.e.advancedprivacy import android.content.Context import androidx.work.Constraints @@ -31,7 +31,7 @@ class UpdateTrackersWorker(appContext: Context, workerParams: WorkerParameters) CoroutineWorker(appContext, workerParams) { override suspend fun doWork(): Result { - val trackersStateUseCase = (applicationContext as PrivacyCentralApplication) + val trackersStateUseCase = (applicationContext as AdvancedPrivacyApplication) .dependencyContainer.trackersStateUseCase trackersStateUseCase.updateTrackers() diff --git a/app/src/main/java/foundation/e/privacycentralapp/common/AppsAdapter.kt b/app/src/main/java/foundation/e/advancedprivacy/common/AppsAdapter.kt similarity index 93% rename from app/src/main/java/foundation/e/privacycentralapp/common/AppsAdapter.kt rename to app/src/main/java/foundation/e/advancedprivacy/common/AppsAdapter.kt index 2fbbc34adb4da9008cb817f6f35a22ac944416fe..aee1890358e4e27a50d97cb45a86498b8a729d12 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/common/AppsAdapter.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/common/AppsAdapter.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.common +package foundation.e.advancedprivacy.common import android.view.LayoutInflater import android.view.View @@ -23,8 +23,8 @@ import android.view.ViewGroup import android.widget.ImageView import android.widget.TextView import androidx.recyclerview.widget.RecyclerView -import foundation.e.privacycentralapp.R -import foundation.e.privacycentralapp.domain.entities.AppWithCounts +import foundation.e.advancedprivacy.R +import foundation.e.advancedprivacy.domain.entities.AppWithCounts class AppsAdapter( private val itemsLayout: Int, diff --git a/app/src/main/java/foundation/e/privacycentralapp/common/BootCompletedReceiver.kt b/app/src/main/java/foundation/e/advancedprivacy/common/BootCompletedReceiver.kt similarity index 87% rename from app/src/main/java/foundation/e/privacycentralapp/common/BootCompletedReceiver.kt rename to app/src/main/java/foundation/e/advancedprivacy/common/BootCompletedReceiver.kt index d7902ee56e2249f4543336bec1523c6fce29a90e..d73f770cc897ed7d384d6a82bc91785f0296b044 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/common/BootCompletedReceiver.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/common/BootCompletedReceiver.kt @@ -15,13 +15,13 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.common +package foundation.e.advancedprivacy.common import android.content.BroadcastReceiver import android.content.Context import android.content.Intent -import foundation.e.privacycentralapp.Notifications -import foundation.e.privacycentralapp.data.repositories.LocalStateRepository +import foundation.e.advancedprivacy.Notifications +import foundation.e.advancedprivacy.data.repositories.LocalStateRepository class BootCompletedReceiver : BroadcastReceiver() { override fun onReceive(context: Context, intent: Intent?) { diff --git a/app/src/main/java/foundation/e/privacycentralapp/common/Factory.kt b/app/src/main/java/foundation/e/advancedprivacy/common/Factory.kt similarity index 94% rename from app/src/main/java/foundation/e/privacycentralapp/common/Factory.kt rename to app/src/main/java/foundation/e/advancedprivacy/common/Factory.kt index 4c7f436765e7a8c2c58f1784109c0da0cea85544..3af0b371283fe7adaa6e47cd7adccbf9abed301d 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/common/Factory.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/common/Factory.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.common +package foundation.e.advancedprivacy.common // Definition of a Factory interface with a function to create objects of a type interface Factory { diff --git a/app/src/main/java/foundation/e/privacycentralapp/common/GraphHolder.kt b/app/src/main/java/foundation/e/advancedprivacy/common/GraphHolder.kt similarity index 98% rename from app/src/main/java/foundation/e/privacycentralapp/common/GraphHolder.kt rename to app/src/main/java/foundation/e/advancedprivacy/common/GraphHolder.kt index a25b68e784a58cbe64d41f8d78d58568d06ea6f1..ca4fcb65b582b8edd3cd04fd919929cf680f5a53 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/common/GraphHolder.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/common/GraphHolder.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.common +package foundation.e.advancedprivacy.common import android.content.Context import android.graphics.Canvas @@ -43,8 +43,8 @@ import com.github.mikephil.charting.highlight.Highlight import com.github.mikephil.charting.listener.OnChartValueSelectedListener import com.github.mikephil.charting.renderer.XAxisRenderer import com.github.mikephil.charting.utils.MPPointF -import foundation.e.privacycentralapp.R -import foundation.e.privacycentralapp.common.extensions.dpToPxF +import foundation.e.advancedprivacy.R +import foundation.e.advancedprivacy.common.extensions.dpToPxF import kotlin.math.floor class GraphHolder(val barChart: BarChart, val context: Context, val isMarkerAbove: Boolean = true) { diff --git a/app/src/main/java/foundation/e/privacycentralapp/common/NavToolbarFragment.kt b/app/src/main/java/foundation/e/advancedprivacy/common/NavToolbarFragment.kt similarity index 96% rename from app/src/main/java/foundation/e/privacycentralapp/common/NavToolbarFragment.kt rename to app/src/main/java/foundation/e/advancedprivacy/common/NavToolbarFragment.kt index 695540592eaaa1ca4f3f1465d9bbb0602ef3c0dc..14179770957bc2c02f178e0b3f9bb07a3e976888 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/common/NavToolbarFragment.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/common/NavToolbarFragment.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.common +package foundation.e.advancedprivacy.common import androidx.annotation.LayoutRes import com.google.android.material.appbar.MaterialToolbar diff --git a/app/src/main/java/foundation/e/privacycentralapp/common/RightRadioButton.kt b/app/src/main/java/foundation/e/advancedprivacy/common/RightRadioButton.kt similarity index 96% rename from app/src/main/java/foundation/e/privacycentralapp/common/RightRadioButton.kt rename to app/src/main/java/foundation/e/advancedprivacy/common/RightRadioButton.kt index bbc108bc2d8505991fe92b3caee806dc301a1ba9..c10d75500eb314364b7d21418aaf66957a8e80a0 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/common/RightRadioButton.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/common/RightRadioButton.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.common +package foundation.e.advancedprivacy.common import android.annotation.SuppressLint import android.content.Context diff --git a/app/src/main/java/foundation/e/privacycentralapp/common/TextViewHelpers.kt b/app/src/main/java/foundation/e/advancedprivacy/common/TextViewHelpers.kt similarity index 96% rename from app/src/main/java/foundation/e/privacycentralapp/common/TextViewHelpers.kt rename to app/src/main/java/foundation/e/advancedprivacy/common/TextViewHelpers.kt index d85f4a7c25b73e21e2de8a82684fc37d2f4a59f3..f87834ab9c7ca7fc5f26d1e79433461a4d1628c2 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/common/TextViewHelpers.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/common/TextViewHelpers.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.common +package foundation.e.advancedprivacy.common import android.content.Context import android.content.res.ColorStateList @@ -27,7 +27,7 @@ import android.widget.TextView import androidx.annotation.StringRes import androidx.appcompat.content.res.AppCompatResources import androidx.appcompat.widget.TooltipCompat -import foundation.e.privacycentralapp.R +import foundation.e.advancedprivacy.R fun setToolTipForAsterisk( textView: TextView, diff --git a/app/src/main/java/foundation/e/privacycentralapp/common/ThrottleFlow.kt b/app/src/main/java/foundation/e/advancedprivacy/common/ThrottleFlow.kt similarity index 96% rename from app/src/main/java/foundation/e/privacycentralapp/common/ThrottleFlow.kt rename to app/src/main/java/foundation/e/advancedprivacy/common/ThrottleFlow.kt index 21e1542edbcb79936893ea0e9d06cbb622321280..e9ec060ec8d23190a1ccfa64953ea4d2d874d1e6 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/common/ThrottleFlow.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/common/ThrottleFlow.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.common +package foundation.e.advancedprivacy.common import kotlinx.coroutines.FlowPreview import kotlinx.coroutines.flow.Flow diff --git a/app/src/main/java/foundation/e/privacycentralapp/common/ToggleAppsAdapter.kt b/app/src/main/java/foundation/e/advancedprivacy/common/ToggleAppsAdapter.kt similarity index 96% rename from app/src/main/java/foundation/e/privacycentralapp/common/ToggleAppsAdapter.kt rename to app/src/main/java/foundation/e/advancedprivacy/common/ToggleAppsAdapter.kt index c41c0cf228aaccbe581d9e8256cf592a91562aae..d8ee8ea03386aaaa609b18d7b012ab7c74fd4bfd 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/common/ToggleAppsAdapter.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/common/ToggleAppsAdapter.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.common +package foundation.e.advancedprivacy.common import android.view.LayoutInflater import android.view.View @@ -24,7 +24,7 @@ import android.widget.CheckBox import android.widget.ImageView import android.widget.TextView import androidx.recyclerview.widget.RecyclerView -import foundation.e.privacycentralapp.R +import foundation.e.advancedprivacy.R import foundation.e.privacymodules.permissions.data.ApplicationDescription class ToggleAppsAdapter( diff --git a/app/src/main/java/foundation/e/privacycentralapp/common/ToolbarFragment.kt b/app/src/main/java/foundation/e/advancedprivacy/common/ToolbarFragment.kt similarity index 94% rename from app/src/main/java/foundation/e/privacycentralapp/common/ToolbarFragment.kt rename to app/src/main/java/foundation/e/advancedprivacy/common/ToolbarFragment.kt index 5c185480d51a370f9495b62222c26d8033730471..fb3ea14bf06626fe939f07a93cb66eb19c8e948a 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/common/ToolbarFragment.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/common/ToolbarFragment.kt @@ -15,14 +15,14 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.common +package foundation.e.advancedprivacy.common import android.os.Bundle import android.view.View import androidx.annotation.LayoutRes import androidx.fragment.app.Fragment import com.google.android.material.appbar.MaterialToolbar -import foundation.e.privacycentralapp.R +import foundation.e.advancedprivacy.R abstract class ToolbarFragment(@LayoutRes contentLayoutId: Int) : Fragment(contentLayoutId) { diff --git a/app/src/main/java/foundation/e/privacycentralapp/common/WarningDialog.kt b/app/src/main/java/foundation/e/advancedprivacy/common/WarningDialog.kt similarity index 86% rename from app/src/main/java/foundation/e/privacycentralapp/common/WarningDialog.kt rename to app/src/main/java/foundation/e/advancedprivacy/common/WarningDialog.kt index cbbeffa631aac6801ffe31da0cb12afead4f83b5..98deeb1571923df67fd14c678f08165332113f7d 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/common/WarningDialog.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/common/WarningDialog.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.common +package foundation.e.advancedprivacy.common import android.app.Activity import android.content.Context @@ -26,14 +26,14 @@ import android.util.Log import android.view.View import android.widget.CheckBox import androidx.appcompat.app.AlertDialog -import foundation.e.privacycentralapp.PrivacyCentralApplication -import foundation.e.privacycentralapp.R -import foundation.e.privacycentralapp.domain.entities.MainFeatures -import foundation.e.privacycentralapp.domain.entities.MainFeatures.FAKE_LOCATION -import foundation.e.privacycentralapp.domain.entities.MainFeatures.IP_SCRAMBLING -import foundation.e.privacycentralapp.domain.entities.MainFeatures.TRACKERS_CONTROL -import foundation.e.privacycentralapp.domain.usecases.ShowFeaturesWarningUseCase -import foundation.e.privacycentralapp.main.MainActivity +import foundation.e.advancedprivacy.AdvancedPrivacyApplication +import foundation.e.advancedprivacy.R +import foundation.e.advancedprivacy.domain.entities.MainFeatures +import foundation.e.advancedprivacy.domain.entities.MainFeatures.FAKE_LOCATION +import foundation.e.advancedprivacy.domain.entities.MainFeatures.IP_SCRAMBLING +import foundation.e.advancedprivacy.domain.entities.MainFeatures.TRACKERS_CONTROL +import foundation.e.advancedprivacy.domain.usecases.ShowFeaturesWarningUseCase +import foundation.e.advancedprivacy.main.MainActivity import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.flow.launchIn import kotlinx.coroutines.flow.map @@ -111,7 +111,7 @@ class WarningDialog : Activity() { } ) { _, _ -> if (checkbox.isChecked()) { - (application as PrivacyCentralApplication) + (application as AdvancedPrivacyApplication) .dependencyContainer.showFeaturesWarningUseCase .doNotShowAgain(feature) } diff --git a/app/src/main/java/foundation/e/privacycentralapp/common/extensions/AnyExtension.kt b/app/src/main/java/foundation/e/advancedprivacy/common/extensions/AnyExtension.kt similarity index 93% rename from app/src/main/java/foundation/e/privacycentralapp/common/extensions/AnyExtension.kt rename to app/src/main/java/foundation/e/advancedprivacy/common/extensions/AnyExtension.kt index 71de99ab34b137e543fecbbc1c0ad9018b44fee0..652aefd8d56647947a3de3df5022a19a77b79989 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/common/extensions/AnyExtension.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/common/extensions/AnyExtension.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.common.extensions +package foundation.e.advancedprivacy.common.extensions import android.content.Context diff --git a/app/src/main/java/foundation/e/privacycentralapp/data/repositories/AppListsRepository.kt b/app/src/main/java/foundation/e/advancedprivacy/data/repositories/AppListsRepository.kt similarity index 99% rename from app/src/main/java/foundation/e/privacycentralapp/data/repositories/AppListsRepository.kt rename to app/src/main/java/foundation/e/advancedprivacy/data/repositories/AppListsRepository.kt index a4f74876e8372d90438d27e7ea7e29aeb8e52d4f..0b951a8fe8b3e4e23556aae7a2aed9b12bc5a8c1 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/data/repositories/AppListsRepository.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/data/repositories/AppListsRepository.kt @@ -15,14 +15,14 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.data.repositories +package foundation.e.advancedprivacy.data.repositories import android.Manifest import android.content.Context import android.content.Intent import android.content.pm.ApplicationInfo import android.content.pm.PackageInfo -import foundation.e.privacycentralapp.R +import foundation.e.advancedprivacy.R import foundation.e.privacymodules.permissions.PermissionsPrivacyModule import foundation.e.privacymodules.permissions.data.ApplicationDescription import foundation.e.privacymodules.permissions.data.ProfileType diff --git a/app/src/main/java/foundation/e/privacycentralapp/data/repositories/CityDataSource.kt b/app/src/main/java/foundation/e/advancedprivacy/data/repositories/CityDataSource.kt similarity index 97% rename from app/src/main/java/foundation/e/privacycentralapp/data/repositories/CityDataSource.kt rename to app/src/main/java/foundation/e/advancedprivacy/data/repositories/CityDataSource.kt index d6a6a194c5224852950d0b685f1d7f36786b8626..06fb9acef5c0738fe4d82e11fd1b680bd925b927 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/data/repositories/CityDataSource.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/data/repositories/CityDataSource.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.dummy +package foundation.e.advancedprivacy.dummy object CityDataSource { private val BARCELONA = Pair(41.3851f, 2.1734f) diff --git a/app/src/main/java/foundation/e/privacycentralapp/data/repositories/LocalStateRepository.kt b/app/src/main/java/foundation/e/advancedprivacy/data/repositories/LocalStateRepository.kt similarity index 95% rename from app/src/main/java/foundation/e/privacycentralapp/data/repositories/LocalStateRepository.kt rename to app/src/main/java/foundation/e/advancedprivacy/data/repositories/LocalStateRepository.kt index ed97c947d510588d460fc1c002d23ef12ed72706..3f73c78900f6221d7d0b28aa5d6097ff59c86855 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/data/repositories/LocalStateRepository.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/data/repositories/LocalStateRepository.kt @@ -15,11 +15,11 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.data.repositories +package foundation.e.advancedprivacy.data.repositories import android.content.Context -import foundation.e.privacycentralapp.domain.entities.InternetPrivacyMode -import foundation.e.privacycentralapp.domain.entities.LocationMode +import foundation.e.advancedprivacy.domain.entities.InternetPrivacyMode +import foundation.e.advancedprivacy.domain.entities.LocationMode import foundation.e.privacymodules.permissions.data.ApplicationDescription import kotlinx.coroutines.flow.MutableSharedFlow import kotlinx.coroutines.flow.MutableStateFlow diff --git a/app/src/main/java/foundation/e/privacycentralapp/data/repositories/TrackersRepository.kt b/app/src/main/java/foundation/e/advancedprivacy/data/repositories/TrackersRepository.kt similarity index 98% rename from app/src/main/java/foundation/e/privacycentralapp/data/repositories/TrackersRepository.kt rename to app/src/main/java/foundation/e/advancedprivacy/data/repositories/TrackersRepository.kt index b5310e1c8badeb6eee276f9d720d1ea357d5743b..82915dfbfa1325e35e6b90a5775ceb1bfb9700e2 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/data/repositories/TrackersRepository.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/data/repositories/TrackersRepository.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.data.repositories +package foundation.e.advancedprivacy.data.repositories import android.content.Context import android.util.Log diff --git a/app/src/main/java/foundation/e/privacycentralapp/domain/entities/AppWithCounts.kt b/app/src/main/java/foundation/e/advancedprivacy/domain/entities/AppWithCounts.kt similarity index 97% rename from app/src/main/java/foundation/e/privacycentralapp/domain/entities/AppWithCounts.kt rename to app/src/main/java/foundation/e/advancedprivacy/domain/entities/AppWithCounts.kt index afdd2d58e4152a652b4b3d5b1a1a05fdab7da45c..4169ecc029b7b3fc175cafad06c7bedc048b6dc1 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/domain/entities/AppWithCounts.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/domain/entities/AppWithCounts.kt @@ -16,7 +16,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.domain.entities +package foundation.e.advancedprivacy.domain.entities import android.graphics.drawable.Drawable import foundation.e.privacymodules.permissions.data.ApplicationDescription diff --git a/app/src/main/java/foundation/e/privacycentralapp/domain/entities/InternetPrivacyMode.kt b/app/src/main/java/foundation/e/advancedprivacy/domain/entities/InternetPrivacyMode.kt similarity index 94% rename from app/src/main/java/foundation/e/privacycentralapp/domain/entities/InternetPrivacyMode.kt rename to app/src/main/java/foundation/e/advancedprivacy/domain/entities/InternetPrivacyMode.kt index f849d57e08aade4ec715313c3bb643a92ab48caa..986e79899060c89d6749fa269496354fe3415234 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/domain/entities/InternetPrivacyMode.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/domain/entities/InternetPrivacyMode.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.domain.entities +package foundation.e.advancedprivacy.domain.entities enum class InternetPrivacyMode { REAL_IP, diff --git a/app/src/main/java/foundation/e/privacycentralapp/domain/entities/LocationMode.kt b/app/src/main/java/foundation/e/advancedprivacy/domain/entities/LocationMode.kt similarity index 93% rename from app/src/main/java/foundation/e/privacycentralapp/domain/entities/LocationMode.kt rename to app/src/main/java/foundation/e/advancedprivacy/domain/entities/LocationMode.kt index 35a77b32bd05efa88bc9beb49d24f280845e9250..62581ebc9714f1c67cbf0fcc17aaf94a6ddf69d0 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/domain/entities/LocationMode.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/domain/entities/LocationMode.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.domain.entities +package foundation.e.advancedprivacy.domain.entities enum class LocationMode { REAL_LOCATION, RANDOM_LOCATION, SPECIFIC_LOCATION diff --git a/app/src/main/java/foundation/e/privacycentralapp/domain/entities/MainFeatures.kt b/app/src/main/java/foundation/e/advancedprivacy/domain/entities/MainFeatures.kt similarity index 93% rename from app/src/main/java/foundation/e/privacycentralapp/domain/entities/MainFeatures.kt rename to app/src/main/java/foundation/e/advancedprivacy/domain/entities/MainFeatures.kt index 0e7f99ccfaec9baaa85b20e7a9eb25a957ae667a..c63d3abd2c2c0f1ac5de2a7e798559747227e43f 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/domain/entities/MainFeatures.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/domain/entities/MainFeatures.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.domain.entities +package foundation.e.advancedprivacy.domain.entities enum class MainFeatures { TRACKERS_CONTROL, FAKE_LOCATION, IP_SCRAMBLING diff --git a/app/src/main/java/foundation/e/privacycentralapp/domain/entities/QuickPrivacyState.kt b/app/src/main/java/foundation/e/advancedprivacy/domain/entities/QuickPrivacyState.kt similarity index 93% rename from app/src/main/java/foundation/e/privacycentralapp/domain/entities/QuickPrivacyState.kt rename to app/src/main/java/foundation/e/advancedprivacy/domain/entities/QuickPrivacyState.kt index 3257402030664792680df1bd6083dd667710c826..c21bb1d683211904228c69c92d4f91f2caaa0c58 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/domain/entities/QuickPrivacyState.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/domain/entities/QuickPrivacyState.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.domain.entities +package foundation.e.advancedprivacy.domain.entities enum class QuickPrivacyState { DISABLED, ENABLED, FULL_ENABLED; diff --git a/app/src/main/java/foundation/e/privacycentralapp/domain/entities/TrackerMode.kt b/app/src/main/java/foundation/e/advancedprivacy/domain/entities/TrackerMode.kt similarity index 93% rename from app/src/main/java/foundation/e/privacycentralapp/domain/entities/TrackerMode.kt rename to app/src/main/java/foundation/e/advancedprivacy/domain/entities/TrackerMode.kt index 9f057be076b00e9d3886d2b63b0d9cb6d1300e5c..2033251a1da18d56498bdc4f632c5f894022ac33 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/domain/entities/TrackerMode.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/domain/entities/TrackerMode.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.domain.entities +package foundation.e.advancedprivacy.domain.entities enum class TrackerMode { DENIED, CUSTOM, VULNERABLE diff --git a/app/src/main/java/foundation/e/privacycentralapp/domain/entities/TrackersPeriodicStatistics.kt b/app/src/main/java/foundation/e/advancedprivacy/domain/entities/TrackersPeriodicStatistics.kt similarity index 94% rename from app/src/main/java/foundation/e/privacycentralapp/domain/entities/TrackersPeriodicStatistics.kt rename to app/src/main/java/foundation/e/advancedprivacy/domain/entities/TrackersPeriodicStatistics.kt index 8ce55dd5459465e72a87d0833776a3ef5e54ebbd..c0fa637b6925cbb462bd0ccbdf0079c449afcc8d 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/domain/entities/TrackersPeriodicStatistics.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/domain/entities/TrackersPeriodicStatistics.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.domain.entities +package foundation.e.advancedprivacy.domain.entities data class TrackersPeriodicStatistics( val callsBlockedNLeaked: List>, diff --git a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/AppListUseCase.kt b/app/src/main/java/foundation/e/advancedprivacy/domain/usecases/AppListUseCase.kt similarity index 91% rename from app/src/main/java/foundation/e/privacycentralapp/domain/usecases/AppListUseCase.kt rename to app/src/main/java/foundation/e/advancedprivacy/domain/usecases/AppListUseCase.kt index dd62839d07f8c9355f885f3d8f90a1db2164a798..8d38ee8f41695ac6f7d1698d48d87b8c6b700d81 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/AppListUseCase.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/domain/usecases/AppListUseCase.kt @@ -15,9 +15,9 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.domain.usecases +package foundation.e.advancedprivacy.domain.usecases -import foundation.e.privacycentralapp.data.repositories.AppListsRepository +import foundation.e.advancedprivacy.data.repositories.AppListsRepository import foundation.e.privacymodules.permissions.data.ApplicationDescription import kotlinx.coroutines.flow.Flow diff --git a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/FakeLocationStateUseCase.kt b/app/src/main/java/foundation/e/advancedprivacy/domain/usecases/FakeLocationStateUseCase.kt similarity index 96% rename from app/src/main/java/foundation/e/privacycentralapp/domain/usecases/FakeLocationStateUseCase.kt rename to app/src/main/java/foundation/e/advancedprivacy/domain/usecases/FakeLocationStateUseCase.kt index 0ff2edbb788b83f45e46bc6747381032d6430b35..9b99b95b37851d80f7910f3f9dc9873d1164c07b 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/FakeLocationStateUseCase.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/domain/usecases/FakeLocationStateUseCase.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.domain.usecases +package foundation.e.advancedprivacy.domain.usecases import android.app.AppOpsManager import android.content.Context @@ -25,9 +25,9 @@ import android.location.LocationListener import android.location.LocationManager import android.os.Bundle import android.util.Log -import foundation.e.privacycentralapp.data.repositories.LocalStateRepository -import foundation.e.privacycentralapp.domain.entities.LocationMode -import foundation.e.privacycentralapp.dummy.CityDataSource +import foundation.e.advancedprivacy.data.repositories.LocalStateRepository +import foundation.e.advancedprivacy.domain.entities.LocationMode +import foundation.e.advancedprivacy.dummy.CityDataSource import foundation.e.privacymodules.fakelocation.IFakeLocationModule import foundation.e.privacymodules.permissions.PermissionsPrivacyModule import foundation.e.privacymodules.permissions.data.AppOpModes diff --git a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/GetQuickPrivacyStateUseCase.kt b/app/src/main/java/foundation/e/advancedprivacy/domain/usecases/GetQuickPrivacyStateUseCase.kt similarity index 88% rename from app/src/main/java/foundation/e/privacycentralapp/domain/usecases/GetQuickPrivacyStateUseCase.kt rename to app/src/main/java/foundation/e/advancedprivacy/domain/usecases/GetQuickPrivacyStateUseCase.kt index e2c0e7fbc2ede6cf8c8038ba1de5932f57398987..475c05dd5be62ce6036ecff78adba1c86d85beb5 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/GetQuickPrivacyStateUseCase.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/domain/usecases/GetQuickPrivacyStateUseCase.kt @@ -15,13 +15,13 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.domain.usecases +package foundation.e.advancedprivacy.domain.usecases -import foundation.e.privacycentralapp.data.repositories.LocalStateRepository -import foundation.e.privacycentralapp.domain.entities.InternetPrivacyMode -import foundation.e.privacycentralapp.domain.entities.LocationMode -import foundation.e.privacycentralapp.domain.entities.QuickPrivacyState -import foundation.e.privacycentralapp.domain.entities.TrackerMode +import foundation.e.advancedprivacy.data.repositories.LocalStateRepository +import foundation.e.advancedprivacy.domain.entities.InternetPrivacyMode +import foundation.e.advancedprivacy.domain.entities.LocationMode +import foundation.e.advancedprivacy.domain.entities.QuickPrivacyState +import foundation.e.advancedprivacy.domain.entities.TrackerMode import foundation.e.privacymodules.permissions.data.ApplicationDescription import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.SharedFlow diff --git a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/IpScramblingStateUseCase.kt b/app/src/main/java/foundation/e/advancedprivacy/domain/usecases/IpScramblingStateUseCase.kt similarity index 91% rename from app/src/main/java/foundation/e/privacycentralapp/domain/usecases/IpScramblingStateUseCase.kt rename to app/src/main/java/foundation/e/advancedprivacy/domain/usecases/IpScramblingStateUseCase.kt index dcb417bd515ad1300038f590260791410883f738..8c94602cc1d9f225a797d7ec1d5496425500ffdd 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/IpScramblingStateUseCase.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/domain/usecases/IpScramblingStateUseCase.kt @@ -15,15 +15,15 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.domain.usecases - -import foundation.e.privacycentralapp.data.repositories.AppListsRepository -import foundation.e.privacycentralapp.data.repositories.LocalStateRepository -import foundation.e.privacycentralapp.domain.entities.InternetPrivacyMode -import foundation.e.privacycentralapp.domain.entities.InternetPrivacyMode.HIDE_IP -import foundation.e.privacycentralapp.domain.entities.InternetPrivacyMode.HIDE_IP_LOADING -import foundation.e.privacycentralapp.domain.entities.InternetPrivacyMode.REAL_IP -import foundation.e.privacycentralapp.domain.entities.InternetPrivacyMode.REAL_IP_LOADING +package foundation.e.advancedprivacy.domain.usecases + +import foundation.e.advancedprivacy.data.repositories.AppListsRepository +import foundation.e.advancedprivacy.data.repositories.LocalStateRepository +import foundation.e.advancedprivacy.domain.entities.InternetPrivacyMode +import foundation.e.advancedprivacy.domain.entities.InternetPrivacyMode.HIDE_IP +import foundation.e.advancedprivacy.domain.entities.InternetPrivacyMode.HIDE_IP_LOADING +import foundation.e.advancedprivacy.domain.entities.InternetPrivacyMode.REAL_IP +import foundation.e.advancedprivacy.domain.entities.InternetPrivacyMode.REAL_IP_LOADING import foundation.e.privacymodules.ipscramblermodule.IIpScramblerModule import foundation.e.privacymodules.permissions.IPermissionsPrivacyModule import foundation.e.privacymodules.permissions.data.ApplicationDescription diff --git a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/ShowFeaturesWarningUseCase.kt b/app/src/main/java/foundation/e/advancedprivacy/domain/usecases/ShowFeaturesWarningUseCase.kt similarity index 91% rename from app/src/main/java/foundation/e/privacycentralapp/domain/usecases/ShowFeaturesWarningUseCase.kt rename to app/src/main/java/foundation/e/advancedprivacy/domain/usecases/ShowFeaturesWarningUseCase.kt index e347b346c2c95ae98cb68a5a865b68cbd28d4493..11bce86c1029554a72d6237a8ae3e785326c1b32 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/ShowFeaturesWarningUseCase.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/domain/usecases/ShowFeaturesWarningUseCase.kt @@ -15,10 +15,10 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.domain.usecases +package foundation.e.advancedprivacy.domain.usecases -import foundation.e.privacycentralapp.data.repositories.LocalStateRepository -import foundation.e.privacycentralapp.domain.entities.MainFeatures +import foundation.e.advancedprivacy.data.repositories.LocalStateRepository +import foundation.e.advancedprivacy.domain.entities.MainFeatures import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.drop import kotlinx.coroutines.flow.dropWhile diff --git a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/TrackersStateUseCase.kt b/app/src/main/java/foundation/e/advancedprivacy/domain/usecases/TrackersStateUseCase.kt similarity index 93% rename from app/src/main/java/foundation/e/privacycentralapp/domain/usecases/TrackersStateUseCase.kt rename to app/src/main/java/foundation/e/advancedprivacy/domain/usecases/TrackersStateUseCase.kt index afb6d1eead7b472fbbf73688cb5e2a760abfab57..882d53f71e0830ab3582fd39e7ba5b97b183f819 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/TrackersStateUseCase.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/domain/usecases/TrackersStateUseCase.kt @@ -15,11 +15,11 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.domain.usecases +package foundation.e.advancedprivacy.domain.usecases -import foundation.e.privacycentralapp.data.repositories.AppListsRepository -import foundation.e.privacycentralapp.data.repositories.LocalStateRepository -import foundation.e.privacycentralapp.data.repositories.TrackersRepository +import foundation.e.advancedprivacy.data.repositories.AppListsRepository +import foundation.e.advancedprivacy.data.repositories.LocalStateRepository +import foundation.e.advancedprivacy.data.repositories.TrackersRepository import foundation.e.privacymodules.permissions.data.ApplicationDescription import foundation.e.privacymodules.trackers.api.IBlockTrackersPrivacyModule import foundation.e.privacymodules.trackers.api.ITrackTrackersPrivacyModule diff --git a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/TrackersStatisticsUseCase.kt b/app/src/main/java/foundation/e/advancedprivacy/domain/usecases/TrackersStatisticsUseCase.kt similarity index 96% rename from app/src/main/java/foundation/e/privacycentralapp/domain/usecases/TrackersStatisticsUseCase.kt rename to app/src/main/java/foundation/e/advancedprivacy/domain/usecases/TrackersStatisticsUseCase.kt index 5ca7039b064a110c62d640c40bb44200f5fc3847..43e4496495c4225c3b03081642c473d3576645da 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/TrackersStatisticsUseCase.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/domain/usecases/TrackersStatisticsUseCase.kt @@ -15,14 +15,14 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.domain.usecases +package foundation.e.advancedprivacy.domain.usecases import android.content.res.Resources -import foundation.e.privacycentralapp.R -import foundation.e.privacycentralapp.common.throttleFirst -import foundation.e.privacycentralapp.data.repositories.AppListsRepository -import foundation.e.privacycentralapp.domain.entities.AppWithCounts -import foundation.e.privacycentralapp.domain.entities.TrackersPeriodicStatistics +import foundation.e.advancedprivacy.R +import foundation.e.advancedprivacy.common.throttleFirst +import foundation.e.advancedprivacy.data.repositories.AppListsRepository +import foundation.e.advancedprivacy.domain.entities.AppWithCounts +import foundation.e.advancedprivacy.domain.entities.TrackersPeriodicStatistics import foundation.e.privacymodules.permissions.data.ApplicationDescription import foundation.e.privacymodules.trackers.api.IBlockTrackersPrivacyModule import foundation.e.privacymodules.trackers.api.ITrackTrackersPrivacyModule diff --git a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/UpdateWidgetUseCase.kt b/app/src/main/java/foundation/e/advancedprivacy/domain/usecases/UpdateWidgetUseCase.kt similarity index 89% rename from app/src/main/java/foundation/e/privacycentralapp/domain/usecases/UpdateWidgetUseCase.kt rename to app/src/main/java/foundation/e/advancedprivacy/domain/usecases/UpdateWidgetUseCase.kt index f70065cbdb1b0bd0fa84c08436687a45377ae517..94c734c4687e0535635775b54b668e82915a3eac 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/UpdateWidgetUseCase.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/domain/usecases/UpdateWidgetUseCase.kt @@ -15,9 +15,9 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.domain.usecases +package foundation.e.advancedprivacy.domain.usecases -import foundation.e.privacycentralapp.data.repositories.LocalStateRepository +import foundation.e.advancedprivacy.data.repositories.LocalStateRepository import foundation.e.privacymodules.trackers.api.ITrackTrackersPrivacyModule class UpdateWidgetUseCase( diff --git a/app/src/main/java/foundation/e/privacycentralapp/features/dashboard/DashboardFragment.kt b/app/src/main/java/foundation/e/advancedprivacy/features/dashboard/DashboardFragment.kt similarity index 90% rename from app/src/main/java/foundation/e/privacycentralapp/features/dashboard/DashboardFragment.kt rename to app/src/main/java/foundation/e/advancedprivacy/features/dashboard/DashboardFragment.kt index 0dc24e8c20c59883e96a2192fe6a6d8dac94c424..b30935c1741ce0b0e209989dd21334b510a3f929 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/features/dashboard/DashboardFragment.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/features/dashboard/DashboardFragment.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.features.dashboard +package foundation.e.advancedprivacy.features.dashboard import android.content.Intent import android.os.Bundle @@ -32,22 +32,22 @@ import androidx.fragment.app.viewModels import androidx.lifecycle.Lifecycle import androidx.lifecycle.lifecycleScope import androidx.lifecycle.repeatOnLifecycle -import foundation.e.privacycentralapp.DependencyContainer -import foundation.e.privacycentralapp.PrivacyCentralApplication -import foundation.e.privacycentralapp.R -import foundation.e.privacycentralapp.common.GraphHolder -import foundation.e.privacycentralapp.common.NavToolbarFragment -import foundation.e.privacycentralapp.databinding.FragmentDashboardBinding -import foundation.e.privacycentralapp.domain.entities.InternetPrivacyMode -import foundation.e.privacycentralapp.domain.entities.LocationMode -import foundation.e.privacycentralapp.domain.entities.QuickPrivacyState -import foundation.e.privacycentralapp.domain.entities.TrackerMode -import foundation.e.privacycentralapp.features.dashboard.DashboardViewModel.Action -import foundation.e.privacycentralapp.features.dashboard.DashboardViewModel.SingleEvent -import foundation.e.privacycentralapp.features.internetprivacy.InternetPrivacyFragment -import foundation.e.privacycentralapp.features.location.FakeLocationFragment -import foundation.e.privacycentralapp.features.trackers.TrackersFragment -import foundation.e.privacycentralapp.features.trackers.apptrackers.AppTrackersFragment +import foundation.e.advancedprivacy.AdvancedPrivacyApplication +import foundation.e.advancedprivacy.DependencyContainer +import foundation.e.advancedprivacy.R +import foundation.e.advancedprivacy.common.GraphHolder +import foundation.e.advancedprivacy.common.NavToolbarFragment +import foundation.e.advancedprivacy.databinding.FragmentDashboardBinding +import foundation.e.advancedprivacy.domain.entities.InternetPrivacyMode +import foundation.e.advancedprivacy.domain.entities.LocationMode +import foundation.e.advancedprivacy.domain.entities.QuickPrivacyState +import foundation.e.advancedprivacy.domain.entities.TrackerMode +import foundation.e.advancedprivacy.features.dashboard.DashboardViewModel.Action +import foundation.e.advancedprivacy.features.dashboard.DashboardViewModel.SingleEvent +import foundation.e.advancedprivacy.features.internetprivacy.InternetPrivacyFragment +import foundation.e.advancedprivacy.features.location.FakeLocationFragment +import foundation.e.advancedprivacy.features.trackers.TrackersFragment +import foundation.e.advancedprivacy.features.trackers.apptrackers.AppTrackersFragment import kotlinx.coroutines.launch class DashboardFragment : NavToolbarFragment(R.layout.fragment_dashboard) { @@ -59,7 +59,7 @@ class DashboardFragment : NavToolbarFragment(R.layout.fragment_dashboard) { } private val dependencyContainer: DependencyContainer by lazy { - (this.requireActivity().application as PrivacyCentralApplication).dependencyContainer + (this.requireActivity().application as AdvancedPrivacyApplication).dependencyContainer } private val viewModel: DashboardViewModel by viewModels { diff --git a/app/src/main/java/foundation/e/privacycentralapp/features/dashboard/DashboardState.kt b/app/src/main/java/foundation/e/advancedprivacy/features/dashboard/DashboardState.kt similarity index 79% rename from app/src/main/java/foundation/e/privacycentralapp/features/dashboard/DashboardState.kt rename to app/src/main/java/foundation/e/advancedprivacy/features/dashboard/DashboardState.kt index 0e3521df8fbfc7a6056b103a93ec1b6418c29960..8fc8767cc70e64e8fc64d4e837ca4ea18a8f1932 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/features/dashboard/DashboardState.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/features/dashboard/DashboardState.kt @@ -15,12 +15,12 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.features.dashboard +package foundation.e.advancedprivacy.features.dashboard -import foundation.e.privacycentralapp.domain.entities.InternetPrivacyMode -import foundation.e.privacycentralapp.domain.entities.LocationMode -import foundation.e.privacycentralapp.domain.entities.QuickPrivacyState -import foundation.e.privacycentralapp.domain.entities.TrackerMode +import foundation.e.advancedprivacy.domain.entities.InternetPrivacyMode +import foundation.e.advancedprivacy.domain.entities.LocationMode +import foundation.e.advancedprivacy.domain.entities.QuickPrivacyState +import foundation.e.advancedprivacy.domain.entities.TrackerMode data class DashboardState( val quickPrivacyState: QuickPrivacyState = QuickPrivacyState.DISABLED, diff --git a/app/src/main/java/foundation/e/privacycentralapp/features/dashboard/DashboardViewModel.kt b/app/src/main/java/foundation/e/advancedprivacy/features/dashboard/DashboardViewModel.kt similarity index 96% rename from app/src/main/java/foundation/e/privacycentralapp/features/dashboard/DashboardViewModel.kt rename to app/src/main/java/foundation/e/advancedprivacy/features/dashboard/DashboardViewModel.kt index f3a977427cf78dac30f7f71d3a65215b67f20ddb..d82b0734f59b39489f28ac45fdf55f30c738404a 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/features/dashboard/DashboardViewModel.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/features/dashboard/DashboardViewModel.kt @@ -16,14 +16,14 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.features.dashboard +package foundation.e.advancedprivacy.features.dashboard import androidx.annotation.StringRes import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope -import foundation.e.privacycentralapp.R -import foundation.e.privacycentralapp.domain.usecases.GetQuickPrivacyStateUseCase -import foundation.e.privacycentralapp.domain.usecases.TrackersStatisticsUseCase +import foundation.e.advancedprivacy.R +import foundation.e.advancedprivacy.domain.usecases.GetQuickPrivacyStateUseCase +import foundation.e.advancedprivacy.domain.usecases.TrackersStatisticsUseCase import foundation.e.privacymodules.permissions.data.ApplicationDescription import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.delay diff --git a/app/src/main/java/foundation/e/privacycentralapp/features/internetprivacy/InternetPrivacyFragment.kt b/app/src/main/java/foundation/e/advancedprivacy/features/internetprivacy/InternetPrivacyFragment.kt similarity index 91% rename from app/src/main/java/foundation/e/privacycentralapp/features/internetprivacy/InternetPrivacyFragment.kt rename to app/src/main/java/foundation/e/advancedprivacy/features/internetprivacy/InternetPrivacyFragment.kt index afef9863d9d121c6e9390d6f87105264fda9c203..07da82a26f51d085ebf6a62ecb693bb151a6e6f0 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/features/internetprivacy/InternetPrivacyFragment.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/features/internetprivacy/InternetPrivacyFragment.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.features.internetprivacy +package foundation.e.advancedprivacy.features.internetprivacy import android.os.Bundle import android.view.View @@ -27,21 +27,21 @@ import androidx.lifecycle.Lifecycle import androidx.lifecycle.lifecycleScope import androidx.lifecycle.repeatOnLifecycle import androidx.recyclerview.widget.LinearLayoutManager -import foundation.e.privacycentralapp.DependencyContainer -import foundation.e.privacycentralapp.PrivacyCentralApplication -import foundation.e.privacycentralapp.R -import foundation.e.privacycentralapp.common.NavToolbarFragment -import foundation.e.privacycentralapp.common.ToggleAppsAdapter -import foundation.e.privacycentralapp.common.setToolTipForAsterisk -import foundation.e.privacycentralapp.databinding.FragmentInternetActivityPolicyBinding -import foundation.e.privacycentralapp.domain.entities.InternetPrivacyMode +import foundation.e.advancedprivacy.AdvancedPrivacyApplication +import foundation.e.advancedprivacy.DependencyContainer +import foundation.e.advancedprivacy.R +import foundation.e.advancedprivacy.common.NavToolbarFragment +import foundation.e.advancedprivacy.common.ToggleAppsAdapter +import foundation.e.advancedprivacy.common.setToolTipForAsterisk +import foundation.e.advancedprivacy.databinding.FragmentInternetActivityPolicyBinding +import foundation.e.advancedprivacy.domain.entities.InternetPrivacyMode import kotlinx.coroutines.launch import java.util.Locale class InternetPrivacyFragment : NavToolbarFragment(R.layout.fragment_internet_activity_policy) { private val dependencyContainer: DependencyContainer by lazy { - (this.requireActivity().application as PrivacyCentralApplication).dependencyContainer + (this.requireActivity().application as AdvancedPrivacyApplication).dependencyContainer } private val viewModel: InternetPrivacyViewModel by viewModels { diff --git a/app/src/main/java/foundation/e/privacycentralapp/features/internetprivacy/InternetPrivacyState.kt b/app/src/main/java/foundation/e/advancedprivacy/features/internetprivacy/InternetPrivacyState.kt similarity index 90% rename from app/src/main/java/foundation/e/privacycentralapp/features/internetprivacy/InternetPrivacyState.kt rename to app/src/main/java/foundation/e/advancedprivacy/features/internetprivacy/InternetPrivacyState.kt index 54b7e0197e881358fd1330f79550af14186c448b..e0df73bedc33837b9b7610ff549a818a0ddb1a17 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/features/internetprivacy/InternetPrivacyState.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/features/internetprivacy/InternetPrivacyState.kt @@ -15,9 +15,9 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.features.internetprivacy +package foundation.e.advancedprivacy.features.internetprivacy -import foundation.e.privacycentralapp.domain.entities.InternetPrivacyMode +import foundation.e.advancedprivacy.domain.entities.InternetPrivacyMode import foundation.e.privacymodules.permissions.data.ApplicationDescription data class InternetPrivacyState( diff --git a/app/src/main/java/foundation/e/privacycentralapp/features/internetprivacy/InternetPrivacyViewModel.kt b/app/src/main/java/foundation/e/advancedprivacy/features/internetprivacy/InternetPrivacyViewModel.kt similarity index 93% rename from app/src/main/java/foundation/e/privacycentralapp/features/internetprivacy/InternetPrivacyViewModel.kt rename to app/src/main/java/foundation/e/advancedprivacy/features/internetprivacy/InternetPrivacyViewModel.kt index bbd62394211e6ae75540275745b502cd62e6d326..051c8e8fee9eed3401e1fd3530d4e445f85617ec 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/features/internetprivacy/InternetPrivacyViewModel.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/features/internetprivacy/InternetPrivacyViewModel.kt @@ -15,16 +15,16 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.features.internetprivacy +package foundation.e.advancedprivacy.features.internetprivacy import androidx.annotation.StringRes import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope -import foundation.e.privacycentralapp.R -import foundation.e.privacycentralapp.domain.entities.InternetPrivacyMode -import foundation.e.privacycentralapp.domain.usecases.AppListUseCase -import foundation.e.privacycentralapp.domain.usecases.GetQuickPrivacyStateUseCase -import foundation.e.privacycentralapp.domain.usecases.IpScramblingStateUseCase +import foundation.e.advancedprivacy.R +import foundation.e.advancedprivacy.domain.entities.InternetPrivacyMode +import foundation.e.advancedprivacy.domain.usecases.AppListUseCase +import foundation.e.advancedprivacy.domain.usecases.GetQuickPrivacyStateUseCase +import foundation.e.advancedprivacy.domain.usecases.IpScramblingStateUseCase import foundation.e.privacymodules.ipscramblermodule.IIpScramblerModule import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.FlowPreview diff --git a/app/src/main/java/foundation/e/privacycentralapp/features/location/FakeLocationFragment.kt b/app/src/main/java/foundation/e/advancedprivacy/features/location/FakeLocationFragment.kt similarity index 95% rename from app/src/main/java/foundation/e/privacycentralapp/features/location/FakeLocationFragment.kt rename to app/src/main/java/foundation/e/advancedprivacy/features/location/FakeLocationFragment.kt index 9e3f8541f6005cf8e7fb682ff85e8d77a5e4b7ec..089151e018270c6f8f9ae8292f470e17617234ae 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/features/location/FakeLocationFragment.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/features/location/FakeLocationFragment.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.features.location +package foundation.e.advancedprivacy.features.location import android.Manifest import android.annotation.SuppressLint @@ -47,13 +47,13 @@ import com.mapbox.mapboxsdk.location.modes.CameraMode import com.mapbox.mapboxsdk.location.modes.RenderMode import com.mapbox.mapboxsdk.maps.MapboxMap import com.mapbox.mapboxsdk.maps.Style -import foundation.e.privacycentralapp.DependencyContainer -import foundation.e.privacycentralapp.PrivacyCentralApplication -import foundation.e.privacycentralapp.R -import foundation.e.privacycentralapp.common.NavToolbarFragment -import foundation.e.privacycentralapp.databinding.FragmentFakeLocationBinding -import foundation.e.privacycentralapp.domain.entities.LocationMode -import foundation.e.privacycentralapp.features.location.FakeLocationViewModel.Action +import foundation.e.advancedprivacy.AdvancedPrivacyApplication +import foundation.e.advancedprivacy.DependencyContainer +import foundation.e.advancedprivacy.R +import foundation.e.advancedprivacy.common.NavToolbarFragment +import foundation.e.advancedprivacy.databinding.FragmentFakeLocationBinding +import foundation.e.advancedprivacy.domain.entities.LocationMode +import foundation.e.advancedprivacy.features.location.FakeLocationViewModel.Action import kotlinx.coroutines.Job import kotlinx.coroutines.delay import kotlinx.coroutines.ensureActive @@ -64,7 +64,7 @@ class FakeLocationFragment : NavToolbarFragment(R.layout.fragment_fake_location) private var isFirstLaunch: Boolean = true private val dependencyContainer: DependencyContainer by lazy { - (this.requireActivity().application as PrivacyCentralApplication).dependencyContainer + (this.requireActivity().application as AdvancedPrivacyApplication).dependencyContainer } private val viewModel: FakeLocationViewModel by viewModels { diff --git a/app/src/main/java/foundation/e/privacycentralapp/features/location/FakeLocationMapView.kt b/app/src/main/java/foundation/e/advancedprivacy/features/location/FakeLocationMapView.kt similarity index 97% rename from app/src/main/java/foundation/e/privacycentralapp/features/location/FakeLocationMapView.kt rename to app/src/main/java/foundation/e/advancedprivacy/features/location/FakeLocationMapView.kt index e71bfcc0d531ac074b6f3481ed7bb65f89fc9a2a..fbb5b6c851f448534ae25b2c545b84421650bcbe 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/features/location/FakeLocationMapView.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/features/location/FakeLocationMapView.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.features.location +package foundation.e.advancedprivacy.features.location import android.annotation.SuppressLint import android.content.Context diff --git a/app/src/main/java/foundation/e/privacycentralapp/features/location/FakeLocationState.kt b/app/src/main/java/foundation/e/advancedprivacy/features/location/FakeLocationState.kt similarity index 88% rename from app/src/main/java/foundation/e/privacycentralapp/features/location/FakeLocationState.kt rename to app/src/main/java/foundation/e/advancedprivacy/features/location/FakeLocationState.kt index 50d7a1451752e8756a9c68765b8747597404916b..baa672bcbc12513153ac346035be8eb610cd3ec7 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/features/location/FakeLocationState.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/features/location/FakeLocationState.kt @@ -15,10 +15,10 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.features.location +package foundation.e.advancedprivacy.features.location import android.location.Location -import foundation.e.privacycentralapp.domain.entities.LocationMode +import foundation.e.advancedprivacy.domain.entities.LocationMode data class FakeLocationState( val mode: LocationMode = LocationMode.REAL_LOCATION, diff --git a/app/src/main/java/foundation/e/privacycentralapp/features/location/FakeLocationViewModel.kt b/app/src/main/java/foundation/e/advancedprivacy/features/location/FakeLocationViewModel.kt similarity index 94% rename from app/src/main/java/foundation/e/privacycentralapp/features/location/FakeLocationViewModel.kt rename to app/src/main/java/foundation/e/advancedprivacy/features/location/FakeLocationViewModel.kt index 1cdf9f466312e5934bf36e123ffeb1c0bddb6415..87b64c53176b79b1a81f4c1d4f943f5571a427b0 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/features/location/FakeLocationViewModel.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/features/location/FakeLocationViewModel.kt @@ -15,14 +15,14 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.features.location +package foundation.e.advancedprivacy.features.location import android.location.Location import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope -import foundation.e.privacycentralapp.domain.entities.LocationMode -import foundation.e.privacycentralapp.domain.usecases.FakeLocationStateUseCase -import foundation.e.privacycentralapp.domain.usecases.GetQuickPrivacyStateUseCase +import foundation.e.advancedprivacy.domain.entities.LocationMode +import foundation.e.advancedprivacy.domain.usecases.FakeLocationStateUseCase +import foundation.e.advancedprivacy.domain.usecases.GetQuickPrivacyStateUseCase import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.FlowPreview import kotlinx.coroutines.flow.MutableSharedFlow diff --git a/app/src/main/java/foundation/e/privacycentralapp/features/trackers/TrackersFragment.kt b/app/src/main/java/foundation/e/advancedprivacy/features/trackers/TrackersFragment.kt similarity index 90% rename from app/src/main/java/foundation/e/privacycentralapp/features/trackers/TrackersFragment.kt rename to app/src/main/java/foundation/e/advancedprivacy/features/trackers/TrackersFragment.kt index cb32c2cde2078e6e4e93d3c1d59adbe0f67f525c..3e17334df00d1bc007b5222655c075de2e634fa0 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/features/trackers/TrackersFragment.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/features/trackers/TrackersFragment.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.features.trackers +package foundation.e.advancedprivacy.features.trackers import android.content.ActivityNotFoundException import android.content.Intent @@ -37,24 +37,24 @@ import androidx.lifecycle.Lifecycle import androidx.lifecycle.lifecycleScope import androidx.lifecycle.repeatOnLifecycle import androidx.recyclerview.widget.LinearLayoutManager -import foundation.e.privacycentralapp.DependencyContainer -import foundation.e.privacycentralapp.PrivacyCentralApplication -import foundation.e.privacycentralapp.R -import foundation.e.privacycentralapp.common.AppsAdapter -import foundation.e.privacycentralapp.common.GraphHolder -import foundation.e.privacycentralapp.common.NavToolbarFragment -import foundation.e.privacycentralapp.common.setToolTipForAsterisk -import foundation.e.privacycentralapp.databinding.FragmentTrackersBinding -import foundation.e.privacycentralapp.databinding.TrackersItemGraphBinding -import foundation.e.privacycentralapp.domain.entities.TrackersPeriodicStatistics -import foundation.e.privacycentralapp.features.trackers.apptrackers.AppTrackersFragment +import foundation.e.advancedprivacy.AdvancedPrivacyApplication +import foundation.e.advancedprivacy.DependencyContainer +import foundation.e.advancedprivacy.R +import foundation.e.advancedprivacy.common.AppsAdapter +import foundation.e.advancedprivacy.common.GraphHolder +import foundation.e.advancedprivacy.common.NavToolbarFragment +import foundation.e.advancedprivacy.common.setToolTipForAsterisk +import foundation.e.advancedprivacy.databinding.FragmentTrackersBinding +import foundation.e.advancedprivacy.databinding.TrackersItemGraphBinding +import foundation.e.advancedprivacy.domain.entities.TrackersPeriodicStatistics +import foundation.e.advancedprivacy.features.trackers.apptrackers.AppTrackersFragment import kotlinx.coroutines.launch class TrackersFragment : NavToolbarFragment(R.layout.fragment_trackers) { private val dependencyContainer: DependencyContainer by lazy { - (this.requireActivity().application as PrivacyCentralApplication).dependencyContainer + (this.requireActivity().application as AdvancedPrivacyApplication).dependencyContainer } private val viewModel: TrackersViewModel by viewModels { dependencyContainer.viewModelsFactory } diff --git a/app/src/main/java/foundation/e/privacycentralapp/features/trackers/TrackersState.kt b/app/src/main/java/foundation/e/advancedprivacy/features/trackers/TrackersState.kt similarity index 82% rename from app/src/main/java/foundation/e/privacycentralapp/features/trackers/TrackersState.kt rename to app/src/main/java/foundation/e/advancedprivacy/features/trackers/TrackersState.kt index a3bb80ae0bc4719f505c7f82b569765a199387fc..13719e43e55e6d1014582e9a71ffc2ce33bcff4f 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/features/trackers/TrackersState.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/features/trackers/TrackersState.kt @@ -15,10 +15,10 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.features.trackers +package foundation.e.advancedprivacy.features.trackers -import foundation.e.privacycentralapp.domain.entities.AppWithCounts -import foundation.e.privacycentralapp.domain.entities.TrackersPeriodicStatistics +import foundation.e.advancedprivacy.domain.entities.AppWithCounts +import foundation.e.advancedprivacy.domain.entities.TrackersPeriodicStatistics data class TrackersState( val dayStatistics: TrackersPeriodicStatistics? = null, diff --git a/app/src/main/java/foundation/e/privacycentralapp/features/trackers/TrackersViewModel.kt b/app/src/main/java/foundation/e/advancedprivacy/features/trackers/TrackersViewModel.kt similarity index 94% rename from app/src/main/java/foundation/e/privacycentralapp/features/trackers/TrackersViewModel.kt rename to app/src/main/java/foundation/e/advancedprivacy/features/trackers/TrackersViewModel.kt index 8b5cc329cd3bb4aebf70603f28a0dcf918730e75..bcb4df8549f4056661de3347ac22e71ff61078b2 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/features/trackers/TrackersViewModel.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/features/trackers/TrackersViewModel.kt @@ -15,13 +15,13 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.features.trackers +package foundation.e.advancedprivacy.features.trackers import android.net.Uri import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope -import foundation.e.privacycentralapp.domain.entities.AppWithCounts -import foundation.e.privacycentralapp.domain.usecases.TrackersStatisticsUseCase +import foundation.e.advancedprivacy.domain.entities.AppWithCounts +import foundation.e.advancedprivacy.domain.usecases.TrackersStatisticsUseCase import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.flow.MutableSharedFlow import kotlinx.coroutines.flow.MutableStateFlow diff --git a/app/src/main/java/foundation/e/privacycentralapp/features/trackers/apptrackers/AppTrackersFragment.kt b/app/src/main/java/foundation/e/advancedprivacy/features/trackers/apptrackers/AppTrackersFragment.kt similarity index 93% rename from app/src/main/java/foundation/e/privacycentralapp/features/trackers/apptrackers/AppTrackersFragment.kt rename to app/src/main/java/foundation/e/advancedprivacy/features/trackers/apptrackers/AppTrackersFragment.kt index 888c14074386883ce080e501be2adb0daf88f390..2bb53d60adc24e16ac55c4a5d26143633e50e9a7 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/features/trackers/apptrackers/AppTrackersFragment.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/features/trackers/apptrackers/AppTrackersFragment.kt @@ -16,7 +16,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.features.trackers.apptrackers +package foundation.e.advancedprivacy.features.trackers.apptrackers import android.content.ActivityNotFoundException import android.content.Intent @@ -31,11 +31,11 @@ import androidx.lifecycle.lifecycleScope import androidx.lifecycle.repeatOnLifecycle import androidx.recyclerview.widget.LinearLayoutManager import com.google.android.material.snackbar.Snackbar -import foundation.e.privacycentralapp.DependencyContainer -import foundation.e.privacycentralapp.PrivacyCentralApplication -import foundation.e.privacycentralapp.R -import foundation.e.privacycentralapp.common.NavToolbarFragment -import foundation.e.privacycentralapp.databinding.ApptrackersFragmentBinding +import foundation.e.advancedprivacy.AdvancedPrivacyApplication +import foundation.e.advancedprivacy.DependencyContainer +import foundation.e.advancedprivacy.R +import foundation.e.advancedprivacy.common.NavToolbarFragment +import foundation.e.advancedprivacy.databinding.ApptrackersFragmentBinding import kotlinx.coroutines.launch class AppTrackersFragment : NavToolbarFragment(R.layout.apptrackers_fragment) { @@ -53,7 +53,7 @@ class AppTrackersFragment : NavToolbarFragment(R.layout.apptrackers_fragment) { } private val dependencyContainer: DependencyContainer by lazy { - (this.requireActivity().application as PrivacyCentralApplication).dependencyContainer + (this.requireActivity().application as AdvancedPrivacyApplication).dependencyContainer } private val viewModel: AppTrackersViewModel by viewModels { diff --git a/app/src/main/java/foundation/e/privacycentralapp/features/trackers/apptrackers/AppTrackersState.kt b/app/src/main/java/foundation/e/advancedprivacy/features/trackers/apptrackers/AppTrackersState.kt similarity index 95% rename from app/src/main/java/foundation/e/privacycentralapp/features/trackers/apptrackers/AppTrackersState.kt rename to app/src/main/java/foundation/e/advancedprivacy/features/trackers/apptrackers/AppTrackersState.kt index a190a7440419435aefb82ae39e0a95d150f0e7a0..2a9e6e8218a972f490a3558ddc70eb4581325f19 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/features/trackers/apptrackers/AppTrackersState.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/features/trackers/apptrackers/AppTrackersState.kt @@ -16,7 +16,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.features.trackers.apptrackers +package foundation.e.advancedprivacy.features.trackers.apptrackers import foundation.e.privacymodules.permissions.data.ApplicationDescription import foundation.e.privacymodules.trackers.api.Tracker diff --git a/app/src/main/java/foundation/e/privacycentralapp/features/trackers/apptrackers/AppTrackersViewModel.kt b/app/src/main/java/foundation/e/advancedprivacy/features/trackers/apptrackers/AppTrackersViewModel.kt similarity index 94% rename from app/src/main/java/foundation/e/privacycentralapp/features/trackers/apptrackers/AppTrackersViewModel.kt rename to app/src/main/java/foundation/e/advancedprivacy/features/trackers/apptrackers/AppTrackersViewModel.kt index e5a94f926d6f0e0f3b65423bcd7e76a4b7c2b8bc..cda4b4b9b8e9db125845c24df64c9fc20a0bb958 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/features/trackers/apptrackers/AppTrackersViewModel.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/features/trackers/apptrackers/AppTrackersViewModel.kt @@ -16,16 +16,16 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.features.trackers.apptrackers +package foundation.e.advancedprivacy.features.trackers.apptrackers import android.net.Uri import androidx.annotation.StringRes import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope -import foundation.e.privacycentralapp.domain.entities.TrackerMode -import foundation.e.privacycentralapp.domain.usecases.GetQuickPrivacyStateUseCase -import foundation.e.privacycentralapp.domain.usecases.TrackersStateUseCase -import foundation.e.privacycentralapp.domain.usecases.TrackersStatisticsUseCase +import foundation.e.advancedprivacy.domain.entities.TrackerMode +import foundation.e.advancedprivacy.domain.usecases.GetQuickPrivacyStateUseCase +import foundation.e.advancedprivacy.domain.usecases.TrackersStateUseCase +import foundation.e.advancedprivacy.domain.usecases.TrackersStatisticsUseCase import foundation.e.privacymodules.permissions.data.ApplicationDescription import foundation.e.privacymodules.trackers.api.Tracker import kotlinx.coroutines.Dispatchers diff --git a/app/src/main/java/foundation/e/privacycentralapp/features/trackers/apptrackers/ToggleTrackersAdapter.kt b/app/src/main/java/foundation/e/advancedprivacy/features/trackers/apptrackers/ToggleTrackersAdapter.kt similarity index 96% rename from app/src/main/java/foundation/e/privacycentralapp/features/trackers/apptrackers/ToggleTrackersAdapter.kt rename to app/src/main/java/foundation/e/advancedprivacy/features/trackers/apptrackers/ToggleTrackersAdapter.kt index 197f13fe87b3cd8a38ef00e8d2868db09c30eb9a..369693934bd959bd629958418991e3b210ade9a0 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/features/trackers/apptrackers/ToggleTrackersAdapter.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/features/trackers/apptrackers/ToggleTrackersAdapter.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.features.trackers.apptrackers +package foundation.e.advancedprivacy.features.trackers.apptrackers import android.text.SpannableString import android.text.style.UnderlineSpan @@ -26,7 +26,7 @@ import android.widget.Switch import android.widget.TextView import androidx.core.content.ContextCompat import androidx.recyclerview.widget.RecyclerView -import foundation.e.privacycentralapp.R +import foundation.e.advancedprivacy.R import foundation.e.privacymodules.trackers.api.Tracker class ToggleTrackersAdapter( diff --git a/app/src/main/java/foundation/e/privacycentralapp/main/MainActivity.kt b/app/src/main/java/foundation/e/advancedprivacy/main/MainActivity.kt similarity index 90% rename from app/src/main/java/foundation/e/privacycentralapp/main/MainActivity.kt rename to app/src/main/java/foundation/e/advancedprivacy/main/MainActivity.kt index 92dc326931bfc84f5df225e301c07a49829ab13f..ec33e254ab05126e42d13aa10d7d92996573c932 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/main/MainActivity.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/main/MainActivity.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.main +package foundation.e.advancedprivacy.main import android.app.Activity import android.content.Context @@ -24,11 +24,11 @@ import android.os.Bundle import androidx.fragment.app.FragmentActivity import androidx.fragment.app.add import androidx.fragment.app.commit -import foundation.e.privacycentralapp.R -import foundation.e.privacycentralapp.features.dashboard.DashboardFragment -import foundation.e.privacycentralapp.features.internetprivacy.InternetPrivacyFragment -import foundation.e.privacycentralapp.features.location.FakeLocationFragment -import foundation.e.privacycentralapp.features.trackers.TrackersFragment +import foundation.e.advancedprivacy.R +import foundation.e.advancedprivacy.features.dashboard.DashboardFragment +import foundation.e.advancedprivacy.features.internetprivacy.InternetPrivacyFragment +import foundation.e.advancedprivacy.features.location.FakeLocationFragment +import foundation.e.advancedprivacy.features.trackers.TrackersFragment open class MainActivity : FragmentActivity(R.layout.activity_main) { override fun onPostCreate(savedInstanceState: Bundle?) { diff --git a/app/src/main/java/foundation/e/privacycentralapp/widget/Widget.kt b/app/src/main/java/foundation/e/advancedprivacy/widget/Widget.kt similarity index 94% rename from app/src/main/java/foundation/e/privacycentralapp/widget/Widget.kt rename to app/src/main/java/foundation/e/advancedprivacy/widget/Widget.kt index 3abe21bc1a43dd95f27b3e42e1f063d97eb5f739..a4272e21e11582fd3636ff59fe0bf3b3f6ef9aff 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/widget/Widget.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/widget/Widget.kt @@ -15,16 +15,16 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp +package foundation.e.advancedprivacy import android.appwidget.AppWidgetManager import android.appwidget.AppWidgetProvider import android.content.Context import android.os.Bundle -import foundation.e.privacycentralapp.domain.usecases.GetQuickPrivacyStateUseCase -import foundation.e.privacycentralapp.domain.usecases.TrackersStatisticsUseCase -import foundation.e.privacycentralapp.widget.State -import foundation.e.privacycentralapp.widget.render +import foundation.e.advancedprivacy.domain.usecases.GetQuickPrivacyStateUseCase +import foundation.e.advancedprivacy.domain.usecases.TrackersStatisticsUseCase +import foundation.e.advancedprivacy.widget.State +import foundation.e.advancedprivacy.widget.render import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.DelicateCoroutinesApi import kotlinx.coroutines.Dispatchers diff --git a/app/src/main/java/foundation/e/privacycentralapp/widget/WidgetCommandReceiver.kt b/app/src/main/java/foundation/e/advancedprivacy/widget/WidgetCommandReceiver.kt similarity index 88% rename from app/src/main/java/foundation/e/privacycentralapp/widget/WidgetCommandReceiver.kt rename to app/src/main/java/foundation/e/advancedprivacy/widget/WidgetCommandReceiver.kt index e01f47ff5f0a966fb7c6f8612a6e118463c17e12..f68a59c896089b9ab86c2fe8c5e59af3c6d7805b 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/widget/WidgetCommandReceiver.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/widget/WidgetCommandReceiver.kt @@ -15,16 +15,16 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.widget +package foundation.e.advancedprivacy.widget import android.content.BroadcastReceiver import android.content.Context import android.content.Intent -import foundation.e.privacycentralapp.PrivacyCentralApplication +import foundation.e.advancedprivacy.AdvancedPrivacyApplication class WidgetCommandReceiver : BroadcastReceiver() { override fun onReceive(context: Context?, intent: Intent?) { - val getQuickPrivacyStateUseCase = (context?.applicationContext as? PrivacyCentralApplication)?.dependencyContainer?.getQuickPrivacyStateUseCase + val getQuickPrivacyStateUseCase = (context?.applicationContext as? AdvancedPrivacyApplication)?.dependencyContainer?.getQuickPrivacyStateUseCase when (intent?.action) { ACTION_TOGGLE_TRACKERS -> getQuickPrivacyStateUseCase?.toggleTrackers() diff --git a/app/src/main/java/foundation/e/privacycentralapp/widget/WidgetUI.kt b/app/src/main/java/foundation/e/advancedprivacy/widget/WidgetUI.kt similarity index 94% rename from app/src/main/java/foundation/e/privacycentralapp/widget/WidgetUI.kt rename to app/src/main/java/foundation/e/advancedprivacy/widget/WidgetUI.kt index fccfd4854ecb323b6578fec75beca1281fe04800..cb7fe5c61c96ae28c173c40de04b786bbbaa84a5 100644 --- a/app/src/main/java/foundation/e/privacycentralapp/widget/WidgetUI.kt +++ b/app/src/main/java/foundation/e/advancedprivacy/widget/WidgetUI.kt @@ -15,7 +15,7 @@ * along with this program. If not, see . */ -package foundation.e.privacycentralapp.widget +package foundation.e.advancedprivacy.widget import android.app.PendingIntent import android.app.PendingIntent.FLAG_IMMUTABLE @@ -26,17 +26,17 @@ import android.content.Context import android.content.Intent import android.view.View import android.widget.RemoteViews -import foundation.e.privacycentralapp.R -import foundation.e.privacycentralapp.Widget -import foundation.e.privacycentralapp.Widget.Companion.isDarkText -import foundation.e.privacycentralapp.common.extensions.dpToPxF -import foundation.e.privacycentralapp.domain.entities.InternetPrivacyMode -import foundation.e.privacycentralapp.domain.entities.QuickPrivacyState -import foundation.e.privacycentralapp.domain.entities.TrackerMode -import foundation.e.privacycentralapp.main.MainActivity -import foundation.e.privacycentralapp.widget.WidgetCommandReceiver.Companion.ACTION_TOGGLE_IPSCRAMBLING -import foundation.e.privacycentralapp.widget.WidgetCommandReceiver.Companion.ACTION_TOGGLE_LOCATION -import foundation.e.privacycentralapp.widget.WidgetCommandReceiver.Companion.ACTION_TOGGLE_TRACKERS +import foundation.e.advancedprivacy.R +import foundation.e.advancedprivacy.Widget +import foundation.e.advancedprivacy.Widget.Companion.isDarkText +import foundation.e.advancedprivacy.common.extensions.dpToPxF +import foundation.e.advancedprivacy.domain.entities.InternetPrivacyMode +import foundation.e.advancedprivacy.domain.entities.QuickPrivacyState +import foundation.e.advancedprivacy.domain.entities.TrackerMode +import foundation.e.advancedprivacy.main.MainActivity +import foundation.e.advancedprivacy.widget.WidgetCommandReceiver.Companion.ACTION_TOGGLE_IPSCRAMBLING +import foundation.e.advancedprivacy.widget.WidgetCommandReceiver.Companion.ACTION_TOGGLE_LOCATION +import foundation.e.advancedprivacy.widget.WidgetCommandReceiver.Companion.ACTION_TOGGLE_TRACKERS data class State( val quickPrivacyState: QuickPrivacyState = QuickPrivacyState.DISABLED, diff --git a/app/src/main/res/layout/fragment_fake_location.xml b/app/src/main/res/layout/fragment_fake_location.xml index 47b86bfd3adb2486c9a974dd9ece565e3b7d6416..0c95fc8ade2dbbb94a5dff57849e2284480dced4 100644 --- a/app/src/main/res/layout/fragment_fake_location.xml +++ b/app/src/main/res/layout/fragment_fake_location.xml @@ -41,7 +41,7 @@ android:layout_marginTop="16dp" > - - - - - - -