From 1a7d2dd657584dbb99440159162a16e7e0b8d765 Mon Sep 17 00:00:00 2001 From: poire-z Date: Thu, 2 Jan 2020 14:00:55 +0100 Subject: [PATCH] reader.lua: re-order touchScreenProbe() after CanvasContext Device:touchScreenProbe() may display some widget (on first install on Kobo Touch), and needs CanvasContext initialized. Prevent a crash in this case. --- reader.lua | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/reader.lua b/reader.lua index 5b81b01df..fe9718692 100755 --- a/reader.lua +++ b/reader.lua @@ -136,10 +136,6 @@ if Device:hasEinkScreen() then Device.screen:toggleSWDithering() end end --- Touch screen -if Device:needsTouchScreenProbe() then - Device:touchScreenProbe() -end -- Handle global settings migration local SettingsMigration = require("ui/data/settings_migration") @@ -149,6 +145,13 @@ SettingsMigration:migrateSettings(G_reader_settings) local CanvasContext = require("document/canvascontext") CanvasContext:init(Device) +-- Touch screen (this may display some widget, on first install on Kobo Touch, +-- so have it done after CanvasContext:init() but before Bidi.setup() to not +-- have mirroring mess x/y probing). +if Device:needsTouchScreenProbe() then + Device:touchScreenProbe() +end + -- UI mirroring for RTL languages, and text shaping configuration local Bidi = require("ui/bidi") Bidi.setup(lang_locale)