diff --git a/kotlin/android/app/src/main/java/dev/firezone/android/features/session/ui/ResourcesAdapter.kt b/kotlin/android/app/src/main/java/dev/firezone/android/features/session/ui/ResourcesAdapter.kt index 7942aa288..f6a6a4960 100644 --- a/kotlin/android/app/src/main/java/dev/firezone/android/features/session/ui/ResourcesAdapter.kt +++ b/kotlin/android/app/src/main/java/dev/firezone/android/features/session/ui/ResourcesAdapter.kt @@ -52,7 +52,7 @@ internal class ResourcesAdapter(private val activity: SessionActivity) : ListAda // Without this the item gets reset when out of view, isn't android wonderful? binding.enableSwitch.setOnCheckedChangeListener(null) binding.enableSwitch.isChecked = resource.enabled - binding.enableSwitch.isVisible = resource.canToggle + binding.enableSwitch.isVisible = resource.canBeDisabled binding.enableSwitch.setOnCheckedChangeListener { _, isChecked -> diff --git a/kotlin/android/app/src/main/java/dev/firezone/android/features/session/ui/ViewResource.kt b/kotlin/android/app/src/main/java/dev/firezone/android/features/session/ui/ViewResource.kt index 6e0e91534..98f9cbc0c 100644 --- a/kotlin/android/app/src/main/java/dev/firezone/android/features/session/ui/ViewResource.kt +++ b/kotlin/android/app/src/main/java/dev/firezone/android/features/session/ui/ViewResource.kt @@ -13,7 +13,7 @@ data class ViewResource( val name: String, val status: StatusEnum, var enabled: Boolean = true, - var canToggle: Boolean = true, + var canBeDisabled: Boolean = true, ) fun Resource.toViewResource(enabled: Boolean): ViewResource { @@ -25,6 +25,6 @@ fun Resource.toViewResource(enabled: Boolean): ViewResource { name = this.name, status = this.status, enabled = enabled, - canToggle = this.canToggle, + canBeDisabled = this.canBeDisabled, ) } diff --git a/kotlin/android/app/src/main/java/dev/firezone/android/tunnel/TunnelService.kt b/kotlin/android/app/src/main/java/dev/firezone/android/tunnel/TunnelService.kt index 5e17f95ab..aa29865bd 100644 --- a/kotlin/android/app/src/main/java/dev/firezone/android/tunnel/TunnelService.kt +++ b/kotlin/android/app/src/main/java/dev/firezone/android/tunnel/TunnelService.kt @@ -212,7 +212,7 @@ class TunnelService : VpnService() { // UI updates for resources fun resourcesUpdated() { val newResources = tunnelResources.associateBy { it.id } - val currentlyDisabled = disabledResources.filter { newResources[it]?.canToggle ?: false } + val currentlyDisabled = disabledResources.filter { newResources[it]?.canBeDisabled ?: false } connlibSessionPtr?.let { ConnlibSession.setDisabledResources(it, Gson().toJson(currentlyDisabled)) diff --git a/kotlin/android/app/src/main/java/dev/firezone/android/tunnel/model/Resource.kt b/kotlin/android/app/src/main/java/dev/firezone/android/tunnel/model/Resource.kt index 67938ae42..8c2c3d73d 100644 --- a/kotlin/android/app/src/main/java/dev/firezone/android/tunnel/model/Resource.kt +++ b/kotlin/android/app/src/main/java/dev/firezone/android/tunnel/model/Resource.kt @@ -17,7 +17,7 @@ data class Resource( val name: String, val status: StatusEnum, var enabled: Boolean = true, - @Json(name = "can_toggle") val canToggle: Boolean, + @Json(name = "can_disable") val canBeDisabled: Boolean, ) : Parcelable enum class TypeEnum { diff --git a/rust/connlib/shared/src/callbacks.rs b/rust/connlib/shared/src/callbacks.rs index 7d5c23513..8d5d59923 100644 --- a/rust/connlib/shared/src/callbacks.rs +++ b/rust/connlib/shared/src/callbacks.rs @@ -71,11 +71,11 @@ impl ResourceDescription { } } - pub fn can_toggle(&self) -> bool { + pub fn can_be_disabled(&self) -> bool { match self { - ResourceDescription::Dns(r) => r.can_toggle, - ResourceDescription::Cidr(r) => r.can_toggle, - ResourceDescription::Internet(r) => r.can_toggle, + ResourceDescription::Dns(r) => r.can_be_disabled, + ResourceDescription::Cidr(r) => r.can_be_disabled, + ResourceDescription::Internet(r) => r.can_be_disabled, } } } @@ -95,7 +95,7 @@ pub struct ResourceDescriptionDns { pub sites: Vec, pub status: Status, - pub can_toggle: bool, + pub can_be_disabled: bool, } /// Description of a resource that maps to a CIDR. @@ -114,7 +114,7 @@ pub struct ResourceDescriptionCidr { pub sites: Vec, pub status: Status, - pub can_toggle: bool, + pub can_be_disabled: bool, } /// Description of an Internet resource @@ -123,5 +123,5 @@ pub struct ResourceDescriptionInternet { pub id: ResourceId, pub sites: Vec, pub status: Status, - pub can_toggle: bool, + pub can_be_disabled: bool, } diff --git a/rust/connlib/shared/src/messages/client.rs b/rust/connlib/shared/src/messages/client.rs index 812d4e17d..9c0de97f7 100644 --- a/rust/connlib/shared/src/messages/client.rs +++ b/rust/connlib/shared/src/messages/client.rs @@ -36,7 +36,7 @@ impl ResourceDescriptionDns { name: self.name, address_description: self.address_description, sites: self.sites, - can_toggle: false, + can_be_disabled: false, status, } } @@ -67,7 +67,7 @@ impl ResourceDescriptionCidr { name: self.name, address_description: self.address_description, sites: self.sites, - can_toggle: false, + can_be_disabled: false, status, } } @@ -88,7 +88,7 @@ impl ResourceDescriptionInternet { crate::callbacks::ResourceDescriptionInternet { id: self.id, sites: self.sites, - can_toggle: false, + can_be_disabled: false, status, } } diff --git a/rust/gui-client/src-tauri/src/client/gui.rs b/rust/gui-client/src-tauri/src/client/gui.rs index e1148a5e5..fe046a86b 100644 --- a/rust/gui-client/src-tauri/src/client/gui.rs +++ b/rust/gui-client/src-tauri/src/client/gui.rs @@ -750,7 +750,7 @@ impl Controller { let disabled_resources = resources .iter() - .filter_map(|r| r.can_toggle().then_some(r.id())) + .filter_map(|r| r.can_be_disabled().then_some(r.id())) .filter(|id| self.advanced_settings.disabled_resources.contains(id)) .collect(); diff --git a/rust/gui-client/src-tauri/src/client/gui/system_tray.rs b/rust/gui-client/src-tauri/src/client/gui/system_tray.rs index 8fa754358..9ed951f15 100644 --- a/rust/gui-client/src-tauri/src/client/gui/system_tray.rs +++ b/rust/gui-client/src-tauri/src/client/gui/system_tray.rs @@ -91,7 +91,7 @@ impl<'a> SignedIn<'a> { submenu.add_item(item(Event::AddFavorite(res.id()), ADD_FAVORITE)); } - if res.can_toggle() { + if res.can_be_disabled() { submenu.add_separator(); if self.is_enabled(res) { submenu.add_item(item(Event::DisableResource(res.id()), DISABLE)); @@ -323,7 +323,7 @@ mod tests { "address_description": "cidr resource", "sites": [{"name": "test", "id": "bf56f32d-7b2c-4f5d-a784-788977d014a4"}], "status": "Unknown", - "can_toggle": false + "can_be_disabled": false }, { "id": "03000143-e25e-45c7-aafb-144990e57dcd", @@ -333,7 +333,7 @@ mod tests { "address_description": "https://gitlab.mycorp.com", "sites": [{"name": "test", "id": "bf56f32d-7b2c-4f5d-a784-788977d014a4"}], "status": "Online", - "can_toggle": false + "can_be_disabled": false }, { "id": "1106047c-cd5d-4151-b679-96b93da7383b", @@ -343,7 +343,7 @@ mod tests { "address_description": "The whole entire Internet", "sites": [{"name": "test", "id": "eb94482a-94f4-47cb-8127-14fb3afa5516"}], "status": "Offline", - "can_toggle": false + "can_be_disabled": false } ]"#; diff --git a/swift/apple/FirezoneKit/Sources/FirezoneKit/Models/Resource.swift b/swift/apple/FirezoneKit/Sources/FirezoneKit/Models/Resource.swift index 9321a1070..c96ed90ca 100644 --- a/swift/apple/FirezoneKit/Sources/FirezoneKit/Models/Resource.swift +++ b/swift/apple/FirezoneKit/Sources/FirezoneKit/Models/Resource.swift @@ -16,9 +16,9 @@ public struct Resource: Decodable, Identifiable, Equatable { public var status: ResourceStatus public var sites: [Site] public var type: ResourceType - public var canToggle: Bool + public var canBeDisabled: Bool - public init(id: String, name: String, address: String, addressDescription: String?, status: ResourceStatus, sites: [Site], type: ResourceType, canToggle: Bool) { + public init(id: String, name: String, address: String, addressDescription: String?, status: ResourceStatus, sites: [Site], type: ResourceType, canBeDisabled: Bool) { self.id = id self.name = name self.address = address @@ -26,7 +26,7 @@ public struct Resource: Decodable, Identifiable, Equatable { self.status = status self.sites = sites self.type = type - self.canToggle = canToggle + self.canBeDisabled = canBeDisabled } } diff --git a/swift/apple/FirezoneKit/Sources/FirezoneKit/Views/MenuBar.swift b/swift/apple/FirezoneKit/Sources/FirezoneKit/Views/MenuBar.swift index b47315cd2..6d2d8dca7 100644 --- a/swift/apple/FirezoneKit/Sources/FirezoneKit/Views/MenuBar.swift +++ b/swift/apple/FirezoneKit/Sources/FirezoneKit/Views/MenuBar.swift @@ -564,7 +564,7 @@ public final class MenuBar: NSObject, ObservableObject { // Resource enable / disable toggle - if resource.canToggle { + if resource.canBeDisabled { subMenu.addItem(NSMenuItem.separator()) enableToggle.action = #selector(resourceToggle(_:)) enableToggle.title = resourceTitle(resource.id) diff --git a/swift/apple/FirezoneKit/Sources/FirezoneKit/Views/SessionView.swift b/swift/apple/FirezoneKit/Sources/FirezoneKit/Views/SessionView.swift index bb76f20f9..f12d7d1a0 100644 --- a/swift/apple/FirezoneKit/Sources/FirezoneKit/Views/SessionView.swift +++ b/swift/apple/FirezoneKit/Sources/FirezoneKit/Views/SessionView.swift @@ -77,7 +77,7 @@ struct SessionView: View { label: { HStack { Text(resource.name) - if resource.canToggle { + if resource.canBeDisabled { Spacer() Toggle("Enabled", isOn: Binding( get: { model.isResourceEnabled(resource.id) }, diff --git a/swift/apple/FirezoneNetworkExtension/Adapter.swift b/swift/apple/FirezoneNetworkExtension/Adapter.swift index ad676d6c8..28eeb8287 100644 --- a/swift/apple/FirezoneNetworkExtension/Adapter.swift +++ b/swift/apple/FirezoneNetworkExtension/Adapter.swift @@ -217,7 +217,7 @@ class Adapter { let decoder = JSONDecoder() decoder.keyDecodingStrategy = .convertFromSnakeCase - canBeDisabled = Set(resources().filter({ $0.canToggle }).map({ $0.id })) + canBeDisabled = Set(resources().filter({ $0.canBeDisabled }).map({ $0.id })) let disablingResources = disabledResources.filter({ canBeDisabled.contains($0) })