diff options
| author | David Lönnhager <david.l@mullvad.net> | 2023-09-29 13:49:06 +0200 |
|---|---|---|
| committer | David Lönnhager <david.l@mullvad.net> | 2023-09-29 14:34:59 +0200 |
| commit | e67ded577e10355b115b78600924bba797afabc9 (patch) | |
| tree | 37867cd80dda649ce3aba9f970f19ab618e15745 /gui/src | |
| parent | 4065b91a915853548f3ba4799e5b01e40381cc4d (diff) | |
| download | mullvadvpn-e67ded577e10355b115b78600924bba797afabc9.tar.xz mullvadvpn-e67ded577e10355b115b78600924bba797afabc9.zip | |
Add social media blocking server
Diffstat (limited to 'gui/src')
| -rw-r--r-- | gui/src/main/daemon-rpc.ts | 2 | ||||
| -rw-r--r-- | gui/src/main/default-settings.ts | 1 | ||||
| -rw-r--r-- | gui/src/renderer/components/CustomDnsSettings.tsx | 3 | ||||
| -rw-r--r-- | gui/src/renderer/components/VpnSettings.tsx | 26 | ||||
| -rw-r--r-- | gui/src/renderer/redux/settings/reducers.ts | 1 | ||||
| -rw-r--r-- | gui/src/shared/daemon-rpc-types.ts | 1 |
6 files changed, 33 insertions, 1 deletions
diff --git a/gui/src/main/daemon-rpc.ts b/gui/src/main/daemon-rpc.ts index ed9fb77b48..fbaa2fe9d9 100644 --- a/gui/src/main/daemon-rpc.ts +++ b/gui/src/main/daemon-rpc.ts @@ -539,6 +539,7 @@ export class DaemonRpc { defaultOptions.setBlockMalware(dns.defaultOptions.blockMalware); defaultOptions.setBlockAdultContent(dns.defaultOptions.blockAdultContent); defaultOptions.setBlockGambling(dns.defaultOptions.blockGambling); + defaultOptions.setBlockSocialMedia(dns.defaultOptions.blockSocialMedia); dnsOptions.setDefaultOptions(defaultOptions); const customOptions = new grpcTypes.CustomDnsOptions(); @@ -1272,6 +1273,7 @@ function convertFromTunnelOptions(tunnelOptions: grpcTypes.TunnelOptions.AsObjec blockMalware: tunnelOptions.dnsOptions?.defaultOptions?.blockMalware ?? false, blockAdultContent: tunnelOptions.dnsOptions?.defaultOptions?.blockAdultContent ?? false, blockGambling: tunnelOptions.dnsOptions?.defaultOptions?.blockGambling ?? false, + blockSocialMedia: tunnelOptions.dnsOptions?.defaultOptions?.blockSocialMedia ?? false, }, customOptions: { addresses: tunnelOptions.dnsOptions?.customOptions?.addressesList ?? [], diff --git a/gui/src/main/default-settings.ts b/gui/src/main/default-settings.ts index 9989575f80..40c75042f8 100644 --- a/gui/src/main/default-settings.ts +++ b/gui/src/main/default-settings.ts @@ -55,6 +55,7 @@ export function getDefaultSettings(): ISettings { blockMalware: false, blockAdultContent: false, blockGambling: false, + blockSocialMedia: false, }, customOptions: { addresses: [], diff --git a/gui/src/renderer/components/CustomDnsSettings.tsx b/gui/src/renderer/components/CustomDnsSettings.tsx index fbf7d3dce0..824e010970 100644 --- a/gui/src/renderer/components/CustomDnsSettings.tsx +++ b/gui/src/renderer/components/CustomDnsSettings.tsx @@ -52,7 +52,8 @@ export default function CustomDnsSettings() { !dns.defaultOptions.blockTrackers && !dns.defaultOptions.blockMalware && !dns.defaultOptions.blockAdultContent && - !dns.defaultOptions.blockGambling), + !dns.defaultOptions.blockGambling && + !dns.defaultOptions.blockSocialMedia), [dns], ); diff --git a/gui/src/renderer/components/VpnSettings.tsx b/gui/src/renderer/components/VpnSettings.tsx index 676ae4f484..13a4503d71 100644 --- a/gui/src/renderer/components/VpnSettings.tsx +++ b/gui/src/renderer/components/VpnSettings.tsx @@ -285,6 +285,7 @@ function DnsBlockers() { <BlockMalware /> <BlockGambling /> <BlockAdultContent /> + <BlockSocialMedia /> </Cell.ExpandableSection> ); } @@ -420,6 +421,31 @@ function BlockAdultContent() { /> </AriaInput> </StyledSectionItem> + </AriaInputGroup> + ); +} + +function BlockSocialMedia() { + const [dns, setBlockSocialMedia] = useDns('blockSocialMedia'); + + return ( + <AriaInputGroup> + <StyledSectionItem disabled={dns.state === 'custom'}> + <AriaLabel> + <Cell.InputLabel> + { + // TRANSLATORS: Label for settings that enables block of social media. + messages.pgettext('vpn-settings-view', 'Social media') + } + </Cell.InputLabel> + </AriaLabel> + <AriaInput> + <Cell.Switch + isOn={dns.state === 'default' && dns.defaultOptions.blockSocialMedia} + onChange={setBlockSocialMedia} + /> + </AriaInput> + </StyledSectionItem> {dns.state === 'custom' && <CustomDnsEnabledFooter />} </AriaInputGroup> ); diff --git a/gui/src/renderer/redux/settings/reducers.ts b/gui/src/renderer/redux/settings/reducers.ts index 576253bb48..2030d70844 100644 --- a/gui/src/renderer/redux/settings/reducers.ts +++ b/gui/src/renderer/redux/settings/reducers.ts @@ -155,6 +155,7 @@ const initialState: ISettingsReduxState = { blockMalware: false, blockAdultContent: false, blockGambling: false, + blockSocialMedia: false, }, customOptions: { addresses: [], diff --git a/gui/src/shared/daemon-rpc-types.ts b/gui/src/shared/daemon-rpc-types.ts index a336d00d27..9af927070a 100644 --- a/gui/src/shared/daemon-rpc-types.ts +++ b/gui/src/shared/daemon-rpc-types.ts @@ -328,6 +328,7 @@ export interface IDnsOptions { blockMalware: boolean; blockAdultContent: boolean; blockGambling: boolean; + blockSocialMedia: boolean; }; } |
