Commit Graph

1645 Commits

Author SHA1 Message Date
Aleksa Sarai
dca65a793e readerdictionary: separate out raw sdcv handling from startSdcv
In order to make startSdcv usable for plugins that might need to do
dictionary lookups in order to work, it is necessary to split out the
core of startSdcv into another method which returns the raw data from
sdcv.

In addition, in order to make it possible to amortise the cost of each
lookup (which could be fairly expensive) make it possible to pass
multiple words to rawSdcv at the same time. Sdcv supports passing
multiple words as arguments (which it then looks up in order and returns
a separate JSON array per line for each word) so we just need to tweak
the return style accordingly.

All of the deduplication and dummy results handling remains in startSdcv
because plugins might strongly depend on whether sdcv returned actual
results.

Signed-off-by: Aleksa Sarai <cyphar@cyphar.com>
2021-10-23 15:49:54 +02:00
Aleksa Sarai
7a0e3d5e68 readerhighlight: remove selected_word and use selected_text everywhere
There were two ways of specifing selected text for a highlight depending
on whether it was a "single word" or text selected using hold-and-pan.
In addition to being a bit more complicated than is necessary, with the
addition of the language support plugin system (where the "single word"
selected might be expanded), it makes more sense to simply use the same
logic and table structure for both cases.

The dictionary lookup special case (hold-without-pan triggering a
dictionary lookup by default) still works as before.

In addition, this patch fixes a minor inefficiency during dictionary
quick lookup -- before this patch, the highlight would be re-selected
because the quick lookup window is run concurrently and tries to fetch
ReaderHighlight.selected_text but this is set to nil immediately after
triggering the lookup. This is unnecessary because :clear() will be
called anyway when the quick pop-up closes, and so clearing this can be
left until then.

Signed-off-by: Aleksa Sarai <cyphar@cyphar.com>
2021-10-23 15:49:54 +02:00
Frans de Jonge
8e017de898 ReaderSearch: remove stray newline from regex help (#8358)
Noticed due to #8356.
2021-10-23 13:39:53 +02:00
NiLuJe
942ea70235 ProgressWidget: Simplify painting logic.
* Use paintRect and plain colors instead of lightenRect and a weird
  dimming factor.
* Update call sites to the new API
* Handle FP maths properly (i.e., floor coordinates & ceil dimensions at
  the latest possible time).
* Fix border handling in the fill bar (make sure we actually honor it
  when computin the x position, and that we won't overflow into it when
  computing the width).
* Update docs
2021-10-22 20:24:46 +02:00
NiLuJe
b996b8282f ReaderRolling: Unbreak CRe spinner on e-Ink
Regression since #8195, but the fact that it sometimes worked before
that was already a fluke ;).

