diff --git a/README.md b/README.md index c3b8c6295..5e7fb3369 100644 --- a/README.md +++ b/README.md @@ -68,20 +68,14 @@ Building & Running & Testing For real eink devices --------------------- -If you have already built one package for a different target, remember to run -this command before you go further: -``` -make clean -``` - To build installable package for Kindle: ``` -make TARGET=kindle kindleupdate +make TARGET=kindle clean kindleupdate ``` To build installable package for Kobo: ``` -make TARGET=kobo koboupdate +make TARGET=kobo clean koboupdate ``` To run, you must call the script reader.lua. Run it without arguments to see @@ -103,36 +97,26 @@ from NDK: make android-toolchain ``` -Also, if you have already built a different target, remember to clear the source -code tree with: -``` -make clean -``` - Then, build installable package for Android: ``` -make TARGET=android androidupdate +make TARGET=android clean androidupdate ``` For emulating ------------- -If you already done a real device build, you must do: +To build an emulator on current machine just run: ``` -make clean +make clean && make ``` -To build: +To run koreader on your developing machine +(you may need to change $(MACHINE) to the arch of your machine such as 'x86_64'): ``` -EMULATE_READER=1 make +cd koreader-$(MACHINE)/koreader && ./reader.lua -d ../../test ``` -To run: -``` -cd koreader-*/koreader && ./reader.lua -d ./ -``` - -To test: +To run unit tests in Koreader just issue: ``` make test ``` @@ -149,7 +133,7 @@ For more information, please refer to [koreader-base's README][base-readme]. To use your own koreader-base repo instead of the default one change KOR_BASE environment variable: ``` -EMULATE_READER=1 make KOR_BASE=../koreader-base +make KOR_BASE=../koreader-base ``` This will be handy if you are developing koreader-base and want to test your diff --git a/frontend/apps/filemanager/filemanager.lua b/frontend/apps/filemanager/filemanager.lua index 6741d5d6b..e1c9c04b2 100644 --- a/frontend/apps/filemanager/filemanager.lua +++ b/frontend/apps/filemanager/filemanager.lua @@ -15,6 +15,7 @@ local Geom = require("ui/geometry") local Event = require("ui/event") local DEBUG = require("dbg") local _ = require("gettext") +local util = require("ffi/util") local FileManager = InputContainer:extend{ title = _("FileManager"), @@ -38,7 +39,7 @@ function FileManager:init() }, VerticalSpan:new{ width = Screen:scaleByDPI(10) } } - + local g_show_hidden = G_reader_settings:readSetting("show_hidden") local show_hidden = g_show_hidden == nil and DSHOWHIDDENFILES or g_show_hidden local file_chooser = FileChooser:new{ @@ -68,13 +69,13 @@ function FileManager:init() showReaderUI(file) return true end - + local copyFile = function(file) self:copyFile(file) end local pasteHere = function(file) self:pasteHere(file) end local cutFile = function(file) self:cutFile(file) end local deleteFile = function(file) self:deleteFile(file) end local fileManager = self - + function file_chooser:onFileHold(file) --DEBUG("hold file", file) self.file_dialog = ButtonDialog:new{ diff --git a/frontend/apps/reader/modules/readeractivityindicator.lua b/frontend/apps/reader/modules/readeractivityindicator.lua index 976aafad7..2b4175224 100644 --- a/frontend/apps/reader/modules/readeractivityindicator.lua +++ b/frontend/apps/reader/modules/readeractivityindicator.lua @@ -1,5 +1,6 @@ local EventListener = require("ui/widget/eventlistener") local Device = require("ui/device") +local util = require("ffi/util") -- lipc local ReaderActivityIndicator = EventListener:new{} @@ -12,7 +13,7 @@ function ReaderActivityIndicator:init() end end -function ReaderActivityIndicator:onStartActivityIndicator() +function ReaderActivityIndicator:onStartActivityIndicator() if self.lipc_handle then -- check if activity indicator is needed if self.document.configurable.text_wrap == 1 then diff --git a/frontend/ui/device/screen.lua b/frontend/ui/device/screen.lua index 5bc4de6e1..11639a586 100644 --- a/frontend/ui/device/screen.lua +++ b/frontend/ui/device/screen.lua @@ -1,6 +1,7 @@ local Blitbuffer = require("ffi/blitbuffer") local Geom = require("ui/geometry") local DEBUG = require("dbg") +local util = require("ffi/util") -- Blitbuffer -- einkfb diff --git a/frontend/ui/input.lua b/frontend/ui/input.lua index 7dcd55eac..c638db82c 100644 --- a/frontend/ui/input.lua +++ b/frontend/ui/input.lua @@ -6,6 +6,7 @@ local Screen = require("ui/screen") local Math = require("optmath") local DEBUG = require("dbg") local _ = require("gettext") +local util = require("ffi/util") -- constants from local EV_SYN = 0 diff --git a/frontend/ui/timeval.lua b/frontend/ui/timeval.lua index e95eeabe0..28f934839 100644 --- a/frontend/ui/timeval.lua +++ b/frontend/ui/timeval.lua @@ -1,3 +1,5 @@ +local util = require("ffi/util") + local TimeVal = { sec = 0, usec = 0, diff --git a/frontend/ui/uimanager.lua b/frontend/ui/uimanager.lua index 253a2d48f..cd5fd409b 100644 --- a/frontend/ui/uimanager.lua +++ b/frontend/ui/uimanager.lua @@ -4,6 +4,7 @@ local Input = require("ui/input") local Event = require("ui/event") local DEBUG = require("dbg") local _ = require("gettext") +local util = require("ffi/util") -- initialize output module, this must be initialized before Input Screen:init() @@ -214,7 +215,7 @@ function UIManager:run() dirty = true end end - + if self.full_refresh then dirty = true force_full_refresh = true @@ -224,11 +225,11 @@ function UIManager:run() dirty = true force_patial_refresh = true end - + self.repaint_all = false self.full_refresh = false self.patial_refresh = false - + local refresh_type = self.default_refresh_type local waveform_mode = self.default_waveform_mode if dirty then @@ -243,7 +244,7 @@ function UIManager:run() if self.update_region_func then local update_region = self.update_region_func() -- in some rare cases update region has 1 pixel offset - Screen:refresh(refresh_type, waveform_mode, + Screen:refresh(refresh_type, waveform_mode, update_region.x-1, update_region.y-1, update_region.w+2, update_region.h+2) else @@ -251,7 +252,7 @@ function UIManager:run() end if self.refresh_type == 1 then self.refresh_count = 0 - elseif not force_patial_refresh and not force_full_refresh then + elseif not force_patial_refresh and not force_full_refresh then self.refresh_count = (self.refresh_count + 1)%self.FULL_REFRESH_COUNT end self.update_region_func = nil diff --git a/frontend/ui/widget/filechooser.lua b/frontend/ui/widget/filechooser.lua index df55f2e6e..895e21258 100644 --- a/frontend/ui/widget/filechooser.lua +++ b/frontend/ui/widget/filechooser.lua @@ -2,6 +2,7 @@ local Menu = require("ui/widget/menu") local Screen = require("ui/screen") local UIManager = require("ui/uimanager") local DEBUG = require("dbg") +local util = require("ffi/util") -- lfs local ffi = require("ffi") ffi.cdef[[ diff --git a/frontend/ui/widget/inputtext.lua b/frontend/ui/widget/inputtext.lua index 8a9689732..262e0ab4b 100644 --- a/frontend/ui/widget/inputtext.lua +++ b/frontend/ui/widget/inputtext.lua @@ -10,6 +10,7 @@ local Device = require("ui/device") local Screen = require("ui/screen") local Font = require("ui/font") local DEBUG = require("dbg") +local util = require("ffi/util") local InputText = InputContainer:new{ text = "", diff --git a/reader.lua b/reader.lua index 01f6d203e..24411d44e 100755 --- a/reader.lua +++ b/reader.lua @@ -5,7 +5,6 @@ einkfb = require("ffi/framebuffer") input = require("ffi/input") freetype = require("ffi/freetype") Image = require("ffi/mupdfimg") -util = require("ffi/util") require "defaults" package.path = "?.lua;common/?.lua;frontend/?.lua" @@ -13,6 +12,7 @@ package.cpath = "?.so;common/?.so;/usr/lib/lua/?.so" local DocSettings = require("docsettings") local _ = require("gettext") +local util = require("ffi/util") -- read settings and check for language override -- has to be done before requiring other files because