Commit Graph

632 Commits (2c9bb33f664b52db0213f307fb74dc9d14379c34)

Author SHA1 Message Date
hius07 0ac258fcb7
Coverbrowser: event for cache refreshing (#10956) 1 year ago
hius07 40e2a838ae
Status: setting status of current book in History and Collections (#10946) 1 year ago
hius07 9f39614e8a
Custom metadata: fixes 2 (#10919) 1 year ago
hius07 108d87742a
Custom metadata: fixes (#10889) 1 year ago
hius07 e4ba8c7909
Custom metadata: event (#10869) 1 year ago
hius07 f46f341b9b
Reset settings/cover/metadata separately (#10866) 1 year ago
hius07 ed2ea6803f
Custom metadata (#10861) 1 year ago
hius07 1ef7821b66
getProps: centralize 2 (#10837)
Centralize and optimize handling document properties.
1 year ago
NiLuJe a736a3ebe0
Calibre: Add reading status to the metadata search popups (#10842)
We're getting old, remembering whether you've actually read stuff is hard ;).
1 year ago
hius07 33467098dd
filemanager: minor tweaks (#10821) 1 year ago
NiLuJe 22678ee5ff Misc: Review pass on the previous commits
* Unbreak the Device test
* Rename a few things
* Tweak a few comments
1 year ago
NiLuJe ac1358e0f0 Menu: Actually hide PlatformNav if !hasKeys
Returning {} just leads to a present but blank entry

(Also, nobody notice that the capcheck was wrong inside platnav anyway ;p).
1 year ago
NiLuJe 6283674c47 Menu: Split off "Page Turns" submenu in two sections
The Kindle swipe animations & physical key inversion apply *everywhere*,
so we need this accessible in the FM, too.

Move it to Navigation, which is where it already was on !Touch devices.
1 year ago
hius07 1544ca28af
FileManager: truncate left in selected files list (#10783)
Truncate the path to view the filename in full. Closes #10760.
1 year ago
Glen Sawyer 73c4f09a88
FileChooser: re-add file sort by "last date read" (#10682)
Revert bits from eb299c30.
1 year ago
hius07 dee1c902ec
ReaderUI: minor optimization (#10634) 1 year ago
hius07 eb299c300d
FileChooser: Sort by date (#10627) 1 year ago
hius07 45428dda49
History: shorten date/time field (#10594) 1 year ago
hius07 54ab0a04f8
Archive viewer (#10584) 1 year ago
hius07 46933035c5
Open with: images (#10561) 1 year ago
hius07 fc7181419f
CoverImage: custom cover support (#10553) 1 year ago
hius07 01e6593dd4
File popup dialog buttons (#10537) 1 year ago
hius07 1944f54aa0
Custom cover: fix (#10513)
Somehow have overlooked in testing.
Closes #10512.
1 year ago
hius07 6c0bfb1c0a
FileManagerCollection: Fix crash on "Execute shell script" 1 year ago
hius07 3d5775241d
Exporter: selected files (#10453)
Export highlights for selected files.
Having a button "Select all files in folder", it is easy to export the whole folder.
So, closes #10402.

To keep even number of buttons, added a feature "Show selected files list". May be useful to check selections before an operation. Just a sorted list, no titlebar or popup menu, tapping a file jumps to its folder.
1 year ago
hius07 3dce41269d
Translator: translate current page (#10438) 1 year ago
hius07 4f23a6fafa
Custom book covers (#10329) 1 year ago
Frans de Jonge 744f2d185f
[fix] Reintroduce "Start with" default to prevent nil string on startup (#10369)
Regression from #10198.

Fixes #10368.
1 year ago
hius07 99265ba1b7
BookInfo: fix crash on show cover (#10315) 1 year ago
hius07 af45ec75c3
ReaderThumbnails: update cached page thumbnail on bookmark note change (#10303) 1 year ago
hius07 483a005cc2
File browser: show Folder Menu on long-press on Home icon (#10298) 2 years ago
hius07 34ab0d8ac6
Folder Menu: sign for Home folder (#10288) 2 years ago
hius07 59a0139a60
File browser: add Folder Menu (#10275) 2 years ago
hius07 a3080b042a
BookInfo: add page information (#10255) 2 years ago
hius07 4d26650ad6
Filesearcher: add search in book metadata (#10198) 2 years ago
hius07 df9c2bcb7f
History: fix book info buttons disable (#10244) 2 years ago
hius07 aedb713f82
Menu widget: cleanup (#10241) 2 years ago
hius07 a3d42ac344
Classic display mode: add popup file dialog buttons (#10185) 2 years ago
Frans de Jonge 5fce41d7d9
[i18n] FileManagerMenu: remove stray newline from translated sting (#10174) 2 years ago
hius07 38bd768d5e
DocSettings: Move book metadata to preferred location (#10149) 2 years ago
hius07 15605291c2
DocSettings: add support of centralized sdr storage (#10132) 2 years ago
Melik 881d8ed406 Fix spelling of filemanagerutil.genStatusButtonsRow 2 years ago
Melik 7d6da81233 Compact covermenu addn. to for loop, fix collections bug, further gimp genStatusButton to use upvalues 2 years ago
Melik 0e470aaed9 Remove leftover function, arg 2 years ago
Melik d9b0785a96 Reset button gen to util, collections current file check
- filemanagerutil.resetDocumentSettings()'s doc_settings:close() -> doc_settings:flush()
- Remove current_status from filemanagerutil.getStatusButtonsRow() args, get it inside from file
- Move genStatusButton() inside filemanagerutil.getStatusButtonsRow()
- Move "Reset settings" button generation to filemanagerutil
- Rename "Reset settings" button to "Reset" and update popup box text
- Disable "Reset settings" for file if it's currently open in Collections (same as History)
2 years ago
Melik fb7ec830c6 Create getStatusButtonsRow() for status buttons, hide row if history item deleted 2 years ago
Melik 31cfffc289 Pull genStatusButton() to filemanagerutil 2 years ago
Melik 502bb0ccbf Create genStatusButton() for buttons, use item.dim for deleted in history 2 years ago
Melik 9e7e68beb6 Shorten status button names 2 years ago
Melik c0d0b36f98 Get rid of luacheck warning 2 years ago
Melik 1b2adfd201 Return to callback fudging, fix book info callback replacement 2 years ago
Melik 628cacf1e6 Disable status buttons for deleted files in history 2 years ago
Melik 77b110a987 Add 'Reset settings' button to collections 2 years ago
Melik 8642509f26 Move 'Put on hold' between reading & read 2 years ago
Melik a9313dda1a Add buttons to collections 2 years ago
Melik 57849b3f7c Add buttons to history, use id for button-getting 2 years ago
Melik 086d4622e6 Add buttons to file manager, lay groundwork 2 years ago
NiLuJe 7863a7ad70
Misc: Natural sorting refactor (#10023)
* Move natural sorting algo to a dedicated sort module to avoid code duplication
* Use a slightly more accurate algorithm, and speed it up by caching intermediary strings
* Calibre: Use natural sorting in metadata search (fix #10009)
2 years ago
NiLuJe 788ccac561
Input/Device: Refactor Gyro events handling (#9935)
* Get rid of the `canToggleGSensor` Device cap, it's now mandatory for `hasGSensor` devices. (This means Kindles can now toggle the gyro, fix #9136).
* This also means that `Device:toggleGSensor` is now implemented by `Generic`.
* Update the Screen & Gyro rotation constants to be clearer (c.f., https://github.com/koreader/koreader-base/pull/1568) (/!\ This might conceivably break some `rotation_map` user-patches).
* Input: Move the platform-specific gyro handling to Device implementations, and let Input only handle a single, custom protocol (`EV_MSC:MSC_GYRO`).
* Input: Refine the `rotation_map` disable method implemented in 43b021d37c. Instead of directly poking at the internal field, use a new method, `disableRotationMap` (/!\ Again, this might break some `rotation_map` user-patches).
* Input: Minor tweaks to event adjust hooks to make them more modular, allowing the Kobo implementation to build and use a single composite hook. API compatibility maintained with wrappers.
2 years ago
poire-z b1b7773237
TouchMenu: tweak menu search (#9926)
- Cleanup search and animation codes, fix inconsistencies
  between animation/no-animation opening, and refreshes
  glitches on eInk.
- Show menu item on tap, with buttons to either open
  directly, or to walk there (removed earlier "Animation"
  checkbox, so the choice can be decided later).
- Move event handlers into ReaderMenu/FileManagerMenu.
- Avoid duplicated and confusing results from gestures
  and font-family submenus.
2 years ago
Frans de Jonge e1fe897c9b
[i18n] Add a couple of explanatory comments for translators (#9878) 2 years ago
Frans de Jonge e58a12ba04
TouchMenu: Search menu to search the menu (#9876)
Fixes #9800.
2 years ago
zwim d1cd2a1c8d
Restart KOReader: add a ConfirmBox instead of a plain InfoMessage (#9853) 2 years ago
melyux cc53ceb039
History: remember status filter, show filtered count in title (#9822) 2 years ago
Frans de Jonge 84be6fc226
[i18n] Fix 'Choose new folder to set as home?' can't be translated (#9841)
Reported in <https://www.mobileread.com/forums/showthread.php?p=4276962#post4276962>.
2 years ago
hius07 06cec98d09
Filemanagerutil: let abbreviate manage extra slash (#9785) 2 years ago
NiLuJe 925fd647dc InputContainer/FocusManager: Simplify key_events clearing on unplug
Thanks to @poire-z for the idea, it's indeed much nicer this way ;).
2 years ago
NiLuJe e0bfebb0b5 FileManager: Refresh key_events handlers on keyboard hotplug 2 years ago
NiLuJe b523c2e8b9 InputContainer: Fall cleanup ;).
Get rid of the doc & seqtext fields, as they are not actually used (nor
are they particularly useful, the event handler's name should be pretty
self-explanatory).

Also, tweak the key_events documentation to highlight the quirks of the
API, especially as far as array nesting is involved...

Random drive-by cleanup of the declarations of key_events & ges_events
to re-use the existing instance object (now that we know they're sane
;p) for tables with a single member (less GC pressure).
2 years ago
zwim 4969811c08
Optimization: Use constant folding for divisions not a power of two (#9609) 2 years ago
NiLuJe c0dffe2012
Kobo: Add a debug option to turn the charging LED on PM entry failure (#9601)
This should be fairly unintrusive, but still noticeable enough without having to watch the battery gauge like a hawk, or resort to actual monitoring via kernel logs and/or usb meter and/or multimeter...
2 years ago
NiLuJe eef938996f MultiDialog: Fix an extremely nasty API misuse
Stuff was poking at the class object, not the instance's :s.

Fix #9599
2 years ago
NiLuJe fadee1f5dc
Clarify our OOP semantics across the codebase (#9586)
Basically:

* Use `extend` for class definitions
* Use `new` for object instantiations

That includes some minor code cleanups along the way:

* Updated `Widget`'s docs to make the semantics clearer.
* Removed `should_restrict_JIT` (it's been dead code since https://github.com/koreader/android-luajit-launcher/pull/283)
* Minor refactoring of LuaSettings/LuaData/LuaDefaults/DocSettings to behave (mostly, they are instantiated via `open` instead of `new`) like everything else and handle inheritance properly (i.e., DocSettings is now a proper LuaSettings subclass).
* Default to `WidgetContainer` instead of `InputContainer` for stuff that doesn't actually setup key/gesture events.
* Ditto for explicit `*Listener` only classes, make sure they're based on `EventListener` instead of something uselessly fancier.
* Unless absolutely necessary, do not store references in class objects, ever; only values. Instead, always store references in instances, to avoid both sneaky inheritance issues, and sneaky GC pinning of stale references.
  * ReaderUI: Fix one such issue with its `active_widgets` array, with critical implications, as it essentially pinned *all* of ReaderUI's modules, including their reference to the `Document` instance (i.e., that was a big-ass leak).
* Terminal: Make sure the shell is killed on plugin teardown.
* InputText: Fix Home/End/Del physical keys to behave sensibly.
* InputContainer/WidgetContainer: If necessary, compute self.dimen at paintTo time (previously, only InputContainers did, which might have had something to do with random widgets unconcerned about input using it as a baseclass instead of WidgetContainer...).
* OverlapGroup: Compute self.dimen at *init* time, because for some reason it needs to do that, but do it directly in OverlapGroup instead of going through a weird WidgetContainer method that it was the sole user of.
* ReaderCropping: Under no circumstances should a Document instance member (here, self.bbox) risk being `nil`ed!
* Kobo: Minor code cleanups.
2 years ago
hius07 b0eb0ce0e1
FileManager: add Select button to the file long-press menu (#9571) 2 years ago
NiLuJe 62059f8d68
Misc: Get rid of the legacy defaults.lua globals (#9546)
* This removes support for the following deprecated constants: `DTAP_ZONE_FLIPPING`, `DTAP_ZONE_BOOKMARK`, `DCREREADER_CONFIG_DEFAULT_FONT_GAMMA`
* The "Advanced settings" panel now highlights modified values in bold (think about:config in Firefox ;)).
* LuaData: Isolate global table lookup shenanigans, and fix a few issues in unused-in-prod codepaths.
* CodeStyle: Require module locals for Lua/C modules, too.
* ScreenSaver: Actually garbage collect our widget on close (ScreenSaver itself is not an instantiated object).
* DateTimeWidget: Code cleanups to ensure child widgets can be GC'ed.
2 years ago
hius07 45e4f38c41
CloudStorage: remove cloudmgr (#9532)
Use downloadmgr instead.
2 years ago
NiLuJe 2fe2515ace
FontList: Always use the binary cache format (#9519)
Since I never actually needed to look into that data ever until today, let's just get rid of the weird debug-specific behavior.

Instead, just add a dedicated "Developer options" entry that will dump it on demand (and it'll be sorted to boot, which makes it 500% more usable).

Plus, since yesterday's change, the cache format switch between debug or not miiiight actually be crashy, so re-trigger the migration ;p.

* Includes a couple of noteworthy base bumps:

https://github.com/koreader/koreader-base/pull/1516 (update to sdcv 0.5.4 + fixes pending upstream)
https://github.com/koreader/koreader-base/pull/1517 (fix ffiUtil.orderedPairs with keys of mixed types)
2 years ago
Martín Fernández b7a27a3db3
Fullscreen refactor (#9237)
Commonize fullscreen code across different devices.

Add fullscreen toggle on SDL desktop targets. 
Expose the toggle to the dispatcher and map it to F11.

Hide touchmenu when resizing.
2 years ago
hius07 f2c3fd54a1
filemanagershortcuts: fix adding the first shortcut (#9107)
Closes #9105.
2 years ago
Philip Chan d6ff983243
Show TitleBar left and right buttons on non-touch devices (#9041)
Titlebar button navigation in menu, including ListMenu and MosaicMenu in FileManager, History, Favourites and Shortcuts.
Hide show password checkbox in non-touch devices
2 years ago
Frans de Jonge 0fe3a9d19c
[i18n] Add context to book status filter options (#8906)
Fixes #8903.
3 years ago
hius07 7b4d6fd205
History: filter by book status (#8820) 3 years ago
hius07 d7549dbd87
File searcher: fix show folders, include subfolders checkbutton (#8807) 3 years ago
Philip Chan 107156c0a8
[feat] Non-touch improvements (#8859)
FocusManager: fix round x use y layout
FocusManager: add tab and shift tab focus navigation support
FocusManager: handle Press key by default
FocusManager: make sure selected in instance level
FocusManager: add hold event support
FocusManager: Half move instead of edge move
FocusManager: add keymap override support
FocusManager: refocusWidget will delegate to parent FocusManager
Focusmanager: refocusWidget can execute on next tick
inputtext: can move out of focus on back
inputtext: fix cannot exit for non-touch device
inputtext: fix cannot input text with kindle dx physical keyboard
fontlightwidget: add non-touch support
datetimewidget: add non-touch support
datetimewidget: fix set date failed in kindle DX, fix datetimewidget month range to 1~23 by default
datetimewidget: make hour max value to 23
multiinputdialog: add non-touch support
checkbox: focusable and focus style
virtualkeyboard: no need to press two back to unfocus inputtext
virtualkeyboard: collect FocusManager event key names to let VirtualKeyboard disable them
openwithdialog: add non-touch support
inputdialog: can close via back button
enable all InputDialog and MultiInputDialog can be close by back
keyboardlayoutdialog: non-touch support
readertoc: non touch device can expand/collapse in toc
bookstatuswidget: non touch support
keyvaluepage: non-touch support
calendarview: non-touch support
3 years ago
hius07 8bfd7ca340 warning on file size over 400000 b 3 years ago
hius07 fbdb021268 Update filemanager.lua 3 years ago
hius07 56b277f72e filemanager: free home button, text viewer 3 years ago
hius07 4ccdbc90a5
Doc settings reset: fix default block_rendering_mode (#8792) 3 years ago
hius07 a9a75f503f FilemanagerShortcuts: call from PathChooser 3 years ago
hius07 1ad7b7151a FilemanagerShortcuts: add Plus button 3 years ago
poire-z 16e3b2f0ac Allow Backspace to work as back button 3 years ago
yparitcher 87dbb9885e FM select mode: let the icon survive through reinit not only rotation 3 years ago
hius07 958077364a
Filemanager: insert TitleBar (#8648) 3 years ago
hius07 5c39c19a73
[chore] Remove leftover: cface (#8659)
Ancient menu widget had it.

Not used anymore.
3 years ago
hius07 1bfb49c6a5
PathChooser: add left Home button (#8646) 3 years ago
hius07 dd07112de7
Filemanager select mode: add folder buttons (#8595)
"New folder" and "Folder shortcuts" buttons
3 years ago
hius07 f83eee02dd
[fix] filechooser: disable long-press in select mode (#8567) 3 years ago
hius07 1df6ab751b
ButtonDialogTitle: no bold font in the title by default (#8557) 3 years ago
hius07 a703b213f7
File manager: group operations (#8536)
Copy/Move/Delete for group of files.
"Select files" button in the filemanager Plus menu.
3 years ago
hius07 19271c08c4
Checkbutton widget optimization (#8522)
-checkmark toggling is separated from the callback
-default width added
3 years ago