diff --git a/app/src/main/java/com/suyashsrijan/forcedoze/DozeBatteryStatsActivity.java b/app/src/main/java/com/suyashsrijan/forcedoze/DozeBatteryStatsActivity.java index 5afa1f10..1d79fb0a 100644 --- a/app/src/main/java/com/suyashsrijan/forcedoze/DozeBatteryStatsActivity.java +++ b/app/src/main/java/com/suyashsrijan/forcedoze/DozeBatteryStatsActivity.java @@ -124,6 +124,7 @@ protected void onCreate(Bundle savedInstanceState) { startActivity(new Intent(this, DozeStatsActivity.class)); finish(); } + mListView.scrollToPosition(0); } } diff --git a/app/src/main/java/com/suyashsrijan/forcedoze/LogActivity.java b/app/src/main/java/com/suyashsrijan/forcedoze/LogActivity.java index ab0ffa6d..ecd02e86 100644 --- a/app/src/main/java/com/suyashsrijan/forcedoze/LogActivity.java +++ b/app/src/main/java/com/suyashsrijan/forcedoze/LogActivity.java @@ -12,6 +12,8 @@ import android.view.Menu; import android.view.MenuItem; import android.widget.EditText; +import android.widget.HorizontalScrollView; +import android.widget.ScrollView; import com.afollestad.materialdialogs.MaterialDialog; import com.nanotasks.BackgroundWork; @@ -33,6 +35,10 @@ public class LogActivity extends AppCompatActivity { boolean isSuAvailable; MaterialDialog progressDialog = null; + private ScrollView mSVLog; + private HorizontalScrollView mHSVLog; + private EditText logcatEd; + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -93,13 +99,25 @@ public void onSuccess(Context context, List result) { if (progressDialog != null) { progressDialog.cancel(); } - EditText logcatEd = (EditText) findViewById(R.id.editText); + logcatEd = (EditText) findViewById(R.id.editText); + mSVLog = (ScrollView) findViewById(R.id.svLog); + mHSVLog = (HorizontalScrollView) findViewById(R.id.hsvLog); + + if (result != null) { log = result; logcatEd.setLongClickable(false); logcatEd.setFocusable(false); logcatEd.setClickable(true); - logcatEd.setText(result.toString()); + logcatEd.setHorizontallyScrolling(true); + + StringBuilder sb = new StringBuilder(); + for (String res : result) { + sb.append(res.replaceAll("ForceDozeService", "FDS") + .replaceAll("ForceDoze","FD")); + sb.append("\n"); + } + logcatEd.setText(sb.toString()); } else { log = null; logcatEd.setLongClickable(false); @@ -107,6 +125,20 @@ public void onSuccess(Context context, List result) { logcatEd.setClickable(true); logcatEd.setText("Unable to get logcat"); } + + mSVLog.post(new Runnable() { + @Override + public void run() { + mSVLog.scrollTo(0, logcatEd.getHeight()); + } + }); + + mHSVLog.post(new Runnable() { + @Override + public void run() { + mHSVLog.scrollTo(0, 0); + } + }); } @Override diff --git a/app/src/main/res/layout/activity_log.xml b/app/src/main/res/layout/activity_log.xml index e8ff1b72..447450c7 100644 --- a/app/src/main/res/layout/activity_log.xml +++ b/app/src/main/res/layout/activity_log.xml @@ -9,14 +9,24 @@ android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.suyashsrijan.forcedoze.LogActivity"> - + + + + + + + +