Commit Graph

419 Commits

Author SHA1 Message Date
NiLuJe
03aa96dc7d optionsutil: Document optionsutil.showValues
Specifically, the whole unit interactions ;).
2024-09-16 17:12:43 +02:00
NiLuJe
e887be693f optionsutil: Simplify the public formatFlexSize wrapper
Pull the dimension_units from in there,
instead of asking callers to do that.
2024-09-16 17:12:43 +02:00
NiLuJe
e47aeb77b7 optionsutil: Switch to PostScript point
Because that's what most people are probably thinking of.

But, more importantly, it's what *FreeType* assumes ;).
2024-09-16 17:12:43 +02:00
NiLuJe
9dfd4f949c CREOptions: Simplify a few name_text_hold_callback calls when we want to
display a size unit

Rely on `name_text_unit` instead of wrapping `optionsutil.showValues`
2024-09-16 17:12:43 +02:00
NiLuJe
cd0d8ca8bd UI: Support appending the value in pixels when formating metric/imperial dimensions 2024-09-16 17:12:43 +02:00
NiLuJe
f8890a310d optionsutil: Rename real_size_string to formatFlexSize, and make it public
Use it in the ReaderView:onPageGapUpdate notification, instead of
enforcing "px" there.
2024-09-16 17:12:43 +02:00
NiLuJe
d537ef5c76 UI: Expand the "Units" configuration menu to include "Pixels"
Rename it to "Dimension units", and make it a radio submenu.

Migrate the previous metric_length setting to this new dimension_units
one.

Update optionsutil to follow it.
2024-09-16 17:12:43 +02:00
NiLuJe
77b6ef785a koptoptions: Stop making page gap a special snowflake
Use the user-preferred display unit for dimensions.
2024-09-16 17:12:43 +02:00
NiLuJe
7239cf391d optiuonsutil: unbreak real_size_string
Don't mangle string input values when a unit was passed.
(i.e., keep displaying them as their actual string instead of as nil).

(e.g., when current is set to a number, but default is still unset,
which translates to "not set" in showValues).
2024-09-16 17:12:43 +02:00
NiLuJe
9333843919 optionsutil: tweak showValuesHMargins text string
Attempting to align the numbers on the same column was a fool's errand.
Our default UI font is not monospaced, to begin with,
and to do it right, we'd need to align the rightmost number, not the
leftmost ;).

i.e., T() would need to have much fancier justification capabilities ;).
Or, err, *any* text justification features, really ^^.
2024-09-16 17:12:43 +02:00
NiLuJe
da2957392a optionsutil: Refactor size conversion/printing
DRYer, simpler. Will make it easier to make "px" a real viable display
format.
2024-09-16 17:12:43 +02:00
NiLuJe
65ce72df27 KOptOptions: Make Page Gap a buttonprogress instead of a toggle
We want to be able to set a custom value (i.e., more_options),
because on high-dpi devices, the scaling can lead to pretty large
differences; but more_options on a toggle is ugly and clunky.

So, switch to something more suited to what this actually sets,
which is ultimately an absolute pixel value, like margins.

