Skip to content

Commit

Permalink
Fix problem with sharing large terminal transcript
Browse files Browse the repository at this point in the history
  • Loading branch information
fornwall committed Jul 14, 2019
1 parent 0c571bb commit d3d5ffb
Showing 1 changed file with 12 additions and 1 deletion.
13 changes: 12 additions & 1 deletion app/src/main/java/com/termux/app/TermuxActivity.java
Expand Up @@ -722,7 +722,18 @@ public boolean onContextItemSelected(MenuItem item) {
if (session != null) {
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_TEXT, session.getEmulator().getScreen().getTranscriptText().trim());
String transcriptText = session.getEmulator().getScreen().getTranscriptText().trim();
// See https://github.com/termux/termux-app/issues/1166.
final int MAX_LENGTH = 100_000;
if (transcriptText.length() > MAX_LENGTH) {
int cutOffIndex = transcriptText.length() - MAX_LENGTH;
int nextNewlineIndex = transcriptText.indexOf('\n', cutOffIndex);
if (nextNewlineIndex != -1 && nextNewlineIndex != transcriptText.length() - 1) {
cutOffIndex = nextNewlineIndex + 1;
}
transcriptText = transcriptText.substring(cutOffIndex).trim();
}
intent.putExtra(Intent.EXTRA_TEXT, transcriptText);
intent.putExtra(Intent.EXTRA_SUBJECT, getString(R.string.share_transcript_title));
startActivity(Intent.createChooser(intent, getString(R.string.share_transcript_chooser_title)));
}
Expand Down

0 comments on commit d3d5ffb

Please sign in to comment.