diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml
index ecae282..760591a 100644
--- a/.idea/deploymentTargetDropDown.xml
+++ b/.idea/deploymentTargetDropDown.xml
@@ -12,7 +12,7 @@
-
+
diff --git a/app/src/main/java/com/app/simplitend/apputils/NotificationService.java b/app/src/main/java/com/app/simplitend/apputils/NotificationService.java
index ef20436..7d93302 100644
--- a/app/src/main/java/com/app/simplitend/apputils/NotificationService.java
+++ b/app/src/main/java/com/app/simplitend/apputils/NotificationService.java
@@ -4,30 +4,15 @@ import static android.content.Context.NOTIFICATION_SERVICE;
import static com.app.simplitend.apputils.AppUtil.NOTIFICATION_ACTION;
import static com.app.simplitend.apputils.Constants.ACTIVITY_TIME;
import static com.app.simplitend.apputils.Constants.MEDICINE_TIME;
-import static com.app.simplitend.patientgeofencing.GeoFenceHelper.GEOFENCE_ID;
import static com.app.simplitend.patientgeofencing.GeoFenceHelper.GEOFENCE_TAG;
-import android.Manifest;
import android.app.NotificationManager;
-import android.app.PendingIntent;
-import android.content.Context;
import android.content.Intent;
-import android.content.pm.PackageManager;
-import android.os.Build;
import android.service.notification.StatusBarNotification;
import android.util.Log;
import androidx.annotation.NonNull;
-import androidx.annotation.RequiresPermission;
-import androidx.core.app.ActivityCompat;
-import androidx.core.content.ContextCompat;
-import com.app.simplitend.patientgeofencing.GeoFenceHelper;
-import com.google.android.gms.location.Geofence;
-import com.google.android.gms.location.GeofencingClient;
-import com.google.android.gms.location.GeofencingRequest;
-import com.google.android.gms.location.LocationServices;
-import com.google.android.gms.maps.model.LatLng;
import com.onesignal.OneSignal;
import com.onesignal.notifications.INotificationReceivedEvent;
import com.onesignal.notifications.INotificationServiceExtension;
@@ -36,7 +21,6 @@ import org.json.JSONException;
import org.json.JSONObject;
import java.util.Arrays;
-import java.util.Comparator;
import java.util.List;
public class NotificationService implements INotificationServiceExtension {
@@ -61,7 +45,7 @@ public class NotificationService implements INotificationServiceExtension {
{
List active_notifications = Arrays.asList(notificationManager.getActiveNotifications());
- int minPostTime = Integer.MAX_VALUE;
+ long minPostTime = Long.MAX_VALUE;
StatusBarNotification notification = null;
for (StatusBarNotification not: active_notifications){
if (not.getPostTime() < minPostTime){
diff --git a/app/src/main/java/com/app/simplitend/caregiverdashboard/fragments/CgDashBoardFragment.java b/app/src/main/java/com/app/simplitend/caregiverdashboard/fragments/CgDashBoardFragment.java
index d80d9a9..4fb9df2 100644
--- a/app/src/main/java/com/app/simplitend/caregiverdashboard/fragments/CgDashBoardFragment.java
+++ b/app/src/main/java/com/app/simplitend/caregiverdashboard/fragments/CgDashBoardFragment.java
@@ -5,6 +5,7 @@ import static com.app.simplitend.articles.ArticleShowerActivity.ARTICLE_TITLE;
import static com.app.simplitend.articles.ArticleShowerActivity.ARTICLE_URL_KEY;
import static com.app.simplitend.caregiverdashboard.activities.EditProfileInfoActivity.IS_CAREGIVER;
import static com.app.simplitend.cg_geofencing.CgGeoFencingActivity.GEOFENCE_DETAILS_KEY;
+import static com.app.simplitend.cg_geofencing.CgGeoFencingActivity.TO_SHOW_LOCATION_UPDATES_KEY;
import static com.app.simplitend.patient_dashboard.NotificationsActivity.USER_ID;
import static com.app.simplitend.patient_dashboard.NotificationsActivity.USER_TOKEN;
@@ -464,6 +465,7 @@ public class CgDashBoardFragment extends Fragment implements
gotoGeofenceActivity = false;
Intent intent = new Intent(requireActivity(), CgGeoFencingActivity.class);
intent.putExtra(GEOFENCE_DETAILS_KEY, geoFenceDetails);
+ intent.putExtra(TO_SHOW_LOCATION_UPDATES_KEY, true);
startActivity(intent);
}else{
// load into home screen map view
diff --git a/app/src/main/java/com/app/simplitend/cg_geofencing/CgGeoFencingActivity.java b/app/src/main/java/com/app/simplitend/cg_geofencing/CgGeoFencingActivity.java
index 06bda78..c10db2e 100644
--- a/app/src/main/java/com/app/simplitend/cg_geofencing/CgGeoFencingActivity.java
+++ b/app/src/main/java/com/app/simplitend/cg_geofencing/CgGeoFencingActivity.java
@@ -17,6 +17,7 @@ import android.os.Handler;
import android.os.Looper;
import android.util.Log;
import android.view.View;
+import android.widget.LinearLayout;
import android.widget.Toast;
import androidx.activity.result.ActivityResultLauncher;
@@ -51,6 +52,7 @@ import com.google.android.libraries.places.api.Places;
import com.google.android.libraries.places.api.model.Place;
import com.google.android.libraries.places.widget.Autocomplete;
import com.google.android.libraries.places.widget.model.AutocompleteActivityMode;
+import com.google.android.material.bottomsheet.BottomSheetBehavior;
import com.google.android.material.bottomsheet.BottomSheetDialog;
import java.util.Arrays;
@@ -70,6 +72,7 @@ public class CgGeoFencingActivity extends AppCompatActivity implements OnMapRead
private CaregiverMainViewModel viewModel;
public static final String GEOFENCE_DETAILS_KEY = "geofence_details";
+ public static final String TO_SHOW_LOCATION_UPDATES_KEY = "to_show_location_updates";
private GeoFenceDetails geoFenceDetails;
private static final String MILES = "miles";
@@ -99,6 +102,8 @@ public class CgGeoFencingActivity extends AppCompatActivity implements OnMapRead
private String selectedStreet;
+ protected boolean showLocationUpdates;
+
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@@ -118,6 +123,9 @@ public class CgGeoFencingActivity extends AppCompatActivity implements OnMapRead
} catch (Exception e) {
pat_cur_latLng = null;
}
+
+ showLocationUpdates = intent.getBooleanExtra(TO_SHOW_LOCATION_UPDATES_KEY, false);
+
} catch (Exception e) {
Toast.makeText(this, "Couldn't load Geofence.", Toast.LENGTH_SHORT).show();
geoFenceDetails = new GeoFenceDetails();
@@ -153,6 +161,26 @@ public class CgGeoFencingActivity extends AppCompatActivity implements OnMapRead
establishSocketConnection();
+ if (showLocationUpdates){
+ changeToLocationUpdatesView();
+ }
+
+ }
+
+ private void changeToLocationUpdatesView() {
+ binding.seniorNameTitle.setVisibility(View.VISIBLE);
+ binding.lastUpdated.setVisibility(View.VISIBLE);
+
+ binding.geofencingSubTitle.setVisibility(View.GONE);
+ binding.geofencingTitle.setVisibility(View.GONE);
+ binding.updateGeofenceBox.setVisibility(View.GONE);
+ binding.homeLocationBtn.setVisibility(View.GONE);
+ binding.cgLocationBtn.setVisibility(View.GONE);
+
+ binding.locationBs.setVisibility(View.VISIBLE);
+
+ BottomSheetBehavior bs_behavior = BottomSheetBehavior.from(binding.locationBs);
+ bs_behavior.setState(BottomSheetBehavior.STATE_EXPANDED);
}
@Override
diff --git a/app/src/main/res/layout/activity_cg_geofencing.xml b/app/src/main/res/layout/activity_cg_geofencing.xml
index 198ca19..0f879d9 100644
--- a/app/src/main/res/layout/activity_cg_geofencing.xml
+++ b/app/src/main/res/layout/activity_cg_geofencing.xml
@@ -1,299 +1,450 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ android:layout_height="match_parent"
+ android:background="@color/white"
+ android:orientation="vertical">
+ android:layout_height="?attr/actionBarSize"
+ android:gravity="center_vertical"
+ android:elevation="5dp"
+ android:orientation="horizontal">
-
+
+
- android:text="@string/cancel"
- android:fontFamily="@font/nunito_regular"
- android:textColor="@color/black"
- android:textAllCaps="false"
+
+ android:ellipsize="end"
+ android:fontFamily="@font/nunito_semibold"
+ android:singleLine="true"
+ android:text="Aditya"
-
- android:text="@string/update"
- android:fontFamily="@font/nunito_regular"
- android:textColor="@color/white"
- android:textAllCaps="false"
+
+ android:ellipsize="end"
+ android:fontFamily="@font/nunito_semibold"
+ android:singleLine="true"
+ android:text="Last updated now "
+
+ android:textAppearance="@style/TextAppearance.Material3.TitleSmall"
+ android:textColor="@android:color/darker_gray"
+
+ />
+
+
-
+ />
-
-
-
-
-
+ />
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ app:backgroundTint="@color/white"
+ app:cardCornerRadius="30dp"
+ app:cardElevation="5dp">
-
+
-
+
-
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file