2
0
mirror of https://github.com/koreader/koreader synced 2024-11-11 19:11:14 +00:00
Commit Graph

3417 Commits

Author SHA1 Message Date
Frédéric Brière
39fa008e21
Bookmarks: refresh list entry when closing Bookmark details dialog with X (#12390)
Also: refresh dogear state for current page when closing Page browser
or Book map, as we may have toggled bookmark on it.
2024-08-21 23:46:51 +02:00
hius07
415ce40f84
Touch menu: always go up to correct parent page (#12378) 2024-08-21 20:53:45 +03:00
David
698fc35c3f
Minor keyboard corrections (#12372) 2024-08-20 12:01:27 +02:00
charrarr
ab47bd10a4
Screensaver: add option to rotate to fit screen (#12366) 2024-08-19 20:57:02 +02:00
hius07
ed9cde8feb
UX minor fixes (#12374) 2024-08-19 08:10:14 +03:00
hius07
f0c9a642d1
ReaderStatus, Book status widget: cleanup (#12343) 2024-08-19 08:05:19 +03:00
charrarr
91c15d5277
ReaderFont: display preview of italic-only fonts in italic (#12351)
In font selection menus, ask creengine for italic versions
of fonts if there's no regular version to preview.
Also prevents a crash when a font can't be previewed in
the font family menu.
2024-08-18 09:28:23 +02:00
NiLuJe
cfd42254ac SortWidget: Preserve the cancel's button highlight when changing its icon
setIcon recreates the frame without preserving the current frame's
invert status (which is arguably a bug, but button is so ubuquitous that
I dare not touch that behavior...).

So, instead, rely on the rarely used preselect flag to preserve it.
2024-08-17 20:10:08 +02:00
NiLuJe
c21ad4edcc SortWidget: Cleaner FocusManager behavior
With less code, yay.
2024-08-17 20:10:08 +02:00
NiLuJe
0ae11f8cf4 ScreenSaver: Fix comment typo
Link to the right issue ;).
Typo dates back to the original commit, way back in #5928
2024-08-17 20:10:08 +02:00
NiLuJe
ca546f831d SortWidget: Reset focus on page changes
A bit clunky because I have no idea how FocusManager works,
but that works *mostly* sensibly...

Fix #12342
2024-08-17 20:10:08 +02:00
NiLuJe
89b92b6768 FootnoteWidget: Flag as covers_footer
When footnotes are displayed as "popups", they're displayed over ReaderUI
in a BottomContainer, so they pretty much always cover the footer ;).

(i.e., they're really really not popups *at all* :D).

This prevents spurious status bar auto-refreshes.

Re #12323
2024-08-17 20:10:08 +02:00
David
49a991e82f
[TextViewer] Add hamburger menu to FocusManager and Menu key (#12365) 2024-08-17 17:04:44 +02:00
Benoit Pierre
c2d58e525e
czmq & libzmq: update to 4.2.1 & 4.3.5 respectively (#12350) 2024-08-17 17:02:56 +02:00
NiLuJe
a51bd7a7fd
Nit: Make some cache keys prettier (#12354)
Completely pointless commit because I got triggered by a missing pipe in a log ;).
2024-08-15 04:53:18 +02:00
David
3450aaba99
Bug Fix: DPad conflict on Kindle Keyboard (#12341)
* fix conflicting panning and content selection

* accurate keyboard info message
2024-08-13 22:54:08 +02:00
David
d706a129fa
[Menu] Remove title bar buttons from layout on hasSymKey or hasScreenKB devices (#12328) 2024-08-13 08:43:40 +02:00
NiLuJe
59476d38f4
OTM: Unbreak #11999 (#12337)
Steps need to happen in chronological order, (mostly) always.

Fix https://github.com/koreader/koreader/issues/12326
2024-08-12 03:47:19 +02:00
NiLuJe
4689e4f257
ImageWidget: Don't attempt to pan if we haven't rendered the bb yet (#12331)
Input events from ImageViewer can be caught between it clearing an old
ImageWidget & instantiating a new one, but before the new one has had a
chance to actually render anything.

Fix #12327
2024-08-12 03:46:45 +02:00
hius07
c46578aece
BookInfo: rating, review (#12313) 2024-08-11 17:01:15 +03:00
zwim
dc3b638378
TextWidget: allow numbers in setText and updateSize (#12310)
Closes #12318.
2024-08-09 22:06:53 +02:00
David
2900eef276
Show/Hide Virtual keyboard and more keyboard shortcuts (#12162) 2024-08-07 18:09:40 +02:00
hius07
975efae929
ReaderSearch: "All text" improve (#12287) 2024-08-06 19:12:16 +03:00
mbays
fd8c9be57f MultiInputWidget: add addWidget 2024-08-06 13:12:08 +02:00
mbays
092649338b InputDialog: add setAllowNewline 2024-08-06 13:12:08 +02:00
mbays
f122e0082b MultiInputDialog: add enter_callback applying to all fields 2024-08-06 13:12:08 +02:00
mbays
b5203686e3 InputDialog: call edited_callback on edit even when no Save/Close buttons 2024-08-06 13:12:08 +02:00
NiLuJe
7e8cdbcf65
PowerD: Keep track of frontlight state change by interactive callers for suspend/resume purposes (#12283)
While #12256 papered over the tracking of a *single* suspend -> (resume->suspend) series of events, things still go out of sync if you tack on *more* suspend/resume events after that.

The upside is that our *actual* tracking of suspend/resume is solid, so at least we're actually doing the right thing as far as PM is concerned.

The downside is that on Kobo, the frontlight handling code is full of delays, and the ramping down/up itself also takes some time, so things can quickly overrun into the wrong event.

This means a couple of things:

* We need to cancel any scheduled frontlight toggles and ramps on Kobo, to ensure that only the one from the *last* event received goes through, in an attempt to limit the amount of potential crossover.
* Tracking fl_was_on *cannot* reliably be done from the suspend/resume handlers (especially on Kobo), as the ramps themselves may cross over the event barriers (and we potentially cancel the task anyway), so this was moved to the very few interactive callers that will actually change the frontlight state.
* On Kobo, crossover is still *somewhat* possible because the ramps take time. It's mostly harmless for the ramp down, we just need to tweak the ramp down to start from the actual intensity to avoid a weird jump on the initial step if there's an inconsistency. For the ramp up, we potentially need to manually kill the light first, because off -> on assumes it *really* starts from off ;).

Followup to #12256
Fix #12246 (again)
2024-08-06 01:13:14 +02:00
Benoit Pierre
a6663202b7
NetworkMgr: fix debug trace (#12297)
Prevent crash:
```
./luajit: frontend/util.lua:1092: attempt to get length of local 'str' (a nil value)
stack traceback:
        frontend/util.lua:1092: in function 'fixUtf8'
        frontend/ui/network/manager.lua:1109: in function 'requestToTurnOnWifi'
[…]
```
2024-08-05 19:09:47 +02:00
David
3992438872
[CoverBrowser.MosaicMenu] Increase focus underline thickness (#12189) 2024-08-05 10:19:16 +02:00
Frans de Jonge
764a482f8c
[fix] NetworkMgr: apply HTTP proxy setting on startup (#12260)
Fixes #12244.
2024-08-01 21:03:34 +02:00
hius07
e5fb836a81
ReaderFooter: improve (#12243) 2024-08-01 13:11:28 +03:00
NiLuJe
5c77774ca9
NetworkMgr: Attempt to handle wpa_supplicant rescans better (#12236)
Namely, in the face of wpa_supplicant doing multiple scans. Note that a backend PR will make this largely redundant, by actually fixing the core issue in our backend ;).

Also add more logging around the authentication status.
2024-07-30 11:44:45 +02:00
NiLuJe
d59c837714
Kobo: Refactor various aspects of the Kaleido/MTK support (#12221)
* UIManager: Let the fb backend deal with Kaleido wfm promotion. This fixes a number of quirks that poisoned the refresh queue with spurious full-screen refreshes. See https://github.com/koreader/koreader-base/pull/1865 for more details.
* This also means we now disable Kaleido waveform modes when color rendering is disabled (remember to trash your thumbnail cache if you don't want to mix color w/ grayscale thumbnails, though).
* UIManager: Merge refreshes that share an edge, because that was driving me nuts (and would have most likely been merged by the kernel anyway). A perfect test-case is the FM, which trips two separate refreshes because of its title bar.
* ReaderFlipping: Use sensible dimensions, so that we only refresh the icon's region.
* ReaderBookmark: Only refresh the dogear instead of the whole page when toggling bookmarks.
* NetworkSetting: Make it a real boy, so it consistently refreshes properly on dismiss instead of relying on UIManager saving the day.
* Kobo: Aggressively prevent *both* suspend & standby while MTK devices are plugged-in, as both will horribly implode the kernel (we previously only prevent standby while charging).
* Kobo: Switch to 8bpp on B&W MTK devices (or when color rendering is disabled on Kaleido panels).
2024-07-28 01:19:40 +02:00
hius07
477d6865f1
toggleswitch: fix long-press (#12215) 2024-07-24 18:36:21 +03:00
hius07
b17bd967da
Page turns: invert vertical tap zones (#12195) 2024-07-24 18:34:23 +03:00
zwim
df48d51eca
AltStatusBar/Footer: add the read timer value (#12002)
Closes #11950
2024-07-19 22:55:31 +02:00
Benoit Pierre
8ced47921a PageBrowser: factorize and fix thumbnail preloading code
Fix incorrect page range check: `p >= 1 or p < self.nb_pages`
should be `p >= 1 and p <= self.nb_pages`.
2024-07-19 21:32:20 +02:00
Benoit Pierre
0c17941ffb kopt: color support
Keep colors when reflowing documents.
2024-07-19 21:32:20 +02:00
hius07
5342b8cc2a
Text editor: enhancement (#12176) 2024-07-18 18:07:24 +03:00
David
78f69fd580
Add 'Use left and right keys for page turning' option (#12174) 2024-07-18 08:33:23 +02:00
poire-z
7ebd067a95
Footnote popup: fix XHTML handling (#12158)
Latest MuPDF update changed HTML parsing, and use a better
HTML5 parser, which may cause some issues with the XHTML
we get from crengine.
So, for footnote popups, be sure we use MuPDF's XHTML parser.
2024-07-12 13:34:47 +02:00
hius07
4d50787637
Dispatcher: prettify action list (#12133) 2024-07-06 15:23:27 +03:00
Martín Fernández
0faccff9bc
Fix for OTA updates w/ zsync (#12120)
Fixes #12115
2024-06-29 08:06:46 +02:00
David
2c9bb33f66
InputText, DictQuickLookup: add keyboard shortcut for prev/next dict, toggle virtual keyboard, comma on shift+. (#12078) 2024-06-28 15:44:18 +02:00
hius07
33ae788575
configdialog: fix toggle (#12104) 2024-06-27 12:43:57 +03:00
hius07
0ae84642e2
configdialog: keep original options intact (#12093) 2024-06-26 15:22:23 +03:00
Martín Fernández
617618d587
Add Device:otaModel() (#12014)
Devices with a single target might want to specify it in `Device.ota_model`
Devices with multiple targets want to override the function or to specify `ota_model` variants for each target.
2024-06-25 21:35:38 +02:00
Marek Veselý
4c4cfa2db0
Kindle: add wifi selector (#12056)
* Kindle: Implement a NetworkMgr backend loosely based on WpaClient in order to allow feature-parity with hasWifiManager platforms. This involves dealing with the native wifid over lipc (the native IPC system, based on DBus), through custom Lua bindings (https://github.com/notmarek/openlipclua), since the stock ones lack support for the needed hasharray data type.
* NetworkMgr: Clear up leftover hallucinations from #10669, making `enableWifi` much simpler (and much more similar to `turnOnWifiAndWaitForConnection`).
* NetworkMgr: Made it clearer that `turnOnWifi` implementations *must* deal with `complete_callback`, as part of the aforementioned changes mean that it's *always* wrapped in a connectivity check, and we need that for proper event signaling.
* Android, Emu: Run `complete_callback` properly in `turnOnWifi`.
* Kindle: Support `powerd:isCharged()` on the PW2 (yes, this is random, it just happened to be my test device :D).
* NetworkMgr:disableWifi: Properly tear down any potential ongoing connection attempt (e.g., connectivity check).
* NetworkMgr:promptWifi: Make the "wifi enabled but not connected" popup clearer if there's an ongoing connection attempt, and gray out the "Connect" button in this case (as it would only lead to another "connection already in progress" popup anyway).
* NetworkMgr:reconnectOrShowNetworkMenu: Make *total* scanning failures fatal (they will lead to an immediate wifi teardown).
* NetworkMgr:reconnectOrShowNetworkMenu: Clear up the long-press behavior (which *always* shows the network list popup) so that it doesn't weirdly break all the things (technical term!).
* NetworkMgr:reconnectOrShowNetworkMenu: When we manage to connect to a preferred network on our own *before* showing the network list, make sure it is flagged as "connected" in said list.
* NetworkMgr:reconnectOrShowNetworkMenu: Make connection failures fatal in non-interactive workflows (they'll lead to a wifi teardown).
* NetworkSetting (the aforementioned network list widget): Clear NetworkMgr's "connection pending" flag on dismiss when nothing else will (i.e., when there's no connectivity check ticking).
2024-06-25 21:17:36 +02:00
David
799275d3a3
FileChooser: 0% > 'on hold' (#12037) 2024-06-24 10:19:25 +02:00