Age | Commit message (Collapse) | Author |
|
Give more time to provider details fragment to appear, because debugging makes the code run slowly.
|
|
|
|
Turn on VPN touching that button, and leave the image as a mere indicator.
|
|
I've removed the "reason" management in LogWindowWrapper, letting
EipStatus display the error log message only if it's a new one (based on
the log buffer position).
|
|
I had a difficult moment trying to detect if the LogWindow had already
been shown after an error. Finally, I implemented a LogWindowWrapper
which contains a field for the reason it was shown, so that we can check
if the previous error is the same than the current one leading to the
avoidance of the second LogWindow. For this to work, we need to reset
that reason each time we trigger a new vpn state (i.e. each time the
user taps on the vpn icon).
|
|
|
|
In the near future, I should implement an error feedback
mechanism (ideally using ics-openvpn's log view), and avoid the
e.printStackTrace() and Log.d("","") without losing information.
|
|
|
|
|
|
This reverts commit 1e300837b2b2188bc682af7b1dfadfa16942725b.
I don't want big lists of imports, I like wildcards.
|
|
Using intellij tool.
|
|
|
|
|
|
|
|
|
|
This reverts commit 7c17d2654d9b6f32580e71e22ea08fca1893aa93.
|
|
|
|
|
|
Also reindent some code.
|
|
Switching orientation doesn't hide that information, now we have two
places to avoid it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Before we add a new profile, we check if there are any duplicated ones
with the same server IPs and ports. If they've the same credentials of
the new one, we don't add anything; if not, we remove the old ones and
add the new.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Beware! https://code.google.com/p/android/issues/detail?id=80074: Wrong VpnService.prepare() behavior after re-installation of the VPN app on Android 5.0
"The following steps will cause incorrect behavior of the VpnService.prepare():
1. Establish VPN connection using any VPN app. VpnService.prepare() will return an intent for the "Connection request" system activity. Once user accepts it, VPN connection can be established successfully.
2. Uninstall VPN app.
3. Re-install the same VPN app.
4. Now VpnService.prepare() returns null, as if the VPN service has been already prepared.
5. Now VpnService.protect() returns false and VPN connection fails.
Device reboot is needed in order to be able to establish VPN connection again."
|
|
|
|
|
|
Written basic skeleton for testEIP, renamed testDashboard to start, in
the future, unit tests.
|
|
|
|
|
|
Initial status message is "not connected", rather than "unknown".
|
|
|
|
Observer pattern. The only notification is being received properly on
EipServiceFragment is the connected one. I need to fix the other UI
methods.
|
|
Fixed a silly typo on .gitignore which was ignoring "G*"!.
|
|
If there is no certificate, there is no need to fix it. Right now, we
use this class just to know if we need to update the certificate or
redownload it. In case the certificate is corrupted, then it won't be
empty but will contain an error message. If there is no
certificate (e.g., because the user hasn't logged in and the provider
doesn't provide anon vpn), then the "certificate" is ok but an upper
layer of the code will have to handle the situation (in this case, eip
will detect that there is no certificate and that the user needs to log
in, prompting it to do so).
|
|
One more onReceiveResult for Dashboard, that method needs a rethink: a
statemachine class, and a simple "next()" method? The reality is that
the onReceiveResult specifies a linked process, and that should have a
better model than a series of if/else cases with strings comparisons hehehe
|