Commit Graph

232 Commits (master)

Author SHA1 Message Date
Martín Fernández 1bba05ff41
Bump android-luajit-launcher (#8404)
Fix #8355
3 years ago
NiLuJe 304e128031 Bump android-luajit-launcher
https://github.com/koreader/android-luajit-launcher/pull/336
3 years ago
NiLuJe 5ab689aa71 Bump android-luajit-launcher
https://github.com/koreader/android-luajit-launcher/pull/335
3 years ago
Frans de Jonge f2ce7d1f3a
Various third-party bumps (#8113)
https://github.com/koreader/koreader-base/pull/1400
https://github.com/koreader/koreader-base/pull/1401

https://github.com/koreader/android-luajit-launcher/pull/334
https://github.com/koreader/android-luajit-launcher/pull/333
3 years ago
Martín Fernández 2222f25422
bump luajit-launcher (#8071) 3 years ago
NiLuJe ba6fef4d7b
Bump base & android-luajit-launcher (#8052)
* Bump base
https://github.com/koreader/koreader-base/pull/1395
* Bump android-luajit-launcher
https://github.com/koreader/android-luajit-launcher/pull/328
https://github.com/koreader/android-luajit-launcher/pull/329
https://github.com/koreader/android-luajit-launcher/pull/330
https://github.com/koreader/android-luajit-launcher/pull/331
3 years ago
Martín Fernández ef5095f806
bump luajit-launcher (#8025)
Namely the Boyue P78, a JDRead, the Fidibook and a new, mysterious, Boyue Lemon smile

Related to #4551
3 years ago
Martín Fernández 07bf2a5719
bump luajit-launcher (#7925)
Fixes sdcv on Android 4.0 - 4.4

Fixes https://github.com/koreader/koreader/issues/7920
3 years ago
Martín Fernández e5610a2bcd
bump base + android (#7909) 3 years ago
Martín Fernández ee92ca68e8
workaround for Onyx Poke2 nonsense (#7872)
Requires koreader/android-luajit-launcher#320

Also the luajit-launcher bump adds support for Likebook P78 and sanitizes clipboard text.
3 years ago
Martín Fdez e708a47cca bump luajit-launcher 3 years ago
Martín Fernández b2ee95be63
fix storage permissions on android 11+ (#7846)
* bump luajit-launcher
3 years ago
Martín Fernández 2408c17175
bump luajit-launcher (#7842) 3 years ago
Martín Fernández 9f097da4f0
Bump android backend (#7813)
* Bumps the target Sdk to Android 11 (API30)
* Add a crash handler
3 years ago
Martín Fernández fdb0539aae
Bug report changes (#7709)
* android: dump logcat to file
* Update .github/ISSUE_TEMPLATE/bug_report.md

Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
3 years ago
Martín Fernández 939fcf7f0e
android: avoid downloading the APK again if there's one download in progress + fix signature error (#7657) 3 years ago
Martín Fernández 247166b3df
android: keep bundled version in a dedicated text file (#7649) 3 years ago
Martín Fernández d303fdf694
android: Prompt for install updates when they're downloaded (#7632) 3 years ago
NiLuJe 6d752f32c0 Update android-laujit-launcher
https://github.com/koreader/android-luajit-launcher/pull/302
https://github.com/koreader/android-luajit-launcher/pull/301
https://github.com/koreader/android-luajit-launcher/pull/300
3 years ago
NiLuJe 1ac0ad2f1a Android: More input handling tweaks
* Android: Fix #7552 by simply ensuring we drain the input/cmd queue first, simply by scheduling the task to the next tick, instead of locally re-implementing part of the event loop ;). (Requires https://github.com/koreader/koreader-base/pull/1356 for extra safety).
* Android: Clear input state when the window loses focus. (Related to the above fix).

* Bump base:

https://github.com/koreader/koreader-base/pull/1356
https://github.com/koreader/koreader-base/pull/1357

* Bump android-luajit-launcher:

https://github.com/koreader/android-luajit-launcher/pull/293
https://github.com/koreader/android-luajit-launcher/pull/298
https://github.com/koreader/android-luajit-launcher/pull/299
3 years ago
NiLuJe bbe197bd4b
Bump base (#7527)
* Bump android-laujit-launcher

https://github.com/koreader/android-luajit-launcher/pull/297

* Bump base

https://github.com/koreader/koreader-base/pull/1351
https://github.com/koreader/koreader-base/pull/1350
https://github.com/koreader/koreader-base/pull/1349
https://github.com/koreader/koreader-base/pull/1348
3 years ago
zwim 6d6760c2b3
bump luajit-launcher (#7480) 3 years ago
NiLuJe f4f8820575
Bump the things for 2021.01.1 (#7202)
* Bump base

https://github.com/koreader/koreader-base/pull/1293
https://github.com/koreader/koreader-base/pull/1294

Fix #7187

* Bump android-luajit-launcher

https://github.com/koreader/android-luajit-launcher/pull/289
https://github.com/koreader/android-luajit-launcher/pull/292

Fix #7193
3 years ago
Frans de Jonge 4b02edc4e1
Bump luajit-launcher (#7142)
For https://github.com/koreader/android-luajit-launcher/pull/288
3 years ago
NiLuJe 3060dc81af
Revamp "flash_ui" handling (#7118)
* Wherever possible, do an actual dumb invert on the Screen BB instead of repainting the widget, *then* inverting it (which is what the "invert" flag does).
* Instead of playing with nextTick/tickAfterNext delays, explicitly fence stuff with forceRePaint
* And, in the few cases where said Mk. 7 quirk kicks in, make the fences more marked by using a well-placed WAIT_FOR_UPDATE_COMPLETE

* Fix an issue in Button where show/hide & enable/disable where actually all toggles, which meant that duplicate calls or timing issues would do the wrong thing. (This broke dimming some icons, and mistakenly dropped the background from FM chevrons, for example).
* Speaking of, fix Button's hide/show to actually restore the background properly (there was a stupid typo in the variable name)
* Still in Button, fix the insanity of the double repaint on rounded buttons. Turns out it made sense, after all (and was related to said missing background, and bad interaction with invert & text with no background).
* KeyValuePage suffered from a similar issue with broken highlights (all black) because of missing backgrounds.
* In ConfigDialog, only instanciate IconButtons once (because every tab switch causes a full instantiation; and the initial display implies a full instanciation and an initial tab switch). Otherwise, both instances linger, and catch taps, and as such, double highlights.
* ConfigDialog: Restore the "don't repaint ReaderUI" when switching between similarly sized tabs (re #6131). I never could reproduce that on eInk, and I can't now on the emulator, so I'm assuming @poire-z fixed it during the swap to SVG icons.
* KeyValuePage: Only instanciate Buttons once (again, this is a widget that goes through a full init every page). Again, caused highlight/dimming issues because buttons were stacked.
* Menu: Ditto.
* TouchMenu: Now home of the gnarliest unhilight heuristics, because of the sheer amount of different things that can happen (and/or thanks to stuff not flagged covers_fullscreen properly ;p).

* Bump base
https://github.com/koreader/koreader-base/pull/1280
https://github.com/koreader/koreader-base/pull/1282
https://github.com/koreader/koreader-base/pull/1283
https://github.com/koreader/koreader-base/pull/1284

* Bump android-luajit-launcher
https://github.com/koreader/android-luajit-launcher/pull/284
https://github.com/koreader/android-luajit-launcher/pull/285
https://github.com/koreader/android-luajit-launcher/pull/286
https://github.com/koreader/android-luajit-launcher/pull/287
3 years ago
yparitcher dc964f3941
reader.lua: rework file/directory argument handling. (#7053)
platform: do not pass a directory on the command line.
The home directory will be properly set by Device.home_dir.

It was sometimes crashing when opened with no args.

Fixes: #7049
3 years ago
NiLuJe 5756f1f43e
LuaJIT on Android fixes (#7094)
* Don't flag Android as should_restrict_JIT

And allow disabling the C blitter, to put the workaround to the test...

* Add a -d, --debug flag to the log function

Catches KOReader's debug, as well as (our) dlopen & luajit logging

* Bump android-luajit-launcher

https://github.com/koreader/android-luajit-launcher/pull/283
https://github.com/koreader/android-luajit-launcher/pull/282

* Bump base

(https://github.com/koreader/koreader-base/pull/1279)
3 years ago
NiLuJe f1f439d08b
More Android trickery (#7059)
* Modernize jit syntax

It's built-in, no need for a require anymore.

* Flag Android should_restrict_JIT again

It's mildly helpful at putting off the inevitable.
(very, very, very, very mildly).

* Bump android-luajit-launcher

https://github.com/koreader/android-luajit-launcher/pull/281
3 years ago
NiLuJe f534e08ad1
Bump android-luajit-launcher (#7055)
https://github.com/koreader/android-luajit-launcher/pull/280
3 years ago
NiLuJe 39c60ada20
Android: Avoid the Lua blitter (#7042)
* Bump android-luajit-launcher

https://github.com/koreader/android-luajit-launcher/pull/279

* Bump base

https://github.com/koreader/koreader-base/pull/1265
https://github.com/koreader/koreader-base/pull/1267
https://github.com/koreader/koreader-base/pull/1268
3 years ago
NiLuJe d845741b15
Android: Don't mark the platform as should_restrict_JIT (#7024)
* Android: Don't mark the platform as should_restrict_JIT

And see how much stuff breaks \o/

* Prevent Android users from disabling the C blitter, regardless of the
restrict flag

* Update android-luajit-launcher

https://github.com/koreader/android-luajit-launcher/pull/278
https://github.com/koreader/android-luajit-launcher/pull/275
3 years ago
Martín Fernández 222e752f59
bump luajit-launcher: fix for some dict downloads (#6990)
Follow up: #6959
3 years ago
Martín Fernández febb8e11a6
bump base (#6978)
* LuaJIT
* cURL 7.74.0
* OpenSSL 1.1.1i
* OpenSSH 8.4p1
3 years ago
Martín Fernández c481c5aa04
move unpackArchive to Device, use native version on android (#6959) 3 years ago
Martín Fernández 89e1c406f2
android: downgrade targetSdk to 28 (#6961)
Fixes #6953
3 years ago
Martín Fdez 9df5d17a6c bump luajit-launcher 3 years ago
Martín Fdez c0b71d0899 bump luajit-launcher and APK to API30 3 years ago
Martín Fernández 1468646aa5
Android bundle update (#6870)
- adaptative icons
- minify + shrink
- remove unused assets to save a few KBs
- install apk by clicking on notification after download (doesn't apply to F-Droid)
3 years ago
zwim 926e7dd402
coverimage plugin (#6813)
* Plugin for saving the cover image to file. Useful in some e-ink android devices.
4 years ago
Galunid 5ed240077e
OnyxEPDController (#6853)
Includes:

new QualcommOnyxEPDController for Onyx Boox Nova 2 (and possibly others)
refactoring and support for qualcomm epd modes
Includes new eink test, that should work on Qualcomm Onyx devices.
4 years ago
Martín Fernández 91708e25d0
android-luajit-launcher refactor (#6821)
- Lcd devices won't use the SurfaceView, just the good old native content/window (except AndroidTv and ChromeOS)
- All android dialogs will be presented with Material Design on recent devices.
- Added an option to device settings to manage application battery optimization.
- Permissions that require the user to go to a settings page will be presented with a native android dialog.
- bump android-luajit-launcher

- Changes under the hood: koreader/android-luajit-launcher#257
4 years ago
Martín Fdez 4fb59e2253 bump LuaJIT, fix android native orientation logic 4 years ago
NiLuJe 14e7e270c3
Bump android/luajit-launcher (#6661)
(https://github.com/koreader/android-luajit-launcher/pull/251)
4 years ago
Galunid cc42265a67
Bump luajit-launcher (#6595)
Includes native frontlight for onyx nova 2 (koreader/android-luajit-launcher#248)
4 years ago
zwim 66e8087c66
[android]: fix backlight toggle (#6520)
* check on startup if frontlight can be changed.
* Init fl_min if necessary not to use intensity==0
4 years ago
Martín Fdez 9037a1f4f2 bump luajit-launcher and remove frontlightwidget leftovers 4 years ago
zwim a6763465b4
[Android]: Native light dialog (#6426)
* Adds support for Tolino Epos 2 warmth light
4 years ago
Martín Fernández fa55152465
Handle all possible Android configuration changes without recreating the activity (#6416) 4 years ago
Frans de Jonge a0e563858e
Bump base & luajit-launcher for new LuaJIT (#6389)
Also for Nia support, cf. <https://github.com/koreader/koreader-base/pull/1142>.
4 years ago
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
4 years ago
Martín Fernández c6f553a1bd bump luajit launcher 4 years ago
Martín Fernández bd793d1ddd bump android-luajit-launcher 4 years ago
Frans de Jonge 0cbceca98a
Bump luajit-launcher (#5637)
For eink: more devices https://github.com/koreader/android-luajit-launcher/pull/197
4 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