Commit Graph

282 Commits (master)

Author SHA1 Message Date
Qingping Hou 1605409c60 rename runtimectl to document/canvascontext 5 years ago
Qingping Hou 4d8da96177 fix test 5 years ago
Qingping Hou 855c8c2569 add dummy device & rename runtimectl:setDevice to runtimectl:init 5 years ago
Qingping Hou d749591984 decouple device from pdfdocument, font & bgr checking 5 years ago
Qingping Hou 02eca23649 decouple device from document modules 5 years ago
NiLuJe bb3f49a566 [feat, Kobo] On Kobo, drop fb to 8bpp on startup (#4637)
* The Great 8bpp Experiment

Swap to 8bpp on Kobo, because we're 'effing grayscale, for pete's sake!

* Always swap to 8bpp, no matter the launch method.

Because it turned out that, even when restarting Nickel, we had to
restore the expected bitdepth ourselves, because pickel/Nickel didn't do
the job completely.

(I'm going to guess the grayscale flag wasn't getting flipped properly).

* Dither every non-transparent icon to the eInk palette

* Make sure hasBGRFrameBuffer is only enabled when the Kobo fb actually is
@ 32bpp...

* Re-process badly grayscaled icons

* And re-grayscale that one w/ gamma correction so the squares show up
better.

* Allow the fbdepth switch to be disabled (in Developer settings).

Also, allow setting debug mode that way.

Also, forcibly disable verbose logging when disabling debug.

* Update setting name to piggyback on the existing check in reader.lua

* Update icons postprocessing info
5 years ago
Robert 192bc175fc New startup option: Folder shortcuts (#4220) 6 years ago
Frans de Jonge d0130ae9da
reader.lua: add version to ascii art (#3724)
As suggested by @poire-z in https://github.com/koreader/koreader/pull/3723#issuecomment-370557018
6 years ago
Frans de Jonge ea033431aa CircleCI fixes
* shellcheck 0.4.5 fix `LC_ALL: en_US.UTF8` (can be removed for shellcheck 0.4.6)

* hush updated luacheck on `reader.lua`; we're not assigning any variables but `= nil` is redundant
7 years ago
poire-z 308c243238 Inform once about color rendering on supported devices (#3289) 7 years ago
poire-z d4fd0b9428 frontlight on kobo: a few fixes (#3163)
* frontlight on kobo: a few fixes

Rewritten to not update NickelConf on every change, and never
if KOBO_SYNC_BRIGHTNESS_WITH_NICKEL = false.
Reintroduce global settings frontlight_intensity and
is_frontlight_on to keep level and state across koreader
sessions.
Fix a few of the remaining issues on kobo light.
Ensure settings are saved when rebooting/powering off from
File browser.

* Ensure untoggle works when starting with light off
7 years ago
Frans de Jonge 23cd585fae Support history as default view for filemanager (#3058)
Fixes #2774

* make history view borderless
* add new menu for what to start with

Should combine nicely with #2940
7 years ago
Hzj_jie a4d5165f7a Several fixes in frontlight logic (#2991)
* Use PluginShare to exchange data between plugins

* Remove legacy code in reader.lua and kobo/device.lua, and move KOBO_LIGHT_ON_START to kobo/powerd.lua

* A better sync config logic

* Consider kobo without hardware frontlight toggle

* update frontlight widget once toggle is tapped.
7 years ago
Hzj_jie 808766b7f3 Remove the deprecated restore_settings flag 7 years ago
Hzj_jie 30378eb2a8 Add restart koreader function and ensure FlushSettings event can be delivered to all widgets (#2772) 7 years ago
Frans de Jonge 89099e2c94 Swipe for menu and quickstart guide (#2761)
* Swipe for menu and quickstart guide

Because swiping for the menu is a big change from what we're used to, this commit includes a new quickstart guide.

Fixes #2608.

* add some dev docs
* add FileConverter spec
* add QuickStart spec
* add Version module
* add Version spec
7 years ago
robert00s 1749ab7227 Fix 2716 7 years ago
Robert b4462da1b6 Dialog when reopening book at start (#2259) (#2603) 7 years ago
Frans de Jonge c855494ba0 Minor: don't turn off wifi on exit
This fixes #2379 and #2511.
7 years ago
Qingping Hou f95ad00b9e feat: add logger module & rewrite kobo suspend script in lua 7 years ago
Qingping Hou dae4a5a413 refactor: move bootstrap code into setupkoenv.lua
add ffi.load patch
add kodev prompt command
8 years ago
Qingping Hou 93873bfd69 plugins(chore): fix static check errors 8 years ago
Qingping Hou 4540d51a6e settings: add entry to toggle debug mode 8 years ago
Qingping Hou a407036acd minor: always flush banner to stdout 8 years ago
Qingping Hou db5a872ec6 minor: turn off wifi on exit 8 years ago
Qingping Hou 5309a0a47f misc: rotate crash.log for kobo/kindle/pocketbook 8 years ago
chrox 9ab005a1d3 fix unit test of readerlink and readerpaging
and have more confidence with the unit testing framework.

Now `make testfront` won't retry on failure and testing files are
ordered in each run so that it's possible to reproduce testing failure.

And this patch also fix flush settings not working before suspend issue:
at some point the `FlushSettings` event is sent to `UIManager` instead
of `ReaderUI`, but `UIManager` only delegated events to active widgets
and `ReaderUI` is actually not an active widgets thus will miss the event.

This patch also add a verbose debug mode with "-v" as a switch to turn
on this mode. With verbose mode on, event handling will be logged.
8 years ago
chrox 7ea12c0198 fix broken unit tests on Travis CI
1. It turns out that `device_id` is not defined in unit test environment
which makes the `assert(self.kosync_device_id)` fail and somehow makes `luajit` segmentation fault.
2. In the device spec, stubbing `io.open` will make subsquent `require`
all return boolean value and segmentation fault `luajit`.

This patch is a minimum viable change that makes CI work on both my
local box and Travis.
8 years ago
Zijie He 820a39c8f7 Update KOSyncClient 8 years ago
Qingping Hou 85398dc2d5 luasettings: new module to handle genric settings
also use luasettings for reader settings
8 years ago
Zijie He 882a815f6c Use default font if settings.reader.lua does not provide one. Provide a Toggle button if readerfooter gesture actions are disabled. 8 years ago
Frans de Jonge 5638819f25 Removed a bunch of "successfully", replaced an ellipsis, and some deviant spellings of KOReader. 8 years ago
NiLuJe dfe321d87a Fix a hasFrontLight call in reader.lua...
(it's a function, not a bool ;'( ).

Fix #1961
8 years ago
Qingping Hou eb37d9b8b6 kobo: fix screen probe for touch 8 years ago
hzj-jie d1e8b8098d Koreader won't start on Kobo without frontlight, powerd.fl may be nil. 8 years ago
Qingping Hou 9a3e262bb3 fix(reader.lua): typo 8 years ago
Qingping Hou 6446f9d2b0 minor(reader.lua): remove unnecessary import 8 years ago
Qingping Hou 3334bf8fe7 fix: delay showReader after UIManager:run is called 8 years ago
NiLuJe a82fe3ac44 is_fl_on -> is_frontlight_on outside of powerd
Matches the reader setting we're reading/writing at that point,
and avoids confusion related to scoping because it doesn't necessarily
match powerd.is_fl_on at that point.

Well, at least I had to wrap my mind around it ^^
8 years ago
Qingping Hou 399d676cf0 kobo: rename frontlight_state config to is_frontlight_on 8 years ago
Qingping Hou 08b08d69f7 kobo: always set light intensity to 0 if state is nil or false 8 years ago
Qingping Hou 9afae91b13 chore: rename frontlight related variables to keep style consistent
flIntensity -> fl_intensity
flState -> is_fl_on
fallback_FrontLightLevel -> fallback_fl_level
8 years ago
zijiehe e84093c414 Add a flState in Kobo, and KoboPowerD:toggleFrontlight uses flState to control the light instead of intensity. 8 years ago
Dimitrios Semitsoglou-Tsiapos eb47c5a39f Synchronise frontlight level with nickel config
* Drops support for mocking the frontlight setting internally which may
  cause incorrect in-memory values.

* Adds new supported value for `KOBO_LIGHT_ON_START` (-2), which sets
  'Kobo eReader.conf' as the source to update `settings.reader.lua`'s
  brightness setting on startup, thus using the value from it
  indirectly.

* Adds the `KOBO_SYNC_BRIGHTNESS_WITH_NICKEL` configuration variable
  which updates 'Kobo eReader.conf' every time the brightness setting is
  changed within koreader.

* Fixes missing call to save brightness when modifying via two-finger
  swipe.

Closes #1523.
8 years ago
chrox 5cbbac6b43 fix typo 9 years ago
chrox 9654e9ce6c fix #1608 with touch coordinates detection
Some kobo touch devices have X Y coordinates in touch events swapped.
This patch provides a GUI to probe if the device needs to swap the XY.
The Kobo Touch users will be directed to tap on the upper right corner
of the screen and the probe will check if the X value is smaller than
the Y value in the tap event.
9 years ago
chrox 34ea9ac574 add datastorage module to handle data directory on various platform
On kindle, kobo and pocketbook the data directory is the current
running directory but on Android the app is installed in system
defined location and users may have no access to that location.
The same circumstances should be true for the upcoming Koreader for
Ubuntu touch, so the data directory (in which tessdata, dictionaries,
global settings, persistant defaults and probably history data are
stored) could be stored in another place.
9 years ago
chrox 82393f0ed3 fix loading frontend/JSON.lua for json.lua on Kindle
The VFAT file system of `/mnt/us` is case insensitive so that
require("json") from Spore which intends to load luajson module in
rock directory actually will load `frontend/JSON.lua`, the two JSON
parser libraries have slightly different APIs.

This patch remove the pure Lua JSON library in favor of `luajson` which
uses LPeg pattern marching backend for better performance.
9 years ago
chrox 69e6b6b9cb hold on directory in filemanager can set the it as HOME directory
and this "HOME" directory will override the command line option passed to
koreader.

This patch implements #1434.
9 years ago
chrox d08e22ec2e add simple sync service as a plugin
The 'KOSync' plugin will synchronize furthest reading progress
across different koreader devices after users registering their
devices.

The synchronizing service is open-sourced as the project
[koreader/koreader-sync-server](https://github.com/koreader/koreader-sync-server).
9 years ago
Huang Xin b4574a7359 fix crash on kindle 9 years ago
chrox efe8e65dd9 refactoring search path 9 years ago
Hans-Werner Hilse d91dccae80 fix night mode setting
implement bezel cleaning with proper background color
10 years ago
chrox dec9a99fba load Device module after DEBUG is turned on
otherwise some DEBUGs are not printed.
10 years ago
Hans-Werner Hilse 3066c86e38 Refactoring hardware abstraction
This is a major overhaul of the hardware abstraction layer.
A few notes:

General platform distinction happens in
  frontend/device.lua
which will delegate everything else to
  frontend/device/<platform_name>/device.lua
which should extend
  frontend/device/generic/device.lua

Screen handling is implemented in
  frontend/device/screen.lua
which includes the *functionality* to support device specifics.
Actually setting up the device specific functionality, however,
is done in the device specific setup code in the relevant
device.lua file.

The same goes for input handling.
10 years ago
chrox a197f31da7 check if last opened file exists before opening it
This should fix #916.
10 years ago
chrox 14e2bf3d69 refatoring: lazy loading of packages 10 years ago
chrox c4a1e4d10d update PATH variable on startup for Windows 10 years ago
chrox 69919435ac restore frontlight setting only for Kobo devices 10 years ago
chrox 2bec0017a0 refactor out global functions showHomePage and showReaderUI 10 years ago
chrox c74c258fc7 add filemanager icon in reader menu
now we can access the filemanager in all launcher configurations
10 years ago
chrox c8bc9ee37c close screen framebuffer when exiting reader 10 years ago
chrox b7c7287bab remove more global variables 10 years ago
chrox e1af17938c remove global variable Image 10 years ago
WS64 2d72bb7e3f Update reader.lua 10 years ago
WS64 5a2b9103e9 Update reader.lua 10 years ago
NiLuJe 6e10b877ad We don't need those at startup, delay until needed. 10 years ago
NiLuJe f1cc984cbf Close lipc handles on exit.
No idea if bad things happen if we don't, but at least this sounds more
correct. (re #696)
10 years ago
NiLuJe 834ff9a1fb Don't fake the swipe to unlock if not needed.
Re: #695
10 years ago
chrox 26f5a4731e add peer-to-peer file sharing plugin ZSync 10 years ago
Markismus aaa84808e8 add persistent option for defaults.lua 10 years ago
chrox b92860c22a add night mode option that inverts screen color 10 years ago
chrox e23e48ffa5 fix license version in reader usage 10 years ago
chrox d2eaeeaeed add option to load last opened file automatically 10 years ago
chrox 857bd6fcc8 strings not shown on GUI will not be translated
This may encourage users in transifex to join Koreader project.
10 years ago
chrox 8e278c0d62 remove global util module 10 years ago
Qingping Hou f6a9c694dc refactor: update reader to use new launcher 10 years ago
Huang Xin 4156b2edd0 Merge pull request #559 from Markismus/master
Return to Home screen for Kobo devices Mini, Touch and Aura
10 years ago
Markismus a153286f44 Kobo Frontlight Tweaks
Now the frontlight remains unchanged from Nickel to koreader and vice
versa.
Also ffi/kobolight.lua has been changed to allow for usage of the toggle
button in the filemanager.
10 years ago
chrox 659e5f6bdd use buildin LuaJIT profiler 10 years ago
chrox 34fd9f3efa add koreader plugin mechanism
This should implement #505.
10 years ago
Qingping Hou f07c0c4fba require FileManager on demand in reader.lua 10 years ago
Qingping Hou 4b357c1466 move reader code into frontend/apps/reader
it makes more sense to completely separate the UI framework and
application code

also move frontend/ui/configurable.lua to frontend/configurable.lua
10 years ago
chrox 92219a1f1e cleanup: expand tab to 4 spaces 10 years ago
Qingping Hou 5dc9d5d565 rename language_po setting entry to language 10 years ago
Paulo Matias a7af79d3c8 Language chooser fixes
- Change order of module loading so that every string is localized
- Fix changing the language to English
10 years ago
Qingping Hou ae1cf90006 add language setting menu item 10 years ago
Paulo Matias 1b1e65edfe Avoid crash if trying to open a non-existent file
which currently might occur by clicking in the history entry of a file which was removed
10 years ago
chrox 92b62c907a refactoring frontlight device to more generic power device 10 years ago
chrox 62e12ddfba import document module on-demand 10 years ago
chrox 1fb4dfab95 add visual indication on document loading
This should implement #265.
11 years ago
chrox c205503828 remove global variable DEBUG 11 years ago
chrox f49f64bc15 add missing gettext and Menu module 11 years ago
HW ef111b99c6 Refactored to use strictly locals 11 years ago
Paulo Matias d7b747d6dd Change util.isEmulated to boolean and fix frontlight
Device:hasFrontlight always returned a true-like value because util.isEmulated was an integer.
Fixed this, also, used a polymorphic object design to reduce FrontLight code, and
adapted BaseFrontLight for the emulator.
11 years ago
Paulo Matias 8f53571e06 No need for lulip to be global 11 years ago
Paulo Matias 2492ca247a Use ffi/lulip.lua from koreader-base; change package.path 11 years ago
Huang Xin 2e8b5cb39c Merge pull request #215 from houqp/houqp-master
check frontlight before setting intensity
11 years ago
Huang Xin 4e83288040 Merge pull request #214 from houqp/filemanager
bug fix in class system & rewrite filemanager
11 years ago
Qingping Hou f65ae9a2b5 check frontlight before setting intensity 11 years ago