-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Android beta: Quick Tile can get out of sync with the VPN status #11920
Closed
Labels
Comments
kari-ts
added a commit
to tailscale/tailscale-android
that referenced
this issue
Apr 30, 2024
-Get rid of unused stopVPN() function -Get rid of unused ACTION_STOP_VPN intent handling; this is redundant with DISCONNECT_VPN intent -Tile active state should only depend on ipn state, and not the results of editing the prefs with wantRunning set. It should be active iff ipn.State > Stopped Fixes tailscale/tailscale#11920 Signed-off-by: kari-ts <kari@tailscale.com>
kari-ts
added a commit
to tailscale/tailscale-android
that referenced
this issue
Apr 30, 2024
-Get rid of unused stopVPN() function -Get rid of unused ACTION_STOP_VPN intent handling; this is redundant with DISCONNECT_VPN intent -Tile active state should only depend on ipn state, and not the results of editing the prefs with wantRunning set. It should be active iff ipn.State > Stopped Fixes tailscale/tailscale#11920 Signed-off-by: kari-ts <kari@tailscale.com>
kari-ts
added a commit
to tailscale/tailscale-android
that referenced
this issue
Apr 30, 2024
-Get rid of unused stopVPN() function -Get rid of unused ACTION_STOP_VPN intent handling; this is redundant with DISCONNECT_VPN intent -Tile active state should only depend on ipn state, and not the results of editing the prefs with wantRunning set. It should be active iff ipn.State > Stopped Fixes tailscale/tailscale#11920 Signed-off-by: kari-ts <kari@tailscale.com>
kari-ts
added a commit
to tailscale/tailscale-android
that referenced
this issue
Apr 30, 2024
-Get rid of unused stopVPN() function -Get rid of unused ACTION_STOP_VPN intent handling; this is redundant with DISCONNECT_VPN intent -Tile active state should only depend on ipn state, and not the results of editing the prefs with wantRunning set. It should be active iff ipn.State > Stopped Fixes tailscale/tailscale#11920 Signed-off-by: kari-ts <kari@tailscale.com>
kari-ts
added a commit
to tailscale/tailscale-android
that referenced
this issue
May 1, 2024
-Get rid of unused stopVPN() function -Get rid of unused ACTION_STOP_VPN intent handling; this is redundant with DISCONNECT_VPN intent -Tile active state should only depend on ipn state, and not the results of editing the prefs with wantRunning set. It should be active iff ipn.State > Stopped Fixes tailscale/tailscale#11920 Signed-off-by: kari-ts <kari@tailscale.com>
kari-ts
added a commit
to tailscale/tailscale-android
that referenced
this issue
May 1, 2024
-Get rid of unused stopVPN() function -Get rid of unused ACTION_STOP_VPN intent handling; this is redundant with DISCONNECT_VPN intent -Tile active state should only depend on ipn state, and not the results of editing the prefs with wantRunning set. It should be active iff ipn.State > Stopped Fixes tailscale/tailscale#11920 Signed-off-by: kari-ts <kari@tailscale.com>
kari-ts
added a commit
to tailscale/tailscale-android
that referenced
this issue
May 8, 2024
#358 updated the Quick Settings tile to only depend on ipn state. This was only partially correct in the sense that we made changes to only check for whether the state was > stopped and not whether Tailscale was on. This checks for two states, whether Tailscale is on, and whether the tile is ready to be used. The former requires ipn state to be >= Starting, and the latter checks whether ipn state is > RequiresMachineAuth. Tile readiness determines whether an intent is to open MainActivity or whether an intent to connect/disconnect VPN is sent. Whether Tailscale is on or off determines whether the tile status is active or not. Updates tailscale/tailscale#11920 Signed-off-by: kari-ts <kari@tailscale.com>
kari-ts
added a commit
to tailscale/tailscale-android
that referenced
this issue
May 8, 2024
#358 updated the Quick Settings tile to only depend on ipn state. This was only partially correct in the sense that we made changes to only check for whether the state was > stopped and not whether Tailscale was on. This checks for two states, whether Tailscale is on, and whether the tile is ready to be used. The former requires ipn state to be >= Starting, and the latter checks whether ipn state is > RequiresMachineAuth. Tile readiness determines whether an intent is to open MainActivity or whether an intent to connect/disconnect VPN is sent. Whether Tailscale is on or off determines whether the tile status is active or not. Updates tailscale/tailscale#11920 Signed-off-by: kari-ts <kari@tailscale.com>
oxtoacart
pushed a commit
to tailscale/tailscale-android
that referenced
this issue
May 9, 2024
#358 updated the Quick Settings tile to only depend on ipn state. This was only partially correct in the sense that we made changes to only check for whether the state was > stopped and not whether Tailscale was on. This checks for two states, whether Tailscale is on, and whether the tile is ready to be used. The former requires ipn state to be >= Starting, and the latter checks whether ipn state is > RequiresMachineAuth. Tile readiness determines whether an intent is to open MainActivity or whether an intent to connect/disconnect VPN is sent. Whether Tailscale is on or off determines whether the tile status is active or not. Updates tailscale/tailscale#11920 Signed-off-by: kari-ts <kari@tailscale.com>
oxtoacart
added a commit
to tailscale/tailscale-android
that referenced
this issue
May 9, 2024
Corrects states shown on QuickSettings and persistent notification. Updates tailscale/tailscale#11920 Signed-off-by: Percy Wegmann <percy@tailscale.com>
oxtoacart
added a commit
to tailscale/tailscale-android
that referenced
this issue
May 9, 2024
…d by quick settings tile This allows us to start the VPN from the quick settings tile even when the application was previously stopped. Updates tailscale/tailscale#11920 Signed-off-by: Percy Wegmann <percy@tailscale.com>
kari-ts
added a commit
to tailscale/tailscale-android
that referenced
this issue
May 9, 2024
#358 updated the Quick Settings tile to only depend on ipn state. This was only partially correct in the sense that we made changes to only check for whether the state was > stopped and not whether Tailscale was on. This checks for two states, whether Tailscale is on, and whether the tile is ready to be used. The former requires ipn state to be >= Starting, and the latter checks whether ipn state is > RequiresMachineAuth. Tile readiness determines whether an intent is to open MainActivity or whether an intent to connect/disconnect VPN is sent. Whether Tailscale is on or off determines whether the tile status is active or not. We also correct states shown on QuickSettings and persistent notification. We lazily initialize App to avoid starting Tailscale when unnecessary - for example, when viewing the QuickSettings tile, there's no need to start Tailscale's backend. Persistently store flag indicating whether VPN can be started by quick settings tile. This allows us to start the VPN from the quick settings tile even when the application was previously stopped. Updates tailscale/tailscale#11920
kari-ts
added a commit
to tailscale/tailscale-android
that referenced
this issue
May 9, 2024
#358 updated the Quick Settings tile to only depend on ipn state. This was only partially correct in the sense that we made changes to only check for whether the state was > stopped and not whether Tailscale was on. This checks for two states, whether Tailscale is on, and whether the tile is ready to be used. The former requires ipn state to be >= Starting, and the latter checks whether ipn state is > RequiresMachineAuth. Tile readiness determines whether an intent is to open MainActivity or whether an intent to connect/disconnect VPN is sent. Whether Tailscale is on or off determines whether the tile status is active or not. We also correct states shown on QuickSettings and persistent notification. We lazily initialize App to avoid starting Tailscale when unnecessary - for example, when viewing the QuickSettings tile, there's no need to start Tailscale's backend. Persistently store flag indicating whether VPN can be started by quick settings tile. This allows us to start the VPN from the quick settings tile even when the application was previously stopped. Updates tailscale/tailscale#11920
kari-ts
added a commit
to tailscale/tailscale-android
that referenced
this issue
May 9, 2024
#358 updated the Quick Settings tile to only depend on ipn state. This was only partially correct in the sense that we made changes to only check for whether the state was > stopped and not whether Tailscale was on. This checks for two states, whether Tailscale is on, and whether the tile is ready to be used. The former requires ipn state to be >= Starting, and the latter checks whether ipn state is > RequiresMachineAuth. Tile readiness determines whether an intent is to open MainActivity or whether an intent to connect/disconnect VPN is sent. Whether Tailscale is on or off determines whether the tile status is active or not. We lazily initialize App to avoid starting Tailscale when unnecessary - for example, when viewing the QuickSettings tile, there's no need to start Tailscale's backend. We also persistently store a flag indicating whether VPN can be started by quick settings tile: this allows us to start the VPN from the quick settings tile even when the application was previously stopped. Updates tailscale/tailscale#11920 Co-authored-by: kari-ts Co-authored-by: oxtoacart
kari-ts
added a commit
to tailscale/tailscale-android
that referenced
this issue
May 9, 2024
#358 updated the Quick Settings tile to only depend on ipn state. This was only partially correct in the sense that we made changes to only check for whether the state was > stopped and not whether Tailscale was on. This checks for two states, whether Tailscale is on, and whether the tile is ready to be used. The former requires ipn state to be >= Starting, and the latter checks whether ipn state is > RequiresMachineAuth. Tile readiness determines whether an intent is to open MainActivity or whether an intent to connect/disconnect VPN is sent. Whether Tailscale is on or off determines whether the tile status is active or not. We lazily initialize App to avoid starting Tailscale when unnecessary - for example, when viewing the QuickSettings tile, there's no need to start Tailscale's backend. We also persistently store a flag indicating whether VPN can be started by quick settings tile: this allows us to start the VPN from the quick settings tile even when the application was previously stopped. Updates tailscale/tailscale#11920 Co-authored-by: kari-ts <kari@tailscale.com> Co-authored-by: Percy Wegmann <percy@tailscale.com>
oxtoacart
added a commit
to tailscale/tailscale-android
that referenced
this issue
May 10, 2024
Removes unnecessary code and keeps VPN from restarting when viewing quick settings tile after turning off VPN. Updates tailscale/tailscale#11920 Signed-off-by: Percy Wegmann <percy@tailscale.com>
oxtoacart
added a commit
to tailscale/tailscale-android
that referenced
this issue
May 10, 2024
Removes unnecessary code and keeps VPN from restarting when viewing quick settings tile after turning off VPN. Updates tailscale/tailscale#11920 Signed-off-by: Percy Wegmann <percy@tailscale.com>
oxtoacart
added a commit
to tailscale/tailscale-android
that referenced
this issue
May 10, 2024
Removes unnecessary code and keeps VPN from restarting when viewing quick settings tile after turning off VPN. Updates tailscale/tailscale#11920 Signed-off-by: Percy Wegmann <percy@tailscale.com>
oxtoacart
added a commit
to tailscale/tailscale-android
that referenced
this issue
May 10, 2024
Removes unnecessary code and keeps VPN from restarting when viewing quick settings tile after turning off VPN. Updates tailscale/tailscale#11920 Signed-off-by: Percy Wegmann <percy@tailscale.com>
oxtoacart
added a commit
to tailscale/tailscale-android
that referenced
this issue
May 10, 2024
Removes unnecessary code and keeps VPN from restarting when viewing quick settings tile after turning off VPN. Updates tailscale/tailscale#11920 Signed-off-by: Percy Wegmann <percy@tailscale.com>
oxtoacart
added a commit
to tailscale/tailscale-android
that referenced
this issue
May 10, 2024
#358 updated the Quick Settings tile to only depend on ipn state. This was only partially correct in the sense that we made changes to only check for whether the state was > stopped and not whether Tailscale was on. This checks for two states, whether Tailscale is on, and whether the tile is ready to be used. The former requires ipn state to be >= Starting, and the latter checks whether ipn state is > RequiresMachineAuth. Tile readiness determines whether an intent is to open MainActivity or whether an intent to connect/disconnect VPN is sent. Whether Tailscale is on or off determines whether the tile status is active or not. We lazily initialize App to avoid starting Tailscale when unnecessary - for example, when viewing the QuickSettings tile, there's no need to start Tailscale's backend. We also persistently store a flag indicating whether VPN can be started by quick settings tile: this allows us to start the VPN from the quick settings tile even when the application was previously stopped. Updates tailscale/tailscale#11920 Co-authored-by: kari-ts <kari@tailscale.com> Co-authored-by: Percy Wegmann <percy@tailscale.com>
kari-ts
added a commit
to tailscale/tailscale-android
that referenced
this issue
May 10, 2024
* android: fix quick settings tile #358 updated the Quick Settings tile to only depend on ipn state. This was only partially correct in the sense that we made changes to only check for whether the state was > stopped and not whether Tailscale was on. This checks for two states, whether Tailscale is on, and whether the tile is ready to be used. The former requires ipn state to be >= Starting, and the latter checks whether ipn state is > RequiresMachineAuth. Tile readiness determines whether an intent is to open MainActivity or whether an intent to connect/disconnect VPN is sent. Whether Tailscale is on or off determines whether the tile status is active or not. We lazily initialize App to avoid starting Tailscale when unnecessary - for example, when viewing the QuickSettings tile, there's no need to start Tailscale's backend. We also persistently store a flag indicating whether VPN can be started by quick settings tile: this allows us to start the VPN from the quick settings tile even when the application was previously stopped. Updates tailscale/tailscale#11920 Co-authored-by: kari-ts <kari@tailscale.com> Co-authored-by: Percy Wegmann <percy@tailscale.com> * android: simplify IPNService lifecycle Reserves use of IPNReceiver only for external requests to start the VPN. Updates tailscale/corp#19860 Signed-off-by: Percy Wegmann <percy@tailscale.com> * Revert "android: temporarily remove quick settings tile" This reverts commit edb3f5b. Signed-off-by: Percy Wegmann <percy@tailscale.com> --------- Signed-off-by: Percy Wegmann <percy@tailscale.com> Co-authored-by: Percy Wegmann <percy@tailscale.com>
agottardo
pushed a commit
to tailscale/tailscale-android
that referenced
this issue
May 13, 2024
* android: fix quick settings tile #358 updated the Quick Settings tile to only depend on ipn state. This was only partially correct in the sense that we made changes to only check for whether the state was > stopped and not whether Tailscale was on. This checks for two states, whether Tailscale is on, and whether the tile is ready to be used. The former requires ipn state to be >= Starting, and the latter checks whether ipn state is > RequiresMachineAuth. Tile readiness determines whether an intent is to open MainActivity or whether an intent to connect/disconnect VPN is sent. Whether Tailscale is on or off determines whether the tile status is active or not. We lazily initialize App to avoid starting Tailscale when unnecessary - for example, when viewing the QuickSettings tile, there's no need to start Tailscale's backend. We also persistently store a flag indicating whether VPN can be started by quick settings tile: this allows us to start the VPN from the quick settings tile even when the application was previously stopped. Updates tailscale/tailscale#11920 Co-authored-by: kari-ts <kari@tailscale.com> Co-authored-by: Percy Wegmann <percy@tailscale.com> * android: simplify IPNService lifecycle Reserves use of IPNReceiver only for external requests to start the VPN. Updates tailscale/corp#19860 Signed-off-by: Percy Wegmann <percy@tailscale.com> * Revert "android: temporarily remove quick settings tile" This reverts commit edb3f5b. Signed-off-by: Percy Wegmann <percy@tailscale.com> --------- Signed-off-by: Percy Wegmann <percy@tailscale.com> Co-authored-by: Percy Wegmann <percy@tailscale.com> (cherry picked from commit f684bf6)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
See Percy's comment in tailscale/tailscale-android#357 (comment):
The text was updated successfully, but these errors were encountered: