From b07eb38151644d9b0e19ccfb2e97b468b08b2d4a Mon Sep 17 00:00:00 2001 From: Arne Schwabe Date: Sat, 7 Jul 2012 11:18:29 +0200 Subject: Fix stale "exiting" status --- res/values-es/arrays.xml | 13 ------------- src/de/blinkt/openvpn/OpenVpnService.java | 20 ++++++++++++-------- 2 files changed, 12 insertions(+), 21 deletions(-) diff --git a/res/values-es/arrays.xml b/res/values-es/arrays.xml index e83a7a39..ed33c8c7 100644 --- a/res/values-es/arrays.xml +++ b/res/values-es/arrays.xml @@ -16,19 +16,6 @@ "1" "Sin especificar" - - "0" - "1" - - - - "0" - "1" - "2" - "3" - "4" - "5" - "0 - No hay registro" "1 - Detalle prederminado" diff --git a/src/de/blinkt/openvpn/OpenVpnService.java b/src/de/blinkt/openvpn/OpenVpnService.java index 3c836afa..c50196b8 100644 --- a/src/de/blinkt/openvpn/OpenVpnService.java +++ b/src/de/blinkt/openvpn/OpenVpnService.java @@ -53,12 +53,12 @@ public class OpenVpnService extends VpnService implements StateListener { private Thread mSocketManagerThread; private int mMtu; private String mLocalIPv6=null; - private Notification mNotification=null; - private NetworkSateReceiver mNetworkStateReceiver; private boolean mDisplayBytecount=false; + private boolean mNotificationvisible; + private static final int OPENVPN_STATUS = 1; @Override @@ -72,7 +72,7 @@ public class OpenVpnService extends VpnService implements StateListener { String ns = Context.NOTIFICATION_SERVICE; NotificationManager mNotificationManager = (NotificationManager) getSystemService(ns); mNotificationManager.cancel(OPENVPN_STATUS); - + mNotificationvisible=false; } private void showNotification(String msg, String tickerText) { String ns = Context.NOTIFICATION_SERVICE; @@ -95,12 +95,10 @@ public class OpenVpnService extends VpnService implements StateListener { if(tickerText!=null) nbuilder.setTicker(tickerText); - mNotification = nbuilder.getNotification(); - + Notification notification = nbuilder.getNotification(); - - - mNotificationManager.notify(OPENVPN_STATUS, mNotification); + mNotificationManager.notify(OPENVPN_STATUS, notification); + mNotificationvisible=true; } @@ -394,6 +392,12 @@ public class OpenVpnService extends VpnService implements StateListener { } } + // Skip exiting status if the status is already hidden + if("EXITING SIGINT".equals(state) && !mNotificationvisible) { + return; + } + + if("BYTECOUNT".equals(state)) { if(mDisplayBytecount) { showNotification(logmessage,null); -- cgit v1.2.3