diff --git a/app/build.gradle b/app/build.gradle index d772e8b96..ad1a24377 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -76,6 +76,7 @@ dependencies { implementation project(':storage:database-maintenance-service') implementation project(':storage:importexport') implementation project(':storage:preferences') + implementation project(':system') implementation project(':ui:app-start-intent') implementation project(':ui:common') implementation project(':ui:discovery') diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 8f4c40a06..2554f2a78 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -164,13 +164,6 @@ - - - IntentUtils.openInBrowser( - BugReportActivity.this, "https://github.com/AntennaPod/AntennaPod/issues")); - - findViewById(R.id.btn_copy_log).setOnClickListener(v -> { - ClipboardManager clipboard = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE); - ClipData clip = ClipData.newPlainText(getString(R.string.bug_report_title), crashDetailsTextView.getText()); - clipboard.setPrimaryClip(clip); - if (Build.VERSION.SDK_INT < 32) { - Snackbar.make(findViewById(android.R.id.content), R.string.copied_to_clipboard, - Snackbar.LENGTH_SHORT).show(); - } - }); - } - - @Override - public boolean onCreateOptionsMenu(Menu menu) { - getMenuInflater().inflate(R.menu.bug_report_options, menu); - return super.onCreateOptionsMenu(menu); - } - - @Override - public boolean onOptionsItemSelected(@NonNull MenuItem item) { - if (item.getItemId() == R.id.export_logcat) { - MaterialAlertDialogBuilder alertBuilder = new MaterialAlertDialogBuilder(this); - alertBuilder.setMessage(R.string.confirm_export_log_dialog_message); - alertBuilder.setPositiveButton(R.string.confirm_label, (dialog, which) -> { - exportLog(); - dialog.dismiss(); - }); - alertBuilder.setNegativeButton(R.string.cancel_label, null); - alertBuilder.show(); - return true; - } - return super.onOptionsItemSelected(item); - } - - private void exportLog() { - try { - File filename = new File(UserPreferences.getDataFolder(null), "full-logs.txt"); - String cmd = "logcat -d -f " + filename.getAbsolutePath(); - Runtime.getRuntime().exec(cmd); - //share file - try { - String authority = getString(R.string.provider_authority); - Uri fileUri = FileProvider.getUriForFile(this, authority, filename); - - new ShareCompat.IntentBuilder(this) - .setType("text/*") - .addStream(fileUri) - .setChooserTitle(R.string.share_file_label) - .startChooser(); - } catch (Exception e) { - e.printStackTrace(); - int strResId = R.string.log_file_share_exception; - Snackbar.make(findViewById(android.R.id.content), strResId, Snackbar.LENGTH_LONG) - .show(); - } - } catch (IOException e) { - e.printStackTrace(); - Snackbar.make(findViewById(android.R.id.content), e.getMessage(), Snackbar.LENGTH_LONG).show(); - } - } - - -} diff --git a/app/src/main/java/de/danoeh/antennapod/ui/screen/preferences/MainPreferencesFragment.java b/app/src/main/java/de/danoeh/antennapod/ui/screen/preferences/MainPreferencesFragment.java index e9b177f0f..ee7bfab9e 100644 --- a/app/src/main/java/de/danoeh/antennapod/ui/screen/preferences/MainPreferencesFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/ui/screen/preferences/MainPreferencesFragment.java @@ -1,6 +1,5 @@ package de.danoeh.antennapod.ui.screen.preferences; -import android.content.Intent; import android.graphics.PorterDuff; import android.graphics.PorterDuffColorFilter; import android.os.Bundle; @@ -15,6 +14,7 @@ import de.danoeh.antennapod.R; import de.danoeh.antennapod.ui.common.IntentUtils; import de.danoeh.antennapod.ui.preferences.screen.AnimatedPreferenceFragment; import de.danoeh.antennapod.ui.preferences.screen.about.AboutFragment; +import de.danoeh.antennapod.ui.preferences.screen.bugreport.BugReportFragment; public class MainPreferencesFragment extends AnimatedPreferenceFragment { @@ -118,7 +118,9 @@ public class MainPreferencesFragment extends AnimatedPreferenceFragment { return true; }); findPreference(PREF_SEND_BUG_REPORT).setOnPreferenceClickListener(preference -> { - startActivity(new Intent(getActivity(), BugReportActivity.class)); + getParentFragmentManager().beginTransaction() + .replace(R.id.settingsContainer, new BugReportFragment()) + .addToBackStack(getString(R.string.report_bug_title)).commit(); return true; }); } diff --git a/app/src/main/res/layout/bug_report.xml b/app/src/main/res/layout/bug_report.xml deleted file mode 100644 index 447ce911f..000000000 --- a/app/src/main/res/layout/bug_report.xml +++ /dev/null @@ -1,30 +0,0 @@ - - - -