From 44269fd8bc4bdbfae0bca8c00cce38e48a390a96 Mon Sep 17 00:00:00 2001 From: Cris Barreiro Date: Fri, 31 Jan 2025 13:29:03 +0100 Subject: [PATCH] Integrate privacy dashboard --- .../dashboard/impl/ui/PrivacyDashboardHybridViewModel.kt | 2 ++ .../privacy/dashboard/impl/ui/PrivacyDashboardRenderer.kt | 3 +++ 2 files changed, 5 insertions(+) diff --git a/privacy-dashboard/privacy-dashboard-impl/src/main/java/com/duckduckgo/privacy/dashboard/impl/ui/PrivacyDashboardHybridViewModel.kt b/privacy-dashboard/privacy-dashboard-impl/src/main/java/com/duckduckgo/privacy/dashboard/impl/ui/PrivacyDashboardHybridViewModel.kt index dedd8f6b0e28..1139a5dac007 100644 --- a/privacy-dashboard/privacy-dashboard-impl/src/main/java/com/duckduckgo/privacy/dashboard/impl/ui/PrivacyDashboardHybridViewModel.kt +++ b/privacy-dashboard/privacy-dashboard-impl/src/main/java/com/duckduckgo/privacy/dashboard/impl/ui/PrivacyDashboardHybridViewModel.kt @@ -117,6 +117,7 @@ class PrivacyDashboardHybridViewModel @Inject constructor( val protectionStatus: ProtectionStatusViewState, val cookiePromptManagementStatus: CookiePromptManagementState, val remoteFeatureSettings: RemoteFeatureSettingsViewState, + val maliciousSiteStatus: String? = null, ) data class ProtectionStatusViewState( @@ -289,6 +290,7 @@ class PrivacyDashboardHybridViewModel @Inject constructor( protectionStatus = protectionStatusViewStateMapper.mapFromSite(site), cookiePromptManagementStatus = autoconsentStatusViewStateMapper.mapFromSite(site), remoteFeatureSettings = createRemoteFeatureSettings(), + maliciousSiteStatus = site.maliciousSiteStatus?.name?.lowercase(), ), ) } diff --git a/privacy-dashboard/privacy-dashboard-impl/src/main/java/com/duckduckgo/privacy/dashboard/impl/ui/PrivacyDashboardRenderer.kt b/privacy-dashboard/privacy-dashboard-impl/src/main/java/com/duckduckgo/privacy/dashboard/impl/ui/PrivacyDashboardRenderer.kt index ce086b8c03b6..d25be381c618 100644 --- a/privacy-dashboard/privacy-dashboard-impl/src/main/java/com/duckduckgo/privacy/dashboard/impl/ui/PrivacyDashboardRenderer.kt +++ b/privacy-dashboard/privacy-dashboard-impl/src/main/java/com/duckduckgo/privacy/dashboard/impl/ui/PrivacyDashboardRenderer.kt @@ -87,6 +87,9 @@ class PrivacyDashboardRenderer( val cookiePromptManagementStatusJson = cookiePromptManagementStatusAdapter.toJson(viewState.cookiePromptManagementStatus) webView.evaluateJavascript("javascript:onChangeConsentManaged($cookiePromptManagementStatusJson);", null) + val maliciousStateJson = """{"kind": "${viewState.maliciousSiteStatus}"}""" + webView.evaluateJavascript("javascript:onChangeMaliciousSiteStatus($maliciousStateJson);", null) + // remote feature settings val remoteFeatureSettingsAdapter = moshi.adapter(RemoteFeatureSettingsViewState::class.java) val remoteFeatureSettingsJson = remoteFeatureSettingsAdapter.toJson(viewState.remoteFeatureSettings)