mirror of
https://codeberg.org/Bazsalanszky/Infinity-For-Lemmy.git
synced 2024-12-27 19:38:22 +01:00
Maintain RecyclerView position when showing and hiding the keyboard in ViewPrivateMessagesActivity.
This commit is contained in:
parent
2fbc4d02c8
commit
1958ad77e3
@ -24,16 +24,15 @@
|
||||
android:usesCleartextTraffic="true"
|
||||
tools:replace="android:label">
|
||||
|
||||
<activity android:name=".Activity.ViewPrivateMessagesActivity"
|
||||
android:parentActivityName=".Activity.MainActivity"
|
||||
android:theme="@style/AppTheme.Slidable"
|
||||
android:windowSoftInputMode="adjustResize" />
|
||||
|
||||
<service
|
||||
android:name=".Service.DownloadRedditVideoService"
|
||||
android:enabled="true"
|
||||
android:exported="false" />
|
||||
|
||||
<activity android:name=".Activity.ViewPrivateMessagesActivity"
|
||||
android:parentActivityName=".Activity.MainActivity"
|
||||
android:theme="@style/AppTheme.Slidable"
|
||||
android:windowSoftInputMode="adjustResize" />
|
||||
<activity
|
||||
android:name=".Activity.ViewImgurMediaActivity"
|
||||
android:configChanges="orientation|screenSize|layoutDirection"
|
||||
|
@ -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);
|
||||
|
Loading…
Reference in New Issue
Block a user