aboutsummaryrefslogtreecommitdiffstats
path: root/app/src/main/java/foundation/e/privacycentralapp/domain
diff options
context:
space:
mode:
authorGuillaume Jacquart <guillaume.jacquart@hoodbrains.com>2022-02-24 07:46:24 +0000
committerGuillaume Jacquart <guillaume.jacquart@hoodbrains.com>2022-02-24 07:46:24 +0000
commit323d28aa26beace64186a33a0557e2e7ad4771af (patch)
tree97446224925c34be4ed09e6d0ce679275f698726 /app/src/main/java/foundation/e/privacycentralapp/domain
parent6abf3b8bbcec463dcea8acbba63872d587ff2779 (diff)
parent650a067529cdf65cc9a9130c91511adfb4b64c98 (diff)
downloadadvanced-privacy-323d28aa26beace64186a33a0557e2e7ad4771af.tar.gz
Merge branch 'UX_trackers_updates' into 'main'
Access trackers list when QP disabled: #4591, #4596, #4601 See merge request e/privacy-central/privacycentralapp!17
Diffstat (limited to 'app/src/main/java/foundation/e/privacycentralapp/domain')
-rw-r--r--app/src/main/java/foundation/e/privacycentralapp/domain/entities/TrackersPeriodicStatistics.kt24
-rw-r--r--app/src/main/java/foundation/e/privacycentralapp/domain/usecases/FakeLocationStateUseCase.kt4
-rw-r--r--app/src/main/java/foundation/e/privacycentralapp/domain/usecases/IpScramblingStateUseCase.kt10
-rw-r--r--app/src/main/java/foundation/e/privacycentralapp/domain/usecases/TrackersStatisticsUseCase.kt23
4 files changed, 40 insertions, 21 deletions
diff --git a/app/src/main/java/foundation/e/privacycentralapp/domain/entities/TrackersPeriodicStatistics.kt b/app/src/main/java/foundation/e/privacycentralapp/domain/entities/TrackersPeriodicStatistics.kt
new file mode 100644
index 0000000..8a27d6d
--- /dev/null
+++ b/app/src/main/java/foundation/e/privacycentralapp/domain/entities/TrackersPeriodicStatistics.kt
@@ -0,0 +1,24 @@
+/*
+ * Copyright (C) 2022 E FOUNDATION
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <https://www.gnu.org/licenses/>.
+ */
+
+package foundation.e.privacycentralapp.domain.entities
+
+data class TrackersPeriodicStatistics(
+ val calls: List<Int>,
+ val periods: List<String>,
+ val trackersCount: Int
+)
diff --git a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/FakeLocationStateUseCase.kt b/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/FakeLocationStateUseCase.kt
index 5850dc4..32affe0 100644
--- a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/FakeLocationStateUseCase.kt
+++ b/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/FakeLocationStateUseCase.kt
@@ -132,7 +132,6 @@ class FakeLocationStateUseCase(
val providerName = LocationManager.NETWORK_PROVIDER
override fun onLocationChanged(location: Location) {
- Log.e("DebugLoc", "onLocationChanged $location")
currentLocation.value = location
}
@@ -140,12 +139,10 @@ class FakeLocationStateUseCase(
override fun onStatusChanged(provider: String?, status: Int, extras: Bundle?) {}
override fun onProviderEnabled(provider: String?) {
- Log.e("DebugLoc", "ProvuderEnabled: $provider")
reset(provider)
}
override fun onProviderDisabled(provider: String?) {
- Log.e("DebugLoc", "ProvuderDisabled: $provider")
reset(provider)
}
@@ -169,7 +166,6 @@ class FakeLocationStateUseCase(
fun requestLocationUpdates(listener: LocationListener) {
acquireLocationPermission()
try {
- Log.e("DebugLoc", "requestLocationUpdates")
locationManager.requestLocationUpdates(
LocationManager.NETWORK_PROVIDER, // TODO: tight this with fakelocation module.
0L,
diff --git a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/IpScramblingStateUseCase.kt b/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/IpScramblingStateUseCase.kt
index 9e83eb1..237e5b2 100644
--- a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/IpScramblingStateUseCase.kt
+++ b/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/IpScramblingStateUseCase.kt
@@ -17,7 +17,6 @@
package foundation.e.privacycentralapp.domain.usecases
-import android.util.Log
import foundation.e.privacycentralapp.data.repositories.LocalStateRepository
import foundation.e.privacycentralapp.domain.entities.InternetPrivacyMode
import foundation.e.privacymodules.ipscramblermodule.IIpScramblerModule
@@ -102,16 +101,11 @@ class IpScramblingStateUseCase(
}
ipScramblerModule.start(enableNotification = false)
}
- else -> {
- Log.d("testQPFlow", "Not starting tor, already in started state")
- }
+ else -> {}
}
else -> when (internetPrivacyMode.value) {
InternetPrivacyMode.HIDE_IP, InternetPrivacyMode.HIDE_IP_LOADING -> ipScramblerModule.stop()
-
- else -> {
- Log.d("testQPFlow", "Not stoping tor, already in stop or stoping state")
- }
+ else -> {}
}
}
}
diff --git a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/TrackersStatisticsUseCase.kt b/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/TrackersStatisticsUseCase.kt
index 1e1728c..ad5c86c 100644
--- a/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/TrackersStatisticsUseCase.kt
+++ b/app/src/main/java/foundation/e/privacycentralapp/domain/usecases/TrackersStatisticsUseCase.kt
@@ -17,6 +17,9 @@
package foundation.e.privacycentralapp.domain.usecases
+import android.content.res.Resources
+import foundation.e.privacycentralapp.R
+import foundation.e.privacycentralapp.domain.entities.TrackersPeriodicStatistics
import foundation.e.privacymodules.trackers.ITrackTrackersPrivacyModule
import foundation.e.privacymodules.trackers.Tracker
import kotlinx.coroutines.channels.awaitClose
@@ -26,13 +29,9 @@ import java.time.ZonedDateTime
import java.time.format.DateTimeFormatter
import java.time.temporal.ChronoUnit
-data class TrackersPeriodicStatistics(
- val calls: List<Int>,
- val periods: List<String>,
- val trackersCount: Int
-)
class TrackersStatisticsUseCase(
- private val trackTrackersPrivacyModule: ITrackTrackersPrivacyModule
+ private val trackTrackersPrivacyModule: ITrackTrackersPrivacyModule,
+ private val resources: Resources
) {
fun listenUpdates(): Flow<Unit> = callbackFlow {
@@ -53,7 +52,9 @@ class TrackersStatisticsUseCase(
}
private fun buildDayLabels(): List<String> {
- val formater = DateTimeFormatter.ofPattern("HH:mm")
+ val formater = DateTimeFormatter.ofPattern(
+ resources.getString(R.string.trackers_graph_hours_period_format)
+ )
val periods = mutableListOf<String>()
var end = ZonedDateTime.now()
for (i in 1..24) {
@@ -65,7 +66,9 @@ class TrackersStatisticsUseCase(
}
private fun buildMonthLabels(): List<String> {
- val formater = DateTimeFormatter.ofPattern("MMM d - EEE")
+ val formater = DateTimeFormatter.ofPattern(
+ resources.getString(R.string.trackers_graph_days_period_format)
+ )
val periods = mutableListOf<String>()
var day = ZonedDateTime.now().truncatedTo(ChronoUnit.DAYS)
for (i in 1..30) {
@@ -76,7 +79,9 @@ class TrackersStatisticsUseCase(
}
private fun buildYearLabels(): List<String> {
- val formater = DateTimeFormatter.ofPattern("MMM yyyy")
+ val formater = DateTimeFormatter.ofPattern(
+ resources.getString(R.string.trackers_graph_months_period_format)
+ )
val periods = mutableListOf<String>()
var month = ZonedDateTime.now().truncatedTo(ChronoUnit.DAYS).withDayOfMonth(1)
for (i in 1..12) {