diff --git a/app/src/main/java/org/fdroid/fdroid/views/InstallHistoryActivity.java b/app/src/main/java/org/fdroid/fdroid/views/InstallHistoryActivity.java index 6d550baa1..b513b8c8b 100644 --- a/app/src/main/java/org/fdroid/fdroid/views/InstallHistoryActivity.java +++ b/app/src/main/java/org/fdroid/fdroid/views/InstallHistoryActivity.java @@ -21,9 +21,11 @@ package org.fdroid.fdroid.views; import android.content.ContentResolver; +import android.content.Intent; import android.database.Cursor; import android.os.Bundle; import android.os.ParcelFileDescriptor; +import android.support.v4.app.ShareCompat; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; import android.view.Menu; @@ -31,6 +33,8 @@ import android.view.MenuItem; import android.widget.TextView; import org.apache.commons.io.IOUtils; import org.fdroid.fdroid.R; +import org.fdroid.fdroid.data.Repo; +import org.fdroid.fdroid.data.RepoProvider; import org.fdroid.fdroid.installer.InstallHistoryService; import java.io.FileDescriptor; @@ -81,6 +85,26 @@ public class InstallHistoryActivity extends AppCompatActivity { public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { + case R.id.menu_share: + StringBuilder stringBuilder = new StringBuilder(); + stringBuilder.append("Repos:\n"); + for (Repo repo : RepoProvider.Helper.all(this)) { + if (repo.inuse) { + stringBuilder.append("* "); + stringBuilder.append(repo.address); + stringBuilder.append('\n'); + } + } + ShareCompat.IntentBuilder intentBuilder = ShareCompat.IntentBuilder.from(this) + .setStream(InstallHistoryService.LOG_URI) + .setSubject(getString(R.string.send_history_csv, getString(R.string.app_name))) + .setChooserTitle(R.string.send_install_history) + .setText(stringBuilder.toString()) + .setType("text/plain"); + Intent intent = intentBuilder.getIntent(); + intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); + startActivity(intent); + break; case R.id.menu_delete: getContentResolver().delete(InstallHistoryService.LOG_URI, null, null); TextView textView = findViewById(R.id.text); diff --git a/app/src/main/res/menu/install_history.xml b/app/src/main/res/menu/install_history.xml index 7dd18dbb9..565a0e15a 100644 --- a/app/src/main/res/menu/install_history.xml +++ b/app/src/main/res/menu/install_history.xml @@ -1,7 +1,12 @@ -