diff --git a/app/src/main/java/com/termux/app/activities/SettingsActivity.java b/app/src/main/java/com/termux/app/activities/SettingsActivity.java
index 5ef65a3d..3e3c23de 100644
--- a/app/src/main/java/com/termux/app/activities/SettingsActivity.java
+++ b/app/src/main/java/com/termux/app/activities/SettingsActivity.java
@@ -69,19 +69,24 @@ public class SettingsActivity extends AppCompatActivity {
Preference aboutPreference = findPreference("about");
if (aboutPreference != null) {
aboutPreference.setOnPreferenceClickListener(preference -> {
- String title = "About";
+ new Thread() {
+ @Override
+ public void run() {
+ String title = "About";
- StringBuilder aboutString = new StringBuilder();
- aboutString.append(TermuxUtils.getAppInfoMarkdownString(context, false));
+ StringBuilder aboutString = new StringBuilder();
+ aboutString.append(TermuxUtils.getAppInfoMarkdownString(context, false));
- String termuxPluginAppsInfo = TermuxUtils.getTermuxPluginAppsInfoMarkdownString(context);
- if (termuxPluginAppsInfo != null)
- aboutString.append("\n\n").append(termuxPluginAppsInfo);
+ String termuxPluginAppsInfo = TermuxUtils.getTermuxPluginAppsInfoMarkdownString(context);
+ if (termuxPluginAppsInfo != null)
+ aboutString.append("\n\n").append(termuxPluginAppsInfo);
- aboutString.append("\n\n").append(TermuxUtils.getDeviceInfoMarkdownString(context));
- aboutString.append("\n\n").append(TermuxUtils.getImportantLinksMarkdownString(context));
+ aboutString.append("\n\n").append(TermuxUtils.getDeviceInfoMarkdownString(context));
+ aboutString.append("\n\n").append(TermuxUtils.getImportantLinksMarkdownString(context));
- ReportActivity.startReportActivity(context, new ReportInfo(UserAction.ABOUT, TermuxConstants.TERMUX_APP.TERMUX_SETTINGS_ACTIVITY_NAME, title, null, aboutString.toString(), null, false));
+ ReportActivity.startReportActivity(context, new ReportInfo(UserAction.ABOUT, TermuxConstants.TERMUX_APP.TERMUX_SETTINGS_ACTIVITY_NAME, title, null, aboutString.toString(), null, false));
+ }
+ }.start();
return true;
});
diff --git a/app/src/main/java/com/termux/app/terminal/TermuxTerminalViewClient.java b/app/src/main/java/com/termux/app/terminal/TermuxTerminalViewClient.java
index 8b2a3f94..7700cc62 100644
--- a/app/src/main/java/com/termux/app/terminal/TermuxTerminalViewClient.java
+++ b/app/src/main/java/com/termux/app/terminal/TermuxTerminalViewClient.java
@@ -494,26 +494,34 @@ public class TermuxTerminalViewClient extends TermuxTerminalViewClientBase {
TerminalSession session = mActivity.getCurrentSession();
if (session == null) return;
- String transcriptText = ShellUtils.getTerminalSessionTranscriptText(session, false, true);
+ final String transcriptText = ShellUtils.getTerminalSessionTranscriptText(session, false, true);
if (transcriptText == null) return;
- transcriptText = DataUtils.getTruncatedCommandOutput(transcriptText, DataUtils.TRANSACTION_SIZE_LIMIT_IN_BYTES, false, true, false).trim();
+ Logger.showToast(mActivity, mActivity.getString(R.string.msg_generating_report), true);
- StringBuilder reportString = new StringBuilder();
+ new Thread() {
+ @Override
+ public void run() {
- String title = TermuxConstants.TERMUX_APP_NAME + " Report Issue";
+ String transcriptTextTruncated = DataUtils.getTruncatedCommandOutput(transcriptText, DataUtils.TRANSACTION_SIZE_LIMIT_IN_BYTES, false, true, false).trim();
- reportString.append("## Transcript\n");
- reportString.append("\n").append(MarkdownUtils.getMarkdownCodeForString(transcriptText, true));
+ StringBuilder reportString = new StringBuilder();
- reportString.append("\n\n").append(TermuxUtils.getAppInfoMarkdownString(mActivity, true));
- reportString.append("\n\n").append(TermuxUtils.getDeviceInfoMarkdownString(mActivity));
+ String title = TermuxConstants.TERMUX_APP_NAME + " Report Issue";
- String termuxAptInfo = TermuxUtils.geAPTInfoMarkdownString(mActivity);
- if (termuxAptInfo != null)
- reportString.append("\n\n").append(termuxAptInfo);
+ reportString.append("## Transcript\n");
+ reportString.append("\n").append(MarkdownUtils.getMarkdownCodeForString(transcriptTextTruncated, true));
- ReportActivity.startReportActivity(mActivity, new ReportInfo(UserAction.REPORT_ISSUE_FROM_TRANSCRIPT, TermuxConstants.TERMUX_APP.TERMUX_ACTIVITY_NAME, title, null, reportString.toString(), "\n\n" + TermuxUtils.getReportIssueMarkdownString(mActivity), false));
+ reportString.append("\n\n").append(TermuxUtils.getAppInfoMarkdownString(mActivity, true));
+ reportString.append("\n\n").append(TermuxUtils.getDeviceInfoMarkdownString(mActivity));
+
+ String termuxAptInfo = TermuxUtils.geAPTInfoMarkdownString(mActivity);
+ if (termuxAptInfo != null)
+ reportString.append("\n\n").append(termuxAptInfo);
+
+ ReportActivity.startReportActivity(mActivity, new ReportInfo(UserAction.REPORT_ISSUE_FROM_TRANSCRIPT, TermuxConstants.TERMUX_APP.TERMUX_ACTIVITY_NAME, title, null, reportString.toString(), "\n\n" + TermuxUtils.getReportIssueMarkdownString(mActivity), false));
+ }
+ }.start();
}
public void doPaste() {
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index fe0851c9..ca4cb766 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -66,7 +66,7 @@
Autofill password
Reset
- Terminal reset.
+ Terminal reset
Kill process (%d)
Really kill this session?
@@ -75,7 +75,9 @@
Keep screen on
Help
Settings
+
Report Issue
+ Generating Report
The &TERMUX_STYLING_APP_NAME; Plugin App is not installed.
Install