Fix synchronizing issue of Kobo front light between KOReader and nickel (#2977)

pull/2981/head
Hzj_jie 7 years ago committed by GitHub
parent b5c77af15c
commit c8be27481c

@ -35,6 +35,7 @@ function BasePowerD:setIntensityHW(intensity) end
function BasePowerD:getCapacityHW() return 0 end function BasePowerD:getCapacityHW() return 0 end
function BasePowerD:isChargingHW() return false end function BasePowerD:isChargingHW() return false end
function BasePowerD:frontlightIntensityHW() return 0 end function BasePowerD:frontlightIntensityHW() return 0 end
function BasePowerD:isFrontlightOnHW() return self.fl_intensity > self.fl_min end
function BasePowerD:turnOffFrontlightHW() self:_setIntensity(self.fl_min) end function BasePowerD:turnOffFrontlightHW() self:_setIntensity(self.fl_min) end
function BasePowerD:turnOnFrontlightHW() self:_setIntensity(self.fl_intensity) end function BasePowerD:turnOnFrontlightHW() self:_setIntensity(self.fl_intensity) end
-- Anything needs to be done before do a real hardware suspend. Such as turn off -- Anything needs to be done before do a real hardware suspend. Such as turn off
@ -52,7 +53,7 @@ end
function BasePowerD:_decideFrontlightState() function BasePowerD:_decideFrontlightState()
assert(self ~= nil) assert(self ~= nil)
assert(self.device.hasFrontlight()) assert(self.device.hasFrontlight())
self.is_fl_on = (self.fl_intensity > self.fl_min) self.is_fl_on = self:isFrontlightOnHW()
end end
function BasePowerD:isFrontlightOff() function BasePowerD:isFrontlightOff()

@ -32,7 +32,7 @@ end
function KoboPowerD:_syncNickelConf() function KoboPowerD:_syncNickelConf()
if self.has_fl_state_cfg and KOBO_SYNC_BRIGHTNESS_WITH_NICKEL then if self.has_fl_state_cfg and KOBO_SYNC_BRIGHTNESS_WITH_NICKEL then
NickelConf.frontLightState.set(self:isFrontlightOn()) NickelConf.frontLightState.set(self:isFrontlightOn())
NickelConf.frontLightLevel.set(self:frontlightIntensity()) NickelConf.frontLightLevel.set(self.fl_intensity)
end end
end end
@ -43,6 +43,13 @@ function KoboPowerD:frontlightIntensityHW()
return 20 return 20
end end
function KoboPowerD:isFrontlightOnHW()
if self.has_fl_state_cfg then
return NickelConf.frontLightState.get()
end
return BasePowerD.isFrontlightOnHW(self)
end
function KoboPowerD:turnOffFrontlightHW() self:_setIntensity(0) end function KoboPowerD:turnOffFrontlightHW() self:_setIntensity(0) end
function KoboPowerD:setIntensityHW(intensity) function KoboPowerD:setIntensityHW(intensity)

Loading…
Cancel
Save