get rid of several dirty hacks

pull/511/head
chrox 10 years ago
parent 21172924fc
commit bae842540a

@ -35,11 +35,6 @@ function ReaderKoptListener:onSetZoomMode(zoom_mode, orig)
self:setZoomMode(self.normal_zoom_mode)
end
function ReaderKoptListener:onSetDimensions(dimensions)
-- called later than reader zooming
self.ui:handleEvent(Event:new("InitScrollPageStates"))
end
function ReaderKoptListener:onFineTuningFontSize(delta)
self.document.configurable.font_size = self.document.configurable.font_size + delta
end

@ -17,7 +17,7 @@ local ReaderPaging = InputContainer:new{
visible_area = nil,
page_area = nil,
show_overlap_enable = nil,
overlap = Screen:scaleByDPI(20),
overlap = Screen:scaleByDPI(30),
page_flipping_mode = false,
bookmark_flipping_mode = false,

@ -26,24 +26,11 @@ function ReaderTypeset:onReadSettings(config)
-- default to enable embedded css
self.embedded_css = config:readSetting("embedded_css") or true
self.ui.document:setEmbeddedStyleSheet(self.embedded_css and 1 or 0)
-- default to enable floating punctuation
self.floating_punctuation = config:readSetting("floating_punctuation") or 1
self.ui.document:setFloatingPunctuation(self.floating_punctuation)
self:_setPageMargins()
end
function ReaderTypeset:_setPageMargins()
local copt_margins = self.ui.document.configurable.page_margins or
self.ui.doc_settings:readSetting("copt_page_margins") or
DCREREADER_CONFIG_MARGIN_SIZES_MEDIUM
self.ui:handleEvent(Event:new("SetPageMargins", copt_margins))
end
function ReaderTypeset:onSaveSettings()
self.ui.doc_settings:saveSetting("css", self.css)
self.ui.doc_settings:saveSetting("embedded_css", self.embedded_css)
self.ui.doc_settings:saveSetting("floating_punctuation", self.floating_punctuation)
end
function ReaderTypeset:onToggleEmbeddedStyleSheet(toggle)
@ -114,31 +101,12 @@ function ReaderTypeset:toggleEmbeddedStyleSheet(toggle)
self.ui:handleEvent(Event:new("UpdatePos"))
end
function ReaderTypeset:toggleFloatingPunctuation()
self.floating_punctuation = self.floating_punctuation == 0 and 1 or 0
self.ui.document:setFloatingPunctuation(self.floating_punctuation)
--self.ui:handleEvent(Event:new("UpdatePos"))
-- workaround: set again things unset by crengine after changing floating punctuation
self.ui.document:setFontFace(self.ui.font.font_face)
self.ui.document:setInterlineSpacePercent(self.ui.font.line_space_percent)
cre.setHyphDictionary(self.ui.hyphenation.hyph_alg)
self:_setPageMargins()
end
function ReaderTypeset:addToMainMenu(tab_item_table)
-- insert table to main reader menu
table.insert(tab_item_table.typeset, {
text = self.css_menu_title,
sub_item_table = self:genStyleSheetMenu(),
})
table.insert(tab_item_table.typeset, {
text_func = function()
return self.floating_punctuation == 1 and
_("Turn off floating punctuation") or
_("Turn on floating punctuation")
end,
callback = function () self:toggleFloatingPunctuation() end,
})
end
return ReaderTypeset

@ -501,6 +501,7 @@ function ReaderView:onSetScreenMode(new_mode, rotation)
Screen:setScreenMode(new_mode)
end
self.ui:handleEvent(Event:new("SetDimensions", Screen:getSize()))
self.ui:handleEvent(Event:new("InitScrollPageStates"))
end
self.cur_rotation_mode = Screen.cur_rotation_mode
return true
@ -516,12 +517,8 @@ function ReaderView:onRestoreScreenMode(old_mode)
end
function ReaderView:onSetDimensions(dimensions)
--DEBUG("set dimen", dimensions)
self:resetLayout()
self.dimen = dimensions
if self.footer_visible then
self.dimen.h = dimensions.h - self.footer.height
end
-- recalculate view
self:recalculate()
end

@ -264,9 +264,6 @@ function ReaderUI:init()
--DEBUG(self.doc_settings)
-- we only read settings after all the widgets are initialized
self:handleEvent(Event:new("ReadSettings", self.doc_settings))
-- dirty hack to make final rezoom
-- TODO: find out why we need this.
if self.zoom then self.zoom:onReZoom() end
for _,v in ipairs(self.postInitCallback) do
v()

@ -1 +1 @@
Subproject commit 56532d7d0655352dfa9e762a7e260cc4b55b5b47
Subproject commit cf62f21087d511c2e9e4e852c2b4402a99bbdcfb
Loading…
Cancel
Save