diff --git a/app/src/main/java/info/nightscout/androidaps/MainActivity.java b/app/src/main/java/info/nightscout/androidaps/MainActivity.java index c1b616c086..9c0d68d778 100644 --- a/app/src/main/java/info/nightscout/androidaps/MainActivity.java +++ b/app/src/main/java/info/nightscout/androidaps/MainActivity.java @@ -20,7 +20,6 @@ import android.support.v7.widget.Toolbar; import android.text.SpannableString; import android.text.method.LinkMovementMethod; import android.text.util.Linkify; -import android.util.Log; import android.util.TypedValue; import android.view.Menu; import android.view.MenuItem; @@ -42,11 +41,11 @@ import org.slf4j.LoggerFactory; import info.nightscout.androidaps.data.Profile; import info.nightscout.androidaps.events.EventAppExit; import info.nightscout.androidaps.events.EventFeatureRunning; +import info.nightscout.androidaps.events.EventPreferenceChange; import info.nightscout.androidaps.events.EventRefreshGui; import info.nightscout.androidaps.interfaces.PluginBase; import info.nightscout.androidaps.plugins.ConfigBuilder.ConfigBuilderPlugin; import info.nightscout.androidaps.plugins.Food.FoodPlugin; -import info.nightscout.androidaps.plugins.Overview.events.EventSetWakeLock; import info.nightscout.androidaps.plugins.Treatments.TreatmentsPlugin; import info.nightscout.androidaps.setupwizard.SetupWizardActivity; import info.nightscout.androidaps.tabs.TabPageAdapter; @@ -88,7 +87,8 @@ public class MainActivity extends AppCompatActivity { drawerLayout.addDrawerListener(actionBarDrawerToggle); actionBarDrawerToggle.syncState(); - onStatusEvent(new EventSetWakeLock(SP.getBoolean("lockscreen", false))); + // initialize screen wake lock + onEventPreferenceChange(new EventPreferenceChange(R.string.key_lockscreen)); doMigrations(); @@ -156,15 +156,18 @@ public class MainActivity extends AppCompatActivity { } @Subscribe - public void onStatusEvent(final EventSetWakeLock ev) { - final PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE); - if (ev.lock) { - mWakeLock = pm.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK, "AAPS"); - if (!mWakeLock.isHeld()) - mWakeLock.acquire(); - } else { - if (mWakeLock != null && mWakeLock.isHeld()) - mWakeLock.release(); + public void onEventPreferenceChange(final EventPreferenceChange ev) { + if (ev.isChanged(R.string.key_lockscreen)) { + boolean lock = SP.getBoolean(R.string.key_lockscreen, false); + final PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE); + if (lock) { + mWakeLock = pm.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK, "AAPS"); + if (!mWakeLock.isHeld()) + mWakeLock.acquire(); + } else { + if (mWakeLock != null && mWakeLock.isHeld()) + mWakeLock.release(); + } } } @@ -184,7 +187,7 @@ public class MainActivity extends AppCompatActivity { } } - boolean lockScreen = BuildConfig.NSCLIENTOLNY && SP.getBoolean("lockscreen", false); + boolean lockScreen = BuildConfig.NSCLIENTOLNY && SP.getBoolean(R.string.key_lockscreen, false); if (lockScreen) getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); else diff --git a/app/src/main/java/info/nightscout/androidaps/data/Profile.java b/app/src/main/java/info/nightscout/androidaps/data/Profile.java index 844fa6472a..13b596eb42 100644 --- a/app/src/main/java/info/nightscout/androidaps/data/Profile.java +++ b/app/src/main/java/info/nightscout/androidaps/data/Profile.java @@ -552,6 +552,11 @@ public class Profile { else return DecimalFormatter.to1Decimal(valueInMmol); } + public static String toSignedUnitsString(Double valueInMgdl, Double valueInMmol, String units) { + if (units.equals(Constants.MGDL)) return (valueInMgdl > 0 ? "+" : "") + DecimalFormatter.to0Decimal(valueInMgdl); + else return (valueInMmol > 0 ? "+" : "") + DecimalFormatter.to1Decimal(valueInMmol); + } + // targets are stored in mg/dl but profile vary public static String toTargetRangeString(double low, double high, String sourceUnits, String units) { double lowMgdl = toMgdl(low, sourceUnits); diff --git a/app/src/main/java/info/nightscout/androidaps/plugins/Overview/OverviewFragment.java b/app/src/main/java/info/nightscout/androidaps/plugins/Overview/OverviewFragment.java index 18a756d142..703d21e880 100644 --- a/app/src/main/java/info/nightscout/androidaps/plugins/Overview/OverviewFragment.java +++ b/app/src/main/java/info/nightscout/androidaps/plugins/Overview/OverviewFragment.java @@ -24,14 +24,11 @@ import android.text.style.ForegroundColorSpan; import android.util.DisplayMetrics; import android.util.TypedValue; import android.view.ContextMenu; -import android.view.HapticFeedbackConstants; import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; -import android.widget.CheckBox; -import android.widget.CompoundButton; import android.widget.ImageButton; import android.widget.LinearLayout; import android.widget.TextView; @@ -88,6 +85,7 @@ import info.nightscout.androidaps.plugins.Careportal.Dialogs.NewNSTreatmentDialo import info.nightscout.androidaps.plugins.Careportal.OptionsToShow; import info.nightscout.androidaps.plugins.ConfigBuilder.ConfigBuilderPlugin; import info.nightscout.androidaps.plugins.ConstraintsObjectives.ObjectivesPlugin; +import info.nightscout.androidaps.plugins.IobCobCalculator.AutosensResult; import info.nightscout.androidaps.plugins.IobCobCalculator.CobInfo; import info.nightscout.androidaps.plugins.IobCobCalculator.IobCobCalculatorPlugin; import info.nightscout.androidaps.plugins.IobCobCalculator.events.EventAutosensCalculationFinished; @@ -102,7 +100,6 @@ import info.nightscout.androidaps.plugins.Overview.Dialogs.NewInsulinDialog; import info.nightscout.androidaps.plugins.Overview.Dialogs.NewTreatmentDialog; import info.nightscout.androidaps.plugins.Overview.Dialogs.WizardDialog; import info.nightscout.androidaps.plugins.Overview.activities.QuickWizardListActivity; -import info.nightscout.androidaps.plugins.Overview.events.EventSetWakeLock; import info.nightscout.androidaps.plugins.Overview.graphData.GraphData; import info.nightscout.androidaps.plugins.Overview.notifications.NotificationRecyclerViewAdapter; import info.nightscout.androidaps.plugins.Overview.notifications.NotificationStore; @@ -131,8 +128,11 @@ public class OverviewFragment extends Fragment implements View.OnClickListener, TextView timeView; TextView bgView; TextView arrowView; + TextView sensitivityView; TextView timeAgoView; + TextView timeAgoShortView; TextView deltaView; + TextView deltaShortView; TextView avgdeltaView; TextView baseBasalView; TextView extendedBolusView; @@ -171,8 +171,6 @@ public class OverviewFragment extends Fragment implements View.OnClickListener, SingleClickButton cgmButton; SingleClickButton quickWizardButton; - CheckBox lockScreen; - boolean smallWidth; boolean smallHeight; @@ -229,8 +227,11 @@ public class OverviewFragment extends Fragment implements View.OnClickListener, if (smallWidth) { arrowView.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 35); } + sensitivityView = (TextView) view.findViewById(R.id.overview_sensitivity); timeAgoView = (TextView) view.findViewById(R.id.overview_timeago); + timeAgoShortView = (TextView) view.findViewById(R.id.overview_timeagoshort); deltaView = (TextView) view.findViewById(R.id.overview_delta); + deltaShortView = (TextView) view.findViewById(R.id.overview_deltashort); avgdeltaView = (TextView) view.findViewById(R.id.overview_avgdelta); baseBasalView = (TextView) view.findViewById(R.id.overview_basebasal); extendedBolusView = (TextView) view.findViewById(R.id.overview_extendedbolus); @@ -327,18 +328,6 @@ public class OverviewFragment extends Fragment implements View.OnClickListener, setupChartMenu(view); - lockScreen = (CheckBox) view.findViewById(R.id.overview_lockscreen); - if (lockScreen != null) { - lockScreen.setChecked(SP.getBoolean("lockscreen", false)); - lockScreen.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { - @Override - public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - SP.putBoolean("lockscreen", isChecked); - MainApp.bus().post(new EventSetWakeLock(isChecked)); - } - }); - } - return view; } catch (Exception e) { FabricPrivacy.logException(e); @@ -1088,12 +1077,18 @@ public class OverviewFragment extends Fragment implements View.OnClickListener, arrowView.setTextColor(color); GlucoseStatus glucoseStatus = GlucoseStatus.getGlucoseStatusData(); if (glucoseStatus != null) { - deltaView.setText("Δ " + Profile.toUnitsString(glucoseStatus.delta, glucoseStatus.delta * Constants.MGDL_TO_MMOLL, units) + " " + units); + if (deltaView != null) + deltaView.setText("Δ " + Profile.toUnitsString(glucoseStatus.delta, glucoseStatus.delta * Constants.MGDL_TO_MMOLL, units) + " " + units); + if (deltaShortView != null) + deltaShortView.setText(Profile.toSignedUnitsString(glucoseStatus.delta, glucoseStatus.delta * Constants.MGDL_TO_MMOLL, units)); if (avgdeltaView != null) avgdeltaView.setText("øΔ15m: " + Profile.toUnitsString(glucoseStatus.short_avgdelta, glucoseStatus.short_avgdelta * Constants.MGDL_TO_MMOLL, units) + " øΔ40m: " + Profile.toUnitsString(glucoseStatus.long_avgdelta, glucoseStatus.long_avgdelta * Constants.MGDL_TO_MMOLL, units)); } else { - deltaView.setText("Δ " + MainApp.gs(R.string.notavailable)); + if (deltaView != null) + deltaView.setText("Δ " + MainApp.gs(R.string.notavailable)); + if (deltaShortView != null) + deltaShortView.setText("---"); if (avgdeltaView != null) avgdeltaView.setText(""); } @@ -1249,7 +1244,7 @@ public class OverviewFragment extends Fragment implements View.OnClickListener, extendedBolusView.setText(extendedBolusText); } if (extendedBolusText.equals("")) - extendedBolusView.setVisibility(View.GONE); + extendedBolusView.setVisibility(View.INVISIBLE); else extendedBolusView.setVisibility(View.VISIBLE); } @@ -1316,7 +1311,10 @@ public class OverviewFragment extends Fragment implements View.OnClickListener, flag &= ~Paint.STRIKE_THRU_TEXT_FLAG; bgView.setPaintFlags(flag); - timeAgoView.setText(DateUtil.minAgo(lastBG.date)); + if (timeAgoView != null) + timeAgoView.setText(DateUtil.minAgo(lastBG.date)); + if (timeAgoShortView != null) + timeAgoShortView.setText("(" + DateUtil.minAgoShort(lastBG.date) + ")"); // iob TreatmentsPlugin.getPlugin().updateTotalIOBTreatments(); @@ -1376,6 +1374,15 @@ public class OverviewFragment extends Fragment implements View.OnClickListener, uploaderDeviceStatusView.setOnClickListener(v -> OKDialog.show(getActivity(), MainApp.gs(R.string.uploader), NSDeviceStatus.getInstance().getExtendedUploaderStatus(), null)); } + // Sensitivity + if (sensitivityView != null) { + AutosensResult lastAutosensResult = IobCobCalculatorPlugin.getPlugin().detectSensitivityWithLock(IobCobCalculatorPlugin.getPlugin().oldestDataAvailable(), System.currentTimeMillis()); + if (lastAutosensResult != null) + sensitivityView.setText(String.format("%.0f%%", lastAutosensResult.ratio * 100)); + else + sensitivityView.setText(""); + } + // ****** GRAPH ******* new Thread(() -> { diff --git a/app/src/main/java/info/nightscout/androidaps/plugins/Overview/events/EventSetWakeLock.java b/app/src/main/java/info/nightscout/androidaps/plugins/Overview/events/EventSetWakeLock.java deleted file mode 100644 index 49ccf9fbfb..0000000000 --- a/app/src/main/java/info/nightscout/androidaps/plugins/Overview/events/EventSetWakeLock.java +++ /dev/null @@ -1,15 +0,0 @@ -package info.nightscout.androidaps.plugins.Overview.events; - -import info.nightscout.androidaps.events.Event; - -/** - * Created by mike on 02.07.2017. - */ - -public class EventSetWakeLock extends Event { - public boolean lock = false; - - public EventSetWakeLock(boolean val) { - lock = val; - } -} diff --git a/app/src/main/java/info/nightscout/androidaps/plugins/Overview/graphData/GraphData.java b/app/src/main/java/info/nightscout/androidaps/plugins/Overview/graphData/GraphData.java index 4f913fbe02..d4a532979b 100644 --- a/app/src/main/java/info/nightscout/androidaps/plugins/Overview/graphData/GraphData.java +++ b/app/src/main/java/info/nightscout/androidaps/plugins/Overview/graphData/GraphData.java @@ -49,7 +49,8 @@ import info.nightscout.utils.Round; public class GraphData { private GraphView graph; - public double maxY = 0; + public double maxY = Double.MIN_VALUE; + public double minY = Double.MAX_VALUE; private List bgReadingsArray; private String units; private List series = new ArrayList<>(); @@ -63,7 +64,7 @@ public class GraphData { } public void addBgReadings(long fromTime, long toTime, double lowLine, double highLine, List predictions) { - double maxBgValue = 0d; + double maxBgValue = Double.MIN_VALUE; bgReadingsArray = MainApp.getDbHelper().getBgreadingsDataFromTime(fromTime, true); List bgListArray = new ArrayList<>(); @@ -93,10 +94,8 @@ public class GraphData { maxY = maxBgValue; + minY = 0; // set manual y bounds to have nice steps - graph.getViewport().setMaxY(maxY); - graph.getViewport().setMinY(0); - graph.getViewport().setYAxisBoundsManual(true); graph.getGridLabelRenderer().setNumVerticalLabels(numOfVertLines); addSeries(new PointsWithLabelGraphSeries<>(bg)); @@ -335,7 +334,7 @@ public class GraphData { public void addIob(long fromTime, long toTime, boolean useForScale, double scale) { FixedLineGraphSeries iobSeries; List iobArray = new ArrayList<>(); - Double maxIobValueFound = 0d; + Double maxIobValueFound = Double.MIN_VALUE; double lastIob = 0; Scale iobScale = new Scale(); @@ -361,8 +360,10 @@ public class GraphData { iobSeries.setColor(MainApp.gc(R.color.iob)); iobSeries.setThickness(3); - if (useForScale) + if (useForScale) { maxY = maxIobValueFound; + minY = -maxIobValueFound; + } iobScale.setMultiplier(maxY * scale / maxIobValueFound); @@ -406,8 +407,10 @@ public class GraphData { cobSeries.setColor(MainApp.gc(R.color.cob)); cobSeries.setThickness(3); - if (useForScale) + if (useForScale) { maxY = maxCobValueFound; + minY = 0; + } cobScale.setMultiplier(maxY * scale / maxCobValueFound); @@ -466,8 +469,10 @@ public class GraphData { } }); - if (useForScale) + if (useForScale) { maxY = maxDevValueFound; + minY = -maxY; + } devScale.setMultiplier(maxY * scale / maxDevValueFound); @@ -478,14 +483,16 @@ public class GraphData { public void addRatio(long fromTime, long toTime, boolean useForScale, double scale) { LineGraphSeries ratioSeries; List ratioArray = new ArrayList<>(); - Double maxRatioValueFound = 0d; - Scale ratioScale = new Scale(-1d); + Double maxRatioValueFound = Double.MIN_VALUE; + Double minRatioValueFound = Double.MAX_VALUE; + Scale ratioScale = new Scale(); for (long time = fromTime; time <= toTime; time += 5 * 60 * 1000L) { AutosensData autosensData = IobCobCalculatorPlugin.getPlugin().getAutosensData(time); if (autosensData != null) { - ratioArray.add(new ScaledDataPoint(time, autosensData.autosensRatio, ratioScale)); - maxRatioValueFound = Math.max(maxRatioValueFound, Math.abs(autosensData.autosensRatio)); + ratioArray.add(new ScaledDataPoint(time, autosensData.autosensRatio - 1, ratioScale)); + maxRatioValueFound = Math.max(maxRatioValueFound, autosensData.autosensRatio - 1); + minRatioValueFound = Math.min(minRatioValueFound, autosensData.autosensRatio - 1); } } @@ -496,8 +503,10 @@ public class GraphData { ratioSeries.setColor(MainApp.gc(R.color.ratio)); ratioSeries.setThickness(3); - if (useForScale) + if (useForScale) { maxY = maxRatioValueFound; + minY = minRatioValueFound; + } ratioScale.setMultiplier(maxY * scale / maxRatioValueFound); @@ -538,8 +547,10 @@ public class GraphData { dsMinSeries.setColor(MainApp.gc(R.color.devslopeneg)); dsMinSeries.setThickness(3); - if (useForScale) + if (useForScale) { maxY = Math.max(maxFromMaxValueFound, maxFromMinValueFound); + minY = -maxY; + } dsMaxScale.setMultiplier(maxY * scale / maxFromMaxValueFound); dsMinScale.setMultiplier(maxY * scale / maxFromMinValueFound); @@ -593,6 +604,10 @@ public class GraphData { } } + graph.getViewport().setMaxY(maxY); + graph.getViewport().setMinY(minY); + graph.getViewport().setYAxisBoundsManual(true); + // draw it graph.onDataChanged(false, false); } diff --git a/app/src/main/java/info/nightscout/utils/DateUtil.java b/app/src/main/java/info/nightscout/utils/DateUtil.java index 441449e8ee..7d7db3f5a7 100644 --- a/app/src/main/java/info/nightscout/utils/DateUtil.java +++ b/app/src/main/java/info/nightscout/utils/DateUtil.java @@ -135,6 +135,11 @@ public class DateUtil { return MainApp.gs(R.string.minago, mins); } + public static String minAgoShort(long time) { + Integer mins = (int) ((time - now()) / 1000 / 60); + return (mins > 0 ? "+" : "") + mins.toString(); + } + public static String hourAgo(long time) { double hours = (now() - time) / 1000d / 60 / 60; return MainApp.gs(R.string.hoursago, hours); diff --git a/app/src/main/res/layout/overview_fragment_nsclient.xml b/app/src/main/res/layout/overview_fragment_nsclient.xml index edb624e97c..6faf8db527 100644 --- a/app/src/main/res/layout/overview_fragment_nsclient.xml +++ b/app/src/main/res/layout/overview_fragment_nsclient.xml @@ -164,12 +164,6 @@ android:textSize="30sp" android:textStyle="bold" /> - diff --git a/app/src/main/res/layout/overview_fragment_nsclient_tablet.xml b/app/src/main/res/layout/overview_fragment_nsclient_tablet.xml index cee038f1ff..ad0e52c993 100644 --- a/app/src/main/res/layout/overview_fragment_nsclient_tablet.xml +++ b/app/src/main/res/layout/overview_fragment_nsclient_tablet.xml @@ -68,9 +68,9 @@ android:layout_gravity="right" android:layout_weight="1" android:gravity="center_vertical|center_horizontal" - android:text="TempTarget" android:paddingBottom="3dp" android:paddingTop="3dp" + android:text="TempTarget" android:textAppearance="?android:attr/textAppearanceSmall" android:textColor="@color/mdtp_white" /> @@ -89,9 +89,9 @@ android:layout_height="wrap_content" android:layout_marginLeft="5dp" android:layout_marginRight="5dp" + android:gravity="center_vertical|center_horizontal" android:paddingBottom="3dp" android:paddingTop="3dp" - android:gravity="center_vertical|center_horizontal" android:text="@string/initializing" android:textAppearance="?android:attr/textAppearanceSmall" /> @@ -106,8 +106,7 @@ android:id="@+id/overview_bg" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_gravity="top|left" - android:gravity="center_vertical" + android:layout_gravity="center_vertical" android:text="00.0" android:textSize="90dp" android:textStyle="bold" /> @@ -116,69 +115,51 @@ android:id="@+id/overview_arrow" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_gravity="top|left" + android:layout_gravity="center_vertical" android:layout_marginTop="-15dp" - android:gravity="center_vertical" android:paddingLeft="-5dp" android:paddingRight="-5dp" android:text="→" - android:textSize="90dp" + android:textSize="50sp" android:textStyle="bold" /> - + + - - - - - - - - - - + android:gravity="center_vertical|center_horizontal" + android:text="100%" + android:textSize="50sp" + android:textStyle="bold" /> + + @@ -616,8 +597,8 @@ + android:orientation="horizontal" + android:paddingRight="5dp"> БАЗА УД. Заключен екран - Закл Когато включите Autosense feature трябва да въвеждате ВСИЧКИ въглехидрати. В противен случай те ще се изчисляват грешно като повишена чувствителност!! чрез Среднопретеглената стойност OK diff --git a/app/src/main/res/values-cs/strings.xml b/app/src/main/res/values-cs/strings.xml index e0cd78bd0d..d672f1dc7a 100644 --- a/app/src/main/res/values-cs/strings.xml +++ b/app/src/main/res/values-cs/strings.xml @@ -526,7 +526,6 @@ Chybný profil !!! IOB Zámek obrazovky - Zámek Zrušit OK Nastavení alarmů diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index cfc2762608..8060aef1b7 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -493,7 +493,6 @@ Insgesamt %1$d Einträge erfolgreich hochgeladen Dauer der Insulinwirkung INS - Sperr %1$s benötigt Batterie-Optimierungs-Whitelisting, um korrekt arbeiten zu können Veraltete Daten Veraltete Daten seit [Min.] diff --git a/app/src/main/res/values-el/strings.xml b/app/src/main/res/values-el/strings.xml index 44f5874e25..3629df19aa 100644 --- a/app/src/main/res/values-el/strings.xml +++ b/app/src/main/res/values-el/strings.xml @@ -559,7 +559,6 @@ BAS EXT Κλείδωμα οθόνης - Κλείδωμα Ενεργοποιώντας το autosense θυμιθείτε να εισάγετε όλους τους υδατ. Διαφορετικά, οι αποκλίσεις των υδατανθράκων θα εντοπιστούν λανθασμένα ως αλλαγή ευαισθησίας Σταθμισμένος μέσος όρος ευαισθησίας OK diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml index 8c27102a55..f433d1bbf8 100644 --- a/app/src/main/res/values-es/strings.xml +++ b/app/src/main/res/values-es/strings.xml @@ -578,7 +578,6 @@ BAS EXT Bloqueo de pantalla - Bloqueo Al activar autosens recuerda editar todos carbohidratos comidos. Si no, sensibilidad será calculada incorrectamente !!! Sensitivity WeightedAverage OK diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 2bfca7cec0..cbc49c7ad8 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -557,7 +557,6 @@ BAS EXT Écran verrouillé - verrouiller En activant la fonction Autosens, n’oubliez pas de rentrer tout les glucides consommés. Sinon les déviations de glucides seront incorrectement identifiées alors que la sensibilité change !! Sensibilité avec moyenne pondérée OK diff --git a/app/src/main/res/values-ko/strings.xml b/app/src/main/res/values-ko/strings.xml index b5119364a9..eb8df19fb6 100644 --- a/app/src/main/res/values-ko/strings.xml +++ b/app/src/main/res/values-ko/strings.xml @@ -571,7 +571,6 @@ BAS EXT 화면 잠금 - 잠금 Autosense 기능을 켜면 모든 섭취된 탄수화물양을 입력하십시오. 그렇지 않으면 탄수화물 편차(deviations)가 민감도 변화로 잘못 인식될것입니다!! 민감도 가중평균 OK diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml index 191cbc31ad..a484b1bf8d 100644 --- a/app/src/main/res/values-nl/strings.xml +++ b/app/src/main/res/values-nl/strings.xml @@ -203,7 +203,6 @@ Lokaal profiel LP Vergrendel scherm - Vergrendel Loop APS Berekening met toepassing van limieten diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml index 46ebc8995d..c04cd42dc9 100644 --- a/app/src/main/res/values-pl/strings.xml +++ b/app/src/main/res/values-pl/strings.xml @@ -595,7 +595,6 @@ BAS EXT Zablokuj obraz - Zablokuj Przy włączonej funkcji Autosens pamiętaj, żeby wprowadzać wszystkie węglowodany. W innym wypadku odchylenia węglowodanów będą błędnie identyfikowane jako zmiany wrażliwości !! Wrażliwość ŚredniaWażona OK diff --git a/app/src/main/res/values-ro/strings.xml b/app/src/main/res/values-ro/strings.xml index 50faf76687..14b0a485ae 100644 --- a/app/src/main/res/values-ro/strings.xml +++ b/app/src/main/res/values-ro/strings.xml @@ -590,7 +590,6 @@ BAZ EXT Ecran blocare - Blocat Trebuie introduși toți carbo la pornirea Autosens. În caz contrar, acțiunea carbo va fi percepută ca schimbare a sensibilității! Mediană sensibilitate OK diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index 43c3d8988a..6bd26be624 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -555,7 +555,6 @@ НЕВЕРНО Неверный профиль !!! блокировка экрана - блок отмена OK Голландский diff --git a/app/src/main/res/values-sv/strings.xml b/app/src/main/res/values-sv/strings.xml index 3148682cdd..ac3083b867 100644 --- a/app/src/main/res/values-sv/strings.xml +++ b/app/src/main/res/values-sv/strings.xml @@ -539,7 +539,6 @@ MUST NOT BE USED TO MAKE MEDICAL DECISIONS. THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. ISF saknas i profilen. Använder standardvärde. Lås skärm - Lås mmol/l %d m mg/dl diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 7d7e36abaa..d2ed121632 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -686,7 +686,7 @@ BAS EXT Lock screen - Lock + Prevent Android to turn screen off. It will consume lot of energy when not plugged to power outlet. By turning on Autosense feature remember to enter all eated carbs. Otherwise carbs deviations will be identified wrong as sensitivity change !! Sensitivity WeightedAverage OK @@ -1171,6 +1171,7 @@ Invalid pump setup, check the docs and verify that the Quick Info menu is named "QUICK INFO" using the 360 configuration software. Custom + lockscreen %d day diff --git a/app/src/main/res/xml/pref_overview.xml b/app/src/main/res/xml/pref_overview.xml index 5d08cd671e..4076b2f2df 100644 --- a/app/src/main/res/xml/pref_overview.xml +++ b/app/src/main/res/xml/pref_overview.xml @@ -4,6 +4,12 @@ + +