From aea6a790195a93754779aa6827827a5b81db195b Mon Sep 17 00:00:00 2001 From: M66B Date: Fri, 30 Oct 2020 09:51:59 +0100 Subject: [PATCH] Simplifications --- .../java/eu/faircode/email/ActivitySetup.java | 12 ++-- .../java/eu/faircode/email/ActivityView.java | 20 ++++--- .../eu/faircode/email/AdapterContact.java | 8 ++- .../java/eu/faircode/email/AdapterFolder.java | 6 +- .../eu/faircode/email/AdapterMessage.java | 58 ++++++++++-------- .../eu/faircode/email/FragmentAnswer.java | 8 ++- .../eu/faircode/email/FragmentCompose.java | 24 ++++---- .../eu/faircode/email/FragmentContacts.java | 8 ++- .../eu/faircode/email/FragmentDialogAsk.java | 2 +- .../email/FragmentDialogDuration.java | 16 +++-- .../eu/faircode/email/FragmentDialogLink.java | 7 ++- .../email/FragmentDialogMarkdown.java | 6 +- .../faircode/email/FragmentDialogSearch.java | 31 +++++----- .../eu/faircode/email/FragmentFolders.java | 6 +- .../eu/faircode/email/FragmentMessages.java | 60 +++++++++++-------- .../eu/faircode/email/FragmentOperations.java | 6 +- .../eu/faircode/email/FragmentOptions.java | 13 ++-- .../email/FragmentOptionsBehavior.java | 16 ++--- .../email/FragmentOptionsDisplay.java | 12 ++-- .../email/FragmentOptionsPrivacy.java | 14 +++-- .../email/FragmentOptionsSynchronize.java | 8 ++- .../eu/faircode/email/FragmentReview.java | 11 ++-- .../java/eu/faircode/email/FragmentRule.java | 24 ++++---- .../java/eu/faircode/email/FragmentSetup.java | 4 +- app/src/main/java/eu/faircode/email/Log.java | 9 ++- 25 files changed, 229 insertions(+), 160 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/ActivitySetup.java b/app/src/main/java/eu/faircode/email/ActivitySetup.java index 4108e2c69c..995b2546c3 100644 --- a/app/src/main/java/eu/faircode/email/ActivitySetup.java +++ b/app/src/main/java/eu/faircode/email/ActivitySetup.java @@ -1254,7 +1254,9 @@ public class ActivitySetup extends ActivityBase implements FragmentManager.OnBac public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { final boolean export = getArguments().getBoolean("export"); - View dview = LayoutInflater.from(getContext()).inflate(R.layout.dialog_password, null); + final Context context = getContext(); + + View dview = LayoutInflater.from(context).inflate(R.layout.dialog_password, null); etPassword1 = dview.findViewById(R.id.tilPassword1); etPassword2 = dview.findViewById(R.id.tilPassword2); TextView tvImportHint = dview.findViewById(R.id.tvImportHint); @@ -1267,7 +1269,7 @@ public class ActivitySetup extends ActivityBase implements FragmentManager.OnBac etPassword2.setVisibility(export ? View.VISIBLE : View.GONE); tvImportHint.setVisibility(export ? View.GONE : View.VISIBLE); - return new AlertDialog.Builder(getContext()) + return new AlertDialog.Builder(context) .setView(dview) .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { @Override @@ -1276,16 +1278,16 @@ public class ActivitySetup extends ActivityBase implements FragmentManager.OnBac String password2 = etPassword2.getEditText().getText().toString(); if (!BuildConfig.DEBUG && TextUtils.isEmpty(password1)) - ToastEx.makeText(getContext(), R.string.title_setup_password_missing, Toast.LENGTH_LONG).show(); + ToastEx.makeText(context, R.string.title_setup_password_missing, Toast.LENGTH_LONG).show(); else { if (!export || password1.equals(password2)) { ((ActivitySetup) getActivity()).password = password1; getActivity().startActivityForResult( - Helper.getChooser(getContext(), + Helper.getChooser(context, export ? getIntentExport() : getIntentImport()), export ? REQUEST_EXPORT : REQUEST_IMPORT); } else - ToastEx.makeText(getContext(), R.string.title_setup_password_different, Toast.LENGTH_LONG).show(); + ToastEx.makeText(context, R.string.title_setup_password_different, Toast.LENGTH_LONG).show(); } } }) diff --git a/app/src/main/java/eu/faircode/email/ActivityView.java b/app/src/main/java/eu/faircode/email/ActivityView.java index 2c2915a1ee..783dfc8ff8 100644 --- a/app/src/main/java/eu/faircode/email/ActivityView.java +++ b/app/src/main/java/eu/faircode/email/ActivityView.java @@ -1418,7 +1418,9 @@ public class ActivityView extends ActivityBilling implements FragmentManager.OnB @NonNull @Override public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { - LayoutInflater inflater = LayoutInflater.from(getContext()); + final Context context = getContext(); + + LayoutInflater inflater = LayoutInflater.from(context); View dview = inflater.inflate(R.layout.dialog_first, null); Button btnBatteryInfo = dview.findViewById(R.id.btnBatteryInfo); Button btnReformatInfo = dview.findViewById(R.id.btnReformatInfo); @@ -1426,23 +1428,23 @@ public class ActivityView extends ActivityBilling implements FragmentManager.OnB btnBatteryInfo.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - Helper.viewFAQ(getContext(), 39); + Helper.viewFAQ(context, 39); } }); btnReformatInfo.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - Helper.viewFAQ(getContext(), 35); + Helper.viewFAQ(context, 35); } }); - return new AlertDialog.Builder(getContext()) + return new AlertDialog.Builder(context) .setView(dview) .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { - SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext()); + SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); prefs.edit().putBoolean("first", false).apply(); } }) @@ -1455,18 +1457,20 @@ public class ActivityView extends ActivityBilling implements FragmentManager.OnB @NonNull @Override public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { - return new AlertDialog.Builder(getContext()) + final Context context = getContext(); + + return new AlertDialog.Builder(context) .setMessage(R.string.title_issue) .setPositiveButton(R.string.title_yes, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { - Helper.viewFAQ(getContext(), 0); + Helper.viewFAQ(context, 0); } }) .setNegativeButton(R.string.title_no, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { - Helper.view(getContext(), Helper.getIntentRate(getContext())); + Helper.view(context, Helper.getIntentRate(context)); } }) .create(); diff --git a/app/src/main/java/eu/faircode/email/AdapterContact.java b/app/src/main/java/eu/faircode/email/AdapterContact.java index 70b8cc7561..17071970ab 100644 --- a/app/src/main/java/eu/faircode/email/AdapterContact.java +++ b/app/src/main/java/eu/faircode/email/AdapterContact.java @@ -481,11 +481,13 @@ public class AdapterContact extends RecyclerView.Adapter() { @Override public void onChanged(TupleKeyword.Persisted data) { pbWait.setVisibility(View.GONE); - adapter.set(id, TupleKeyword.from(getContext(), data)); + adapter.set(id, TupleKeyword.from(context, data)); } }); - return new AlertDialog.Builder(getContext()) + return new AlertDialog.Builder(context) .setTitle(R.string.title_manage_keywords) .setView(dview) .setPositiveButton(android.R.string.ok, null) @@ -6379,11 +6383,13 @@ public class AdapterMessage extends RecyclerView.Adapter" + getString(R.string.title_answer_template_name) + "
" + getString(R.string.title_answer_template_email) + - "

