diff --git a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsActivity.java b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsActivity.java
index 18d102a43..9d0180f84 100644
--- a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsActivity.java
+++ b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsActivity.java
@@ -10,6 +10,7 @@ import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.content.ContextCompat;
import android.support.v4.view.ViewPager;
+import android.util.Log;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
@@ -128,10 +129,12 @@ public class ContributionsActivity extends AuthenticatedActivity implements Frag
case CONTRIBUTIONS_TAB_POSITION:
tabLayout.getTabAt(CONTRIBUTIONS_TAB_POSITION).select();
isContributionsFragmentVisible = true;
+ updateMenuItem();
break;
case NEARBY_TAB_POSITION:
tabLayout.getTabAt(NEARBY_TAB_POSITION).select();
isContributionsFragmentVisible = false;
+ updateMenuItem();
break;
default:
tabLayout.getTabAt(CONTRIBUTIONS_TAB_POSITION).select();
@@ -214,18 +217,38 @@ public class ContributionsActivity extends AuthenticatedActivity implements Frag
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.contribution_activity_notification_menu, menu);
- if (!deviceHasCamera()) {
- menu.findItem(R.id.notifications).setEnabled(false);
- }
- this.menu = menu;
+
if (!isThereUnreadNotifications) {
- // menu.findItem(R.id.notifications).setIcon(ContextCompat.getDrawable(this, R.drawable.ic_notifications_white_24dp));
+ // menu.findItem(R.id.notifications).setIcon(ContextCompat.getDrawable(this, R.drawable.ic_notifications_white_24dp));
} else {
- // menu.findItem(R.id.notifications).setIcon(ContextCompat.getDrawable(this, R.drawable.ic_notifications_white_with_marker));
+ // menu.findItem(R.id.notifications).setIcon(ContextCompat.getDrawable(this, R.drawable.ic_notifications_white_with_marker));
}
+
+ this.menu = menu;
+
+ updateMenuItem();
+
return true;
}
+ /**
+ * Responsible with displaying required menu items according to displayed fragment.
+ * Notifications icon when contributions list is visible, list sheet icon when nearby is visible
+ */
+ private void updateMenuItem() {
+ if (isContributionsFragmentVisible) {
+ // Display notifications menu item
+ Log.d("deneme6","notifications is visible");
+ menu.findItem(R.id.notifications).setVisible(true);
+ menu.findItem(R.id.list_sheet).setVisible(false);
+ } else {
+ // Display bottom list menu item
+ Log.d("deneme6","notifications is invisible");
+ menu.findItem(R.id.notifications).setVisible(false);
+ menu.findItem(R.id.list_sheet).setVisible(true);
+ }
+ }
+
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
diff --git a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyFragment.java b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyFragment.java
index 96f56a15e..77994f159 100644
--- a/app/src/main/java/fr/free/nrw/commons/nearby/NearbyFragment.java
+++ b/app/src/main/java/fr/free/nrw/commons/nearby/NearbyFragment.java
@@ -1,12 +1,16 @@
package fr.free.nrw.commons.nearby;
import android.content.SharedPreferences;
+import android.graphics.Typeface;
import android.net.Uri;
import android.os.Bundle;
+import android.os.Handler;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.design.widget.BottomSheetBehavior;
import android.view.LayoutInflater;
+import android.view.Menu;
+import android.view.MenuInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.LinearLayout;
@@ -27,11 +31,14 @@ import fr.free.nrw.commons.location.LocationServiceManager;
import fr.free.nrw.commons.location.LocationUpdateListener;
import fr.free.nrw.commons.utils.NetworkUtils;
import fr.free.nrw.commons.utils.UriSerializer;
+import fr.free.nrw.commons.utils.ViewUtil;
import fr.free.nrw.commons.wikidata.WikidataEditListener;
import io.reactivex.Observable;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.schedulers.Schedulers;
import timber.log.Timber;
+import uk.co.deanwild.materialshowcaseview.IShowcaseListener;
+import uk.co.deanwild.materialshowcaseview.MaterialShowcaseView;
import static fr.free.nrw.commons.location.LocationServiceManager.LocationChangeType.LOCATION_SIGNIFICANTLY_CHANGED;
import static fr.free.nrw.commons.location.LocationServiceManager.LocationChangeType.LOCATION_SLIGHTLY_CHANGED;
@@ -83,11 +90,26 @@ public class NearbyFragment extends CommonsDaggerSupportFragment
// Resume the fragment if exist
resumeFragment();
bundle = new Bundle();
-
initBottomSheetBehaviour();
+ wikidataEditListener.setAuthenticationStateListener(this);
return view;
}
+ @Override
+ public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
+ super.onViewCreated(view, savedInstanceState);
+ }
+
+ /*
+ @Override
+ public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
+ inflater.inflate(R.menu.menu_nearby, menu);
+
+ new Handler().post(() -> {
+ listButton = findViewById(R.id.action_display_list);
+ });
+ }*/
+
private void resumeFragment() {
// Find the retained fragment on activity restarts
nearbyMapFragment = getMapFragment();
@@ -152,7 +174,9 @@ public class NearbyFragment extends CommonsDaggerSupportFragment
public void prepareViewsForSheetPosition(int bottomSheetState) {
// TODO
}
-
+
+
+
@Override
public void onLocationChangedSignificantly(LatLng latLng) {
//refreshView(LOCATION_SIGNIFICANTLY_CHANGED);
diff --git a/app/src/main/res/menu/contribution_activity_notification_menu.xml b/app/src/main/res/menu/contribution_activity_notification_menu.xml
index 475b255a8..b480d917b 100644
--- a/app/src/main/res/menu/contribution_activity_notification_menu.xml
+++ b/app/src/main/res/menu/contribution_activity_notification_menu.xml
@@ -5,4 +5,10 @@
app:showAsAction="ifRoom|withText"
android:icon="@drawable/ic_notifications_white_24dp"
/>
+
+
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index f33177c4d..532d0606b 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -359,5 +359,6 @@
Display nearby notification
Display closest wikidata item needs an image, above contribution list
No nearby places found close to you
+ List