fix: notification channel creation bug

Fixes a crash that is caused by a typo when creating a new notification channel.

Also makes VPN kill switch visible on TVs
This commit is contained in:
Zane Schepke 2024-12-11 00:03:39 -05:00
parent 6762d4733e
commit d84d9df57d
3 changed files with 63 additions and 59 deletions

View File

@ -86,13 +86,13 @@ constructor(
fun NotificationChannels.asBuilder(): NotificationCompat.Builder { fun NotificationChannels.asBuilder(): NotificationCompat.Builder {
return when (this) { return when (this) {
NotificationChannels.VPN -> { NotificationChannels.AUTO_TUNNEL -> {
NotificationCompat.Builder( NotificationCompat.Builder(
context, context,
context.getString(R.string.auto_tunnel_channel_id), context.getString(R.string.auto_tunnel_channel_id),
) )
} }
NotificationChannels.AUTO_TUNNEL -> { NotificationChannels.VPN -> {
NotificationCompat.Builder( NotificationCompat.Builder(
context, context,
context.getString(R.string.vpn_channel_id), context.getString(R.string.vpn_channel_id),

View File

@ -151,8 +151,7 @@ fun SettingsScreen(viewModel: SettingsViewModel = hiltViewModel(), appViewModel:
), ),
) )
if (!isRunningOnTv) { if (!isRunningOnTv) {
addAll( add(
listOf(
SelectionItem( SelectionItem(
Icons.Outlined.VpnLock, Icons.Outlined.VpnLock,
{ {
@ -177,6 +176,9 @@ fun SettingsScreen(viewModel: SettingsViewModel = hiltViewModel(), appViewModel:
}, },
onClick = { appViewModel.onToggleAlwaysOnVPN() }, onClick = { appViewModel.onToggleAlwaysOnVPN() },
), ),
)
}
add(
SelectionItem( SelectionItem(
Icons.Outlined.VpnKeyOff, Icons.Outlined.VpnKeyOff,
title = { title = {
@ -192,9 +194,8 @@ fun SettingsScreen(viewModel: SettingsViewModel = hiltViewModel(), appViewModel:
ForwardButton { navController.navigate(Route.KillSwitch) } ForwardButton { navController.navigate(Route.KillSwitch) }
}, },
), ),
),
) )
}
add( add(
SelectionItem( SelectionItem(
Icons.Outlined.Restore, Icons.Outlined.Restore,

View File

@ -26,6 +26,7 @@ import com.zaneschepke.wireguardautotunnel.ui.common.button.surface.SurfaceSelec
import com.zaneschepke.wireguardautotunnel.ui.common.navigation.TopNavBar import com.zaneschepke.wireguardautotunnel.ui.common.navigation.TopNavBar
import com.zaneschepke.wireguardautotunnel.ui.common.permission.vpn.withVpnPermission import com.zaneschepke.wireguardautotunnel.ui.common.permission.vpn.withVpnPermission
import com.zaneschepke.wireguardautotunnel.ui.screens.settings.components.ForwardButton import com.zaneschepke.wireguardautotunnel.ui.screens.settings.components.ForwardButton
import com.zaneschepke.wireguardautotunnel.util.extensions.isRunningOnTv
import com.zaneschepke.wireguardautotunnel.util.extensions.launchVpnSettings import com.zaneschepke.wireguardautotunnel.util.extensions.launchVpnSettings
import com.zaneschepke.wireguardautotunnel.util.extensions.scaledHeight import com.zaneschepke.wireguardautotunnel.util.extensions.scaledHeight
import com.zaneschepke.wireguardautotunnel.util.extensions.scaledWidth import com.zaneschepke.wireguardautotunnel.util.extensions.scaledWidth
@ -66,6 +67,7 @@ fun KillSwitchScreen(uiState: AppUiState, appViewModel: AppViewModel) {
.padding(top = 24.dp.scaledHeight()) .padding(top = 24.dp.scaledHeight())
.padding(horizontal = 24.dp.scaledWidth()), .padding(horizontal = 24.dp.scaledWidth()),
) { ) {
if (!context.isRunningOnTv()) {
SurfaceSelectionGroupButton( SurfaceSelectionGroupButton(
listOf( listOf(
SelectionItem( SelectionItem(
@ -83,6 +85,7 @@ fun KillSwitchScreen(uiState: AppUiState, appViewModel: AppViewModel) {
), ),
), ),
) )
}
SurfaceSelectionGroupButton( SurfaceSelectionGroupButton(
buildList { buildList {
add( add(