As well as the width of the toc notches
Lower the default value of the container size a bit to avoid eating into
the last line on small borders setup (I checked on 167 & 212 DPI
devices, Feel free to revert to the previous value (19) if that causes
trouble).
In reflowing scroll mode with 2 pages hinting, 4 full page blitbuffers
and koptcontexts should stay well in cache in the most demanding cases,
with two pages shown on screen and two pages rendered in background.
Since blitbuffer size is halved the size of page, we need cache size
to be 6 times an average reflowed page size.
For Kobo Aura HD which has a resolution of 1440×1080, a reflowed page
could become 1080×4800. So 30MB of cache is demanded for this case.
This PR implements dynamic cache size allocating according to size of
system free memory. By default it will use 20 percent of free RAM with
a clip specified by DGLOBAL_CACHE_SIZE_MINIMUM and
DGLOBAL_CACHE_SIZE_MAXIMUM which are 10MB and 30MB respectively by default.
Luckily after disabling floating punctuation left/right margin
are able to be same now (with large enough margins, should be
more than 1em). So I also changed the default page margins for
crereader and removed the dirty hack.
Turn off "show overlap" by default since scroll mode can replace it
in most cases where "show overlap" is used. And the dimmed area often
make new users confused. It's better to leave this feature to more
advanced users.
since the gesture detector will block the main thread
(the only thread in the lua part) for 300 ms on each tap
waiting for the arrival of the second tap, it makes the whole
application less responsive. 300 ms of latency is well perceived
in this case. This patch will simply disable double tap detection by
default as no widget now handles double_tap gestures. We could
temporarily enable double tap detection when this gesture is indeed
needed after.