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

10233 Commits

Author SHA1 Message Date
NiLuJe
c9da681874 Bump base
https://github.com/koreader/koreader-base/pull/1732
2024-01-21 06:42:09 +01:00
NiLuJe
a8a944cbaf ScreenSaverWidget: Simplify the setDirty call
No need for a closure, there's no dimen involved.
2024-01-21 06:42:09 +01:00
NiLuJe
39744d7642 TouchMenu: TouchMenuItem's UnderlineContainer should probably have its own dimen object
The coordinates could wonky otherwise, as TouchMenuItem is an
InputContainer.
Mostly harmless in practice as that UC is its main widget.
2024-01-21 06:42:09 +01:00
NiLuJe
4785df48a9 PRSTux: Disable OTAs
We haven't been offering any for years, and I've just killed zsync
support there anyway.
2024-01-21 06:42:09 +01:00
hius07
925aa728c9
Fulltext search: action to show last findall results (#11388) 2024-01-20 10:00:21 +02:00
NiLuJe
82bf8bf379 ScreenSaver: Properly exclude macOS resource forks again
The previous check was inlined in the dir walk, so it always saw a
relative path.
Here, it gets an absolute one instead, so act accordingly ;).

Fix #11390
Regression since #11056
2024-01-19 21:11:02 +01:00
NiLuJe
e5cb24a891 ConfigDialog: Simplify the previous fix
Geom's intersectWith & friends have nil guards in place since #7664,
so the insane workaround is completely superfluous.
2024-01-19 21:11:02 +01:00
NiLuJe
19ed35e59c ConfigDialog: Don't enforce 0x0 dimensions on initial display
FrameContainer now behaves like other widgets, and no longer re-computes
dimensions in paintTo *if you provide a dimen*.
Since we do here, for.... reasons I'm not entirely sure still make any
sense, make sure we actually compute valid dimensions,
instead of an empty rect from Geom:new ;).

Fix #11389
2024-01-19 21:11:02 +01:00
NiLuJe
7f33d94c4c Bump base
https://github.com/koreader/koreader-base/pull/1728
https://github.com/koreader/koreader-base/pull/1730
2024-01-19 00:08:10 +01: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
NiLuJe
65e22ceafc Widgets: Fix a bunch of regressions after the FrameContainer change in #11364
FrameContainer now preserves its self.dimen, which means it cannot be
shared with another widget or container that might also modify it during
painting ;).

Fix #11370
Fix https://github.com/koreader/koreader/pull/11364#issuecomment-1894454657
Fix #11379
2024-01-19 00:08:10 +01:00
NiLuJe
5e4d182608 Fold the debug logging flip inside the "Report a bug" entry
Also, implement a Notification source that will *always* be shown,
regardless of user preferences, and use it here.
2024-01-19 00:08:10 +01:00
NiLuJe
72250daba8 UI: Add a verbose debug logging checkbox next to "Report a bug"
@hius07 mentioned something to that effect a while back, makes sense.

Unlike the set of checkmarks in the dev settings, this one flips both
debug + verbose at once, *and* asks for a restart for framebuffer's
sake.

Also update the "Report a bug" spiel to request verbose debug logs.
2024-01-19 00:08:10 +01:00
NiLuJe
55171212c3 Misc: Forgot to update that comment given the latest VirtualKey tweaks
;).
2024-01-19 00:08:10 +01:00
poire-z
43d36b2ea9 TextBoxWidget: allow showing bits of text in bold
Allow for embedding "tags" (invalid Unicode codepoints)
in the text string to trigger some text formatting:
for now only bolding some parts of text is possible.

