|
|
@ -5,7 +5,6 @@ local Device = require("device")
|
|
|
|
local Event = require("ui/event")
|
|
|
|
local Event = require("ui/event")
|
|
|
|
local InputContainer = require("ui/widget/container/inputcontainer")
|
|
|
|
local InputContainer = require("ui/widget/container/inputcontainer")
|
|
|
|
local Screensaver = require("ui/screensaver")
|
|
|
|
local Screensaver = require("ui/screensaver")
|
|
|
|
local Size = require("ui/size")
|
|
|
|
|
|
|
|
local UIManager = require("ui/uimanager")
|
|
|
|
local UIManager = require("ui/uimanager")
|
|
|
|
local logger = require("logger")
|
|
|
|
local logger = require("logger")
|
|
|
|
local dbg = require("dbg")
|
|
|
|
local dbg = require("dbg")
|
|
|
@ -296,8 +295,16 @@ function ReaderMenu:setUpdateItemTable()
|
|
|
|
text = _("Plugin management"),
|
|
|
|
text = _("Plugin management"),
|
|
|
|
sub_item_table = PluginLoader:genPluginManagerSubItem()
|
|
|
|
sub_item_table = PluginLoader:genPluginManagerSubItem()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
-- main menu tab
|
|
|
|
-- main menu tab
|
|
|
|
|
|
|
|
-- insert common info
|
|
|
|
|
|
|
|
for id, common_setting in pairs(dofile("frontend/ui/elements/common_info_menu_table.lua")) do
|
|
|
|
|
|
|
|
self.menu_items[id] = common_setting
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
-- insert common exit for reader
|
|
|
|
|
|
|
|
for id, common_setting in pairs(dofile("frontend/ui/elements/common_exit_menu_table.lua")) do
|
|
|
|
|
|
|
|
self.menu_items[id] = common_setting
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
self.menu_items.open_previous_document = {
|
|
|
|
self.menu_items.open_previous_document = {
|
|
|
|
text_func = function()
|
|
|
|
text_func = function()
|
|
|
|
local previous_file = self:getPreviousFile()
|
|
|
|
local previous_file = self:getPreviousFile()
|
|
|
@ -324,14 +331,6 @@ function ReaderMenu:setUpdateItemTable()
|
|
|
|
})
|
|
|
|
})
|
|
|
|
end
|
|
|
|
end
|
|
|
|
}
|
|
|
|
}
|
|
|
|
-- insert common info
|
|
|
|
|
|
|
|
for id, common_setting in pairs(dofile("frontend/ui/elements/common_info_menu_table.lua")) do
|
|
|
|
|
|
|
|
self.menu_items[id] = common_setting
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
-- insert common exit
|
|
|
|
|
|
|
|
for id, common_setting in pairs(dofile("frontend/ui/elements/common_exit_menu_table.lua")) do
|
|
|
|
|
|
|
|
self.menu_items[id] = common_setting
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
local order = require("ui/elements/reader_menu_order")
|
|
|
|
local order = require("ui/elements/reader_menu_order")
|
|
|
|
|
|
|
|
|
|
|
@ -409,14 +408,21 @@ function ReaderMenu:exitOrRestart(callback, force)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
function ReaderMenu:genMenu(tab_index)
|
|
|
|
function ReaderMenu:onShowMenu(tab_index)
|
|
|
|
if self.tab_item_table == nil then
|
|
|
|
if self.tab_item_table == nil then
|
|
|
|
self:setUpdateItemTable()
|
|
|
|
self:setUpdateItemTable()
|
|
|
|
end
|
|
|
|
end
|
|
|
|
if tab_index == nil then
|
|
|
|
|
|
|
|
|
|
|
|
if not tab_index then
|
|
|
|
tab_index = self.last_tab_index
|
|
|
|
tab_index = self.last_tab_index
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
local menu_container = CenterContainer:new{
|
|
|
|
|
|
|
|
covers_header = true,
|
|
|
|
|
|
|
|
ignore = "height",
|
|
|
|
|
|
|
|
dimen = Screen:getSize(),
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
local main_menu
|
|
|
|
local main_menu
|
|
|
|
if Device:isTouchDevice() or Device:hasDPad() then
|
|
|
|
if Device:isTouchDevice() or Device:hasDPad() then
|
|
|
|
local TouchMenu = require("ui/widget/touchmenu")
|
|
|
|
local TouchMenu = require("ui/widget/touchmenu")
|
|
|
@ -424,31 +430,26 @@ function ReaderMenu:genMenu(tab_index)
|
|
|
|
width = Screen:getWidth(),
|
|
|
|
width = Screen:getWidth(),
|
|
|
|
last_index = tab_index,
|
|
|
|
last_index = tab_index,
|
|
|
|
tab_item_table = self.tab_item_table,
|
|
|
|
tab_item_table = self.tab_item_table,
|
|
|
|
|
|
|
|
show_parent = menu_container,
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else
|
|
|
|
else
|
|
|
|
local Menu = require("ui/widget/menu")
|
|
|
|
local Menu = require("ui/widget/menu")
|
|
|
|
main_menu = Menu:new{
|
|
|
|
main_menu = Menu:new{
|
|
|
|
title = _("Document menu"),
|
|
|
|
title = _("Document menu"),
|
|
|
|
item_table = Menu.itemTableFromTouchMenu(self.tab_item_table),
|
|
|
|
item_table = Menu.itemTableFromTouchMenu(self.tab_item_table),
|
|
|
|
width = Screen:getWidth() - (Size.margin.fullscreen_popout * 2),
|
|
|
|
width = Screen:getWidth() - 100,
|
|
|
|
|
|
|
|
show_parent = menu_container,
|
|
|
|
}
|
|
|
|
}
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
main_menu.close_callback = function()
|
|
|
|
main_menu.close_callback = function()
|
|
|
|
self:onCloseReaderMenu()
|
|
|
|
self:onCloseReaderMenu()
|
|
|
|
end
|
|
|
|
end
|
|
|
|
return main_menu
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function ReaderMenu:onShowMenu(tab_index, main_menu)
|
|
|
|
main_menu.touch_menu_callback = function ()
|
|
|
|
if main_menu == nil then
|
|
|
|
self.ui:handleEvent(Event:new("CloseConfigMenu"))
|
|
|
|
main_menu = self:genMenu(tab_index)
|
|
|
|
|
|
|
|
end
|
|
|
|
end
|
|
|
|
local menu_container = CenterContainer:new{
|
|
|
|
|
|
|
|
covers_header = true,
|
|
|
|
|
|
|
|
ignore = "height",
|
|
|
|
|
|
|
|
dimen = Screen:getSize(),
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
main_menu.show_parent = menu_container
|
|
|
|
|
|
|
|
menu_container[1] = main_menu
|
|
|
|
menu_container[1] = main_menu
|
|
|
|
-- maintain a reference to menu_container
|
|
|
|
-- maintain a reference to menu_container
|
|
|
|
self.menu_container = menu_container
|
|
|
|
self.menu_container = menu_container
|
|
|
@ -551,8 +552,8 @@ function ReaderMenu:onSaveSettings()
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
function ReaderMenu:onMenuSearch()
|
|
|
|
function ReaderMenu:onMenuSearch()
|
|
|
|
local main_menu = self:genMenu()
|
|
|
|
self:onShowMenu()
|
|
|
|
main_menu:onShowMenuSearch()
|
|
|
|
self.menu_container[1]:onShowMenuSearch()
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
function ReaderMenu:registerToMainMenu(widget)
|
|
|
|
function ReaderMenu:registerToMainMenu(widget)
|
|
|
|