From 13aa16693a6c1f17bdcff869f6b1d3a0d70aa466 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Fri, 12 Jan 2024 18:00:15 +0300 Subject: add some fonts --- org.fox.epube/build.gradle | 5 +- org.fox.epube/src/main/assets/android.css | 83 +++++++++++++++++++++ org.fox.epube/src/main/assets/caecilia.ttf | Bin 0 -> 29216 bytes org.fox.epube/src/main/assets/caeciliab.ttf | Bin 0 -> 29512 bytes org.fox.epube/src/main/assets/caeciliai.ttf | Bin 0 -> 29088 bytes org.fox.epube/src/main/assets/calibri.ttf | Bin 0 -> 1681220 bytes org.fox.epube/src/main/assets/calibrib.ttf | Bin 0 -> 1647428 bytes org.fox.epube/src/main/assets/calibrii.ttf | Bin 0 -> 1228564 bytes org.fox.epube/src/main/assets/calibriz.ttf | Bin 0 -> 1190004 bytes org.fox.epube/src/main/assets/cambria.ttf | Bin 0 -> 1090456 bytes org.fox.epube/src/main/assets/cambriab.ttf | Bin 0 -> 841440 bytes org.fox.epube/src/main/assets/cambriai.ttf | Bin 0 -> 892620 bytes org.fox.epube/src/main/assets/cambriaz.ttf | Bin 0 -> 856672 bytes .../src/main/java/org/fox/epube/MainActivity.java | 18 +++++ 14 files changed, 104 insertions(+), 2 deletions(-) create mode 100644 org.fox.epube/src/main/assets/android.css create mode 100644 org.fox.epube/src/main/assets/caecilia.ttf create mode 100644 org.fox.epube/src/main/assets/caeciliab.ttf create mode 100644 org.fox.epube/src/main/assets/caeciliai.ttf create mode 100644 org.fox.epube/src/main/assets/calibri.ttf create mode 100644 org.fox.epube/src/main/assets/calibrib.ttf create mode 100644 org.fox.epube/src/main/assets/calibrii.ttf create mode 100644 org.fox.epube/src/main/assets/calibriz.ttf create mode 100644 org.fox.epube/src/main/assets/cambria.ttf create mode 100644 org.fox.epube/src/main/assets/cambriab.ttf create mode 100644 org.fox.epube/src/main/assets/cambriai.ttf create mode 100644 org.fox.epube/src/main/assets/cambriaz.ttf diff --git a/org.fox.epube/build.gradle b/org.fox.epube/build.gradle index 7a23bb8..b6a0de9 100644 --- a/org.fox.epube/build.gradle +++ b/org.fox.epube/build.gradle @@ -7,8 +7,8 @@ android { applicationId "org.fox.epube" minSdkVersion 23 targetSdkVersion 29 - versionCode 7 - versionName "1.6" + versionCode 8 + versionName "1.7" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" buildConfigField "boolean", "ENABLE_UPDATER", "false" buildConfigField "String", "EPUBE_BASE_URL", "\"https://epube-dev.fakecake.org\"" @@ -48,6 +48,7 @@ dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation 'androidx.appcompat:appcompat:1.1.0' implementation 'androidx.constraintlayout:constraintlayout:1.1.3' + implementation 'androidx.webkit:webkit:1.9.0' testImplementation 'junit:junit:4.12' androidTestImplementation 'androidx.test.ext:junit:1.1.1' androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' diff --git a/org.fox.epube/src/main/assets/android.css b/org.fox.epube/src/main/assets/android.css new file mode 100644 index 0000000..2396580 --- /dev/null +++ b/org.fox.epube/src/main/assets/android.css @@ -0,0 +1,83 @@ +/** Calibri */ + +@font-face { + font-family: 'Calibri'; + src: url(calibriz.ttf); + font-style: italic; + font-weight : 700; +} + +@font-face { + font-family: 'Calibri'; + src: url(calibrib.ttf); + font-style: normal; + font-weight : 700; +} + +@font-face { + font-family: 'Calibri'; + src: url(calibrii.ttf); + font-style: italic; + font-weight : 400; +} + +@font-face { + font-family: 'Calibri'; + src: url(calibri.ttf); + font-style: normal; + font-weight : 400; +} + +/** Cambria */ + +@font-face { + font-family: 'Cambria'; + src: url(cambriab.ttf); + font-style: normal; + font-weight : 700; +} + +@font-face { + font-family: 'Cambria'; + src: url(cambriaz.ttf); + font-style: italic; + font-weight : 700; +} + +@font-face { + font-family: 'Cambria'; + src: url(cambriai.ttf); + font-style: italic; + font-weight : 400; +} + +@font-face { + font-family: 'Cambria'; + src: url(cambria.ttf); + font-style: normal; + font-weight : 400; +} + +/** Caecilia */ + +@font-face { + font-family : 'Caecilia'; + font-style : normal; + font-weight : 700; + src: url(caeciliab.ttf); +} + +@font-face { + font-family : 'Caecilia'; + font-style : italic; + src: url(caeciliai.ttf); + font-weight : 400; +} + +@font-face { + font-family : 'Caecilia'; + font-style : normal; + src: url(caecilia.ttf); + font-weight : 400; +} + diff --git a/org.fox.epube/src/main/assets/caecilia.ttf b/org.fox.epube/src/main/assets/caecilia.ttf new file mode 100644 index 0000000..38248ca Binary files /dev/null and b/org.fox.epube/src/main/assets/caecilia.ttf differ diff --git a/org.fox.epube/src/main/assets/caeciliab.ttf b/org.fox.epube/src/main/assets/caeciliab.ttf new file mode 100644 index 0000000..25866c2 Binary files /dev/null and b/org.fox.epube/src/main/assets/caeciliab.ttf differ diff --git a/org.fox.epube/src/main/assets/caeciliai.ttf b/org.fox.epube/src/main/assets/caeciliai.ttf new file mode 100644 index 0000000..c5e6d77 Binary files /dev/null and b/org.fox.epube/src/main/assets/caeciliai.ttf differ diff --git a/org.fox.epube/src/main/assets/calibri.ttf b/org.fox.epube/src/main/assets/calibri.ttf new file mode 100644 index 0000000..a9bdb2d Binary files /dev/null and b/org.fox.epube/src/main/assets/calibri.ttf differ diff --git a/org.fox.epube/src/main/assets/calibrib.ttf b/org.fox.epube/src/main/assets/calibrib.ttf new file mode 100644 index 0000000..72ad9cf Binary files /dev/null and b/org.fox.epube/src/main/assets/calibrib.ttf differ diff --git a/org.fox.epube/src/main/assets/calibrii.ttf b/org.fox.epube/src/main/assets/calibrii.ttf new file mode 100644 index 0000000..f35fd1a Binary files /dev/null and b/org.fox.epube/src/main/assets/calibrii.ttf differ diff --git a/org.fox.epube/src/main/assets/calibriz.ttf b/org.fox.epube/src/main/assets/calibriz.ttf new file mode 100644 index 0000000..596f3cc Binary files /dev/null and b/org.fox.epube/src/main/assets/calibriz.ttf differ diff --git a/org.fox.epube/src/main/assets/cambria.ttf b/org.fox.epube/src/main/assets/cambria.ttf new file mode 100644 index 0000000..91fa5e7 Binary files /dev/null and b/org.fox.epube/src/main/assets/cambria.ttf differ diff --git a/org.fox.epube/src/main/assets/cambriab.ttf b/org.fox.epube/src/main/assets/cambriab.ttf new file mode 100644 index 0000000..c70283c Binary files /dev/null and b/org.fox.epube/src/main/assets/cambriab.ttf differ diff --git a/org.fox.epube/src/main/assets/cambriai.ttf b/org.fox.epube/src/main/assets/cambriai.ttf new file mode 100644 index 0000000..299dccd Binary files /dev/null and b/org.fox.epube/src/main/assets/cambriai.ttf differ diff --git a/org.fox.epube/src/main/assets/cambriaz.ttf b/org.fox.epube/src/main/assets/cambriaz.ttf new file mode 100644 index 0000000..4912bcb Binary files /dev/null and b/org.fox.epube/src/main/assets/cambriaz.ttf differ 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 55086bf..168e058 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 @@ -19,6 +19,8 @@ import android.view.View; import android.webkit.CookieManager; import android.webkit.JavascriptInterface; import android.webkit.WebChromeClient; +import android.webkit.WebResourceRequest; +import android.webkit.WebResourceResponse; import android.webkit.WebSettings; import android.webkit.WebView; import android.webkit.WebViewClient; @@ -31,6 +33,8 @@ import com.livefront.bridge.Bridge; import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.widget.Toolbar; +import androidx.webkit.WebViewAssetLoader; + import icepick.State; public class MainActivity extends AppCompatActivity implements NetworkStateReceiver.NetworkStateReceiverListener { @@ -62,6 +66,12 @@ public class MainActivity extends AppCompatActivity implements NetworkStateRecei setSupportActionBar((Toolbar) findViewById(R.id.toolbar)); getSupportActionBar().setHomeButtonEnabled(true); + final WebViewAssetLoader assetLoader = new WebViewAssetLoader.Builder() + .setDomain(Uri.parse(m_baseUrl).getHost()) + .addPathHandler("/assets/", new WebViewAssetLoader.AssetsPathHandler(this)) + .addPathHandler("/res/", new WebViewAssetLoader.ResourcesPathHandler(this)) + .build(); + m_web = findViewById(R.id.webview_main); WebSettings settings = m_web.getSettings(); @@ -70,6 +80,7 @@ public class MainActivity extends AppCompatActivity implements NetworkStateRecei settings.setDomStorageEnabled(true); settings.setCacheMode(WebSettings.LOAD_DEFAULT); settings.setDatabaseEnabled(true); + settings.setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW); settings.setAppCachePath(getCacheDir().getAbsolutePath()); settings.setAppCacheEnabled(true); @@ -98,6 +109,13 @@ public class MainActivity extends AppCompatActivity implements NetworkStateRecei m_web.setWebViewClient(new WebViewClient() { + @Override + public WebResourceResponse shouldInterceptRequest(WebView view, WebResourceRequest request) { + Log.d(TAG, "should intercept?=" + request.getUrl()); + + return assetLoader.shouldInterceptRequest(request.getUrl()); + } + @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { Log.d(TAG, "load URL=" + url); -- cgit v1.2.3