mirror of
https://github.com/M66B/FairEmail.git
synced 2026-04-05 08:33:37 +02:00
Layout improvements
This commit is contained in:
@@ -96,15 +96,16 @@ public class FragmentCompose extends FragmentEx {
|
||||
private EditText etBody;
|
||||
private BottomNavigationView bottom_navigation;
|
||||
private ProgressBar pbWait;
|
||||
private Group grpReady;
|
||||
private Group grpHeader;
|
||||
private Group grpAddresses;
|
||||
private Group grpAttachments;
|
||||
private Group grpMessage;
|
||||
|
||||
private AdapterAttachment adapter;
|
||||
|
||||
private long working = -1;
|
||||
private boolean free = false;
|
||||
private boolean addresses;
|
||||
private boolean autosave = true;
|
||||
|
||||
private static final int ATTACHMENT_BUFFER_SIZE = 8192; // bytes
|
||||
@@ -130,10 +131,10 @@ public class FragmentCompose extends FragmentEx {
|
||||
etBody = view.findViewById(R.id.etBody);
|
||||
bottom_navigation = view.findViewById(R.id.bottom_navigation);
|
||||
pbWait = view.findViewById(R.id.pbWait);
|
||||
grpReady = view.findViewById(R.id.grpReady);
|
||||
grpHeader = view.findViewById(R.id.grpHeader);
|
||||
grpAddresses = view.findViewById(R.id.grpAddresses);
|
||||
grpAttachments = view.findViewById(R.id.grpAttachments);
|
||||
grpMessage = view.findViewById(R.id.grpMessage);
|
||||
|
||||
// Wire controls
|
||||
|
||||
@@ -183,6 +184,7 @@ public class FragmentCompose extends FragmentEx {
|
||||
getActivity().invalidateOptionsMenu();
|
||||
grpHeader.setVisibility(hasFocus ? View.GONE : View.VISIBLE);
|
||||
if (hasFocus) {
|
||||
addresses = (grpAddresses.getVisibility() != View.GONE);
|
||||
grpAddresses.setVisibility(View.GONE);
|
||||
grpAttachments.setVisibility(View.GONE);
|
||||
}
|
||||
@@ -199,7 +201,8 @@ public class FragmentCompose extends FragmentEx {
|
||||
free = false;
|
||||
getActivity().invalidateOptionsMenu();
|
||||
grpHeader.setVisibility(View.VISIBLE);
|
||||
|
||||
if (addresses)
|
||||
grpAddresses.setVisibility(View.VISIBLE);
|
||||
if (rvAttachment.getAdapter().getItemCount() > 0)
|
||||
grpAttachments.setVisibility(View.VISIBLE);
|
||||
|
||||
@@ -230,14 +233,15 @@ public class FragmentCompose extends FragmentEx {
|
||||
setHasOptionsMenu(true);
|
||||
|
||||
// Initialize
|
||||
spFrom.setEnabled(false);
|
||||
//grpFrom.setVisibility(View.GONE);
|
||||
grpHeader.setVisibility(View.GONE);
|
||||
grpAddresses.setVisibility(View.GONE);
|
||||
grpAttachments.setVisibility(View.GONE);
|
||||
grpReady.setVisibility(View.GONE);
|
||||
grpMessage.setVisibility(View.GONE);
|
||||
pbWait.setVisibility(View.VISIBLE);
|
||||
Helper.setViewsEnabled(view, false);
|
||||
|
||||
getActivity().invalidateOptionsMenu();
|
||||
spFrom.setEnabled(false);
|
||||
Helper.setViewsEnabled(view, false);
|
||||
|
||||
if (ContextCompat.checkSelfPermission(getContext(), Manifest.permission.READ_CONTACTS)
|
||||
== PackageManager.PERMISSION_GRANTED) {
|
||||
@@ -347,7 +351,7 @@ public class FragmentCompose extends FragmentEx {
|
||||
@Override
|
||||
public void onPrepareOptionsMenu(Menu menu) {
|
||||
super.onPrepareOptionsMenu(menu);
|
||||
menu.findItem(R.id.menu_attachment).setVisible(working >= 0);
|
||||
menu.findItem(R.id.menu_attachment).setVisible(!free && working >= 0);
|
||||
menu.findItem(R.id.menu_attachment).setEnabled(etBody.isEnabled());
|
||||
menu.findItem(R.id.menu_addresses).setVisible(!free && working >= 0);
|
||||
}
|
||||
@@ -678,11 +682,6 @@ public class FragmentCompose extends FragmentEx {
|
||||
String action = getArguments().getString("action");
|
||||
Log.i(Helper.TAG, "Loaded draft id=" + draft.id + " action=" + action);
|
||||
|
||||
getActivity().invalidateOptionsMenu();
|
||||
pbWait.setVisibility(View.GONE);
|
||||
grpAddresses.setVisibility("reply_all".equals(action) ? View.VISIBLE : View.GONE);
|
||||
grpReady.setVisibility(View.VISIBLE);
|
||||
|
||||
etTo.setText(draft.to == null ? null : TextUtils.join(", ", draft.to));
|
||||
etCc.setText(draft.cc == null ? null : TextUtils.join(", ", draft.cc));
|
||||
etBcc.setText(draft.bcc == null ? null : TextUtils.join(", ", draft.bcc));
|
||||
@@ -690,15 +689,20 @@ public class FragmentCompose extends FragmentEx {
|
||||
|
||||
etBody.setText(TextUtils.isEmpty(draft.body) ? null : Html.fromHtml(draft.body));
|
||||
|
||||
getActivity().invalidateOptionsMenu();
|
||||
Helper.setViewsEnabled(view, true);
|
||||
|
||||
pbWait.setVisibility(View.GONE);
|
||||
grpHeader.setVisibility(View.VISIBLE);
|
||||
grpAddresses.setVisibility("reply_all".equals(action) ? View.VISIBLE : View.GONE);
|
||||
grpMessage.setVisibility(View.VISIBLE);
|
||||
|
||||
if ("reply".equals(action) || "reply_all".equals(action)) {
|
||||
etBody.requestFocus();
|
||||
etBody.setSelection(0);
|
||||
} else if ("forward".equals(action))
|
||||
etTo.requestFocus();
|
||||
|
||||
Helper.setViewsEnabled(view, true);
|
||||
getActivity().invalidateOptionsMenu();
|
||||
|
||||
DB db = DB.getInstance(getContext());
|
||||
|
||||
db.identity().liveIdentities(true).removeObservers(getViewLifecycleOwner());
|
||||
@@ -756,7 +760,6 @@ public class FragmentCompose extends FragmentEx {
|
||||
}
|
||||
|
||||
spFrom.setEnabled(true);
|
||||
//grpFrom.setVisibility(View.VISIBLE);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user