mirror of
https://code.briarproject.org/briar/briar.git
synced 2026-02-21 23:29:52 +01:00
Use a setting to record whether update notice has been shown
This commit is contained in:
@@ -27,7 +27,6 @@ import javax.inject.Inject;
|
|||||||
|
|
||||||
import static java.util.logging.Level.INFO;
|
import static java.util.logging.Level.INFO;
|
||||||
import static java.util.logging.Level.WARNING;
|
import static java.util.logging.Level.WARNING;
|
||||||
import static org.briarproject.briar.BuildConfig.VERSION_CODE;
|
|
||||||
import static org.briarproject.briar.android.BriarApplication.EXPIRY_DATE;
|
import static org.briarproject.briar.android.BriarApplication.EXPIRY_DATE;
|
||||||
import static org.briarproject.briar.android.navdrawer.NavDrawerController.ExpiryWarning.NO;
|
import static org.briarproject.briar.android.navdrawer.NavDrawerController.ExpiryWarning.NO;
|
||||||
import static org.briarproject.briar.android.navdrawer.NavDrawerController.ExpiryWarning.SHOW;
|
import static org.briarproject.briar.android.navdrawer.NavDrawerController.ExpiryWarning.SHOW;
|
||||||
@@ -42,7 +41,7 @@ public class NavDrawerControllerImpl extends DbControllerImpl
|
|||||||
private static final Logger LOG =
|
private static final Logger LOG =
|
||||||
Logger.getLogger(NavDrawerControllerImpl.class.getName());
|
Logger.getLogger(NavDrawerControllerImpl.class.getName());
|
||||||
private static final String EXPIRY_DATE_WARNING = "expiryDateWarning";
|
private static final String EXPIRY_DATE_WARNING = "expiryDateWarning";
|
||||||
private static final String EXPIRY_DATE_VERSION = "expiryDateVersion";
|
private static final String EXPIRY_SHOW_UPDATE = "expiryShowUpdate";
|
||||||
|
|
||||||
private final PluginManager pluginManager;
|
private final PluginManager pluginManager;
|
||||||
private final SettingsManager settingsManager;
|
private final SettingsManager settingsManager;
|
||||||
@@ -116,7 +115,8 @@ public class NavDrawerControllerImpl extends DbControllerImpl
|
|||||||
Settings settings =
|
Settings settings =
|
||||||
settingsManager.getSettings(SETTINGS_NAMESPACE);
|
settingsManager.getSettings(SETTINGS_NAMESPACE);
|
||||||
int warningInt = settings.getInt(EXPIRY_DATE_WARNING, 0);
|
int warningInt = settings.getInt(EXPIRY_DATE_WARNING, 0);
|
||||||
int versionCode = settings.getInt(EXPIRY_DATE_VERSION, 0);
|
boolean showUpdate =
|
||||||
|
settings.getBoolean(EXPIRY_SHOW_UPDATE, true);
|
||||||
|
|
||||||
if (warningInt == 0) {
|
if (warningInt == 0) {
|
||||||
// we have not warned before
|
// we have not warned before
|
||||||
@@ -129,14 +129,16 @@ public class NavDrawerControllerImpl extends DbControllerImpl
|
|||||||
long daysBeforeExpiry =
|
long daysBeforeExpiry =
|
||||||
(EXPIRY_DATE - now) / 1000 / 60 / 60 / 24;
|
(EXPIRY_DATE - now) / 1000 / 60 / 60 / 24;
|
||||||
|
|
||||||
if (versionCode < 1611) {
|
if (showUpdate) {
|
||||||
handler.onResult(UPDATE);
|
handler.onResult(UPDATE);
|
||||||
} else if (daysSinceLastWarning >= 30) {
|
} else if (daysSinceLastWarning >= 30) {
|
||||||
handler.onResult(SHOW);
|
handler.onResult(SHOW);
|
||||||
} else if (daysBeforeExpiry <= 3 &&
|
} else if (daysBeforeExpiry <= 3 &&
|
||||||
daysSinceLastWarning > 0) {
|
daysSinceLastWarning > 0) {
|
||||||
handler.onResult(SHOW);
|
handler.onResult(SHOW);
|
||||||
} else handler.onResult(NO);
|
} else {
|
||||||
|
handler.onResult(NO);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} catch (DbException e) {
|
} catch (DbException e) {
|
||||||
if (LOG.isLoggable(WARNING))
|
if (LOG.isLoggable(WARNING))
|
||||||
@@ -155,7 +157,7 @@ public class NavDrawerControllerImpl extends DbControllerImpl
|
|||||||
Settings settings = new Settings();
|
Settings settings = new Settings();
|
||||||
int date = (int) (System.currentTimeMillis() / 1000L);
|
int date = (int) (System.currentTimeMillis() / 1000L);
|
||||||
settings.putInt(EXPIRY_DATE_WARNING, date);
|
settings.putInt(EXPIRY_DATE_WARNING, date);
|
||||||
settings.putInt(EXPIRY_DATE_VERSION, VERSION_CODE);
|
settings.putBoolean(EXPIRY_SHOW_UPDATE, false);
|
||||||
settingsManager.mergeSettings(settings, SETTINGS_NAMESPACE);
|
settingsManager.mergeSettings(settings, SETTINGS_NAMESPACE);
|
||||||
} catch (DbException e) {
|
} catch (DbException e) {
|
||||||
if (LOG.isLoggable(WARNING))
|
if (LOG.isLoggable(WARNING))
|
||||||
|
|||||||
Reference in New Issue
Block a user