Add a few more steps on the low end to fill out the bar (and because
that's where I found them most useful on high-dpi devices).
2024-09-16 17:12:43 +02:00
NiLuJe
a55b1038d7 optionsutil: Make sure showValues can actually use the real_size_string helper effectively
configdialog doesn't actually pass a unit argument to
name_text_hold_callback, so pull it instead from a new name_text_unit
field.

Expand said helper to support a "px" unit, which simply converts from
our arbitrary pixels to actual on-device pixels (e.g., a plain
scaleBySize).

Enable real_size_string usage when name_text_true_values is set
(it's a NOP in terms of the generated string if no unit is specified).
2024-09-16 17:12:43 +02:00
NiLuJe
da74691515 Chore: Don't cache static data tables (ui/elements, ui/data, kb layouts & co) (#12519)
Using `require` didn't make much sense since most of them are only used in a single place anyway, and it takes care of a few weird interactions in the process (besides not polluting `package.loaded` with useless crap ;)).
2024-09-16 17:11:42 +02:00
hius07
bf290e0c2b Write highlights into PDF: revisited (#12509) 2024-09-14 15:21:26 +03:00
NiLuJe
89cceee9f1 Defaults: Deprecate DKOPTREADER_CONFIG_DOC_LANGS_TEXT
It's unused since #11977, dropping it ensures we no longer show it in
the advanced settings UI.
2024-09-11 13:20:39 +02:00
Ichnilatis
00984ba6bc Keyboard: update el_popup.lua (#12463)
Some minor changes for consistency.
2024-09-04 15:31:30 +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
hius07
e5fb836a81 ReaderFooter: improve (#12243) 2024-08-01 13:11:28 +03:00
hius07
4d50787637 Dispatcher: prettify action list (#12133) 2024-07-06 15:23:27 +03:00
jonnyl2
844d1393e7 Fix Arabic keyboard layout (ظ key) (#12063)
Closes #12005.
2024-06-21 14:53:18 +02:00
mergen3107
a03195d524 Footer: add book authors item (#11999)
Closes #7642
2024-06-16 13:18:38 +02:00
Frans de Jonge
d77e7b47a9 Fix Norwegian Bokmål-English Wiktionary download link (#11992)
Fixes #11970.

Apparently UTF-8 doesn't work unless it's URL-encoded.
2024-06-14 20:08:24 +02:00
Frans de Jonge
9724dcdf4b IsoLanguage: add Tesseract language names 2024-06-12 07:44:06 +02:00
Frans de Jonge
7da60815d1 Translate Tesseract language names
Fixes #11975.
2024-06-12 07:44:06 +02:00
Frans de Jonge
8977e5e12f [minor] Remove whitespace from last line in zh_stroke_data (#11956)
The busted install failure in #11620 came before those checks.
2024-06-01 22:38:26 +02:00
weijiuqiao
8f1b476444 Chinese keyboard: accept kanji stroke order too (#11620)
This will make the stroke-based Chinese character keyboard compatible with Japanese kanji stroke order, with an increase of the data file by about 80kb.

This could be a temporary solution for Japanese users to type kanji before better methods are implemented.

The stroke order data are extracted from this repo: https://github.com/KanjiVG/kanjivg.
2024-06-01 22:29:08 +02:00
sdasda7777
8530282d38 Add Czech keyboard layout (#11769)
Fixes #11339.
2024-05-08 11:04:23 +02:00
SomeGuy
279f16aa23 Sleep screen menu reworked (#11549) 2024-04-08 22:47:17 +02:00
Frans de Jonge
601925ab87 [minor] CSS tweaks: fix typo cellpading → celpadding (#11618) 2024-04-04 16:02:02 +02:00
poire-z
e3d7669588 Style tweaks: add tweak to avoid some presentational hints 2024-03-10 17:06:14 +01:00
poire-z
76bf85738a Style tweaks: add inpage foootnote classnames and a tweak 2024-02-17 00:33:03 +01:00
cookiebit
e3b4cbe71a Virtual keyboard: add Scandinavian layouts (Norwegian, Swedish & Danish) (#11365) 2024-01-16 22:33:15 +01:00
sonix-github
87915de32b Fix missing diacritics on first row of Slovak keyboard layout (#11343) 2024-01-12 22:19:16 +01:00
hius07
bf59f53e18 Folder shortcuts: speed up (#11221) 2023-12-17 08:26:57 +02:00
Monirzadeh
6527d7f1ab Fix English-Persian dictionary link (#11165)
Spaces should be encoded.
2023-11-26 18:17:08 +01:00
Monirzadeh
fbd012b928 Add English to Persian dictionary (#11160) 2023-11-25 13:49:49 +01:00
hius07
3f677a7fdd copt/kopt options: deduplicate some defaults (#10893) 2023-09-13 07:49:57 +03:00
hius07
cc82ead981 copt deduplicate: font settings (#10885) 2023-09-09 12:44:56 +03:00
hius07
7d626456a3 copt deduplicate: render_dpi, margins, rotation_mode (#10880) 2023-09-08 08:41:44 +03:00
hius07
a767ad44db PDF contrast: incorrect set by a gesture (#10798) 2023-09-02 09:41:27 +03:00
NiLuJe
724db0b924 Statistics: Close the DB handle in the vacuum OTM block (#10775)
Followup to #10749
2023-08-02 18:47:38 +02:00
weijiuqiao
416237e526 Statistics: Attempt to prevent rampant replication of null id_books (#10749)
And add an OTM block to do a cleanup pass on existing DBs (which might take a while if you're severely affected, because we've seen reports of DBs north of 2GB).
2023-08-02 06:09:15 +02:00
poire-z
626864f856 [chore] replace utf8 bytes with Unicode escape sequence 2023-08-02 01:28:24 +02:00
ichnilatis-gr
583ae40e46 Greek keyboard: update to the new keyboard layout (#10734) 2023-08-02 00:34:48 +02:00
NiLuJe
9c8e55b3e5 Kobo: Yet another attempt at working around the hangs on the latest NXP boards (#10771)
* Notification: Drop the fencing from #10083; it never actually helped, and had subtle side-effects we could do without.
* VirtualKeyBoard: Flash on close, otherwise, some of the fast refresh glitches may be burned into the working buffer until a flash. Making sure we flash ourselves prevent it from sticking around on the page ;).
* util: Move `writeToSysfs` to base (i.e., `ffi/util`), as we need it there (and it actually makes more sense there anyway ;p).
* Bump base for https://github.com/koreader/koreader-base/pull/1645, which is where the actual workaround (hopefully) lives.

Re #8414, #9806, #10558
2023-08-01 23:53:10 +02:00
NiLuJe
d57325aaf6 NetworkManager: Enable "before wifi" action support on every hasWifiToggle platform (#10669)
* Enable before_wifi_action & after_wifi_action on hasWifiToggle platforms (which is basically all of 'em except naked SDL).
* Decouple restoreWifiAsync from hasWifiManger, because we can do that on other platforms (namely, Kindle. Probably PB, too, but WiFi is already a mess there, and I can't test it).
* Implement restoreWifiAsync on Kindle.
* Properly flag rM as hasWifiManager & hasFastWifiStatusQuery, because it is actually both of those (it uses our wpa_supplicant backend).
* Update the KOSync checks to take these changes into account, to properly disable auto_sync if necessary.
* Really made the Network* event signaling consistent. For realz this time.
* In an effort to make the whole beforeWifiAction framework somewhat usable there, we now assume connectivity is always available on !hasWifiToggle platforms...
2023-07-12 02:42:16 +02:00
hius07
b33971b92d OPDS fixes (#10657) 2023-07-11 07:49:27 +03:00
hius07
eb299c300d FileChooser: Sort by date (#10627) 2023-07-03 08:24:28 +03: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