Screensaver option on Kindle devices (#2734)

* Screensaver on Kindle devices
pull/2742/head
Robert 7 years ago committed by Frans de Jonge
parent e217b99fa6
commit 59873ae293

@ -96,7 +96,7 @@ function FileManagerMenu:setUpdateItemTable()
G_reader_settings:flush()
end
}
if Device.isKobo() then
if Device.isKobo() or Device.isKindle() then
self.menu_items.screensaver = {
text = _("Screensaver"),
sub_item_table = {

@ -145,8 +145,27 @@ function ReaderMenu:setUpdateItemTable()
}
}
}
elseif Device:isKindle() then
self.menu_items.screensaver = {
text = _("Screensaver"),
sub_item_table = {
{
text = _("Use book's cover as screensaver"),
checked_func = Screensaver.isUsingBookCover,
callback = function()
if Screensaver:isUsingBookCover() then
G_reader_settings:saveSetting(
"use_lastfile_as_screensaver", false)
else
G_reader_settings:delSetting(
"use_lastfile_as_screensaver")
end
G_reader_settings:flush()
end
}
}
}
end
-- main menu tab
-- insert common info
for id, common_setting in pairs(require("ui/elements/common_info_menu_table")) do

@ -46,6 +46,9 @@ function Kindle:usbPlugIn()
end
function Kindle:intoScreenSaver()
if require("ui/screensaver").isUsingBookCover then
require("ui/screensaver"):show("suspend")
end
self.powerd:beforeSuspend()
if self.charging_mode == false and self.screen_saver_mode == false then
self.screen:saveCurrentBB()
@ -64,6 +67,9 @@ function Kindle:outofScreenSaver()
if os.getenv("AWESOME_STOPPED") == "yes" then
os.execute("killall -stop awesome")
end
if require("ui/screensaver").isUsingBookCover then
require("ui/screensaver"):close()
end
-- wait for native system update screen before we recover saved
-- Blitbuffer.
util.usleep(1500000)

@ -129,8 +129,10 @@ function Screensaver:show(kind, default_msg)
-- fallback to message box
if not self.left_msg then
local msg = screensaver_settings.message or default_msg
self.left_msg = InfoMessage:new{ text = msg }
UIManager:show(self.left_msg)
if msg then
self.left_msg = InfoMessage:new{ text = msg }
UIManager:show(self.left_msg)
end
else
-- refresh whole screen for other types
UIManager:show(self.left_msg, "full")

Loading…
Cancel
Save