diff options
author | Andrew Dolgov <[email protected]> | 2020-04-21 07:34:59 +0300 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2020-04-21 07:34:59 +0300 |
commit | 6ff08efccb17cbb8b31b4ac1d34845c401841bf9 (patch) | |
tree | e92529e209516af494e248c55cc1f0b8aedc5226 /org.fox.epube/src/main/java/org | |
parent | 1a0e0a892fe9b296b671099258c61a1edb511f4b (diff) |
launch activity and other stuff
Diffstat (limited to 'org.fox.epube/src/main/java/org')
-rw-r--r-- | org.fox.epube/src/main/java/org/fox/epube/LaunchActivity.java | 25 | ||||
-rw-r--r-- | org.fox.epube/src/main/java/org/fox/epube/MainActivity.java | 46 |
2 files changed, 70 insertions, 1 deletions
diff --git a/org.fox.epube/src/main/java/org/fox/epube/LaunchActivity.java b/org.fox.epube/src/main/java/org/fox/epube/LaunchActivity.java new file mode 100644 index 0000000..220cd6a --- /dev/null +++ b/org.fox.epube/src/main/java/org/fox/epube/LaunchActivity.java @@ -0,0 +1,25 @@ +package org.fox.epube; + +import android.app.Activity; +import android.content.Intent; +import android.os.Bundle; + +public class LaunchActivity extends Activity { + + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + + // https://code.google.com/p/android/issues/detail?id=26658 + if (!isTaskRoot()) { + finish(); + return; + } + + Intent main = new Intent(LaunchActivity.this, MainActivity.class); + startActivity(main); + + finish(); + } + +} diff --git a/org.fox.epube/src/main/java/org/fox/epube/MainActivity.java b/org.fox.epube/src/main/java/org/fox/epube/MainActivity.java index 9756f1a..575a982 100644 --- a/org.fox.epube/src/main/java/org/fox/epube/MainActivity.java +++ b/org.fox.epube/src/main/java/org/fox/epube/MainActivity.java @@ -24,6 +24,8 @@ public class MainActivity extends AppCompatActivity { private final String TAG = this.getClass().getSimpleName();
private final String BASE_URL = "https://fakecake.org/books";
+ public enum AppPage { PAGE_LIBRARY, PAGE_FAVORITES, PAGE_OFFLINE, PAGE_READER }
+
private ProgressBar m_loadingBar;
private WebView m_web;
private Menu m_menu;
@@ -185,7 +187,29 @@ public class MainActivity extends AppCompatActivity { }
}
- public enum AppPage { PAGE_LIBRARY, PAGE_FAVORITES, PAGE_OFFLINE, PAGE_READER }
+ private void toggleSystemUI() {
+ View decorView = getWindow().getDecorView();
+
+ if ((decorView.getSystemUiVisibility() & View.SYSTEM_UI_FLAG_IMMERSIVE) == View.SYSTEM_UI_FLAG_IMMERSIVE ) {
+ hideSystemUI(false);
+ } else {
+ hideSystemUI(true);
+ }
+ }
+
+ public void hideSystemUI(boolean hide) {
+ View decorView = getWindow().getDecorView();
+
+ if (hide) {
+ decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
+ | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
+ | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
+ | View.SYSTEM_UI_FLAG_FULLSCREEN
+ | View.SYSTEM_UI_FLAG_IMMERSIVE);
+ } else {
+ decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_VISIBLE);
+ }
+ }
class WebAppInterface {
private Context m_context;
@@ -230,6 +254,26 @@ public class MainActivity extends AppCompatActivity { }
@JavascriptInterface
+ public void hideSystemUI(final boolean hide) {
+ runOnUiThread(new Runnable() {
+ @Override
+ public void run() {
+ MainActivity.this.hideSystemUI(hide);
+ }
+ });
+ }
+
+ @JavascriptInterface
+ public void toggleSystemUI() {
+ runOnUiThread(new Runnable() {
+ @Override
+ public void run() {
+ MainActivity.this.toggleSystemUI();
+ }
+ });
+ }
+
+ @JavascriptInterface
public void showActionBar(final boolean show) {
runOnUiThread(new Runnable() {
@Override
|