package kr.kdev.dg1s.biowiki.ui; import android.content.Intent; import android.os.Bundle; import android.text.Html; import android.text.method.ScrollingMovementMethod; import android.widget.TextView; import com.actionbarsherlock.app.ActionBar; import com.actionbarsherlock.app.SherlockFragmentActivity; import com.actionbarsherlock.view.Menu; import com.actionbarsherlock.view.MenuItem; import kr.kdev.dg1s.biowiki.R; import kr.kdev.dg1s.biowiki.util.AppLog; import kr.kdev.dg1s.biowiki.util.ToastUtils; /** * Created by nbradbury on 7/16/13. * views the activity log (see utils/AppLog.java) */ public class AppLogViewerActivity extends SherlockFragmentActivity { private static final int ID_SHARE = 1; private TextView mTxtLogViewer; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.logviewer_activity); ActionBar actionBar = getSupportActionBar(); actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD); actionBar.setDisplayShowTitleEnabled(true); actionBar.setDisplayHomeAsUpEnabled(true); mTxtLogViewer = (TextView) findViewById(R.id.text_log); mTxtLogViewer.setText(Html.fromHtml(AppLog.toHtml(this))); // this is necessary to enable the textView to scroll vertically mTxtLogViewer.setMovementMethod(ScrollingMovementMethod.getInstance()); } private void shareAppLog() { Intent intent = new Intent(Intent.ACTION_SEND); intent.setType("text/plain"); intent.putExtra(Intent.EXTRA_TEXT, AppLog.toPlainText(this)); intent.putExtra(Intent.EXTRA_SUBJECT, getString(R.string.app_name) + " " + getTitle()); try { startActivity(Intent.createChooser(intent, getString(R.string.reader_btn_share))); } catch (android.content.ActivityNotFoundException ex) { ToastUtils.showToast(this, R.string.reader_toast_err_share_intent); } } @Override public boolean onCreateOptionsMenu(Menu menu) { super.onCreateOptionsMenu(menu); MenuItem item = menu.add(Menu.NONE, ID_SHARE, Menu.NONE, R.string.reader_btn_share); item.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM); item.setIcon(R.drawable.ab_icon_share); return true; } @Override public boolean onOptionsItemSelected(final MenuItem item) { switch (item.getItemId()) { case android.R.id.home: finish(); return true; case ID_SHARE: shareAppLog(); return true; default: return super.onOptionsItemSelected(item); } } }