diff --git a/frontend/ui/widget/screenshoter.lua b/frontend/ui/widget/screenshoter.lua index 640ba57e1..56691baeb 100644 --- a/frontend/ui/widget/screenshoter.lua +++ b/frontend/ui/widget/screenshoter.lua @@ -1,13 +1,12 @@ -local InputContainer = require("ui/widget/container/inputcontainer") -local InfoMessage = require("ui/widget/infomessage") -local GestureRange = require("ui/gesturerange") +local ConfirmBox = require("ui/widget/confirmbox") local DataStorage = require("datastorage") +local GestureRange = require("ui/gesturerange") +local InputContainer = require("ui/widget/container/inputcontainer") local UIManager = require("ui/uimanager") local Screen = require("device").screen local T = require("ffi/util").template local _ = require("gettext") - local Screenshoter = InputContainer:new{ prefix = 'Screenshot', } @@ -39,10 +38,16 @@ end function Screenshoter:onScreenshot(filename) local screenshot_name = filename or os.date(self.screenshot_fn_fmt) - UIManager:show(InfoMessage:new{ - text = T( _("Saving screenshot to %1."), screenshot_name), - timeout = 3, - }) + local widget = ConfirmBox:new{ + text = T( _("Saving screenshot to %1.\nWould you like to set it as screensaver?"), screenshot_name), + ok_text = _("Yes"), + ok_callback = function() + G_reader_settings:saveSetting("screensaver_type", "image_file") + G_reader_settings:saveSetting("screensaver_image", screenshot_name) + end, + cancel_text = _("No"), + } + UIManager:show(widget) Screen:shot(screenshot_name) -- trigger full refresh UIManager:setDirty(nil, "full")