mirror of
https://github.com/koreader/koreader.git
synced 2025-08-10 00:52:38 +00:00
Dictionary: add menu item to set font size (#5647)
This commit is contained in:
@@ -114,7 +114,6 @@ read_globals = {
|
||||
"DMINIBAR_FONT_SIZE",
|
||||
"DGESDETECT_DISABLE_DOUBLE_TAP",
|
||||
"DAUTO_SAVE_PAGING_COUNT",
|
||||
"DDICT_FONT_SIZE",
|
||||
"FRONTLIGHT_SENSITIVITY_DECREASE",
|
||||
"DALPHA_SORT_CASE_INSENSITIVE",
|
||||
"SEARCH_CASESENSITIVE",
|
||||
|
||||
@@ -189,7 +189,8 @@ DMINIBAR_FONT_SIZE = 14
|
||||
DAUTO_SAVE_PAGING_COUNT = nil
|
||||
|
||||
-- dictionary font size
|
||||
DDICT_FONT_SIZE = 20
|
||||
-- no longer needed
|
||||
--DDICT_FONT_SIZE = 20
|
||||
|
||||
-- Frontlight decrease of sensitivity for two-fingered pan gesture,
|
||||
-- e.g. 2 changes the sensitivity by 1/2, 3 by 1/3 etc.
|
||||
|
||||
@@ -296,6 +296,30 @@ If you'd like to change the order in which dictionaries are queried (and their r
|
||||
callback = function()
|
||||
G_reader_settings:flipNilOrTrue("dict_justify")
|
||||
end,
|
||||
},
|
||||
{ -- setting used by dictquicklookup
|
||||
text_func = function()
|
||||
local font_size = G_reader_settings:readSetting("dict_font_size") or 20
|
||||
return T(_("Font size (%1)"), font_size)
|
||||
end,
|
||||
callback = function()
|
||||
local SpinWidget = require("ui/widget/spinwidget")
|
||||
local font_size = G_reader_settings:readSetting("dict_font_size") or 20
|
||||
local items_font = SpinWidget:new{
|
||||
width = Screen:getWidth() * 0.6,
|
||||
value = font_size,
|
||||
value_min = 8,
|
||||
value_max = 32,
|
||||
default_value = 20,
|
||||
ok_text = _("Set size"),
|
||||
title_text = _("Dictionary font size"),
|
||||
callback = function(spin)
|
||||
G_reader_settings:saveSetting("dict_font_size", spin.value)
|
||||
self.ui:onRefresh()
|
||||
end,
|
||||
}
|
||||
UIManager:show(items_font)
|
||||
end
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -44,8 +44,8 @@ local DictQuickLookup = InputContainer:new{
|
||||
is_html = false,
|
||||
dict_index = 1,
|
||||
title_face = Font:getFace("x_smalltfont"),
|
||||
content_face = Font:getFace("cfont", DDICT_FONT_SIZE),
|
||||
image_alt_face = Font:getFace("cfont", DDICT_FONT_SIZE-4),
|
||||
content_face = Font:getFace("cfont", 20),
|
||||
image_alt_face = Font:getFace("cfont", 16),
|
||||
width = nil,
|
||||
height = nil,
|
||||
-- box of highlighted word, quick lookup window tries to not hide the word
|
||||
@@ -72,6 +72,13 @@ local highlight_strings = {
|
||||
}
|
||||
|
||||
function DictQuickLookup:init()
|
||||
local font_size = G_reader_settings:readSetting("dict_font_size") or 20
|
||||
self.content_face = Font:getFace("cfont", font_size)
|
||||
local font_size_alt = font_size - 4
|
||||
if font_size_alt < 8 then
|
||||
font_size_alt = 8
|
||||
end
|
||||
self.image_alt_face = Font:getFace("cfont", font_size_alt)
|
||||
self:changeToDefaultDict()
|
||||
if Device:hasKeys() then
|
||||
self.key_events = {
|
||||
@@ -284,7 +291,7 @@ function DictQuickLookup:update()
|
||||
text_widget = ScrollHtmlWidget:new{
|
||||
html_body = self.definition,
|
||||
css = self:getHtmlDictionaryCss(),
|
||||
default_font_size = Screen:scaleBySize(DDICT_FONT_SIZE),
|
||||
default_font_size = Screen:scaleBySize(G_reader_settings:readSetting("dict_font_size") or 20),
|
||||
width = self.width,
|
||||
height = self.is_fullpage and self.height*0.75 or self.height*0.7,
|
||||
dialog = self,
|
||||
|
||||
@@ -8,8 +8,8 @@ describe("defaults module", function()
|
||||
|
||||
it("should load all defaults from defaults.lua", function()
|
||||
Defaults:init()
|
||||
assert.is_same(109, #Defaults.defaults_name)
|
||||
assert.is_same("DFULL_SCREEN", Defaults.defaults_name[55])
|
||||
assert.is_same(108, #Defaults.defaults_name)
|
||||
assert.is_same("DFULL_SCREEN", Defaults.defaults_name[54])
|
||||
end)
|
||||
|
||||
it("should save changes to defaults.persistent.lua", function()
|
||||
@@ -19,14 +19,14 @@ describe("defaults module", function()
|
||||
-- not in persistent but checked in defaults
|
||||
Defaults.changed[20] = true
|
||||
Defaults.changed[47] = true
|
||||
Defaults.changed[55] = true
|
||||
Defaults.changed[88] = true
|
||||
Defaults.changed[104] = true
|
||||
Defaults.changed[54] = true
|
||||
Defaults.changed[87] = true
|
||||
Defaults.changed[103] = true
|
||||
Defaults:saveSettings()
|
||||
assert.is_same(109, #Defaults.defaults_name)
|
||||
assert.is_same("DFULL_SCREEN", Defaults.defaults_name[55])
|
||||
assert.is_same("SEARCH_LIBRARY_PATH", Defaults.defaults_name[104])
|
||||
assert.is_same("DTAP_ZONE_BACKWARD", Defaults.defaults_name[88])
|
||||
assert.is_same(108, #Defaults.defaults_name)
|
||||
assert.is_same("DFULL_SCREEN", Defaults.defaults_name[54])
|
||||
assert.is_same("SEARCH_LIBRARY_PATH", Defaults.defaults_name[103])
|
||||
assert.is_same("DTAP_ZONE_BACKWARD", Defaults.defaults_name[87])
|
||||
assert.is_same("DCREREADER_CONFIG_WORD_GAP_LARGE", Defaults.defaults_name[47])
|
||||
assert.is_same("DCREREADER_CONFIG_H_MARGIN_SIZES_XXX_LARGE", Defaults.defaults_name[20])
|
||||
local fd = io.open(persistent_filename, "r")
|
||||
@@ -51,10 +51,10 @@ DFULL_SCREEN = 1
|
||||
|
||||
-- in persistent
|
||||
Defaults:init()
|
||||
Defaults.changed[55] = true
|
||||
Defaults.defaults_value[55] = 2
|
||||
Defaults.changed[88] = true
|
||||
Defaults.defaults_value[88] = {
|
||||
Defaults.changed[54] = true
|
||||
Defaults.defaults_value[54] = 2
|
||||
Defaults.changed[87] = true
|
||||
Defaults.defaults_value[87] = {
|
||||
y = 10,
|
||||
x = 10.125,
|
||||
h = 20.25,
|
||||
@@ -100,8 +100,8 @@ DHINTCOUNT = 2
|
||||
|
||||
-- in persistent
|
||||
Defaults:init()
|
||||
Defaults.changed[55] = true
|
||||
Defaults.defaults_value[55] = 1
|
||||
Defaults.changed[54] = true
|
||||
Defaults.defaults_value[54] = 1
|
||||
Defaults:saveSettings()
|
||||
fd = io.open(persistent_filename)
|
||||
assert.Equals(
|
||||
|
||||
Reference in New Issue
Block a user