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

192 Commits

Author SHA1 Message Date
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
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
Robert
03fda96041 [fix] Empty directory path and crash on TextWidget (#5606) 2019-11-19 21:06:03 +01:00
Robert
dec0e73a7b [statistic plugin] Don't generate md5 sum on open document (#5528)
There is no need to generate a md5 sum for documents that were already opened.
2019-10-26 09:08:57 +02:00
Robert
deebbfe606 [plugin/statistics] Synchronize Current book with footer (#5344)
Better synchronize statistics Current Book with footer.

Also some stylistic improvements in the strings.
2019-09-10 21:32:02 +02:00
Frans de Jonge
102180b202 [i18n, plugins] Statistics: fix estimated days to read plural 2019-08-25 15:48:43 +02:00
Frans de Jonge
45a0f285f1
[fix, i18n] Make two strings translatable (#5256)
Fixes <https://github.com/koreader/koreader/issues/5255>.
2019-08-24 13:45:07 +02:00
Frans de Jonge
a2dcfe9aec
[doc] Tag @todo, @fixme and @warning (#5244)
This commit standardizes the various todos around the code a bit in a manner recognized by LDoc.

Besides drawing more attention by being displayed in the developer docs, they're also extractable with LDoc on the command line:

```sh
ldoc --tags todo,fixme *.lua
```

However, whether that particular usage offers any advantage over other search tools is questionable at best.

* and some random beautification
2019-08-23 19:53:53 +02:00
Frans de Jonge
da988c15de
[CI] Switch to custom xgettext build to extract multiline strings (#5242)
Because let's face it, it just looks much better this way.

Docker image update in https://github.com/koreader/virdevenv/pull/43

Discussion in https://github.com/koreader/koreader/pull/5238#issuecomment-523675211 and https://github.com/koreader/koreader/pull/4524
2019-08-22 17:11:47 +02:00
Frans de Jonge
e2ceace302
[fix, CI] Push to Transifex from master, fix multiline strings for xgettext (#5238)
Related to https://github.com/koreader/koreader/pull/5237
2019-08-22 00:12:53 +02:00
Robert
825a3c4b52 Add gesture - show current book statistics (#5167) 2019-08-03 10:40:20 +02:00
NiLuJe
e2961097e7
Don't use WAL on devices where it's not supported (#5162)
(i.e., truly ancient kernels and weird FS).

In which case, we use TRUNCATE, which might be a tad less terrible than
DELETE on said weird crap FS.
2019-08-01 19:10:46 +02:00
Robert
93b6335421 [statistics] Remove conversion message on new installations (#5120) 2019-07-17 15:15:21 +02: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
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
poire-z
335a513826 [chore] cleanup multi-lines translatable strings
Revert 9971eb85 and make multi-lines strings more readable.
(Multiline translatable strings extraction has been fixed
in koreader-misc tralua_xgettext.py.)
2019-01-29 00:05:55 +01:00
Robert
dc5a479b66 Gesture manager (initial) (#4240)
Manager supports separate gestures for the file manager and the reader. Gestures from the manager have a higher priority than built-in gestures.

Settings available in Gear -> Device -> Gesture manager
2018-09-29 23:15:57 +02:00
Robert
3d128b543b [Statistics] Add estimated reading finished date (#4241) 2018-09-29 19:51:25 +02:00
poire-z
47bcfc531e
Allow closing full screen dialogs with swipe down (#4237)
Mostly all that have a close button at top right, that may
be hard to reach or hit for some people: TOC, Bookmarks, History,
KeyValuePage (Book information, Statistics...), Book status...
Added full refresh on diagonal swipe where it was missing.
CoverMenu: removed onSwipe override, as it had become the same as
Menu a few months ago.
2018-09-21 15:48:40 +02:00
poire-z
850be52177
Keep some menus open when Tap or Hold (#4189)
TouchMenu: added options to menu items with the following defaults:
    keep_menu_open = false
    hold_keep_menu_open = true
So, default for Tap callback is to close menu, and for Hold callback
to keep menu open.
In both cases, provide the TouchMenu instance as the 1st argument to
the callback functions (instead of a refresh_menu_func I added in #3941)
so the callback can do more things, like closing, refreshing,
changing menu items text and re-ordering...

ReaderZooming: show symbol for default (like it was done for
ReaderFont, ReaderHyphenation...)
TextEditor plugin: update the previously opened files list in real
time, so the menu can be kept open and used as the TextEditor main
interface.
SSH plugin: keep menu open and update the Start/Stop state in real time
ReadTimer plugin: tried to do what feels right (but I don't use it)

Also remove forgotten cp in the move/paste file code
2018-09-04 23:55:58 +02:00
Robert
5344e0b672 [Fix] Don't load disabled plugins (#4169) 2018-08-18 20:41:37 +02:00
Robert
4428ecb422 Plugin manager (#4159)
Also adds descriptions to all plugins.
2018-08-17 20:54:11 +02:00
poire-z
9971eb8533 Fix untranslatable strings (#4132)
Some problem somewhere with [[...]] strings starting with a
leading newline. Should probably be allowed, but for now
fix the few such cases to allow them being translated.
2018-08-01 19:29:03 +02:00
NiLuJe
0924b57877
Tweak/unbreak my CPUFreq experiment (#4119)
* Only switch to ondemand when we actually can, and when it's better than the current governor...
  This potentially leaves Mk.5 in the lurch, but there's no perfect solution there :/.

* Switch to UI for the unmark event of navigation hints markers
Might help on non-REAGL devices, and doesn't hurt there (re #3983).

* Switch SQLite DBs to WAL
Sounds nice in theory, behaves fine in practice.
2018-07-29 03:53:57 +02:00
Robert
e977c4a394 Fix Reading progress display in landscape mode (#4074) 2018-07-15 10:04:48 +02:00
onde2rock
dad7f209fa [CI] Add a check to detect tab in lua files (#3919) 2018-04-29 15:15:11 +02:00
onde2rock
e502bf04d3 [feat, UX] Support the virtualKeyboard on non touch-device (#3796)
* [VirtualKeyboard] Add support for keynaviguation

Also rename the variable "layout" to "keyboard_layout" because conflict
with the layout from the focusmanager

* Make the goto dialog compatible with key naviguation

My solution is to change the order of the widget. The last one will the
virtualkeybard so it catch all the keybinding, and below it, make the
dialog "is_always_active = true" so it can receive touch event.

* Correctly show the virtual keyboard on dpad devices

* change the order to call the virtualKeyboard so it end up on top

* Handle the multi input dialog

* Support reopening the virtualKeyboard by the Press key

* add check focusmanager

* Fix https://github.com/koreader/koreader/issues/3797

* MultiInputDialog : Now work on non touch-device

* Set the virtualkeyboard to be a modal widget

* Fix the layout in multiinputwidget

* Fix for the various combination of
hasKeys,hasDpad,isTouchDevice

* [Focusmanager] Better handling of malformed layout
2018-03-30 12:46:36 +02:00
onde2rock
e8aab49ee9 Kindle4NT improvements (#3745)
* [device][kindle4] add fake event to kindle4

* modify focusmanager to allow for more complex layout

The focusmanager now naviguate the layout by avoiding nil value
instead of relying on table lenght. It should be completely backward
compatible

* add Dpad naviguation to the touchmenu

* fix crash because virtualkeyboard on non touch device

the kindle4NT has no keyboard nor touch, the fix open the virtual
keyboard so koreader dont crash but it's not useable

* Enable device with keys to use the touchmenu

* Don't get stuck in reader progress statistics plugin

* [underlinecontainer] Fix and remove unused function

References #1898.
2018-03-14 22:16:38 +01:00
Robert
a692b5adfb KeyValuePage: option to align value to the right (#3550)
Applied in Reading statistics plugin
2017-12-17 22:08:13 +01:00
Robert
efa0d06df9 Add new options to screensaver (#3535)
* Prevent open screensaver more than one in the same time

* Add option to enable/disable background in message screensaver

* fallback to random images if this book cover is excluded feature + fix Disabled (leave screen/page as it is)

* Autostretch disable by default, more fallback options, leave screen as it is
2017-12-17 18:27:24 +01:00
Robert
a6de9ff7d4 [UX] Right align keyvaluepage in statistics (#3507) 2017-11-20 18:08:55 +01:00
Robert
31f8372c87 [fix] Statistics: onPosUpdate and save stats when closing document (#3332) 2017-10-10 08:49:13 +02:00
poire-z
66e521f34b Fix stats in cre scroll mode (#3331) 2017-10-09 20:22:34 +02:00
Robert
0b2b2bbc2b refresh footer (#3313) 2017-10-07 12:28:08 +02:00
poire-z
b483c54be8 Fix footer, stats, TOC position with cre in scroll mode (#3304)
This gives the page position to these modules even in scroll mode.
Also, in readerrolling: don't query battery/charging status
when crengine does not need it (used only when it shows its top
progress bar).
2017-10-05 21:49:59 +02:00
Robert
8d765e7d0d Add back button to statistics (#3267)
Closes: #3236 and #3235
Details:

> Also, when looking in days, we see info how many hours we read. It would be great if we could tap a day, it opens info on book(s) we read that day with info pertaining to that day, and if we tap on book, we receive book info for that book.

>  Statistics plugin is really great, I started to look in my reading statistics now much more, but all the time I can go only in one way. And I need to exit at lowest level of info. It would be great if I can use statistics plugin like part of menu, to go up and down within statistics data and exit at my wish, not when I have to.

Also added:

 * new statistics book by week
 * new statistics book by month
 * last year by week now we can see days in selected week
2017-09-28 15:35:25 +02:00
Frans de Jonge
8f3a5353e5 [fix] statistics: typo (#3252) 2017-09-23 22:03:28 +02:00
Frans de Jonge
a6be301695 Added Size module 2017-09-23 20:24:45 +02:00
Frans de Jonge
9eb073a524 [travis] Add protection against unscaled sizes
As pointed out by @poire-z

* [fix, UX] SkimToWidget scaling

* [fix] Button scaling

* [fix, UX] Scale ProgressWidget

* [fix, UX] Scale confirmbox

* [fix, UX] Scale just about everything
2017-09-23 20:24:45 +02:00
Robert
f0b9a66359 Book information for all books (#3250) 2017-09-23 19:51:58 +02:00
Robert
2c3936ddb4 Refactoring readerfooter statistics - TB and TC (#3223) 2017-09-16 13:36:54 +02:00
Robert
7c88bad189 [fix] Statistics settings reset to default when on save without change (#3188)
* Fix: #3186
2017-09-14 22:31:25 +02:00
Robert
e5eb015f1b Statistics in bookstatuswidget (#3218) 2017-09-14 22:29:09 +02:00
Robert
b617efa21f Disable Current book when statistics are disabled (#3210) 2017-09-12 18:35:23 +02:00
Robert
392209c200 Change message after import (#3197) 2017-09-10 13:12:19 +02:00
Robert
c948472b66 On monthly statistics we can see the daily stats (#3175) 2017-09-09 20:19:05 +02:00
Robert
807c4a256d Fix problem with import old .stat files (#3195) 2017-09-09 20:18:16 +02:00
Robert
a003b375c2 Fix: Remove primary key from page_stat (#3157)
* Fix: Remove primary key from page_stat

* Fix: Prevent crash on Reading progress when no data from last 7 days

* Add indexes
2017-09-01 22:05:57 +02:00
Frans de Jonge
a8d65aad35 [fix] Statistics: translation (#3151)
* [fix] Statistics: translation
2017-08-30 21:53:13 -07:00
Robert
7cec63e77a database name change to statistics.sqlite3 (#3147)
Clearer filename.
2017-08-29 20:42:17 +02:00
Robert
0e2d20353a Statistics plugin v2 (SQLite) (#2893) 2017-08-29 17:34:49 +02:00
Frans de Jonge
e1aa57f27e Font: unify font styling 2017-04-29 03:01:38 -07:00
Frans de Jonge
338fcd76ae Lang: two tiny strings
* ReaderHighlight: underscore to underline. Although underscore means to
emphasize by underlining, the emphasis lies on the, ahem, emphasis. Besides
which, it's mostly AmE and less well understood worldwide (although in this
particular context it should probably cause no trouble).

* Statistics plugin: menu item text to "reading statistics" to make it clear
which statistics we're talking about. Fixes #2744.
2017-04-09 15:03:21 -07:00
Frans de Jonge
a970a1f034 MenuSorter: fix outside testability (for potential unit tests) 2017-03-26 11:12:44 +02:00
Frans de Jonge
8f31a81601 MenuSorter: some documentation
MenuSorter: forgot to add plugin style change

MenuSorter: worked out the final quirks

* Menu always compressed into tables without missing indexes for ipairs compatibility
* Orphans attached
* Separators no longer count as items
2017-03-26 11:12:44 +02:00
Frans de Jonge
5b20106db7 MenuSorter: initial implementation
* Menus are now sanely configurable
* Custom separator placement for clearer menus
2017-03-26 11:12:44 +02:00
Robert
0cab4ca35e Day of week and months can now be translated (#2546)
* Day of week and months can now be translated
2017-02-19 13:12:45 -08:00
robert00s
042eb660e8 Can't display the doc name in Statistics page 2017-01-24 20:14:36 -08:00
Nick Savage
d33fee3a40 Statistics: Add percentage completed to Statistics plugin
Makes percentage completed easily accessible through the statistics plugin. It has always been accessible through the status bar, but not through the statistics menu.
2017-01-20 02:58:11 -08:00
Hzj_jie
dbdce45129 Update statistics plugin to support docless mode 2017-01-08 01:14:22 -08:00
Qingping Hou
ead5dfd9b4 readerview(feat): add registerViewModule method 2016-12-25 12:13:53 -08:00
Hzj_jie
c662ca4cc8 Load plugins also in FileManager (#2426)
added is_doc_only plugin attribute
2016-12-19 23:19:54 -08:00
Qingping Hou
854043e18d chore: fix all luacheck errors for plugins 2016-11-07 21:24:34 -08:00
robert00s
872ac457da Create reading progress page (#2312)
Create reading progress page
2016-11-04 14:35:20 -07:00
Qingping Hou
93873bfd69 plugins(chore): fix static check errors 2016-11-01 00:31:24 -07:00
robert00s
378ba2c7fe Extend current book statistics and fix bugs 2016-11-01 00:05:51 -07:00
robert00s
42b705f47d Extend and fix statistics (#2300)
* Extend and fix statistics
* Add reading statistics: https://github.com/koreader/koreader/issues/2299
* Statistics / All Books shows only currently opened book : https://github.com/koreader/koreader/issues/2170
* Fix incorrect time: https://github.com/koreader/koreader/issues/2298
2016-10-24 10:15:56 -07:00
chrox
1d887f4fe1 book reading statistics for djvu documents 2016-07-15 23:00:46 +08:00
Qingping Hou
c22a3747d8 fix all the tests 2016-04-19 00:01:28 -07:00
Frans de Jonge
b92e2264a1 Fix statistics translation 2016-04-04 17:39:02 +02:00
Qingping Hou
7a22282dbe statistics: show current value in setting 2016-03-05 12:59:32 -08:00
Alex Pletnev
853e8581d0 fix error in case when process old statistics files 2016-02-15 15:58:46 +02:00
Qingping Hou
bc8144ddfa statistics: ignore books with 0 total_time 2016-02-15 02:18:10 -08:00
Qingping Hou
11ee8d6fcc refactor: use new KeyValuePage widget for displaying statistics 2016-02-14 21:54:17 -08:00
Alex Pletnev
fbf98ed920 #1710 FR: Add support of statistics plugin for pdf 2016-02-12 16:55:02 +02:00
Alex Pletnev
a6ebbe9adb #1807 FR: Add separator into menu 2016-02-11 18:47:27 +02:00
Qingping Hou
2f0544b1b7 refactor(statistics): avoid magic 0.1 schedule with PostRender event 2016-02-07 14:03:53 -08:00
chrox
2ea217296b comments on the delayed stats initialization 2016-02-06 23:39:11 +08:00
chrox
6d3634b58d fix occationally stats being wiped out 2016-02-06 23:33:52 +08:00
Qingping Hou
e19f73bdba style(util): rename tablelength to tableSize 2016-01-31 14:58:05 -08:00
Alex Pletnev
6bf9d75807 #1750 TB feature/statistics issue
Change time to read book formula to: ((total_read_time / read_pages) * (all_pages - current_page))
2015-12-21 08:49:03 +02:00
Alex Pletnev
ce4e32e01c #1723 Add time to read into the status bar
Add new statuses:
TB - book time to read
TC - chapter time to read

Fix backward compatible in statistics plugin
2015-11-27 17:13:01 +02:00
Alex Pletnev
daebb00f50 #1718 Save the statistics data into the history file 2015-11-23 21:37:36 +02:00
Alex Pletnev
698374c948 #1707 FR: Time to Read. Add "Time to read" into "current" section for statistics plugin 2015-11-07 00:44:38 +02:00
chrox
9d041fd5a3 fix FlushSettings event consumed by statistics plugin
so that ReaderUI cannot receive that event and all devices
don't flush settings when going into suspend or background.
2015-10-26 22:11:11 +08:00
chrox
a60544b1ad Koreader Ubuntu-touch port
Currently only tested on Ubuntu-touch emulator with framework
ubuntu-sdk-14.10 for armhf.
The ubuntu-touch port is binary compatible with the Kobo port
major changes in this PR are:
1. rename the emulator device to sdl device since both the emulator
and the ubuntu-touch target use libsdl to handle input/output.
2. ubuntu-touch app has no write access to the installation dir so
all write-outs should be in a seperate dir definded in `datastorage`.
2015-10-03 14:48:51 +08:00
Alexander Pletnev
57d6d64ad3 Add Statistic plugin (#1581 Amount of hours spent on a book)
check for NaN in case when nothing read yet
2015-10-02 23:31:00 +03:00
Alexander Pletnev
24a4830bcc #1658 fix "All time" in statistics 2015-10-02 23:18:18 +03:00
chrox
9fd4ee8eac fix statistics translation 2015-09-26 13:00:50 +08:00
Alexander Pletnev
85f284440c Add Statistic plugin (#1581 Amount of hours spent on a book) 2015-09-16 12:12:31 +03:00
Alexander Pletnev
c797bb53a4 Add Statistic plugin (#1581 Amount of hours spent on a book)
Add template
2015-09-15 22:36:43 +03:00
Alexander Pletnev
c45328f14e Add Statistic plugin (#1581 Amount of hours spent on a book)
Changes based on comments
2015-09-13 22:34:20 +03:00