mirror of https://github.com/koreader/koreader
master
v2024.07
v2024.04
v2024.03.1
v2024.03
v2024.01
v2023.10
v2023.08
v2023.06.1
v2023.06
v2023.05.1
v2023.05
v2023.04
v2023.03
v2023.01
v2022.11
v2022.10
v2022.08
v2022.07
v2022.06
v2022.05.1
v2022.05
v2022.03.1
v2022.03
v2022.02
v2022.01
v2021.12.1
v2021.12
v2021.11
v2021.10.1
v2021.10
v2021.09
v2021.08
v2021.07
v2021.06
v2021.05
v2021.04
v2021.03
v2021.02
v2021.01
v2021.01.1
v2020.12
v2020.11
v2020.10.1
v2020.10
v2020.09
v2020.08.1
v2020.08
v2020.07.1
v2020.07
v2020.06
v2020.05
v2020.04.1
v2020.04
v2020.03.2
v2020.03.1
v2020.03
v2020.02
v2020.01
v2019.12
v2019.11
v2019.10
v2019.09.3
v2019.09.2
v2019.09.1
v2019.09
v2019.08
v2019.07
v2019.06
v2019.05
v2019.04
v2019.03.1
v2019.03
v2019.02
v2019.01.1
v2019.01
v2018.12
v2018.11.1
v2018.11
v2015.11
v2015.11-stable
v2014.11
v2014.04
v2013.03
v2013.1
v2012.11
v2012.10
v2012.09
v2012.04.2
v2012.04.1
v2012.04
v2012.03
koreader-nightly-20150516
v2012.05
v2014.03.11-nightly
v2014.03.13-nightly
v2014.03.18-nightly
v2014.03.24-nightly
v2014.03.27-nightly
v2014.03.31-nightly
v2014.04-stable
v2014.04.03-nightly
v2014.04.05-nightly
v2014.04.08-nightly
v2014.04.10-nightly
v2014.04.18-nightly
v2014.04.24-nightly
v2014.04.25-nightly
v2014.05.02-nightly
v2014.05.06-nightly
v2014.05.09-nightly
v2014.05.16-nightly
v2014.05.17-nightly
v2014.05.18-nightly
v2014.05.19-nightly
v2014.05.20-nightly
v2014.05.24-nightly
v2014.06.01-nightly
v2014.06.02-nightly
v2014.06.03-nightly
v2014.06.04-nightly
v2014.06.05-nightly
v2014.06.06-nightly
v2014.06.08-nightly
v2014.06.09-nightly
v2014.06.11-nightly
v2014.06.12-nightly
v2014.06.18-nightly
v2014.06.23-nightly
v2014.06.27-nightly
v2014.06.29-nightly
v2014.07.02-nightly
v2014.07.03-nightly
v2014.07.04-nightly
v2014.07.14-nightly
v2014.07.15-nightly
v2014.07.16-nightly
v2014.07.17-nightly
v2014.07.19-nightly
v2014.07.20-nightly
v2014.07.24-nightly
v2014.07.27-nightly
v2014.07.28-nightly
v2014.08.02-nightly
v2014.08.04-nightly
v2014.08.06-nightly
v2014.08.07-nightly
v2014.08.11-nightly
v2014.08.12-nightly
v2014.08.13-nightly
v2014.08.20-nightly
v2014.08.21-nightly
v2014.08.23-nightly
v2014.08.24-nightly
v2014.08.27-nightly
v2014.08.28-nightly
v2014.08.29-nightly
v2014.09.11-nightly
v2014.09.14-nightly
v2014.09.29-nightly
v2014.10.03-nightly
v2014.10.05-nightly
v2014.10.08-nightly
v2014.10.14-nightly
v2014.10.15-nightly
v2014.10.20-nightly
v2014.10.22-nightly
v2014.10.24-nightly
v2014.10.28-nightly
v2014.10.29-nightly
v2014.10.30-nightly
v2014.10.31-nightly
v2014.11-stable
v2014.11.07-nightly
v2014.11.10-nightly
v2014.11.11-nightly
v2014.11.12-nightly
v2014.11.13-nightly
v2014.11.14-nightly
v2014.11.17-nightly
v2014.11.18-nightly
v2014.11.21-nightly
v2014.11.24-nightly
v2014.11.25-nightly
v2014.11.26-nightly
v2014.11.27-nightly
v2014.11.28-nightly
v2014.11.29-nightly
v2014.12.01-nightly
v2014.12.03-nightly
v2014.12.06-nightly
v2014.12.07-nightly
v2014.12.22-nightly
v2014.12.29-nightly
v2015.01.15-preview
v2015.01.19-nightly
v2015.01.28-pb-test
v2015.01.31-nightly
v2015.02.02-nightly
v2015.02.07-nightly
v2015.02.09-nightly
v2015.02.12-nightly
v2015.03.06-nightly
v2015.03.16-nightly
v2015.03.17-nightly
v2015.03.18-nightly
v2015.03.20-nightly
v2015.03.22-nightly
v2015.03.24-nightly
v2015.04.01-nightly
v2015.04.07-nightly
v2015.04.14-nightly
v2015.04.15-nightly
v2015.04.16-nightly
v2015.04.24-nightly
v2015.04.27-nightly
v2015.04.30-nightly
v2015.05.17-nightly
v2015.06.04-nightly
v2015.06.08-nightly
v2015.06.16-nightly
v2015.06.25-nightly
v2015.07.17-nightly
v2015.08.08-nightly
v2015.09.11-nightly
v2015.09.17-nightly
v2015.10.06-nightly
v2015.10.08-nightly
v2015.10.24-nightly
v2015.10.27-nightly
v2015.12.13-nightly
v2016.02.14-nightly
v2016.02.16-nightly
v2016.02.27-nightly
v2016.03.15-nightly
v2016.03.23-nightly
v2016.04.13-nightly
v2016.04.27-nightly
v2016.05.13-nightly
v2016.05.29-nightly
v2016.06.02-nightly
v2016.06.20-nightly
v2016.06.24-nightly
v2016.07.02-nightly
v2016.07.14-nightly
v2016.08.14-nightly
v2016.08.23-nightly
v2016.11.20-nightly
v2017-10-23-nightly
v2017.02.09-nightly
v2017.03.08-nightly
v2017.04.30-nightly
v2017.06.12-nightly
v2017.08.21-nightly
v2017.10.04-nightly
v2018.01.10-nightly
v2018.02.12-nightly
v2018.03.14-beta
v2018.04.10-beta
v2018.04.12-beta
v2018.06.02-beta
v2018.07.29-beta
v2018.10.07-beta
${ noResults }
8 Commits (20d8a5c31303e0dc4b68dc10ddcd915695255f96)
Author | SHA1 | Message | Date |
---|---|---|---|
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 |
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 |
zwim |
8f3e9a5a61
|
UserHyph: Scrub and sort user dict (#8863) | 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 |
zwim |
ab6867c8fa
|
FileManager: allow case sensitive file search (#7956)
Bump base for cre.cpp cleanup and utf8proc FFI. Add a checkbutton for case sensitive search in FileBrowser, and use Utf8Proc.lowercase() for case insensitive search. Also use it in ReaderUserHyph as a replacement for crengine getLowercasedWord(). |
3 years ago |
zwim |
594b4c9035
|
Add option for custom hyphenation rules (#7787)
This is the successor of #7746. |
3 years ago |
Frans de Jonge |
039947886f
|
Revert "Hyphenation: add custom hyphenation rules (#7746)" (#7785)
This reverts commit
|
3 years ago |
zwim |
f25da5d0d5
|
Hyphenation: add custom hyphenation rules (#7746)
The hyphenation of a word can be changed from its default by long pressing for 3 seconds and selecting 'Hyphenate'. These overrides are stored in a per-language file, i.e: koreader/settings/user-German.hyph. |
3 years ago |