Commit Graph

183 Commits (3427c207b0dc8eca0ace1dc25633dd6a76e910ab)

Author SHA1 Message Date
Martín Fdez 7094519e1b android: support for native surface rotation 4 years ago
Martín Fdez 8e61a8f285 disable runtime behaviour changes on fdroid 4 years ago
Martín Fernández 699ee3efc1
[Android] Migrate user directories after update (#6287)
I've played a bit with #6275, to make the iterator available for non-power users too.

this PR automate user data migration (which happens once per update). If the folder `koreader/scripts.afterupdate` contains a file `migrate` then files will be copied to internal dir preserving their relative path. Thus user data **needs** to have the same hierarchy as internal directories.

Shell scripts will be find and run if the folder `koreader/scripts.afterupdate` exists and has no `migrate file`.

In the case of `koreader/scripts.always` there's no migration available, just shell scripts.

Digging a bit seems not possible to create new directories on app internal storage (it just crashes on the emulator since API25). So very fancy extensions are not supported, but it is ok to override files and create new files if dir already exists.

Tested with:

```find scripts.afterupdate/                                            
scripts.afterupdate/
scripts.afterupdate/data
scripts.afterupdate/data/hyph
scripts.afterupdate/data/hyph/Roman.pattern
scripts.afterupdate/data/example.css
scripts.afterupdate/migrate
```

Results:

```
06-20 16:16:33.590  3584  3597 I KOReader: after-update: running migration
06-20 16:16:33.596  3584  3597 I KOReader: command cp /storage/emulated/0/koreader/scripts.afterupdate/data/hyph/Roman.pattern /data/user/0/org.koreader.launcher/files/data/hyph/Roman.pattern returned 0
06-20 16:16:33.600  3584  3597 I KOReader: command cp /storage/emulated/0/koreader/scripts.afterupdate/data/example.css /data/user/0/org.koreader.launcher/files/data/example.css returned 0
06-20 16:16:33.604  3584  3597 I KOReader: command rm /data/user/0/org.koreader.launcher/files/afterupdate.marker returned 0
```
4 years ago
zwim 488721e62e
[Android] Add support for custom startup scripts (#6275)
Add the possibility to run *.sh scripts:

After an update of koreader all *.sh scripts in /sdcard/koreader/scripts.afterupdate
are executed.

On every start of koreader run all *.sh scripts in /sdcard/koreader/scripts.always
4 years ago
Martín Fernández 765b35a7bf
android: add a toggle to ignore back button events (#6269)
Requires koreader/android-luajit-launcher#233
Requires koreader/koreader-base#1117

It is a workaround for #6263 but can be useful on some devices with erratic back key behaviour too (yep, Onyx)
4 years ago
Martín Fdez 835f9f62c6 fix ANRs in Kosync plugin login/register 4 years ago
NiLuJe 1f994f8ede
Floor dimension computations (mul/div). (#6264)
* floor most every dimension computations involving MUL or DIV
Should avoid passing nonsensical floating point coordinates/dimensions
to the UI code.

* Update base

* https://github.com/koreader/koreader-base/pull/1113
* https://github.com/koreader/koreader-base/pull/1114
* https://github.com/koreader/koreader-base/pull/1115

* Bump android-luajit-launcher

https://github.com/koreader/android-luajit-launcher/pull/230
https://github.com/koreader/android-luajit-launcher/pull/231
4 years ago
Martín Fernández 9a789335c3
mobiscribe: add full screen update support (#6051) 4 years ago
Martín Fernández e7b191ca6a
android: same version code for all archs (#5972)
+ new Boyue model
4 years ago
Martín Fernández 69f4144dc1
[Android] Prevent previous book reopening in some situations (#5880)
Fixes #5877.
4 years ago
Frans de Jonge 5f10e8d6df
Bump luajit-launcher for Package refactor + LuaJIT bump (#5868)
https://github.com/koreader/android-luajit-launcher/pull/224
4 years ago
Martín Fernández 3856f04445 android: switch to connectivity manager
Co-Authored-By: Frans de Jonge <fransdejonge@gmail.com>
4 years ago
NiLuJe 9a20fb5836
Switch to zsync2 (#5810)
* Switch to zsync2

Requires https://github.com/koreader/koreader-base/pull/1036

* Simplify FBInk syntax

The weird-ass workarounds for -s's subopts handling are
no longer needed w/ FBInk >= 1.21.0

* Update base

* Re-enable HW dithering on Kindle
  (https://github.com/koreader/koreader-base/pull/1034)
* Update SQLite to 3.31.1
  (https://github.com/koreader/koreader-base/pull/1035)
* reMarkable port
  (https://github.com/koreader/koreader-base/pull/1023)
* zsync2
  (https://github.com/koreader/koreader-base/pull/1036)

* zsync2 means we can finally have nice things

(OpenStack backed storage)

* We also no longer need that insane workaround on ARM

* And comment out @chrox's mirror, which appears to be down.

* Warn that a malformed URL will horribly blow up in fun and interesting
ways
4 years ago
Martín Fdez f60b4c36ce fix #5781 4 years ago
Martín Fernández b111ccc2b8 bump android, fixes ntx landscape tearing, thanks to @char11 4 years ago
Martín Fernández 081825285f bump luajit-launcher 4 years ago
Martín Fernández 51ed411ee4 android: OTA fallback using the browser
Co-Authored-By: Frans de Jonge <fransdejonge@gmail.com>
4 years ago
Martín Fernández 419b42cf2c
android: call EPD test from within KOReader (#5737)
* android: call EPD test from within KOReader

Co-Authored-By: Frans de Jonge <fransdejonge@gmail.com>
4 years ago
Martín Fernández 9c120c6d7a bump luajit-launcher 4 years ago
Martín Fernández 7fb2db8f02 android: fix app crash when a bluetooth keyboard is connected/disconnected, (#5702)
use the freescale surfaceview on Crema devices
add support for nook 510
5 years ago
Martín Fernández c6f553a1bd bump luajit launcher 5 years ago
Martín Fernández bd793d1ddd bump android-luajit-launcher 5 years ago
Frans de Jonge 0cbceca98a
Bump luajit-launcher (#5637)
For eink: more devices https://github.com/koreader/android-luajit-launcher/pull/197
5 years ago
Martín Fernández 87334801ea android: fix ko paths when primary storage is a SD card 5 years ago
Martín Fernández 5530a36bb1 android: fix clipboard copy/paste 5 years ago
Martín Fernández e131443834 bump android-luajit-launcher: migration to kotlin and more...
splashscreen with ko icon
    e-ink friendly spinner while uncompressing assets
    reworked timeout settings, explicit WRITE_SETTINGS request
    ...
5 years ago
Frans de Jonge 4da512ce4e
Bump luajit-luancher for overwrite files, show resume at the end of extraction (#5357)
https://github.com/koreader/android-luajit-launcher/pull/182

Fixes <https://github.com/koreader/koreader/issues/5355>.
5 years ago
Frans de Jonge 3fa4087fe2
[fix, Android] Set executable bit (#5349)
Partially reverts d2536d8b7e.

Fixes <https://github.com/koreader/koreader/issues/5347>.
5 years ago
Robert ae50569055 Frontlight - Add checkbox use system settings (#5307)
See: https://github.com/koreader/koreader/issues/5205#issuecomment-526935357

Devices with `hasLightLevelFallback = true` (for now Android) has extra checkbutton `Use system settings`. Default unchecked.
5 years ago
Martín Fernández 621a84c1d3 bump luajit-launcher 5 years ago
Martín Fernández d2536d8b7e android: fix some warnings on launcher script,
no need to chmod binaries as they are uncompressed on each update,
A becomes android
5 years ago
Frans de Jonge fd5fe7dfef
[doc, fix, Android] Bump luajit-launcher (#5254)
Includes:
* workaround for Tolinos on FW10 (<https://github.com/koreader/android-luajit-launcher/pull/172>)
* [doc] Android module documentation stub (<https://github.com/koreader/android-luajit-launcher/pull/173>)
5 years ago
Martín Fernández c6862780a1 bump luajit-launcher 5 years ago
Martín Fernández 84b06d2824 bump luajit-launcher 5 years ago
Frans de Jonge 0b8d15416a
[Android] Bump luajit-launcher for big refactor with better logging (#5201)
https://github.com/koreader/android-luajit-launcher/pull/161
5 years ago
Martín Fernández cf7aada82b android: fix little delay on touch events 5 years ago
Martín Fernández 10456169e5
Android: ignore touchscreen by user request (using a hardware key) (#5164)
* android: ignore touchscreen by user request (using a hardware key)
5 years ago
Martín Fernández 91b2faae6a android: add an option to ignore volume keys or use them to turn pages 5 years ago
Martín Fernández 2da0e54b7a bump android-luajit-launcher 5 years ago
Frans de Jonge dec5a17a25
Bump Android (#5111)
Contains https://github.com/koreader/android-luajit-launcher/pull/156

For https://github.com/koreader/koreader/pull/5108
5 years ago
Martín Fernández dca24e0ac5 patch.lua is not needed for screen height workarounds, but can be useful as it is the only file that allow us to change KOReader behaviour on Android without rebuilding the application 5 years ago
Frans de Jonge a3356483ba
[Android] Bump luajit-launcher (#5105)
Contains build eink-test for supported abis only https://github.com/koreader/android-luajit-launcher/pull/154

Should hopefully fix the build in our "minimal" Android Docker image.
5 years ago
Martín Fernández 64cc7e0827 [Android] update ndk/sdk paths on demand, bump sdk tools.. (#5103) 5 years ago
Martín Fernández bcac5b845b switch from ant to gradle, (#5096)
add support for runtime permissions on api23+
add support for devices with a notch on api28+
fix some potential memory leaks
do not check luajit-launcher shell scripts
5 years ago
Martín Fernández c60d672b04 bump base & luajit-launcher: workaround for buggy firmwares and more 5 years ago
Frans de Jonge 3850fcc011
[Android] Add full support for eink refreshes on compatible devices(ntx) (#5068)
Tested on Tolino Vision 2, Tolino Shine 3 and Nook Glowlight 3. It should work on other Freescale/NTX devices too. Thanks to @pazos.

See https://github.com/koreader/koreader-base/pull/920 and https://github.com/koreader/android-luajit-launcher/pull/146

Fixes #3517.
5 years ago
Frans de Jonge 4515a36059
[Android] Bump luajit-launcher for SurfaceView hack (#4991)
See https://github.com/koreader/android-luajit-launcher/pull/143

References https://github.com/koreader/koreader/issues/3517#issuecomment-485347562
5 years ago
Frans de Jonge 2c6cc258a2
bump luajit-launcher to fix Android build (for real) (#4965)
* Fix LuaJIT build after the recent buildsystem tweaks https://github.com/koreader/android-luajit-launcher/pull/142
5 years ago
Frans de Jonge 7d742e156a
[Android] Bump luajit-launcher to fix build (#4957)
* [fix] Add LuaJIT patch to sync with koreader-base https://github.com/koreader/android-luajit-launcher/pull/141

A bit of an emergency fix to just get it working ASAP. A patch was added to base LuaJIT in https://github.com/koreader/koreader-base/pull/892, which caused a mismatch and build failures over here. Unfortunately that was hidden by some excessive Android verbosity inadvertently introduced in https://github.com/koreader/koreader-base/pull/888, and on my local instance where I did a sanity check LuaJIT was already compiled…
5 years ago
Martín Fernández a69c09a275 [Android] do not log verbose blitbuffer messages on release builds, unless specified in settings.lua. Keep debug builds as they are (#4933) 5 years ago
Martín Fernández dde301e765 [Android] use the same tag for all logs (#4862) 5 years ago
NiLuJe b72a2000b1
A few minor fixes after #4847 (#4850)
* Add a toggle to disable the C blitter in the Dev menu (depends on https://github.com/koreader/koreader-base/pull/882) (never shown if the JIT is disabled, grayed out if the C blitter is not installed)
* Fix a few sizeUtf8Text call sites that were doing a nil check in order to account for the new return type.
* Tweak statusbar handling to avoid spurious sizeUtf8Text warnings when it's hidden, and unify its behavior between being hidden via toggle, and hidden on book open (at least when all-at-once is not enabled).
* c.f., https://github.com/koreader/koreader-base/pull/882 (Android, PB, RGB32 & Legacy Kindle regression fixes).
5 years ago
Frans de Jonge 2f65fb94ec
[Android, UX] Add Device:openLink() implementation (#4824)
Fixes https://github.com/koreader/koreader/issues/4821

Same as https://github.com/koreader/koreader/pull/4822

Thanks to @pazos who implemented the Android backend, see https://github.com/koreader/android-luajit-launcher/pull/133
5 years ago
Martín Fernández bc9b43aa64 [Android] add support for likebook mars/muses (#4818) 5 years ago
Frans de Jonge b1075fba60
Bump luajit-launcher for 7z 19.00 (#4742)
https://github.com/koreader/android-luajit-launcher/pull/128
5 years ago
Martín Fernández b1e2123a2c bump android-luajit-launcher: ignore intents for schemes other than file 5 years ago
Frans de Jonge 42346d8197
[Android] Bump luajit-launcher for build flavors (#4719)
See https://github.com/koreader/android-luajit-launcher/pull/126
5 years ago
Martín Fernández 97c6c1244f add support for likebook mimas e-ink updates (#4686) 5 years ago
Frans de Jonge 76028513ea
[Android] Bump luajit-launcher for basic download & notification support (#4647)
https://github.com/koreader/android-luajit-launcher/pull/122

For https://github.com/koreader/koreader/pull/4639
5 years ago
Frans de Jonge 365a5ad876
[chore] Deprecate Android OTA code (#4636)
Fixes #4632.
5 years ago
Frans de Jonge 388871a2c3
[fix, Android] Bump luajit-launcher to unbreak fullscreen toggle in api14-15 (#4619)
* add support for older energy ereaders https://github.com/koreader/android-luajit-launcher/pull/116
* README: slight tweaks https://github.com/koreader/android-luajit-launcher/pull/117
* [chore] Fix README codacy issues https://github.com/koreader/android-luajit-launcher/pull/118
* fix codacy issues, part one: unused imports and minor fixes https://github.com/koreader/android-luajit-launcher/pull/120
* unbreak fullscreen toggle in api14-15 https://github.com/koreader/android-luajit-launcher/pull/119
5 years ago
Frans de Jonge 35e5c24cb8
[Android] Bump luajit-launcher for os.execute quote problem half-fix (#4598)
There is at least one very obvious issue remaining (i.e., one quotes arguments to enclose spaces) but it's not caused by this PR.

Fixes #4586.
5 years ago
Frans de Jonge 8026ffbddb
[Android, fix] Fullscreen, bigger aspect ratio (#4589)
Fixes #4584

Includes https://github.com/koreader/android-luajit-launcher/pull/113
5 years ago
Frans de Jonge 0b2f586d28
[Android] Bump luajit-launcher for Boyue Likebook Plus (#4573)
Includes https://github.com/koreader/android-luajit-launcher/pull/112

References https://github.com/koreader/koreader/issues/4551#issuecomment-461743510

Also log time elapsed installing
5 years ago
Frans de Jonge 154c1cd1c4
[Android] Miscellaneous fixes: refactor & Prime HD support (#4559)
* Refactor https://github.com/koreader/android-luajit-launcher/pull/104
* fix support for inkbook prime hd https://github.com/koreader/android-luajit-launcher/pull/111

References https://github.com/koreader/koreader/issues/4551#issuecomment-461526228
5 years ago
Frans de Jonge 5d21990b0e
[Android] Add E Ink support for Inkbook Prime HD & exit after crash (#4552)
* add eink support for Inkbook Prime HD (https://github.com/koreader/android-luajit-launcher/pull/110) @pazos (references #4551)
* [fix] Exit after crashing to avoid unknown states (https://github.com/koreader/android-luajit-launcher/pull/109) @pazos
5 years ago
Frans de Jonge 81a2423982
[Android, feat] Set APK version to a sane automated value (#4546)
Includes "set android versionCode and android versionName at buildtime" (<https://github.com/koreader/android-luajit-launcher/pull/106>)

* versionCode uses the number of Git commits, because Google doesn't like values larger than `2100000000`
* versionName uses our existing version string

References #2040.
5 years ago
Frans de Jonge 2709fb2432
[chore] Bump third-party libraries (#4545)
* LuaJIT 20190110 in luajit-launcher & base
* HB v2.3.1
* glib 2.58.3
* FBInk v1.10.1

https://github.com/koreader/koreader-base/pull/801
5a17ca7521
5 years ago
Frans de Jonge b0570460cb
[fix, Android] Bump luajit-launcher to keep all the binaries in ./bin (#4535)
I forgot to push this local change in #4532.

* [fix] Keep all the binaries in ./bin https://github.com/koreader/android-luajit-launcher/pull/102
5 years ago
Frans de Jonge b68cdc202d
[Android] Add release/debug APK switch (#4532)
References #2040.

Includes https://github.com/koreader/android-luajit-launcher/pull/99
5 years ago
Frans de Jonge 4874751020
[Android] Bump base & luajit-launcher for basic E Ink refresh support (#4529)
Prerequisite for #4517.

* Add basic support for RK30xx eink devices https://github.com/koreader/android-luajit-launcher/pull/96
* Add basic support for full eink updates https://github.com/koreader/koreader-base/pull/798
5 years ago
Frans de Jonge e592468f38
[Android] Bump luajit-launcher (#4500)
* Disable wakelocks by default (https://github.com/koreader/android-luajit-launcher/pull/95)
5 years ago
Frans de Jonge 6ec3143f2f
[fix, Android] Bump luajit-launcher to silence warning on Android 9 (#4494)
* https://github.com/koreader/android-luajit-launcher/pull/93

Fixes #4348.
5 years ago
Frans de Jonge 166e3f9421
[Android, fix] Bump luajit-launcher (#4491)
For https://github.com/koreader/android-luajit-launcher/pull/92

Cf. #4478, #4489.
5 years ago
Frans de Jonge 81e160692d
[Android] Bump luajit-launcher for #4478 (#4489) 5 years ago
Martín Fernández 2093bf6d94 use getIntent from luajit-launcher 5 years ago
Martín Fernández 2009ffa12f android: keep screen awake toggle (using wakelocks) & bump luajit-launcher 5 years ago
Martín Fernández dbea29b139 do not print intent file path if file == nil 5 years ago
Frans de Jonge db404537bf
[fix, Android] Android 2.3 getScreenSize crash (#4356)
* [fix] Android 2.3 getSceenSize https://github.com/koreader/android-luajit-launcher/pull/87

Also includes:

* 7z: update to 18.05 https://github.com/koreader/android-luajit-launcher/pull/88

If nothing else, from 18.03:

> The speed for single-thread LZMA/LZMA2 decoding was increased by 30% in x64 version and by 3% in x86 version.
6 years ago
NiLuJe c14eae335a
Bump base & Android launcher (#4335)
* Bump luajit-launcher (luajit)
* Bump base (libjpeg-turbo 2.0.1)
6 years ago
NiLuJe 5871132c25
UI Behavior tweaks (#3983)
* Switch all initial highlights to "fast" update

i.e., everything that does an invert
Plus a few other things that refresh small UI elements onTap
Re #3130

* Tweak refreshtype for a number of widgets:
  * Fix iconbutton dimen
  * Make touchmenu flash on close & initial menu popup. Full-screen on close.
  * Use flashing updates when opening/closing dictionary popup. Full-screen on close.
  * Switch FileManager to partial.
    It's mostly text, and we want flash promotion there.
  * Make configdialog & menu flash on exit
  * Make FLWidget flash on close
  * virtualkeyboard: flash on layout change & popup.
  * Potentially not that great workaround to ensure we actually see the
highlights in the FM's chevrons
  * Flash when closing BookStatus Widget
  * Optimize away a quirk of the dual "fast" update in touchmenu

* Promote updates to flashing slightly more agressively.

* Document what each refreshtype actually does.

With a few guidelines on their optimal usecases.

* Switch remaining scheduleIn(0.0) to nextTick()

* Tighter scheduling timers

Shaving a hundred ms off UI callbacks...

* Cache FFI C Library namespace

* Ask MuPDF to convert pixmaps to BGR on Kobo

Fix #3949

* Mention koxtoolchain in the README

re #3972

* Kindle: Handle *all* fonts via EXT_FONT_DIR instead of bind mounts insanity

* Make black flashes in UI elements user-configurable

(All or nothing).

* Jot down some random KOA2 sysfs path
6 years ago
Frans de Jonge 975a5834d7
[Android] Update icon to new logo (#3882)
Includes
https://github.com/koreader/android-luajit-launcher/pull/83

References
koreader/koreader-icons#1
koreader/koreader#3881
koreader/koreader#3858
koreader/koreader#2000
6 years ago
Frans de Jonge 6c3ace9940
[Android] Makefile: only use VERSION, not REVISION (#3811)
Fixes always reinstalling resource package.

See https://github.com/koreader/koreader/pull/3723#issuecomment-376508917
6 years ago
Frans de Jonge 4c1c8b8c2e
[Android] bump for setFullscreen() without delay as well (#3721) 6 years ago
Frans de Jonge aadb81eb48
[feat] Add Android clipboard definition (#3479)
References https://github.com/koreader/koreader/issues/3441
6 years ago
Frans de Jonge e928276d73
[Android] Update luajit-launcher 7z to 18.00 (#3617)
See https://github.com/koreader/android-luajit-launcher/pull/79
6 years ago
Frans de Jonge 51f2fa1845
[fix, Android] android-luajit-launcher: update 7z URL/commit hash (#3604)
Fixes Android nightly builds, see https://github.com/koreader/koreader/issues/3100#issuecomment-357499189
6 years ago
Huang Xin a44b39fda6
[build] Darwin build of Android port (#3520) 7 years ago
poire-z af48c7c2b7 Android: Change screenOrientation to sensorPortrait (#3474) 7 years ago
Frans de Jonge 575fc82081 Bump android-luajit-launcher 7 years ago
Frans de Jonge 8b36566c6a [Android] Bump luajit-launcher (more lib loading debug info) (#3401) 7 years ago
Frans de Jonge e0bc0a1649 Bump android-luajit-launcher (contains x86 nightly build fix) (#3384) 7 years ago
Huang Xin c22b8393d7 [android] fix hide nav bar on activity create (#3357) 7 years ago
Frans de Jonge b4bb32254a kodev: Add $ANDROID_ARCH to enable x86 build (#3353)
You'll still have to call it with `ANDROID_ARCH=x86 ./kodev build/release/run android`.

Don't forget to `./mk-luajit.sh clean` in luajit-launcher when changing architectures.

* Bump android-luajit-launcher
  This includes the fix for Android 8. Fixes #3126.
* Bump base
7 years ago
Frans de Jonge ac7119c433 [fix] Android screen blackout on first light change (#3303) 7 years ago
Frans de Jonge 94c0e01b7f [fix, Android] restore patch.lua and fix odd anonymous function issue
See https://github.com/koreader/koreader/issues/3214#issuecomment-332218408 and https://github.com/koreader/koreader/issues/3118#issuecomment-332633481
7 years ago
Huang Xin a4e1a3ba5e reflect changes in koreader/android-luajit-launcher#62 (#3254) 7 years ago
Frans de Jonge 87cf2864d9 Bump Android stuff (#3251)
https://github.com/koreader/koreader-base/pull/516
https://github.com/koreader/android-luajit-launcher/pull/62
7 years ago
Frans de Jonge 4360837e3b [Android] Update to NDK 15 (#3233)
Also improve SDK installation for ease of setting up development system.

This also puts in place most of the missing pieces to finish the intent in #3064.
7 years ago
Frans de Jonge 110c882bba Bump android-luajit-launcher (fixes nightly build) (#3229) 7 years ago