akwizgran
e9dbceefe8
Merge branch '2117-hotspot-password' into '1081-share-app-via-wifi-hotspot'
...
hotspot: remove 5 and S, as well as i and l
See merge request briar/briar!1513
2021-07-28 12:36:07 +00:00
Torsten Grote
39d3f47e19
hotspot: remove 5 and S, as well as i, l and 1
2021-07-27 13:39:28 +02:00
Torsten Grote
522474ac15
Merge branch '2100-refactor-condition-managers' into '1081-share-app-via-wifi-hotspot'
...
Split ConditionManager into API-specific versions
See merge request briar/briar!1512
2021-07-26 13:49:20 +00:00
Sebastian Kürten
6337b86266
Rename ConditionManager classes
2021-07-21 16:29:23 +02:00
Sebastian Kürten
93eadb88f3
Apply review feedback
2021-07-21 16:13:44 +02:00
Sebastian Kürten
46e391645c
Reduce visibility of a field and two methods
2021-07-21 13:30:20 +02:00
Sebastian Kürten
355c487ec9
Split ConditionManager into API-specific versions
...
* On API 29+ we need the location permission to start the hotspot, while
on lower API levels, we don't. In order to handle permissions and
other conditions in a clear manner depending the API level of the
device the app is running on, have separate extensions of the base
ConditionManager class.
* Take special care to handle situations gracefully where the Wifi is
disabled and the user tries to start the hotspot. We cannot simply
rely on Wifi being enabled as a sufficient condition that allows us to
start the hotspot. We need to wait for WifiP2p to be available. While
it is tricky to obtain that state (it involves registering a broadcast
receiver for the WIFI_P2P_STATE_CHANGED_ACTION broadcast, keeping
track of changes there and even then things are still ugly. It can
happen that WifiP2p is available *before* Wifi is. Also it can happen
that WifiP2p never becomes available because some other application
has already opened a hotspot. Instead of checking that state, we now
just try (and retry repeatedly after a delay) to start the hotspot
(and the WifiP2p framework) hoping that is becomes availabe within a
reasonable amount of time after Wifi has been detected to be on.
Currently we try 5 times with a delay of 1 second.
* Improve the behavior of disabling and re-enabling the 'start hotspot'
button, so that it becomes impossible to double-tap it, but still
making sure that the button get re-enabled as soon as the UI is back
in a state where the user should be able to tap the button again.
2021-07-21 13:30:14 +02:00
akwizgran
806fce8c34
Keep the screen on while the hotspot is running.
2021-07-14 14:04:33 +02:00
Sebastian Kürten
f9494d71de
Improve texts on offline hotspot for a better UX
2021-07-14 14:04:30 +02:00
Sebastian Kürten
df38187288
Do not increment the attempt variable twice when requesting group info
2021-07-14 14:04:12 +02:00
Sebastian Kürten
b8009c35f1
Do not allow the user to tap the start sharing button twice quickly
2021-07-14 14:04:11 +02:00
Sebastian Kürten
1306761f4a
Don't move to HotspotFragment on rotate when user navigated back to introduction
2021-07-14 14:04:11 +02:00
Sebastian Kürten
703ff9835d
Fix bug that occurs when HotspotActivity gets destroyed
...
If HotspotActivity gets destroyed, so will be its viewmodel, resulting
in an undefined state when the activity gets created again. While the
fragments will be restored, the view model and hotspot/webserver state
will not. Fix this by resetting the UI to reflect the reset of hotspot
and webserver.
2021-07-14 14:04:11 +02:00
Sebastian Kürten
4abaeed32f
Fix background color of cardview for qr code
2021-07-14 14:04:10 +02:00
Sebastian Kürten
9192ee32cf
Use FragmentContainerView for displaying FallbackFragment
2021-07-14 14:04:09 +02:00
Sebastian Kürten
aecd204efe
Improve hotspot error fragment UI
...
* Use different highlighting for error message
* Improve margins in fragment_hotspot_save_apk.xml
* Address some review feedback
2021-07-14 14:04:09 +02:00
Sebastian Kürten
03cb1010e2
Pass error message to feedback activity
2021-07-14 14:04:07 +02:00
Sebastian Kürten
30063f5fbf
Create FallbackFragment for alternative apk sharing method
2021-07-14 14:04:05 +02:00
Sebastian Kürten
0fb52a7f53
Log hotspot errors
2021-07-14 14:03:58 +02:00
Sebastian Kürten
094024eb4f
Wire feedback button to show feedback fragment
2021-07-14 14:03:58 +02:00
Sebastian Kürten
e39c99fd6c
Outline specific error fragment for hotspot
2021-07-14 14:03:57 +02:00
Sebastian Kürten
6cd70e0e7f
Let HotspotActivity implement BaseFragmentListener
2021-07-14 14:03:57 +02:00
Torsten Grote
d646635b1f
Move hotspot help ActivityResultLauncher into method
2021-07-14 14:03:57 +02:00
Torsten Grote
a534ec2b50
Adapt hotspot buttons to latest design and add a nullability annotation
2021-07-14 14:03:56 +02:00
Torsten Grote
a23de6172f
Make HotspotHelpFragment headlines bold
2021-07-14 14:03:56 +02:00
Torsten Grote
ff2dd33435
Handle returned Uri being null
2021-07-14 14:03:54 +02:00
Torsten Grote
d5d0a03638
Save the APK as a hotspot fallback
2021-07-14 14:03:50 +02:00
Sebastian Kürten
344fff4a7a
Add feature flag for sharing the app via offline hotspot
2021-07-14 14:03:13 +02:00
Sebastian Kürten
f9749fda80
Recommend to undo settings to install apps from unknown sources
2021-07-14 13:53:21 +02:00
Torsten Grote
aabba3a6c8
Add missing hotspot nullability annotations
2021-07-14 13:53:20 +02:00
Torsten Grote
673f530c14
Move savedNetworkConfig into HotspotManager and use constructor injection
2021-07-14 13:53:20 +02:00
Torsten Grote
36a1478661
Make hotspot SSID and passphrase persistent
2021-07-14 13:53:19 +02:00
Sebastian Kürten
1c056160e1
Use better filename for apk files shared via hotspot
2021-07-14 13:53:19 +02:00
Torsten Grote
ab6b83d4fa
Show a snackbar when a peer connected to the hotspot
2021-07-14 13:53:17 +02:00
Torsten Grote
a6c33d300c
Don't start hotspot while running and use proper ErrorFragment
2021-07-14 13:53:16 +02:00
Torsten Grote
28d87dd153
Port code from Offline hotspot test app
2021-07-14 13:53:12 +02:00
Torsten Grote
16b79e0482
Fix hotspot notification on old APIs
2021-07-14 13:53:03 +02:00
Torsten Grote
3eee144c6c
Rename tab fragments
...
and remove redundant NonNull annotations
2021-07-14 13:52:58 +02:00
Torsten Grote
1b7007d4ef
Show notification while hotspot is active
2021-07-14 13:52:42 +02:00
Torsten Grote
19a5c2f79f
Add hotspot troubleshooting info
2021-07-14 13:39:11 +02:00
Torsten Grote
8c163d8f10
Add offline sharing entry point to Settings/Actions
2021-07-14 13:39:10 +02:00
Torsten Grote
c3cd32b12c
Let info screens scroll in case of insufficient space
2021-07-14 13:39:09 +02:00
Torsten Grote
7c8aa5bc21
Implement info screens for offline app sharing
2021-07-14 13:39:05 +02:00
Torsten Grote
54b239f45e
Implement intro screen for offline app sharing
2021-07-14 13:38:41 +02:00
Torsten Grote
97bd977108
Merge branch '1802-sync-via-removable-storage' into 'master'
...
Transfer data securely via removable storage
See merge request briar/briar!1511
2021-07-14 11:23:50 +00:00
akwizgran
aaba9f2417
Don't configure plugin unless feature flag is enabled.
2021-07-14 11:48:48 +01:00
akwizgran
6a909b6c5c
Rename method, as it no longer involves a notification.
2021-07-13 15:55:29 +01:00
akwizgran
4ef92f1c39
Remove redundant UiUtils method.
2021-07-13 15:49:33 +01:00
akwizgran
8f392b4599
Use getLong() to avoid remote possibility of overflow.
2021-07-13 12:04:09 +01:00
akwizgran
f556bc7249
Update javadoc for RemovableDriveTask.
2021-07-13 11:50:17 +01:00