Add a setting to disable save document (#2138)

* Add a setting to disable save document
* Add UI elements to control save-document settings
pull/2158/head
Hzj_jie 8 years ago committed by Qingping Hou
parent 483963cd71
commit d4c31d683f

@ -465,18 +465,26 @@ end
function ReaderUI:notifyCloseDocument() function ReaderUI:notifyCloseDocument()
self:handleEvent(Event:new("CloseDocument")) self:handleEvent(Event:new("CloseDocument"))
if self.document:isEdited() then if self.document:isEdited() then
UIManager:show(ConfirmBox:new{ local setting = G_reader_settings:readSetting("save_document")
text = _("Do you want to save this document?"), if setting == "always" then
ok_text = _("Yes"), self:closeDocument()
cancel_text = _("No"), elseif setting == "disable" then
ok_callback = function() self.document:discardChange()
self:closeDocument() self:closeDocument()
end, else
cancel_callback = function() UIManager:show(ConfirmBox:new{
self.document:discardChange() text = _("Do you want to save this document?"),
self:closeDocument() ok_text = _("Yes"),
end, cancel_text = _("No"),
}) ok_callback = function()
self:closeDocument()
end,
cancel_callback = function()
self.document:discardChange()
self:closeDocument()
end,
})
end
else else
self:closeDocument() self:closeDocument()
end end

@ -43,6 +43,41 @@ table.insert(common_settings, {
require("ui/elements/refresh_menu_table"), require("ui/elements/refresh_menu_table"),
}, },
}) })
table.insert(common_settings, {
text = _("Save Document"),
sub_item_table = {
{
text = _("Prompt"),
checked_func = function()
local setting = G_reader_settings:readSetting("save_document")
return setting == "prompt" or setting == nil
end,
callback = function()
G_reader_settings:delSetting("save_document")
end,
},
{
text = _("Always"),
checked_func = function()
return G_reader_settings:readSetting("save_document")
== "always"
end,
callback = function()
G_reader_settings:saveSetting("save_document", "always")
end,
},
{
text = _("Disable"),
checked_func = function()
return G_reader_settings:readSetting("save_document")
== "disable"
end,
callback = function()
G_reader_settings:saveSetting("save_document", "disable")
end,
},
},
})
table.insert(common_settings, Language:getLangMenuTable()) table.insert(common_settings, Language:getLangMenuTable())
table.insert(common_settings, { table.insert(common_settings, {
text = _("Show advanced options"), text = _("Show advanced options"),

Loading…
Cancel
Save