mirror of
https://github.com/koreader/koreader.git
synced 2025-08-10 00:52:38 +00:00
long press the backspace key will clear input text
This commit is contained in:
@@ -151,6 +151,12 @@ function InputText:delChar()
|
||||
UIManager:setDirty(self.parent, "partial")
|
||||
end
|
||||
|
||||
function InputText:clear()
|
||||
self.text = ""
|
||||
self:initTextBox()
|
||||
UIManager:setDirty(self.parent, "partial")
|
||||
end
|
||||
|
||||
function InputText:getText()
|
||||
return self.text
|
||||
end
|
||||
|
||||
@@ -41,6 +41,7 @@ function VirtualKey:init()
|
||||
self.callback = function () self.keyboard:setLayout(self.key or self.label) end
|
||||
elseif self.label == "Backspace" then
|
||||
self.callback = function () self.keyboard:delChar() end
|
||||
self.hold_callback = function () self.keyboard:clear() end
|
||||
else
|
||||
self.callback = function () self.keyboard:addChar(self.key) end
|
||||
end
|
||||
@@ -83,6 +84,12 @@ function VirtualKey:init()
|
||||
range = self.dimen,
|
||||
},
|
||||
},
|
||||
HoldSelect = {
|
||||
GestureRange:new{
|
||||
ges = "hold",
|
||||
range = self.dimen,
|
||||
},
|
||||
},
|
||||
}
|
||||
end
|
||||
end
|
||||
@@ -96,6 +103,15 @@ function VirtualKey:onTapSelect()
|
||||
return true
|
||||
end
|
||||
|
||||
function VirtualKey:onHoldSelect()
|
||||
self[1].invert = true
|
||||
if self.hold_callback then
|
||||
self.hold_callback()
|
||||
end
|
||||
UIManager:scheduleIn(0.5, function() self:invert(false) end)
|
||||
return true
|
||||
end
|
||||
|
||||
function VirtualKey:invert(invert)
|
||||
self[1].invert = invert
|
||||
UIManager:setDirty(self.keyboard, "partial")
|
||||
@@ -191,7 +207,7 @@ function VirtualKeyboard:init()
|
||||
for i = 1, string.len(GLOBAL_INPUT_VALUE) do
|
||||
self:addChar(string.sub(GLOBAL_INPUT_VALUE,i,i))
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function VirtualKeyboard:initLayout(layout)
|
||||
@@ -303,4 +319,11 @@ function VirtualKeyboard:delChar()
|
||||
UIManager:setDirty(self.inputbox, "partial")
|
||||
end
|
||||
|
||||
function VirtualKeyboard:clear()
|
||||
DEBUG("clear input")
|
||||
self.inputbox:clear()
|
||||
UIManager:setDirty(self, "partial")
|
||||
UIManager:setDirty(self.inputbox, "partial")
|
||||
end
|
||||
|
||||
return VirtualKeyboard
|
||||
|
||||
Reference in New Issue
Block a user