diff options
author | Harsh Shandilya <me@msfjarvis.dev> | 2018-07-17 20:54:30 +0530 |
---|---|---|
committer | Jason A. Donenfeld <Jason@zx2c4.com> | 2018-07-18 02:15:06 +0200 |
commit | fdfab18d45e6e58b37a5fafd2c37e3a78c2f3f12 (patch) | |
tree | 4585eeaae4219b1c897a8ee3dbaa935402a039a4 /app/src/main/java/com/wireguard/android/fragment | |
parent | fab: slide fab up when a snackbar shows (diff) | |
download | wireguard-android-fdfab18d45e6e58b37a5fafd2c37e3a78c2f3f12.tar.xz wireguard-android-fdfab18d45e6e58b37a5fafd2c37e3a78c2f3f12.zip |
fab: make fab respond to recyclerview scroll events
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
Diffstat (limited to 'app/src/main/java/com/wireguard/android/fragment')
-rw-r--r-- | app/src/main/java/com/wireguard/android/fragment/TunnelListFragment.java | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/app/src/main/java/com/wireguard/android/fragment/TunnelListFragment.java b/app/src/main/java/com/wireguard/android/fragment/TunnelListFragment.java index d14dc9e5..448a4834 100644 --- a/app/src/main/java/com/wireguard/android/fragment/TunnelListFragment.java +++ b/app/src/main/java/com/wireguard/android/fragment/TunnelListFragment.java @@ -26,6 +26,8 @@ import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; +import android.view.animation.AccelerateInterpolator; +import android.view.animation.DecelerateInterpolator; import com.wireguard.android.Application; import com.wireguard.android.R; @@ -35,6 +37,7 @@ import com.wireguard.android.databinding.TunnelListFragmentBinding; import com.wireguard.android.databinding.TunnelListItemBinding; import com.wireguard.android.model.Tunnel; import com.wireguard.android.util.ExceptionLoggers; +import com.wireguard.android.widget.CustomRecyclerViewScrollListener; import com.wireguard.config.Config; import java.io.BufferedReader; @@ -189,6 +192,23 @@ public class TunnelListFragment extends BaseFragment { } return false; }); + binding.tunnelList.setOnScrollListener(new CustomRecyclerViewScrollListener() { + @Override + public void show() { + binding.createMenu.animate() + .translationY(0) + .setInterpolator(new DecelerateInterpolator(2)) + .start(); + } + + @Override + public void hide() { + binding.createMenu.animate() + .translationY(binding.createMenu.getHeight() + getResources().getDimension(R.dimen.fab_margin)) + .setInterpolator(new AccelerateInterpolator(2)) + .start(); + } + }); binding.executePendingBindings(); return binding.getRoot(); } |