diff --git a/app/src/main/java/org/fossasia/phimpme/MyApplication.java b/app/src/main/java/org/fossasia/phimpme/MyApplication.java index 563d0e128..753f39d37 100644 --- a/app/src/main/java/org/fossasia/phimpme/MyApplication.java +++ b/app/src/main/java/org/fossasia/phimpme/MyApplication.java @@ -23,6 +23,7 @@ public class MyApplication extends Application { private HandlingAlbums albums = null; public static Context applicationContext; private RefWatcher refWatcher; + public int NavItem = 1; public Album getAlbum() { return albums.dispAlbums.size() > 0 ? albums.getCurrentAlbum() : Album.getEmptyAlbum(); diff --git a/app/src/main/java/org/fossasia/phimpme/accounts/AccountActivity.java b/app/src/main/java/org/fossasia/phimpme/accounts/AccountActivity.java index f6a3736dc..95391d6d5 100644 --- a/app/src/main/java/org/fossasia/phimpme/accounts/AccountActivity.java +++ b/app/src/main/java/org/fossasia/phimpme/accounts/AccountActivity.java @@ -38,6 +38,7 @@ import com.twitter.sdk.android.core.identity.TwitterAuthClient; import io.realm.RealmQuery; import java.util.ArrayList; +import org.fossasia.phimpme.MyApplication; import org.fossasia.phimpme.R; import org.fossasia.phimpme.base.PhimpmeProgressBarHandler; import org.fossasia.phimpme.base.RecyclerItemClickListner; @@ -92,7 +93,7 @@ public void onCreate(Bundle savedInstanceState) { ActivitySwitchHelper.setContext(this); setSupportActionBar(toolbar); parentLayout.setBackgroundColor(getBackgroundColor()); - overridePendingTransition(R.anim.right_to_left, R.anim.left_to_right); + startSlideAnimation(2); phimpmeProgressBarHandler = new PhimpmeProgressBarHandler(this); ThemeHelper themeHelper = new ThemeHelper(this); toolbar.setPopupTheme(getPopupToolbarStyle()); @@ -110,6 +111,15 @@ public void onCreate(Bundle savedInstanceState) { initObserver(); } + private void startSlideAnimation(int currentMenuItem) { + if (((MyApplication) this.getApplication()).NavItem > currentMenuItem) + overridePendingTransition(R.anim.slide_in_left, R.anim.slide_out_right); + else if (((MyApplication) this.getApplication()).NavItem < currentMenuItem) + overridePendingTransition(R.anim.slide_in_right, R.anim.slide_out_left); + // Update the Global NavItem + ((MyApplication) this.getApplication()).NavItem = currentMenuItem; + } + private void initObserver() { accountViewModel.error.observe( this, @@ -348,7 +358,6 @@ public void onBackPressed() { Intent intent = new Intent(this, LFMainActivity.class); startActivity(intent); finish(); - overridePendingTransition(R.anim.left_to_right, R.anim.right_to_left); } private void boxAuthentication() { diff --git a/app/src/main/java/org/fossasia/phimpme/base/BaseActivity.java b/app/src/main/java/org/fossasia/phimpme/base/BaseActivity.java index 14768b048..02d8544ca 100644 --- a/app/src/main/java/org/fossasia/phimpme/base/BaseActivity.java +++ b/app/src/main/java/org/fossasia/phimpme/base/BaseActivity.java @@ -141,7 +141,6 @@ public boolean onNavigationItemSelected(@NonNull final MenuItem item) { break; } finish(); - overridePendingTransition(R.anim.left_to_right, R.anim.right_to_left); } return true; } diff --git a/app/src/main/java/org/fossasia/phimpme/gallery/activities/LFMainActivity.java b/app/src/main/java/org/fossasia/phimpme/gallery/activities/LFMainActivity.java index 1e397fb68..442c496bf 100644 --- a/app/src/main/java/org/fossasia/phimpme/gallery/activities/LFMainActivity.java +++ b/app/src/main/java/org/fossasia/phimpme/gallery/activities/LFMainActivity.java @@ -106,6 +106,7 @@ import java.util.Locale; import java.util.zip.ZipEntry; import java.util.zip.ZipOutputStream; +import org.fossasia.phimpme.MyApplication; import org.fossasia.phimpme.R; import org.fossasia.phimpme.base.SharedMediaActivity; import org.fossasia.phimpme.data.local.FavouriteImagesModel; @@ -661,7 +662,7 @@ public void onCreate(Bundle savedInstanceState) { rvAlbums = findViewById(R.id.grid_albums); rvMedia = findViewById(R.id.grid_photos); - overridePendingTransition(R.anim.right_to_left, R.anim.left_to_right); + startSlideAnimation(1); SP = PreferenceUtil.getInstance(getApplicationContext()); albumsMode = true; editMode = false; @@ -730,6 +731,15 @@ public void onResume() { firstLaunch = false; } + private void startSlideAnimation(int currentMenuItem) { + if (((MyApplication) this.getApplication()).NavItem > currentMenuItem) + overridePendingTransition(R.anim.slide_in_left, R.anim.slide_out_right); + else if (((MyApplication) this.getApplication()).NavItem < currentMenuItem) + overridePendingTransition(R.anim.slide_in_right, R.anim.slide_out_left); + // Update the Global NavItem + ((MyApplication) this.getApplication()).NavItem = currentMenuItem; + } + private void displayCurrentAlbumMedia(boolean reload) { toolbar.setTitle(getAlbum().getName()); toolbar.setNavigationIcon(getToolbarIcon(GoogleMaterial.Icon.gmd_arrow_back)); diff --git a/app/src/main/java/org/fossasia/phimpme/opencamera/Camera/CameraActivity.java b/app/src/main/java/org/fossasia/phimpme/opencamera/Camera/CameraActivity.java index 1344ceecb..f853ba67d 100644 --- a/app/src/main/java/org/fossasia/phimpme/opencamera/Camera/CameraActivity.java +++ b/app/src/main/java/org/fossasia/phimpme/opencamera/Camera/CameraActivity.java @@ -78,6 +78,7 @@ import java.util.List; import java.util.Locale; import java.util.Map; +import org.fossasia.phimpme.MyApplication; import org.fossasia.phimpme.R; import org.fossasia.phimpme.base.ThemedActivity; import org.fossasia.phimpme.gallery.activities.LFMainActivity; @@ -180,7 +181,7 @@ public void onCreate(Bundle savedInstanceState) { } super.onCreate(savedInstanceState); ButterKnife.bind(this); - overridePendingTransition(R.anim.right_to_left, R.anim.left_to_right); + startSlideAnimation(0); ButterKnife.bind(this); PreferenceManager.setDefaultValues( this, R.xml.preferences, false); // initialise any unset preferences to their default values @@ -886,6 +887,16 @@ public void onResume() { } } + private void startSlideAnimation(int currentMenuItem) { + + if (((MyApplication) this.getApplication()).NavItem > currentMenuItem) + overridePendingTransition(R.anim.slide_in_left, R.anim.slide_out_right); + else if (((MyApplication) this.getApplication()).NavItem < currentMenuItem) + overridePendingTransition(R.anim.slide_in_right, R.anim.slide_out_left); + // Update the Global NavItem + ((MyApplication) this.getApplication()).NavItem = currentMenuItem; + } + private void defaultBrightness() { WindowManager.LayoutParams layout = getWindow().getAttributes(); layout.screenBrightness = WindowManager.LayoutParams.BRIGHTNESS_OVERRIDE_NONE; @@ -1404,7 +1415,6 @@ public void onBackPressed() { Intent intent = new Intent(this, LFMainActivity.class); startActivity(intent); finish(); - overridePendingTransition(R.anim.left_to_right, R.anim.right_to_left); } public boolean usingKitKatImmersiveMode() { diff --git a/app/src/main/res/anim/left_to_right.xml b/app/src/main/res/anim/left_to_right.xml deleted file mode 100644 index 9fec2db70..000000000 --- a/app/src/main/res/anim/left_to_right.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/anim/right_to_left.xml b/app/src/main/res/anim/right_to_left.xml deleted file mode 100644 index 3ba3f5e49..000000000 --- a/app/src/main/res/anim/right_to_left.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/anim/slide_in_left.xml b/app/src/main/res/anim/slide_in_left.xml new file mode 100644 index 000000000..92b69f308 --- /dev/null +++ b/app/src/main/res/anim/slide_in_left.xml @@ -0,0 +1,8 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/anim/slide_in_right.xml b/app/src/main/res/anim/slide_in_right.xml new file mode 100644 index 000000000..d98ccedae --- /dev/null +++ b/app/src/main/res/anim/slide_in_right.xml @@ -0,0 +1,8 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/anim/slide_out_left.xml b/app/src/main/res/anim/slide_out_left.xml new file mode 100644 index 000000000..79f5c251f --- /dev/null +++ b/app/src/main/res/anim/slide_out_left.xml @@ -0,0 +1,8 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/anim/slide_out_right.xml b/app/src/main/res/anim/slide_out_right.xml new file mode 100644 index 000000000..36ab81f39 --- /dev/null +++ b/app/src/main/res/anim/slide_out_right.xml @@ -0,0 +1,8 @@ + + + + + \ No newline at end of file