From 71c36064e2f46545012e583e7d069b1f43bc9e16 Mon Sep 17 00:00:00 2001 From: Dobrica Pavlinusic Date: Tue, 27 Mar 2012 18:31:41 +0200 Subject: [PATCH 1/3] added K3 left page keys for emulator on F3 and F4 --- keys.lua | 2 ++ 1 file changed, 2 insertions(+) diff --git a/keys.lua b/keys.lua index 43e683120..489a93e05 100644 --- a/keys.lua +++ b/keys.lua @@ -123,6 +123,8 @@ end function setEmuKeycodes() KEY_PGFWD = 117 KEY_PGBCK = 112 + KEY_LPGBCK = 69 -- F3 + KEY_LPGFWD = 70 -- F4 KEY_HOME = 110 -- home KEY_BACK = 22 -- backspace KEY_DEL = 119 -- Delete From d3318beb84b006f07fd10caf197439f4277a6f95 Mon Sep 17 00:00:00 2001 From: Dobrica Pavlinusic Date: Tue, 27 Mar 2012 19:54:07 +0200 Subject: [PATCH 2/3] print defined commands using dump --- unireader.lua | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/unireader.lua b/unireader.lua index bf190fabd..d021cf267 100644 --- a/unireader.lua +++ b/unireader.lua @@ -1175,6 +1175,5 @@ function UniReader:addAllCommands() end end) -- end panning - --print defined commands - --for k,v in pairs(self.commands.map) do print(v) end + print("## defined commands "..dump(self.commands.map)) end From 69a8ee83bbc3a2e03dad9c59f3e92e76ae126c91 Mon Sep 17 00:00:00 2001 From: Dobrica Pavlinusic Date: Tue, 27 Mar 2012 19:58:29 +0200 Subject: [PATCH 3/3] specify multiple keys for single command #55 This code still doesn't support different modifiers on keys, but I would rather refactor it in small steps first Current changes adds support for Kindle 3 left page keys reported by @houqp in issue #55 --- commands.lua | 11 +++++++++-- unireader.lua | 4 ++-- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/commands.lua b/commands.lua index 43dfca87d..a6622ac43 100644 --- a/commands.lua +++ b/commands.lua @@ -62,8 +62,15 @@ Commands = { size = 0 } function Commands:add(keycode,modifier,keydescr,help,func) - local keydef = Keydef:new(keycode,modifier,keydescr) - self:_addImpl(keydef,help,func) + if type(keycode) == "table" then + for i=1,#keycode,1 do + local keydef = Keydef:new(keycode[i],modifier,keydescr) + self:_addImpl(keydef,help,func) + end + else + local keydef = Keydef:new(keycode,modifier,keydescr) + self:_addImpl(keydef,help,func) + end end function Commands:addGroup(keygroup,keys,help,func) for _k,keydef in pairs(keys) do diff --git a/unireader.lua b/unireader.lua index d021cf267..b2cb982a1 100644 --- a/unireader.lua +++ b/unireader.lua @@ -875,12 +875,12 @@ end -- command definitions function UniReader:addAllCommands() self.commands = Commands:new() - self.commands:add(KEY_PGFWD,nil,">", + self.commands:add({KEY_PGFWD,KEY_LPGFWD},nil,">", "next page", function(unireader) unireader:goto(unireader:nextView()) end) - self.commands:add(KEY_PGBCK,nil,"<", + self.commands:add({KEY_PGBCK,KEY_LPGBCK},nil,"<", "previous page", function(unireader) unireader:goto(unireader:prevView())