mirror of
https://github.com/koreader/koreader.git
synced 2025-08-10 00:52:38 +00:00
refactor out global functions showHomePage and showReaderUI
This commit is contained in:
@@ -1,9 +1,13 @@
|
||||
local InputContainer = require("ui/widget/container/inputcontainer")
|
||||
local DocumentRegistry = require("document/documentregistry")
|
||||
local InfoMessage = require("ui/widget/infomessage")
|
||||
local ConfirmBox = require("ui/widget/confirmbox")
|
||||
local lfs = require("libs/libkoreader-lfs")
|
||||
local DocSettings = require("docsettings")
|
||||
local UIManager = require("ui/uimanager")
|
||||
local Geom = require("ui/geometry")
|
||||
local Device = require("ui/device")
|
||||
local Screen = require("ui/screen")
|
||||
local Event = require("ui/event")
|
||||
local Cache = require("cache")
|
||||
local DEBUG = require("dbg")
|
||||
@@ -291,6 +295,39 @@ function ReaderUI:init()
|
||||
end
|
||||
end
|
||||
|
||||
function ReaderUI:showReader(file)
|
||||
DEBUG("show reader ui")
|
||||
if lfs.attributes(file, "mode") ~= "file" then
|
||||
UIManager:show(InfoMessage:new{
|
||||
text = _("File ") .. file .. _(" does not exist")
|
||||
})
|
||||
return
|
||||
end
|
||||
UIManager:show(InfoMessage:new{
|
||||
text = _("Opening file ") .. file,
|
||||
timeout = 1,
|
||||
})
|
||||
UIManager:scheduleIn(0.1, function() self:doShowReader(file) end)
|
||||
end
|
||||
|
||||
function ReaderUI:doShowReader(file)
|
||||
DEBUG("opening file", file)
|
||||
local document = DocumentRegistry:openDocument(file)
|
||||
if not document then
|
||||
UIManager:show(InfoMessage:new{
|
||||
text = _("No reader engine for this file")
|
||||
})
|
||||
return
|
||||
end
|
||||
|
||||
G_reader_settings:saveSetting("lastfile", file)
|
||||
local reader = ReaderUI:new{
|
||||
dimen = Screen:getSize(),
|
||||
document = document,
|
||||
}
|
||||
UIManager:show(reader)
|
||||
end
|
||||
|
||||
function ReaderUI:onSetDimensions(dimen)
|
||||
self.dimen = dimen
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user