Commit Graph

277 Commits

Author SHA1 Message Date
David
92effcf9fb Replace checkboxes with radio buttons where appropriate (#14431) 2025-10-14 22:53:47 +02:00
hius07
4785f59066 Statistics: add reference pages support (#14388) 2025-10-02 11:27:37 +03:00
David
6c25d045eb Invert progress bar direction, independently of UI layout (LTR/RTL) (#13382) 2025-08-29 08:13:01 +02:00
hius07
36b8732134 readerfooter: skip dynamic filler in items cycling (#14232) 2025-08-27 18:14:53 +03:00
hius07
6c7efa1bdf expandString(): replace patterns with data (#14181) 2025-08-23 09:27:10 +03:00
hius07
7d400453b9 ReaderFooter: document position is not used (#14076) 2025-08-17 07:42:19 +03:00
David
30499e33b0 Add new presets.lua module and dictionary presets (#13774) 2025-06-20 23:33:45 +02:00
hius07
b59734dfab Minor fixes (#13930) 2025-06-13 07:42:08 +03:00
hius07
6133a43512 TouchMenu: optimize item removal (#13901) 2025-06-04 08:15:02 +03:00
hius07
178bb823f0 Dispatcher: update action name or value (#13831) 2025-05-22 17:57:36 +03:00
hius07
14d2848362 Status bar: fixes (#13746) 2025-05-14 18:09:52 +03:00
hius07
b1f28dd9e1 readerfooter: fix dynamic filter and presets (#13739) 2025-05-06 19:28:40 +03:00
hius07
93bffb8222 Status bar presets: action in Dispatcher (#13718) 2025-05-05 17:34:01 +03:00
David
acbde33b2b [ReaderFooter] add status bar presets (#13689) 2025-05-02 08:48:54 +03:00
hius07
75f49b135f Status bar: dynamic filler (#13702) 2025-05-01 16:50:23 +03:00
hius07
48d50f76cf Status bar sort items: dim inactive items (#13682) 2025-04-26 19:56:23 +03:00
David
d66527cd0e [ReaderFooter] keep menu open after arranging items in status bar (#13168) 2025-02-01 21:12:41 +01:00
hius07
97a7ebefb9 Text editor: rotate (#12658) 2024-10-29 20:49:43 +02:00
David
08205c47c8 [ReaderFooter] Update status bar in real time when inverting page turning (#12424) 2024-09-25 21:16:06 +02:00
NiLuJe
5fc5386e87 ReadTimer: Don't blindly repaint the footer in update_status_bars
Send a dedicated event that will let ReaderFooter check if we actually have anything relevant to display, and will do the usual "should I repaint/refresh" checks ;).

Fix #12323
Regression since #12002
2024-08-28 23:53:38 +02:00
NiLuJe
a86271b8f1 ReaderFooter: Use maybeUpdateFooter in onBookMetadataChanged
I'm not sure that one could ever have been truly problematic, but let's
be cautious ;).
2024-08-28 23:53:38 +02:00
David
dd9f96eddb ReaderFooter: fix page-turn item (#12388)
Account for per-document reading order direction adjustments.
2024-08-25 22:44:19 +02:00
hius07
415ce40f84 Touch menu: always go up to correct parent page (#12378) 2024-08-21 20:53:45 +03:00
David
466971c0e2 ReaderFooter: add page-turn item (#12249) 2024-08-10 10:09:23 +02:00
hius07
e5fb836a81 ReaderFooter: improve (#12243) 2024-08-01 13:11:28 +03:00
zwim
df48d51eca AltStatusBar/Footer: add the read timer value (#12002)
Closes #11950
2024-07-19 22:55:31 +02:00
mergen3107
a03195d524 Footer: add book authors item (#11999)
Closes #7642
2024-06-16 13:18:38 +02:00
David
21213f35af Minor wording corrections (#11981)
see #11978
2024-06-05 22:23:00 +02:00
hius07
9223cde2bd Status bar: fix book progress (#11885) 2024-05-27 07:42:49 +03:00
poire-z
54a0cdd737 ReaderFooter: fix minor issues with pages left & chapter progress
When using Reference page numbers, "Pages left" was showing the
same info as "Current page", because Reference pages, being strings,
couldn't be used for arithmetics. But we can just count the number
of items left in the Reference pages array of strings.

Also fix edge case with "page progress" with hidden flow when
we are before the first chapter with a hidden flow before.
2024-05-24 09:36:19 +02:00
SomeGuy
e859109885 Status bar: major UI makeover (#11678) 2024-05-21 21:13:53 +02:00
hius07
d82815952e Annotations, part 1 (#11563)
New format to handle annotations (page bookmarks, highlights, notes) and store them in the book metadata files.
2024-05-03 09:08:57 +03:00
hius07
6f896e9383 ReaderFooter: chapter progress bar (#11505) 2024-03-10 08:05:30 +02:00
NiLuJe
90ae4acca6 Chore: Review FrameContainer constructors for shared dimen objects
Nothing else seems problematic, this is mostly just cosmetic sanitization
around Geom objects.
2024-01-19 00:08:10 +01:00
hius07
f765fe3070 Screenshot: set as book custom cover (#11227) 2023-12-16 10:36:57 +02:00
hius07
e4ba8c7909 Custom metadata: event (#10869) 2023-09-06 09:41:10 +03:00
hius07
1ef7821b66 getProps: centralize 2 (#10837)
Centralize and optimize handling document properties.
2023-08-30 07:53:59 +03:00
poire-z
626864f856 [chore] replace utf8 bytes with Unicode escape sequence 2023-08-02 01:28:24 +02:00
NiLuJe
ef0bcbad3f ReaderFooter: Don't reset the initial position marker like a cowboy (#10767)
Take a more tactful approach instead, should hopefully prevent issues like in https://github.com/koreader/koreader/pull/10114#issuecomment-1658913661
2023-08-01 18:43:48 +02:00
NiLuJe
08dd97384c KOSync: Clarify settings, plus refactor & fixes to make "auto-sync" more reliable (#10605)
Fix: #10539, and for context #6489, #6733, #6534

Reorganize and reword most of the settings to make it clear what actually ties into auto sync, and what doesn't. (Specifically, what happens when a pull attempts to sync forward or backward has nothing to do with auto sync, it applies in all cases; while the periodic sync *does* require auto sync).

The main point of contention, though, is that auto sync will now *always* attempt to setup network connectivity (i.e., on resume/suspend/close). Periodic sync will *not* though (the intent being that, if you use periodic sync, you're relying on the activity check to actually keep wifi on at all times)).

Since this may lead to a large amount of nagging about wifi toggles on devices w/ NetworkManager support, it is now *disabled* by default on those devices. (And given that it wouldn't have worked because of the lack of connectivity, that doesn't really make any practical difference ;p).

Additionally, given the fact that there's no way to make this behavior viable if the "before wifi" action is left at its default of "prompt", this feature now *requires* that to be set to "turn_on" (on devices where it can, of course); attempting to toggle it on will warn about that if necessary.
This change is retroactive (OTM).

Includes an assortment of fixes and cleanups, including migrating to the new LuaSettings API, which is why there's no longer a smattering of superfluous flushes.
2023-07-03 01:23:14 +02:00
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
2023-05-01 15:28:26 -04:00
zwim
4dbaca180a PM: Optimize task queue handling around standby (#10203)
Instead of firing on(Enter|Leave)Standby Events, and having every other piece of code that might care about that handle re-scheduling their stuff themselves; simply make the standby implementation (i.e., AutoSuspend's) shift the whole task queue by the amount of time spent in standby to re-sync everything automatically.

(This is necessary in the first place because Linux, as the task queue ticks in CLOCK_MONOTONIC, which does *not* tick during suspend/standby; while we expect most of the tasks scheduled to actually reflect real world clock delays).
2023-04-05 20:54:47 +02:00
NiLuJe
189739ac4c ReaderFooter: Don't reset session marker on standby (#10167) 2023-02-28 18:06:43 +01:00
NiLuJe
c5d606a7f4 ProgressWidget: Add an optional marker on the initial position (#10114)
* Enable it on SkimToWidget
* Optional on ReaderFooter (toggle in the progress bar > style submenu)
2023-02-17 00:37:30 +01:00
NiLuJe
21210800c1 ReaderFooter/Header: Refine autorefresh repaint-or-not checks (#10045)
Use both a whitelist for targeted widget repaints, a blacklist for no repaint at all, and a fallback for a full in-order ReaderUI repaint when unsure.

Use a similar approach in ReaderHeader (i.e., prevent explicit refreshes while ReaderMenu is open).

Re #9979, re #9768
2023-02-02 00:29:23 +01:00
NiLuJe
4732bc9aed ReaderView: Recompute page layout when toggling ReaderFooter in
non-reflowable documents.

The code only handled setups with "reclaim bar height" enabled (because
that's my usual workflow, har har), but would have broken in various
more or less obvious ways without it, depending on the exact layout/zoom
settings.
The previous attempts at handling the no-reclaim case were focused
on scroll mode, which is a bit of a nightmare. This approach should
deal as well/badly as the previous one in scroll mode, but actually
handle page mode properly ;).

Re #9979
2023-01-10 19:06:49 +01:00
zwim
ebaef61536 Make translateable: SystemStat, custom footer (#9945)
Fixes #9942.
2022-12-24 16:56:24 +01:00
melyux
a53e9847fa Footer: some menu items rewording (#9915)
Change footer status bar type setting label from 'Prefix' to 'Item style'.
2022-12-16 00:44:29 +01:00
zwim
192a243b4d Add datetime.lua
Move date and time related functions from util.lua
(and the statistics plugin) to a new datetime.lua.
2022-12-06 17:36:08 +01:00
zwim
486d7071c7 [StatusBar] Allow status bars to be repainted if they are not covered (#9768) 2022-11-20 05:33:44 +01:00