2
0
mirror of https://github.com/koreader/koreader synced 2024-11-16 06:12:56 +00:00
Commit Graph

8359 Commits

Author SHA1 Message Date
yparitcher
b30e366ccd
ReaderLink: option to add location to stack on opening book (#7685) 2021-05-31 20:28:43 +02:00
hius07
d5a2df3c04
OPDS: Add a button to display an entry's content block in the download popup (#7767) 2021-05-30 05:21:28 +02:00
hius07
4973134fb6
VirtualKeyboard: Allow hiding the keyboard with a hold on the down arrow key (#7751)
(And showing it again with a tap on an input field)
2021-05-30 01:02:07 +02:00
NiLuJe
c2c20199cd
OPDSParser: Attempt to preserve data from content tags *without* breaking luxl (#7768)
Tackle the content blocks issue differently, in order to
preserve the data, which is now useful since #7767
2021-05-29 22:38:42 +02:00
NiLuJe
d2ad6a83e1 ReaderTypeset: Minor reword after #7759
c.f., https://github.com/koreader/koreader/pull/7759#discussion_r638929468
2021-05-29 22:36:34 +02:00
NiLuJe
1ded7c3907 PocketBook: Support the PB741
Re: https://github.com/koreader/koreader/issues/7747#issuecomment-846850605
2021-05-29 22:36:34 +02:00
NiLuJe
92afc63951 PocketBook: Deal with FW shenanigans on the PB627
Might break it on older FW, who knows.

Fix #7747
2021-05-29 22:36:34 +02:00
NiLuJe
5d82907e3c PocketBook: Avoid arithmetics expansions in startup script
Because everything is terrible.

Fix #7732
2021-05-29 22:36:34 +02:00
NiLuJe
5a468b8cf2 VirtualKeyBoard: Handle UX fallouts of VirtualKeyPopup overflow.
Don't close the popup on the first hold_release, ensuring it won't
immediately close on a *different* key if the finger hasn't moved.

If the finger *did* move, that's a quick swipe, and that's unaffected by
this tweak.
2021-05-29 22:36:34 +02:00
Frans de Jonge
1054137641
[lang] Improve "set to" consistency (#7773)
Also remove a double space pointed out by @NiLuJe.
2021-05-29 12:40:25 +02:00
Martín Fernández
b8d658b922
android: minor fixes (#7753)
* Save settings before installing a new APK & after resume. 
* Move Resume/Suspend events to Resume/Pause callbacks
2021-05-26 22:26:43 +02:00
Martín Fernández
dc0d759148
don't log thirdparty app list if they're platform defaults (#7760) 2021-05-25 22:26:36 +02:00
zwim
203e434a51
[lang] Slightly reword some notification sentences (#7759) 2021-05-25 15:24:04 +02:00
NiLuJe
ad3bc29b1e
Events: Never stop propagating CloseWidget (#7744)
That seems like a rather terrible idea to beign with, and that that may actually have fatal consequences.

Re #7738

Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
2021-05-24 22:54:58 +02:00
NiLuJe
887138f57f
ReaderDictionary: Handle all dictionaries being disabled better. (#7737)
By showing a warning, instead of not passing any -u flag to sdcv and letting it query *all* dictionaries if FS order...

Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
2021-05-24 22:48:15 +02:00
tjader
b938f312a6
Enable bomb crash screen on Cervantes (#7731) 2021-05-23 21:46:42 +02:00
NiLuJe
2067a16fa1
ReaderZooming: Unconditionally update the configurables on SetZoomMode (#7735)
Expand #7728 to also catch SetZoomMode (mostly for Dispatcher's sake, but other things also send it).
2021-05-23 19:01:09 +02:00
zwim
e955a28796
Uppercase sharp s (#7741) 2021-05-23 12:36:28 +02:00
Martín Fernández
fdb0539aae
Bug report changes (#7709)
* android: dump logcat to file
* Update .github/ISSUE_TEMPLATE/bug_report.md

Co-authored-by: Frans de Jonge <fransdejonge@gmail.com>
2021-05-23 01:20:13 +02:00
zwim
8315ee1c7e
Notifications menu: remove "No notifications" (#7736)
Implemented when all other menu items are unchecked.
2021-05-22 23:47:55 +02:00
hius07
7419820c09
VirtualKeyboard: hold left/right arrows moves to start/end of line (#7730) 2021-05-22 23:25:14 +02:00
NiLuJe
dac6fb4008
Notifications: Sort the settings appropriately in the FM (#7734)
Otherwise it's flagged as orphaned ;).

(Also tweak indenting of said settings to be more in line with how we
usually do these).

Overlooked in #7718
2021-05-22 20:45:06 +02:00
NiLuJe
bee2a605f1
ReaderStatus: Don't crash in EndOfDocument actions that *immediately* destroy the ReaderUI instance. (#7733)
This is handled in an Event handler, but we have zero guarantee that
we're actually the *final* Event sent to the Document, and other Events
usually kinda need the Document instance to still be alive ;).

Delay action until the next tick to avoid potential crashes.
2021-05-22 04:46:41 +02:00
NiLuJe
c05b1a4ee4
ReaderZooming: Deal with some more fallout of the new zoom modes (#7728)
* Namely, ensure zoom_mode is consistent with genus & type *both ways*. (I only dealt with the "no zoom_mode" case in my original fixup).
Because documents with settings dating back from before the new zoom modes had "old" zoom_mode settings mixed with "new" genus/type defaults that didn't agree with each other.
It lead to super-confusing ConfigDialog behavior, because ConfigDialog was in fact not reflecting the reality.
(As the source of truth is actually `zoom_mode`).

* There was a snafu in manual mode, because of the extremely weird way prefixes are handled by Configurable/ReaderConfig/DocSettings/ConfigDialog.
So, make sure we only have a *single* zoom_factor, and that it's updated and saved properly under the right name everywhere.

Fixes inconsistencies between first swapping to manual mode, and what the ConfigDialog said/did (because again: possibly a lie), vs., re-opening the same document, which would magically use *different* settings, closer to what was expected (but still broken because of the prefix mismatch and a disagreement on defaults between the two variants).

Fallout from #6885
2021-05-22 03:28:52 +02:00
hius07
fdb69e0eee
InputText: show clipboard dialog on long-press (#7719) 2021-05-21 21:51:30 +02:00
NiLuJe
0e83551e8d History: Don't flash when swapping documents
(i.e., when History is spawned from ReaderUI, delay the flash until we
*show* the next widget, instead of when we close the current RD
instance).

Prevents flashing the InfoMessage.
2021-05-21 01:58:00 +02:00
NiLuJe
2c4cbd12a2 DocumentRegistry: Downgrade refcount warnings to debug logging.
It can happen in perfectly sane contexts.

CReDocument: Don't destroy internal engine data when Document just
decreased the refcount (as opposed to actually tore down the document
userdata if it were the last ref).

PdfDocument: Only write edited documents if the Doc instance was torn
down.

PicDocument: Silence some DocumentRegistry related warnings
2021-05-21 01:58:00 +02:00
poire-z
7dea979ef4 ReaderHighlight: fix long-long-press regression 2021-05-21 00:57:50 +02:00
poire-z
26750dab99 ReaderHighlight: clearer symbols on selection start/end buttons 2021-05-21 00:57:50 +02:00
zwim
6e2be98edc
Notifications: options to show none/some/more (#7718)
Notification: adds some functions so it can be used as
a notification manager.
Have various bits of code emitting events that may generate
notifications advertize themselves as the source for following
notifications.
Add a menu to allow selecting some subsets of sources
to show or hide.
2021-05-20 23:14:11 +02:00
zwim
78fdce8e9f
Dispatcher: fix possible crash when no document (#7716) 2021-05-20 19:23:34 +02:00
Frans de Jonge
6e1950676a
[lang] Fix minor inconsistency (#7714)
It should be "Not found." as in "Find next".
2021-05-20 09:31:39 +02:00
NiLuJe
a7f23efa65
Double tap: Update default tap zones (#7711)
Make 'em match backward & forward.
Now that we have working overrides and the gesture manager, trying to fit them in a weird superset of the top corner tapzones in a vain attempt to avoid bad interactions doesn't make much sense anymore, and just makes the Gesture Manager UI confusing.

Also make sure the corner zones override the L/R ones for double taps, like it's the case with other gestures.

Fix #7710
2021-05-20 05:39:18 +02:00
poire-z
adf68a178d
bump crengine: various XML, text and FB2 fixes (#7712)
Includes:
- fb2.css: ensure page break after <body>
- (Upstream) XML parsing: fix long named character references
- XML parsing: don't trim double spaces in attributes
- Fix ignore occasional space at start of line
2021-05-20 01:08:48 +02:00
poire-z
4b6b12b799 Remove unused "pan_delayed_interval" support 2021-05-19 23:55:07 +02:00
poire-z
d0165f8bd1 Fix scrolling, add inertial scroll on non-eInk devices
Add a new reader module: ReaderScrolling, that exposes
some Scrolling options to the menu (which are to be used
by and implemented in ReaderPaging and ReaderRolling
themselves) and implement some inertial scrolling logic
used by both of them.
Default to "Classic scrolling" which is the expected
behaviour on phones and tablets.
The old CreDocument buggy behaviour is available as
"Turbo scrolling" for both Paging and Rolling documents.
Added a "On release scrolling" option that might be
useful on eInk to avoid dynamic pan/scrolling.

Try to avoid bad interactions between pan and swipe,
cancelling unwanted panning if we ended up doing a
swipe or multiswipe.
2021-05-19 23:55:07 +02:00
poire-z
e4fd45ef08 Pan zoom mode: update footer when panning in a same page 2021-05-19 23:55:07 +02:00
poire-z
0a3978f60b Reader: remove full refresh on vertical swipes
Small diagonal swipes is what can be used for
full refrehes. Tweak a bit how it is done.
2021-05-19 23:55:07 +02:00
poire-z
33744217de Chapter navigation: fix possible crash in scroll mode
Update self.current_page on each pos change,
so getPreviousChapter() and al. have something
to work with.
2021-05-19 23:55:07 +02:00
poire-z
001d48f6cc Fix a few possible crashes
- TextWidget: avoid crash with small max_width (could happen
  when opening menu on a small emulator window)
- TextWidget: avoid crash if re-used after :free()
- ReaderHighlight:clear(): fix possible crash when
  scheduled and run after document closed
- DictQuickLookup: minor canSearch() tweak ('selected_text'
  is normally available only on multiple words selection,
  but is currently available on single word selection thanks
  to some unrelated side effect)
2021-05-19 23:55:07 +02:00
zwim
067ece7281
Fix changeFontSize after added granularity (#7689)
Whith the new font size step of 0.5 (46a2d9c), the gesture
for increasing or decreasing font size would change the
size by only half of the given value.
2021-05-19 21:21:23 +02:00
NiLuJe
2fd5eeb176 Bump base
https://github.com/koreader/koreader-base/pull/1372
https://github.com/koreader/koreader-base/pull/1371
2021-05-19 20:55:00 +02:00
NiLuJe
2986094cc9 ReaderFooter test: Untangle settings handling
Do a proper reset to defaults before each test without actually poking
at the defaults table itself.
2021-05-19 20:55:00 +02:00
NiLuJe
7c7f9e6ebb Truly silence the attempt at loading SDL2
Expanding on https://github.com/koreader/koreader/pull/7682
ffi/input, loaded by the Device singleton, also needs to know that in
order to setup the proper input backend for SDL2.

Requires https://github.com/koreader/koreader-base/pull/1372 because
that's where the machinery for those checks live.
2021-05-19 20:55:00 +02:00
NiLuJe
d56a944b79 Tests: Handle FM/ReaderUI instances slightly more sanely
* Tear down FM instances properly
* Don't manhandle ReaderUI too much, and document when the tests do
  actively broken shit, like bypassing safeties to open two // ReaderUI
  instances.
2021-05-19 20:55:00 +02:00
NiLuJe
a665901c51 ZSync: Flag this plugin as deprecated.
It's somewhat non-trivial, and has been unmaintained for years.
2021-05-19 20:55:00 +02:00
NiLuJe
90c38e2d0d ReadHistory: nil guard a Document instance access
We're now more careful about this, so, I suppose weird timings may mean
we might be trying to access a nil here.

Fix #7706

Guard a few other similar constructs
2021-05-19 20:55:00 +02:00
NiLuJe
6dc1c1efca Unbreak ReaderFooter test
Tests: Update the ffi.metatype wrapper

(Better idea: move to busted master).
2021-05-19 20:55:00 +02:00
NiLuJe
189035cafc ReaderFooter: Get rid of magic nil settings
And go through one-time-migration to ensure the settings are properly
filled.

Also, disable hold-to-skim by default.
2021-05-19 20:55:00 +02:00
NiLuJe
99ee3763c1 USBMS: Close all widgets before quitting
FFI finalizers can fire in unspecified orders, but for MuPDF,
we need to ensure that the context is the *very* last thing that get
destroyed.
As such, we need to make sure we close open documents properly on our
end, first.

This prevents potential crashes while switchign to USBMS inside an open
document handled by MuPDF.

Fix #7428
2021-05-19 20:55:00 +02:00