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

3434 Commits

Author SHA1 Message Date
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
6f153255d6
[fix] Kindle Basic 3: use Kobo snow protocol (#5071)
Otherwise touch will be stuck in perpetual hold.

Fixes https://github.com/koreader/koreader/issues/5070
2019-06-11 09:12:57 +02:00
Frans de Jonge
9300a59a89
[fix] util.getSafeFilename() maximum extension length (#5067)
Strip HTML and do some semi-intelligent detection of faux extensions (i.e., more than 10 characters probably isn't one).

Fixes #5049.
2019-06-10 17:06:13 +02:00
Frans de Jonge
5df31f2dbf
[doc, fix] Some documentation issues (#5066)
Fixes #5065.
2019-06-09 15:50:22 +02:00
Frans de Jonge
efe2db4406 [feat, UX] Paste in folder shortcuts
Fixes #5046.
2019-06-09 15:26:05 +02:00
Frans de Jonge
986b44f9f8 [fix] FileManager: Empty clipboard after paste 2019-06-09 15:26:05 +02:00
Frans de Jonge
7cbd56fcdd
[fix] End of document - go to file browser: swap openFileBrowser() close/open order (#5062)
Fixes #5060.

Cf. 89e002f236/frontend/apps/reader/modules/readermenu.lua (L42-L50) and 89e002f236/frontend/apps/reader/readerui.lua (L711-L718)
2019-06-09 15:19:38 +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
NiLuJe
3798e1b72c Kindle Basic 3 support (#5057)
* Detect a few new PW4 variants

* Detect the new Kindle Basic 3

* Bump base for KT4 mxcfb support
2019-06-04 21:36:21 +02:00
NiLuJe
efe34b6fee Fix shutdown action on Kobo (#5055)
Bypass init, like Nickel does.
Otherwise, some devices either deadlock or panic.
2019-06-03 18:54:45 +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
Frans de Jonge
439f876ad8
[fix] util.getSafeFilename() default to worst-case scenario (#5036)
Also pass path from Wallabag plugin.

Fixes #5025.
2019-05-22 11:34:46 +02:00
NiLuJe
de1146c0b5 [Kobo] Tweak the Aura viewport (#5034)
Officially, the bezel should only cover the bottom 10 pixels ;).
(The Aura was officially advertised as having a 758x1014 screen).
2019-05-21 20:31:23 +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
de75f6bfa3
[fix] Don't try to save highlight into non-PDF document (#5027)
* [fix] Don't try to save highlight into non-PDF document

Fixes <https://github.com/koreader/koreader/issues/5024>.

Highlighting will still work with the .sdr metadata.

* temp fix
2019-05-14 17:57:59 +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
poire-z
eace8d25c1 cre: fix possible crash when switching books too fast
Noticable with "End of document action > Open next file",
and holding PgDn in a directory full of single page html
files.
2019-05-09 22:14:13 +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
NiLuJe
4ba7f984bf Sync powerd.fl brightness with powerd when toggling the FL (#4999)
Possibly helps with some more edge cases related to interaction with
autowarmth & the KA1...

re: #4925
2019-05-05 22:08:53 +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
NiLuJe
aec7594af5
Blacklist the C BB on devices where it cannot be used (#4989)
Either at all, or because it would impose reduced functionality.

Meaning:
* On 4bpp fb, because those are completely unsupported by the C BB
* On 24bpp fb, because it has limited support for that target format (no alpha blending).
* On 8bpp Linux eInk fb with an inverted palette (that's basically only the K4 ;)).
* On Linux eInk devices w/ no HW inversion support, as that would render NightMode inoperable.

That last point means that it's currently *always* blacklisted on PocketBook, because I don't have a PB device, so I don't know how safe HW inversion would be, meaning none of them are marked as being HW invert capable.

(I was a tiny bit hasty with https://github.com/koreader/koreader-base/pull/912 ;).)
2019-05-02 04:27:48 +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
96179670f8
[fix] Close calibre search when opening document (#4978)
Fixes https://github.com/koreader/koreader/issues/4225.
2019-04-28 20:10:41 +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
NiLuJe
d9ab5d2f43 Make sure the AutoWarmth feature will never try to turn the light back (#4953)
on if it's off.
Because, on the KA1, since wetting the warmth *has* to set the
brightness, it could ;).

Patch only actually needed on Kobo, as all Cervantes devices with warmth
support have a mixer, which mean they *can* set the warmth without
affecting the brightness ;).
2019-04-21 20:46:29 +02:00
Frans de Jonge
ff843e0eb7 [i18n] Change user-facing floating punctuation text to hanging punctuation
See https://www.mobileread.com/forums/showthread.php?t=316787
2019-04-20 19:47:31 -07: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
Galunid
9759ffa381 [feat] GestureManager: Implement action to change highlight style using gesture manager (#4936) 2019-04-18 12:12:38 +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
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) 2019-04-17 20:04:07 +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
8882cdf0c5 [chore] Show FileManager in case of showReaderCoroutine failure
Same as https://github.com/koreader/koreader/pull/2956.

Fixes https://github.com/koreader/koreader/issues/4928.
2019-04-16 22:40:31 -07:00
Frans de Jonge
39b48d56c0
[UX] Keyboard popup: add N and M diacritics (#4930) 2019-04-16 20:44:22 +02:00
NiLuJe
717db55566
Some more FL fixes when we start with the FL off (#4924)
* Don't override hw_intensity when we start with the FL off
* And add an insane workaround to make the first toggle behave sanely in this case.
* And also handle the sneakier case where the first toggle happening would not be manual, but triggered by a suspend/resume cycle.
2019-04-16 00:04:29 +02:00
NiLuJe
33946aa732
Some FL regression fixes after #4901 (#4921)
* Make hasNaturalLight* caps safe to call without a device check. (fix #4919)
Make it clear that it's expecting the NTX implementation, though.
* Don't turn the FL on on resume if it was off on suspend
* Make sure turnOn/turnOff actually updates hw_intensity in the process where it matters, instead of just in a short lived fork ;). (fix #4923)
2019-04-15 20:06:24 +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
NiLuJe
2a91b2b038 Go back to "UI" refreshes in the FM (#4903)
Going with partial ends up being problematic on REAGL devices in a
number of different ways.

On Kindle (at least pre EPDCv2), it's slightly flickery because of the
whitespace and the boldface.
On Kobo, it's slow when anything else tries to queue an update (i.e.,
flashing the chevrons).
Which is a non-issue on the Forma because then it's fast when using
pageturns to navigate, but, still :D.

The obvious downside is we lose the automatic flash after n refresh,
which is potentially annoying on older, non-reagl devices.
It's not really on issue on REAGL devices, especially on EPDCv2.
2019-04-12 17:57:22 +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
Martín Fernández
dde301e765 [Android] use the same tag for all logs (#4862) 2019-04-01 15:48:10 +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
Frans de Jonge
709207a621
[feat, UX] Add external link to Wallabag (#4863)
Offers a choice when Wallabag is available.
2019-03-31 19:19:07 +02:00
poire-z
7396abebf2 [chore] reformat all gestures "overrides" to be diff friendly 2019-03-30 23:47:07 +01:00
poire-z
44529dbbc9 Fix tap for top menu occasionally not working
It was missing some ordering hints to have it always
precede taps to change page.
(Somehow noticed only when we reached > 32 gestures
registered, which may have introduced some shuffling,
while previously the addition order was somehow
preserved...)
2019-03-30 23:47:07 +01:00
Frans de Jonge
433b89638a
[UX] Gesture manager: show selected two-finger swipe action (#4855)
As requested by @poire-z here: https://github.com/koreader/koreader/pull/4820#issuecomment-478220239
2019-03-30 13:06:15 +01: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
Frans de Jonge
db5bd8884d
[UX] Gesture manager: add diagonal two-finger swipes (#4820)
Follow-up to #4815. Pointed out as an easy target [here](https://github.com/koreader/koreader/pull/4815#issuecomment-473990141) by @poire-z.
2019-03-29 11:28:24 +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
04f5bc7823 Remove the Aura SE viewport
This feels somewhat arbitrary and potentially unneeded,
and it'll prevent full blits, so, off it goes.
2019-03-27 17:34:41 +01:00
NiLuJe
9ecc2dd119 There's no viewport on the H2O²
Fix #4834
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
abbb3ea747 Increase granularity of the font size fine tuning button
Should allow us to get at the full 12 to 30 range when scaled on a 300dpi
device (29 -> 72 or 26 -> 64 w/ a dpi override).
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
b98ee4583b Footnote popups: fix crash when used on some links
Fix crash when dismissing the popup when the link was
detected as "not coherent".
2019-03-26 21:44:57 +01:00
poire-z
a47f3a2765 ReaderRolling: proper refresh when toggling scroll/page mode
When toggling between scroll and page modes multiple
times, _gotoXPointer() could find the xpointer to be
already positionned and avoid calling setDirty() (so
not enqueuing a whole screen refresh). But the page
will be slightly moved to account for the top margin
disappearing. We need that whole screen refresh in
such cases, so ensure one is enqueued.
2019-03-26 21:44:57 +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
2f65fb94ec
[Android, UX] Add Device:openLink() implementation (#4824)
Fixes https://github.com/koreader/koreader/issues/4821

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

Thanks to @pazos who implemented the Android backend, see https://github.com/koreader/android-luajit-launcher/pull/133
2019-03-20 17:28:19 +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
Frans de Jonge
728bb187fa
[UX] Gesture manager: add two-finger swipe left and right (#4815)
Also add Device:hasMultitouch() to control whether the configuration menu is shown.

Cf. #4727.
2019-03-19 20:18:38 +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
Frans de Jonge
59d8a1852f
[fix, lang] ReaderGesture: toggle highlight action to cycle (#4809)
I overlooked this until I noticed it on Transifex today.

See https://github.com/koreader/koreader/pull/4791#discussion_r265546245

Also changing the internal name because for something that's only been in one or two nightlies there's no point in prematurely introducing legacy settings.
2019-03-16 11:24:11 +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
Frans de Jonge
e357165f17
[fix] GestureDetector: fix typo in ges_coordinate_translation_90 (#4804)
Fixes #4803.
2019-03-15 19:53:15 +01:00
poire-z
454f14384b
Gesture manager: fix actions: Book cover, Book description (#4800)
Code removed from ReaderGesture and put into BookInfo where
it belongs, so we can just use Events.
Also convert description to plain text to not show HTML tags.
2019-03-15 15:29:25 +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
2aa77a4879 Gesture manager: add actions: Book cover, Book description 2019-03-14 22:34:18 +01:00
poire-z
17f07e755f CoverBrowser: speedup "View full size cover"
It was doing a full document load to get the cover. It now does
the faster "only metadata" load.
Also move the trick of setting a default font in CreDocument, so
that all callers of document:loadDocument(false) benefit from it.
Prevent crash when no cover image is available (even if the cache
says it has one, the file may have been updated and doesn't have
it anymore).
2019-03-14 22:34:18 +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
Galunid
f637555d93 [UX] Gesture manager: add action - cycle default highlight action (#4791)
Cf. https://github.com/koreader/koreader/issues/4727
2019-03-14 15:33:04 +01:00
Frans de Jonge
930731d67c
[UX] Gesture manager: add a little notification to the wifi on action (#4786)
Fixes #4783.

Perhaps this should be in NetworkManager instead.
2019-03-14 10:37:25 +01:00
NiLuJe
fdf92e13ea
Remove the Kobo-specific 16bpp JIT loopunroll tweak (#4784)
* Remove the Kobo-specific 16bpp JIT loopunroll tweak
It's now generic, and handled in ffi/blitbuffer.lua directly.
2019-03-14 04:48:03 +01:00
poire-z
ce3d181e24
cre 2-pages: rename toggle to "Dual Pages" (#4788) 2019-03-13 23:11:51 +01:00
poire-z
766b199880 cre 2-pages view: allow extending selection across pages
Similar to what's been added for 1 page view, but just turn
one page instead of switching to scroll mode when reaching
top left or bottom right corners.
Also make the selection start xpointer more accurate by
getting them in onHold(), instead of possibly too late in
onHoldPan() where we have already moved.
2019-03-13 22:18:04 +01:00
poire-z
220b2dcfc2 cre 2-pages view: fix markers when following links and back
Show markers in the middle margin when target is in the right page.
2019-03-13 22:18:04 +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
poire-z
0948a4b656 cre: tweak current page highlights detection
No need to use current page and xpointers. We can use
'pos', in both scroll and page modes, as it is always
accurate to show the y of the current view.
2019-03-13 22:18:04 +01:00
poire-z
1a4faad17c cre: Footnotes popup: fix markers disappearing too early
When following a footnote popup, the highlighted link
delayed clearing (when the link is hidden by the popup)
would clear the margin marker on the target page too early.
2019-03-13 22:18:04 +01:00
Galunid
14c705f11b Enable addNote button, by letting it edit highlight (#4773) 2019-03-12 20:14:34 +01:00
NiLuJe
930286d3f5 Slightly prettier virtual keyboard (#4776)
Add a thin border around keys (square)
2019-03-12 20:00:06 +01:00
Frans de Jonge
80d7d1a530
[UX] Gesture manager: add action - show book information (#4777)
As requested by @ersi.

Cf. https://github.com/koreader/koreader/issues/4727#issuecomment-471766024
2019-03-12 09:17:27 +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
poire-z
658f513512 [fix] cre: fix position and page number after window resize (#4754) 2019-03-10 21:50:11 +01:00
NiLuJe
7c2df53808
Update FBInk (#4765)
* Add a bit of logging before fbdepth calls, to make the progression
easier to grasp.
* Bump base (pickup FBInk update)
2019-03-10 00:59:49 +01:00
Frans de Jonge
294c92fdc7
[fix] FileManagerShortcuts: prevent interference with general Menu class (#4764)
The widget system doesn't really do multi-inheritance as well as it should at the moment. Instead of diving into the internals with release upcoming, this commit rewrites the shortcuts to behave better.

Also fixes an older bug in that changing the friendly name didn't actually do anything on first adding a shortcut.

Fixes #4763.
2019-03-09 13:55:03 +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
Frans de Jonge
5ccc3ec352
[UX] Gesture manager: allow folder shortcuts as action in Reader (#4759)
Note that `self.ui:onClose()` properly closes open documents. There might be similar pieces of code around that don't do that.

Fixes #4755.
2019-03-08 21:02:25 +01:00
Frans de Jonge
2cbec1b54e
[fix] Add fake delayed pan to SDL scroll event (#4758)
Not actually delayed. Avoids a crash otherwise caused by #4666.
2019-03-08 19:39:50 +01:00
poire-z
2c98c81a0d
cre: fix highlights in 2-pages mode (#4753)
Also check for boxes in the 2nd page when in 2 page modes
(and fix onTapXPointerSavedHighlight(), too quickly cut
and pasted from drawXPointerSavedHighlight() recently).
Bump crengine and cre.cpp to correctly returns rect for
the first line of the 2nd page.
2019-03-07 22:13:30 +01:00
Frans de Jonge
511570f65d
[fix] ReaderUI Pass self in open with cancel callback (#4751)
I added a call to self in ReaderUI:showFileManager() in #4720, breaking this singular reference that wasn't passing self.

Reported on Gitter by @ptrm, see https://gitter.im/koreader/koreader?at=5c81465725e4e24c072f1a00
2019-03-07 18:04:39 +01:00
Frans de Jonge
52300ffb15
[fix] ReaderStatus showStatus to onShowBookStatus (#4750)
Overlooked in #4746, see https://github.com/koreader/koreader/pull/4746#issuecomment-470569106
2019-03-07 16:35:05 +01:00
Frans de Jonge
dc829d0223
[UX] Gesture manager: add action - book status (#4746)
Marking a document as "finished" is important for Wallabag (see, among others, #4737, #4271). Also it's an obvious missing action.

Default to left, up. That keeps with the fullscreen dialog gestures generally go up. Also it was still unassigned.

* Remove separator on last item, see https://github.com/koreader/koreader/pull/4737#pullrequestreview-210948520
2019-03-06 18:50:32 +01:00
Frans de Jonge
5992bb6401
Bump fonts (#4744)
Fixes #4743 (shallow submodule + GitHub bug). Updated FreeSans fixes #4707 todo (swapped arrows).
2019-03-05 22:56:59 +01:00
Frans de Jonge
2f456dfb2f
[UX] Gesture manager: add actions - toggle wifi and wifi on/off (#4739)
As suggested by @poire-z.

https://github.com/koreader/koreader/issues/4727#issuecomment-469668338

I wanted to make the gesture a `W`, but that's a bit too unwieldy. Instead there's the suggestion of a (backward) `W`.

The default gestures for wifi on and off are diagonal multiswipe half circles, like an turnable on/off knob.
2019-03-05 21:34:58 +01:00
Martín Fernández
fda231adcd scheduleIn actions needed to open a new file from an intent on resume, to provide feedback since we cannot blit to the window yet 2019-03-05 20:46:47 +01:00
poire-z
addd06c1de [fix, UX] Gesture manager: fix "Toggle rotation" action (#4740)
By using the same events used by the bottom menu toggles.

Reference #4724 (comment). Close #4738.
2019-03-05 18:33:50 +01:00
Frans de Jonge
29f52cce81 [feat] Gesture manager: add Wallabag download 2019-03-05 15:55:03 +01:00
Frans de Jonge
151aedb038 [chore] Bring file manager plugin loading in line with reader
This allows for simple testing if self.ui.plugin_name is loaded without complex additional methods in, e.g., PluginLoader.
2019-03-05 15:55:03 +01:00