c.f., https://github.com/koreader/koreader/pull/5406#issuecomment-948632160
2021-10-22 20:24:46 +02:00
poire-z
37eb53f6e4 DocSettings/Purge .sdr: reword, don't purge other books (#8348)
Reword "Purge .sdr" to "Reset settings".
When purging, remove only the known document metadata
files, and not those for a document with the same name but
a different suffix.
2021-10-21 22:43:05 +02:00
hius07
2c6943e5d6 FileManager: no notification on successful file operations (#8330) 2021-10-21 21:50:16 +02:00
hius07
d652eec2cd ReaderHighlight: allow updating a highlight drawing style (#8323)
Also modify highlight dialog's "Edit" button to be "Add note"
or "Edit note" whether a note has already beed added.
Adds a new RadioButtonWidget.
2021-10-18 19:17:37 +02:00
hius07
f0b992d425 Bookmarks: new settings and tweaks (#8301)
Bookmarks list:
- page numbers are displayed
- page bookmarks are marked with a star
- new setting: Sort by largest page number (default: checked)
New bookmark setting: Add page number / timestamp to bookmark
- If enabled (default), bookmark name is 'Page # notes @ time'.
- If disabled, bookmark name is equal to the notes field.
Rename bookmark dialog:
- page number and timestamp are displayed in the input
  dialog description
- blank input renames bookmark to the default name in
  accordance with the new setting
Also fix: changing boundaries of the highlight: the name of the
highlight is not changed if it was previously edited by the user.
2021-10-18 17:26:04 +02:00
yparitcher
1c2e5eee1d BookStatusWidget: fix status toggle (#8329)
Fix:  #8324

cf: #7671
2021-10-15 09:22:26 +02:00
git-help-eng
0d231cbbef Footer: maybe shouldn't be visible on resume (#8289) 2021-10-10 20:51:50 +02:00
hius07
b2a7d0d5ce BookStatusWidget: use correct read percentage (#8318)
Closes #8317.
2021-10-10 11:55:32 +02:00
hius07
8a750d4692 File searcher: fix FileManager invocation (#8257)
Do not start a new instance if not needed.
2021-09-25 10:55:59 +02:00
hius07
1e47cd7e5f SpinWidget: similar size in portrait and landscape (#8226) 2021-09-25 10:40:04 +02:00
hius07
ed68445626 crash.log: write plugin regular information only in debug mode (#8230)
* Update pluginloader.lua

* Update filemanager.lua

* Update readerui.lua
2021-09-18 18:00:20 +02:00
hius07
859327dea5 Input dialogs: keep size in rotation (#8223) 2021-09-17 19:36:57 +02:00
hius07
5b049a5a82 Help text fixes (#8217)
* Update css_tweaks.lua

* Update readersearch.lua
2021-09-14 19:18:50 +02:00
hius07
1dd50381d0 ReaderTypography: Hyphenation Limits keep size in rotation 2021-09-13 19:32:19 +02:00
hius07
f6020a7260 Readerhighlight: manage actions (#8199)
Discussion in #6409.

Highlight action renamed to Long-press on text and moved from Gear - Document to Gear - Taps and gestures.

Added action Do nothing.
Removed menu item Typeset - Highlighting - Allow highlighting.

Fixed untranslated strings in the Cycle highlight action notification.

Long-press on images always opens ImageViewer. Closes #6409.
2021-09-11 11:04:48 +02:00
hius07
dd1b10332e Readersearch: reduce icon size in search dialog 2021-09-11 10:48:09 +02:00
hius07
e16d36d5da Readersearch: add button to recall search input dialog (#8190) 2021-09-10 01:07:31 +02:00
hius07
ecf378067d Readerdevicestatus: optimize code (#8194)
Correct read settings.
Standardize showing values in menu (a colon).
SpinWidget and DoubleSpinWidget default widths.
2021-09-08 15:50:20 +02:00
hius07
0283c44ff7 Page overlap: long-press to set as default (#8180)
Also deduplicate code out of ReaderPaging and ReaderRolling,
now in ReaderView and a specific menu module.
2021-09-06 21:30:35 +02:00
hius07
ab4e27908b Standardize: long-press/hold to long-press (#8185)
* Gestures: standardize hold to long-press

* Common settings menu: standardize hold to long-press

* Readerstyletweak: standardize hold to long-press

* Readersearch: standardize hold to long-press
2021-09-06 17:08:48 +02:00
NiLuJe
90d4d22ba6 ReaderBookmark:renameBookmark: Better nil guard (#8176)
When matching a highlight to a bookmark *really* fails.

(Noticed in the log from #8175)
2021-09-04 12:02:06 +02:00
hius07
6f612a1c41 Readerhighlight: allow translation (#8174)
Show translatable title of the style.
https://www.mobileread.com/forums/showthread.php?p=4151396#post4151396
2021-09-03 16:25:41 +02:00
hius07
1a127633c2 InputDialog: add :addWidget(), use it for checkboxes (#8168)
Also: Text editor now closes its keyboard when calling Find
and Go to line (which open their own keyboards) to avoid
conflicts between multiple keyboards.
2021-09-02 22:53:54 +02:00
hius07
889c4489b7 Highlights style: long-press to set as default (#8166) 2021-09-02 22:46:27 +02:00
zwim
debf5dc550 Footer: add Warmth as footer item (#8060) 2021-09-02 22:44:22 +02:00
poire-z
607333b181 View HTML: allow long-press to hide "View CSS" buttons 2021-09-01 23:22:35 +02:00
poire-z
57d7fd8aaa bump crengine: support for 'box-sizing', and other fixes
Includes among others:
- (Upstream) Various CHM handling fixes, and others
- HTML documents: rebuild TOC from headings after load
- Font: use metrics for underline offset and thickness
- epub.css, html5.css: tweak ruby styling
- CSS: fix EPUB's head>style content encoding
- CSS: add support for 'box-sizing: content-box/border-box'
- CSS: support for styling the <html> element

Also bump KoboUSBMS to v1.2.2 and FBInk to v1.24.0.

ReaderFont's "Generate font test document": update the
generated HTML so its ToC is build from proper HTML headings.
2021-09-01 23:22:35 +02:00
yparitcher
36fd668093 ConfigDialog: remove uneeded support for muliple events
Fixes reflow support for dispatcher
2021-09-01 10:30:46 -04:00
hius07
68782c3f89 Checkbutton: optimize callback (#8134) 2021-08-27 21:21:14 +02:00
John Beard
27bf5b59dd Add slash to WebDAV starting URL if missing (#8137)
If this is not done, the URL when the file is downloaded will be
something like hostdir/path, rather than host/dir/path.

Also add a debug log to make it more clear when a bogus URL
is being fetched,
2021-08-27 09:40:14 +02:00
John Beard
dac3940ced WebDAV: Unescape XML entities when reading the item list (#8138)
Without this, a file named "A & B.epub" is read as "A &amp; B.pdf"
and will 404 when fetched.
2021-08-27 08:39:15 +02:00
hius07
684fd6c12d Standardize select/choose to choose (#8128)
Closes #8105.
2021-08-24 22:19:07 +02:00
John Beard
5d0ae3dde8 WebDAV: Handle non-self-closing tag for empty collection (#8121)
Some servers serve <D:resourcetype></D:resourcetype> rather
than <D:resourcetype/>. So handle this case when deciding
if an item is not a collection.
2021-08-23 08:51:33 +02:00
hius07
3c3361addf File browser, Path chooser: fix margin of the long folder name in the header (#8103)
* Filemanager: margin of the folder name in the header

* Menu: margin of the folder name in the header
2021-08-22 09:35:22 +02:00
hius07
b4ec68d8c0 [UX] File search: add hold in search results (#8100)
Currently we see filenames only.

Added hold action to show the full path. Go to on a file will open the folder with a focused file.
2021-08-18 16:17:27 +02:00
poire-z
1a12e8555e Translator: add "Translate from book language" option (#8094)
When enabled, if the book has some supported language tag
in its metadata, use it as the source language. Otherwise,
fallback to the current settings (auto-detect or selected
source language).
2021-08-18 00:42:14 +02:00
poire-z
4e65b74b73 Footer: add "Include current page in pages left" setting (#8093) 2021-08-17 22:51:54 +02:00
hius07
a8b39c17ed ReaderDeviceStatus: show only one alert (#8086) 2021-08-17 15:22:31 +02:00
hius07
ef1dea990e Menu/GoTo: tweak go to page/letter dialog layout (#8056)
2 columns instead of 3, to get larger buttons and
avoid truncation with some translations.
2021-08-14 21:29:25 +02:00
hius07
3c597d1d84 FileSearcher: allow call with a search string (#8073) 2021-08-14 17:53:39 +02:00
hius07
c8a7f52672 Checkbutton: ensure max width, multiline if needed (#8066) 2021-08-14 00:49:19 +02:00
hius07
b622d6edd8 ReaderDeviceStatus: add high battery level alert (#8037) 2021-08-14 00:00:47 +02:00
yparitcher
7148aed51c ReaderStatus: end book action: delete file: go to current directory in FM (#8042)
Go to the directory of the deleted file, instead of the folder you happend to switch into the reader from as this may have changed (via changing books from history etc)
2021-08-11 09:54:44 +02:00
Frans de Jonge
acfc5eec2b [lang] Add a couple of plurals (#8028)
Reported by @ichnilatis-gr , see https://www.mobileread.com/forums/showthread.php?p=4140493#post4140493 and following.
2021-07-26 09:41:04 +02:00
hius07
e5f28a0f60 "Page turns" menu development (#8022)
Make "Taps and gestures - Page turns" available only in reader.
Move there other page turn related menu items from Navigation.
Remove duplicated code. Added standard "star" for default RTL.
2021-07-25 23:59:06 +02:00
hius07
2a6931e72f History: add confirmation before cleaning (#8016) 2021-07-23 17:14:25 +02:00