2
0
mirror of https://github.com/koreader/koreader synced 2024-11-10 01:10:34 +00:00
Commit Graph

355 Commits

Author SHA1 Message Date
ezdiy
91ebe56b20
Pocketbook: launcher script: please shfmt (#6621) 2020-09-01 22:46:43 +02:00
ezdiy
4857e97e30
Pocketbook: Launcher OS integration (#6620)
* Bring in restart koreader & shutdown device exit options
* Existing instance reused for opens via native book explorer
2020-09-01 21:43:21 +02:00
ezdiy
c9a339ead0
Pocketbook: File handling OS integration (#6617)
* Show opened file in task manager
* Remember file to open on power-off
* Perform file associations
2020-09-01 17:52:16 +02:00
NiLuJe
12df296b90
Detect early KoboUSBMS returns, and just restart KOReader (#6603)
We know onboard is safe in these cases.
2020-08-30 18:59:16 +02:00
Galunid
cc42265a67
Bump luajit-launcher (#6595)
Includes native frontlight for onyx nova 2 (koreader/android-luajit-launcher#248)
2020-08-29 21:42:10 +02:00
NiLuJe
e402c9d6f3
More KoboUSBMS related tweaks & cleanups (#6590)
* Be even more defensive around KoboUSBMS handling in the startup script

And add some more logging. To the log before a session, to the syslog
after, because we can't be sure onboard is viable.

* Display a short version string straight in the Version label

* Move system statistics inside the Help menu

* Move Version inside Help


* Bump base

https://github.com/koreader/koreader-base/pull/1173
2020-08-29 05:20:28 +02:00
Martín Fdez
454ed0ebeb enable usage of system fonts 2020-08-27 21:40:18 +02:00
NiLuJe
1919764825
Some more KoboUSBMS tweaks (#6566)
* Enable i18n in KoboUSBMS

* Rejig the "No confirmation" USBMS setting:

In now *only* affects the USB plug in event.
The menu entry will never show the popup (clicking on it should already
be confirmation enough, that, yes, we really would like to do that,
please ;)).

Also, enable said plug in behavior on Cervantes, too ;).

* Add an option to disable USBMS entirely

* Bump base

https://github.com/koreader/koreader-base/pull/1170
2020-08-27 01:06:41 +02:00
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
2020-08-25 14:42:39 +02:00
NiLuJe
6e3a3e8069
[Kobo] Support USBMS exports (#6552)
* \o/

* Make sure the (debug) event log doesn't end up in the fd table of our child processes...
Otherwise, it breaks USBMS.

* Close suspicious fds in the Wi-Fi scripts
To prevent any and all issues w/ USBMS down the road...

* Minor USBMS UI tweaks

* Always ask for confirmation to start on USBMS session on plug

* Bump base

https://github.com/koreader/koreader-base/pull/1161
https://github.com/koreader/koreader-base/pull/1162
https://github.com/koreader/koreader-base/pull/1163
https://github.com/koreader/koreader-base/pull/1165
https://github.com/koreader/koreader-base/pull/1167
2020-08-25 02:00:59 +02:00
Martín Fernández
ae19cafe84 check OTA updates on restart 2020-08-23 19:33:32 +02:00
NiLuJe
b14cabb6de
[Kobo] Unbreak Wi-Fi on FW >= 4.23 (#6522)
* Unbreak Wi-Fi on Kobo w/ FX >= 4.23+

Stop relying on WIFI_MODULE_PATH, it's no longer exported by the init
script.

Fix #6500

* Resync the nickel restart script w/ upstream

Let udev handle the SD card, and actually allow nickel to see those events by re-creating the FIFO ourselves, to avoid races.
2020-08-19 00:45:24 +02:00
Martín Fdez
9037a1f4f2 bump luajit-launcher and remove frontlightwidget leftovers 2020-08-06 17:19:12 +02:00
Martín Fdez
bdbebb9e08 standalone osx application bundle 2020-08-05 13:04:06 +02:00
NiLuJe
4a3d5f3d66
Fix a minor snafu in the Kobo startup script. (#6466)
Oops, too much Python/Lua ^^.
2020-08-02 23:32:20 +02:00
zwim
a6763465b4
[Android]: Native light dialog (#6426)
* Adds support for Tolino Epos 2 warmth light
2020-08-02 22:27:49 +02:00
NiLuJe
2ad976387d
More #6424 cleanups (#6442)
* Simplify logic, and more detailed debug logging
* Kill Nickel's FIFO on startup
Avoids udev/udhcpc scripts hanging when trying to open() it.
2020-07-29 03:27:04 +02:00
NiLuJe
37a01100b7
Various Wi-Fi QoL improvements (#6424)
* Revamped most actions that require an internet connection to a new/fixed backend that allows forwarding the initial action and running it automatically once connected. (i.e., it'll allow you to set "Action when Wi-Fi is off" to "turn_on", and whatch stuff connect and do what you wanted automatically without having to re-click anywhere instead of showing you a Wi-Fi prompt and then not doing anything without any other feedback).
* Speaking of, fixed the "turn_on" beforeWifi action to, well, actually work. It's no longer marked as experimental.
* Consistently use "Wi-Fi" everywhere.
* On Kobo/Cervantes/Sony, implemented a "Kill Wi-Fi connection when inactive" system that will automatically disconnect from Wi-Fi after sustained *network* inactivity (i.e., you can keep reading, it'll eventually turn off on its own). This should be smart and flexible enough not to murder Wi-Fi while you need it, while still not keeping it uselessly on and murdering your battery.
(i.e., enable that + turn Wi-Fi on when off and enjoy never having to bother about Wi-Fi ever again).
* Made sending `NetworkConnected` / `NetworkDisconnected` events consistent (they were only being sent... sometimes, which made relying on 'em somewhat problematic).
* restoreWifiAsync is now only run when really needed (i.e., we no longer stomp on an existing working connection just for the hell of it).
* We no longer attempt to kill a bogus non-existent Wi-Fi connection when going to suspend, we only do it when it's actually needed.
* Every method of enabling Wi-Fi will now properly tear down Wi-Fi on failure, instead of leaving it in an undefined state.
* Fixed an issue in the fancy crash screen on Kobo/reMarkable that could sometime lead to the log excerpt being missing.
* Worked-around a number of sneaky issues related to low-level Wi-Fi/DHCP/DNS handling on Kobo (see the lengthy comments [below](https://github.com/koreader/koreader/pull/6424#issuecomment-663881059) for details). Fix #6421 
Incidentally, this should also fix the inconsistencies experienced re: Wi-Fi behavior in Nickel when toggling between KOReader and Nickel (use NM/KFMon, and run a current FW for best results).
* For developers, this involves various cleanups around NetworkMgr and NetworkListener. Documentation is in-line, above the concerned functions.
2020-07-27 03:39:06 +02:00
Martín Fernández
fa55152465
Handle all possible Android configuration changes without recreating the activity (#6416) 2020-07-22 15:26:53 +02:00
Martín Fernández
9bee4e495a mac app fixes 2020-07-22 14:41:11 +02:00
Thomas Spurden
201d3d8ad1
remarkable: add more detail to README about launcher (#6397) 2020-07-20 12:33:09 +02:00
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>.
2020-07-17 23:39:30 +02:00
Martín Fernández
1adea4a497 Add macOS target
Co-authored-by: Jason Benwell <jbenwell@hotmail.com>
2020-07-11 01:29:49 +02:00
Martín Fdez
7094519e1b android: support for native surface rotation 2020-07-09 01:08:47 +02:00
Martín Fdez
8e61a8f285 disable runtime behaviour changes on fdroid 2020-06-24 12:49:14 +02:00
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
```
2020-06-20 18:06:24 +02:00
NiLuJe
416c1c7356
More robust way to detect our own path on Kobo (#6283)
* More robust way to detect our own path on Kobo

Should take care of all the weird and interesting ways people manage to
find to break it...

NOTE: "$(dirname $(realpath "${0}"))" works, too, but I'm not sure if
really old devices ship with the realpath applet...

* Abort early if KOREADER_DIR is null
2020-06-20 17:15:55 +02:00
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
2020-06-19 21:23:47 +02:00
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)
2020-06-15 07:43:37 +02:00
Martín Fdez
835f9f62c6 fix ANRs in Kosync plugin login/register 2020-06-13 19:05:10 +02:00
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
2020-06-13 01:56:36 +02:00
NiLuJe
21847dfb40
Don't exit KUAL on the Voyage (#6233)
This should allow WhisperTouch support to stay enabled, allowing
consistent button behavior.

c.f., https://github.com/koreader/koreader/issues/6038#issuecomment-612564693

Fix #6038

(Requires today's KUAL build, Booklet only).
2020-06-05 02:39:58 +02:00
Martín Fernández
879f8a7624
[Desktop] Fix missing glyphs by packaging freefonts again (#6218)
Also disable battery completely from defaults/option in desktop linux as it always return 0%
2020-06-01 08:07:42 +02:00
NiLuJe
dd0cdb9dcb
[Kindle] Don't resize the titlebar on FW >= 5.12.4 (#6204)
This apparently fatally upsets the WM on FW >= 5.12.4

I don't have the HW to test it, and I've been saying FW 5.12.x is evil
from the get go, so, eh.

Re #6117
2020-05-29 04:05:07 +02:00
NiLuJe
799a68ef59
Kill the RMSDK, too. (#6179)
It's a big pile 'o RAM we could use.
Plus, it might be causing bad interactions with DRM if we keep it around.
2020-05-24 09:43:56 +02:00
NiLuJe
e4d3b266ef
Some more Kobo startup script tweaks (#6147)
* Simplify env siphoning some more

* Nope, shellcheck, quoting this breaks it.

(it preserves the LNs instead of abusing them as free field separators with word splitting).

And, while this does break on env vars with spaces (since they'll be
unquoted), that was already the case of the xargs approach.
If we had read -d & printf %q, we could go with a pure shell approach,
but we don't ;).

* Document a working quoted variant.

For science!
2020-05-14 22:45:24 +02:00
Martín Fernández
4d8cf983e2
Debian - fix some lintian errors (#6099) 2020-05-14 14:26:00 +02:00
NiLuJe
12675be065
Minor Kobo startup script cleanups (#6144)
* Minor tweaks to Kobo env setup

* Bump base

(Pickup https://github.com/koreader/koreader-base/pull/1099)
2020-05-13 02:22:51 +02:00
NiLuJe
f9889cef22
Tweak the post-OTA warning on Kindle (#6120)
Because everything is terrible, and the fuse proxy can apparently still
manage to screw us over.
2020-05-05 17:59:28 +02:00
NiLuJe
be72203b83
Minor Kobo startup script cleanups (#6102)
* Start re-factoring the launcher detection code in order to future-proof
it
2020-04-29 17:50:29 +02:00
Martín Fernández
9a789335c3
mobiscribe: add full screen update support (#6051) 2020-04-14 20:27:58 +02:00
NiLuJe
bb39853521
[Kindle] Try harder when restoring the title bar (#6009) 2020-03-29 05:39:41 +02:00
NiLuJe
0b898624ac
[Kindle] More accurate on/off FL detection/toggle (#5989)
* Kindle FL shenanigans

Either fix #5986, or break a whole crapload of weird corner-cases.
Possibly the insane AutoFrontLight checks.

* Make fl step 0 usable on devices where 0 doesn't turn the light off.

By fudging an extra step on our own side.

* Also, add some debug logging around wmctrl to try to figure out what's
happening there...
2020-03-26 04:56:34 +01:00
Martín Fernández
e7b191ca6a
android: same version code for all archs (#5972)
+ new Boyue model
2020-03-16 22:57:07 +01:00
NiLuJe
9ce22f53b9
[Kindle] Hide the status bar on current FW, too. (#5943)
Via wmctrl
2020-03-15 01:28:37 +01:00
Martín Fernández
69f4144dc1
[Android] Prevent previous book reopening in some situations (#5880)
Fixes #5877.
2020-02-19 08:50:51 +01:00
Frans de Jonge
5f10e8d6df
Bump luajit-launcher for Package refactor + LuaJIT bump (#5868)
https://github.com/koreader/android-luajit-launcher/pull/224
2020-02-15 21:57:26 +01:00
Matias Nitsche
1417ea94c2 PRSTUX: wifi/suspend fixes 2020-02-13 08:21:24 +01:00
NiLuJe
de15ab3a87
Unbreak OTA on crappy shells (#5850)
* Unbreak OTA on crappy shells

  Very, very old ash versions abort on set -o failures (as mandated by
POSIX, granted). This makes it impossible to reliably catch failures in
a single step.

So do it from the Lua side instead.

Should fix #5844

* Launch the zsync wrapper through bash on Cervantes
2020-02-12 00:07:05 +01:00
NiLuJe
24f1f435de
Log zsync2's output, too. (#5842)
Thanks to our good friend tee ;).

As suggested by @Frenzie on gitter ;).
2020-02-11 17:40:28 +01:00