summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--desktop/packages/mullvad-vpn/src/renderer/components/views/split-tunneling/components/linux-settings/LinuxSettings.tsx14
1 files changed, 10 insertions, 4 deletions
diff --git a/desktop/packages/mullvad-vpn/src/renderer/components/views/split-tunneling/components/linux-settings/LinuxSettings.tsx b/desktop/packages/mullvad-vpn/src/renderer/components/views/split-tunneling/components/linux-settings/LinuxSettings.tsx
index fc9a7c3ca3..ba9da0aaa4 100644
--- a/desktop/packages/mullvad-vpn/src/renderer/components/views/split-tunneling/components/linux-settings/LinuxSettings.tsx
+++ b/desktop/packages/mullvad-vpn/src/renderer/components/views/split-tunneling/components/linux-settings/LinuxSettings.tsx
@@ -15,14 +15,20 @@ import { useShowLinuxApplicationList, useShowNoSearchResult, useShowSpinner } fr
import { LinuxSettingsContextProvider, useLinuxSettingsContext } from './LinuxSettingsContext';
function LinuxSettingsInner() {
- const { getLinuxSplitTunnelingApplications } = useAppContext();
- const { searchTerm, setApplications, setSearchTerm } = useLinuxSettingsContext();
+ const { getLinuxSplitTunnelingSupported, getLinuxSplitTunnelingApplications } = useAppContext();
+ const { searchTerm, setApplications, setSearchTerm, setSplitTunnelingSupported } =
+ useLinuxSettingsContext();
const runAfterTransition = useAfterTransition();
const showLinuxApplicationList = useShowLinuxApplicationList();
const showNoSearchResult = useShowNoSearchResult();
const showSpinner = useShowSpinner();
- const updateApplications = useEffectEvent(() => {
+ const onMount = useEffectEvent(() => {
+ runAfterTransition(async () => {
+ const linuxSplitTunnelingSupported = await getLinuxSplitTunnelingSupported();
+ setSplitTunnelingSupported(linuxSplitTunnelingSupported);
+ });
+
runAfterTransition(async () => {
const applications = await getLinuxSplitTunnelingApplications();
setApplications(applications);
@@ -34,7 +40,7 @@ function LinuxSettingsInner() {
// Enable these rules again when eslint can lint useEffectEvent properly.
// eslint-disable-next-line react-compiler/react-compiler
// eslint-disable-next-line react-hooks/exhaustive-deps
- useEffect(() => void updateApplications(), []);
+ useEffect(() => void onMount(), []);
return (
<>