Commit graph

462 commits

Author SHA1 Message Date
yparitcher
70f89c4df1
ReaderGesture: cleanup (#6292)
convert all gesture actions to use events for better modularity
add network event handlers and device event handlers
2020-07-12 14:47:49 -04:00
Martín Fernández
1adea4a497 Add macOS target
Co-authored-by: Jason Benwell <jbenwell@hotmail.com>
2020-07-11 01:29:49 +02:00
Frans de Jonge
ac1fa5d677
[plugin] Wallabag: Make remove from history consistent with deletion (#6320)
Finished is a specific status distinct from 100% read.

Also reorganize the menus slightly.

Closes <#6316>.
2020-06-28 11:34:22 +02:00
Galunid
37cf106fce
EvernoteOAuth set logger (#6308)
evernote-sdk-lua#4 to logger.dbg, instead of default print
2020-06-27 17:35:25 +02:00
Frans de Jonge
8ea7a1354a
[chore, plugin] Simplify Wallabag http.request handling (#6307)
See <https://github.com/koreader/koreader-base/issues/594#issuecomment-484233915>.

LuaSocket takes care of everything now, so all similar code can be simplified.
2020-06-27 09:12:30 +02:00
Martín Fdez
d91d2d72d7 disable background runner on android 2020-06-24 12:49:14 +02:00
Frans de Jonge
1abaa39c27
[plugin] Add menu separators to Evernote menu (#6294)
This makes the menu structure slightly clearer.
See <https://github.com/koreader/koreader/issues/2778#issuecomment-647324742>.
2020-06-22 10:00:22 +02:00
yparitcher
a9d4e97115
[plugin] Dispatcher: for profiles & gestures (#6106)
add a Dispatcher module that allows for dispatching multiple events at once.
This will allow for profiles & for gestures that do multiple things.

it has 2 methods:
Execute which is given a kv table of settings to change and fires an event for each of them.
addSubMenu adds a menu item to a menu to allow for modifying which events are called
it also has settingsList which is a master table of all allowed setting and their corresponding info
(it is mostly from ReaderGesture and needs a lot of work)

to allow for a new setting all one has to do is add a entry to settingsList with a corresponding event and it will work out of the box.

the profile plugin is right now still a stub, just to test Dispatcher. the plan is to finish it and eventually refactor ReaderGesture to rely on this.
This also needs effort to move many functions out of reader gesture into events where they belong.
2020-06-19 23:38:53 +02:00
Martín Fernández
83cde64bcc
unified calibre plugin (#6177)
joins calibre metadata search and calibre wireless connections into a single plugin

search metadata changes:

- search directly into calibre metadata files.
- search can be performed on more than one library (configurable from a menu)
- device scans now find all calibre libraries under a given root
- search options can be configured from a menu. (case sensitive, find by title, author and path)
- removed legacy global variables.
- *option* to search from the reader
- *option* to generate a cache of books for faster searches.

calibre wireless connection changes:

- keep track of books in a library (includes prunning books from calibre metadata if the file was deleted locally)
- remove files on device from calibre
- support password protected connections
- FM integration: if we're in the inbox dir it will be updated each time a book is added or deleted.
- disconnect when requested by calibre, available on newer calibre versions (+4.17)
- remove unused opcodes.
- better report of client name, version and device id
- free disk space checks for all calibre versions
- bump supported extensions to match what KOReader can handle. Users can override this with their own list of extensions (or from calibre, by configuring the wireless device).
2020-06-19 12:22:38 +02:00
Galunid
cd440acdc4
Add chapter title when exporting notes in Evernote (JSON/HTML, remote) (#6146)
closes #4566
closes #6138
2020-06-17 23:51:02 +02:00
Martín Fdez
d6e87a111a coding style + comment 2020-06-13 19:05:10 +02:00
Martín Fdez
a488cc57bc duh 2020-06-13 19:05:10 +02:00
Martín Fdez
835f9f62c6 fix ANRs in Kosync plugin login/register 2020-06-13 19:05:10 +02:00
NiLuJe
1f994f8ede
Floor dimension computations (mul/div). (#6264)
* floor most every dimension computations involving MUL or DIV
Should avoid passing nonsensical floating point coordinates/dimensions
to the UI code.

* Update base

* https://github.com/koreader/koreader-base/pull/1113
* https://github.com/koreader/koreader-base/pull/1114
* https://github.com/koreader/koreader-base/pull/1115

* Bump android-luajit-launcher

https://github.com/koreader/android-luajit-launcher/pull/230
https://github.com/koreader/android-luajit-launcher/pull/231
2020-06-13 01:56:36 +02:00
Frans de Jonge
19b15462b2
[plugin, UX] Wallabag: aid with setting up missing information (#6262)
The MultiConfirmBox indicates which settings are still missing and offers you a quick way to get to them.

Cf. <https://github.com/koreader/koreader/issues/6129>.
2020-06-12 22:40:48 +02:00
Frans de Jonge
04a5e2acfa
[fix, plugin] Wallabag: add quiet option to callAPI() (#6252)
Dumb lazy workaround for <https://github.com/koreader/koreader/issues/6251>.
2020-06-10 21:54:57 +02:00
Mikolaj "lich" H
b741fcebac
[NewsDownloader] Added an HTML filter through a CSS selector (#6228)
Fixes #6185.
2020-06-04 22:58:14 +02:00
poire-z
c65c33d75f
Statistics: some fixes, reordering and rewording (#6194)
- Fix wrong values for books opened (or first opened)
  from April 14th to May 20th: highlights and notes
  possibly being NULL was preventing nb of pages and
  last_open from being fetched.
- Re-order current book and all books stat items to some
  hopefully more sensible order.
- Some rewording for clarity.

KeyValuePage:
- Have value_overflow_align="right" only align right
  when value overflows 1/2 screen width, but not
  when only key overflows that.
- Show truncated text also on Tap when there is no
  callback.
2020-05-29 14:22:27 +02:00
mwoz123
395e65f749
Add Wallabag queue (#6170)
See https://github.com/koreader/koreader/issues/6119#issuecomment-624329183
2020-05-24 15:56:48 +02:00
poire-z
39345704ec
Statistics: fix number of highlights (#6173)
This number might have been leaking from a previously opened
book, and can be innacurate.
Reset it from the number of highlights stored in settings.
Note that the number of "Notes" shown does not mean much.
2020-05-20 21:40:49 +02:00
mwoz123
0e2b430796
Fix/exit dir (#6163) 2020-05-19 18:21:58 +02:00
poire-z
e5206922c6 [UX] Normalize SpinWidget and DoubleSpinWidget
- Use same names for options;
- Have them both movable
- Add option to keep widget shown on Apply (and use that
  when appropriate: when the value may have an immediate
  visual effect, so one can tweak it without having to
  go thru menus to re-open it again).
2020-05-09 23:29:49 +02:00
poire-z
46221985a6
Delegate "lastfile" management to ReadHistory (#6128)
Simplify (and avoid edge cases) in other code by having
ReadHistory manage the "lastfile" setting on add, remove,
rename...
Fixed a few other cases of things not updated.
2020-05-06 21:11:34 +02:00
Robert
3f874f0d1f
[Gesture] Add progress sync gesture (#6103) 2020-05-05 18:51:02 +02:00
mwoz123
d5bc235270
Send2Ebook: close document on going to folder (#6118) 2020-05-05 18:42:04 +02:00
poire-z
eaabc42ea9
[Plugin] Fix move to archive plugin names (#6113)
Mismatches in these names prevent this plugin from being disabled'able. https://github.com/koreader/koreader/pull/6101#issuecomment-623131390
2020-05-03 22:31:02 +02:00
mwoz123
ce3bf473da
Add move to archive plugin (#6101) 2020-05-02 23:02:36 +02:00
Roland Coeurjoly
e5b2c2953b
Add support for exporting highlights in JSON format (#6067) 2020-04-26 19:36:56 +02:00
Robert
b4f3f177ca
kosync - new string methods (#6089) 2020-04-25 09:04:44 +02:00
mwoz123
8b4f1ca42e
Wallabag remove from history setting fixes (#6059) 2020-04-15 15:25:29 +02:00
mwoz123
0b52fe9771
Wallabag remove from history setting (#6048)
Solves: #5045
2020-04-15 12:50:13 +02:00
poire-z
ba4e175ee6
Statistics: fix md5 leaking between newly opened books (#6052)
Which could cause a same book appearing multiple times
as different entries in statistics.
2020-04-15 08:52:16 +02:00
poire-z
635f784dfd [UX] Gestures: add action "Statistics calendar view"
Also flush current stats when showing calendar view.
2020-04-10 22:52:57 +02:00
mwoz123
904a61009d
plugins/NewsDownloader: add never download images (#6003)
Closes #5924.
2020-03-27 14:21:20 +01:00
poire-z
55d7109042
Terminal plugin: a few tweaks (#5985)
- Show output in a TextViewer with a monospace font.
- Include stderr, so errors are shown
- Use Trapper to allow interrupting command (and to fix
  some refresh issues)
2020-03-20 23:41:36 +01:00
yparitcher
e9d0c7a96e
[fix] don't crash when enabling statistics on new book (#5971) 2020-03-20 12:01:38 +01:00
yparitcher
08359ee1b6
[UX] Next/Previous Bookmark Gestures (#5968)
Fixes #5965
2020-03-16 16:52:09 +01:00
poire-z
e6612eefe1 CoverBrowser: fix no content with Pathchooser in RTL UI
Really needed these :resetLayout() (as done in Menu.lua)
when stuff is right aligned (otherwise, first computation
of x-offset, when there was no content, being Screen.width,
would stick, and would draw the content off-screen on the
right - no issue noticed when left-aligned as the offsets
would stay being 0 whether there is content or none).
2020-02-27 23:59:02 +01:00
Martín Fernández
825b22dd6b
kosync: validate username and password against empty/blank strings (#5894) 2020-02-25 20:40:50 +01:00
poire-z
687074fa1f
CoverBrowser: fix "Extract and cache" crash (#5874) 2020-02-17 23:46:31 +01:00
poire-z
c2a5d3f3f3
FileManager: tell plugins to save settings on close (#5872)
So that Statistics settings modified while in FileManager
are saved.
Also allows resetting statistics when in FileManager
(where there is no current book id to exclude).
2020-02-17 16:53:09 +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
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
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
Frans de Jonge
668eee97fa
[CI] Add curly braces check (#5809)
Update shellcheck and shfmt to the latest version.

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

Btw, you can apply shellcheck suggestions with a command like:

```
shellcheck --include=SC2250 -f diff *.sh | git apply
```
2020-02-02 20:35:21 +01:00
Mustafa Ali Mutlu
2736661bfc [fix, plugin] Evernote exporter only writes one documents clippings when txt export used, rest is ignored (#5774)
fixes #3690
2020-01-25 17:28:13 +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
Mustafa Ali Mutlu
1a7fa9f9e4 [fix, plugins] Evernote: confusing info/error message when exporting bookmarks (#5765)
Remove unnecessary all_count == 0 check, because of it no condition holds true.
2020-01-15 08:59:36 +01:00
Rafael Fontenelle
4e5779199d [plugin] fix netsh command (#5744)
The edited `netsh` command line had errors:
1- missing v4tov4 (or v6 variant)
2- should have `=` instead of `:`
3- typo in listen(ing)address and listen(ing)port
2020-01-05 09:47:33 +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