apply language when replying

This commit is contained in:
sk 2022-12-09 20:53:56 +01:00
parent 9667a32e44
commit 17dc0850d5
1 changed files with 7 additions and 1 deletions

View File

@ -408,6 +408,7 @@ public class ComposeFragment extends MastodonToolbarFragment implements OnBackPr
outState.putString("pollDurationStr", pollDurationStr); outState.putString("pollDurationStr", pollDurationStr);
} }
outState.putBoolean("hasSpoiler", hasSpoiler); outState.putBoolean("hasSpoiler", hasSpoiler);
outState.putString("language", language);
if(!attachments.isEmpty()){ if(!attachments.isEmpty()){
ArrayList<Parcelable> serializedAttachments=new ArrayList<>(attachments.size()); ArrayList<Parcelable> serializedAttachments=new ArrayList<>(attachments.size());
for(DraftMediaAttachment att:attachments){ for(DraftMediaAttachment att:attachments){
@ -522,6 +523,7 @@ public class ComposeFragment extends MastodonToolbarFragment implements OnBackPr
spoilerEdit.setText(replyTo.spoilerText); spoilerEdit.setText(replyTo.spoilerText);
spoilerBtn.setSelected(true); spoilerBtn.setSelected(true);
} }
if (replyTo.language != null && !replyTo.language.isEmpty()) updateLanguage(replyTo.language);
} }
}else{ }else{
replyText.setVisibility(View.GONE); replyText.setVisibility(View.GONE);
@ -533,7 +535,7 @@ public class ComposeFragment extends MastodonToolbarFragment implements OnBackPr
ignoreSelectionChanges=true; ignoreSelectionChanges=true;
mainEditText.setSelection(mainEditText.length()); mainEditText.setSelection(mainEditText.length());
ignoreSelectionChanges=false; ignoreSelectionChanges=false;
updateLanguage(new Locale(editingStatus.language)); updateLanguage(editingStatus.language);
if(!editingStatus.mediaAttachments.isEmpty()){ if(!editingStatus.mediaAttachments.isEmpty()){
attachmentsView.setVisibility(View.VISIBLE); attachmentsView.setVisibility(View.VISIBLE);
for(Attachment att:editingStatus.mediaAttachments){ for(Attachment att:editingStatus.mediaAttachments){
@ -607,6 +609,10 @@ public class ComposeFragment extends MastodonToolbarFragment implements OnBackPr
updatePublishButtonState(); updatePublishButtonState();
} }
private void updateLanguage(String lang) {
updateLanguage(new Locale(lang));
}
private void updateLanguage(Locale loc) { private void updateLanguage(Locale loc) {
language = loc.getLanguage(); language = loc.getLanguage();
languageButton.setText(loc.getDisplayLanguage(loc)); languageButton.setText(loc.getDisplayLanguage(loc));