diff options
author | Alex Ning <chineseperson5@gmail.com> | 2020-07-02 03:13:10 +0000 |
---|---|---|
committer | Alex Ning <chineseperson5@gmail.com> | 2020-07-02 03:13:10 +0000 |
commit | 1958ad77e3c7c4c523caef15f90b0b32da1d0cb2 (patch) | |
tree | 898b5f459bdb570e2455c78bbecaf4b918721201 /app/src/main/java/ml | |
parent | 2fbc4d02c863bad0426eece6fb7bcc02dc8ac193 (diff) | |
download | infinity-for-reddit-1958ad77e3c7c4c523caef15f90b0b32da1d0cb2.tar infinity-for-reddit-1958ad77e3c7c4c523caef15f90b0b32da1d0cb2.tar.gz infinity-for-reddit-1958ad77e3c7c4c523caef15f90b0b32da1d0cb2.tar.bz2 infinity-for-reddit-1958ad77e3c7c4c523caef15f90b0b32da1d0cb2.tar.lz infinity-for-reddit-1958ad77e3c7c4c523caef15f90b0b32da1d0cb2.tar.xz infinity-for-reddit-1958ad77e3c7c4c523caef15f90b0b32da1d0cb2.tar.zst infinity-for-reddit-1958ad77e3c7c4c523caef15f90b0b32da1d0cb2.zip |
Maintain RecyclerView position when showing and hiding the keyboard in ViewPrivateMessagesActivity.
Diffstat (limited to 'app/src/main/java/ml')
-rw-r--r-- | app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ViewPrivateMessagesActivity.java | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ViewPrivateMessagesActivity.java b/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ViewPrivateMessagesActivity.java index aecc78ab..c42ab803 100644 --- a/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ViewPrivateMessagesActivity.java +++ b/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/ViewPrivateMessagesActivity.java @@ -93,8 +93,8 @@ public class ViewPrivateMessagesActivity extends BaseActivity implements Activit private String mAccessToken; private String mAccountName; private String mUserAvatar; - private ArrayList<ProvideUserAvatarCallback> provideUserAvatarCallbacks; - private LoadUserDataAsyncTask loadUserDataAsyncTask; + private ArrayList<ProvideUserAvatarCallback> mProvideUserAvatarCallbacks; + private LoadUserDataAsyncTask mLoadUserDataAsyncTask; @Override protected void onCreate(Bundle savedInstanceState) { @@ -127,7 +127,7 @@ public class ViewPrivateMessagesActivity extends BaseActivity implements Activit setSupportActionBar(mToolbar); setToolbarGoToTop(mToolbar); - provideUserAvatarCallbacks = new ArrayList<>(); + mProvideUserAvatarCallbacks = new ArrayList<>(); if (savedInstanceState != null) { mNullAccessToken = savedInstanceState.getBoolean(NULL_ACCESS_TOKEN_STATE); @@ -160,6 +160,7 @@ public class ViewPrivateMessagesActivity extends BaseActivity implements Activit private void bindView() { mAdapter = new PrivateMessagesDetailRecyclerViewAdapter(this, privateMessage, mAccountName, mCustomThemeWrapper); mLinearLayoutManager = new LinearLayoutManager(this); + mLinearLayoutManager.setStackFromEnd(true); mRecyclerView.setLayoutManager(mLinearLayoutManager); mRecyclerView.setAdapter(mAdapter); goToBottom(); @@ -229,16 +230,16 @@ public class ViewPrivateMessagesActivity extends BaseActivity implements Activit public void fetchUserAvatar(String username, ProvideUserAvatarCallback provideUserAvatarCallback) { if (mUserAvatar == null) { - provideUserAvatarCallbacks.add(provideUserAvatarCallback); - if (loadUserDataAsyncTask == null) { - loadUserDataAsyncTask = new LoadUserDataAsyncTask(mRedditDataRoomDatabase.userDao(), username, mRetrofit, iconImageUrl -> { + mProvideUserAvatarCallbacks.add(provideUserAvatarCallback); + if (mLoadUserDataAsyncTask == null) { + mLoadUserDataAsyncTask = new LoadUserDataAsyncTask(mRedditDataRoomDatabase.userDao(), username, mRetrofit, iconImageUrl -> { mUserAvatar = iconImageUrl; - for (ProvideUserAvatarCallback provideUserAvatarCallbackInArrayList : provideUserAvatarCallbacks) { + for (ProvideUserAvatarCallback provideUserAvatarCallbackInArrayList : mProvideUserAvatarCallbacks) { provideUserAvatarCallbackInArrayList.fetchAvatarSuccess(iconImageUrl); } - provideUserAvatarCallbacks.clear(); + mProvideUserAvatarCallbacks.clear(); }); - loadUserDataAsyncTask.execute(); + mLoadUserDataAsyncTask.execute(); } } else { provideUserAvatarCallback.fetchAvatarSuccess(mUserAvatar); |