Use it with fulltext search "all results" to highlight the
matched word (instead of the previously used brackets).
2024-01-18 12:51:10 +01:00
poire-z
487e5f667a ReaderThumbnail: prevent standby during thumbnails generation
PageBrowser could have strange issues on devices with
aggressive autostandby (ie. failure to read data
from subprocess).
2024-01-18 12:51:10 +01:00
hius07
e0ed04a1a1
CoverBrowser: fix cover cache check #2 (#11380) 2024-01-17 18:05:09 +02:00
hius07
43831236ce
CoverBrowser: doc_settings cache improvement (#11360) 2024-01-17 09:58:21 +02:00
cookiebit
e3b4cbe71a
Virtual keyboard: add Scandinavian layouts (Norwegian, Swedish & Danish) (#11365) 2024-01-16 22:33:15 +01:00
Andrei Ignatev
4c503b0f11
Frontlight widget: add left button as close key on hasFewKeys devices (#11376)
Fixes issue #8023
Related to issue #4029

The fix takes exactly the same approach as other PRs like #6195 to add some usability to devices with few hardware keys. The front-light widget can now be closed using the left key on the d-pad.
2024-01-16 22:17:26 +01:00
NiLuJe
3b129e2ada Chore: Fix a few more widgets that were breaking dimen refs in
paintTo...
2024-01-16 01:26:48 +01:00
NiLuJe
d33bb0452c VirtualKeyboard: Simplify our top-level dimen handling
Make sure it tracks the right widget, and stays accurate post-paint,
by fixing FrameContainer's paintTo method *not* to break the dimen ref...
2024-01-16 01:26:48 +01:00
NiLuJe
259b4ac950 VirtualKeyboard: Try to include the padding in the key's hitbox
Followup to 40d27ac3e5
Re: #11357
2024-01-16 01:26:48 +01:00
gbyl
a84ab265b8
reMarkable: More robust Wi-Fi scripts (#11287)
Fixing a bunch of issues in the process.

---------

Co-authored-by: gbyl <gbyl@users.noreply.github.com>
2024-01-15 04:38:30 +01:00
NiLuJe
40d27ac3e5 InputDialog: Don't close the VirtualKeyboard when you tap inside a key's
*border*

That's going to be the sneaky bug to beat for 2024, lol ;).

Fix #11357
2024-01-15 04:29:09 +01:00
NiLuJe
5bd78ab3b4 ReaderHighlight: Don't try to close a non-existent widget in onClose 2024-01-15 04:29:09 +01:00
NiLuJe
c529c1cce3 Kindle: Log the args from WakeupFromSuspend & ReadyToSuspend 2024-01-15 04:29:09 +01:00
NiLuJe
d205c72119 ReaderStatus: Fix some more lifecycle issues in onEndOfBook
Delay anything that attempts to destroy the current document instance if
we're inside an event handler.

Re: https://github.com/koreader/koreader/issues/11147#issuecomment-1891005869
2024-01-15 04:29:09 +01:00
NiLuJe
0f5547a128 Bump base
https://github.com/koreader/koreader-base/pull/1723
https://github.com/koreader/koreader-base/pull/1725
https://github.com/koreader/koreader-base/pull/1726
https://github.com/koreader/koreader-base/pull/1727
2024-01-15 04:29:09 +01:00
NiLuJe
588bf38c84 Kindle: Log the suspend/wakeup source
We currently don't do anything with it, but this might help someone come
up with fancier smartcover handling, like we do on Kobo...

Simplify the fake events w/args checks:
We can just hitcheck the table directly, no need for another hash

Also catch ExitedSS on Kindle.
And, again, dn't do anything with it ;p.
2024-01-15 04:29:09 +01:00
hugleo
98b598ddcb
Bump luajit-launcher (#11358)
Fix Android build error
2024-01-15 01:42:34 +01:00
hius07
234a68d80b
CoverBrowser: fix cover cache check (#11356) 2024-01-14 17:44:59 +01:00
poire-z
e9b2a07352
bump crengine: fix CSS cascade, support :is(), other fixes (#11353)
Includes:
- Fix getToc() not cached on initial loading
- CSS: add support for forgotten "border-style: hidden"
- CSS: fix parsing of 'div :something' and 'div [attr]'
- CSS: fix checking E[foo~="value"]
- CSS: order rules as written when building a selector
- CSS: fix useragent vs. author stylesheet CSS cascade
- CSS: pass useragent_sheet flag all along parse() code
- CSS: add private selector syntax to match against text
- CSS: add support for :is(), :where() and :not() pseudoclasses
- EPUB: don't ignore any <spine> item
- bump CACHE_FILE_FORMAT_VERSION
2024-01-14 12:46:15 +01:00
NiLuJe
b2b87bd651 Bump platform/android/luajit-launcher
https://github.com/koreader/android-luajit-launcher/pull/436
https://github.com/koreader/android-luajit-launcher/pull/458
https://github.com/koreader/android-luajit-launcher/pull/460
https://github.com/koreader/android-luajit-launcher/pull/462
2024-01-13 23:36:02 +01:00
NiLuJe
5cbd65acc1 Bump base
https://github.com/koreader/koreader-base/pull/1722
2024-01-13 23:36:02 +01:00
hius07
c4e9e6bc51
filemanagermenu: fix classic mode items per page (#11346) 2024-01-13 14:45:53 +01:00
hius07
0ceb88a9a3
Fulltext search: all entries in entire document (#11313) 2024-01-13 12:58:05 +02:00
poire-z
5f5162d95c
bump base: add cre.findAllText(), many 3rd party bumps (#11347) 2024-01-13 12:01:24 +02:00
poire-z
a025faae4e Text selection: show top left icon when very-long-press delay reached 2024-01-13 10:13:47 +01:00
poire-z
455e904120 Text selection: add option to disable corner scroll
People using 2-steps text selection (via the Select button) may
want to not be annoyed by this feature.
Also tweak a bit its behaviour, requiring now the text selection
to come from outside a corder into a corner to activate it, which
should allow starting text selection from a corner without
triggering a scroll yet.
2024-01-13 10:13:47 +01:00
NiLuJe
dcfcc81dcf Android: Don't forget to call Generic.exit on Device:exit ;).
Fix #11345
2024-01-13 02:03:10 +01:00
NiLuJe
0f194d88b9 OTAManager: Slightly less cryptic error on connectivity issues
(On either end).

Re: #11258
2024-01-13 02:03:10 +01:00
NiLuJe
de3e420c1e DocSettings: Abort early if doc_path is nil or empty in findSidecarFile
Regression from #11020 compared to the previous getSidecarFile behavior
2024-01-13 02:03:10 +01:00
NiLuJe
8968c41070 i18n: Some more unicode escapes => raw bytes shenanigans
Fix #11332
2024-01-13 02:03:10 +01:00
NiLuJe
871ebb0573 Screensaver: nil guard lastfile in cover mode
`hasSidecarFile` assumes you're feeding it a string.
Plus, that check was super funky anyway.

Fix #11336
2024-01-13 02:03:10 +01:00
sonix-github
87915de32b
Fix missing diacritics on first row of Slovak keyboard layout (#11343) 2024-01-12 22:19:16 +01:00
NiLuJe
c97d20cd24
Chore: Make sure we always pass a rect to fb:refreshFull (#11307)
* UIManager: Init a full Geom on region-less refreshes in _refresh
* Never call refreshFull with no arguments
  I got rid of the low-level nil guards, because UIManager itself guarantees that it can never happen
* Bump base (https://github.com/koreader/koreader-base/pull/1718) (fix #11303)
* Kindle: Re-enable HW dithering on the Scribe
  Now that the underlying issue is fixed in base ;).
2024-01-12 21:23:23 +01:00
NiLuJe
18c17829b7
Input: Simplify input slot storage alloc (#11296)
* Input: Harden setCurrentMtSlotChecked
  The current implementation was assuming that the only case where we
  might be missing slot storage was for the *first* contact point,
  given that ABS_MT_SLOT is (if all goes well) guaranteed to be present
  and come first for every subsequent additional contact points.
  While this works just fine in practice, we can simplify and generalize
  the check by just checking if we've actually recorded the requested
  slot, even if it's not the first contact point.
  The hit check is possibly ever so slightly faster than the length
  computation, to boot.
* Input: Handle snow_protocol devices with newer hardware revisions that do *NOT* need the snow quirks.
  If a sane input frame is detected, the snow quirks will be disabled at runtime, ensuring sane behavior.
  Given the extremely non-standard behavior of the snow quirks, this is fairly easy to detect,
  as a snow device will *never* emit EV_ABS:ABS_MT_TRACKING_ID:-1, so if we catch one, it's not snow ;).
  (We've had reports of this on a Clara HD, FWIW)
2024-01-12 20:40:49 +01:00
zwim
2c33fc6576
Reader: Do less work on same-orientation non-gyro rotations (#11297)
Namely, don't recompute layouts, as they do not change.
(The gyro codepaths were already doing something similar.)

* Keep ConfigDialog, FileManagerMenu & ReaderMenu open on rotation.
  (In practice, only ConfigDialog is affected, as *Menu doesn't handle the rotation event.)
* Plugged an instance leak in the aforementioned Menu classes.
* Unify behavior & code with the gyro codepaths.
2024-01-12 19:13:44 +01:00
hius07
ea9ef6781c
CoverBrowser: adjustable mosaic grid (#11232) 2024-01-12 08:13:50 +02:00