From 4cb6fb86f8a59df2d3adeb93c31a611620eab5f9 Mon Sep 17 00:00:00 2001 From: maskara Date: Sat, 20 May 2017 11:35:49 +0200 Subject: [PATCH] Fix back button issue in ShareActivity --- .../free/nrw/commons/category/CategorizationFragment.java | 2 +- .../nrw/commons/contributions/ContributionsActivity.java | 1 + .../fr/free/nrw/commons/theme/NavigationBaseActivity.java | 6 ++++++ .../java/fr/free/nrw/commons/upload/ShareActivity.java | 8 ++++++-- 4 files changed, 14 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/category/CategorizationFragment.java b/app/src/main/java/fr/free/nrw/commons/category/CategorizationFragment.java index 2d7b770249..ab63ef6326 100644 --- a/app/src/main/java/fr/free/nrw/commons/category/CategorizationFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/category/CategorizationFragment.java @@ -498,7 +498,7 @@ public boolean onKey(View v, int keyCode, KeyEvent event) { } } - private void backButtonDialog() { + public void backButtonDialog() { AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); builder.setMessage("Are you sure you want to go back? The image will not have any categories saved.") 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 8cfb9c892c..b23bf7fbba 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 @@ -138,6 +138,7 @@ protected void onCreate(Bundle savedInstanceState) { } requestAuthToken(); initDrawer(); + setTitle(getString(R.string.title_activity_contributions)); } @Override diff --git a/app/src/main/java/fr/free/nrw/commons/theme/NavigationBaseActivity.java b/app/src/main/java/fr/free/nrw/commons/theme/NavigationBaseActivity.java index 823f5c72f6..e618cce5dc 100644 --- a/app/src/main/java/fr/free/nrw/commons/theme/NavigationBaseActivity.java +++ b/app/src/main/java/fr/free/nrw/commons/theme/NavigationBaseActivity.java @@ -67,6 +67,12 @@ public void onClick(View v) { }); } + public void initBack() { + setSupportActionBar(toolbar); + getSupportActionBar().setDisplayHomeAsUpEnabled(true); + getSupportActionBar().setDisplayShowHomeEnabled(true); + } + private void setDrawerPaneWidth() { ViewGroup.LayoutParams params = drawerPane.getLayoutParams(); // set width to lowerBound of 80% of the screen size diff --git a/app/src/main/java/fr/free/nrw/commons/upload/ShareActivity.java b/app/src/main/java/fr/free/nrw/commons/upload/ShareActivity.java index cffdd35f06..ca4937a838 100644 --- a/app/src/main/java/fr/free/nrw/commons/upload/ShareActivity.java +++ b/app/src/main/java/fr/free/nrw/commons/upload/ShareActivity.java @@ -219,7 +219,7 @@ public void onCreate(Bundle savedInstanceState) { uploadController = new UploadController(this); setContentView(R.layout.activity_share); ButterKnife.bind(this); - initDrawer(); + initBack(); app = CommonsApplication.getInstance(); backgroundImageView = (SimpleDraweeView)findViewById(R.id.backgroundImage); @@ -444,7 +444,11 @@ protected void onDestroy() { public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home: - NavUtils.navigateUpFromSameTask(this); + if(categorizationFragment!=null && categorizationFragment.isVisible()) { + categorizationFragment.backButtonDialog(); + } else { + onBackPressed(); + } return true; } return super.onOptionsItemSelected(item);