Commit Graph

95 Commits (de5c872dcbdfda9deaab942c56fab94fad9160b1)

Author SHA1 Message Date
yparitcher de5c872dcb Dispatcher: add `addCurrentLocationToStack`
This is useful when i want to reference something a few pages away while keeping track of my current page
1 year ago
yparitcher 64b0f5e7cf ReaderFooter: separate ToggleFooterMode from TapFooter
the footer can be toggled by gestures and menu, and should only be locked or skim in flipping mode when the footer is tapped

also allow toggling when only displaying the progress bar

rename to TapFooter to show it is not an event

Fixes: #10355
1 year ago
poire-z 7bae2ed920 Dispatcher: add "Save book metadata" 1 year ago
hius07 d992fd3cfe
Dispatcher: translate QuickMenu title (#10271)
Closes #10270.
1 year ago
hius07 3a37d30ad6
Dispatcher: use translated labels for Zoom Mode actions (#10269) 1 year ago
yparitcher bc5d354225
ReaderLink: allow a forward location stack (#10228)
this allows going back and forth from links (think of undo / redo)

when going back and no forward locations and when we are not on the same page as the last saved location, add the current location to the forward stack, helping if one goes back by mistake they can jump back to their current location

when going back and no forward locations and when we are not on the same page as the last saved location, add the current location to the forward stack, helping if one goes back by mistake they can jump back to thier current location
1 year ago
hius07 536d71970f
Bookmark flipping mode fix (#10196)
(1) Changed indicator icon to "bookmark".
(2) Added toggling action to dispatcher.
1 year ago
yparitcher 237f44deda Dispatcher: add word spacing & expansion 1 year ago
hius07 3881899338
Dispatcher: fix dynamically built menu (#10080)
Applicable for Set font and Set highlight action actions.
Closes #10077.
1 year ago
Sargun Vohra 15fb73384f
EInk: Add a setting to toggle flashing on pages with images (#10049)
With minor code cleanups along the way ;).
1 year ago
NiLuJe 788ccac561
Input/Device: Refactor Gyro events handling (#9935)
* Get rid of the `canToggleGSensor` Device cap, it's now mandatory for `hasGSensor` devices. (This means Kindles can now toggle the gyro, fix #9136).
* This also means that `Device:toggleGSensor` is now implemented by `Generic`.
* Update the Screen & Gyro rotation constants to be clearer (c.f., https://github.com/koreader/koreader-base/pull/1568) (/!\ This might conceivably break some `rotation_map` user-patches).
* Input: Move the platform-specific gyro handling to Device implementations, and let Input only handle a single, custom protocol (`EV_MSC:MSC_GYRO`).
* Input: Refine the `rotation_map` disable method implemented in 43b021d37c. Instead of directly poking at the internal field, use a new method, `disableRotationMap` (/!\ Again, this might break some `rotation_map` user-patches).
* Input: Minor tweaks to event adjust hooks to make them more modular, allowing the Kobo implementation to build and use a single composite hook. API compatibility maintained with wrappers.
1 year ago
poire-z b1b7773237
TouchMenu: tweak menu search (#9926)
- Cleanup search and animation codes, fix inconsistencies
  between animation/no-animation opening, and refreshes
  glitches on eInk.
- Show menu item on tap, with buttons to either open
  directly, or to walk there (removed earlier "Animation"
  checkbox, so the choice can be decided later).
- Move event handlers into ReaderMenu/FileManagerMenu.
- Avoid duplicated and confusing results from gestures
  and font-family submenus.
1 year ago
hius07 7719ad04f3
Reader: add open next file in folder to Dispatcher (#9916)
Closes https://www.mobileread.com/forums/showthread.php?t=350683.
1 year ago
Frans de Jonge e58a12ba04
TouchMenu: Search menu to search the menu (#9876)
Fixes #9800.
1 year ago
yparitcher 513c88d661
Dispatcher: only suspend if Device:canSuspend (#9842)
Closes #9838
1 year ago
hius07 5b889a0145
Reader style tweaks: register in Dispatcher manually (#9816)
Style tweaks can be applied with a gesture or added to a profile.
2 years ago
hius07 9338b2e524
Dispatcher: show values (#9777) 2 years ago
NiLuJe 1ec6fb5fcf InputContainer/Dispatcher: Allow toggling touch input
This is made easier by the fact that only a single method in a single
widget actually handles Gesture, and that we barely ever overload it.
So, apply a bit of monkey-patching trickery to handle the magic :).

Fix #9695
2 years ago
Frans de Jonge 0f52499d37
Dispatcher: add unused singular to action plurals (#9734)
Tools and humans alike are confused by leaving it empty. It should be inoffensive to resolve the problem this by having an unused singular. Doing anything else would make it so we couldn't have the correct plurals in Slovak, among others.

Follow-up to https://github.com/koreader/koreader/pull/9726
2 years ago
hius07 c3ed51aded
ReaderHighlight: set default long-press action with a gesture (#9723) 2 years ago
Frans de Jonge 71cad1e49c
Fix broken translation metadata (#9726)
Should fix https://github.com/koreader/koreader/discussions/9719

Regression introduced in https://github.com/koreader/koreader/pull/9682 by my fault.

See the xgettext error message:

```
frontend/dispatcher.lua:573: warning: Empty msgid.  It is reserved by GNU gettext:
                                      gettext("") returns the header entry with
                                      meta information, not the empty string.
xgettext: warning: msgid '' is used without plural and with plural.
                   xgettext.c:1975: Here is the occurrence without plural.
                   frontend/dispatcher.lua:573: Here is the occurrence with plural.
                   Workaround: If the msgid is a sentence, change the wording of the sentence; otherwise, use contexts for disambiguation.
```

Co-authored-by: Frans de Jonge <frans@clevercast.com>
2 years ago
hius07 d37803a8e7
Dispatcher: preserve profile name, show actions count (#9682)
(1) Preserve profile name when selecting the "Nothing" action.
(2) Show number of actions instead of "Many".
2 years ago
poire-z 48eb02318d
Dispatcher: avoid multiple cre rerenderings when many settings changed (#9651)
When a gesture/profile was updating multiple cre settings,
each setting handler would emit UpdatePos which each would
force a re-rendering.
When this might be happening, postpone the rerendering
until all are set.
Needs some bit of refactoring to the events at play:
introduce "DocumentRerendered" event, and use it where
we used "UpdatePos" or "UpdateToc" to mean exactly that.
2 years ago
yparitcher e424fcf5de
Dispatcher: Fix subtle bug with modified items being added twice to the sort index (#9628)
Discovered by @poire-z in https://github.com/koreader/koreader/pull/9531#issuecomment-1274839234
2 years ago
yparitcher a916a5e8a2 Dispatcher: QuickMenu: Fix footgun
Fixes: #9594
2 years ago
yparitcher 8a754cd271 Dispatcher: Fixes, Sort & QuickMenu
Fix condition check, simplify getNameFromItem

Allow sorting Dispatcher items and displaying them as a QuickMenu
2 years ago
zwim 6f5c229c90
[UIManager] Outsource device specific event handlers (was: some nits) (#9448) 2 years ago
NiLuJe 96930f230f
Add "Invert page turn buttons" to Dispatcher (#9494)
Fix #9492
2 years ago
NiLuJe 8e1bb9bafc
GestureDetector: Full refactor for almost-sane(TM) MT gesture handling (#9463)
Should hopefully make two-contact gestures *much* more reliable, among other things.

See the PR for all the details ;).
2 years ago
poire-z b6f951e523
Screensaver: add option to require a gesture after resume (#9316) 2 years ago
Martín Fernández b7a27a3db3
Fullscreen refactor (#9237)
Commonize fullscreen code across different devices.

Add fullscreen toggle on SDL desktop targets. 
Expose the toggle to the dispatcher and map it to F11.

Hide touchmenu when resizing.
2 years ago
yparitcher 5b29f1b927
Page turn animations: add to dispatcher (#9160)
For real this time :)

See #9123

https://www.mobileread.com/forums/showthread.php?p=4226937#post4226937
2 years ago
yparitcher a97dbb05ed
Page turn animations: add to dispatcher (#9123)
xref: https://www.mobileread.com/forums/showthread.php?p=4224443&postcount=1119
2 years ago
NiLuJe 2de2a8ab76
NetworkManager: Make sure we show an IM at the *start* of a Wi-Fi toggle action (#9064)
Ensures the worst-case scenario has minimal visual feedback.
2 years ago
NiLuJe afe1dc9681 Don't show SW dither toggle on devices w/ HW dithering 2 years ago
NiLuJe 3122bcd9bc KOptOptions: Allow toggling SW dithering
Fix #8748
2 years ago
poire-z bc16b32395 Add Book map and Page browser features
- Book map: shows a map of content, including TOC,
  boomarks, read pages, non-linear flows...
- Page browser: shows thumbnails of pages.

- ReaderThumbnail: new Reader module that provides
  a service for generating thumbnails of book pages.
  It makes available these 2 new fullscreen widgets.
- ReaderBookmark, ReaderLink, Statistics: add methods
  to return new views of bookmarks, previous locations
  and read pages, that are needed by BookMapWidget.
- ReaderToc: compute TOC max_depth.
- ReaderBookmark, ReaderHighlight: send events on
  bookmark add/update/remove so thumbnails of the
  pages impacted can be trashed.
2 years ago
yparitcher 035be38430 Dispatcher: Set font
Closes: #8531
2 years ago
yparitcher 46f1f3eb5e Dispatcher: allow args_func 2 years ago
yparitcher fd34daf224 Dispatcher: some of these are actually strings not numbers
partialy revert 4c0d11c6d9

Fixes: #8534
2 years ago
hius07 d4eecd9f00
SpinWidget in Dispatcher fix (#8558)
Enable SpinWidget OK button in dispatcher for unchanged value.
2 years ago
hius07 a703b213f7
File manager: group operations (#8536)
Copy/Move/Delete for group of files.
"Select files" button in the filemanager Plus menu.
2 years ago
hius07 785eb5f3ef
Bookmark search (#8504)
From bookmark list, main menu and with a gesture.
2 years ago
yparitcher 61d02923e9
Dispatcher: fix horizontal margins (#8344)
Regression from #8287
3 years ago
yparitcher 4c0d11c6d9 Dispatcher: use absolutenumber in more places 3 years ago
hius07 1e47cd7e5f
SpinWidget: similar size in portrait and landscape (#8226) 3 years ago
Frans de Jonge b48cce7fa0
Dispatcher: adjust "screen and lights" to style guide (#8215)
Same as "Taps and gestures"
3 years ago
yparitcher 1f8574cf7e Dispatcher:removeAction()
Gestures: use sub_item_table_func to allow the menu to refresh on change
3 years ago
yparitcher f5dc7b4539 Dispatcher: Revamp sections and item order 3 years ago
yparitcher 3b6f521e26 Statistics: move dispatcher items to plugin 3 years ago