chrox
6f99e96e49
fix two finger pan gestures detection
...
This is a stupid bug I introduced when I thought 0 evaluated to be false.
Actually in Lua only explicit `false` and `nil` are evaluated to `false`
all other values are true in logical expressions.
This should also fix #546 . Probably because the touch screens in Kindle
are not as sensitive as in Kobo, this problem is not discovered early
util I play with multi-touch on a Android phone which has a sensitive
enough screen to expose this bug.
2014-06-07 23:15:20 +08:00
chrox
92219a1f1e
cleanup: expand tab to 4 spaces
2014-03-13 21:52:43 +08:00
chrox
d58ab4dece
decrease HOLD_INTERVAL to 0.5s for better responsiveness
2014-01-21 16:52:25 +08:00
chrox
637904a711
add text highlight for credocument
...
Three highlight drawers "lighten", "underscore" and "invert" are
available in reader menu.
This should implement #176 .
2014-01-18 03:11:04 +08:00
Giorgio Micotti
172241bc8e
Fix corner case for Kobo Aura: tev.id == -1 with tev.x and tev.y values defined.
2014-01-07 23:10:10 +01:00
chrox
e5de29bfbd
remove redundant debug
2013-12-27 21:15:34 +08:00
chrox
4c5d1caa92
detect touch event for more responsive UI
2013-12-26 22:32:34 +08:00
Markismus
a30de54511
Update gesturedetector.lua
...
Aligns DEBUG line 84 with the DEBUG lines in input.lua for easier visual checking.
2013-12-24 19:56:26 +01:00
Huang Xin
c052655989
Merge pull request #397 from Markismus/MultitouchKoboAura
...
Two small changes to improve use for Kobo ereaders
2013-12-16 07:21:15 -08:00
Markismus
74e03bc615
Kobo Aura Hd and Mini users get the error message:
...
/luajit: ./frontend/ui/gesturedetector.lua:84: attempt to concatenate field 'y' (a nil value)
Hopefully the use of the "," in the DEBUG function instead of the string concatenate operator gets rid of it.
2013-12-16 11:37:41 +01:00
chrox
127e053d5b
add PAN_THRESHOLD when detecting hold_pan gesture
...
This should fix #383 .
2013-12-09 11:14:15 +08:00
Markismus
485ab8aa9d
Signed-off-by: Markismus <zulde.zuldemans@gmail.com>
2013-12-08 14:37:03 +01:00
Markismus
acf1525630
Signed-off-by: Markismus <zulde.zuldemans@gmail.com>
2013-12-04 13:13:46 +01:00
HW
11bb9009fa
replace Screen.width/Screen.height with accessor methods
...
Screen.width and Screen.height are now gone, use the methods
getWidth() and getHeight() to get the relevant data. They will
take blitbuffer/framebuffer rotation into account.
2013-11-26 16:04:20 +01:00
chrox
ae2462c17e
relative x and y in pan gesture are relative to first touch events
2013-10-25 16:05:20 +08:00
HW
09cd5c4104
Make DEBUG a require()d local
2013-10-22 20:51:29 +02:00
HW
ef111b99c6
Refactored to use strictly locals
2013-10-18 22:38:07 +02:00
chrox
fa9878301f
disable double tap detection by default in gesture detector
...
since the gesture detector will block the main thread
(the only thread in the lua part) for 300 ms on each tap
waiting for the arrival of the second tap, it makes the whole
application less responsive. 300 ms of latency is well perceived
in this case. This patch will simply disable double tap detection by
default as no widget now handles double_tap gestures. We could
temporarily enable double tap detection when this gesture is indeed
needed after.
2013-07-31 19:35:47 +08:00
Paulo Matias
f0b352b0e3
Fix multiple crash bugs on GestureDector (with double-finger) and ReaderFrontLight (closes Issue #165 )
2013-07-22 09:23:58 -03:00
chrox
7f1d682a98
adapt gesture detector for 90 degrees rotation
2013-07-13 13:55:21 +08:00
chrox
6687208525
add hold_release and hold_pan gestures
2013-06-15 23:16:53 +08:00
Qingping Hou
b40be3d0f8
remove trailing white spaces
2013-04-08 14:40:12 +08:00
chrox
7fcc2e5972
fix DEBUG location in case ges_ev is nil
2013-03-28 22:05:17 +08:00
chrox
d262ffecab
fix direction rectification of pinch/spread gestures
2013-03-28 21:40:16 +08:00
chrox
15eccb4da7
add pinch, spread, rotate and inward/outward pan gestures
2013-03-28 21:06:13 +08:00
chrox
9ef581e69c
add two_finger_pan_release gesture & some refactorings in tap state
2013-03-26 20:59:47 +08:00
chrox
d713bf7732
add two finger swipe gesture
2013-03-26 13:17:03 +08:00
chrox
152782b412
add two_finger_pan gesture
2013-03-16 22:48:35 +08:00
Qingping Hou
10d980ed87
rearranged source tree
2013-03-13 01:18:53 +08:00
chrox
617613e763
bugfix: adjust coordinates of pan gesture
2013-03-12 11:27:41 +08:00
chrox
da2a3ff753
detect pan release gesture
2013-03-12 11:26:11 +08:00
chrox
9e5a036c6e
cleanup: remove unnecessary debug info
2013-03-10 13:20:25 +08:00
chrox
5c2d9bb1ad
screenshot with finger touch at the two corners of the diagonal
2013-03-06 22:36:51 +08:00
chrox
c3d7d2df47
add two-finger tap gesture
2013-03-06 21:04:33 +08:00
chrox
fcfe82f4a5
add direction and distance in pan/swipe gesture
2013-03-03 22:18:38 +08:00
chrox
94a69b87a7
add gesture emitting rate in GestureRange
2013-03-02 23:11:23 +08:00
chrox
14bbcde422
add multiple slots in gesture detector
...
So that gesture detecting in one slot won't block gestures in the other slots.
2013-03-02 22:21:18 +08:00
Qingping Hou
d4e2cb708e
record multiple slots for multi-touch input
...
for now, only slot 0 is parsed, the rest are ignored.
2013-02-27 16:04:28 +08:00
Qingping Hou
712f964d43
fix whitespaces
2013-02-25 23:32:46 -05:00
Qingping Hou
331ec3a6ce
fix: properly record last_tev in gesturedetector
2013-02-25 03:06:59 +08:00
Qingping Hou
a655219eba
move adjustGesCoordinate from Screen to GestureDetector
...
also adjust swipe direction according to screen view mode
2013-02-19 11:13:24 +08:00
Qingping Hou
ddc7d86efe
change ev argument name to tev in gesturedetector.lua
...
So people won't messed it up with ev in inputevet.lua
2013-02-06 13:39:06 +08:00
Qingping Hou
d4ff6f9291
first demo of screen rotate
2013-02-02 14:36:29 +08:00
Qingping Hou
c5fc851bb7
bug fix for swipe gesture detection (nil x or y)
...
a complete_last_ev var is used to make sure the first argument
to isSwipe() method has no nil x or y entry.
2012-12-30 01:01:44 -05:00
Qingping Hou
0f51f34ff6
add swipe event detection in gesturedetector.lua
2012-12-30 00:45:21 -05:00
Qingping Hou
c8d43cd33c
add Input:eventAdjustHook(ev)
...
so we can adjust input event for KT on the fly.
the touch input event coordinates in KT ranges from 0-4095
instead of the screen size.
2012-12-10 20:58:16 -05:00
Qingping Hou
c701248a8d
rename Input:setTimeOut to Input:setTimtout
...
To keep consistent with Javascript setTimeout function...
2012-11-25 15:57:29 +08:00
Qingping Hou
a7b2215249
bug fix in time.lua
...
a crazy typo
2012-11-23 01:04:56 -05:00
Qingping Hou
324f67412a
fix bug in timer_callbacks scheduling & change variable name
...
watiEvent should stop checking timer_callbacks when execceds
wait timeout set by timeout_us.
2012-11-17 13:51:34 -05:00
Qingping Hou
d3e0424122
add setTimeOut method in inputevent.lua
...
adapt all the state machine to use setTimeOut. Now supported gestures
includes tap, double tap and hold.
2012-11-17 13:41:26 -05:00