From 96930f230f1a6a3ba51e078a7d344428d3fd2707 Mon Sep 17 00:00:00 2001 From: NiLuJe Date: Thu, 8 Sep 2022 04:19:34 +0200 Subject: [PATCH] Add "Invert page turn buttons" to Dispatcher (#9494) Fix #9492 --- frontend/device/devicelistener.lua | 5 +++++ frontend/dispatcher.lua | 2 ++ frontend/ui/elements/page_turns.lua | 3 +-- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/frontend/device/devicelistener.lua b/frontend/device/devicelistener.lua index 4efe04eb1..22c5942a8 100644 --- a/frontend/device/devicelistener.lua +++ b/frontend/device/devicelistener.lua @@ -313,6 +313,11 @@ function DeviceListener:onToggleNoFlashOnSecondChapterPage() _toggleSetting("no_refresh_on_second_chapter_page") end +function DeviceListener:onSwapPageTurnButtons() + _toggleSetting("input_invert_page_turn_keys") + Device:invertButtons() +end + if Device:canReboot() then function DeviceListener:onReboot() UIManager:show(ConfirmBox:new{ diff --git a/frontend/dispatcher.lua b/frontend/dispatcher.lua index 772590be8..53e000ffc 100644 --- a/frontend/dispatcher.lua +++ b/frontend/dispatcher.lua @@ -134,6 +134,7 @@ local settingsList = { toggle_bookmark = {category="none", event="ToggleBookmark", title=_("Toggle bookmark"), reader=true}, toggle_page_change_animation = {category="none", event="TogglePageChangeAnimation", title=_("Toggle page turn animations"), reader=true, condition=Device:canDoSwipeAnimation()}, toggle_inverse_reading_order = {category="none", event="ToggleReadingOrder", title=_("Toggle page turn direction"), reader=true, separator=true}, + swap_page_turn_buttons = {category="none", event="SwapPageTurnButtons", title=_("Invert page turn buttons"), reader=true, condition=Device:hasKeys(), separator=true}, cycle_highlight_action = {category="none", event="CycleHighlightAction", title=_("Cycle highlight action"), reader=true}, cycle_highlight_style = {category="none", event="CycleHighlightStyle", title=_("Cycle highlight style"), reader=true}, page_jmp = {category="absolutenumber", event="GotoViewRel", min=-100, max=100, title=_("Go %1 pages"), reader=true}, @@ -317,6 +318,7 @@ local dispatcher_menu_order = { "toggle_page_flipping", "toggle_reflow", "toggle_inverse_reading_order", + "swap_page_turn_buttons", "zoom", "zoom_factor_change", "cycle_highlight_action", diff --git a/frontend/ui/elements/page_turns.lua b/frontend/ui/elements/page_turns.lua index 229bc89ad..9ad535c44 100644 --- a/frontend/ui/elements/page_turns.lua +++ b/frontend/ui/elements/page_turns.lua @@ -161,8 +161,7 @@ if Device:hasKeys() then return G_reader_settings:isTrue("input_invert_page_turn_keys") end, callback = function() - G_reader_settings:flipNilOrFalse("input_invert_page_turn_keys") - Device:invertButtons() + UIManager:broadcastEvent(Event:new("SwapPageTurnButtons")) end, }) end