Skip to content
This repository was archived by the owner on Mar 10, 2022. It is now read-only.

Commit 3db26d7

Browse files
authored
Merge pull request #89 from divacky/master
Clocks movement for proximity
2 parents 8b84206 + e34ab38 commit 3db26d7

File tree

3 files changed

+36
-14
lines changed

3 files changed

+36
-14
lines changed

app/src/main/java/com/mqbcoding/stats/DashboardFragment.java

Lines changed: 34 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import android.animation.Animator;
44
import android.animation.AnimatorListenerAdapter;
5+
import android.animation.ObjectAnimator;
56
import android.content.BroadcastReceiver;
67
import android.content.ComponentName;
78
import android.content.Context;
@@ -114,6 +115,8 @@ public class DashboardFragment extends CarFragment {
114115
//value displayed on graphlayout
115116
private TextView mGraphValueLeft, mGraphValueCenter, mGraphValueRight;
116117
private View rootView;
118+
private View mDashboard_gaudes, mDashboard_consumption;
119+
117120
private String androidClockFormat = "hh:mm a";
118121
int dashboardNum=1;
119122
private String googleGeocodeLocationStr = null;
@@ -333,6 +336,9 @@ public void run() {
333336

334337
private void setupViews(View rootView) {
335338
//layouts/constrains:
339+
mDashboard_gaudes = rootView.findViewById(R.id.include);
340+
mDashboard_consumption = rootView.findViewById(R.id.include_consumption);
341+
336342
mConstraintClockLeft = rootView.findViewById(R.id.constraintClockLeft);
337343
mConstraintClockCenter = rootView.findViewById(R.id.constraintClockCenter);
338344
mConstraintClockRight = rootView.findViewById(R.id.constraintClockRight);
@@ -559,7 +565,6 @@ private void onPreferencesChangeHandler() {
559565
mBtnNext.setVisibility(View.VISIBLE);
560566
mBtnPrev.setVisibility(View.VISIBLE);
561567
mtextTitleMain.setVisibility(View.VISIBLE);
562-
mtextTitleMain.setTextColor(Color.WHITE);
563568
}
564569

565570
// Load this only on first run, then leave it alone
@@ -2276,9 +2281,9 @@ private void updateClock(String query, Speedometer clock, RaySpeedometer visray,
22762281

22772282
// get the speed from the clock and have the high-visibility rays move to this speed as well
22782283

2279-
boolean noNewData = clockValue == null;
2284+
boolean noNewData = clockValue==null;
22802285
if (noNewData)
2281-
clockValue = oldValue;
2286+
clockValue=oldValue;
22822287

22832288

22842289
//TODO: Updates with a non fixed period could lead to strange graphs
@@ -2289,7 +2294,7 @@ private void updateClock(String query, Speedometer clock, RaySpeedometer visray,
22892294

22902295
// don't update when there's nothing to update
22912296
// check if old value and new value (rounded to 1 decimal placed) are equal
2292-
if (noNewData || Math.round(clockValue * 10) == Math.round(oldValue * 10)) {
2297+
if (noNewData || Math.round(clockValue*10) == Math.round(oldValue*10)) {
22932298
return;
22942299
}
22952300

@@ -2376,39 +2381,57 @@ private void updateTitle() {
23762381

23772382
//mProximity = true;
23782383
if (mProximity != null && mProximity && proximityOn) {
2384+
ObjectAnimator animation;
2385+
if (dashboardNum<4) animation = ObjectAnimator.ofFloat(mDashboard_gaudes, "y", 90);
2386+
else animation = ObjectAnimator.ofFloat(mDashboard_consumption, "y", 90);
2387+
2388+
animation.setDuration(200);
2389+
animation.start();
23792390
mTitleClockLeft.setText(mLabelClockL);
23802391
mTitleClockCenter.setText(mLabelClockC);
23812392
mTitleClockRight.setText(mLabelClockR);
23822393
mBtnNext.setVisibility(View.VISIBLE);
23832394
mBtnPrev.setVisibility(View.VISIBLE);
2384-
//mtextTitleMain.setVisibility(View.VISIBLE);
2385-
mtextTitleMain.setTextColor(Color.WHITE);
2395+
mtextTitleMain.setVisibility(View.VISIBLE);
2396+
// mtextTitleMain.setTextColor(Color.WHITE);
23862397
mTitleConsumptionRight.setVisibility(View.VISIBLE);
23872398
mTitleConsumptionLeft.setVisibility(View.VISIBLE);
23882399
mTitleConsumptionCenter.setVisibility(View.VISIBLE);
2400+
2401+
23892402
} else if (!proximityOn) {
2403+
ObjectAnimator animation;
2404+
if (dashboardNum<4) animation = ObjectAnimator.ofFloat(mDashboard_gaudes, "y", 90);
2405+
else animation = ObjectAnimator.ofFloat(mDashboard_consumption, "y", 90);
2406+
animation.setDuration(200);
2407+
animation.start();
23902408
mTitleClockLeft.setText("");
23912409
mTitleClockCenter.setText("");
23922410
mTitleClockRight.setText("");
23932411
mBtnNext.setVisibility(View.VISIBLE);
23942412
mBtnPrev.setVisibility(View.VISIBLE);
2395-
//mtextTitleMain.setVisibility(View.VISIBLE);
2396-
mtextTitleMain.setTextColor(Color.WHITE);
2413+
mtextTitleMain.setVisibility(View.VISIBLE);
2414+
//mtextTitleMain.setTextColor(Color.WHITE);
23972415
mTitleConsumptionRight.setVisibility(View.INVISIBLE);
23982416
mTitleConsumptionLeft.setVisibility(View.INVISIBLE);
23992417
mTitleConsumptionCenter.setVisibility(View.INVISIBLE);
2418+
24002419
} else {
24012420
mTitleClockLeft.setText("");
24022421
mTitleClockCenter.setText("");
24032422
mTitleClockRight.setText("");
24042423
mBtnNext.setVisibility(View.INVISIBLE);
24052424
mBtnPrev.setVisibility(View.INVISIBLE);
2406-
//mtextTitleMain.setVisibility(View.VISIBLE);
2407-
mtextTitleMain.setTextColor(Color.DKGRAY);
2425+
mtextTitleMain.setVisibility(View.INVISIBLE);
2426+
//mtextTitleMain.setTextColor(Color.DKGRAY);
24082427
mTitleConsumptionRight.setVisibility(View.INVISIBLE);
24092428
mTitleConsumptionLeft.setVisibility(View.INVISIBLE);
24102429
mTitleConsumptionCenter.setVisibility(View.INVISIBLE);
2411-
2430+
ObjectAnimator animation;
2431+
if (dashboardNum<4) animation = ObjectAnimator.ofFloat(mDashboard_gaudes, "y", 45);
2432+
else animation = ObjectAnimator.ofFloat(mDashboard_consumption, "y", 45);
2433+
animation.setDuration(200);
2434+
animation.start();
24122435
}
24132436

24142437
String currentTime = getTime();
@@ -2420,7 +2443,6 @@ private void updateTitle() {
24202443
// Display location in left side of Title bar
24212444
if (showStreetName) {
24222445
String leftTitle="";
2423-
Log.v(TAG,"SourceLocation: "+sourceLocation+"!!!");
24242446
if (sourceLocation.equals("Geocoding")) {
24252447
leftTitle = googleGeocodeLocationStr;
24262448
} else {

app/src/main/java/com/mqbcoding/stats/GeocodeLocationService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ public void run() {
106106
int lastAltitude = 0;
107107
try {
108108
lastLocation = mLocationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
109-
lastAltitude = (int) mLastDecodedLocation.getAltitude();
109+
lastAltitude = (int) lastLocation.getAltitude();
110110
Log.d(TAG,"Received location: " + lastLocation);
111111
Log.d(TAG,"Received Altitude: " + lastAltitude);
112112
} catch (SecurityException ex) {

app/src/main/res/layout/fragment_dashboard.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
layout="@layout/layout_dashboard_consumption"
2424
android:layout_width="match_parent"
2525
android:layout_height="wrap_content"
26-
android:layout_marginTop="88dp"
26+
android:layout_marginTop="90dp"
2727
android:background="#00000000"
2828
app:layout_constraintEnd_toEndOf="parent"
2929
app:layout_constraintHorizontal_bias="0.0"

0 commit comments

Comments
 (0)