", false, getContext()); + "

", false, context); - View dview = LayoutInflater.from(getContext()).inflate(R.layout.dialog_ask_again, null); + View dview = LayoutInflater.from(context).inflate(R.layout.dialog_ask_again, null); TextView tvMessage = dview.findViewById(R.id.tvMessage); CheckBox cbNotAgain = dview.findViewById(R.id.cbNotAgain); tvMessage.setText(spanned); cbNotAgain.setVisibility(View.GONE); - return new AlertDialog.Builder(getContext()) + return new AlertDialog.Builder(context) .setView(dview) .setNegativeButton(android.R.string.cancel, null) .create(); diff --git a/app/src/main/java/eu/faircode/email/FragmentCompose.java b/app/src/main/java/eu/faircode/email/FragmentCompose.java index 6d37f33bf6..c37a638150 100644 --- a/app/src/main/java/eu/faircode/email/FragmentCompose.java +++ b/app/src/main/java/eu/faircode/email/FragmentCompose.java @@ -5371,14 +5371,16 @@ public class FragmentCompose extends FragmentBase { public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { int title = getArguments().getInt("title"); - final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext()); + final Context context = getContext(); + + final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); boolean add_inline = prefs.getBoolean("add_inline", true); boolean resize_images = prefs.getBoolean("resize_images", true); int resize = prefs.getInt("resize", FragmentCompose.REDUCED_IMAGE_SIZE); boolean privacy_images = prefs.getBoolean("privacy_images", false); boolean image_dialog = prefs.getBoolean("image_dialog", true); - final ViewGroup dview = (ViewGroup) LayoutInflater.from(getContext()).inflate(R.layout.dialog_add_image, null); + final ViewGroup dview = (ViewGroup) LayoutInflater.from(context).inflate(R.layout.dialog_add_image, null); final RadioGroup rgAction = dview.findViewById(R.id.rgAction); final CheckBox cbResize = dview.findViewById(R.id.cbResize); final Spinner spResize = dview.findViewById(R.id.spResize); @@ -5446,7 +5448,7 @@ public class FragmentCompose extends FragmentBase { cbNotAgain.setChecked(!image_dialog); tvNotAgain.setVisibility(cbNotAgain.isChecked() ? View.VISIBLE : View.GONE); - return new AlertDialog.Builder(getContext()) + return new AlertDialog.Builder(context) .setView(dview) .setNegativeButton(android.R.string.cancel, null) .setPositiveButton(title, @@ -5479,7 +5481,9 @@ public class FragmentCompose extends FragmentBase { final long size = args.getLong("size", -1); final long max_size = args.getLong("max_size", -1); - SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext()); + final Context context = getContext(); + + SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); boolean send_reminders = prefs.getBoolean("send_reminders", true); int send_delayed = prefs.getInt("send_delayed", 0); boolean send_dialog = prefs.getBoolean("send_dialog", true); @@ -5488,7 +5492,7 @@ public class FragmentCompose extends FragmentBase { final int[] sendDelayedValues = getResources().getIntArray(R.array.sendDelayedValues); final String[] sendDelayedNames = getResources().getStringArray(R.array.sendDelayedNames); - final ViewGroup dview = (ViewGroup) LayoutInflater.from(getContext()).inflate(R.layout.dialog_send, null); + final ViewGroup dview = (ViewGroup) LayoutInflater.from(context).inflate(R.layout.dialog_send, null); final TextView tvAddressError = dview.findViewById(R.id.tvAddressError); final TextView tvRemindSize = dview.findViewById(R.id.tvRemindSize); final TextView tvRemindTo = dview.findViewById(R.id.tvRemindTo); @@ -5692,7 +5696,7 @@ public class FragmentCompose extends FragmentBase { ibEncryption.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - Helper.viewFAQ(getContext(), 12); + Helper.viewFAQ(context, 12); } }); @@ -5751,7 +5755,7 @@ public class FragmentCompose extends FragmentBase { } }); - DB db = DB.getInstance(getContext()); + DB db = DB.getInstance(context); db.message().liveMessage(id).observe(getViewLifecycleOwner(), new Observer() { @Override public void onChanged(TupleMessageEx draft) { @@ -5767,7 +5771,7 @@ public class FragmentCompose extends FragmentBase { else tvTo.setText(getString(R.string.title_name_plus, MessageHelper.formatAddressesShort(draft.to), cc)); - tvTo.setTextColor(Helper.resolveColor(getContext(), + tvTo.setTextColor(Helper.resolveColor(context, to + cc > RECIPIENTS_WARNING ? R.attr.colorWarning : android.R.attr.textColorPrimary)); tvVia.setText(draft.identityEmail); @@ -5800,7 +5804,7 @@ public class FragmentCompose extends FragmentBase { break; } } else { - DateFormat DTF = Helper.getDateTimeInstance(getContext(), SimpleDateFormat.MEDIUM, SimpleDateFormat.SHORT); + DateFormat DTF = Helper.getDateTimeInstance(context, SimpleDateFormat.MEDIUM, SimpleDateFormat.SHORT); DateFormat D = new SimpleDateFormat("E"); tvSendAt.setText(D.format(draft.ui_snoozed) + " " + DTF.format(draft.ui_snoozed)); } @@ -5809,7 +5813,7 @@ public class FragmentCompose extends FragmentBase { } }); - AlertDialog.Builder builder = new AlertDialog.Builder(getContext()) + AlertDialog.Builder builder = new AlertDialog.Builder(context) .setView(dview) .setNegativeButton(android.R.string.cancel, null); diff --git a/app/src/main/java/eu/faircode/email/FragmentContacts.java b/app/src/main/java/eu/faircode/email/FragmentContacts.java index dda587b2fa..9bae6b73c3 100644 --- a/app/src/main/java/eu/faircode/email/FragmentContacts.java +++ b/app/src/main/java/eu/faircode/email/FragmentContacts.java @@ -168,14 +168,16 @@ public class FragmentContacts extends FragmentBase { @NonNull @Override public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { - final View dview = LayoutInflater.from(getContext()).inflate(R.layout.dialog_ask_again, null); + final Context context = getContext(); + + final View dview = LayoutInflater.from(context).inflate(R.layout.dialog_ask_again, null); final TextView tvMessage = dview.findViewById(R.id.tvMessage); CheckBox cbNotAgain = dview.findViewById(R.id.cbNotAgain); tvMessage.setText(getText(R.string.title_delete_contacts)); cbNotAgain.setVisibility(View.GONE); - return new AlertDialog.Builder(getContext()) + return new AlertDialog.Builder(context) .setView(dview) .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { @Override @@ -193,7 +195,7 @@ public class FragmentContacts extends FragmentBase { protected void onException(Bundle args, Throwable ex) { Log.unexpectedError(getParentFragmentManager(), ex); } - }.execute(getContext(), getActivity(), new Bundle(), "contacts:delete"); + }.execute(context, getActivity(), new Bundle(), "contacts:delete"); } }) .setNegativeButton(android.R.string.cancel, null) diff --git a/app/src/main/java/eu/faircode/email/FragmentDialogAsk.java b/app/src/main/java/eu/faircode/email/FragmentDialogAsk.java index 9f1428a087..0d73ffb681 100644 --- a/app/src/main/java/eu/faircode/email/FragmentDialogAsk.java +++ b/app/src/main/java/eu/faircode/email/FragmentDialogAsk.java @@ -77,7 +77,7 @@ public class FragmentDialogAsk extends FragmentDialogBase { } }); - return new AlertDialog.Builder(getContext()) + return new AlertDialog.Builder(context) .setView(dview) .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { @Override diff --git a/app/src/main/java/eu/faircode/email/FragmentDialogDuration.java b/app/src/main/java/eu/faircode/email/FragmentDialogDuration.java index 5130418648..5d877ccb8d 100644 --- a/app/src/main/java/eu/faircode/email/FragmentDialogDuration.java +++ b/app/src/main/java/eu/faircode/email/FragmentDialogDuration.java @@ -20,6 +20,7 @@ package eu.faircode.email; */ import android.app.Dialog; +import android.content.Context; import android.content.DialogInterface; import android.content.Intent; import android.os.Build; @@ -57,7 +58,9 @@ public class FragmentDialogDuration extends FragmentDialogBase { public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { String title = getArguments().getString("title"); - final View dview = LayoutInflater.from(getContext()).inflate(R.layout.dialog_duration, null); + final Context context = getContext(); + + final View dview = LayoutInflater.from(context).inflate(R.layout.dialog_duration, null); final TextView tvDuration = dview.findViewById(R.id.tvDuration); final Button btn1hour = dview.findViewById(R.id.btn1hour); final Button btn1day = dview.findViewById(R.id.btn1day); @@ -71,10 +74,10 @@ public class FragmentDialogDuration extends FragmentDialogBase { cal.setTimeInMillis(savedInstanceState.getLong("fair:time")); Log.i("Set init=" + new Date(cal.getTimeInMillis())); - final DateFormat DTF = Helper.getDateTimeInstance(getContext(), SimpleDateFormat.FULL, SimpleDateFormat.SHORT); + final DateFormat DTF = Helper.getDateTimeInstance(context, SimpleDateFormat.FULL, SimpleDateFormat.SHORT); tvDuration.setText(DTF.format(cal.getTime())); - timePicker.setIs24HourView(android.text.format.DateFormat.is24HourFormat(getContext())); + timePicker.setIs24HourView(android.text.format.DateFormat.is24HourFormat(context)); if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) { timePicker.setCurrentHour(cal.get(Calendar.HOUR_OF_DAY)); timePicker.setCurrentMinute(cal.get(Calendar.MINUTE)); @@ -83,7 +86,7 @@ public class FragmentDialogDuration extends FragmentDialogBase { timePicker.setMinute(cal.get(Calendar.MINUTE)); } - Dialog dialog = new AlertDialog.Builder(getContext()) + Dialog dialog = new AlertDialog.Builder(context) .setTitle(title) .setView(dview) .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { @@ -174,8 +177,9 @@ public class FragmentDialogDuration extends FragmentDialogBase { @Override protected void sendResult(int result) { if (result == RESULT_OK) { - if (!ActivityBilling.isPro(getContext())) { - startActivity(new Intent(getContext(), ActivityBilling.class)); + final Context context = getContext(); + if (!ActivityBilling.isPro(context)) { + startActivity(new Intent(context, ActivityBilling.class)); result = RESULT_CANCELED; } } diff --git a/app/src/main/java/eu/faircode/email/FragmentDialogLink.java b/app/src/main/java/eu/faircode/email/FragmentDialogLink.java index 0014b235b1..5dc8f74770 100644 --- a/app/src/main/java/eu/faircode/email/FragmentDialogLink.java +++ b/app/src/main/java/eu/faircode/email/FragmentDialogLink.java @@ -20,6 +20,7 @@ package eu.faircode.email; */ import android.app.Dialog; +import android.content.Context; import android.content.DialogInterface; import android.net.Uri; import android.os.Bundle; @@ -50,7 +51,9 @@ public class FragmentDialogLink extends FragmentDialogBase { public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { Uri uri = getArguments().getParcelable("uri"); - View view = LayoutInflater.from(getContext()).inflate(R.layout.dialog_insert_link, null); + final Context context = getContext(); + + View view = LayoutInflater.from(context).inflate(R.layout.dialog_insert_link, null); etLink = view.findViewById(R.id.etLink); final TextView tvInsecure = view.findViewById(R.id.tvInsecure); @@ -76,7 +79,7 @@ public class FragmentDialogLink extends FragmentDialogBase { else etLink.setText(savedInstanceState.getString("fair:link")); - return new AlertDialog.Builder(getContext()) + return new AlertDialog.Builder(context) .setView(view) .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { @Override diff --git a/app/src/main/java/eu/faircode/email/FragmentDialogMarkdown.java b/app/src/main/java/eu/faircode/email/FragmentDialogMarkdown.java index e3bf2bb45a..4ce5b70ed3 100644 --- a/app/src/main/java/eu/faircode/email/FragmentDialogMarkdown.java +++ b/app/src/main/java/eu/faircode/email/FragmentDialogMarkdown.java @@ -40,13 +40,15 @@ public class FragmentDialogMarkdown extends FragmentDialogBase { @NonNull @Override public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { - final View dview = LayoutInflater.from(getContext()).inflate(R.layout.dialog_markdown, null); + final Context context = getContext(); + + final View dview = LayoutInflater.from(context).inflate(R.layout.dialog_markdown, null); final TextView tvMarkdown = dview.findViewById(R.id.tvMarkdown); final ContentLoadingProgressBar pbWait = dview.findViewById(R.id.pbWait); tvMarkdown.setText(null); - Dialog dialog = new Dialog(getContext()); + Dialog dialog = new Dialog(context); //dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); dialog.setContentView(dview); dialog.getWindow().setLayout( diff --git a/app/src/main/java/eu/faircode/email/FragmentDialogSearch.java b/app/src/main/java/eu/faircode/email/FragmentDialogSearch.java index bb16890e02..46065dd291 100644 --- a/app/src/main/java/eu/faircode/email/FragmentDialogSearch.java +++ b/app/src/main/java/eu/faircode/email/FragmentDialogSearch.java @@ -44,9 +44,10 @@ public class FragmentDialogSearch extends FragmentDialogBase { final long account = getArguments().getLong("account", -1); final long folder = getArguments().getLong("folder", -1); - boolean pro = ActivityBilling.isPro(getContext()); + final Context context = getContext(); + boolean pro = ActivityBilling.isPro(context); - final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext()); + final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); boolean fts = prefs.getBoolean("fts", false); boolean last_search_senders = prefs.getBoolean("last_search_senders", true); boolean last_search_recipients = prefs.getBoolean("last_search_recipients", true); @@ -55,7 +56,7 @@ public class FragmentDialogSearch extends FragmentDialogBase { boolean last_search_message = prefs.getBoolean("last_search_message", true); String last_search = prefs.getString("last_search", null); - View dview = LayoutInflater.from(getContext()).inflate(R.layout.dialog_search, null); + View dview = LayoutInflater.from(context).inflate(R.layout.dialog_search, null); final AutoCompleteTextView etQuery = dview.findViewById(R.id.etQuery); final ImageButton ibAttachment = dview.findViewById(R.id.ibAttachment); @@ -83,18 +84,18 @@ public class FragmentDialogSearch extends FragmentDialogBase { final TextView tvAfter = dview.findViewById(R.id.tvAfter); final Group grpMore = dview.findViewById(R.id.grpMore); - final InputMethodManager imm = (InputMethodManager) getContext().getSystemService(Context.INPUT_METHOD_SERVICE); + final InputMethodManager imm = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE); ibInfo.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { imm.hideSoftInputFromWindow(etQuery.getWindowToken(), 0); - Helper.viewFAQ(getContext(), 13); + Helper.viewFAQ(context, 13); } }); SimpleCursorAdapter adapter = new SimpleCursorAdapter( - getContext(), + context, R.layout.search_suggestion, null, new String[]{"suggestion"}, @@ -110,7 +111,7 @@ public class FragmentDialogSearch extends FragmentDialogBase { return cursor; String query = "%" + typed + "%"; - DB db = DB.getInstance(getContext()); + DB db = DB.getInstance(context); return db.message().getSuggestions( account < 0 ? null : account, folder < 0 ? null : folder, @@ -250,7 +251,7 @@ public class FragmentDialogSearch extends FragmentDialogBase { etQuery.requestFocus(); imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0); - final AlertDialog dialog = new AlertDialog.Builder(getContext()) + final AlertDialog dialog = new AlertDialog.Builder(context) .setView(dview) .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() { @Override @@ -322,7 +323,7 @@ public class FragmentDialogSearch extends FragmentDialogBase { @Override protected void onExecuted(Bundle args, EntityFolder archive) { FragmentMessages.search( - getContext(), getViewLifecycleOwner(), getParentFragmentManager(), + context, getViewLifecycleOwner(), getParentFragmentManager(), account, archive == null ? folder : archive.id, archive != null, @@ -333,10 +334,10 @@ public class FragmentDialogSearch extends FragmentDialogBase { protected void onException(Bundle args, Throwable ex) { Log.unexpectedError(getParentFragmentManager(), ex); } - }.execute(getContext(), getViewLifecycleOwner(), getArguments(), "search:raw"); + }.execute(context, getViewLifecycleOwner(), getArguments(), "search:raw"); else FragmentMessages.search( - getContext(), getViewLifecycleOwner(), getParentFragmentManager(), + context, getViewLifecycleOwner(), getParentFragmentManager(), account, folder, false, criteria); } }) @@ -371,7 +372,7 @@ public class FragmentDialogSearch extends FragmentDialogBase { } FragmentMessages.search( - getContext(), getViewLifecycleOwner(), getParentFragmentManager(), + context, getViewLifecycleOwner(), getParentFragmentManager(), account, folder, false, criteria); } }; @@ -404,7 +405,9 @@ public class FragmentDialogSearch extends FragmentDialogBase { Object tag = tv.getTag(); final Calendar cal = (tag == null ? Calendar.getInstance() : (Calendar) tag); - DatePickerDialog picker = new DatePickerDialog(getContext(), + final Context context = getContext(); + + DatePickerDialog picker = new DatePickerDialog(context, new DatePickerDialog.OnDateSetListener() { @Override public void onDateSet(DatePicker view, int year, int month, int day) { @@ -412,7 +415,7 @@ public class FragmentDialogSearch extends FragmentDialogBase { cal.set(Calendar.MONTH, month); cal.set(Calendar.DAY_OF_MONTH, day); - DateFormat DF = Helper.getDateInstance(getContext()); + DateFormat DF = Helper.getDateInstance(context); tv.setTag(cal); tv.setText(DF.format(cal.getTime())); diff --git a/app/src/main/java/eu/faircode/email/FragmentFolders.java b/app/src/main/java/eu/faircode/email/FragmentFolders.java index 8babcf28ff..0c2c1e399d 100644 --- a/app/src/main/java/eu/faircode/email/FragmentFolders.java +++ b/app/src/main/java/eu/faircode/email/FragmentFolders.java @@ -793,7 +793,9 @@ public class FragmentFolders extends FragmentBase { @NonNull @Override public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { - View view = LayoutInflater.from(getContext()).inflate(R.layout.dialog_folder_all, null); + final Context context = getContext(); + + View view = LayoutInflater.from(context).inflate(R.layout.dialog_folder_all, null); final EditText etSyncDays = view.findViewById(R.id.etSyncDays); final EditText etKeepDays = view.findViewById(R.id.etKeepDays); final CheckBox cbKeepAll = view.findViewById(R.id.cbKeepAll); @@ -805,7 +807,7 @@ public class FragmentFolders extends FragmentBase { } }); - return new AlertDialog.Builder(getContext()) + return new AlertDialog.Builder(context) .setView(view) .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { @Override diff --git a/app/src/main/java/eu/faircode/email/FragmentMessages.java b/app/src/main/java/eu/faircode/email/FragmentMessages.java index 7eceb83e62..c78330ba07 100644 --- a/app/src/main/java/eu/faircode/email/FragmentMessages.java +++ b/app/src/main/java/eu/faircode/email/FragmentMessages.java @@ -7498,22 +7498,24 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. @NonNull @Override public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { - View dview = LayoutInflater.from(getContext()).inflate(R.layout.dialog_error_reporting, null); + final Context context = getContext(); + + View dview = LayoutInflater.from(context).inflate(R.layout.dialog_error_reporting, null); Button btnInfo = dview.findViewById(R.id.btnInfo); btnInfo.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - Helper.viewFAQ(getContext(), 104); + Helper.viewFAQ(context, 104); } }); - return new AlertDialog.Builder(getContext()) + return new AlertDialog.Builder(context) .setView(dview) .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { - SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext()); + SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); prefs.edit().putBoolean("crash_reports", true).apply(); Log.setCrashReporting(true); } @@ -7521,7 +7523,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. .setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { - SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext()); + SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); prefs.edit().putBoolean("crash_reports_asked", true).apply(); } }) @@ -7533,29 +7535,30 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. @NonNull @Override public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { - View dview = LayoutInflater.from(getContext()).inflate(R.layout.dialog_review, null); + final Context context = getContext(); + View dview = LayoutInflater.from(context).inflate(R.layout.dialog_review, null); - return new AlertDialog.Builder(getContext()) + return new AlertDialog.Builder(context) .setView(dview) .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { - SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext()); + SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); prefs.edit().putBoolean("review_asked", true).apply(); - startActivity(Helper.getIntentRate(getContext())); + startActivity(Helper.getIntentRate(context)); } }) .setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { - SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext()); + SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); prefs.edit().putBoolean("review_asked", true).apply(); } }) .setNeutralButton(R.string.title_later, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { - SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext()); + SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); prefs.edit().putLong("review_later", new Date().getTime()).apply(); } }) @@ -7567,7 +7570,8 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. @NonNull @Override public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { - final ArrayAdapter adapter = new ArrayAdapter<>(getContext(), R.layout.spinner_item1, android.R.id.text1); + final Context context = getContext(); + final ArrayAdapter adapter = new ArrayAdapter<>(context, R.layout.spinner_item1, android.R.id.text1); // TODO: spinner new SimpleTask>() { @@ -7588,7 +7592,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. } }.execute(this, new Bundle(), "messages:accounts"); - return new AlertDialog.Builder(getContext()) + return new AlertDialog.Builder(context) .setAdapter(adapter, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { @@ -7606,7 +7610,9 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. @NonNull @Override public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { - View dview = LayoutInflater.from(getContext()).inflate(R.layout.dialog_identity, null); + final Context context = getContext(); + + View dview = LayoutInflater.from(context).inflate(R.layout.dialog_identity, null); final Spinner spIdentity = dview.findViewById(R.id.spIdentity); final CheckBox cbNotAgain = dview.findViewById(R.id.cbNotAgain); final Button btnFix = dview.findViewById(R.id.btnFix); @@ -7617,7 +7623,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. cbNotAgain.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext()); + SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); prefs.edit().putBoolean("identities_asked", isChecked).apply(); } }); @@ -7625,7 +7631,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. btnFix.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - startActivity(new Intent(getContext(), ActivitySetup.class)); + startActivity(new Intent(context, ActivitySetup.class)); getActivity().finish(); dismiss(); } @@ -7647,13 +7653,13 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. @Override protected List onExecute(Context context, Bundle args) { - DB db = DB.getInstance(getContext()); + DB db = DB.getInstance(context); return db.identity().getComposableIdentities(null); } @Override protected void onExecuted(Bundle args, List identities) { - AdapterIdentitySelect iadapter = new AdapterIdentitySelect(getContext(), identities); + AdapterIdentitySelect iadapter = new AdapterIdentitySelect(context, identities); spIdentity.setAdapter(iadapter); Integer fallback = null; @@ -7683,14 +7689,14 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. } }.execute(this, new Bundle(), "identity:select"); - return new AlertDialog.Builder(getContext()) + return new AlertDialog.Builder(context) .setView(dview) .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { TupleIdentityEx identity = (TupleIdentityEx) spIdentity.getSelectedItem(); if (identity != null) - startActivity(new Intent(getContext(), ActivityCompose.class) + startActivity(new Intent(context, ActivityCompose.class) .putExtra("action", "new") .putExtra("account", identity.account) .putExtra("identity", identity.id) @@ -7708,12 +7714,14 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { String error = getArguments().getString("error"); - View dview = LayoutInflater.from(getContext()).inflate(R.layout.dialog_boundary_error, null); + final Context context = getContext(); + + View dview = LayoutInflater.from(context).inflate(R.layout.dialog_boundary_error, null); TextView tvError = dview.findViewById(R.id.tvError); tvError.setText(error); - return new AlertDialog.Builder(getContext()) + return new AlertDialog.Builder(context) .setView(dview) .setPositiveButton(R.string.title_boundary_retry, new DialogInterface.OnClickListener() { @Override @@ -7738,7 +7746,9 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. String notagain = getArguments().getString("notagain"); ArrayList result = getArguments().getParcelableArrayList("result"); - View dview = LayoutInflater.from(getContext()).inflate(R.layout.dialog_ask_move, null); + final Context context = getContext(); + + View dview = LayoutInflater.from(context).inflate(R.layout.dialog_ask_move, null); TextView tvMessages = dview.findViewById(R.id.tvMessages); TextView tvSourceFolders = dview.findViewById(R.id.tvSourceFolders); TextView tvTargetFolders = dview.findViewById(R.id.tvTargetFolders); @@ -7782,12 +7792,12 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. cbNotAgain.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext()); + SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); prefs.edit().putBoolean(notagain, isChecked).apply(); } }); - return new AlertDialog.Builder(getContext()) + return new AlertDialog.Builder(context) .setView(dview) .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { @Override diff --git a/app/src/main/java/eu/faircode/email/FragmentOperations.java b/app/src/main/java/eu/faircode/email/FragmentOperations.java index 73022db416..8226982721 100644 --- a/app/src/main/java/eu/faircode/email/FragmentOperations.java +++ b/app/src/main/java/eu/faircode/email/FragmentOperations.java @@ -130,7 +130,9 @@ public class FragmentOperations extends FragmentBase { @NonNull @Override public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { - return new AlertDialog.Builder(getContext()) + final Context context = getContext(); + + return new AlertDialog.Builder(context) .setMessage(R.string.title_delete_operation) .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { @Override @@ -154,7 +156,7 @@ public class FragmentOperations extends FragmentBase { protected void onException(Bundle args, Throwable ex) { Log.unexpectedError(getParentFragmentManager(), ex); } - }.execute(getContext(), getActivity(), new Bundle(), "operations:delete"); + }.execute(context, getActivity(), new Bundle(), "operations:delete"); } }) .setNegativeButton(android.R.string.cancel, null) diff --git a/app/src/main/java/eu/faircode/email/FragmentOptions.java b/app/src/main/java/eu/faircode/email/FragmentOptions.java index 3fe3037364..446061791e 100644 --- a/app/src/main/java/eu/faircode/email/FragmentOptions.java +++ b/app/src/main/java/eu/faircode/email/FragmentOptions.java @@ -22,6 +22,7 @@ package eu.faircode.email; import android.Manifest; import android.app.Activity; import android.app.Dialog; +import android.content.Context; import android.content.DialogInterface; import android.content.Intent; import android.content.SharedPreferences; @@ -334,7 +335,9 @@ public class FragmentOptions extends FragmentBase { @NonNull @Override public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { - View dview = LayoutInflater.from(getContext()).inflate(R.layout.dialog_setup, null); + final Context context = getContext(); + + View dview = LayoutInflater.from(context).inflate(R.layout.dialog_setup, null); CheckBox cbNotAgain = dview.findViewById(R.id.cbNotAgain); Group grp3 = dview.findViewById(R.id.grp3); Group grp4 = dview.findViewById(R.id.grp4); @@ -342,18 +345,18 @@ public class FragmentOptions extends FragmentBase { cbNotAgain.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext()); + SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); prefs.edit().putBoolean("setup_reminder", !isChecked).apply(); } }); - boolean hasPermissions = Helper.hasPermission(getContext(), Manifest.permission.READ_CONTACTS); - Boolean isIgnoring = Helper.isIgnoringOptimizations(getContext()); + boolean hasPermissions = Helper.hasPermission(context, Manifest.permission.READ_CONTACTS); + Boolean isIgnoring = Helper.isIgnoringOptimizations(context); grp3.setVisibility(hasPermissions ? View.GONE : View.VISIBLE); grp4.setVisibility(isIgnoring == null || isIgnoring ? View.GONE : View.VISIBLE); - return new AlertDialog.Builder(getContext()) + return new AlertDialog.Builder(context) .setView(dview) .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { @Override diff --git a/app/src/main/java/eu/faircode/email/FragmentOptionsBehavior.java b/app/src/main/java/eu/faircode/email/FragmentOptionsBehavior.java index eb71067cfa..2df69b3002 100644 --- a/app/src/main/java/eu/faircode/email/FragmentOptionsBehavior.java +++ b/app/src/main/java/eu/faircode/email/FragmentOptionsBehavior.java @@ -491,17 +491,19 @@ public class FragmentOptionsBehavior extends FragmentBase implements SharedPrefe @NonNull @Override public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { - View dview = LayoutInflater.from(getContext()).inflate(R.layout.dialog_swipes, null); + final Context context = getContext(); + + View dview = LayoutInflater.from(context).inflate(R.layout.dialog_swipes, null); spLeft = dview.findViewById(R.id.spLeft); spRight = dview.findViewById(R.id.spRight); - adapter = new ArrayAdapter<>(getContext(), R.layout.spinner_item1, android.R.id.text1, new ArrayList()); + adapter = new ArrayAdapter<>(context, R.layout.spinner_item1, android.R.id.text1, new ArrayList()); adapter.setDropDownViewResource(R.layout.spinner_item1_dropdown); spLeft.setAdapter(adapter); spRight.setAdapter(adapter); - List folders = FragmentAccount.getFolderActions(getContext()); + List folders = FragmentAccount.getFolderActions(context); EntityFolder trash = new EntityFolder(); trash.id = 2L; @@ -515,14 +517,14 @@ public class FragmentOptionsBehavior extends FragmentBase implements SharedPrefe adapter.addAll(folders); - final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext()); + final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); int leftPos = prefs.getInt("swipe_left_default", 2); // Trash int rightPos = prefs.getInt("swipe_right_default", 1); // Archive spLeft.setSelection(leftPos); spRight.setSelection(rightPos); - return new AlertDialog.Builder(getContext()) + return new AlertDialog.Builder(context) .setView(dview) .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { @Override @@ -535,8 +537,6 @@ public class FragmentOptionsBehavior extends FragmentBase implements SharedPrefe EntityFolder left = (EntityFolder) spLeft.getSelectedItem(); EntityFolder right = (EntityFolder) spRight.getSelectedItem(); - final Context context = getContext(); - Bundle args = new Bundle(); args.putLong("left", left == null ? 0 : left.id); args.putLong("right", right == null ? 0 : right.id); @@ -589,7 +589,7 @@ public class FragmentOptionsBehavior extends FragmentBase implements SharedPrefe return (archive == null ? null : archive.id); } } - }.execute(getContext(), getViewLifecycleOwner(), args, "dialog:swipe"); + }.execute(context, getViewLifecycleOwner(), args, "dialog:swipe"); } }) .setNegativeButton(android.R.string.cancel, null) diff --git a/app/src/main/java/eu/faircode/email/FragmentOptionsDisplay.java b/app/src/main/java/eu/faircode/email/FragmentOptionsDisplay.java index f8d60df6c8..1a62616da8 100644 --- a/app/src/main/java/eu/faircode/email/FragmentOptionsDisplay.java +++ b/app/src/main/java/eu/faircode/email/FragmentOptionsDisplay.java @@ -1038,7 +1038,9 @@ public class FragmentOptionsDisplay extends FragmentBase implements SharedPrefer @NonNull @Override public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { - View dview = LayoutInflater.from(getContext()).inflate(R.layout.dialog_theme, null); + final Context context = getContext(); + + View dview = LayoutInflater.from(context).inflate(R.layout.dialog_theme, null); itten = dview.findViewById(R.id.itten); rgTheme = dview.findViewById(R.id.rgTheme); swReverse = dview.findViewById(R.id.swReverse); @@ -1046,14 +1048,14 @@ public class FragmentOptionsDisplay extends FragmentBase implements SharedPrefer swBlack = dview.findViewById(R.id.swBlack); tvSystem = dview.findViewById(R.id.tvSystem); - final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext()); + final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); String theme = prefs.getString("theme", "light"); itten.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Uri uri = Uri.parse("https://en.wikipedia.org/wiki/Johannes_Itten"); - Helper.view(getContext(), uri, false); + Helper.view(context, uri, false); } }); @@ -1158,14 +1160,14 @@ public class FragmentOptionsDisplay extends FragmentBase implements SharedPrefer break; } - return new AlertDialog.Builder(getContext()) + return new AlertDialog.Builder(context) .setView(dview) .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { getActivity().getIntent().putExtra("tab", "display"); - ContactInfo.clearCache(getContext()); + ContactInfo.clearCache(context); int optionId = rgThemeOptions.getCheckedRadioButtonId(); boolean reverse = (swReverse.isEnabled() && swReverse.isChecked()); diff --git a/app/src/main/java/eu/faircode/email/FragmentOptionsPrivacy.java b/app/src/main/java/eu/faircode/email/FragmentOptionsPrivacy.java index 0f4ee416b3..833b97e744 100644 --- a/app/src/main/java/eu/faircode/email/FragmentOptionsPrivacy.java +++ b/app/src/main/java/eu/faircode/email/FragmentOptionsPrivacy.java @@ -388,12 +388,14 @@ public class FragmentOptionsPrivacy extends FragmentBase implements SharedPrefer @NonNull @Override public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { - final View dview = LayoutInflater.from(getContext()).inflate(R.layout.dialog_pin_set, null); + final Context context = getContext(); + + final View dview = LayoutInflater.from(context).inflate(R.layout.dialog_pin_set, null); final EditText etPin = dview.findViewById(R.id.etPin); - final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext()); + final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); - AlertDialog.Builder builder = new AlertDialog.Builder(getContext()) + AlertDialog.Builder builder = new AlertDialog.Builder(context) .setView(dview) .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { @Override @@ -402,12 +404,12 @@ public class FragmentOptionsPrivacy extends FragmentBase implements SharedPrefer if (TextUtils.isEmpty(pin)) prefs.edit().remove("pin").apply(); else { - boolean pro = ActivityBilling.isPro(getContext()); + boolean pro = ActivityBilling.isPro(context); if (pro) { - Helper.setAuthenticated(getContext()); + Helper.setAuthenticated(context); prefs.edit().putString("pin", pin).apply(); } else - startActivity(new Intent(getContext(), ActivityBilling.class)); + startActivity(new Intent(context, ActivityBilling.class)); } } }) diff --git a/app/src/main/java/eu/faircode/email/FragmentOptionsSynchronize.java b/app/src/main/java/eu/faircode/email/FragmentOptionsSynchronize.java index 58441880ec..5a11a64fe1 100644 --- a/app/src/main/java/eu/faircode/email/FragmentOptionsSynchronize.java +++ b/app/src/main/java/eu/faircode/email/FragmentOptionsSynchronize.java @@ -430,7 +430,9 @@ public class FragmentOptionsSynchronize extends FragmentBase implements SharedPr Bundle args = getArguments(); boolean start = args.getBoolean("start"); - SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext()); + final Context context = getContext(); + + SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); int minutes = prefs.getInt("schedule_" + (start ? "start" : "end"), 0); Calendar cal = Calendar.getInstance(); @@ -439,10 +441,10 @@ public class FragmentOptionsSynchronize extends FragmentBase implements SharedPr cal.set(Calendar.SECOND, 0); cal.set(Calendar.MILLISECOND, 0); - return new TimePickerDialog(getContext(), this, + return new TimePickerDialog(context, this, cal.get(Calendar.HOUR_OF_DAY), cal.get(Calendar.MINUTE), - DateFormat.is24HourFormat(getContext())); + DateFormat.is24HourFormat(context)); } public void onTimeSet(TimePicker view, int hour, int minute) { diff --git a/app/src/main/java/eu/faircode/email/FragmentReview.java b/app/src/main/java/eu/faircode/email/FragmentReview.java index db63c7bc02..59287324ab 100644 --- a/app/src/main/java/eu/faircode/email/FragmentReview.java +++ b/app/src/main/java/eu/faircode/email/FragmentReview.java @@ -1,6 +1,7 @@ package eu.faircode.email; import android.app.Dialog; +import android.content.Context; import android.content.DialogInterface; import android.content.Intent; import android.os.Bundle; @@ -23,7 +24,9 @@ public class FragmentReview extends FragmentDialogBase { @NonNull @Override public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { - View dview = LayoutInflater.from(getContext()).inflate(R.layout.dialog_review_account, null); + final Context context = getContext(); + + View dview = LayoutInflater.from(context).inflate(R.layout.dialog_review_account, null); TextView tvLeft = dview.findViewById(R.id.tvLeft); TextView tvRight = dview.findViewById(R.id.tvRight); Button btnAccount = dview.findViewById(R.id.btnAccount); @@ -37,7 +40,7 @@ public class FragmentReview extends FragmentDialogBase { btnAccount.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - LocalBroadcastManager lbm = LocalBroadcastManager.getInstance(getContext()); + LocalBroadcastManager lbm = LocalBroadcastManager.getInstance(context); lbm.sendBroadcast( new Intent(ActivitySetup.ACTION_EDIT_ACCOUNT) .putExtra("id", account) @@ -46,7 +49,7 @@ public class FragmentReview extends FragmentDialogBase { } }); - DB db = DB.getInstance(getContext()); + DB db = DB.getInstance(context); db.account().liveAccountSwipes(account).observe(this, new Observer>() { @Override public void onChanged(List swipes) { @@ -62,7 +65,7 @@ public class FragmentReview extends FragmentDialogBase { } }); - return new AlertDialog.Builder(getContext()) + return new AlertDialog.Builder(context) .setView(dview) .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { @Override diff --git a/app/src/main/java/eu/faircode/email/FragmentRule.java b/app/src/main/java/eu/faircode/email/FragmentRule.java index 2462c274fc..cbddbb8e2f 100644 --- a/app/src/main/java/eu/faircode/email/FragmentRule.java +++ b/app/src/main/java/eu/faircode/email/FragmentRule.java @@ -1263,10 +1263,12 @@ public class FragmentRule extends FragmentBase { cal.set(Calendar.SECOND, 0); cal.set(Calendar.MILLISECOND, 0); - return new TimePickerDialog(getContext(), this, + final Context context = getContext(); + + return new TimePickerDialog(context, this, cal.get(Calendar.HOUR_OF_DAY), cal.get(Calendar.MINUTE), - DateFormat.is24HourFormat(getContext())); + DateFormat.is24HourFormat(context)); } public void onTimeSet(TimePicker view, int hour, int minute) { @@ -1283,17 +1285,19 @@ public class FragmentRule extends FragmentBase { String condition = getArguments().getString("condition"); String action = getArguments().getString("action"); - final View dview = LayoutInflater.from(getContext()).inflate(R.layout.dialog_rule_match, null); + final Context context = getContext(); + + final View dview = LayoutInflater.from(context).inflate(R.layout.dialog_rule_match, null); final TextView tvNoMessages = dview.findViewById(R.id.tvNoMessages); final RecyclerView rvMessage = dview.findViewById(R.id.rvMessage); final Button btnExecute = dview.findViewById(R.id.btnExecute); final ContentLoadingProgressBar pbWait = dview.findViewById(R.id.pbWait); rvMessage.setHasFixedSize(false); - LinearLayoutManager llm = new LinearLayoutManager(getContext()); + LinearLayoutManager llm = new LinearLayoutManager(context); rvMessage.setLayoutManager(llm); - final AdapterRuleMatch adapter = new AdapterRuleMatch(getContext(), getViewLifecycleOwner()); + final AdapterRuleMatch adapter = new AdapterRuleMatch(context, getViewLifecycleOwner()); rvMessage.setAdapter(adapter); tvNoMessages.setVisibility(View.GONE); @@ -1311,7 +1315,7 @@ public class FragmentRule extends FragmentBase { new SimpleTask() { @Override protected void onPreExecute(Bundle args) { - ToastEx.makeText(getContext(), R.string.title_executing, Toast.LENGTH_LONG).show(); + ToastEx.makeText(context, R.string.title_executing, Toast.LENGTH_LONG).show(); } @Override @@ -1349,16 +1353,16 @@ public class FragmentRule extends FragmentBase { @Override protected void onExecuted(Bundle args, Integer applied) { if (applied > 0) - ServiceSynchronize.eval(getContext(), "rules/manual"); + ServiceSynchronize.eval(context, "rules/manual"); dismiss(); - ToastEx.makeText(getContext(), getString(R.string.title_rule_applied, applied), Toast.LENGTH_LONG).show(); + ToastEx.makeText(context, getString(R.string.title_rule_applied, applied), Toast.LENGTH_LONG).show(); } @Override protected void onException(Bundle args, Throwable ex) { if (ex instanceof IllegalArgumentException) - ToastEx.makeText(getContext(), ex.getMessage(), Toast.LENGTH_LONG).show(); + ToastEx.makeText(context, ex.getMessage(), Toast.LENGTH_LONG).show(); else Log.unexpectedError(getParentFragmentManager(), ex); } @@ -1425,7 +1429,7 @@ public class FragmentRule extends FragmentBase { } }.execute(this, args, "rule:check"); - return new AlertDialog.Builder(getContext()) + return new AlertDialog.Builder(context) .setTitle(R.string.title_rule_matched) .setView(dview) .setNegativeButton(android.R.string.cancel, null) diff --git a/app/src/main/java/eu/faircode/email/FragmentSetup.java b/app/src/main/java/eu/faircode/email/FragmentSetup.java index ba16ccf94d..b95bba4627 100644 --- a/app/src/main/java/eu/faircode/email/FragmentSetup.java +++ b/app/src/main/java/eu/faircode/email/FragmentSetup.java @@ -460,7 +460,9 @@ public class FragmentSetup extends FragmentBase { @NonNull @Override public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { - return new AlertDialog.Builder(getContext()) + final Context context = getContext(); + + return new AlertDialog.Builder(context) .setMessage(R.string.title_setup_doze_instructions) .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { @Override diff --git a/app/src/main/java/eu/faircode/email/Log.java b/app/src/main/java/eu/faircode/email/Log.java index 8b40834552..04fc928367 100644 --- a/app/src/main/java/eu/faircode/email/Log.java +++ b/app/src/main/java/eu/faircode/email/Log.java @@ -1190,7 +1190,9 @@ public class Log { final Throwable ex = (Throwable) getArguments().getSerializable("ex"); boolean report = getArguments().getBoolean("report", true); - AlertDialog.Builder builder = new AlertDialog.Builder(getContext()) + final Context context = getContext(); + + AlertDialog.Builder builder = new AlertDialog.Builder(context) .setTitle(R.string.title_unexpected_error) .setMessage(Log.formatThrowable(ex, false)) .setPositiveButton(android.R.string.cancel, null); @@ -1199,9 +1201,6 @@ public class Log { builder.setNeutralButton(R.string.title_report, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { - // Dialog will be dismissed - final Context context = getContext(); - new SimpleTask() { @Override protected Long onExecute(Context context, Bundle args) throws Throwable { @@ -1222,7 +1221,7 @@ public class Log { else ToastEx.makeText(context, ex.toString(), Toast.LENGTH_LONG).show(); } - }.execute(getContext(), getActivity(), new Bundle(), "error:unexpected"); + }.execute(context, getActivity(), new Bundle(), "error:unexpected"); } });