Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
8cfa37d
Merge pull request #297 from codetoart/master
Oct 11, 2018
08d81a0
Last read position CFI generation in js
hrishikesh-kadam Oct 16, 2018
2b3c50c
ReadLocator up and running using CFI
hrishikesh-kadam Oct 19, 2018
7928aa5
Edit TTS code
hrishikesh-kadam Oct 23, 2018
0aa55ca
Rename FolioActivity .java to .kt for history mapping
hrishikesh-kadam Oct 23, 2018
bcbf682
Convert FolioActivity from java to kotlin
hrishikesh-kadam Oct 23, 2018
2eeb867
Add last read locator json example
hrishikesh-kadam Oct 23, 2018
4bef860
Rename WebViewPager .java to .kt for history mapping
hrishikesh-kadam Oct 23, 2018
720f6fa
Convert WebViewPager from java to kotlin
hrishikesh-kadam Oct 23, 2018
933ce6d
Rename FolioPageFragment .java to .kt for history mapping
hrishikesh-kadam Oct 23, 2018
e68b09f
Convert FolioPageFragment from java to kotlin
hrishikesh-kadam Oct 23, 2018
1ffa8f6
Improve Android <-> JS communication for highlight
hrishikesh-kadam Oct 24, 2018
078ab70
Deserialize LocatorList to SearchLocatorList
hrishikesh-kadam Nov 1, 2018
975fe40
Select SearchLocator in WebView
hrishikesh-kadam Nov 2, 2018
ccd082d
Prepare version 0.5.2
hrishikesh-kadam Nov 13, 2018
1dbe9e0
Bump up libs and add known issue of API 21 and 22
hrishikesh-kadam Nov 15, 2018
b7fbaaf
Make necessary changes for upcoming Gradle v5.0
hrishikesh-kadam Nov 16, 2018
3d4df7c
Bump up gradle versions for Android Studio 3.4 Canary 4
hrishikesh-kadam Nov 16, 2018
d383f24
Migrate to AndroidX
hrishikesh-kadam Nov 16, 2018
81a8a91
Maintain separate file for versions
hrishikesh-kadam Nov 16, 2018
b7bcdd3
Rearrange packages and Reformat code
hrishikesh-kadam Nov 23, 2018
366e486
Prepare version 0.5.3.dev.1
hrishikesh-kadam Nov 27, 2018
b913aea
Rename AppUtil ext for git history maping
hrishikesh-kadam Nov 28, 2018
fc96bf3
Convert AppUtil java to kotlin
hrishikesh-kadam Nov 28, 2018
c285fc5
Prepare version 0.5.3.dev.2
hrishikesh-kadam Nov 29, 2018
6f3540a
Fix heading bug in Style.css
yh54321 Dec 9, 2018
7de3372
Merge pull request #309 from yh54321/patch-1
Dec 10, 2018
5a4597e
Remove search css stale code
hrishikesh-kadam Dec 10, 2018
07bee5a
Merge remote-tracking branch 'folioreader-origin/master' into dev
hrishikesh-kadam Dec 10, 2018
3742307
Fixes white space bug
yh54321 Dec 11, 2018
eb7fb1b
Merge pull request #311 from yh54321/patch-1
Dec 12, 2018
b0a5c05
Bump up r2 modules versions
hrishikesh-kadam Dec 12, 2018
d5b8aad
Merge remote-tracking branch 'folioreader-origin/master' into dev
hrishikesh-kadam Dec 12, 2018
4e72aae
Fix fast scrolling issue
hrishikesh-kadam Dec 18, 2018
13709e1
Fix bug in r2-streamer-kotlin and r2-shared-kotlin
hrishikesh-kadam Dec 31, 2018
9d8570b
Prepare version 0.5.3
hrishikesh-kadam Dec 31, 2018
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 27 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Change Log

## 0.5.3

- FolioReader migrated to AndroidX.
- Search API calls made asynchronous.

### Bugs Fixed

- FolioReader/FolioReader-Android#190
- FolioReader/FolioReader-Android#276
- FolioReader/FolioReader-Android#239
- FolioReader/FolioReader-Android#308
- FolioReader/FolioReader-Android#284
- FolioReader/FolioReader-Android#298

