2
0
mirror of https://github.com/koreader/koreader synced 2024-11-13 19:11:25 +00:00
Commit Graph

2336 Commits

Author SHA1 Message Date
Robert
c7ecd08d9d Menu: new algorithm for multi-lines items (#5496)
(used by bookmarks list and classic file browser)
When text is too long or line too tall:
first: we try to decrease the number of lines (eg from 3 to 2 and from 2 to 1 line)
second: when 1 line is too tall, we try to decrease font size (-1)
And at the end we try to add or remove chars to better fit text.
2019-10-22 12:48:47 +02:00
Frans de Jonge
d1cd5e7ad4
[i18n] Enable Arabic and Esperanto (#5515)
Unfortunately I missed that Arabic has had a few hundred translated strings for a couple of months now.

Cf. <https://github.com/koreader/koreader/issues/5359#issuecomment-544460031>.
2019-10-21 18:40:40 +02:00
poire-z
f05e62c1fb
TextWidget: small refactoring, better handle max_width (#5503)
Lots of code was doing some renderText calls to get the size
of some text string, and truncate it to some width if needed,
with or without an added ellipsis, before instantiating
a TextWidget with that tweaked text string.

This PR fixes/adds some properties and methods to TextWidget
so all that can be done by it. It makes the calling code
simpler, as they don't need to use RenderText directly.
(Additionally, when we go at using Harfbuzz for text rendering,
we'll just have to update or replace textwidget.lua without
the need to update any higher level code.)

Also:
- RenderText: removed the space added by truncateTextByWidth
  after the ellipsis, as it doesn't feel needed, and break
  right alignment of the ellipsis with other texts.
- KeyValuePage: fix some subtle size and alignment issues.
- NumberPickerWidget: fix font size (provided font size was
  not used)
2019-10-21 15:20:40 +02:00
Nick
ef22e85469 UI Changes (#5508)
* Changed File Browser text

KOReader looks nicer than KOReader File Browser,

* Remove the "page x of x" if only one page

Removes it from the bottom of the file browser

* Remove the "page x of x" if only one page

Removes it from the top menu, if there is only one page, why show page 1 of 1

* Renamed ~ to Home

Since the file browser can be considered "Home"

* Added 12 hour time option

Also tweaked the charging icon,  looks nicer than +, tweaked seperator between time and battery, - instead of @
2019-10-21 14:24:29 +02:00
Nick
daacb84114 [UX] Add timeout to Wi-Fi connected message (#5514)
Resolves #5501
2019-10-21 10:06:03 +02:00
Frans de Jonge
761f332d47
[doc] Update InputDialog example (#5510)
Make it work out of the box, add some cross-references, and update a few minor things.

In response to @dontcrash.

Cf. <https://gitter.im/koreader/koreader?at=5dac431978e4974ace8c4213>.
2019-10-20 16:43:28 +02:00
poire-z
7caa21a3fb [chore] Remove uneeded doc_settings:close() (#5504)
When just reading settings, no need to close and
write the file to disk.
2019-10-18 17:23:15 +02:00
NiLuJe
f2f2aa6e4d
Minor state handling tweaks when the footer is disabled/invisible (#5494)
* Don't break `doc_pages` updates when it's completely disabled. (c.f., the commit's comment, doing it on every page turn seems a bit overkill, but I get that it's probably done that way because it was easier ;)).
* Detect the empty footerTextGenerator properly in `_updateFooterText` (it's `""`, not `nil`).
* Abort `_updateFooterText` early when the footer is invisible (and has been for a while/ever, i.e., when not requesting a repaint, like a mode switch would).
* Never send `SetBottomPageMargin` events twice.
* Minor tweaks to touchmenu & configdialog to avoid useless repaints (don't redraw the reader/fm unless we absolutely need to).
* Make sure we show the progress bar alone instead of nothing when disabling the last enabled mode in the menu.
2019-10-15 21:57:51 +02:00
Martín Fernández
87334801ea android: fix ko paths when primary storage is a SD card 2019-10-14 09:11:58 +02:00
Robert
5209493ba8 [UX] Option to show progress bar at the bottom of the screen (#5442) 2019-10-10 17:02:28 +02:00
Frans de Jonge
99495aaed4
[Android, fix] Revert slightly more of the Noto business (#5463)
Follow-up to #5458. Cf. https://github.com/koreader/koreader/issues/5381#issuecomment-539873843.
2019-10-09 17:03:51 +02:00
Martín Fernández
b75fec4971 tweak timeouts, add haptic feedback support
Co-Authored-By: Frans de Jonge <fransdejonge@gmail.com>
2019-10-08 18:22:56 +02:00
yparitcher
8ed088159c [Plugin] Per directory defaults (#5428) 2019-10-08 17:14:38 +02:00
Max CW
a7ff9ba0dc ImageViewer: start with image fullscreen with no buttons shown (#5446)
Tap any part of screen to toggle bottom buttons visibility.
Swipe south to quickly close it (as long as image is scaled
to fit, and there's no need for panning).
2019-10-08 15:56:08 +02:00
Mustafa Ali Mutlu
513fd807b0 Fix frozen confirmbox when keyboard shown (#5452) 2019-10-04 23:29:07 +02:00
Robert
7badb67e3d Fix crash on book status change (#5453) 2019-10-04 23:06:54 +02:00
Robert
056a4f9129 Fix: Crash toggleswitch when args are empty (#5438)
Fix: #5434
2019-09-30 11:18:39 +02:00
poire-z
3e3b00429f
EPUB: more support for RTL documents (#5436)
bump crengine: enhanced RTL block rendering.
Includes:
- Re-enable: Use the same FT load flags in HB as in FT
- Avoid redundant calls to getStyle()
- CSS: parse and store "direction:"
- Enhanced block rendering: handle RTL direction
- Enhanced block rendering: handle RTL tables
- Pagesplitting: account for lines' text direction
- CSS: add support for more pseudo-classes
- epub.css: a few updates for RTL documents
- Fix LVDocView::getBookmark() which could be slow or wrong

Add a few style tweaks useful to RTL readers.

Wikipedia Save as EPUB: build proper RTL documents from
persian, arabic, hebrew (and others) Wikipedia articles.
2019-09-29 23:02:54 +02:00
Frans de Jonge
f7861bc1eb
[feat] Add haptic feedback (#5380)
References <https://github.com/koreader/koreader/issues/5374>.
2019-09-29 15:42:05 +02:00
Robert
a934d2d52e [UX] Add fine tune for zoom(dpi) and font size (#5432)
Close: #5312
2019-09-27 12:58:40 +02:00
Frans de Jonge
d0f95ec669
[UX] Use ProgressWidget in frontlight (#5373)
This makes it behave like a pretty decent slider.

Cf. <https://github.com/koreader/koreader/issues/5314>.
2019-09-27 00:38:44 +02:00
Robert
3de3ea04ff [UX] Better align buttonprogress in configdialog (#5427)
Similar to #5420
2019-09-26 11:46:23 +02:00
Robert
67abf9a26a Better align toggleswitch in configdialog (#5420) 2019-09-25 19:44:57 +02:00
Robert
02218cb9e2 [UX] Add fine tune in contrast (#5413) 2019-09-24 00:24:45 +02:00
yparitcher
31b9f78384 [UX] Add Hebrew keyboard (#5414) 2019-09-22 22:21:00 +02:00
Frans de Jonge
d456a076af
[feat, UX] Ignore hold corners (#5404)
Closes <https://github.com/koreader/koreader/issues/5401>.
2019-09-19 16:51:47 +02:00
Robert
28e2e664b1 fix: Truncate text in spinwidget (#5393) 2019-09-19 11:54:53 +02:00
noEmbryo
fe9ab1c77c Move accented Greek characters to the "Accented" group (#5402) 2019-09-19 11:53:14 +02:00
noEmbryo
6a2e4b7a08 Update el_keyboard.lua (#5400)
Set the Greek characters as the default

Cf. https://github.com/koreader/koreader/pull/5318#issuecomment-532705016
2019-09-18 18:50:33 +02:00
Robert
a7c358b080 [UX] Sort footer elements (#5389)
Close: #5329 

- new option for footer - `Sort items`
- new widget `SortWidget`
2019-09-17 14:50:03 +02:00
Robert
e315d8690d [chore] Remove unnecessary indent on new line (#5391) 2019-09-17 14:27:51 +02:00
Robert
b7d464ae4b Set screenshot output folder (#5382)
Close: #4230
2019-09-17 13:01:40 +02:00
Frans de Jonge
5bc9700c24
[feat] Allow setting any document cover as screensaver (#5369)
Cf. suggestion by @KenMaltby in <https://github.com/koreader/koreader/issues/3033#issuecomment-526657352>.
2019-09-16 15:27:49 +02:00
Robert
54568d4dcd [UX] Add fine tune in line spacing (#5375)
See https://github.com/koreader/koreader/issues/5312#issuecomment-528506421

Progress widget has a new extra button ⋮ that triggers SpinWidget.
2019-09-14 16:30:25 +02:00
Frans de Jonge
e257c4e45e
[feat, Kobo] Autoshutdown (#5335)
The methods used here will likely work on most embedded devices, which is why I put them in their own WakeupMgr interface/scheduler module, separate from Kobo.

See https://www.mobileread.com/forums/showthread.php?p=3886403#post3886403 for more context.

Fixes #3806.
2019-09-12 14:15:08 +02:00
Robert
9163a85b3c Messages in numberpicker widget (#5353)
See: #5342
2019-09-11 21:39:58 +02:00
Frans de Jonge
07116b9898
[fix] Add keyboard layout to filemanager menu (#5338)
Overlooked in <https://github.com/koreader/koreader/pull/5318>.
2019-09-07 20:49:44 +02:00
Frans de Jonge
17e437dbd0
[UX] Allow keyboard layout selection (#5318)
Fixes <https://github.com/koreader/koreader/issues/3998>.

This isn't quite what I want but I've been letting this slip for
too long due to fancier keyboard interaction concepts.
2019-09-06 17:01:37 +02:00
Martín Fernández
cb2a3d9e72 Cervantes: Add back to stock reader (#5316) 2019-09-04 20:54:43 +02:00
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.
2019-09-04 20:52:24 +02:00
Frans de Jonge
2cd9b50137
[Android] Don't ship Noto (#5310)
Follow-up to <https://github.com/koreader/koreader/pull/5252>. This greatly reduces the Android package size.

See discussion in <https://github.com/koreader/koreader/pull/5264#issuecomment-525517001>.
2019-09-04 20:50:25 +02:00
NiLuJe
d66cf7ab61 [fix] Allow setting a fine-tuned font size as default (#5306)
And a couple bugfix this unearthed:

* Always set the default as the *current* value, no matter what (by chance, this was not an issue for margins).
* Don't crash on the hold gesture in the -/+ buttons for the horizontal margins (regression since #5303).
2019-09-03 13:41:15 +02:00
Frans de Jonge
49589901b1
[fix] Let UIManager handle suspend logic (#5304)
See <https://github.com/koreader/koreader/issues/2431#issuecomment-526925910>.

Supersedes <https://github.com/koreader/koreader/pull/5302>.
2019-09-01 21:37:08 +02:00
Frans de Jonge
4cdc3ab99b
[feat, plugin] Add AutoTurn (#5295)
Fixes <https://github.com/koreader/koreader/issues/3019>.
2019-09-01 21:30:19 +02:00
Robert
b038fa3046 [UX] Add fine tune buttons to horizontal margins (#5303)
Similar to top and bottom margins I add fine tune buttons to L/R margins.
2019-09-01 21:26:11 +02:00
Frans de Jonge
0b62fc56ee
[doc] Add NumberPickerWidget developer docs (#5298) 2019-09-01 15:35:29 +02:00
Frans de Jonge
37bab4fe89
[fix] Pass plain link to link:onGotoLink (#5286)
Internal links carry more baggage than external ones.

See <https://github.com/koreader/koreader/pull/5282#issuecomment-526813719>.
2019-08-31 12:43:19 +02:00
Frans de Jonge
258b13d344 [fix] Fallback in case of missing HOME variable 2019-08-30 19:53:36 +02:00
Frans de Jonge
860759cd48 Support loading GUI fonts from any known folder 2019-08-30 19:53:36 +02:00
Frans de Jonge
a47b3b1a5b
[doc] Add internal documentation references (#5285)
Also some minor grammatical fixes.
2019-08-30 15:06:30 +02:00
Frans de Jonge
f1f6eebce0
[feat] Add MuPDF EPUB/FB2 dynamic font size (#5282)
Closes #4368.
2019-08-30 13:47:51 +02:00
Frans de Jonge
ac16c8d547
[UX] Treat inverse_reading_order as a proper setting (#5284)
This is supported by ReaderPaging and ReaderRolling, but the menu entry was only shown in ReaderPaging.

Hold now sets the global default.

Fixes <https://github.com/koreader/koreader/issues/4983>.
Fixes <https://github.com/koreader/koreader/issues/4089>.
2019-08-30 13:25:51 +02:00
Frans de Jonge
cfa73be940
[feat, Kobo] Implement shutdown from suspend (#5280)
This allows to shutdown straight from suspend just like Nickel.

Fixes <https://github.com/koreader/koreader/issues/2431>.
2019-08-29 22:02:08 +02:00
Frans de Jonge
be87fb27a0
[chore] Convert a couple more todos (#5267)
Cf. <https://github.com/koreader/koreader/pull/5244>.

Also update check.
2019-08-26 15:49:50 +02:00
Frans de Jonge
2c555830f9
[feat, i18n] Implement ngettext (#5257)
Fixes <https://github.com/koreader/koreader/issues/5249>.

See https://www.gnu.org/software/gettext/manual/html_node/Plural-forms.html and https://www.gnu.org/software/gettext/manual/html_node/Translating-plural-forms.html for more information.

Usage:
```lua
local T = ffiUtil.template
local _ = require("gettext")
local N_ = _.ngettext

local items_string = T(N_("1 item", "%1 items", num_items), num_items)
```
2019-08-24 23:06:06 +02:00
Frans de Jonge
6ed58346a1
[i18n] Add translator notes (#5250)
Thanks to <https://github.com/koreader/koreader/pull/5237> we can now  extract the knowledge currently embedded in Transifex and put it directly in our source. This positively affects <https://github.com/koreader/koreader/issues/3754>.

Translation instructions and knowledge that comes out of localization-related questions should be preserved in the source, because Transifex is too ephemeral. For example, the links from <https://github.com/koreader/koreader/pull/2290> are no longer accessible. Even when they are, it's quite useful to have this information around while dealing with the code as well, and I also hope it'll be informative to contributors who seldom visit Transifex.

This commit also makes a few minor changes to obviate the need for comments where possible.
2019-08-24 09:25:38 +02:00
Frans de Jonge
a2dcfe9aec
[doc] Tag @todo, @fixme and @warning (#5244)
This commit standardizes the various todos around the code a bit in a manner recognized by LDoc.

Besides drawing more attention by being displayed in the developer docs, they're also extractable with LDoc on the command line:

```sh
ldoc --tags todo,fixme *.lua
```

However, whether that particular usage offers any advantage over other search tools is questionable at best.

* and some random beautification
2019-08-23 19:53:53 +02:00
Robert
dc6d4085ea Fix: Unable to hold top right corner in FileManager (#5248)
Close: #5247
2019-08-23 19:48:55 +02:00
Frans de Jonge
182e981f4d
[fix, i18n] Translate "not set" (#5246)
Somehow this one slipped through the cracks for years.
2019-08-23 15:06:02 +02:00
Frans de Jonge
da988c15de
[CI] Switch to custom xgettext build to extract multiline strings (#5242)
Because let's face it, it just looks much better this way.

Docker image update in https://github.com/koreader/virdevenv/pull/43

Discussion in https://github.com/koreader/koreader/pull/5238#issuecomment-523675211 and https://github.com/koreader/koreader/pull/4524
2019-08-22 17:11:47 +02:00
Edoardo Putti
0906b69c06 [fix] Handle OPDS catalog responses accordingly (#5241)
- handle moved permanently HTTP 301
- handle authentication required HTTP 401
- handle authentication errors HTTP 403
- handle catalog not found HTTP 404
2019-08-22 15:37:17 +02:00
Frans de Jonge
e2ceace302
[fix, CI] Push to Transifex from master, fix multiline strings for xgettext (#5238)
Related to https://github.com/koreader/koreader/pull/5237
2019-08-22 00:12:53 +02:00
Frans de Jonge
fbd331dd07
[i18n] Switch make pot to xgettext (#5237)
This introduces context to our strings to differentiate them when necessary.

The syntax chosen is `C_()`, following [glib](https://developer.gnome.org/glib/2.28/glib-I18N.html#C-:CAPS).

```lua
local _ = require("gettext")
local C_ = _.pgettext

C_("Menu|StyleTweaks|", "Pages")
```

Closes #5232.
2019-08-21 22:18:14 +02:00
Martín Fernández
3a957d71e3 [Desktop] Open writable font dir, toggle system+user/user fonts, fix openLink on mac (#5220)
Fixes #5093
2019-08-20 18:38:02 +02:00
Robert
d9018faa5a [UX] Option to never full refresh (#5227)
Closes #5190.
2019-08-20 15:36:06 +02:00
Robert
c57beada27 [chore] Remove Polish keyboard (#5223) 2019-08-18 12:42:38 +02:00
Robert
939538cc25 [UX] Add gesture - poweroff and restart device (#5202)
Also abstract canRestart, canReboot and CanPowerOff.
2019-08-15 14:49:15 +02:00
NiLuJe
9e4a7797c9
Honor the alpha channel in our icon for the About popup (#5208)
It ends up with a black background otherwise.
(Old regression that dates back to my alpha shenanigans a few months
ago)
2019-08-14 17:01:26 +02:00
noEmbryo
570180196b [UX] Update for the greek popups (#5193)
Just used the north (upper) part of the popup wherever I could, because is more accessible.
2019-08-08 18:38:46 +02:00
Robert
5245bc88ff [UX] Add horizontal edge gestures (#5179) 2019-08-04 19:59:20 +02:00
poire-z
a82d7832b9 Dict lookups: have them always interruptible
They should be now interruptible when fuzzy search is disabled
and on Android.
2019-08-03 20:38:57 +02:00
poire-z
8749a3c5b6 Wikipedia download: increase timeout 2019-08-03 20:38:57 +02:00
Robert
a10fc83a4a Fix: hold bottom left corner doesn't work properly (#5177) 2019-08-03 20:35:48 +02:00
Robert
1743c0ca23 [UX] Extend the touch zone for up button in touch menu (#5175)
See: #5155
Close: #5155
2019-08-03 18:02:45 +02:00
Robert
d3e02d05c6 Fix: set custom screen DPI (#5165)
Settings -> Screen -> Screen DPI
When custom DPI is not set we see ugly information with %1:
2019-08-03 16:45:17 +02:00
Frans de Jonge
ac15143c14
[lang] Rename 'Scroll Mode' to 'Continuous' (#5169)
The current name causes people to think of scrolling, which is slightly awkward on E Ink. For example, see <https://github.com/koreader/koreader/issues/5166#issuecomment-517771475>.

> But this on LCD, not E-ink where the lag is unbearable, especially if you want to correct any scrolling over/undershoot.

Scroll mode is a misnomer. It should be renamed continuous. I use "scroll mode" as the default, but I seldom or never scroll. Conversely, you can still scroll in paged mode if a page is longer than the screen. As far as I'm concerned if you're scrolling (panning) you may be doing it wrong, but to anyone reading: you do you. ;-)
2019-08-02 22:43:26 +02:00
Robert
c6c8c5a037 Add vertical edge gesture (#5156)
* Add vertical edge gesture
* Add left/right edge swipe gesture
* Move kobolight plugin to ReaderFrontlight
* Remove kobolight plugin
2019-08-01 19:08:09 +02:00
Martín Fernández
91b2faae6a android: add an option to ignore volume keys or use them to turn pages 2019-08-01 19:05:23 +02:00
NiLuJe
e9eca55d90
Minor auto_restore_wifi tweaks (#5143)
* Try to make sure restoreWifiAsync eventually sends a NetworkConnected
event...

re: #5109

* Take a page from @shermp's book, and make sure wpa_supplicant managed to
connect to the AP before acquiring an IP.
Tear down WiFi modules in case of failure.
c.f., https://github.com/shermp/Kobo-UNCaGED/pull/21

* Don't let restore-wifi-async.sh enable WiFi behind our back when we're
killing it to start Nickel...

* Don't even call ping if there's no default gw
2019-07-31 01:00:51 +02:00
Robert
a38ba01b6e [chore] SpinWidget default_text instead of defaults_text (#5153) 2019-07-29 11:48:07 +02:00
Robert
3a4ac1964c [UX] Offer to restart KOReader after update (#5150)
Adding the option to restart KOReader after update.
Close: #5144
2019-07-29 09:54:28 +02:00
Robert
b71d0a19b8 [UX] Set font size for menu items (#5146)
Ref: #4757
This PR add option to changing the font size of items in menu widget (filemanger in classic mode, TOC) in single line mode.
Close: #4757
2019-07-28 08:37:43 +02:00
Martín Fernández
cd0f1acd7f android: add support for different screen timeout setups 2019-07-26 23:16:23 +02:00
Robert
1f6af80817 [feat] Make gesture intervals configurable (#5138)
Discussion: #4842
Close: #4842
2019-07-24 14:31:20 +02:00
Frans de Jonge
55973771f9
[lang] Minor CSS tweaks stylistic improvements (#5128)
Pluralizing paddings like this is a bit unidiomatic, and that "all" seems a bit redundant.

Cf. <https://github.com/koreader/koreader/pull/5127>.
2019-07-20 17:37:06 +02:00
Robert
39bf5a4677 [feat] File manager - add option to view unsupported files (#5129)
New option to show all files (also not supported by KOReader) in file manager. Default this option is disabled.
2019-07-20 17:36:41 +02:00
poire-z
fd5e4df142 Style tweaks: adds Ignore all vertical/horizontal margins/paddings
Provides a bit more granularity than the generic "Ignore all
publisher margins" - and allow the same for paddings for books
that wrongly use paddings for that effect.
2019-07-19 22:31:28 +02:00
poire-z
0f3f2b660b TOC: baseline align chapter name and page number 2019-07-19 22:31:28 +02:00
sladflob
4717d6f70a Update screensaver.lua (#5123)
Change to use Math.round()
2019-07-19 05:52:12 +02:00
sladflob
912e617377 [feat] Add percentage read (and other book information) to sleep message (#5121)
Add checking for escape sequences for current/total page, percentage read, and document title.
2019-07-18 14:11:21 +02:00
poire-z
642aed240c Update Wikipedia EPUB stylesheet to allow floating thumbnails
Main thumbnails and galleries items will float in "book" and
"web" modes.
Also use a honest User-Agent when requesting Wikipedia to
comply with their policy and avoid rate limitation (and
broken images).
2019-07-15 20:14:33 +02:00
poire-z
aedc5a4806 Style tweaks: update for latest epub.css, added a few more
- Updated "Avoid page break" tweaks to work on our latest epub.css.
- Added "New page on headings>" menu, as we no more break page on
H1, H2, H3 in EPUBs.
- Added "Center headings" as we no more have them centered.
- Added "Pure black and white" which can make some documents
  more readable.
2019-07-15 20:14:33 +02:00
poire-z
9f3c85ed83 cre: toggable enhanced rendering (floats, collapsed margins...)
Adds "Render mode" toggle with 4 modes, to enable some or all
of crengine's new enhanced block rendering features.
Use "legacy" rendering for previously opened books to not mess
with bookmarks, and "web" (all of the new features) for new books.

Also make available the added "HTML5" stylesheet to the Style menu.
2019-07-15 20:14:33 +02:00
Martín Fernández
338bc8cced fullscreen toggle for Jelly Bean devices 2019-07-06 17:09:18 +02:00
Robert
7d093fc0b9 [feat] Delete book after reading (#5107) 2019-07-05 10:35:23 +02:00
NiLuJe
38e7975728
More robust Gyro toggle (#5104)
* Make toggling Gyro events more robust

Actually ask to turn it on/off depending on the setting, instead of a
blind toggle

A quick succession of suspend/resume events could otherwise leave it
in an unexpected state (i.e., off when it should have been on).
2019-07-01 17:12:24 +02:00
NiLuJe
a13f9835be Tweak SleepCover handling a bit on Kobo
Specifically, how we ignore it.
No longer do anything specific and potentially racy, and let the
unexpected wakeup handler take care of putting us back to sleep.

Also add an option to only ignore wakeup events from the SleepCover.

Re #5098
Re #5087
2019-06-29 19:53:14 +02:00
NiLuJe
2ab3e48286 Make sure we only pass a single IP to ping
For some mysterious reason, I have a duplicate default gateway on my
Forma, one with no metrics, and a proper one.
This ensures we pick the proper one.

I'm fairly sure this is temporary insanity on the part of my device,
but, still, it can't hurt.

route -n:
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.0.1     0.0.0.0         UG    0      0        0 eth0
0.0.0.0         192.168.0.1     0.0.0.0         UG    208    0        0 eth0
192.168.0.0     0.0.0.0         255.255.255.0   U     208    0        0 eth0

ip r:
default via 192.168.0.1 dev eth0
default via 192.168.0.1 dev eth0  metric 208
192.168.0.0/24 dev eth0  src 192.168.0.49  metric 208
2019-06-29 19:53:14 +02:00
NiLuJe
2e7a910178
Some BookStatus QoL tweaks (#5100)
* Make the cover thumbnail respect the cover's AR in the widget
* Add a "Mark as read/unread" button in the FM's longpress menu.
* Make sure the cover_info cache is wiped if necessary (sidecar purge/BookInfo cache clear).
2019-06-28 04:46:16 +02:00
poire-z
03bbba249a
MovableContainer: avoid refresh glitches on close (#5094)
The contained widget may not have integer position/dimen
(which should probably be fixed in those that don't ensure
that), and our maths could eventually make them even more
shifted by fractional parts.
In the end, when closing the widget, the refresh code may
miss painting/cleaning 1px and leave a border of the widget
on the screen.
2019-06-26 13:48:02 +02:00
NiLuJe
4ccb1f3dd5
Allow disabling automagic image inversion in Nightmode in CRe (#5095)
* Allow disabling automagic image inversion in NightMode

Fix #4986
2019-06-26 00:23:41 +02:00
Frans de Jonge
fca51757af
[fix] OPDS crash with fewer than 4 servers (#5092)
Regression introduced in <https://github.com/koreader/koreader/pull/4249>.

Fixes <https://github.com/koreader/koreader/issues/5091>.
2019-06-25 19:50:01 +02:00
Martín Fernández
75ff5dcaae Add Device:Info for android and use it in report a bug infomessage.
Move local function getCodename to top, use android.app.activity.sdkVersion directly,
instead of relying on Device.firmware_rev
2019-06-21 19:55:19 +02:00
Martín Fernández
c60d672b04 bump base & luajit-launcher: workaround for buggy firmwares and more 2019-06-13 22:16:58 +02:00
Frans de Jonge
5df31f2dbf
[doc, fix] Some documentation issues (#5066)
Fixes #5065.
2019-06-09 15:50:22 +02:00
NiLuJe
89e002f236
Minor networking fixes on legacy Kindles (#5059)
* Allow toggling WiFi & Suspend on legacy Kindles
* Fix ping invocations on Legacy Kindles
* Don't crash when disabling WiFi on legacy Kindles
2019-06-05 21:36:38 +02:00
limerainne
53b6e3d018 [i18n] Add Korean keyboard (2-beolsik) (#5053) 2019-06-03 11:03:28 +02:00
limerainne
98b681bb4f [fix] InputText: fix ignoring first char when carat not in front of hint (#5052) 2019-06-01 16:48:35 +02:00
poire-z
34e6f41e05
cre: fix 2 footnotes issues, bump crengine (#5031)
- Popup footnotes: workaround strange behaviour of MuPDF
  which is adding some unwanted margin above elements
  with an "id=" attribute.
- In-page footnotes: also remove any left and right margin,
  to keep footnotes aligned with the main text.
  Also add 2 classnames (witnessed in quite a few recent
  french books) to the list of classic classnames.
- Also bump crengine: CSS: fix parsing of multi classnames
  and attributes selectors
2019-05-18 01:29:51 +02:00
Frans de Jonge
8815cbe07a
[fix, chore] Abstract filename logic in util.getSafeFilename() (#5026)
Fixes https://github.com/koreader/koreader/issues/5025

The OPDS browser was doing some fancier stuff in a way that should be abstracted away in util (because it applies anywhere files will be saved):

eace8d25c1/frontend/ui/widget/opdsbrowser.lua (L482-L491)
2019-05-14 19:10:41 +02:00
Frans de Jonge
5d7dbb4466
[UX] Update Greek keyboard with swipes & popup (#5028)
Closes #5023. Thanks to @noembryo.
2019-05-14 16:30:21 +02:00
Frans de Jonge
2968f558eb
[fix, UX] Ignore first hold release when keyboard opened with hold (#5011)
Fixes #4902.
2019-05-08 10:13:44 +02:00
poire-z
7c53fcd922 CRe margins: hide bottom menu on change (#5000)
So we can immediately see how's the bottom margin.
2019-05-05 10:15:13 +02:00
NiLuJe
f3decdc26c [fix] Restore PAGE_MARGIN string (#4993)
It's used by KOptConfig

Fix #4992
Regression since #4945
2019-05-02 19:06:57 +02:00
poire-z
bf07c44009
CRe margins: add toggle to sync top and bottom margins (#4990)
Also fix DogEar size update on margin change.
Also re-order cre bottom tabs to be like with kopt.
2019-05-01 22:18:50 +02:00
NiLuJe
888d3591b2
Give more control over CRe margins (#4945)
Without having to resort to weird custom defaults.

* Split the current margins setting in three:
  * Horizontal margins (because you generally want those two to be balanced).
  * Top margin & Bottom margin (because you may want to tweak those separately to deal with quirky status bar/final line shenanigans).

* Also, add a "Reclaim bar height from bottom margin" toggle to the status bar menu, to optionally make sure the status bar won't eat into the bottom margin.

* Includes a free fix to diacritics popup refresh handling in the keyboard ;).
2019-05-01 02:09:01 +02:00
Frans de Jonge
3f670baaa2
[UX] Keyboard popup: add X (#4977) 2019-04-27 09:04:48 +02:00
Qingping Hou
080c079d01 chore: add test for screen color toggle 2019-04-24 21:09:23 +02:00
Frans de Jonge
4782f5ffc1
[UX] Keyboard popup: add = (#4950)
As suggested by @Biep in https://github.com/koreader/koreader/pull/4889#issuecomment-485158316
2019-04-20 23:36:52 +02:00
Frans de Jonge
8ec42d1e60
[fix] Actually commit V popup data (#4940)
Overlooked in https://github.com/koreader/koreader/pull/4938
2019-04-19 14:17:18 +02:00
NiLuJe
9134594119
Allow toggling CRe's new dithering & scaling (#4922)
Smooth scaling toggle is per document, in the gear tab.
Dithering is in the Dev top menu ;).
2019-04-18 23:26:53 +02:00
Frans de Jonge
6203fbb633
[UX] Keyboard popup: add V diacritics (#4938) 2019-04-18 21:03:17 +02:00
Frans de Jonge
c053e48526
[UX] Keyboard popup: add Y diacritics (#4935) 2019-04-17 21:21:28 +02:00
Frans de Jonge
04c39a8591
[UX] Keyboard popup: add R diacritics (IPA edition) (#4934) 2019-04-17 20:47:30 +02:00
Frans de Jonge
1299ae93a8
[UX] Keyboard popup: add P (#4932)
Only Greek pi seems to make sense here.
2019-04-17 14:37:31 +02:00
Frans de Jonge
39b48d56c0
[UX] Keyboard popup: add N and M diacritics (#4930) 2019-04-16 20:44:22 +02:00
Frans de Jonge
7e06db9c2a
[UX] Keyboard popup: add H and J (#4920) 2019-04-14 18:39:09 +02:00
Frans de Jonge
a507f753fb
[UX] Keyboard popup: minor changes to S (#4918)
Split sigma into upper and lowercase to make room for esh.
2019-04-14 09:50:39 +02:00
Frans de Jonge
06a73ba550
[UX] Keyboard popup: add F and G (#4914) 2019-04-13 20:00:36 +02:00
Frans de Jonge
742453a047
[UX] Keyboard popup: add Q and W (#4913)
Mainly for easy swipe access to `[]{}`.
2019-04-13 15:18:05 +02:00
Frans de Jonge
762b4bef26
[UX] Keyboard popup: add C diacritics (#4912) 2019-04-13 11:40:31 +02:00
Frans de Jonge
d27393d723
[UX] Keyboard O popup: add Ø (#4911)
Danish/Norse and IPA close-mid front rounded vowel.

Requested by @gerhaher over in https://github.com/koreader/koreader/pull/4907#issuecomment-482784459
2019-04-13 09:51:52 +02:00
Frans de Jonge
ad62cc23e2
[UX] Keyboard popup: add Z diacritics (#4910) 2019-04-12 23:02:48 +02:00
NiLuJe
f63ca005c6 [fix] Update AutoWarmth state on resume (#4901)
Regression since #4871
Fix #4895

* Hide the "Configure" button in the FL/NL widget on devices where it
won't do anything

(i.e., those w/ a NL mixer).
2019-04-12 22:46:10 +02:00
Frans de Jonge
74e14a927c
[UX] Keyboard popup: k and l diacritics (#4908)
There doesn't seem to be much going on in k-land, and I like using proper hyphens and dashes.
2019-04-12 22:20:14 +02:00
poire-z
d3aaff135c
Update FR and ES keyboards (#4906)
Extend the FR and ES keyboards from the EN one, and
just tweak what has to be changed.
This will allow them to stay in sync with the EN keyboard's
recent and futur developments of key popups.
Also make the FR keyboard a bit more AZERTY.
2019-04-12 21:12:33 +02:00
Frans de Jonge
6f8a077f32
[UX] Keyboard popups: stubs for the rest of the vowels (I, O, U) (#4907)
With the basic pattern of diacritics and special characters established by now, the basic diacritics + IPA don't need too much thought for an initial draft.

Cf. https://github.com/koreader/koreader/pull/4906#discussion_r274966796
2019-04-12 18:28:05 +02:00
Frans de Jonge
9b26178118
[UX] Keyboard popup: add T diacritics (#4905)
The Ťť is used in Czech and Slovak. The t-comma Țț is Romanian. The rest is a combination of IPA, Greek, and why not.
2019-04-12 17:53:19 +02:00
Frans de Jonge
58d88b12ab
[UX] Keyboard: add d diacritics (#4898)
Eth (ð) is an important letter for people who like Old English (me), and for IPA.

Ď/ď is Czech/Slovak.

Đ/đ is sometimes an alternative rendering of ð, maybe because you could type it on a traditional typewriter. It's also Slavic and something Vietnamese.

Delta is an often-used Greek letter.
2019-04-11 18:22:32 +02:00
Frans de Jonge
021f1d9107
[fix] VirtualKeyboard: always fall back to en (like it used to) (#4900)
Fixes #4899.
2019-04-11 14:01:58 +02:00
Frans de Jonge
4ba826ca3c
[fix] VirtualKeyPopup close refresh (#4897)
See https://github.com/koreader/koreader/pull/4891#issuecomment-481866246
2019-04-11 14:00:59 +02:00
Frans de Jonge
c35f96c819
[UX] VirtualKeyPopup: add B, comma, and period popups (#4893)
Adds B because it's on the same row as a comma.
2019-04-11 10:32:13 +02:00
Frans de Jonge
3f59dee721
[UX] VirtualKeyPopup: variable size (#4892)
This makes the code a lot more complex, but it looks much better.
2019-04-11 10:12:29 +02:00
Frans de Jonge
fd50dc34a6
[UX] VirtualKeyPopup: close on hold release (#4891)
As suggested by @poire-z.
2019-04-10 17:05:02 +02:00
Frans de Jonge
2d5cbafd27
[UX] Keyboard: add S diacritics (#4890) 2019-04-10 15:47:15 +02:00
Frans de Jonge
80953b5c4c
[UX] Keyboard: add @ and A diacritics (#4889)
Also rename std to en_keyboard.
2019-04-10 12:54:28 +02:00
Frans de Jonge
69e3830bc1
[UX] VirtualKeyPopup: respond to hold & pan release (#4887)
As suggested by @poire-z in https://github.com/koreader/koreader/pull/4886#discussion_r273569802

This is actually much better than before.

It subtly changes the behavior of every key this way, but I don't think that's a bad thing.
2019-04-09 22:19:56 +02:00
Frans de Jonge
23f903274a
[UX] Keyboard character selection popup (#4886) 2019-04-09 21:29:36 +02:00
Frans de Jonge
2760b98582
[UX] Add keyboard swipes (#4884)
Only the `e` and `E` are added in this initial commit.
2019-04-09 10:40:39 +02:00
NiLuJe
4005bf69aa
Slightly less crappy Nightmode (#4871)
Companion PR to https://github.com/koreader/koreader-base/pull/884
* Basically flags devices known to be stable when using PxP inversion.
* Plus, random fix for #4870 ;).
* A few FrontLight tweaks & cleanups on Kobo:
  * Moved the Kobo-specific startup status insanity to Kobo-specific init
  * Made turnOff/turnOn frontlight do a smooth ramp down/up
  * On Kobo, use turnOff/turnOn for suspend/resume, to get that smooth toggle
  * On Kobo, for NaturalLight w/ a mixer, only set warmth for setWarmth, and only set Brightness for setBrightness, otherwise, it tried to set both with not in-sync values, which made the FL widget jittery.
2019-04-08 23:05:08 +02:00
Frans de Jonge
8466af2c5b
[UX] Gesture manager: corner gestures (#4878)
Adds configuration to the top corners as well as the additional gestures hold and two-finger tap.

Deprecates `DTAP_ZONE_FLIPPING` and `DTAP_ZONE_BOOKMARK`.

Fixes #4877.
2019-04-07 19:00:15 +02:00
Frans de Jonge
22db71c075
[fix] OPDS last-modified check (#4874)
Fixes #4873. Unfortunately this will introduce a slight delay but I don't see any other quick & reasonable solution.
2019-04-05 08:50:33 +02:00
poire-z
5c38bcb8b7 [UX] Links menu and handling tweaks (#4867)
- Removed "Swipe to follow first link on page" menu item and
  handling code, as it feels not really as practical as
  "Swipe to follow nearest link".
- Removed recently added "External link action", as we can
  just always present a popup with the url and the available
  actions.
- Generic handling of these actions in onGoToExternalLink(),
  so they are proposed on the Wikipedia lookup popup too.
- Allow external link on PDF documents (previously, only
  internal links were handled).
- Have "Ignore external links on tap" available on all
  document types.
- Added "Ignore external links on swipe" (default to true,
  the current behaviour).
- Added multiswipe gesture "Follow nearest internal link"
  (the existing "Follow nearest link" now follows the
  nearest external or internal link)
- ButtonDialogTitle: added an option to look a bit more
  alike ConfirmBoxes.
- Footnote popups: fix link unhighlight when tap on external link.
2019-04-02 18:27:35 +02:00
Frans de Jonge
0a314e3ab8
[fix] widget/scrollhtmlwidget: default_font_size same as infofont and Screen:scaleBySize() (#4864)
Otherwise it's:

1. Too small on virtually all devices due to a lack of scaling.
2. Unusably small by default.

It's currently scaled by the callers (dictquicklookup & footnotewidget) based on other properties, but you shouldn't have to change it from the default just to get something usable. ;-)
2019-03-31 22:00:07 +02:00
poire-z
8f019b8183 Night mode: keep some images non-inverted
Have the code pre-invert some images when in night mode,
so they get inverted back to normal by night mode.
This will allow images to be displayed normally in
the following contexts:
- images in credocument pages
- long-press on images in credocument viewed in ImageViewer
- cover thumbnails in File browser and History
- full size covers when viewed in ImageViewer
- images in Wikipedia lookup results
2019-03-30 01:30:46 +01:00
poire-z
e2b4099228 Footnote popups: fix link unhighlight when closing with keys 2019-03-30 01:30:46 +01:00
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).
2019-03-29 20:12:09 +01:00
NiLuJe
7210fb478d
Faster blitting @ BB8/BBRGB32 when no processing is needed (#4847)
* Pickup the eponymous blitting performance tweaks from koreader/koreader-base#878
* Cleanup BitOpts usage (require & cache)
* Unify oddness checks (MOD -> AND)
* Enforce the native Portrait orientation on Kobo (except @ 16bpp, i.e., KSM w/ 8bpp swap disabled), to allow for faster blitting when unrotted.
* Switch CRe BB to 32BPP on color screens
* Minor cleanups
2019-03-27 22:50:44 +01:00
NiLuJe
fe3fc78171 Move AutoSuspend menu to the Plugin itself 2019-03-27 17:34:41 +01:00
NiLuJe
9be3455ccc Don't crash when sizeUtf8Text is called on a nil
By returning a table with the right fields instead of nil.

Re #4845
2019-03-27 17:34:41 +01:00
NiLuJe
783c3fd7dc Allow toggling sleepcover handling from the UI 2019-03-27 17:34:41 +01:00
NiLuJe
860b4b24a0 Allow setting the autosuspend timeout from the UI
Fix #4179
2019-03-27 17:34:41 +01:00
NiLuJe
32c9ea74a6 Ignore the accelerometer while we're sleeping on Kobo
It might cause unwanted wakeups, and even it it doesn't, it just feels
and looks stupid ;).
2019-03-27 17:34:41 +01:00
Frans de Jonge
83cdb9cb9a
[fix] MenuSorter: don't add empty menu item (#4848)
Fixes #4845.
2019-03-27 09:50:25 +01:00
poire-z
b7b4cdd2a7 ConfigDialog: fix possible crash (#4838)
When one has set a default for toggles thad don't have 'values' in
their definitions (possibly only Orientation).
2019-03-25 19:15:29 +01:00
poire-z
cfd562697f
Fix Color rendering toggle not toggable (#4836)
Also refresh screen when toggling.
2019-03-24 21:54:58 +01:00
Galunid
5f44ef5dad [feat] Kindle suspend using lipc (#4825)
Fixes problems with making Kindle go to sleep using menu or gesture manager action.
2019-03-21 11:52:58 +01:00
Frans de Jonge
b1ed2838c8
[UX] Add Device:openLink() stub for Linux SDL (#4822)
References #4821.
2019-03-20 16:58:32 +01:00
NiLuJe
003de939b0 [fix] Properly account for MuPDF feeding us premultiplied alpha (#4807)
* Properly account for MuPDF feeding us premultiplied alpha

* Bump base to pickup necessary backend changes

Also includes a bunch of CMake refactoring
(https://github.com/koreader/koreader-base/pull/865
https://github.com/koreader/koreader-base/pull/867
https://github.com/koreader/koreader-base/pull/868)
2019-03-18 09:35:27 +01:00
poire-z
b16aa79636
ConfigDialog ButtonProgress: black border on default item (#4805)
Make the default (user set, or KOReader's default) item
among the button progress squares shown with a black border.
2019-03-15 23:15:05 +01:00
poire-z
6239d89022
Screensaver: fix crash when "Choose screensaver image" (#4799)
Just switched to use the friendly PathChooser instead of
FileChooser (which is more like a superclass and shouldn't
be used directly).
2019-03-15 14:14:53 +01:00
NiLuJe
645d41eda9
Add more granularity in line-height settings with CRe (#4785)
70 -> 130, in steps of 5 ;).
2019-03-15 00:34:46 +01:00
poire-z
c060595580
ConfigDialog: fix ButtonProgressWidget and some refreshes (#4793)
This internal ButtonProgressWidget widget was behaving
differently from all others (OptionTextItem, OptionIconItem
and ToggleSwitch) by duplicating some code from
ConfigDialog:onConfigChoose() instead of calling it directly.

While making it similar to others, I noticed that onConfigChoose()
did a full repaint, which was necessary for some settings to
be applied (ie: Contrast).
On CreDocument, this full repaint may cause some double drawing
on config changes (ie: Margins, drawing once after margin changes,
and then re-positionning to previous xpointer).
So, make the need for full repaint a condition on KoptOptions.
2019-03-14 22:23:17 +01:00
poire-z
9560bc2061
ConfigDialog: fix some gray mismatch in prev commit (#4797)
Remove gray underline on text items (font size items).
Adjust gray color of ButtonProgressWidget to match the
one of ToggleSwitch (just need to invert it, as it's
used to select button, which cause this color to be
inverted).
2019-03-14 22:09:55 +01:00
NiLuJe
2011cf1ad1 Various blitting related cleanups (#4789)
* Fix the "Enable debug logging" checkbox so that it properly disables "Enable verbose debug logging" when it gets disabled
* Avoid asking ImageWidget for alpha-blending when it's not useful
* Make ImageWidget's alpha-blending code-path double-check that alpha-blending actually is needed, and avoid it if possible
* In the same vein, only do alpha-blending in textboxwidget when absolutely necessary
* Prefer color constants over the gray() method, ensuring that they're part of the eInk palette

Depends on https://github.com/koreader/koreader-base/pull/853

Fix #4774
2019-03-14 20:58:45 +01:00
poire-z
ce3d181e24
cre 2-pages: rename toggle to "Dual Pages" (#4788) 2019-03-13 23:11:51 +01:00
poire-z
22bc9dacb5 cre landscape view: adds 1 page / 2 pages toggable
Adds a toggle switch in the Orientation bottom config menu to
allow showing 1 page or 2 pages when in landscape mode.
Previously, this was hardcoded to be in 2-pages modes only
in some circumstances (device resolution + user dpi).
2019-03-13 22:18:04 +01:00
NiLuJe
930286d3f5 Slightly prettier virtual keyboard (#4776)
Add a thin border around keys (square)
2019-03-12 20:00:06 +01:00
tob1az
89c17092e8 [feat] PocketBook: implement Wi-Fi connection toggling (#4775)
Partially resolves #4747. Will enable switching Wi-Fi on/off in the menu and getting the network status. However, a new Wi-Fi session lasts ~100 seconds and then terminates automatically, apparently, to save the energy. I believe it can be prolonged by some networking activity. Also it is not shut down if the auto suspension is disabled.
2019-03-12 07:05:43 +01:00
Qingping Hou
fc69257660 fix: auto dpi menu checkbox display (#4771) 2019-03-11 10:01:37 +01:00
Frans de Jonge
2536cc2645
[fix] widget/menu: Don't propagate ShowGotoDialog to other widgets (#4761)
Fixes #4760.
2019-03-08 21:52:45 +01:00
Qingping Hou
587758939e split UI agnostic code from font.lua into fontlist.lua 2019-03-03 13:10:45 +01:00
Qingping Hou
bf40b5d5e6 avoid assigning screen as local variable in creoptions 2019-03-03 13:10:45 +01:00
Qingping Hou
dd1ab7b409 bump base to decouple G_reader_settings from core 2019-03-03 13:10:45 +01:00
Qingping Hou
634fed5487 use device instead of canvascontext in UI modules 2019-03-03 13:10:45 +01:00
Qingping Hou
1605409c60 rename runtimectl to document/canvascontext 2019-03-03 13:10:45 +01:00
Qingping Hou
adb5d5a52c use screen for UI color control 2019-03-03 13:10:45 +01:00
Qingping Hou
4d8da96177 fix test 2019-03-03 13:10:45 +01:00
Qingping Hou
d749591984 decouple device from pdfdocument, font & bgr checking 2019-03-03 13:10:45 +01:00
Qingping Hou
9e57e56f95 decouple UI definitions from document modules 2019-03-03 13:10:45 +01:00
Qingping Hou
02eca23649 decouple device from document modules 2019-03-03 13:10:45 +01:00
Frans de Jonge
c1b4085b93
[UX] Add cropping: none mapped to page width zoom (#4696)
Fixes #1923.
2019-03-03 08:57:20 +01:00
poire-z
279ffbab43 Fix slow keyboard when double tap not disabled (#4711)
[fix, UX] Fix slow keyboard when double tap not disabled

When double tap is not disabled (only ensured in ReaderRolling),
repeated key hits were slowed down by it. This ensures
Input widgets that temporarily overrides it to be disabled
are satisfied.
2019-03-02 16:50:07 +01:00
poire-z
779909343c [UX] ButtonProgressWidget: thin grey buttons instead of black (#4700)
May help with ghosting when closing bottom dialog,
and fit better with the other grey toggles.
2019-03-02 12:24:15 +01:00
Frans de Jonge
9fb7801974
[fix] ConfigMenu cre margins hold action (#4702)
See https://github.com/koreader/koreader/pull/4691#issuecomment-468905263
2019-03-02 12:14:36 +01:00
Frans de Jonge
1d1dc74290 [UX] creoptions: add more margin values
Fixes #4684.
2019-03-01 15:26:25 +01:00
Frans de Jonge
1475acdae7
[UX] Gesture manager: add action - go to (#4690)
Cf. <https://github.com/koreader/koreader/issues/4687>.
2019-03-01 12:59:39 +01:00
Frans de Jonge
96823df503
[UX] Navigation settings for all devices (#4680)
Before multiswipes and the gesture manager this was impractical on touch-only devices, but no more!

Also includes some minor textual clarifications on some of the settings.
2019-02-28 22:38:24 +01:00
Frans de Jonge
db0467c9f0
[UX] Introduce Taps & Gestures menu (#4677)
This more logically groups together various settings related to taps and gestures.

Cf. <https://github.com/koreader/koreader/pull/4655#issuecomment-466808273>.
2019-02-28 20:42:00 +01:00
Frans de Jonge
a1f7f25eaf
[chore, UX] Migrate Screen menu to MenuSorter & put Screensaver under Screen (#4675)
Doing more of this is the general purpose of MenuSorter, after all.

This is making some space for a new `Taps and gestures` menu, see <https://github.com/koreader/koreader/pull/4655#issuecomment-466808273>.
2019-02-28 18:32:11 +01:00
Frans de Jonge
abba7ba873
[fix] TimeVal: add dbg:guard against incorrect subtraction order (#4669)
In principle, any negative subtraction result should be caused by a logical error.
2019-02-27 22:20:47 +01:00
Frans de Jonge
6ddba11392
[UX] Alternative update message when ota_version < local_version (#4661)
See https://github.com/koreader/koreader/issues/4650#issuecomment-466965983 and https://github.com/koreader/koreader/pull/4661#issuecomment-467088984
2019-02-25 22:50:01 +01:00
Martín Fernández
0532d7a507 [Android] (re)enable update downloads using full apks (#4639) 2019-02-23 14:25:29 +01:00
NiLuJe
afa12ef8ce [fix] Leave size_t alone in FFI stuff: flip that back to size_t (#4629) 2019-02-21 09:56:54 +01:00
Frans de Jonge
8e5c1addf5
[feat] Update check (#4620)
The concept is quite simple: stick a file on the OTA server named
something like `koreader-appimage-latest-stable` (by analogy with
`koreader-cervantes-latest-stable.zsync`), which contains nothing
but a filename.

The difference with the zsync update is that the link is then launched
in the user's browser (AppImage) or DownloadManager (Android, not yet
implemented).

* Android hasOTAUpdate = no for the moment
2019-02-21 08:26:48 +01:00
NiLuJe
869b8aebd1 [Cervantes, Kobo] Stricter WiFi callback (#4616)
* Double-checks that the connection was successful, and forcefully kills WiFi if it didn't, to avoid leaving stuff in an inconsistent state.

Should fix #2183

* Limit the turnOffWifi call to devices where it might make some sense to
do
2019-02-20 14:59:33 +01:00
NiLuJe
5495c5d108 [fix] Fix partial refresh when coming out of ScreenSaver in landscape (#4622)
When we rotate to show a screensaver, restore original rotation *before* closing the ScreenSaver window.

And ensure closing the ScreenSaver *always* triggers a full update, no
matter the settings.

Fix #4621
2019-02-19 18:17:58 +01:00
Martín Fernández
04e17424d0 display network settings based on device capabilities + fix android basic network info 2019-02-18 14:32:35 +01:00
Martín Fernández
301aa580cc cervantes: add usb storage on devices w/updated 3rd party tools 2019-02-16 17:32:43 +01:00
Galunid
015fb4d34e Allows adjusting highlight start and end (#4582)
Adds arrow buttons under Delete|Edit.
Tap to move by word, hold to move by char.
2019-02-16 00:42:27 +01:00
NiLuJe
011370882f [chore] Some Wi-Fi tweaks (#4564)
* On Kobo, kill WiFi on startup if we detect an inconsistent state...

Untested, not terribly pretty.

The other solution is to slow down the Wi-Fi meny by doing the same
check for the "Wi-Fi connection" checkbox as in the later wifi_status
one...

* Don't enable auto_restore_wifi by default

It's liable to silently murder batteries for no good reason, given that
we prompt to enable WiFi by default when needed, and we otherwise have
no actual need to keep WiFi on in the background.

re #2215 (in particular, this directly contradicts @houqp in
https://github.com/koreader/koreader/pull/2215#discussion_r74696133 ;)).
2019-02-08 22:29:11 +01:00
NiLuJe
abc6d17a25
A few minor fixes after #4541 (#4561)
* Enforce dithering in PicDocument
* Ensure we'll get a flashing update on ScreenSaver exit
2019-02-08 18:31:40 +01:00
Frans de Jonge
97f7f75643
[fix, Android] hasEinkScreen function in eink_opt_menu_table (#4558)
Follow-up to #4557. Ten-second fixes are never a good idea.
This hides the E Ink settings menu properly again.
2019-02-08 11:12:43 +01:00
NiLuJe
8189945be9
A few graphics fixes after #4541 (#4554)
* Various FocusManager related tweaks to limit its usage to devices with a DPad, and prevent initial button highlights in Dialogs on devices where it makes no sense (i.e., those without a DPad. And even on DPad devices, I'm not even sure how we'd go about making one of those pop up anyway, because no Touch ;)!).
* One mysterious fix to text-only Buttons so that the flash_ui highlight always works, and always honors `FrameContainer`'s pill shape. (Before that, an unhighlight on a text button with a callback that didn't repaint anything [say, the find first/find last buttons in the Reader's search bar when you're already on the first/last match] would do a square black highlight, and a white pill-shaped unhighlight (leaving the black corners visible)).
The workaround makes *absolutely* no sense to me (as `self[1] -> self.frame`, AFAICT), but it works, and ensures all highlights/unhighlights are pill-shaped, so at least we're not doing maths for rounded corners for nothing ;).
2019-02-08 00:56:32 +01:00
NiLuJe
812e595608
Enable HW dithering in a few key places (#4541)
* Enable HW dithering on supported devices (Clara HD, Forma; Oasis 2, PW4)
  * FileManager and co. (where appropriate, i.e., when covers are shown)
  * Book Status
  * Reader, where appropriate:
    * CRe: on pages whith image content (for over 7.5% of the screen area, should hopefully leave stuff like bullet points or small scene breaks alone).
    * Other engines: on user-request (in the gear tab of the bottom menu), via the new "Dithering" knob (will only appear on supported devices).
  * ScreenSaver
  * ImageViewer
* Minimize repaints when flash_ui is enabled (by, almost everywhere, only repainting the flashing element, and not the toplevel window which hosts it).
  (The first pass of this involved fixing a few Button instances whose show_parent was wrong, in particular, chevrons in the FM & TopMenu).
* Hunted down a few redundant repaints (unneeded setDirty("all") calls),
  either by switching the widget to nil when only a refresh was needed, and not a repaint,
  or by passing the appropritate widget to setDirty.
  (Note to self: Enable *verbose* debugging to catch broken setDirty calls via its post guard).
  There were also a few instances of 'em right behind a widget close.
* Don't repaint the underlying widget when initially showing TopMenu & ConfigDialog.
  We unfortunately do need to do it when switching tabs, because of their variable heights.
* On Kobo, disabled the extra and completely useless full refresh before suspend/reboot/poweroff, as well as on resume. No more double refreshes!
* Fix another debug guard in Kobo sysfs_light
* Switch ImageWidget & ImageViewer mostly to "ui" updates, which will be better suited to image content pretty much everywhere, REAGL or not.

PS: (Almost 💯 commits! :D)
2019-02-07 01:14:37 +01:00
Frans de Jonge
778c42312d
[i18n] Add Slovak to translations (#4548) 2019-02-04 09:33:45 +01:00
NiLuJe
27b6c1546a [fix, Kindle] Fix i.MX 6/7 detection pattern (#4539)
Some variants have a space before the number, others don't :/.

Followup to #4475
2019-02-01 15:37:15 +01:00
Frans de Jonge
8207e4bdf2
[fix, lang] More accurate auto-DPI text (#4537)
Simply don't mention any values when the device DPI isn't known.
A more robust auto-DPI info function could be added to Screen
but I'm not sure if it's worth the trouble.

Fixes https://github.com/koreader/koreader/pull/4389#issuecomment-454552446
2019-02-01 10:15:22 +01:00
Martín Fernández
19d13b1876 [feat, Android] Add basic support for android eink refreshes on some rockchip devices (#4517)
Supported devices:

- Boyue T61 and *some* clones
- Boyue T62 and *some* clones
- Onyx C67
- Energy Sistem (which are in fact Boyue T62 clones). Was tested on a energy pro 4.

Others may work with the same controller too, but are disabled by default.

Requires https://github.com/koreader/koreader-base/pull/798
Requires https://github.com/koreader/android-luajit-launcher/pull/96

Fixes #4373 
Fixes #1613 (supported devices will show the "full refresh rate" option under eink settings. Others won't)

Related #4228 (need to add support for this specific device to work)
2019-02-01 09:18:27 +01:00
poire-z
b0e127fd31 Adds "Generic web browser paragraph style" tweak 2019-01-29 00:05:55 +01:00
poire-z
335a513826 [chore] cleanup multi-lines translatable strings
Revert 9971eb85 and make multi-lines strings more readable.
(Multiline translatable strings extraction has been fixed
in koreader-misc tralua_xgettext.py.)
2019-01-29 00:05:55 +01:00
Sergey Avseyev
744316ea6f opds: add two more public servers (#4515) 2019-01-26 16:08:59 +01:00
Sergey Avseyev
3337e45381 opds: fix parsing OPDS from textos.info (#4514) 2019-01-26 16:01:54 +01:00
Martín Fernández
6b3158e497 android: disable wakelocks by default 2019-01-22 14:27:14 +01:00
Martín Fernández
23f1597246 android: disable exit menu 2019-01-22 14:27:14 +01:00
NiLuJe
e1cb983cec Point the Kindle 4 to non-legacy OTAs
It uses the same CPU as a Kindle Touch ;).
2019-01-20 23:05:25 +01:00
NiLuJe
6ed66384c8 Properly point Kindle PW2+ to the PW2+ OTAs
Re #4497
2019-01-20 23:05:25 +01:00
NiLuJe
81b255cb85 Better-than-nothing key repeat handling.
Mainly aimed at the Forma.
Still fairly terrible, as these things goes ;p.
2019-01-20 23:05:25 +01:00
poire-z
391360dd8c
bump crengine: adds support for 'orphans:' and 'widows:' (#4490)
Includes:
- (Upstream) Harfbuzz light: fix rendering of fallback font
- CSS: adds support for 'orphans:' and 'widows:' properties

Adds some Style tweaks related to Widows and orphans.
2019-01-17 23:41:36 +01:00
Galunid
0678d75438 Adds choice of default action when highlighting (#4486)
New menu Document > Highlight action.
2019-01-17 22:12:38 +01:00
Martín Fernández
b15c2ed0c5 [Android] misc fixes (#4478)
* use product as device model
* print android version (codename + number) + api at launch
* exit the application properly
* fix fullscreen switching (and disable it on newer android versions)
* gettext: lower log level for message: cannot open translation file
* android common settings refactor
2019-01-17 21:44:15 +01:00
poire-z
4d67dd59ca Rationalize Links> menu items
- Remove duplicated "Show footnote popup". Have the same setting
  applied for Tap or 'Swipe to follow nearest link'.
- Make some menu items enabled or disabled depending on if they would
  have some effect with the current state of other menu items, as
  some kind of visual self-documentation of these dependancies.
- Add menu item to set the footnote popup font size, relative to
  the book font size.
- SpinWidget: allow for showing some informative text
2019-01-15 23:56:11 +01:00
poire-z
df28b90419 TouchMenu: show checkboxes in grey for disabled menu items 2019-01-15 23:56:11 +01:00
poire-z
19280078de bump crengine: Harfbuzz light, WTF-8, corrupted ZIPs
Includes:
- EPUB: workaround ZIP files with corrupted central directories
- Supports book text encoded in WTF-8
- Harfbuzz kerning (full): fix possible wrong flags
- (Upstream) Adds new kerning method: Harfbuzz light, without ligatures

Adds Harfbuzz light kerning methods as the 3rd toggle.
2019-01-15 23:02:40 +01:00
poire-z
77ec8e32e9 ConfigDialog: tweak widths computation
Small fixes to widths computation for a more balanced layout.
Decreased min width of names (on the left) from 33% to 25%, to
allow more room for toggles on the right.
(May make things a little bit too stretched out with english,
but should help with other languages that use longer words to
name things than english.)

Also ignore disabled option names in the names width calculation
(noticable on the PDF right most config menu, where toggles were
uneededly too small)
2019-01-15 23:02:40 +01:00
poire-z
f533acb7f9 InfoMessage: avoid overflowing screen height with long messages
When no height= provided, and the InfoMessage would overflow
screen height when some long message is provided, decrease the
font size until the widget fit.
2019-01-15 23:02:40 +01:00
Martín Fernández
2009ffa12f android: keep screen awake toggle (using wakelocks) & bump luajit-launcher 2019-01-10 22:57:37 +01:00
Frans de Jonge
6b59101aa4
[fix] Dictionary download: repackage lzip to gzip (#4466)
Fixes #4465.
2019-01-09 18:01:22 +01:00
NiLuJe
4ea05ce0a7 Implement workarounds for/from #4387 to better handle WiFi menu
corner-cases on some Kobo devices

Fix #4387
2019-01-09 03:19:06 +01:00
Sergey Avseyev
973e61557b [cervantes] automatically restore wifi connection (#4463) 2019-01-08 21:03:05 +01:00
Sergey Avseyev
12c8d4fd17 [cervantes] wifi: try to connect to known network before listing (#4462)
Defines new function reconnectOrShowNetworkMenu(), which iterates over
available networks ordered by signal power, and check if we can connect
to saved SSIDs. If we can, then skip network list dialog.
2019-01-08 16:54:21 +01:00
NiLuJe
d113cb9475
A few Kobo input tweaks (#4450)
* Fix the Touch input probe on Trilogy devices that depend on the touch_probe_ev_epoch_time quirk (fix #630)
* Expose a "Pageturn button inversion" feature in the Navigation menu (for all devices with keys) (fix #4446)
* Allow ignoring the accelerometer on the Forma (Screen > Ignore accelerometer rotation events; also available from the Gesture Manager) (fix #4451)
* Fix SleepCover handling on the Forma (fix #4457)
* Make isWifiOn a tiny bit more accurate (check the actual WiFi module instead of sdio_wifi_pwr)
* Move all flash related Screen options to the eInk submenu
2019-01-08 02:59:47 +01:00
Frans de Jonge
bba7635763
[lang] CSS tweaks: fix typo (#4456) 2019-01-07 11:21:50 +01:00
poire-z
f8d8863712 Style tweaks: split in-page footnote tweaks
Split the In-page footnotes tweak into 3 distinct ones,
mainly because I want the 3rd one with classic class names
to be disabled'able, while keeping the others, in case
these classic class names are not used for footnotes.

Also fix footnotes list-style-type in Wikipedia EPUBs,
which may have been wrong (but it was less noticable when
following page links because of the little black marker,
or showing them in popup footnotes where the number/letter
is not shown).
2019-01-06 23:06:04 +01:00
poire-z
41b885f073 [UX] Adds "Enable back history" menu item (#4443)
For a hidden setting already present, and used in
/apps/reader/modules/readerback.lua
Only shown, as the whole Navigation> submenu, on
devices with keys.
2019-01-03 21:23:20 +01:00
Frans de Jonge
ee673b1e10 cre: in-page footnotes and alternative TOC: fix wording
Co-Authored-By: poire-z <poire-z@users.noreply.github.com>
2019-01-02 09:46:39 +01:00
poire-z
3fe6eeff71 cre: adds in-page footnotes and alternative TOC hints tweaks
Adds 2 tweaks to allow displaying footnotes at the bottom of pages,
like it's done in some printed books. This will work only with
books with correctly specified footnotes with the adequate EPUB
attributes, and with Wikipedia EPUBs. But users may be able to
activate them for other books with some user style tweaks.

Adds a few tweaks to control the build of the alternative TOC.
With some user style tweaks, one may be able to build a usable
TOC for some badly formatted or converted books.

Also fixes 2 paragraphs tweaks.
2019-01-02 09:46:39 +01:00
NiLuJe
92b8d70342 [fix] If zsync eats dirt during an OTA update, allow to fallback to a full download (#4438)
* On zsync delta failure, offer to retry OTA update with a full download

Fix #4429

* Bring the "this may take a while" popup back up before full DL

Don't rebuild the local tarball for a full dl, we're ignoring it anyway
;)

Co-Authored-By: NiLuJe <ninuje@gmail.com>
2019-01-01 20:06:55 +01:00
NiLuJe
f6743a45db
Proper Forma support (#4414)
* Enforce a known rotation on startup, to make sure we handle touch input coordinates properly.
* Proper FrontLight warmth support (thanks to @cairnsh & @pazos in #4291)!
* Fix the PageTurn buttons mapping to match Nickel's defaults
* Properly remap PageTurn buttons depending on the current rotation.
* Actually enable the Mk.7 screen refresh codepath on *all* Mk.7 devices (I'd messed up the device check...).
* Full accelerometer handling (includes a touch of refactoring regarding orientation handling in general).
* Fix insidiously broken USBMS behavior in Nickel after we exit on FW >4.8.

Fix #4291
Fix #3002
2018-12-28 04:32:42 +01:00
endofline
295cc55e03 [fix] ODPS: socket.http redirect, where the target is a different host (#4420)
Split https/http code-path (as socket.http can adjust the Authorization/Host headers automatically)
Warn the user when the protocol differs from http/https
2018-12-26 14:12:50 +01:00