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

2250 Commits

Author SHA1 Message Date
poire-z
611c423727
TextBoxWidget: handle tabs and tabstops (#5870)
Don't display a tofu glyph when meeting a tab (none of
our fonts have a glyph for it).
New parameter: TextBoxWidget.tabstop_nb_space_width,
that defaults to 8, to ensure tabstops in the usual
left aligmnent (or right when para is RTL).
2020-02-18 13:24:10 +01:00
NiLuJe
aed27a5a16
Warn if color rendering is enabled on a grayscale device. (#5871)
* Make sure the Color menu is accessible on GrayScale device, in the event
one would have inherited a color-enabled settings from another
device...

* Warn on startup if color rendering is enabled on a grayscale device.

A non-exhaustive lists of things such a setup would break:
* same-to-same blitbuffers for pretty much every rendering engine
* same-to-same blitting codepaths and fast-paths
* software dithering in CRe
2020-02-18 02:24:48 +01:00
poire-z
95d18fe8d9
Statistics: revamp settings, add calendar settings (#5867)
Also adds options to remove statistics for books
with low reading duration (to clean up stats for
books just quickly browsed and not yet read).
Also adds TextWidget:getFontSizeToFitHeight()
even if we ended up not using it.
2020-02-16 01:03:12 +01:00
poire-z
f0c6fc92db Style tweaks: reorganize in submenus, add a few
Try to limit the nb of items per menu page to 5 or 6 by
splitting related ones into sub-menus, so we get more
room below to see how they affect the content.
Adds "No indentation on first/following paragraphs" and
"Paragraphs margins and paddings", and Links underlining.
2020-02-15 12:31:55 +01:00
poire-z
30f9673c7d Font menu: show only 5 items per page
To get more room below to see how the text looks
with the selected font.
2020-02-15 12:31:55 +01:00
poire-z
d22924c550 Footnote popups: CSS: remove some vertical margin
To fit more lines in the popup, and to look more like
how crengine epub.css would render the content.
Also normalize some horizontal margins.
2020-02-15 12:31:55 +01:00
Frans de Jonge
159fe03f47
Make dictionary margin depend on font size (#5865)
The default left margin on blockquote and dd is `40px`, but unfortunately that doesn't scale. rem is calculated using a hardcoded16px, so em or % is the best compromise in this case.

PS If we assume 1em = 16px then 40px is actually 2.5em, not 1em. This reduction in indentation is mainly intended for the benefit of smaller E Ink devices.

Closes <https://github.com/koreader/koreader/issues/5859>.
2020-02-15 12:23:22 +01:00
yparitcher
3e00e686b6
file count: Fixes #5843 (#5858) 2020-02-13 09:43:10 +01:00
Matias Nitsche
0575ed4c14 PRSTUX: interact with USB charger 2020-02-13 08:21:24 +01:00
poire-z
3ca46577bf
Statistics: new Calendar view (#5854)
Also fix RTL UI mirroring in OverlapGroup when
overlap_offset are used.
2020-02-12 23:05:18 +01:00
Frans de Jonge
0cdbd7bd38
[chore] Add translator comment for Alexandre Dumas (#5851)
The "author:" prefix looks like some kind of special search syntax, but it doesn't seem to be.
2020-02-12 17:39:08 +01:00
NiLuJe
de15ab3a87
Unbreak OTA on crappy shells (#5850)
* Unbreak OTA on crappy shells

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

So do it from the Lua side instead.

Should fix #5844

* Launch the zsync wrapper through bash on Cervantes
2020-02-12 00:07:05 +01:00
Frans de Jonge
1d3842ffa0
[fix] More accurate count in FileChooser (#5846)
Fixes <https://github.com/koreader/koreader/issues/5843>.
2020-02-11 15:13:20 +01:00
poire-z
8ffb9aff64 Wikipedia EPUBs: keep original float left/right in web mode
Previous cleanup resurrected multiple class names, so
we know now the original alignment of a float.
Use them in 'web' mode, as it allows floats to be nearer
the section they are refering to, and it may limit
floats truncation in page splitting.
But keep floats aligned on a single side in 'book' mode,
as it might allow easier reading.
2020-02-10 19:17:20 +01:00
NiLuJe
833fed79ff
Honor dithering on diagonal swipe refreshes (#5836)
c.f., https://github.com/koreader/koreader-base/pull/1039#issuecomment-583494496
2020-02-09 22:50:06 +01:00
NiLuJe
73659b6bd6
Print zsync2's output on screen (#5824)
* Also remove the temporary files when doing a full retry
* Bump base
  Pickup the required zsync2/FBInk updates
  (https://github.com/koreader/koreader-base/pull/1038)
* Actually does what it says on the tin for Abort
  i.e., cleanup temporary files
2020-02-09 05:08:46 +01:00
Frans de Jonge
6dfe65279c
[chore] FileChooser: "traditional" for loop for ~15-25% better performance (#5827)
Apparently there's less overhead this way.

See https://github.com/koreader/koreader/pull/5819 for context.
2020-02-08 11:45:26 +01:00
Martín Fernández
67627ce2d9
Remarkable port (#5828)
Touchscreen is mirrored in X & Y and has a different resolution from the eink panel.

Uses systemd for time/date/suspend/poweroff/reboot
Two systemd units for platform integration. button-listen is a very
simple launcher.
to-do: add support for wifi by implementing  a wpa supplicant dbus client.

Authored-by: Thomas Spurden <tcrs@users.noreply.github.com>
2020-02-08 01:58:10 +01:00
Martín Fernández
3856f04445 android: switch to connectivity manager
Co-Authored-By: Frans de Jonge <fransdejonge@gmail.com>
2020-02-07 16:54:01 +01:00
Sergey Avseyev
2420625be1
Add searchable version of flibusta OPDS catalog (#5826) 2020-02-07 14:50:30 +01:00
bateast
fa94e6bbf6
Add “searchable” capabilities to OPDS catalogs (#5823)
OPDS catalogs may have search query capabilities. It is very usefull to find a
book in huge catalog, even when they are organized as directories. This commit
provides the possibility to add a %s mark in an OPS catalog URL, that would
trigger a search box when browsing the OPDS in koreader.
2020-02-07 13:27:04 +01:00
Frans de Jonge
e0ce993c61
[fix] Don't waste time on dir/file attributes in subdirs (#5819)
An awful lot of effort was wasted getting attributes just for getting a count of the number of files/directories in subdirectories. Getting the count is pretty fast. Getting all the attributes is not, and in this context we don't even use the attributes.

See <https://www.mobileread.com/forums/showthread.php?t=327085> and <https://gitter.im/koreader/koreader?at=5e3ac3b9e8a838355918ba13> for discussion.
2020-02-05 19:32:07 +01:00
yparitcher
a3173ec275
end of document: add go to beginning (#5814)
* ReaderGoto: goto beginning and end

* end of the document: add go to beginning
2020-02-05 08:19:35 +01:00
NiLuJe
80c1e5290c
File search & BookInfo: Don't traverse hidden folders if we're not showing them (#5816)
* File search: Don't traverse hidden folders if we're not showing them

Re https://www.mobileread.com/forums/showpost.php?p=3949194&postcount=21

* Ignore macOS resource forks, too.

* Apply the same logic to the BookInfo directory walker

* And never ever show resource forks in the FM, either.
2020-02-05 03:14:21 +01:00
NiLuJe
3c2353e439
Stop using the "calibre catalog" wording (#5813)
It's extremely confusing, as it has nothing to do with calibre catalogs,
which are actual things the user can generate manually.

What it's using instead is actually a metadata cache in a flatfile db
that's always present, as long as "Send To Device" was used to upload
the content to the device.
2020-02-04 22:03:21 +01:00
NiLuJe
9a20fb5836
Switch to zsync2 (#5810)
* Switch to zsync2

Requires https://github.com/koreader/koreader-base/pull/1036

* Simplify FBInk syntax

The weird-ass workarounds for -s's subopts handling are
no longer needed w/ FBInk >= 1.21.0

* Update base

* Re-enable HW dithering on Kindle
  (https://github.com/koreader/koreader-base/pull/1034)
* Update SQLite to 3.31.1
  (https://github.com/koreader/koreader-base/pull/1035)
* reMarkable port
  (https://github.com/koreader/koreader-base/pull/1023)
* zsync2
  (https://github.com/koreader/koreader-base/pull/1036)

* zsync2 means we can finally have nice things

(OpenStack backed storage)

* We also no longer need that insane workaround on ARM

* And comment out @chrox's mirror, which appears to be down.

* Warn that a malformed URL will horribly blow up in fun and interesting
ways
2020-02-04 03:14:23 +01:00
NiLuJe
5499d85cbc
Allow running shell scripts from the FileManager/Favorites (#5804)
* Allow running Shell/Python scripts from the FM

* Show an InfoMessage before/after running the script

Since we're blocking the UI ;).

* Allow running scripts from the favorites menu, too.
2020-02-03 20:08:18 +01:00
NiLuJe
283187efb7
Update fonts & add Noto Sans Devanagari UI (#5803)
* Update fonts

https://github.com/koreader/koreader-fonts/pull/11

* Add Noto Sans Devanagari UI to the UI fallback font list (fix #2895).
2020-01-31 17:25:13 +01:00
poire-z
6d2cada96e Wikipedia Save as EPUB: better gallery rendering
Switch Wikipedia galleries from floats to inline-block.
Also remove some crengine bugs workaround code as these
bugs have been fixed for a long time.
2020-01-31 15:33:13 +01:00
poire-z
1ccc658401 Style tweaks: adds "Enforce steady line heights"
And re-order them a bit to group the line-height related
ones together.
2020-01-31 15:33:13 +01:00
Mustafa Ali Mutlu
5724971466 add turkish f keyboard layout (#5795) 2020-01-28 00:05:16 +01:00
poire-z
23d848acf4 Reader: strict ordering of tap & hold gestures (#5789)
The lack of proper overrides could make their
order/precedence/priority non-deterministic.
2020-01-24 20:05:21 +01:00
yparitcher
236609c431 fix arabic keyboard to conform to #5639 (#5793)
Fixes #5792
2020-01-24 09:16:52 +01:00
poire-z
2d02ade498 Footnote popups: drop justification if RTL content
MuPDF does not handle "text-align: justify" correctly on
RTL text: the last line is left-aligned, but it should be
right-aligned.
Not using justify makes it correctly right align the whole
text.
2020-01-23 19:26:07 +01:00
poire-z
c449d0ad1e [UI] Render metadata text with book language
Gives the book language to Text*Widget (and XText) when
drawing title, authors and other metadata text.
Might be needed to properly display a Japanese book title
when the UI language is Chinese.
2020-01-23 19:26:07 +01:00
WaseemAlkurdi
c8b3942bf4 [UX] Keyboard for Arabic and languages with Arabic script (#5569) 2020-01-18 22:47:34 +01:00
poire-z
605f6026bb
TextWidget: adds getFittedText() (#5776)
bump base for xtext:getText().
2020-01-18 00:04:32 +01:00
poire-z
e3b4116f4d opds: add one public server (Gallica) 2020-01-17 17:42:07 +01:00
Robert
73a0f2f9d1 Remove DSCROLL_MODE and DGLOBALGAMMA (#5754) 2020-01-07 20:16:59 +01:00
poire-z
e172926af5 LoginDialog: fix crash on focus switch (#5749) 2020-01-06 11:59:17 +01:00
Martín Fernández
51ed411ee4 android: OTA fallback using the browser
Co-Authored-By: Frans de Jonge <fransdejonge@gmail.com>
2020-01-04 21:08:17 +01:00
poire-z
0599c440cc [RTL UI] Bidi-wrap filenames, paths, urls, metadata
bidi.lua:
- Revert "Alias everything to Bidi.nowrap() when in LTR UI,
  as using LTR isolates seems uneeded when already LTR" (part
  of a628714f) which was a wrong assumption: we need proper
  wrappers for all things paths. Enhance some of these wrappers.
- Fix GetText RTL wrapping which was losing empty lines and
  trailing \n.

- Wrap all paths, directories, filenames in the code with
  these wrappers.
- Wrap all book metadata (title, authors...) with BD.auto(),
  as it helps fixing some edge cases (like open/close quotation
  marks which are not considered as bracket types by FriBiDi).
  (Needed some minor logic changes in CoverBrowser.)

- Tweak hyphenation menu text
- Update forgotten SortWidget for UI mirroring
- KoptConfig: update "justification" index for RTL re-ordering,
  following the recent addition of the page_gap_height option.
2020-01-04 01:34:46 +01:00
poire-z
a31abf79de TextBoxWidget: fix some truncation ellipsis issues
Ellipsis was sometimes not displayed when text is right aligned,
because width was not updated with ellipsis size.
bump base/xtext: fix truncation ellipsis position in bidi text
so it stays nearer to previous logical order char, instead of
sometimes being thrown away to start or end of line.
2020-01-04 01:34:46 +01:00
poire-z
b4ff207ece [fix, i18n] Auto-save book metadata: fix interval string (#5729)
See https://github.com/koreader/koreader/pull/5687#issuecomment-570226614 and followups.
2020-01-02 21:31:29 +01:00
Mustafa Ali Mutlu
12adb96206 [feat] Option to change page gap in continuous mode (#5705)
Fixes #5656.
2020-01-02 21:30:03 +01:00
poire-z
5ea1a7c817 Style tweaks: In-page footnotes: add some classic classnames 2020-01-02 16:25:10 +01:00
poire-z
378dfdc1df ConfirmBox: prevent lower widgets from responding to tap 2020-01-02 16:25:10 +01:00
Frans de Jonge
ecc9715371
[chore] Ellipsis instead of dots (#5720)
Thanks to Weblate, see https://github.com/koreader/koreader/issues/3754
2020-01-01 15:20:16 +01:00
poire-z
908151a3b0 [feat] Adds Document> Auto-save book metadata sub-menu (#5687)
Replaces DAUTO_SAVE_PAGING_COUNT in defaults.lua with
a new option available in menu, that allows setting
an interval in minutes instead of a page count.
2020-01-01 12:27:51 +01:00
Frans de Jonge
0ea889aecb
[fix] Restore most Japanese keyboard layers (#5709)
The Japanese keyboard still needs to be cleaned out a bit more at some point, but the important thing is that this commit fixes #5632 by restoring the kanji layer with the voiced-unvoiced conversion symbol.
2019-12-30 16:52:58 +01:00