The widget now keeps the VpnConnection instance it subscribed to instead of reading Provider again during dispose or lifecycle callbacks.
Changes
Store the subscribed VpnConnection instance
Remove the listener from the exact same instance during dispose
Stop pulse animation whenever the app is not resumed
Restore the pulse when returning to the foreground if the VPN is connected
No VPN protocol or session behavior is changed.
## Summary
Fix the ConnectButton VPN listener lifecycle.
The widget now keeps the VpnConnection instance it subscribed to instead of reading Provider again during dispose or lifecycle callbacks.
## Changes
- Store the subscribed VpnConnection instance
- Remove the listener from the exact same instance during dispose
- Stop pulse animation whenever the app is not resumed
- Restore the pulse when returning to the foreground if the VPN is connected
No VPN protocol or session behavior is changed.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
Fix the ConnectButton VPN listener lifecycle.
The widget now keeps the VpnConnection instance it subscribed to instead of reading Provider again during dispose or lifecycle callbacks.
Changes
No VPN protocol or session behavior is changed.