diff options
author | Martin Fietz <Martin.Fietz@gmail.com> | 2015-11-08 13:31:05 +0100 |
---|---|---|
committer | Martin Fietz <Martin.Fietz@gmail.com> | 2015-11-08 13:44:20 +0100 |
commit | f4d1fea87e475782111afd0bab83ac1109829f0f (patch) | |
tree | 47e16358aae31887214ea0070c5c8aca06137dbb | |
parent | 55df46ff6ab563ffbfe29c3ddf41cf7b806ed85a (diff) | |
download | AntennaPod-f4d1fea87e475782111afd0bab83ac1109829f0f.zip |
Fix back button issue, add action bar
-rw-r--r-- | app/src/main/AndroidManifest.xml | 3 | ||||
-rw-r--r-- | app/src/main/java/de/danoeh/antennapod/activity/AboutActivity.java | 27 |
2 files changed, 24 insertions, 6 deletions
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index cd4e45493..32856af8e 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -140,6 +140,9 @@ <activity android:name=".activity.AboutActivity" android:label="@string/about_pref"> + <meta-data + android:name="android.support.PARENT_ACTIVITY" + android:value="de.danoeh.antennapod.activity.PreferenceActivity"/> </activity> <activity android:name=".activity.OpmlImportFromPathActivity" diff --git a/app/src/main/java/de/danoeh/antennapod/activity/AboutActivity.java b/app/src/main/java/de/danoeh/antennapod/activity/AboutActivity.java index fe31ccda8..c835f8073 100644 --- a/app/src/main/java/de/danoeh/antennapod/activity/AboutActivity.java +++ b/app/src/main/java/de/danoeh/antennapod/activity/AboutActivity.java @@ -6,7 +6,9 @@ import android.os.Build; import android.os.Bundle; import android.support.v7.app.ActionBarActivity; import android.util.Log; +import android.view.MenuItem; import android.view.View; +import android.webkit.WebSettings; import android.webkit.WebView; import android.webkit.WebViewClient; import android.widget.LinearLayout; @@ -34,7 +36,7 @@ public class AboutActivity extends ActionBarActivity { private WebView webview; private LinearLayout webviewContainer; - private boolean showingLicense = false; + private int depth = 0; private Subscription subscription; @@ -42,10 +44,11 @@ public class AboutActivity extends ActionBarActivity { protected void onCreate(Bundle savedInstanceState) { setTheme(UserPreferences.getTheme()); super.onCreate(savedInstanceState); - getSupportActionBar().hide(); + getSupportActionBar().setDisplayShowHomeEnabled(true); setContentView(R.layout.about); webviewContainer = (LinearLayout) findViewById(R.id.webvContainer); webview = (WebView) findViewById(R.id.webvAbout); + webview.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE); if (UserPreferences.getTheme() == R.style.Theme_AntennaPod_Dark) { if (Build.VERSION.SDK_INT >= 11 && Build.VERSION.SDK_INT <= Build.VERSION_CODES.ICE_CREAM_SANDWICH_MR1) { @@ -58,6 +61,7 @@ public class AboutActivity extends ActionBarActivity { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { if(url.startsWith("http")) { + depth++; return false; } else { url = url.replace("file:///android_asset/", ""); @@ -104,9 +108,9 @@ public class AboutActivity extends ActionBarActivity { " </style>" + "</head><body><p>" + webViewData + "</p></body></html>"; webViewData = webViewData.replace("\n", "<br/>"); - showingLicense = true; + depth++; } else { - showingLicense = false; + depth = 0; } webViewData = String.format(webViewData, colorString); subscriber.onNext(webViewData); @@ -130,9 +134,10 @@ public class AboutActivity extends ActionBarActivity { @Override public void onBackPressed() { - if(showingLicense || webview.canGoBack()) { + Log.d(TAG, "depth: " + depth); + if(depth == 1) { loadAsset("about.html"); - } else if(webview.canGoBack()) { + } else if(depth > 1) { webview.goBack(); } else { super.onBackPressed(); @@ -140,6 +145,16 @@ public class AboutActivity extends ActionBarActivity { } @Override + public boolean onOptionsItemSelected(MenuItem item) { + if (item.getItemId() == android.R.id.home) { + onBackPressed(); + return true; + } else { + return super.onOptionsItemSelected(item); + } + } + + @Override protected void onDestroy() { super.onDestroy(); if(subscription != null) { |