Commit Graph

1766 Commits (7a2bf214347d1fbc10cf259d0f5130e9855af282)

Author SHA1 Message Date
poire-z c0c243c41a Menu: don't underline items on touch devices (#3663)
First item would be underlined if the device is both Touch and Keys
capable (emulator, android, pocketboot...), which is not really
pretty. Delay that till Keys for focusing are really used.
6 years ago
Robert 9c373f138f Menu: speed up rendering of long texts (#3657)
Slowness mostly noticable in Bookmarks with long highlights
6 years ago
poire-z b0f0e839fb [UX] Dict: scroll back with tap: go to bottom of prev definition (#3647) 6 years ago
poire-z 9d44930960 Add menu item for toggling auto_book_status (#3642) 7 years ago
poire-z 43a6cf4b2e Add MovableContainer: allow moving some widgets (#3636) 7 years ago
poire-z 5cfe9992ad Wiki Save as EPUB: better handling of math formulas (#3639)
Also fix some bad filename and extension in epub's OEBPS/content.opf,
Store image files (jpg, png, gif) uncompressed in the .epub as they
don't need compression.
7 years ago
poire-z b16c93bbe5 HtmlBoxWidget: fix selection when starting from end (#3632) 7 years ago
poire-z 1e9457c9b4 Wikipedia full & epub: swap symbols for H3 and H4 (#3627) 7 years ago
poire-z ba389c9a00
epub metadata: support multiple authors (#3624)
crengine may now give us multiple authors (if multiple <dc:creator>
in epub metadata) separated by \n.
Deal with that where needed.
Limit the number of authors displayed in coverbrowser views.

Bumped base/crengine: multiple <dc:creator> + fix mobi images order
Bumped base: util.runInSubProcess(): give child its own process group
7 years ago
poire-z 35df1749b2
Screensaver: a few tweaks and fixes (#3619)
When no manually added specific 'poweroff' or 'reboot' screensaver
settings, use the suspend/sleep settings set via menu with an added
overlay message in top right corner.
Generalized some settings: "White background behind message and images"
and "Stretch covers and images to fit screen", and move "Exclude this
book's cover from screensaver" up a level (and remove this menu item
added by ReaderMenu when closing document).
Don't use memory cache with rendered screensaver images.

ImageWidget: fix wrong behaviour (stretch) when 'file', 'width',
'height' and 'scale_factor' provided: now, keep aspect ratio.
ImageWidget: increase file image mem cache (mostly used for icons)
from 2 to 5MB to be ready for devices with very high DPI.
7 years ago
Robert dd00417bc8 Sort documents - open sidecar file only in percent sort (#3622) 7 years ago
Robert 46e0f30b0a Proper page changes using the up and down keys (#3621) 7 years ago
poire-z 775b7a364f Wikipedia: show images and allow interrupting queries
Reword some english messages
7 years ago
poire-z 43ad2cef99 TextBoxWidget: optionally display a list of images
(each one at top right of each page)
Such images can be loaded dynamically when the display of a page requires it.
Allow alternating between the image and its title with Tap on it.
Allow for viewing this image zoomed in ImageViewer with Hold on it.

DictQuickLookup: add generic support for result.images, that
could optionally be provided in Wikipedia lookup results.
7 years ago
poire-z 0ef948f60d Trapper: adds dismissableRunInSubprocess() + new TrapWidget
New TrapWidget: invisible full screen widget for catching UI events. Can
optionally display a text message at bottom left of screen (ie: "Loading..."),
used by default by Trapper:dismissable functions when no widget provided.
Added Trapper:dismissableRunInSubprocess() to run a lua function in
a sub-process, allowing it to be dismissed, and returns its return
value(s).
7 years ago
poire-z b1863d3a71 ImageViewer: with title bar, allow for a secondary toggable caption 7 years ago
Frans de Jonge acacd7a7f8
[UX] Move "Go back to previous location" up one menu level (#3615) 7 years ago
Robert 6e87735b79 Filemanager - sort by percent of book (#3614) 7 years ago
mwoz123 1d0a5b4aa3 [feat] Add NetworkManager:beforeWifiAction() to enable optional auto-connect (#3482) 7 years ago
Frans de Jonge 21274f5e92
[feat] Add NetworkManager:isConnected() (#3593)
This enables connecting to calibre and FTP without Internet connectivity.
7 years ago
TnS-hun b40bc53fc7 HTML dictionary link support (#3603) 7 years ago
Robert d201c04df7 OPDS - add confirm when file exist in local destination (#3605) 7 years ago
Robert d163f8281d Menu: configure number of items per page, wrap entries (#3589)
Configure number of items per page (from 6 to 24) - default is 14
Allow filenames to wrap so that we can see the full name
Used by File browser, History, Search Result, Bookmarks, Table of contents (only single line), File chooser, OPDS catalog
7 years ago
poire-z d51c184060 KeyValuePage: make PgUp and PgDown key go to prev/next page (#3590) 7 years ago
poire-z 7feea4037e
HTML dict: fix continuous scroll with tap (#3587) 7 years ago
poire-z 8c897a086f HTML dict: enable color rendering and per-dict user fix html func (#3585)
Also fix possibility of crash in HtmlBoxWidget:free()
7 years ago
poire-z 30200b516f Fix scroll with swipe in scrollhtmlwidget (#3586) 7 years ago
poire-z 262e55d0ae Dict: make html and text results look similar (#3582) 7 years ago
poire-z bfb07c79ef Fix: scale html dict result font size (#3581) 7 years ago
TnS-hun 06a8a33d39 HTML dictionary support (#3573)
* Adds a generic HTML widget modeled after the text widget, and HTML dictionary support. HTML dictionaries can have their own CSS (for X.ifo it must be X.css). The base CSS just resets the margin and sets the font.

Note that the widget doesn't handle links, that wasn't needed for the dictionary.

Closes <https://github.com/koreader/koreader/issues/1776>.

* Show tag stripped HTML if the dictionary entry isn't valid HTML

* Simulate the normal <br/> behavior

* Bump base
7 years ago
poire-z 98abcafa1b Screensaver: change default & show messages on reboot and poweroff (#3572)
Use "message" as the default for screensaver (instead of "disable") (https://github.com/koreader/koreader/pull/3535#issuecomment-353337143)

On Kobo 
Fix: display message on poweroff or reboot (https://github.com/koreader/koreader/pull/3535#issuecomment-352355865)
Allows for overwritting these default messages with the classic screensaver settings, by just prepending "poweroff_" or "reboot_" to them. (https://github.com/koreader/koreader/pull/3535#issuecomment-352498497)

So one can manually add to its settings.reader.lua:
```
"poweroff_screensaver_type" = "random_image" or "message", "cover", "bookstatus", "readingprogress", "disable",
"poweroff_screensaver_dir" = "path to same as screensaver_dir or alternate dir for poweroff image(s)",
"poweroff_screensaver_message" = "message to use instead of Powered off",
```
```
"reboot_screensaver_type" = "random_image" or "message", "cover", "bookstatus", "readingprogress", "disable",
"reboot_screensaver_dir" = "path to same as screensaver_dir or alternate dir for reboot image(s)",
"reboot_screensaver_message" = "message to use instead of Rebooting...",
```
7 years ago
Fabian Müller-Knapp 88c03c08d1 Partial fix for 3477 (#3568)
Partial, as it will safe the state when suspending the reader by pressing the power-button.

However, it will still not safe the state when Pocketbooks autoPowerOff-Feature kicks in, as this does not create an event (e.g. no EVT_BACKGROUND) of any kind.

* Clean up device.lua

* Save state on suspend
7 years ago
Robert 227584de22 New option - create new directory (#3555) 7 years ago
Ben Kelly f9ac8b138b Basic fixes to calibre-sync (#3558)
* Properly create intermediate directories when receiving books from Calibre.

This fixes an issue where you can't receive books except into directories that
already exist on the Kobo, which, in particular, causes problems when your
configuration in Calibre is something like "put books in $Author/$Title.epub"
and you haven't previously synced any books by that author.

* Wake up periodically to process ZMQs if any are registered.

This fixes an issue where if there are any timed events (such as the suspend
timer) in the queue, ZMQ events may not get processed until the timed event
fires, which is a problem when (for example) the suspend timer goes off in
an hour and you have something trying to send a book to the kobo over wifi
*right now*.

With this change, the event loop will wake up every 50ms to check for ZMQ
events and process them if necessary. If there are no ZMQs registered (which
is typical), it uses the original behaviour -- so this won't affect battery
life under normal usage.
7 years ago
poire-z 69ec6c07c5 Wikipedia Save as EPUB: fix some wiki links and speedup download (#3551)
- Fix links to wikipedia pages containing '?oldid=123', that
  wouldn't work when used back thru the API.
- Make external links to other wikipedias with a different langage
  work (they didn't work when non-ascii page titles)
- Speedup download of images by using a newly added 'fast_refresh'
  option to Trapper:info() to bypass UIManager.
7 years ago
Robert fe4d52c406 Remove unneeded string S.DARKEST (#3552) 7 years ago
Robert a692b5adfb KeyValuePage: option to align value to the right (#3550)
Applied in Reading statistics plugin
7 years ago
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
7 years ago
poire-z 70f2aa09ea Adds Wikipedia history (#3549)
Just like Dictionary lookup history.
Also changed Disable to Enable in some menu items to be more positive.
7 years ago
poire-z 8886e16baa Small fix to wikipedia epub stylesheet (#3534) 7 years ago
TnS-hun 29b376fdd9 [UX] Option to show dictionary in large window (#3499) 7 years ago
Robert b37ae2d681 [UX] Fix bookstatuswidget truncated at the bottom in landscape (#3498) 7 years ago
poire-z 8192a2f947 Small decrease of ToggleSwitches width
Just to add some margin, needed on large screen DPI
7 years ago
poire-z 445926ab1c Fix live refresh when changing pdf contrast
nextTick somehow prevented a full refresh of the screen
scheduleIn, as used by other widgets, makes that ok
7 years ago
poire-z 8360164e24 Use toggle for CRE Contrast in bottom menu (#3490) 7 years ago
Frans de Jonge 2538189473
[doc] WidgetContainer: fix some typos 7 years ago
Robert 0def547162 More contrast settings (#3463)
Close: #2133 
More info: #2133
7 years ago
Robert 178555180f [fix] Disable Highlight button when text is not selected (#3457) 7 years ago
Robert 198c151125 ConfigDialog improvements 2 (#3455)
+ Fix height for ToggleWidget
+ Able ToggleWidget width more than half of width of screen
7 years ago
Robert 369cf4f102 [UX] Improve ConfigDialog (#3443) 7 years ago
mwoz123 a01271b8a6 [Android] Wifi status in footer (#3396)
Implemented through the Android API so it's reasonably cheap.
7 years ago
poire-z 99161d6b03 Wiki save as epub: close highlight menu when switching document (#3417) 7 years ago
poire-z 3639c3e7c6 [UX] Fix dict title width to not go over CloseButton (#3414) 7 years ago
poire-z 568a28889b KeyValuePage: option to align value to the right when half-overflow (#3407)
Applied in FileManagerBookInfo.
7 years ago
Robert af61153df2 [feat] SkimToWidget chapter markers & next/prev chapter/bookmark (#3389)
https://github.com/koreader/koreader/issues/2819#issuecomment-332261968
+ refactoring code in skimtowidget
+ add chapter markers
+ add next/prev chapter buttons
+ add next/prev bookmark buttons
7 years ago
Frans de Jonge 5c6161da66 [fix, Android] adjust touch location for #3392 (#3394) 7 years ago
mwoz123 822360666a Fullscreen android - resize window after toggle fullscreen (#3392) 7 years ago
mwoz123 ff3d8f3df7 Android NetworkManager (#3386) 7 years ago
poire-z 591dc2119c FileBrowser: optimize 'change page to show last file'
This feature, introduced some days ago, was actually
doing 2 updateItems calls: the initial one, and a second
to switch to focused_file page (cheap with classic display mode,
less cheap with CoverBrowser modes).
This change allows doing that in a single call.
7 years ago
Robert ba6cc87424 Fix location of progress bar ticks (#3382) 7 years ago
poire-z c15915a4ee Added util.getFriendlySize() (#3381)
* Added util.getFriendlySize()

* Allow for GB
7 years ago
poire-z 8aa26edeb6 Fix some widget title height and close button alignment (#3366) 7 years ago
poire-z 8fd4154891 Small visual fixes to top menu (#3356)
To make it more alike bottom menu:
- left and right border not displayed
- line below icons extends to screen borders
- same bottom border size
And make separator lines have same padding on both sides
7 years ago
poire-z 29707bd664 FileBrowser: change page to show last file or previous subdir (#3351)
When going from reader to filemanager, we are in the directory
containing the last_file. With this, we will also be on the page
showing this file.
When in filemanager and going up (".."), we will also be on the
page containing the directory we came from.
7 years ago
poire-z 532c850cbd Menu (TOC, bookmarks): add padding before right text (#3350) 7 years ago
poire-z f90973f73a Allow for disabling flashing of menu, icons and buttons (#3339) 7 years ago
poire-z 430b61ba76 Small visual fixes to Menu (#3338)
Rationalize horizontal construction of Menu items (TOC,
Bookmarks, Classic file views) for more even padding.
Align "x" close button diagonaly with top right border and title.

Also add forgotten scale_for_dpi to MultiConfirmBox
7 years ago
Robert a392fbcca0 [feat] VirtualKeyboard cursor navigation (#3290)
Still lacks Japanese due to insufficient knowledge of the language.
7 years ago
Robert bcb09f3aa1 Flash KeyValuePage item when callback (#3322) 7 years ago
poire-z 9443098e98 Normalize some widgets appearance (those using ButtonTable)
This makes button heights similar in all uses of ButtonTable.
It depended on how the ButtonTable was used in each widget
(previously, first and last row may have different sizes than
the others).

buttontable.lua: more even buttons height whether zero_sep or not
framecontainer.lua: added padding_top/bottom/left/right (similar to
what was done for iconbutton)

The following widgets have been adapted for this, with some
additional fixes:

buttondialog.lua
buttondialogtitle.lua: wider title with adequate padding
confirmbox.lua + multiconfirmbox.lua: dismissable via tap outside
inputdialog.lua + multiinputdialog.lua: more even vertical padding between elements
imageviewer.lua
textviewer.lua
datewidget.lua
timewidget.lua

Additionaly: frontlightwidget.lua: fixed width of progress bar that
was exceeding window width since the Size scaling adjustements
7 years ago
poire-z 2fc8076139 Better vertical centering of text in its box
Decide baseline vertical position according to font metrics, instead
of the hardcoded 0.7 (in textwidget, which made the text a little
bit up in its box), and 0.75 (in toggleswitch, which made the text a
little bit down in its box). This usually gives a value around 0.72
or 0.73 with our ui fonts, which looks about right.
ReaderFooter: add bottom padding, now that our text goes a few pixels lower
7 years ago
Robert 9ea2b3dbad Option to disable show bottom menu on top menu activation (#3316) 7 years ago
Frans de Jonge d23d01643e Add LuaData and Dictionary Lookup History (#3161)
* Add dictionary history

Fixes #2033, fixes #2998.

* Add LuaData

* table handling in base settings

* Add LuaData spec
7 years ago
poire-z 8c700eefd9 Avoid some full refreshes on Kindle (#3315)
"partial" refresh causes a full (without black flash) refresh on
Kindle (which uses REAGL mode for partial refresh). This causes a
full redraw of widgets, which is a bit distracting with some of them:
- dictquicklookup: when showing next definition
- infomessage: when displaying a new one (Wikipedia Save as epub)

Also fix bottom menu, that even when closed, would still register
bottom area as dirty: this would cause top menu navigation to
cause a full partial refresh, only noticable on Kindle.
7 years ago
poire-z e6fcea6e26 Fix crash with keyboard navigation of onHold buttontables (#3307)
* Fix crash with keyboard navigation of onHold buttontables

Would crash when encountering a separator or when the number
of buttons in a row changes.

* Reset previous selected item on new buttontable
7 years ago
poire-z 308c243238 Inform once about color rendering on supported devices (#3289) 7 years ago
poire-z 1f038055d3 [Fix] Full refresh when showing ImageViewer 7 years ago
poire-z 53f083f516 Allow for toggling color rendering
New menu item in Screen submenu.
hasColorScreen enabled for SDL device.
7 years ago
Robert 7323d04c1b Fix refresh in Time range (#3278) 7 years ago
Frans de Jonge 0d7999e7a5 [fix] Add hold_callback to IconButton (#3271)
Also fix path display update.

Fixes #3270.
7 years ago
Frans de Jonge 35af912f77 [UX] Smaller borders (#3266)
For years they've been smaller on higher DPI devices and likely very few people realized it was technically a bug. These values round up on lower DPI and smaller screen devices.

References https://github.com/koreader/koreader/issues/3265
7 years ago
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
7 years ago
Frans de Jonge 0fc5a378bc [UX] Add home button (#3263)
Tap to go HOME. Hold to set current folder as HOME. When no HOME is set yet tap also asks to set current folder as HOME.

See https://github.com/koreader/koreader/issues/2957#issuecomment-308513062

Closes #3200.
7 years ago
poire-z 0aa0b9b2de ImageWidget: use MuPDF for scaling images (#3260)
* Cache scaled images with scale_for_dpi

* Don't update original self.scale_for_dpi

A same ImageWidget object can be free()'d and re-render()ed,
and we would then lose scale_for_dpi on next renderings
7 years ago
poire-z 9448a52515 [UX] Smaller bottom menu icons (#3257)
And unrelated small optimisation in imagewidget
7 years ago
Robert 88aba421cb Timer Reader with normal time format (#3244) 7 years ago
poire-z c770d71f14 Fix Menu (TOC, classic file browser...) right padding (#3255) 7 years ago
Frans de Jonge 36478262bf [UX] Smaller top menu icons (#3253) 7 years ago
Frans de Jonge a6be301695 Added Size module 7 years ago
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
7 years ago
Frans de Jonge cfb039a91b [fix] Scale ImageWidget by screen size as well as DPI
Fix #3204
7 years ago
Robert bdf02f14aa Add bookmark browsing mode to menu (#3248) 7 years ago
poire-z 4d18ac1100 Some History fixes and enhancements (#3247)
Made the onHold buttons table similar to the one of File browser.
Added "Purge .sdr" and "Delete" to these buttons.
Moved the purgeSettings and removeFileFromHistoryIfWanted
logic into filemanagerutil functions.
Stay on the same page when manipulating history (previously, we were
always put back on first page).
Really keep deleted files in history (unless setting says otherwise).
Show deleted files in grey or dimmed in classic History and all
CoverBrowser display modes.
7 years ago
poire-z 47139266b2 Dict lookup: allow cancelling with tap
base bumped for ffi/util.getNonBlockingReadSize(luafile)
7 years ago
poire-z de54ef5ae6 Added Trapper module, for simple interaction with UI
This module provides methods for simple interaction with UI, without
the need for explicit callbacks, for use by linear jobs between
their steps.
Uses coroutines, but their usage is hidden by a simple API.
Factored out of Wikipedia:createEpubWithUI().
7 years ago
poire-z 5828ef8f1c Fix potential crash when clearing hold highlight (#3241)
A delayed clear() could reset hold_pos while a onHold/onHoldPan/
onHoldRelease is in progress, resulting in hold_pos becoming nil and
a crash.
7 years ago
poire-z 941d77f6bc Reduce unhighlight delay when closing dict (#3239) 7 years ago
Robert 5258643a85 Add a date setting (#3234) 7 years ago
mwoz123 ae66a367c2 Android fullscreen switcher (#2938) 7 years ago
Robert d4a4bb2b55 Refactor TimeWidget and add NumberPickerWidget (#3232) 7 years ago