## 0.5.2 (Unreleased)

- ReadPosition replaced with ReadLocator using CFI.
- TTS feature temporarily disabled, see KNOWN_ISSUES.md for more information.
- SearchQueryResults and SearchItem replaced with SearchLocator using CFI.

## 0.5.1

- r2-streamer-java replaced with r2-streamer-kotlin and r2-shared-kotlin
- WebViewMarker replaced with Native text selection popup.
- Media Overlay feature temporarily unavailable, see KNOWN_ISSUES.md for more information.
23 changes: 23 additions & 0 deletions KNOWN_ISSUES.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Known Issues

This is a list of major known issues. For the latest list of all issues see the
[Github Issues page](https://github.com/FolioReader/FolioReader-Android/issues)

## Errors on API 21 and 22 with Webview lower than version 44

FolioReader might not work properly on API 21 and 22 Emulator images.
As these images have Android System Webview lower than version 44.
Devices or Emulator of API 21 and 22 with Google Play Store will be
able to run FolioReader without any error after updating Android System
Webview to version 44+

## Media Overlay

From version 0.5.1, Media Overlay would not work as the streamer implementation is not done yet in r2-streamer-kotlin.

## TTS

From version 0.5.2, TTS is disabled.
In previous versions, sentences were formed by changing the DOM structure.
To implement TTS without changing DOM would require NLP to extract sentences.
As of now, no major reading systems other than Google Play Books implements TTS bug free.
9 changes: 9 additions & 0 deletions MIGRATION.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Migration

## 0.5.2

- Developer now don't need to add network_security_config.xml explicitly.

## 0.4.1

- Developer now don't need to specify permissions and FolioActivity tag in AndroidManifest.xml
66 changes: 17 additions & 49 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

[![Build Status](https://api.travis-ci.org/FolioReader/FolioReader-Android.svg?branch=master)](https://travis-ci.org/FolioReader/FolioReader-Android)

FolioReader-Android is an ePub reader written in Java.
FolioReader-Android is an EPUB reader written in Java and Kotlin.

### Features

Expand All @@ -13,27 +13,27 @@ FolioReader-Android is an ePub reader written in Java.
- [x] List / Edit / Delete Highlights
- [x] Handle Internal and External Links
- [x] Portrait / Landscape
- [x] Reading Time Left / Pages left
- [ ] Reading Time Left / Pages left
- [x] In-App Dictionary
- [x] Media Overlays (Sync text rendering with audio playback)
- [x] TTS - Text to Speech Support
- [ ] Media Overlays (Sync text rendering with audio playback)
- [ ] TTS - Text to Speech Support
- [ ] Parse epub cover image
- [ ] PDF support
- [x] Book Search
- [x] Add Notes to a Highlight
- [ ] Better Documentation
- [x] Last Read Position Listener
- [x] Horizontal reading
- [x] Last Read Locator
- [x] Horizontal Reading
- [x] Distraction Free Reading

## Demo
##### Custom Fonts
![Custom fonts](https://cloud.githubusercontent.com/assets/1277242/19012915/0661c7b2-87e0-11e6-81d6-8c71051e1074.gif)
##### Day and Night Mode
![Day night mode](https://cloud.githubusercontent.com/assets/1277242/19012914/f42059c4-87df-11e6-97f8-29e61a79e8aa.gif)
##### Text Highlighting
##### Text Highlighting
![Highlight](https://cloud.githubusercontent.com/assets/1277242/19012904/c2700c3a-87df-11e6-97ed-507765b3ddf0.gif)
##### Media Overlays
##### Media Overlays
![Media Overlay](https://cloud.githubusercontent.com/assets/1277242/19012908/d61f3ce2-87df-11e6-8652-d72b6a1ad9a3.gif)

### Gradle
Expand All @@ -44,7 +44,7 @@ Add following dependency to your root project `build.gradle` file:
allprojects {
repositories {
...
maven { url "https://dl.bintray.com/mobisystech/maven" }
jcenter()
maven { url "https://jitpack.io" }
...
}
Expand All @@ -56,39 +56,14 @@ Add following dependency to your app module `build.gradle` file:
```groovy
dependencies {
...
implementation "com.folioreader:folioreader:0.5.1"
implementation "com.folioreader:folioreader:0.5.3"
...
}
```

### Enable Multidex support

### AndroidManifest

Starting with Android 9.0 (API level 28), cleartext support is disabled by default.

{your-app-module}/res/xml/network_security_config.xml

```xml
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<domain-config cleartextTrafficPermitted="true">
<domain includeSubdomains="true">127.0.0.1</domain>
<domain includeSubdomains="true">localhost</domain>
</domain-config>
</network-security-config>
```

Then add network_security_config.xml in your app module's AndroidManifest.xml

```xml
<?xml version="1.0" encoding="utf-8"?>
<manifest ...>
...
<application android:networkSecurityConfig="@xml/network_security_config">
...
</application>
</manifest>
```
Enable Multidex support as explained in this [Android Doc](https://developer.android.com/studio/build/multidex)

### Usage

Expand All @@ -100,22 +75,17 @@ FolioReader folioReader = FolioReader.get();

Call the function `openBook()`:

##### opening book from assets -
##### opening book from assets -

```java
folioReader.openBook("file:///android_asset/TheSilverChair.epub");
```
##### opening book from raw -
##### opening book from raw -

```java
folioReader.openBook(R.raw.adventures);
```

<br />

**Note: From v0.4.1 you don't need to specify permissions and `FolioActivity` tag in AndroidManifest.xml**

<br />

## WIKI

Expand All @@ -126,21 +96,19 @@ folioReader.openBook(R.raw.adventures);
* [Highlight Action](https://github.com/FolioReader/FolioReader-Android/wiki/Highlight-Action)
* [Highlight Event](https://github.com/FolioReader/FolioReader-Android/wiki/Highlight-Event)
* [Providing External Highlight](https://github.com/FolioReader/FolioReader-Android/wiki/Providing-External-Highlight)
* [ReadPosition](https://github.com/FolioReader/FolioReader-Android/wiki/ReadPosition)
* [Get ReadPosition](https://github.com/FolioReader/FolioReader-Android/wiki/Get-ReadPosition)
* [Set ReadPosition](https://github.com/FolioReader/FolioReader-Android/wiki/Set-ReadPosition)
* [ReadLocator](https://github.com/FolioReader/FolioReader-Android/wiki/ReadLocator)
* [Clean up code](https://github.com/FolioReader/FolioReader-Android/wiki/Clean-up-code)

## Reporting Issue

Please follow [Issue Template](https://github.com/FolioReader/FolioReader-Android/blob/master/.github/ISSUE_TEMPLATE.md) to report any issue.
Please follow [Issue Template](https://github.com/FolioReader/FolioReader-Android/blob/master/.github/ISSUE_TEMPLATE.md) to report any issue.

## Share your application
If you are using FolioReader in your application, share your application link in [this issue](https://github.com/FolioReader/FolioReader-Android/issues/291)

### Credits
1. <a href="https://github.com/daimajia/AndroidSwipeLayout">SwipeLayout</a>
2. <a href="https://github.com/readium/r2-streamer-java">r2-streamer-java</a>
2. <a href="https://github.com/readium/r2-streamer-kotlin">r2-streamer-kotlin</a>
3. <a href="http://developer.pearson.com/apis/dictionaries">Pearson Dictionaries</a>
4. <a href="https://github.com/timdown/rangy">rangy</a>

Expand Down
1 change: 0 additions & 1 deletion ViewPager/.gitignore

This file was deleted.

24 changes: 0 additions & 24 deletions ViewPager/build.gradle

This file was deleted.

14 changes: 0 additions & 14 deletions ViewPager/src/main/AndroidManifest.xml

This file was deleted.

27 changes: 0 additions & 27 deletions ViewPager/src/main/java/com/ryanharter/viewpager/PagerAdapter.java

This file was deleted.

Loading