mirror of
https://github.com/commons-app/apps-android-commons.git
synced 2025-10-26 20:33:53 +01:00
fix commons-app#4978 (#4979)
This commit is contained in:
parent
be5827c2c7
commit
ffbfdabb3a
1 changed files with 21 additions and 6 deletions
|
|
@ -115,8 +115,16 @@ public class UploadMediaDetailAdapter extends RecyclerView.Adapter<UploadMediaDe
|
|||
*/
|
||||
public void removeDescription(final UploadMediaDetail uploadMediaDetail, final int position) {
|
||||
selectedLanguages.remove(position);
|
||||
this.uploadMediaDetails.remove(uploadMediaDetail);
|
||||
final int ListPosition =
|
||||
(int) selectedLanguages.keySet().stream().filter(e -> e < position).count();
|
||||
this.uploadMediaDetails.remove(uploadMediaDetails.get(ListPosition));
|
||||
int i = position + 1;
|
||||
while (selectedLanguages.containsKey(i)) {
|
||||
selectedLanguages.remove(i);
|
||||
i++;
|
||||
}
|
||||
notifyItemRemoved(position);
|
||||
notifyItemRangeChanged(position, uploadMediaDetails.size() - position);
|
||||
}
|
||||
|
||||
public class ViewHolder extends RecyclerView.ViewHolder {
|
||||
|
|
@ -140,6 +148,10 @@ public class UploadMediaDetailAdapter extends RecyclerView.Adapter<UploadMediaDe
|
|||
@BindView(R.id.btn_remove)
|
||||
ImageView removeButton;
|
||||
|
||||
AbstractTextWatcher captionListener;
|
||||
|
||||
AbstractTextWatcher descriptionListener;
|
||||
|
||||
public ViewHolder(View itemView) {
|
||||
super(itemView);
|
||||
ButterKnife.bind(this, itemView);
|
||||
|
|
@ -157,6 +169,8 @@ public class UploadMediaDetailAdapter extends RecyclerView.Adapter<UploadMediaDe
|
|||
eventListener.onPrimaryCaptionTextChange(value.length() != 0);
|
||||
}
|
||||
}));
|
||||
captionItemEditText.removeTextChangedListener(captionListener);
|
||||
descItemEditText.removeTextChangedListener(descriptionListener);
|
||||
captionItemEditText.setText(uploadMediaDetail.getCaptionText());
|
||||
descItemEditText.setText(uploadMediaDetail.getDescriptionText());
|
||||
|
||||
|
|
@ -182,13 +196,14 @@ public class UploadMediaDetailAdapter extends RecyclerView.Adapter<UploadMediaDe
|
|||
}
|
||||
|
||||
removeButton.setOnClickListener(v -> removeDescription(uploadMediaDetail, position));
|
||||
|
||||
captionItemEditText.addTextChangedListener(new AbstractTextWatcher(
|
||||
captionText -> uploadMediaDetails.get(position).setCaptionText(captionText)));
|
||||
captionListener = new AbstractTextWatcher(
|
||||
captionText -> uploadMediaDetails.get(position).setCaptionText(captionText));
|
||||
descriptionListener = new AbstractTextWatcher(
|
||||
descriptionText -> uploadMediaDetails.get(position).setDescriptionText(descriptionText));
|
||||
captionItemEditText.addTextChangedListener(captionListener);
|
||||
initLanguage(position, uploadMediaDetail);
|
||||
|
||||
descItemEditText.addTextChangedListener(new AbstractTextWatcher(
|
||||
descriptionText -> uploadMediaDetails.get(position).setDescriptionText(descriptionText)));
|
||||
descItemEditText.addTextChangedListener(descriptionListener);
|
||||
initLanguage(position, uploadMediaDetail);
|
||||
|
||||
//If the description was manually added by the user, it deserves focus, if not, let the user decide
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue