mirror of https://github.com/M66B/FairEmail.git
Added related identity for POP3 account
This commit is contained in:
parent
eac3f3d58f
commit
71cb5d05fb
|
@ -48,6 +48,7 @@ import android.widget.TextView;
|
||||||
import androidx.annotation.NonNull;
|
import androidx.annotation.NonNull;
|
||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
import androidx.constraintlayout.widget.Group;
|
import androidx.constraintlayout.widget.Group;
|
||||||
|
import androidx.fragment.app.FragmentTransaction;
|
||||||
import androidx.lifecycle.Lifecycle;
|
import androidx.lifecycle.Lifecycle;
|
||||||
|
|
||||||
import com.google.android.material.snackbar.Snackbar;
|
import com.google.android.material.snackbar.Snackbar;
|
||||||
|
@ -97,6 +98,7 @@ public class FragmentPop extends FragmentBase {
|
||||||
|
|
||||||
private Button btnSave;
|
private Button btnSave;
|
||||||
private ContentLoadingProgressBar pbSave;
|
private ContentLoadingProgressBar pbSave;
|
||||||
|
private CheckBox cbIdentity;
|
||||||
private TextView tvError;
|
private TextView tvError;
|
||||||
private Group grpError;
|
private Group grpError;
|
||||||
|
|
||||||
|
@ -156,6 +158,7 @@ public class FragmentPop extends FragmentBase {
|
||||||
|
|
||||||
btnSave = view.findViewById(R.id.btnSave);
|
btnSave = view.findViewById(R.id.btnSave);
|
||||||
pbSave = view.findViewById(R.id.pbSave);
|
pbSave = view.findViewById(R.id.pbSave);
|
||||||
|
cbIdentity = view.findViewById(R.id.cbIdentity);
|
||||||
|
|
||||||
tvError = view.findViewById(R.id.tvError);
|
tvError = view.findViewById(R.id.tvError);
|
||||||
grpError = view.findViewById(R.id.grpError);
|
grpError = view.findViewById(R.id.grpError);
|
||||||
|
@ -444,6 +447,8 @@ public class FragmentPop extends FragmentBase {
|
||||||
db.account().updateAccount(account);
|
db.account().updateAccount(account);
|
||||||
else
|
else
|
||||||
account.id = db.account().insertAccount(account);
|
account.id = db.account().insertAccount(account);
|
||||||
|
|
||||||
|
args.putLong("account", account.id);
|
||||||
EntityLog.log(context, (update ? "Updated" : "Added") + " account=" + account.name);
|
EntityLog.log(context, (update ? "Updated" : "Added") + " account=" + account.name);
|
||||||
|
|
||||||
// Make sure the channel exists on commit
|
// Make sure the channel exists on commit
|
||||||
|
@ -537,7 +542,24 @@ public class FragmentPop extends FragmentBase {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onExecuted(Bundle args, Boolean dirty) {
|
protected void onExecuted(Bundle args, Boolean dirty) {
|
||||||
|
Context context = getContext();
|
||||||
|
if (context != null)
|
||||||
|
WidgetUnified.updateData(context); // Update color stripe
|
||||||
|
|
||||||
|
if (getLifecycle().getCurrentState().isAtLeast(Lifecycle.State.STARTED)) {
|
||||||
getParentFragmentManager().popBackStack();
|
getParentFragmentManager().popBackStack();
|
||||||
|
|
||||||
|
if (cbIdentity.isChecked()) {
|
||||||
|
Bundle aargs = new Bundle();
|
||||||
|
aargs.putLong("account", args.getLong("account"));
|
||||||
|
|
||||||
|
FragmentIdentity fragment = new FragmentIdentity();
|
||||||
|
fragment.setArguments(aargs);
|
||||||
|
FragmentTransaction fragmentTransaction = getParentFragmentManager().beginTransaction();
|
||||||
|
fragmentTransaction.replace(R.id.content_frame, fragment).addToBackStack("identity");
|
||||||
|
fragmentTransaction.commit();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -624,6 +646,7 @@ public class FragmentPop extends FragmentBase {
|
||||||
? EntityAccount.DEFAULT_MAX_MESSAGES : account.max_messages));
|
? EntityAccount.DEFAULT_MAX_MESSAGES : account.max_messages));
|
||||||
|
|
||||||
etInterval.setText(account == null ? "" : Long.toString(account.poll_interval));
|
etInterval.setText(account == null ? "" : Long.toString(account.poll_interval));
|
||||||
|
cbIdentity.setChecked(account == null);
|
||||||
|
|
||||||
List<EntityFolder> folders = getSwipeActions();
|
List<EntityFolder> folders = getSwipeActions();
|
||||||
for (int pos = 0; pos < folders.size(); pos++) {
|
for (int pos = 0; pos < folders.size(); pos++) {
|
||||||
|
|
|
@ -464,6 +464,15 @@
|
||||||
app:layout_constraintStart_toEndOf="@id/btnSave"
|
app:layout_constraintStart_toEndOf="@id/btnSave"
|
||||||
app:layout_constraintTop_toTopOf="@id/btnSave" />
|
app:layout_constraintTop_toTopOf="@id/btnSave" />
|
||||||
|
|
||||||
|
<CheckBox
|
||||||
|
android:id="@+id/cbIdentity"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="12dp"
|
||||||
|
android:text="@string/title_related_identity"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/btnSave" />
|
||||||
|
|
||||||
<eu.faircode.email.FixedTextView
|
<eu.faircode.email.FixedTextView
|
||||||
android:id="@+id/tvErrorTitle"
|
android:id="@+id/tvErrorTitle"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
|
@ -473,7 +482,7 @@
|
||||||
android:textAppearance="@style/TextAppearance.AppCompat.Medium"
|
android:textAppearance="@style/TextAppearance.AppCompat.Medium"
|
||||||
android:textStyle="bold"
|
android:textStyle="bold"
|
||||||
app:layout_constraintStart_toStartOf="parent"
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
app:layout_constraintTop_toBottomOf="@id/btnSave" />
|
app:layout_constraintTop_toBottomOf="@id/cbIdentity" />
|
||||||
|
|
||||||
<eu.faircode.email.FixedTextView
|
<eu.faircode.email.FixedTextView
|
||||||
android:id="@+id/tvError"
|
android:id="@+id/tvError"
|
||||||
|
|
Loading…
Reference in New Issue