mirror of
https://github.com/koreader/koreader
synced 2024-11-18 03:25:46 +00:00
b72a2000b1
* Add a toggle to disable the C blitter in the Dev menu (depends on https://github.com/koreader/koreader-base/pull/882) (never shown if the JIT is disabled, grayed out if the C blitter is not installed) * Fix a few sizeUtf8Text call sites that were doing a nil check in order to account for the new return type. * Tweak statusbar handling to avoid spurious sizeUtf8Text warnings when it's hidden, and unify its behavior between being hidden via toggle, and hidden on book open (at least when all-at-once is not enabled). * c.f., https://github.com/koreader/koreader-base/pull/882 (Android, PB, RGB32 & Legacy Kindle regression fixes).
30 lines
775 B
Lua
30 lines
775 B
Lua
local TextWidget = require("ui/widget/textwidget")
|
|
local RenderText = require("ui/rendertext")
|
|
local Geom = require("ui/geometry")
|
|
local Screen = require("device").screen
|
|
|
|
--[[
|
|
FixedTextWidget
|
|
--]]
|
|
local FixedTextWidget = TextWidget:new{}
|
|
|
|
function FixedTextWidget:getSize()
|
|
local tsize = RenderText:sizeUtf8Text(0, Screen:getWidth(), self.face, self.text, true, self.bold)
|
|
if tsize.x == 0 then
|
|
return Geom:new{}
|
|
end
|
|
self._length = tsize.x
|
|
self._height = self.face.size
|
|
return Geom:new{
|
|
w = self._length,
|
|
h = self._height,
|
|
}
|
|
end
|
|
|
|
function FixedTextWidget:paintTo(bb, x, y)
|
|
RenderText:renderUtf8Text(bb, x, y+self._height, self.face, self.text, true, self.bold,
|
|
self.fgcolor)
|
|
end
|
|
|
|
return FixedTextWidget
|