mirror of
https://github.com/commons-app/apps-android-commons.git
synced 2025-10-26 20:33:53 +01:00
* fixed:After canceling a sharing, application goes back to the search menu #2296 * fixed:After canceling a sharing, application goes back to the search menu #2296 * fixed:After canceling a sharing, application goes back to the search menu #2296 * fixed SeachActivityUnityTest failure when calling testOnBackPressed and cleaned up unnecessary code
This commit is contained in:
parent
7d895c4379
commit
94d462cafb
3 changed files with 26 additions and 4 deletions
|
|
@ -222,7 +222,6 @@ public class SearchActivity extends BaseActivity
|
||||||
if (mediaDetails == null || !mediaDetails.isVisible()) {
|
if (mediaDetails == null || !mediaDetails.isVisible()) {
|
||||||
// set isFeaturedImage true for featured images, to include author field on media detail
|
// set isFeaturedImage true for featured images, to include author field on media detail
|
||||||
mediaDetails = new MediaDetailPagerFragment(false, true);
|
mediaDetails = new MediaDetailPagerFragment(false, true);
|
||||||
FragmentManager supportFragmentManager = getSupportFragmentManager();
|
|
||||||
supportFragmentManager
|
supportFragmentManager
|
||||||
.beginTransaction()
|
.beginTransaction()
|
||||||
.hide(supportFragmentManager.getFragments().get(supportFragmentManager.getBackStackEntryCount()))
|
.hide(supportFragmentManager.getFragments().get(supportFragmentManager.getBackStackEntryCount()))
|
||||||
|
|
@ -258,13 +257,23 @@ public class SearchActivity extends BaseActivity
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void onBackPressed() {
|
public void onBackPressed() {
|
||||||
if (getSupportFragmentManager().getBackStackEntryCount() == 1){
|
//Remove the backstack entry that gets added when share button is clicked
|
||||||
|
//fixing:https://github.com/commons-app/apps-android-commons/issues/2296
|
||||||
|
if (getSupportFragmentManager().getBackStackEntryCount() == 2) {
|
||||||
|
supportFragmentManager
|
||||||
|
.beginTransaction()
|
||||||
|
.remove(mediaDetails)
|
||||||
|
.commit();
|
||||||
|
supportFragmentManager.popBackStack();
|
||||||
|
supportFragmentManager.executePendingTransactions();
|
||||||
|
}
|
||||||
|
if (getSupportFragmentManager().getBackStackEntryCount() == 1) {
|
||||||
// back to search so show search toolbar and hide navigation toolbar
|
// back to search so show search toolbar and hide navigation toolbar
|
||||||
searchView.setVisibility(View.VISIBLE);//set the searchview
|
searchView.setVisibility(View.VISIBLE);//set the searchview
|
||||||
tabLayout.setVisibility(View.VISIBLE);
|
tabLayout.setVisibility(View.VISIBLE);
|
||||||
viewPager.setVisibility(View.VISIBLE);
|
viewPager.setVisibility(View.VISIBLE);
|
||||||
mediaContainer.setVisibility(View.GONE);
|
mediaContainer.setVisibility(View.GONE);
|
||||||
}else {
|
} else {
|
||||||
toolbar.setVisibility(View.GONE);
|
toolbar.setVisibility(View.GONE);
|
||||||
}
|
}
|
||||||
super.onBackPressed();
|
super.onBackPressed();
|
||||||
|
|
|
||||||
|
|
@ -188,6 +188,18 @@ public class MediaDetailPagerFragment extends CommonsDaggerSupportFragment imple
|
||||||
shareIntent.setType("text/plain");
|
shareIntent.setType("text/plain");
|
||||||
shareIntent.putExtra(Intent.EXTRA_TEXT, m.getDisplayTitle() + " \n" + m.getPageTitle().getCanonicalUri());
|
shareIntent.putExtra(Intent.EXTRA_TEXT, m.getDisplayTitle() + " \n" + m.getPageTitle().getCanonicalUri());
|
||||||
startActivity(Intent.createChooser(shareIntent, "Share image via..."));
|
startActivity(Intent.createChooser(shareIntent, "Share image via..."));
|
||||||
|
|
||||||
|
//Add media detail to backstack when the share button is clicked
|
||||||
|
//So that when the share is cancelled or completed the media detail page is on top
|
||||||
|
// of back stack fixing:https://github.com/commons-app/apps-android-commons/issues/2296
|
||||||
|
FragmentManager supportFragmentManager = getActivity().getSupportFragmentManager();
|
||||||
|
if (supportFragmentManager.getBackStackEntryCount() < 2) {
|
||||||
|
supportFragmentManager
|
||||||
|
.beginTransaction()
|
||||||
|
.addToBackStack(MediaDetailPagerFragment.class.getName())
|
||||||
|
.commit();
|
||||||
|
supportFragmentManager.executePendingTransactions();
|
||||||
|
}
|
||||||
return true;
|
return true;
|
||||||
case R.id.menu_browser_current_image:
|
case R.id.menu_browser_current_image:
|
||||||
// View in browser
|
// View in browser
|
||||||
|
|
|
||||||
|
|
@ -26,6 +26,7 @@ import org.junit.jupiter.api.Assertions.assertEquals
|
||||||
import org.junit.jupiter.api.Assertions.assertNull
|
import org.junit.jupiter.api.Assertions.assertNull
|
||||||
import org.junit.runner.RunWith
|
import org.junit.runner.RunWith
|
||||||
import org.mockito.Mock
|
import org.mockito.Mock
|
||||||
|
import org.mockito.Mockito.times
|
||||||
import org.mockito.Mockito.`when`
|
import org.mockito.Mockito.`when`
|
||||||
import org.mockito.MockitoAnnotations
|
import org.mockito.MockitoAnnotations
|
||||||
import org.powermock.api.mockito.PowerMockito.mock
|
import org.powermock.api.mockito.PowerMockito.mock
|
||||||
|
|
@ -124,7 +125,7 @@ class SearchActivityUnitTests {
|
||||||
`when`(mFragments.supportFragmentManager).thenReturn(supportFragmentManager)
|
`when`(mFragments.supportFragmentManager).thenReturn(supportFragmentManager)
|
||||||
`when`(supportFragmentManager.backStackEntryCount).thenReturn(0)
|
`when`(supportFragmentManager.backStackEntryCount).thenReturn(0)
|
||||||
activity.onBackPressed()
|
activity.onBackPressed()
|
||||||
verify(supportFragmentManager).backStackEntryCount
|
verify(supportFragmentManager, times(2)).backStackEntryCount
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue