diff --git a/base b/base index c6e497a31..dd7e20448 160000 --- a/base +++ b/base @@ -1 +1 @@ -Subproject commit c6e497a310e95def50a8aae9aad02da9cc0e0424 +Subproject commit dd7e20448b084eef7d3a42d927f029acfba054dc diff --git a/defaults.lua b/defaults.lua index 972c56cf1..8bab16c1f 100644 --- a/defaults.lua +++ b/defaults.lua @@ -115,10 +115,10 @@ DCREREADER_CONFIG_MARGIN_SIZES_SMALL = {5, 10, 5, 10} DCREREADER_CONFIG_MARGIN_SIZES_MEDIUM = {10, 15, 10, 15} DCREREADER_CONFIG_MARGIN_SIZES_LARGE = {20, 20, 20, 20} --- crereader font gamma -DCREREADER_CONFIG_LIGHTER_FONT_GAMMA = 10 -DCREREADER_CONFIG_DEFAULT_FONT_GAMMA = 15 -DCREREADER_CONFIG_DARKER_FONT_GAMMA = 25 +-- crereader font gamma (no longer used) +-- DCREREADER_CONFIG_LIGHTER_FONT_GAMMA = 10 +-- DCREREADER_CONFIG_DEFAULT_FONT_GAMMA = 15 +-- DCREREADER_CONFIG_DARKER_FONT_GAMMA = 25 -- crereader line space percentage DCREREADER_CONFIG_LINE_SPACE_PERCENT_SMALL = 90 diff --git a/frontend/apps/reader/modules/readerfont.lua b/frontend/apps/reader/modules/readerfont.lua index 11fe7455c..bd01359b8 100644 --- a/frontend/apps/reader/modules/readerfont.lua +++ b/frontend/apps/reader/modules/readerfont.lua @@ -127,7 +127,7 @@ function ReaderFont:onReadSettings(config) self.gamma_index = config:readSetting("gamma_index") or G_reader_settings:readSetting("copt_font_gamma") - or DCREREADER_CONFIG_DEFAULT_FONT_GAMMA + or DCREREADER_CONFIG_DEFAULT_FONT_GAMMA or 15 -- gamma = 1.0 self.ui.document:setGammaIndex(self.gamma_index) -- Dirty hack: we have to add following call in order to set @@ -222,11 +222,12 @@ end function ReaderFont:onSetFontGamma(gamma) self.gamma_index = gamma + self.ui.document:setGammaIndex(self.gamma_index) + local gamma_level = self.ui.document:getGammaLevel() UIManager:show(Notification:new{ - text = T( _("Font gamma set to %1."), self.gamma_index), + text = T( _("Font gamma set to %1."), gamma_level), timeout = 1 }) - self.ui.document:setGammaIndex(self.gamma_index) self.ui:handleEvent(Event:new("RedrawCurrentView")) return true end diff --git a/frontend/document/credocument.lua b/frontend/document/credocument.lua index 5904432cc..cfcc7c7bf 100644 --- a/frontend/document/credocument.lua +++ b/frontend/document/credocument.lua @@ -461,6 +461,10 @@ function CreDocument:toggleFontBolder(toggle) self._document:setIntProperty("font.face.weight.embolden", toggle) end +function CreDocument:getGammaLevel() + return cre.getGammaLevel() +end + function CreDocument:setGammaIndex(index) logger.dbg("CreDocument: set gamma index", index) cre.setGammaIndex(index) diff --git a/frontend/ui/data/creoptions.lua b/frontend/ui/data/creoptions.lua index 31f6ed249..80a4b6fc4 100644 --- a/frontend/ui/data/creoptions.lua +++ b/frontend/ui/data/creoptions.lua @@ -123,19 +123,14 @@ local CreOptions = { { name = "font_gamma", name_text = S.CONTRAST, - toggle = {S.LIGHTER, S.DEFAULT, S.DARKER}, - default_value = DCREREADER_CONFIG_DEFAULT_FONT_GAMMA, - values = { - DCREREADER_CONFIG_LIGHTER_FONT_GAMMA, - DCREREADER_CONFIG_DEFAULT_FONT_GAMMA, - DCREREADER_CONFIG_DARKER_FONT_GAMMA, - }, + buttonprogress = true, + default_value = 15, -- gamma = 1.0 + default_pos = 2, + values = {10, 15, 25, 30, 36, 43, 49, 56}, event = "SetFontGamma", - args = { - DCREREADER_CONFIG_LIGHTER_FONT_GAMMA, - DCREREADER_CONFIG_DEFAULT_FONT_GAMMA, - DCREREADER_CONFIG_DARKER_FONT_GAMMA, - }, + args = {10, 15, 25, 30, 36, 43, 49, 56}, + -- gamma values for these indexes are: + labels = {0.8, 1.0, 1.45, 1.90, 2.50, 4.0, 8.0, 15.0}, }, { name = "font_hinting", diff --git a/frontend/ui/widget/configdialog.lua b/frontend/ui/widget/configdialog.lua index b2e901825..332383615 100644 --- a/frontend/ui/widget/configdialog.lua +++ b/frontend/ui/widget/configdialog.lua @@ -445,7 +445,7 @@ function ConfigOption:init() end, hold_callback = function(arg) self.config:onMakeDefault(self.options[c].name, self.options[c].name_text, self.options[c].values, - self.options[c].args, arg) + self.options[c].labels or self.options[c].args, arg) end, show_parrent = self.config, enabled = enabled, diff --git a/spec/unit/defaults_spec.lua b/spec/unit/defaults_spec.lua index c426f18c9..55fde69d9 100644 --- a/spec/unit/defaults_spec.lua +++ b/spec/unit/defaults_spec.lua @@ -8,8 +8,8 @@ describe("defaults module", function() it("should load all defaults from defaults.lua", function() Defaults:init() - assert.is_same(#Defaults.defaults_name, 77) - assert.is_same(Defaults.defaults_name[28], 'DHINTCOUNT') + assert.is_same(#Defaults.defaults_name, 74) + assert.is_same(Defaults.defaults_name[25], 'DHINTCOUNT') end) it("should save changes to defaults.persistent.lua", function() @@ -17,18 +17,18 @@ describe("defaults module", function() os.remove(persistent_filename) -- not in persistent but checked in defaults - Defaults.changed[14] = true - Defaults.changed[19] = true - Defaults.changed[28] = true - Defaults.changed[63] = true - Defaults.changed[77] = true + Defaults.changed[11] = true + Defaults.changed[16] = true + Defaults.changed[25] = true + Defaults.changed[60] = true + Defaults.changed[74] = true Defaults:saveSettings() - assert.is_same(#Defaults.defaults_name, 77) - assert.is_same(Defaults.defaults_name[28], 'DHINTCOUNT') - assert.is_same(Defaults.defaults_name[77], 'SEARCH_TITLE') - assert.is_same(Defaults.defaults_name[63], 'DTAP_ZONE_MENU') - assert.is_same(Defaults.defaults_name[19], 'DCREREADER_VIEW_MODE') - assert.is_same(Defaults.defaults_name[14], + assert.is_same(#Defaults.defaults_name, 74) + assert.is_same(Defaults.defaults_name[25], 'DHINTCOUNT') + assert.is_same(Defaults.defaults_name[74], 'SEARCH_TITLE') + assert.is_same(Defaults.defaults_name[60], 'DTAP_ZONE_MENU') + assert.is_same(Defaults.defaults_name[16], 'DCREREADER_VIEW_MODE') + assert.is_same(Defaults.defaults_name[11], 'DCREREADER_CONFIG_MARGIN_SIZES_LARGE') local fd = io.open(persistent_filename, "r") assert.Equals( @@ -54,10 +54,10 @@ DTAP_ZONE_MENU = { -- in persistent Defaults:init() - Defaults.changed[28] = true - Defaults.defaults_value[28] = 2 - Defaults.changed[63] = true - Defaults.defaults_value[63] = { + Defaults.changed[25] = true + Defaults.defaults_value[25] = 2 + Defaults.changed[60] = true + Defaults.defaults_value[60] = { y = 10, x = 10.125, h = 20.25, @@ -107,8 +107,8 @@ DHINTCOUNT = 2 -- in persistent Defaults:init() - Defaults.changed[28] = true - Defaults.defaults_value[28] = 1 + Defaults.changed[25] = true + Defaults.defaults_value[25] = 1 Defaults:saveSettings() fd = io.open(persistent_filename) assert.Equals(