summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2020-04-20 19:56:51 +0300
committerAndrew Dolgov <[email protected]>2020-04-20 19:56:51 +0300
commitd08e0fbc458ed494e2ba9830ec99e55d883ff39d (patch)
treedf664292648842df0c5d9b0e619a9f104664e955
parentfa25f18453c05e1907b425b11edf4802a6448754 (diff)
some more stuff
-rw-r--r--.idea/vcs.xml6
-rw-r--r--org.fox.epube/src/main/AndroidManifest.xml4
-rw-r--r--org.fox.epube/src/main/java/org/fox/epube/MainActivity.java64
-rw-r--r--org.fox.epube/src/main/res/layout/activity_main.xml2
-rw-r--r--org.fox.epube/src/main/res/menu/activity_main.xml6
-rw-r--r--org.fox.epube/src/main/res/values/colors.xml4
6 files changed, 59 insertions, 27 deletions
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..94a25f7
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+ <component name="VcsDirectoryMappings">
+ <mapping directory="$PROJECT_DIR$" vcs="Git" />
+ </component>
+</project> \ No newline at end of file
diff --git a/org.fox.epube/src/main/AndroidManifest.xml b/org.fox.epube/src/main/AndroidManifest.xml
index c2fe4db..45bc158 100644
--- a/org.fox.epube/src/main/AndroidManifest.xml
+++ b/org.fox.epube/src/main/AndroidManifest.xml
@@ -13,7 +13,9 @@
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
- <activity android:name=".MainActivity">
+ <activity
+ android:name=".MainActivity"
+ android:configChanges="orientation|screenSize">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
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 0db9de5..85e8120 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
@@ -1,26 +1,25 @@
package org.fox.epube;
-import androidx.annotation.Nullable;
-import androidx.appcompat.app.AppCompatActivity;
-
-import android.graphics.Bitmap;
import android.os.Bundle;
import android.util.Log;
+import android.view.Menu;
+import android.view.MenuInflater;
import android.view.View;
import android.webkit.CookieManager;
-import android.webkit.ServiceWorkerClient;
-import android.webkit.ServiceWorkerController;
-import android.webkit.WebResourceRequest;
-import android.webkit.WebResourceResponse;
+import android.webkit.WebChromeClient;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.ProgressBar;
+import android.widget.Toast;
+
+import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
private final String TAG = this.getClass().getSimpleName();
private ProgressBar m_loadingBar;
+ private WebView m_web;
@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -29,9 +28,9 @@ public class MainActivity extends AppCompatActivity {
getSupportActionBar().hide();
- WebView web = findViewById(R.id.webview_main);
+ m_web = findViewById(R.id.webview_main);
- WebSettings settings = web.getSettings();
+ WebSettings settings = m_web.getSettings();
settings.setJavaScriptEnabled(true);
settings.setDomStorageEnabled(true);
@@ -41,10 +40,22 @@ public class MainActivity extends AppCompatActivity {
settings.setAppCacheEnabled(true);
m_loadingBar = findViewById(R.id.loading_progress);
- m_loadingBar.setIndeterminate(true);
m_loadingBar.setVisibility(View.VISIBLE);
+ m_loadingBar.setMax(100);
- web.setWebViewClient(new WebViewClient() {
+ m_web.setWebChromeClient(new WebChromeClient() {
+ @Override
+ public void onProgressChanged(WebView view, int progress) {
+ m_loadingBar.setProgress(progress);
+
+ if (progress == 100)
+ m_loadingBar.setVisibility(View.GONE);
+ else
+ m_loadingBar.setVisibility(View.VISIBLE);
+ }
+ });
+
+ m_web.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
@@ -53,28 +64,35 @@ public class MainActivity extends AppCompatActivity {
}
@Override
- public void onPageStarted(WebView view, String url, Bitmap favicon) {
- m_loadingBar.setVisibility(View.VISIBLE);
- }
-
- @Override
public void onPageFinished(WebView view, String url) {
- Log.i(TAG, "Finished loading URL: " +url);
-
CookieManager.getInstance().setAcceptCookie(true);
CookieManager.getInstance().acceptCookie();
CookieManager.getInstance().flush();
-
- m_loadingBar.setVisibility(View.GONE);
}
@Override
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
Log.e(TAG, "Error: " + description);
+ toast(description);
}
});
- web.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);
- web.loadUrl("https://fakecake.org/books/index.php?wrapper=1");
+ CookieManager.getInstance().setCookie("https://fakecake.org/books", "is-epube-app=true");
+
+ m_web.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);
+ m_web.loadUrl("https://fakecake.org/books/index.php");
+ }
+
+ public void toast(String msg) {
+ Toast toast = Toast.makeText(MainActivity.this, msg, Toast.LENGTH_SHORT);
+ toast.show();
+ }
+
+ @Override
+ public boolean onCreateOptionsMenu(Menu menu) {
+ MenuInflater inflater = getMenuInflater();
+ inflater.inflate(R.menu.activity_main, menu);
+
+ return true;
}
}
diff --git a/org.fox.epube/src/main/res/layout/activity_main.xml b/org.fox.epube/src/main/res/layout/activity_main.xml
index 4b67b75..a7cd053 100644
--- a/org.fox.epube/src/main/res/layout/activity_main.xml
+++ b/org.fox.epube/src/main/res/layout/activity_main.xml
@@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
@@ -16,6 +15,7 @@
android:id="@+id/loading_progress"
style="@style/Widget.AppCompat.ProgressBar.Horizontal"
android:layout_width="match_parent"
+ android:layout_gravity="bottom"
android:visibility="gone"
android:layout_height="wrap_content" />
diff --git a/org.fox.epube/src/main/res/menu/activity_main.xml b/org.fox.epube/src/main/res/menu/activity_main.xml
new file mode 100644
index 0000000..ce54c1c
--- /dev/null
+++ b/org.fox.epube/src/main/res/menu/activity_main.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<menu xmlns:android="http://schemas.android.com/apk/res/android">
+ <item
+ android:id="@+id/test"
+ android:title="TEST"/>
+</menu> \ No newline at end of file
diff --git a/org.fox.epube/src/main/res/values/colors.xml b/org.fox.epube/src/main/res/values/colors.xml
index 6b3f6ab..8a2c143 100644
--- a/org.fox.epube/src/main/res/values/colors.xml
+++ b/org.fox.epube/src/main/res/values/colors.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
- <color name="colorPrimary">#008577</color>
- <color name="colorPrimaryDark">#00574B</color>
+ <color name="colorPrimary">#007d71</color>
+ <color name="colorPrimaryDark">#006B62</color>
<color name="colorAccent">#D81B60</color>
</resources>