fix: update gesturedector constant for custom screen dpi

pull/4737/head
Qingping Hou 5 years ago
parent bae83ad663
commit 4b7d5c82b7

@ -143,6 +143,11 @@ function Device:init()
end end
end end
function Device:setScreenDPI(dpi_override)
self.screen:setDPI(dpi_override)
self.input.gesture_detector:init()
end
function Device:getPowerDevice() function Device:getPowerDevice()
return self.powerd return self.powerd
end end

@ -91,11 +91,12 @@ function GestureDetector:new(o)
end end
function GestureDetector:init() function GestureDetector:init()
local scaler = self.screen:getDPI() / 167
-- distance parameters -- distance parameters
self.DOUBLE_TAP_DISTANCE = 50 * self.screen:getDPI() / 167 self.TWO_FINGER_TAP_REGION = 20 * scaler
self.TWO_FINGER_TAP_REGION = 20 * self.screen:getDPI() / 167 self.DOUBLE_TAP_DISTANCE = 50 * scaler
self.PAN_THRESHOLD = 50 * self.screen:getDPI() / 167 self.PAN_THRESHOLD = self.DOUBLE_TAP_DISTANCE
self.MULTISWIPE_THRESHOLD = 50 * self.screen:getDPI() / 167 self.MULTISWIPE_THRESHOLD = self.DOUBLE_TAP_DISTANCE
end end
--[[-- --[[--

@ -37,7 +37,7 @@ end
local Device = require("device") local Device = require("device")
local dpi_override = G_reader_settings:readSetting("screen_dpi") local dpi_override = G_reader_settings:readSetting("screen_dpi")
if dpi_override ~= nil then if dpi_override ~= nil then
Device.screen:setDPI(dpi_override) Device:setScreenDPI(dpi_override)
end end
local CanvasContext = require("document/canvascontext") local CanvasContext = require("document/canvascontext")

Loading…
Cancel
Save