From f63975d9db91d4610dcca1d63586a727bcf9fc22 Mon Sep 17 00:00:00 2001 From: poire-z Date: Thu, 12 Apr 2018 08:41:59 +0200 Subject: [PATCH] ReaderBack: allow for disabling back history (#3862) Mostly useful for developers for quick launch & quit of the emulator. --- frontend/apps/reader/modules/readerback.lua | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/frontend/apps/reader/modules/readerback.lua b/frontend/apps/reader/modules/readerback.lua index 2a9ee4c47..d4d10c00c 100644 --- a/frontend/apps/reader/modules/readerback.lua +++ b/frontend/apps/reader/modules/readerback.lua @@ -9,6 +9,9 @@ local ReaderBack = EventListener:new{ location_stack = {}, -- a limit not intended to be a practical limit but just a failsafe max_stack = 5000, + -- allow for disabling back history, and having Back key + -- quit immediately (useful for some developers) + disabled = G_reader_settings:isFalse("enable_back_history"), } function ReaderBack:init() @@ -48,11 +51,13 @@ end -- Scroll mode crengine function ReaderBack:onPosUpdate() + if self.disabled then return end self:addCurrentLocationToStack() end -- Paged media function ReaderBack:onPageUpdate() + if self.disabled then return end self:addCurrentLocationToStack() end @@ -64,7 +69,9 @@ end function ReaderBack:onBack() local location_stack = self.location_stack - if #location_stack > 1 then + if self.disabled then + self.ui:handleEvent(Event:new("Close")) + elseif #location_stack > 1 then local saved_location = table.remove(location_stack) if saved_location then