aboutsummaryrefslogtreecommitdiffstats
path: root/app/src/main/java/foundation/e/privacycentralapp/widget
diff options
context:
space:
mode:
authorGuillaume Jacquart <guillaume.jacquart@hoodbrains.com>2022-04-29 16:47:04 +0000
committerGuillaume Jacquart <guillaume.jacquart@hoodbrains.com>2022-04-29 16:47:04 +0000
commit0313e2912dea8a1bd9108e527485e961fb62b2fc (patch)
treef51b3cbc50922888a30bc09e131123012cf52053 /app/src/main/java/foundation/e/privacycentralapp/widget
parente1d3be6e413501d1a1e4036c0b6634e072619ecd (diff)
downloadadvanced-privacy-0313e2912dea8a1bd9108e527485e961fb62b2fc.tar.gz
226 Highlight leaks from widget click
Diffstat (limited to 'app/src/main/java/foundation/e/privacycentralapp/widget')
-rw-r--r--app/src/main/java/foundation/e/privacycentralapp/widget/WidgetUI.kt45
1 files changed, 43 insertions, 2 deletions
diff --git a/app/src/main/java/foundation/e/privacycentralapp/widget/WidgetUI.kt b/app/src/main/java/foundation/e/privacycentralapp/widget/WidgetUI.kt
index 57ddd0c..81859e6 100644
--- a/app/src/main/java/foundation/e/privacycentralapp/widget/WidgetUI.kt
+++ b/app/src/main/java/foundation/e/privacycentralapp/widget/WidgetUI.kt
@@ -51,7 +51,10 @@ fun render(
val views = RemoteViews(context.packageName, R.layout.widget)
views.apply {
val openPIntent = PendingIntent.getActivity(
- context, 0, Intent(context, MainActivity::class.java), FLAG_UPDATE_CURRENT
+ context,
+ REQUEST_CODE_DASHBOARD,
+ Intent(context, MainActivity::class.java),
+ FLAG_UPDATE_CURRENT
)
setOnClickPendingIntent(R.id.settings_btn, openPIntent)
setOnClickPendingIntent(R.id.widget_container, openPIntent)
@@ -81,7 +84,7 @@ fun render(
R.id.toggle_privacy_central,
PendingIntent.getBroadcast(
context,
- 0,
+ REQUEST_CODE_TOGGLE,
Intent(context, WidgetCommandReceiver::class.java).apply {
action = ACTION_TOGGLE_PRIVACY
},
@@ -146,6 +149,13 @@ fun render(
// leacked (the bar above)
val topPadding = graphHeightPx - (blocked + leaked) * ratio
setViewPadding(leakedBarIds[index], 0, topPadding.toInt(), 0, 0)
+
+ val highlightPIntent = PendingIntent.getActivity(
+ context, REQUEST_CODE_HIGHLIGHT + index,
+ MainActivity.createHighlightLeaksIntent(context, index),
+ FLAG_UPDATE_CURRENT
+ )
+ setOnClickPendingIntent(containerBarIds[index], highlightPIntent)
}
setTextViewText(
@@ -161,6 +171,33 @@ fun render(
appWidgetManager.updateAppWidget(ComponentName(context, Widget::class.java), views)
}
+private val containerBarIds = listOf(
+ R.id.widget_graph_bar_container_0,
+ R.id.widget_graph_bar_container_1,
+ R.id.widget_graph_bar_container_2,
+ R.id.widget_graph_bar_container_3,
+ R.id.widget_graph_bar_container_4,
+ R.id.widget_graph_bar_container_5,
+ R.id.widget_graph_bar_container_6,
+ R.id.widget_graph_bar_container_7,
+ R.id.widget_graph_bar_container_8,
+ R.id.widget_graph_bar_container_9,
+ R.id.widget_graph_bar_container_10,
+ R.id.widget_graph_bar_container_11,
+ R.id.widget_graph_bar_container_12,
+ R.id.widget_graph_bar_container_13,
+ R.id.widget_graph_bar_container_14,
+ R.id.widget_graph_bar_container_15,
+ R.id.widget_graph_bar_container_16,
+ R.id.widget_graph_bar_container_17,
+ R.id.widget_graph_bar_container_18,
+ R.id.widget_graph_bar_container_19,
+ R.id.widget_graph_bar_container_20,
+ R.id.widget_graph_bar_container_21,
+ R.id.widget_graph_bar_container_22,
+ R.id.widget_graph_bar_container_23,
+)
+
private val blockedBarIds = listOf(
R.id.widget_graph_bar_0,
R.id.widget_graph_bar_1,
@@ -214,3 +251,7 @@ private val leakedBarIds = listOf(
R.id.widget_leaked_graph_bar_22,
R.id.widget_leaked_graph_bar_23
)
+
+private const val REQUEST_CODE_DASHBOARD = 1
+private const val REQUEST_CODE_TOGGLE = 2
+private const val REQUEST_CODE_HIGHLIGHT = 100