diff --git a/app/src/main/java/fr/free/nrw/commons/contributions/MainActivity.java b/app/src/main/java/fr/free/nrw/commons/contributions/MainActivity.java index 004345b55..25b14f8cc 100644 --- a/app/src/main/java/fr/free/nrw/commons/contributions/MainActivity.java +++ b/app/src/main/java/fr/free/nrw/commons/contributions/MainActivity.java @@ -32,7 +32,7 @@ import fr.free.nrw.commons.auth.AuthenticatedActivity; import fr.free.nrw.commons.auth.SessionManager; import fr.free.nrw.commons.location.LocationServiceManager; import fr.free.nrw.commons.nearby.NearbyNotificationCardView; -import fr.free.nrw.commons.nearby.NearbyTestLayersFragment; +import fr.free.nrw.commons.nearby.mvp.fragments.NearbyParentFragment; import fr.free.nrw.commons.notification.Notification; import fr.free.nrw.commons.notification.NotificationActivity; import fr.free.nrw.commons.notification.NotificationController; @@ -185,7 +185,7 @@ public class MainActivity extends AuthenticatedActivity implements FragmentManag isContributionsFragmentVisible = false; updateMenuItem(); // Do all permission and GPS related tasks on tab selected, not on create - ((NearbyTestLayersFragment)contributionsActivityPagerAdapter.getItem(1)).nearbyParentFragmentPresenter.onTabSelected(); + ((NearbyParentFragment)contributionsActivityPagerAdapter.getItem(1)).nearbyParentFragmentPresenter.onTabSelected(); break; default: tabLayout.getTabAt(CONTRIBUTIONS_TAB_POSITION).select(); @@ -266,7 +266,7 @@ public class MainActivity extends AuthenticatedActivity implements FragmentManag } } else if (getSupportFragmentManager().findFragmentByTag(nearbyFragmentTag) != null && !isContributionsFragmentVisible) { // Means that nearby fragment is visible (not contributions fragment) - NearbyTestLayersFragment nearbyFragment = (NearbyTestLayersFragment) contributionsActivityPagerAdapter.getItem(1); + NearbyParentFragment nearbyFragment = (NearbyParentFragment) contributionsActivityPagerAdapter.getItem(1); nearbyFragment.nearbyParentFragmentPresenter.backButtonClicked(); } else { super.onBackPressed(); @@ -343,7 +343,7 @@ public class MainActivity extends AuthenticatedActivity implements FragmentManag return true; case R.id.list_sheet: if (contributionsActivityPagerAdapter.getItem(1) != null) { - ((NearbyTestLayersFragment)contributionsActivityPagerAdapter.getItem(1)).listOptionMenuItemClicked(); + ((NearbyParentFragment)contributionsActivityPagerAdapter.getItem(1)).listOptionMenuItemClicked(); } return true; default: @@ -384,12 +384,12 @@ public class MainActivity extends AuthenticatedActivity implements FragmentManag } case 1: - NearbyTestLayersFragment retainedNearbyFragment = getNearbyFragment(1); + NearbyParentFragment retainedNearbyFragment = getNearbyFragment(1); if (retainedNearbyFragment != null) { return retainedNearbyFragment; } else { // If we reach here, retainedNearbyFragment is null - return new NearbyTestLayersFragment(); + return new NearbyParentFragment(); } default: return null; @@ -411,9 +411,9 @@ public class MainActivity extends AuthenticatedActivity implements FragmentManag * @param position index of tabs, in our case 0 or 1 * @return */ - private NearbyTestLayersFragment getNearbyFragment(int position) { + private NearbyParentFragment getNearbyFragment(int position) { String tag = makeFragmentName(R.id.pager, position); - return (NearbyTestLayersFragment)fragmentManager.findFragmentByTag(tag); + return (NearbyParentFragment)fragmentManager.findFragmentByTag(tag); } /** diff --git a/app/src/main/java/fr/free/nrw/commons/di/FragmentBuilderModule.java b/app/src/main/java/fr/free/nrw/commons/di/FragmentBuilderModule.java index b780ad545..6a75aacf3 100644 --- a/app/src/main/java/fr/free/nrw/commons/di/FragmentBuilderModule.java +++ b/app/src/main/java/fr/free/nrw/commons/di/FragmentBuilderModule.java @@ -14,8 +14,8 @@ import fr.free.nrw.commons.explore.recentsearches.RecentSearchesFragment; import fr.free.nrw.commons.media.MediaDetailFragment; import fr.free.nrw.commons.media.MediaDetailPagerFragment; import fr.free.nrw.commons.nearby.NearbyListFragment; -import fr.free.nrw.commons.nearby.NearbyTestLayersFragment; -import fr.free.nrw.commons.nearby.SupportMapFragment; +import fr.free.nrw.commons.nearby.mvp.fragments.NearbyMapFragment; +import fr.free.nrw.commons.nearby.mvp.fragments.NearbyParentFragment; import fr.free.nrw.commons.review.ReviewImageFragment; import fr.free.nrw.commons.settings.SettingsFragment; import fr.free.nrw.commons.upload.categories.UploadCategoriesFragment; @@ -60,10 +60,10 @@ public abstract class FragmentBuilderModule { abstract ContributionsFragment bindContributionsFragment(); @ContributesAndroidInjector - abstract SupportMapFragment bindSupportMapFragment(); + abstract NearbyMapFragment bindSupportMapFragment(); @ContributesAndroidInjector - abstract NearbyTestLayersFragment bindNearbyTestLayersFragment(); + abstract NearbyParentFragment bindNearbyTestLayersFragment(); @ContributesAndroidInjector abstract BookmarkPicturesFragment bindBookmarkPictureListFragment(); diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyBaseMarker.java b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyBaseMarker.java index 4ff6cf0e8..fb50c36dc 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyBaseMarker.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyBaseMarker.java @@ -23,7 +23,7 @@ public class NearbyBaseMarker extends BaseMarkerOptions { onBookmarkClick.onClick(); } else { + // TODO nesli //((NearbyMapFragment)((NearbyFragment)((NearbyListFragment)fragment).getParentFragment()).getChildFragmentManager().findFragmentByTag(NearbyMapFragment.class.getSimpleName())).updateMarker(isBookmarked, place); } } diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/SupportMapFragment.java b/app/src/main/java/fr/free/nrw/commons/nearby/mvp/fragments/NearbyMapFragment.java similarity index 96% rename from app/src/main/java/fr/free/nrw/commons/nearby/SupportMapFragment.java rename to app/src/main/java/fr/free/nrw/commons/nearby/mvp/fragments/NearbyMapFragment.java index f5ba33e2c..f400464df 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/SupportMapFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/mvp/fragments/NearbyMapFragment.java @@ -1,9 +1,8 @@ -package fr.free.nrw.commons.nearby; +package fr.free.nrw.commons.nearby.mvp.fragments; import android.content.Context; import android.graphics.Bitmap; import android.graphics.Color; -import android.net.Uri; import android.os.Bundle; import android.util.AttributeSet; import android.util.Log; @@ -15,8 +14,6 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.vectordrawable.graphics.drawable.VectorDrawableCompat; -import com.google.android.material.bottomsheet.BottomSheetBehavior; -import com.google.android.material.floatingactionbutton.FloatingActionButton; import com.mapbox.mapboxsdk.annotations.Icon; import com.mapbox.mapboxsdk.annotations.IconFactory; import com.mapbox.mapboxsdk.annotations.Marker; @@ -36,11 +33,14 @@ import java.util.List; import javax.inject.Inject; -import dagger.android.support.DaggerFragment; import fr.free.nrw.commons.R; import fr.free.nrw.commons.bookmarks.locations.BookmarkLocationsDao; import fr.free.nrw.commons.di.CommonsDaggerSupportFragment; import fr.free.nrw.commons.location.LatLng; +import fr.free.nrw.commons.nearby.NearbyBaseMarker; +import fr.free.nrw.commons.nearby.NearbyController; +import fr.free.nrw.commons.nearby.NearbyMarker; +import fr.free.nrw.commons.nearby.Place; import fr.free.nrw.commons.nearby.mvp.contract.NearbyMapContract; import fr.free.nrw.commons.nearby.mvp.contract.NearbyParentFragmentContract; import fr.free.nrw.commons.nearby.mvp.presenter.NearbyParentFragmentPresenter; @@ -64,7 +64,7 @@ import static fr.free.nrw.commons.utils.LengthUtils.formatDistanceBetween; * * @see #getMapAsync(OnMapReadyCallback) */ -public class SupportMapFragment extends CommonsDaggerSupportFragment +public class NearbyMapFragment extends CommonsDaggerSupportFragment implements OnMapReadyCallback, NearbyMapContract.View{ @@ -81,8 +81,8 @@ public class SupportMapFragment extends CommonsDaggerSupportFragment * * @return MapFragment created */ - public static SupportMapFragment newInstance() { - return new SupportMapFragment(); + public static NearbyMapFragment newInstance() { + return new NearbyMapFragment(); } /** @@ -92,8 +92,8 @@ public class SupportMapFragment extends CommonsDaggerSupportFragment * @return MapFragment created. */ @NonNull - public static SupportMapFragment newInstance(@Nullable MapboxMapOptions mapboxMapOptions) { - SupportMapFragment mapFragment = new SupportMapFragment(); + public static NearbyMapFragment newInstance(@Nullable MapboxMapOptions mapboxMapOptions) { + NearbyMapFragment mapFragment = new NearbyMapFragment(); mapFragment.setArguments(MapFragmentUtils.createFragmentArgs(mapboxMapOptions)); return mapFragment; } diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyTestLayersFragment.java b/app/src/main/java/fr/free/nrw/commons/nearby/mvp/fragments/NearbyParentFragment.java similarity index 97% rename from app/src/main/java/fr/free/nrw/commons/nearby/NearbyTestLayersFragment.java rename to app/src/main/java/fr/free/nrw/commons/nearby/mvp/fragments/NearbyParentFragment.java index 354346039..e508ebc19 100644 --- a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyTestLayersFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/nearby/mvp/fragments/NearbyParentFragment.java @@ -1,4 +1,4 @@ -package fr.free.nrw.commons.nearby; +package fr.free.nrw.commons.nearby.mvp.fragments; import android.Manifest; import android.app.AlertDialog; @@ -56,6 +56,10 @@ import fr.free.nrw.commons.contributions.MainActivity; import fr.free.nrw.commons.di.CommonsDaggerSupportFragment; import fr.free.nrw.commons.kvstore.JsonKvStore; import fr.free.nrw.commons.location.LocationServiceManager; +import fr.free.nrw.commons.nearby.NearbyController; +import fr.free.nrw.commons.nearby.NearbyListFragment; +import fr.free.nrw.commons.nearby.NearbyMarker; +import fr.free.nrw.commons.nearby.Place; import fr.free.nrw.commons.nearby.mvp.contract.NearbyParentFragmentContract; import fr.free.nrw.commons.nearby.mvp.presenter.NearbyParentFragmentPresenter; import fr.free.nrw.commons.utils.FragmentUtils; @@ -74,7 +78,7 @@ import static fr.free.nrw.commons.contributions.MainActivity.CONTRIBUTIONS_TAB_P import static fr.free.nrw.commons.location.LocationServiceManager.LocationChangeType.MAP_UPDATED; -public class NearbyTestLayersFragment extends CommonsDaggerSupportFragment +public class NearbyParentFragment extends CommonsDaggerSupportFragment implements NearbyParentFragmentContract.View, WikidataEditListener.WikidataP18EditListener { @@ -198,7 +202,7 @@ public class NearbyTestLayersFragment extends CommonsDaggerSupportFragment private final double CAMERA_TARGET_SHIFT_FACTOR_PORTRAIT = 0.06; private final double CAMERA_TARGET_SHIFT_FACTOR_LANDSCAPE = 0.04; - SupportMapFragment nearbyMapFragment; + NearbyMapFragment nearbyMapFragment; private fr.free.nrw.commons.nearby.NearbyListFragment nearbyListFragment; private static final String TAG_RETAINED_MAP_FRAGMENT = com.mapbox.mapboxsdk.maps.SupportMapFragment.class.getSimpleName(); @@ -207,7 +211,7 @@ public class NearbyTestLayersFragment extends CommonsDaggerSupportFragment @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { - view = inflater.inflate(R.layout.fragment_simple, container, false); + view = inflater.inflate(R.layout.fragment_nearby_parent, container, false); ButterKnife.bind(this, view); // Inflate the layout for this fragment return view; @@ -331,8 +335,8 @@ public class NearbyTestLayersFragment extends CommonsDaggerSupportFragment /** * Returns the map fragment added to child fragment manager previously, if exists. */ - private SupportMapFragment getNearbyMapFragment() { - SupportMapFragment existingFragment = (SupportMapFragment) getChildFragmentManager() + private NearbyMapFragment getNearbyMapFragment() { + NearbyMapFragment existingFragment = (NearbyMapFragment) getChildFragmentManager() .findFragmentByTag(TAG_RETAINED_MAP_FRAGMENT); if (existingFragment == null) { existingFragment = setMapFragment(); @@ -340,11 +344,11 @@ public class NearbyTestLayersFragment extends CommonsDaggerSupportFragment return existingFragment; } - public SupportMapFragment setMapFragment() { + public NearbyMapFragment setMapFragment() { // Mapbox access token is configured here. This needs to be called either in your application // object or in the same activity which contains the mapview. Mapbox.getInstance(getActivity(), getString(R.string.mapbox_commons_app_token)); - SupportMapFragment mapFragment; + NearbyMapFragment mapFragment; // Create supportMapFragment //if (savedInstanceState == null) { @@ -365,24 +369,24 @@ public class NearbyTestLayersFragment extends CommonsDaggerSupportFragment .build()); // Create map fragment - mapFragment = SupportMapFragment.newInstance(options); + mapFragment = NearbyMapFragment.newInstance(options); // Add map fragment to parent container getChildFragmentManager().executePendingTransactions(); transaction.add(R.id.container, mapFragment, TAG_RETAINED_MAP_FRAGMENT); transaction.commit(); /*} else { - nearbyMapFragment = (SupportMapFragment) getChildFragmentManager().findFragmentByTag(TAG_RETAINED_MAP_FRAGMENT); + nearbyMapFragment = (NearbyMapFragment) getChildFragmentManager().findFragmentByTag(TAG_RETAINED_MAP_FRAGMENT); }*/ mapFragment.getMapAsync(new OnMapReadyCallback() { @Override public void onMapReady(@NonNull MapboxMap mapboxMap) { - mapboxMap.setStyle(NearbyTestLayersFragment.this.isDarkTheme ? Style.DARK : Style.OUTDOORS, new Style.OnStyleLoaded() { + mapboxMap.setStyle(NearbyParentFragment.this.isDarkTheme ? Style.DARK : Style.OUTDOORS, new Style.OnStyleLoaded() { @Override public void onStyleLoaded(@NonNull Style style) { - NearbyTestLayersFragment.this.childMapFragmentAttached(); + NearbyParentFragment.this.childMapFragmentAttached(); Log.d("NearbyTests","Fragment inside fragment with map works"); // Map is set up and the style has loaded. Now you can add data or make other map adjustments diff --git a/app/src/main/res/layout/fragment_nearby.xml b/app/src/main/res/layout/fragment_nearby.xml deleted file mode 100644 index 1e493e110..000000000 --- a/app/src/main/res/layout/fragment_nearby.xml +++ /dev/null @@ -1,159 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - -