commit
2ed1afa7c0
2 changed files with 20 additions and 24 deletions
|
@ -56,7 +56,6 @@ import info.nightscout.androidaps.Constants;
|
||||||
import info.nightscout.androidaps.MainApp;
|
import info.nightscout.androidaps.MainApp;
|
||||||
import info.nightscout.androidaps.R;
|
import info.nightscout.androidaps.R;
|
||||||
import info.nightscout.androidaps.data.DetailedBolusInfo;
|
import info.nightscout.androidaps.data.DetailedBolusInfo;
|
||||||
import info.nightscout.androidaps.plugins.iob.iobCobCalculator.GlucoseStatus;
|
|
||||||
import info.nightscout.androidaps.data.IobTotal;
|
import info.nightscout.androidaps.data.IobTotal;
|
||||||
import info.nightscout.androidaps.data.Profile;
|
import info.nightscout.androidaps.data.Profile;
|
||||||
import info.nightscout.androidaps.data.QuickWizardEntry;
|
import info.nightscout.androidaps.data.QuickWizardEntry;
|
||||||
|
@ -94,19 +93,18 @@ import info.nightscout.androidaps.plugins.general.careportal.OptionsToShow;
|
||||||
import info.nightscout.androidaps.plugins.general.nsclient.NSUpload;
|
import info.nightscout.androidaps.plugins.general.nsclient.NSUpload;
|
||||||
import info.nightscout.androidaps.plugins.general.nsclient.data.NSDeviceStatus;
|
import info.nightscout.androidaps.plugins.general.nsclient.data.NSDeviceStatus;
|
||||||
import info.nightscout.androidaps.plugins.general.nsclient.data.NSSettingsStatus;
|
import info.nightscout.androidaps.plugins.general.nsclient.data.NSSettingsStatus;
|
||||||
|
import info.nightscout.androidaps.plugins.general.overview.activities.QuickWizardListActivity;
|
||||||
import info.nightscout.androidaps.plugins.general.overview.dialogs.CalibrationDialog;
|
import info.nightscout.androidaps.plugins.general.overview.dialogs.CalibrationDialog;
|
||||||
import info.nightscout.androidaps.plugins.general.overview.dialogs.ErrorHelperActivity;
|
import info.nightscout.androidaps.plugins.general.overview.dialogs.ErrorHelperActivity;
|
||||||
import info.nightscout.androidaps.plugins.general.overview.dialogs.NewCarbsDialog;
|
import info.nightscout.androidaps.plugins.general.overview.dialogs.NewCarbsDialog;
|
||||||
import info.nightscout.androidaps.plugins.general.overview.dialogs.NewInsulinDialog;
|
import info.nightscout.androidaps.plugins.general.overview.dialogs.NewInsulinDialog;
|
||||||
import info.nightscout.androidaps.plugins.general.overview.dialogs.NewTreatmentDialog;
|
import info.nightscout.androidaps.plugins.general.overview.dialogs.NewTreatmentDialog;
|
||||||
import info.nightscout.androidaps.plugins.general.overview.dialogs.WizardDialog;
|
import info.nightscout.androidaps.plugins.general.overview.dialogs.WizardDialog;
|
||||||
import info.nightscout.androidaps.plugins.general.overview.activities.QuickWizardListActivity;
|
|
||||||
import info.nightscout.androidaps.plugins.general.overview.graphData.GraphData;
|
import info.nightscout.androidaps.plugins.general.overview.graphData.GraphData;
|
||||||
import info.nightscout.androidaps.plugins.general.overview.notifications.NotificationRecyclerViewAdapter;
|
|
||||||
import info.nightscout.androidaps.plugins.general.overview.notifications.NotificationStore;
|
|
||||||
import info.nightscout.androidaps.plugins.general.wear.ActionStringHandler;
|
import info.nightscout.androidaps.plugins.general.wear.ActionStringHandler;
|
||||||
import info.nightscout.androidaps.plugins.iob.iobCobCalculator.AutosensData;
|
import info.nightscout.androidaps.plugins.iob.iobCobCalculator.AutosensData;
|
||||||
import info.nightscout.androidaps.plugins.iob.iobCobCalculator.CobInfo;
|
import info.nightscout.androidaps.plugins.iob.iobCobCalculator.CobInfo;
|
||||||
|
import info.nightscout.androidaps.plugins.iob.iobCobCalculator.GlucoseStatus;
|
||||||
import info.nightscout.androidaps.plugins.iob.iobCobCalculator.IobCobCalculatorPlugin;
|
import info.nightscout.androidaps.plugins.iob.iobCobCalculator.IobCobCalculatorPlugin;
|
||||||
import info.nightscout.androidaps.plugins.iob.iobCobCalculator.events.EventAutosensCalculationFinished;
|
import info.nightscout.androidaps.plugins.iob.iobCobCalculator.events.EventAutosensCalculationFinished;
|
||||||
import info.nightscout.androidaps.plugins.iob.iobCobCalculator.events.EventIobCalculationProgress;
|
import info.nightscout.androidaps.plugins.iob.iobCobCalculator.events.EventIobCalculationProgress;
|
||||||
|
@ -1064,7 +1062,7 @@ public class OverviewFragment extends Fragment implements View.OnClickListener,
|
||||||
timeView.setText(DateUtil.timeString(new Date()));
|
timeView.setText(DateUtil.timeString(new Date()));
|
||||||
}
|
}
|
||||||
|
|
||||||
updateNotifications();
|
OverviewPlugin.getPlugin().notificationStore.updateNotifications(notificationsView);
|
||||||
|
|
||||||
pumpStatusLayout.setVisibility(View.GONE);
|
pumpStatusLayout.setVisibility(View.GONE);
|
||||||
loopStatusLayout.setVisibility(View.GONE);
|
loopStatusLayout.setVisibility(View.GONE);
|
||||||
|
@ -1603,21 +1601,6 @@ public class OverviewFragment extends Fragment implements View.OnClickListener,
|
||||||
Profiler.log(log, from, updateGUIStart);
|
Profiler.log(log, from, updateGUIStart);
|
||||||
}
|
}
|
||||||
|
|
||||||
//Notifications
|
|
||||||
|
|
||||||
void updateNotifications() {
|
|
||||||
NotificationStore nstore = OverviewPlugin.getPlugin().notificationStore;
|
|
||||||
nstore.removeExpired();
|
|
||||||
nstore.unSnooze();
|
|
||||||
if (nstore.store.size() > 0) {
|
|
||||||
NotificationRecyclerViewAdapter adapter = new NotificationRecyclerViewAdapter(nstore.store);
|
|
||||||
notificationsView.setAdapter(adapter);
|
|
||||||
notificationsView.setVisibility(View.VISIBLE);
|
|
||||||
} else {
|
|
||||||
notificationsView.setVisibility(View.GONE);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void applyStatuslight(TextView view, String text, double value, double warnThreshold, double urgentThreshold, double invalid, boolean checkAscending) {
|
public static void applyStatuslight(TextView view, String text, double value, double warnThreshold, double urgentThreshold, double invalid, boolean checkAscending) {
|
||||||
Function<Double, Boolean> check = checkAscending ? (Double threshold) -> value >= threshold : (Double threshold) -> value <= threshold;
|
Function<Double, Boolean> check = checkAscending ? (Double threshold) -> value >= threshold : (Double threshold) -> value <= threshold;
|
||||||
if (value != invalid) {
|
if (value != invalid) {
|
||||||
|
|
|
@ -12,6 +12,8 @@ import android.media.RingtoneManager;
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.Build;
|
import android.os.Build;
|
||||||
import android.support.v4.app.NotificationCompat;
|
import android.support.v4.app.NotificationCompat;
|
||||||
|
import android.support.v7.widget.RecyclerView;
|
||||||
|
import android.view.View;
|
||||||
|
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
@ -21,7 +23,6 @@ import java.util.Collections;
|
||||||
import java.util.Comparator;
|
import java.util.Comparator;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import info.nightscout.androidaps.Config;
|
|
||||||
import info.nightscout.androidaps.MainApp;
|
import info.nightscout.androidaps.MainApp;
|
||||||
import info.nightscout.androidaps.R;
|
import info.nightscout.androidaps.R;
|
||||||
import info.nightscout.androidaps.logging.L;
|
import info.nightscout.androidaps.logging.L;
|
||||||
|
@ -97,7 +98,7 @@ public class NotificationStore {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public synchronized void removeExpired() {
|
private synchronized void removeExpired() {
|
||||||
for (int i = 0; i < store.size(); i++) {
|
for (int i = 0; i < store.size(); i++) {
|
||||||
Notification n = store.get(i);
|
Notification n = store.get(i);
|
||||||
if (n.validTo.getTime() != 0 && n.validTo.getTime() < System.currentTimeMillis()) {
|
if (n.validTo.getTime() != 0 && n.validTo.getTime() < System.currentTimeMillis()) {
|
||||||
|
@ -107,13 +108,13 @@ public class NotificationStore {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void snoozeTo(long timeToSnooze) {
|
void snoozeTo(long timeToSnooze) {
|
||||||
if (L.isEnabled(L.NOTIFICATION))
|
if (L.isEnabled(L.NOTIFICATION))
|
||||||
log.debug("Snoozing alarm until: " + timeToSnooze);
|
log.debug("Snoozing alarm until: " + timeToSnooze);
|
||||||
SP.putLong("snoozedTo", timeToSnooze);
|
SP.putLong("snoozedTo", timeToSnooze);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void unSnooze() {
|
private void unSnooze() {
|
||||||
if (Notification.isAlarmForStaleData()) {
|
if (Notification.isAlarmForStaleData()) {
|
||||||
Notification notification = new Notification(Notification.NSALARM, MainApp.gs(R.string.nsalarm_staledata), Notification.URGENT);
|
Notification notification = new Notification(Notification.NSALARM, MainApp.gs(R.string.nsalarm_staledata), Notification.URGENT);
|
||||||
SP.putLong("snoozedTo", System.currentTimeMillis());
|
SP.putLong("snoozedTo", System.currentTimeMillis());
|
||||||
|
@ -160,4 +161,16 @@ public class NotificationStore {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public synchronized void updateNotifications(RecyclerView notificationsView) {
|
||||||
|
removeExpired();
|
||||||
|
unSnooze();
|
||||||
|
if (store.size() > 0) {
|
||||||
|
NotificationRecyclerViewAdapter adapter = new NotificationRecyclerViewAdapter(store);
|
||||||
|
notificationsView.setAdapter(adapter);
|
||||||
|
notificationsView.setVisibility(View.VISIBLE);
|
||||||
|
} else {
|
||||||
|
notificationsView.setVisibility(View.GONE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue