Commit Graph

653 Commits (31939cc855ac72231987123637cea4f3077ed9a8)
 

Author SHA1 Message Date
Jonathan Nobels 31939cc855
android/ui: change exit node disable string to 'stop' (#281)
Updates tailscale/corp#18202

Updates the exit node stop button to 'stop' instead of 'disable' pending the required back end changes to remember the preferred exit node.

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
8 months ago
Jonathan Nobels 75ad5cfef6
android/ui: show the switching-to user immediately on FUS switch (#280)
Updates tailscale/corp#18202

Reload the loggedInUser on all state transitions to ensure FUS switches are always properly represented

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
8 months ago
Jonathan Nobels d188da3a24
android/ui: add compose-style splash screen (#283)
Updates tailscale/corp#18202

Updates the splash screen to the modern themed jetpack compose variant.

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
8 months ago
Jonathan Nobels 9fcc1ddfe1
android/ui: disable landscape on small screen devices (#278)
Updates tailscale/corp#18202

For our initial release, we will only support landscape on large screen devices (tablets, chromebooks).

Tested on a tabletizable chromebook and a variety of simulators and this seems to be a decent compromise until we have fully landscape capable layouts.

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
8 months ago
Jonathan Nobels 3b21a06c8b
android/ui: add key expiry banner (#276)
fixes ENG-2912

copies and adds the a key expiry banner identical to the one on iOS.

fixes a couple of small layout issues with the search bar

fixes a potential json issue where ComputedName is optional in goland but it was not marked as so in Kotlin.  Switched to node.displayName everywhere, which uses ComputedName otherwise, Name.

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
8 months ago
kari-ts 9b27516e96
MainActivity: bring activity to focus on login (#273)
Use CustomTabsIntent to launch login, but fall back to regular intent if Chrome is not installed
When logging in, on change in state to login complete, bring activity back to focus

Updates tailscale/corp#18202

Signed-off-by: kari-ts <kari@tailscale.com>
8 months ago
Percy Wegmann 1719d5d558 android/ui: auto-resize tailnet name to fit space
Updates tailscale/corp#18202

Signed-off-by: Percy Wegmann <percy@tailscale.com>
8 months ago
Percy Wegmann d332ce049e android/ui: more styling tweaks
Updates tailscale/corp#18202

Signed-off-by: Percy Wegmann <percy@tailscale.com>
8 months ago
Percy Wegmann 91c1a8d0f3 android/ui: distinguish Tailnet domains in user view
Updates tailscale/corp#18202

Signed-off-by: Percy Wegmann <percy@tailscale.com>
8 months ago
Jonathan Nobels e9465988dd
android/ui: restyle the search bar (#272)
Updates tailscale/corp#18202

restyles the search bar to look a little more iOS like.  switch to a normal text field which gives us much more flexibility over the look and all of the flexbiility of SearchBar.

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
8 months ago
Percy Wegmann 6e503f29a9 android/ui: implement design feedback
Updates tailscale/corp#18202

Signed-off-by: Percy Wegmann <percy@tailscale.com>
8 months ago
Jonathan Nobels a321d84dba
android/ui: add support for logging in using a custom control server (#266)
fixes ENG-2871

Adds a menu option under the FUS for logging in with your custom control server.  Follows the general pattern used on macOS.

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
8 months ago
Will Norris 77f720dba7 .github/workflows: remove go-licenses action
This is now handled by an action running in corp.

Updates tailscale/corp#18803

Signed-off-by: Will Norris <will@tailscale.com>
8 months ago
kari-ts 3f816eac4d
ui: fix PeerDetails connection status and conncolor (#268)
view model should also check if the node is self and if connected when determining connection status string and conncolor

Updates tailscale/corp#18202

Signed-off-by: kari-ts <kari@tailscale.com>
8 months ago
Percy Wegmann 9fb742bd8b android/ui: apply exit node selector design feedback
Updates tailscale/corp#18202

Signed-off-by: Percy Wegmann <percy@tailscale.com>
8 months ago
kari-ts dca2fc3bf4
UserSwitcherView: hide logout option if not logged in (#264)
Updates tailscale/corp#18202

Signed-off-by: kari-ts <kari@tailscale.com>
8 months ago
Jonathan Nobels 67a9320d26
android/ui: hide mullvad exit nodes in peer list (#263)
Updates tailscale/corp#18202

hides the mullvad nodes (basesd on their Name) in the peers list.  This differs slightly from the iOS logic where we use the Location property, but it feels like a better approach since Location is optional in the HostInfo and may not always be present.

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
8 months ago
Percy Wegmann 4897f09e50 android/ui: use faster sliding animations for nav transitions
Updates tailscale/corp#18202

Signed-off-by: Percy Wegmann <percy@tailscale.com>
8 months ago
Percy Wegmann 8105271d25 android/ui: speed up loading of SettingsView
Updates tailscale/corp#18202

Signed-off-by: Percy Wegmann <percy@tailscale.com>
8 months ago
Jonathan Nobels 2818195400
android/permissions: limit write permission request to api 30 (#261)
Updates tailscale/corp#18202

the WRITE_EXTERNAL_STORAGE permission is only requried for API level <30.

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
8 months ago
Percy Wegmann e024c896c1 android/ui: display correct flag on exit node picker
Updates tailscale/corp#18202

Signed-off-by: Percy Wegmann <percy@tailscale.com>
8 months ago
Percy Wegmann cfd01af74a android/ui: navigate back home after switching users
Updates tailscale/corp#18202

Signed-off-by: Percy Wegmann <percy@tailscale.com>
8 months ago
kari-ts facf6406c3
Clean up Google sign in (#258)
This is unnecessary; we are just using browser login

Updates tailscale/corp#18202

Signed-off-by: kari-ts <kari@tailscale.com>
8 months ago
kari-ts af2e33d130
MainView, strings: show toggle when logged out (#257)
Fix logged out strings

Updates tailscale/corp#18202

Signed-off-by: kari-ts <kari@tailscale.com>
8 months ago
Jonathan Nobels cf56dd6793
android/ui: add one-time intro screen (#253)
* android/ui: add one-time intro screen

fixes ENG-2910

adds a one-time intro screen mostly identical to the one presented in the legacy app.

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>

* android/ui: string change

tailscale -> Tailscale

Co-authored-by: Andrea Gottardo <andrea@tailscale.com>
Signed-off-by: Jonathan Nobels <jnobels@gmail.com>

---------

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
Signed-off-by: Jonathan Nobels <jnobels@gmail.com>
Co-authored-by: Andrea Gottardo <andrea@tailscale.com>
8 months ago
kari-ts 4baec5ff80
App.kt: fix Quick tailscale (#256)
-Once we edit prefs with wantRunning, also update QuickToggleService
-Start Notifier in App so that we are observing tile status

Closes #ENG-2869

Updates tailscale/corp#18202

Signed-off-by: kari-ts <kari@tailscale.com>
8 months ago
Jonathan Nobels 61fb6bbf8e
android/taildrop: support direct mode for incoming taildrop (#251)
Updates tailscale/corp#18202

Implements direct mode support for incoming taildrop files.  None of the localAPI endpoints are implemented here but this will get taildrop files to the right places.

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
8 months ago
Percy Wegmann 5599f2ddeb android/ui: add back fast user switching status and clean up avatar scaling
Updates #cleanup

Signed-off-by: Percy Wegmann <percy@tailscale.com>
8 months ago
Jonathan Nobels e59112a8fb
android/ui: implement outgoing taildrop support (#242)
* android/ui: implement outgoing taildrop support

Updates tailscale/corp#18202

Adds share activity to handle outgoing taildrop requests.

This unbreaks the WaitingFiles notification for incoming files, but does not yet properly handle them.

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>

* android/ui: add transfer ID to outgoing file transfers (#245)

Helps track status of transfers.

Updates #ENG-2868

Signed-off-by: Percy Wegmann <percy@tailscale.com>

* android/ui: taildrop string change

Updates tailscale/corp#18202

Co-authored-by: Andrea Gottardo <andrea@tailscale.com>
Signed-off-by: Jonathan Nobels <jnobels@gmail.com>

* android: bumping oss to pick up new taildrop support

Updates tailscale/corp#18202

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>

* android: remove write storage permission check

Updates tailscale/corp#18202

This is not required and the jni callback does't actually do what we need in the new client.

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>

---------

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
Signed-off-by: Percy Wegmann <percy@tailscale.com>
Signed-off-by: Jonathan Nobels <jnobels@gmail.com>
Co-authored-by: Percy Wegmann <percy@tailscale.com>
Co-authored-by: Andrea Gottardo <andrea@tailscale.com>
8 months ago
Percy Wegmann db3ba696eb android/ui: restyle DNS, bug report and tailnet lock settings to match material design
Also tweak Exit Node Picker.

Updates #cleanup

Signed-off-by: Percy Wegmann <percy@tailscale.com>
8 months ago
Percy Wegmann 44ba20a24e android/ui: prompt for permissions and show list of permissions with statuses
Updates #ENG-2948

Signed-off-by: Percy Wegmann <percy@tailscale.com>
8 months ago
Percy Wegmann 8e063051b6 android/ui: updated MDM settings screen to material design
Updates #cleanup

Signed-off-by: Percy Wegmann <percy@tailscale.com>
8 months ago
Percy Wegmann 7392c7086e android/ui: updated main settings screen to material design
Updates #cleanup

Signed-off-by: Percy Wegmann <percy@tailscale.com>
8 months ago
Percy Wegmann 9f3e871637 android/ui: prompt for write external storage permission and show error if necessary
Updates #ENG-2948

Signed-off-by: Percy Wegmann <percy@tailscale.com>
8 months ago
Andrea Gottardo e511430f73
android: add app_restrictions.xml and manifest entry (#248)
Fixes ENG-2926

Adds an `app_restrictions.xml` file with our available MDM policies, and a new entry to the AndroidManifest.xml file to declare its availability.

Signed-off-by: Andrea Gottardo <andrea@gottardo.me>
8 months ago
Percy Wegmann cf6a203f7a android/ui: change click target for exit node picker
This makes sure only the relevant UI control flashes on click

Updates #cleanup

Signed-off-by: Percy Wegmann <percy@tailscale.com>
8 months ago
Percy Wegmann fb5635b8a5 android: style exit node picker per Material UI and add disable button
Updates #ENG-2911

Signed-off-by: Percy Wegmann <percy@tailscale.com>
8 months ago
Andrea Gottardo 3fea68ef2e
android/ui: add game of life to show progress when connecting (ENG-2860) (#244)
Fixes ENG-2860

Adds a game of life animation with the Tailscale logo when launching the app and waiting for the VPN tunnel to be established.

Signed-off-by: Andrea Gottardo <andrea@gottardo.me>
8 months ago
Andrea Gottardo bf74edd551
android: add ExitNodeAllowLANAccess toggle in exit node picker (#241)
Updates ENG-3011

Just like on iOS, we should show a switch to toggle the ExitNodeAllowLANAccess preference.

Signed-off-by: Andrea Gottardo <andrea@gottardo.me>
8 months ago
Percy Wegmann 28d0ab4dd6 android: add Client.postMultipart
Supports multipart requests to localapi

Updates tailscale/corp#18202

Signed-off-by: Percy Wegmann <percy@tailscale.com>
8 months ago
Percy Wegmann 6a875e8854 android: correctly grab DNS settings
Closes #ENG-3005

Signed-off-by: Percy Wegmann <percy@tailscale.com>
8 months ago
Percy Wegmann a15fdd44bf android: show login button when state == Ipn.State.NeedsLogin
Closes #ENG-2988

Signed-off-by: Percy Wegmann <percy@tailscale.com>
8 months ago
Will Norris 9fcdcfe630 Makefile: add help text to make commands
Add `make help` command, which prints available commands and their
description.  I'm not 100% sure which commands should be documented, so
took an initial attempt at it.

This also makes `make help` the default command, aligning it with the
Makefiles in corp and oss.

Updates tailscale/corp#18202

Signed-off-by: Will Norris <will@tailscale.com>
8 months ago
Andrea Gottardo e187a8db81
android: add DNS Settings view (#233)
Updates ENG-2990

This PR adds a DNS Settings view with the same functionality and items as the iOS one. It also moves the 'Use Tailscale DNS Settings' item out of the main settings view into the detail view.

Signed-off-by: Andrea Gottardo <andrea@gottardo.me>
8 months ago
Andrea Gottardo f96e9b923f
android: add Tailnet lock setup UI (#231)
Updates ENG-2981

Adds a view to see the Tailnet lock settings and copy node key and public key, resembling the iOS and macOS ones.

Signed-off-by: Andrea Gottardo <andrea@gottardo.me>
8 months ago
Andrea Gottardo 19adff3077
Revert "Revert "android: add UI to run as exit node (#230)" (#235)" (#237)
This reverts commit 0d1a3cf415.

Signed-off-by: Andrea Gottardo <andrea@gottardo.me>
8 months ago
Jonathan Nobels e953b19189
android/ui: address preliminary design feedback
Updates tailscale/corp#18202

Adds back navigation to all of the headers.
Corrects all padding and some colours
Adds separators to the device list
Adds the Compat theme so we don't have the black top and bottom bars.
Removes all of the chevrons.
Other minor tweaks

Signed-off-by: Jonathan Nobels <jonathan@tailscale.com>
8 months ago
James Tucker 5454b34dd1 Revert "[568eb59] android/ui: address preliminary design feedback (#227)"
This reverts commit 910511d838.

Signed-off-by: James Tucker <james@tailscale.com>
8 months ago
Andrea Gottardo 0d1a3cf415
Revert "android: add UI to run as exit node (#230)" (#235)
This reverts commit c3b62124bb.

Signed-off-by: Andrea Gottardo <andrea@gottardo.me>
8 months ago
Andrea Gottardo c3b62124bb
android: add UI to run as exit node (#230)
Updates ENG-2913

This PR provides UI to let the user toggle AdvertisedRoutes by adding/removing the zero routes, with a view to warn the user about battery life impact and potential cellular data charges. Language and graphics to mimic what we currently show on Apple TV, final designs will follow as per @sonovawolf.

Signed-off-by: Andrea Gottardo <andrea@gottardo.me>
8 months ago