fusuma-plugin-touchscreen 0.0.1.alpha
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/LICENSE +21 -0
- data/README.md +2 -0
- data/fusuma-plugin-touchscreen.gemspec +28 -0
- data/lib/fusuma/plugin/buffers/touch_buffer.rb +197 -0
- data/lib/fusuma/plugin/detectors/touch_detector.rb +95 -0
- data/lib/fusuma/plugin/detectors/touch_detectors/base.rb +17 -0
- data/lib/fusuma/plugin/detectors/touch_detectors/edge_detector.rb +13 -0
- data/lib/fusuma/plugin/detectors/touch_detectors/hold_detector.rb +26 -0
- data/lib/fusuma/plugin/detectors/touch_detectors/pinch_detector.rb +13 -0
- data/lib/fusuma/plugin/detectors/touch_detectors/rotate_detector.rb +13 -0
- data/lib/fusuma/plugin/detectors/touch_detectors/swipe_detector.rb +59 -0
- data/lib/fusuma/plugin/detectors/touch_detectors/tap_detector.rb +32 -0
- data/lib/fusuma/plugin/devices/touchscreen_device.rb +21 -0
- data/lib/fusuma/plugin/events/records/touch_record.rb +38 -0
- data/lib/fusuma/plugin/events/records/touch_records/base.rb +56 -0
- data/lib/fusuma/plugin/events/records/touch_records/hold_record.rb +21 -0
- data/lib/fusuma/plugin/events/records/touch_records/swipe_record.rb +33 -0
- data/lib/fusuma/plugin/events/records/touch_records/tap_record.rb +21 -0
- data/lib/fusuma/plugin/parsers/touch_parser.rb +103 -0
- data/lib/fusuma/plugin/touchscreen/version.rb +9 -0
- data/lib/fusuma/plugin/touchscreen.rb +11 -0
- data/lib/fusuma/utils/angle.rb +12 -0
- data/spec/fixtures/libinput-list-devices_ms-surface-3-pro.txt +182 -0
- data/spec/fusuma/plugin/devices/touchscreen_device_spec.rb +33 -0
- data/spec/fusuma/plugin/parsers/touch_parser_spec.rb +26 -0
- data/spec/samples/1-finger-hold.txt +90 -0
- data/spec/samples/2-fingers-swipe-right.txt +46 -0
- data/spec/samples/3-fingers-tap.txt +9 -0
- data/spec/samples/libinput-devices.txt +182 -0
- data/spec/spec_helper.rb +101 -0
- metadata +96 -0
@@ -0,0 +1,33 @@
|
|
1
|
+
require_relative './base'
|
2
|
+
|
3
|
+
# frozen_string_literal: true
|
4
|
+
|
5
|
+
module Fusuma
|
6
|
+
module Plugin
|
7
|
+
module Events
|
8
|
+
module Records
|
9
|
+
module TouchRecords
|
10
|
+
class SwipeRecord < Base
|
11
|
+
|
12
|
+
def initialize(direction:, **args)
|
13
|
+
super(**args)
|
14
|
+
@direction = direction.to_s
|
15
|
+
end
|
16
|
+
|
17
|
+
def repeatable?
|
18
|
+
true
|
19
|
+
end
|
20
|
+
|
21
|
+
protected
|
22
|
+
|
23
|
+
def config_index_keys
|
24
|
+
super << Config::Index::Key.new(@direction)
|
25
|
+
end
|
26
|
+
|
27
|
+
|
28
|
+
end # class SwipeRecord
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
require_relative './base'
|
2
|
+
|
3
|
+
# frozen_string_literal: true
|
4
|
+
|
5
|
+
module Fusuma
|
6
|
+
module Plugin
|
7
|
+
module Events
|
8
|
+
module Records
|
9
|
+
module TouchRecords
|
10
|
+
class TapRecord < Base
|
11
|
+
|
12
|
+
def repeatable?
|
13
|
+
false
|
14
|
+
end
|
15
|
+
|
16
|
+
end # class TapRecord
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,103 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Fusuma
|
4
|
+
module Plugin
|
5
|
+
module Parsers
|
6
|
+
class TouchParser < Parser
|
7
|
+
DEFAULT_SOURCE = 'libinput_command_input'
|
8
|
+
|
9
|
+
=begin
|
10
|
+
3-finger touch:
|
11
|
+
|
12
|
+
event4 TOUCH_DOWN +0.000s 0 (0) 58.64/44.04 (148.16/73.74mm)
|
13
|
+
event4 TOUCH_DOWN +0.000s 1 (1) 49.33/47.67 (124.63/79.84mm)
|
14
|
+
event4 TOUCH_DOWN +0.000s 2 (2) 43.54/64.23 (110.00/107.56mm)
|
15
|
+
event4 TOUCH_UP +0.079s 2 (2)
|
16
|
+
event4 TOUCH_UP +0.099s 1 (1)
|
17
|
+
event4 TOUCH_UP +0.108s 0 (0)
|
18
|
+
=end
|
19
|
+
|
20
|
+
=begin
|
21
|
+
2-finger swipe:
|
22
|
+
|
23
|
+
event4 TOUCH_DOWN +0.000s 0 (0) 27.07/42.62 (68.39/71.37mm)
|
24
|
+
event4 TOUCH_DOWN +0.000s 1 (1) 26.45/53.27 (66.82/89.21mm)
|
25
|
+
event4 TOUCH_MOTION +0.051s 1 (1) 26.84/53.27 (67.82/89.21mm)
|
26
|
+
event4 TOUCH_MOTION +0.061s 0 (0) 27.40/42.91 (69.24/71.86mm)
|
27
|
+
event4 TOUCH_MOTION +0.061s 1 (1) 27.21/53.28 (68.74/89.23mm)
|
28
|
+
event4 TOUCH_MOTION +0.071s 0 (0) 28.03/43.27 (70.82/72.47mm)
|
29
|
+
event4 TOUCH_MOTION +0.071s 1 (1) 27.67/53.33 (69.92/89.30mm)
|
30
|
+
event4 TOUCH_MOTION +0.082s 0 (0) 28.59/43.49 (72.24/72.84mm)
|
31
|
+
event4 TOUCH_MOTION +0.082s 1 (1) 28.43/53.37 (71.84/89.37mm)
|
32
|
+
event4 TOUCH_MOTION +0.091s 0 (0) 29.32/43.66 (74.08/73.12mm)
|
33
|
+
event4 TOUCH_MOTION +0.091s 1 (1) 28.90/53.41 (73.03/89.44mm)
|
34
|
+
event4 TOUCH_MOTION +0.101s 0 (0) 30.17/43.99 (76.24/73.67mm)
|
35
|
+
event4 TOUCH_MOTION +0.101s 1 (1) 29.84/53.21 (75.39/89.12mm)
|
36
|
+
event4 TOUCH_MOTION +0.111s 0 (0) 30.51/44.08 (77.08/73.81mm)
|
37
|
+
event4 TOUCH_MOTION +0.111s 1 (1) 30.47/53.35 (76.97/89.35mm)
|
38
|
+
event4 TOUCH_MOTION +0.121s 0 (0) 31.84/44.59 (80.45/74.67mm)
|
39
|
+
event4 TOUCH_MOTION +0.121s 1 (1) 31.65/53.73 (79.97/89.98mm)
|
40
|
+
event4 TOUCH_MOTION +0.131s 0 (0) 32.56/44.76 (82.26/74.95mm)
|
41
|
+
event4 TOUCH_MOTION +0.131s 1 (1) 32.62/54.21 (82.42/90.79mm)
|
42
|
+
event4 TOUCH_MOTION +0.141s 0 (0) 33.51/44.94 (84.66/75.26mm)
|
43
|
+
event4 TOUCH_MOTION +0.141s 1 (1) 33.49/54.46 (84.61/91.21mm)
|
44
|
+
event4 TOUCH_MOTION +0.151s 0 (0) 34.88/45.38 (88.13/76.00mm)
|
45
|
+
event4 TOUCH_MOTION +0.151s 1 (1) 35.05/54.74 (88.55/91.67mm)
|
46
|
+
event4 TOUCH_MOTION +0.162s 0 (0) 36.14/45.72 (91.32/76.56mm)
|
47
|
+
event4 TOUCH_MOTION +0.162s 1 (1) 36.62/55.28 (92.53/92.58mm)
|
48
|
+
event4 TOUCH_MOTION +0.171s 0 (0) 37.53/46.12 (94.82/77.23mm)
|
49
|
+
event4 TOUCH_MOTION +0.171s 1 (1) 38.21/55.84 (96.55/93.51mm)
|
50
|
+
event4 TOUCH_MOTION +0.181s 0 (0) 39.94/47.08 (100.92/78.84mm)
|
51
|
+
event4 TOUCH_MOTION +0.181s 1 (1) 39.91/56.03 (100.84/93.84mm)
|
52
|
+
event4 TOUCH_UP +0.220s 0 (0)
|
53
|
+
event4 TOUCH_UP +0.220s 1 (1)
|
54
|
+
=end
|
55
|
+
|
56
|
+
def parse_record(record)
|
57
|
+
MultiLogger.debug("#{self.class.name}##{__method__}")
|
58
|
+
MultiLogger.debug(" record = #{record.inspect}")
|
59
|
+
|
60
|
+
case record.to_s
|
61
|
+
when /TOUCH_DOWN\s+\+(\d+\.\d+)s\s+(\d+)\s+\(\d+\)\s+(\d+\.\d+)\/(\d+\.\d+)\s+\((\d+\.\d+)\/(\d+\.\d+)mm\)/
|
62
|
+
status = 'begin'
|
63
|
+
time_offset = $1
|
64
|
+
finger = $2
|
65
|
+
x_px = $3
|
66
|
+
y_px = $4
|
67
|
+
x_mm = $5
|
68
|
+
y_mm = $6
|
69
|
+
|
70
|
+
when /TOUCH_MOTION\s+\+(\d+\.\d+)s\s+(\d+)\s+\(\d+\)\s+(\d+\.\d+)\/(\d+\.\d+)\s+\((\d+\.\d+)\/(\d+\.\d+)mm\)/
|
71
|
+
status = 'update'
|
72
|
+
time_offset = $1
|
73
|
+
finger = $2
|
74
|
+
x_px = $3
|
75
|
+
y_px = $4
|
76
|
+
x_mm = $5
|
77
|
+
y_mm = $6
|
78
|
+
|
79
|
+
when /TOUCH_UP\s+\+(\d+\.\d+)s\s+(\d+)\s+\(\d+\)/
|
80
|
+
status = 'end'
|
81
|
+
time_offset = $1
|
82
|
+
finger = $2
|
83
|
+
|
84
|
+
else
|
85
|
+
return
|
86
|
+
end
|
87
|
+
|
88
|
+
Events::Records::TouchRecord.new(status: status,
|
89
|
+
finger: finger,
|
90
|
+
time_offset: time_offset,
|
91
|
+
x_px: x_px,
|
92
|
+
y_px: y_px,
|
93
|
+
x_mm: x_mm,
|
94
|
+
y_mm: y_mm)
|
95
|
+
end
|
96
|
+
|
97
|
+
def tag
|
98
|
+
'libinput_touch_parser'
|
99
|
+
end
|
100
|
+
end
|
101
|
+
end
|
102
|
+
end
|
103
|
+
end
|
@@ -0,0 +1,11 @@
|
|
1
|
+
require 'fusuma/device'
|
2
|
+
require 'fusuma/plugin/events/records/record.rb'
|
3
|
+
require 'fusuma/plugin/parsers/parser.rb'
|
4
|
+
require 'fusuma/plugin/buffers/buffer.rb'
|
5
|
+
require 'fusuma/plugin/detectors/detector.rb'
|
6
|
+
|
7
|
+
require_relative './devices/touchscreen_device'
|
8
|
+
require_relative './events/records/touch_record'
|
9
|
+
require_relative './parsers/touch_parser'
|
10
|
+
require_relative './buffers/touch_buffer'
|
11
|
+
require_relative './detectors/touch_detector'
|
@@ -0,0 +1,182 @@
|
|
1
|
+
Device: Video Bus
|
2
|
+
Kernel: /dev/input/event7
|
3
|
+
Group: 1
|
4
|
+
Seat: seat0, default
|
5
|
+
Capabilities: keyboard
|
6
|
+
Tap-to-click: n/a
|
7
|
+
Tap-and-drag: n/a
|
8
|
+
Tap drag lock: n/a
|
9
|
+
Left-handed: n/a
|
10
|
+
Nat.scrolling: n/a
|
11
|
+
Middle emulation: n/a
|
12
|
+
Calibration: n/a
|
13
|
+
Scroll methods: none
|
14
|
+
Click methods: none
|
15
|
+
Disable-w-typing: n/a
|
16
|
+
Accel profiles: n/a
|
17
|
+
Rotation: n/a
|
18
|
+
|
19
|
+
Device: Surface Pro 3/4 Buttons
|
20
|
+
Kernel: /dev/input/event14
|
21
|
+
Group: 2
|
22
|
+
Seat: seat0, default
|
23
|
+
Capabilities: keyboard
|
24
|
+
Tap-to-click: n/a
|
25
|
+
Tap-and-drag: n/a
|
26
|
+
Tap drag lock: n/a
|
27
|
+
Left-handed: n/a
|
28
|
+
Nat.scrolling: n/a
|
29
|
+
Middle emulation: n/a
|
30
|
+
Calibration: n/a
|
31
|
+
Scroll methods: none
|
32
|
+
Click methods: none
|
33
|
+
Disable-w-typing: n/a
|
34
|
+
Accel profiles: n/a
|
35
|
+
Rotation: n/a
|
36
|
+
|
37
|
+
Device: Lid Switch
|
38
|
+
Kernel: /dev/input/event0
|
39
|
+
Group: 3
|
40
|
+
Seat: seat0, default
|
41
|
+
Capabilities: switch
|
42
|
+
Tap-to-click: n/a
|
43
|
+
Tap-and-drag: n/a
|
44
|
+
Tap drag lock: n/a
|
45
|
+
Left-handed: n/a
|
46
|
+
Nat.scrolling: n/a
|
47
|
+
Middle emulation: n/a
|
48
|
+
Calibration: n/a
|
49
|
+
Scroll methods: none
|
50
|
+
Click methods: none
|
51
|
+
Disable-w-typing: n/a
|
52
|
+
Accel profiles: n/a
|
53
|
+
Rotation: n/a
|
54
|
+
|
55
|
+
Device: Microsoft Surface Type Cover Keyboard
|
56
|
+
Kernel: /dev/input/event13
|
57
|
+
Group: 4
|
58
|
+
Seat: seat0, default
|
59
|
+
Capabilities: keyboard pointer
|
60
|
+
Tap-to-click: n/a
|
61
|
+
Tap-and-drag: n/a
|
62
|
+
Tap drag lock: n/a
|
63
|
+
Left-handed: n/a
|
64
|
+
Nat.scrolling: disabled
|
65
|
+
Middle emulation: n/a
|
66
|
+
Calibration: n/a
|
67
|
+
Scroll methods: none
|
68
|
+
Click methods: none
|
69
|
+
Disable-w-typing: n/a
|
70
|
+
Accel profiles: n/a
|
71
|
+
Rotation: n/a
|
72
|
+
|
73
|
+
Device: Microsoft Surface Type Cover Mouse
|
74
|
+
Kernel: /dev/input/event15
|
75
|
+
Group: 4
|
76
|
+
Seat: seat0, default
|
77
|
+
Capabilities: pointer
|
78
|
+
Tap-to-click: n/a
|
79
|
+
Tap-and-drag: n/a
|
80
|
+
Tap drag lock: n/a
|
81
|
+
Left-handed: disabled
|
82
|
+
Nat.scrolling: disabled
|
83
|
+
Middle emulation: disabled
|
84
|
+
Calibration: n/a
|
85
|
+
Scroll methods: button
|
86
|
+
Click methods: none
|
87
|
+
Disable-w-typing: n/a
|
88
|
+
Accel profiles: flat *adaptive
|
89
|
+
Rotation: n/a
|
90
|
+
|
91
|
+
Device: Microsoft Surface Type Cover Touchpad
|
92
|
+
Kernel: /dev/input/event17
|
93
|
+
Group: 4
|
94
|
+
Seat: seat0, default
|
95
|
+
Size: 98x50mm
|
96
|
+
Capabilities: pointer gesture
|
97
|
+
Tap-to-click: disabled
|
98
|
+
Tap-and-drag: enabled
|
99
|
+
Tap drag lock: disabled
|
100
|
+
Left-handed: disabled
|
101
|
+
Nat.scrolling: disabled
|
102
|
+
Middle emulation: disabled
|
103
|
+
Calibration: n/a
|
104
|
+
Scroll methods: *two-finger edge
|
105
|
+
Click methods: *button-areas clickfinger
|
106
|
+
Disable-w-typing: enabled
|
107
|
+
Accel profiles: flat *adaptive
|
108
|
+
Rotation: n/a
|
109
|
+
|
110
|
+
Device: Microsoft LifeCam Front: Micros
|
111
|
+
Kernel: /dev/input/event1
|
112
|
+
Group: 5
|
113
|
+
Seat: seat0, default
|
114
|
+
Capabilities: keyboard
|
115
|
+
Tap-to-click: n/a
|
116
|
+
Tap-and-drag: n/a
|
117
|
+
Tap drag lock: n/a
|
118
|
+
Left-handed: n/a
|
119
|
+
Nat.scrolling: n/a
|
120
|
+
Middle emulation: n/a
|
121
|
+
Calibration: n/a
|
122
|
+
Scroll methods: none
|
123
|
+
Click methods: none
|
124
|
+
Disable-w-typing: n/a
|
125
|
+
Accel profiles: n/a
|
126
|
+
Rotation: n/a
|
127
|
+
|
128
|
+
Device: Microsoft LifeCam Rear: Microso
|
129
|
+
Kernel: /dev/input/event2
|
130
|
+
Group: 6
|
131
|
+
Seat: seat0, default
|
132
|
+
Capabilities: keyboard
|
133
|
+
Tap-to-click: n/a
|
134
|
+
Tap-and-drag: n/a
|
135
|
+
Tap drag lock: n/a
|
136
|
+
Left-handed: n/a
|
137
|
+
Nat.scrolling: n/a
|
138
|
+
Middle emulation: n/a
|
139
|
+
Calibration: n/a
|
140
|
+
Scroll methods: none
|
141
|
+
Click methods: none
|
142
|
+
Disable-w-typing: n/a
|
143
|
+
Accel profiles: n/a
|
144
|
+
Rotation: n/a
|
145
|
+
|
146
|
+
Device: NTRG0001:01 1B96:1B05 Stylus
|
147
|
+
Kernel: /dev/input/event3
|
148
|
+
Group: 7
|
149
|
+
Seat: seat0, default
|
150
|
+
Size: 253x167mm
|
151
|
+
Capabilities: tablet
|
152
|
+
Tap-to-click: n/a
|
153
|
+
Tap-and-drag: n/a
|
154
|
+
Tap drag lock: n/a
|
155
|
+
Left-handed: n/a
|
156
|
+
Nat.scrolling: n/a
|
157
|
+
Middle emulation: n/a
|
158
|
+
Calibration: identity matrix
|
159
|
+
Scroll methods: none
|
160
|
+
Click methods: none
|
161
|
+
Disable-w-typing: n/a
|
162
|
+
Accel profiles: none
|
163
|
+
Rotation: n/a
|
164
|
+
|
165
|
+
Device: NTRG0001:01 1B96:1B05
|
166
|
+
Kernel: /dev/input/event4
|
167
|
+
Group: 7
|
168
|
+
Seat: seat0, default
|
169
|
+
Size: 253x167mm
|
170
|
+
Capabilities: touch
|
171
|
+
Tap-to-click: n/a
|
172
|
+
Tap-and-drag: n/a
|
173
|
+
Tap drag lock: n/a
|
174
|
+
Left-handed: n/a
|
175
|
+
Nat.scrolling: n/a
|
176
|
+
Middle emulation: n/a
|
177
|
+
Calibration: identity matrix
|
178
|
+
Scroll methods: none
|
179
|
+
Click methods: none
|
180
|
+
Disable-w-typing: n/a
|
181
|
+
Accel profiles: n/a
|
182
|
+
Rotation: n/a
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "spec_helper"
|
4
|
+
require './lib/fusuma/plugin/devices/touchscreen_device'
|
5
|
+
|
6
|
+
module Fusuma
|
7
|
+
RSpec.describe Plugin::Touchscreen::DevicePatch do
|
8
|
+
let(:libinput_device_command) { "dummy-libinput-list-devices" }
|
9
|
+
before do
|
10
|
+
Device.reset
|
11
|
+
allow_any_instance_of(LibinputCommand)
|
12
|
+
.to receive(:list_devices_command)
|
13
|
+
.and_return(libinput_device_command)
|
14
|
+
|
15
|
+
@dummy_io = StringIO.new("dummy")
|
16
|
+
allow(Open3).to receive(:popen3)
|
17
|
+
.with(libinput_device_command)
|
18
|
+
.and_return([@dummy_io, list_devices_output, @dummy_io, nil])
|
19
|
+
end
|
20
|
+
|
21
|
+
# that's the only touchscreen device I have :)
|
22
|
+
context 'Microsoft Surface 3 Pro' do
|
23
|
+
let(:list_devices_output) do
|
24
|
+
File.open("./spec/fixtures/libinput-list-devices_ms-surface-3-pro.txt")
|
25
|
+
end
|
26
|
+
|
27
|
+
it 'detects Microsoft Surface 3 Pro touchscreen' do
|
28
|
+
expect(Device.available.map(&:name)).to include 'NTRG0001:01 1B96:1B05'
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'spec_helper'
|
4
|
+
require './lib/fusuma/plugin/parsers/touch_parser'
|
5
|
+
|
6
|
+
module Fusuma
|
7
|
+
RSpec.describe Plugin::Parsers::TouchParser do
|
8
|
+
describe '#parse' do
|
9
|
+
it 'TOUCH_DOWN' do
|
10
|
+
|
11
|
+
end
|
12
|
+
|
13
|
+
it 'TOUCH_UP' do
|
14
|
+
|
15
|
+
end
|
16
|
+
|
17
|
+
it 'TOUCH_MOTION' do
|
18
|
+
|
19
|
+
end
|
20
|
+
|
21
|
+
it 'not a touch event' do
|
22
|
+
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
@@ -0,0 +1,90 @@
|
|
1
|
+
event4 TOUCH_DOWN +0.000s 0 (0) 54.37/59.60 (137.37/99.81mm)
|
2
|
+
event4 TOUCH_FRAME +0.000s
|
3
|
+
event4 TOUCH_MOTION +0.153s 0 (0) 54.36/59.62 (137.34/99.84mm)
|
4
|
+
event4 TOUCH_FRAME +0.153s
|
5
|
+
event4 TOUCH_MOTION +0.162s 0 (0) 54.34/59.64 (137.29/99.88mm)
|
6
|
+
event4 TOUCH_FRAME +0.162s
|
7
|
+
event4 TOUCH_MOTION +0.172s 0 (0) 54.33/59.66 (137.26/99.91mm)
|
8
|
+
event4 TOUCH_FRAME +0.172s
|
9
|
+
event4 TOUCH_MOTION +0.182s 0 (0) 54.32/59.67 (137.24/99.93mm)
|
10
|
+
event4 TOUCH_FRAME +0.182s
|
11
|
+
event4 TOUCH_MOTION +0.272s 0 (0) 54.29/59.71 (137.16/100.00mm)
|
12
|
+
event4 TOUCH_FRAME +0.272s
|
13
|
+
event4 TOUCH_MOTION +0.391s 0 (0) 54.25/59.80 (137.08/100.14mm)
|
14
|
+
event4 TOUCH_FRAME +0.391s
|
15
|
+
event4 TOUCH_MOTION +0.530s 0 (0) 54.21/59.87 (136.97/100.26mm)
|
16
|
+
event4 TOUCH_FRAME +0.530s
|
17
|
+
event4 TOUCH_MOTION +0.639s 0 (0) 54.18/59.92 (136.89/100.35mm)
|
18
|
+
event4 TOUCH_FRAME +0.639s
|
19
|
+
event4 TOUCH_MOTION +0.659s 0 (0) 54.17/59.94 (136.87/100.37mm)
|
20
|
+
event4 TOUCH_FRAME +0.659s
|
21
|
+
event4 TOUCH_MOTION +0.679s 0 (0) 54.16/59.95 (136.84/100.40mm)
|
22
|
+
event4 TOUCH_FRAME +0.679s
|
23
|
+
event4 TOUCH_MOTION +0.709s 0 (0) 54.15/59.98 (136.82/100.44mm)
|
24
|
+
event4 TOUCH_FRAME +0.709s
|
25
|
+
event4 TOUCH_MOTION +1.643s 0 (0) 54.14/60.01 (136.79/100.49mm)
|
26
|
+
event4 TOUCH_FRAME +1.643s
|
27
|
+
event4 TOUCH_MOTION +1.653s 0 (0) 54.13/60.03 (136.76/100.53mm)
|
28
|
+
event4 TOUCH_FRAME +1.653s
|
29
|
+
event4 TOUCH_MOTION +1.663s 0 (0) 54.13/60.05 (136.76/100.56mm)
|
30
|
+
event4 TOUCH_FRAME +1.663s
|
31
|
+
event4 TOUCH_MOTION +1.672s 0 (0) 54.12/60.07 (136.74/100.60mm)
|
32
|
+
event4 TOUCH_FRAME +1.672s
|
33
|
+
event4 TOUCH_MOTION +1.682s 0 (0) 54.12/60.09 (136.74/100.63mm)
|
34
|
+
event4 TOUCH_FRAME +1.682s
|
35
|
+
event4 TOUCH_MOTION +1.692s 0 (0) 54.11/60.10 (136.71/100.65mm)
|
36
|
+
event4 TOUCH_FRAME +1.692s
|
37
|
+
event4 TOUCH_MOTION +1.702s 0 (0) 54.11/60.13 (136.71/100.70mm)
|
38
|
+
event4 TOUCH_FRAME +1.702s
|
39
|
+
event4 TOUCH_MOTION +1.712s 0 (0) 54.10/60.14 (136.68/100.72mm)
|
40
|
+
event4 TOUCH_FRAME +1.712s
|
41
|
+
event4 TOUCH_MOTION +1.722s 0 (0) 54.10/60.16 (136.68/100.74mm)
|
42
|
+
event4 TOUCH_FRAME +1.722s
|
43
|
+
event4 TOUCH_MOTION +1.732s 0 (0) 54.09/60.17 (136.66/100.77mm)
|
44
|
+
event4 TOUCH_FRAME +1.732s
|
45
|
+
event4 TOUCH_MOTION +1.743s 0 (0) 54.09/60.20 (136.66/100.81mm)
|
46
|
+
event4 TOUCH_FRAME +1.743s
|
47
|
+
event4 TOUCH_MOTION +1.752s 0 (0) 54.08/60.21 (136.63/100.84mm)
|
48
|
+
event4 TOUCH_FRAME +1.752s
|
49
|
+
event4 TOUCH_MOTION +1.762s 0 (0) 54.08/60.23 (136.63/100.86mm)
|
50
|
+
event4 TOUCH_FRAME +1.762s
|
51
|
+
event4 TOUCH_MOTION +1.772s 0 (0) 54.08/60.24 (136.63/100.88mm)
|
52
|
+
event4 TOUCH_FRAME +1.772s
|
53
|
+
event4 TOUCH_MOTION +1.782s 0 (0) 54.07/60.26 (136.61/100.91mm)
|
54
|
+
event4 TOUCH_FRAME +1.782s
|
55
|
+
event4 TOUCH_MOTION +1.792s 0 (0) 54.07/60.27 (136.61/100.93mm)
|
56
|
+
event4 TOUCH_FRAME +1.792s
|
57
|
+
event4 TOUCH_MOTION +1.802s 0 (0) 54.07/60.28 (136.61/100.95mm)
|
58
|
+
event4 TOUCH_FRAME +1.802s
|
59
|
+
event4 TOUCH_MOTION +1.812s 0 (0) 54.06/60.30 (136.58/100.98mm)
|
60
|
+
event4 TOUCH_FRAME +1.812s
|
61
|
+
event4 TOUCH_MOTION +1.822s 0 (0) 54.06/60.32 (136.58/101.02mm)
|
62
|
+
event4 TOUCH_FRAME +1.822s
|
63
|
+
event4 TOUCH_MOTION +1.832s 0 (0) 54.06/60.37 (136.58/101.09mm)
|
64
|
+
event4 TOUCH_FRAME +1.832s
|
65
|
+
event4 TOUCH_MOTION +1.841s 0 (0) 54.06/60.42 (136.58/101.19mm)
|
66
|
+
event4 TOUCH_FRAME +1.841s
|
67
|
+
event4 TOUCH_MOTION +1.851s 0 (0) 54.06/60.46 (136.58/101.26mm)
|
68
|
+
event4 TOUCH_FRAME +1.851s
|
69
|
+
event4 TOUCH_MOTION +1.861s 0 (0) 54.06/60.52 (136.58/101.35mm)
|
70
|
+
event4 TOUCH_FRAME +1.861s
|
71
|
+
event4 TOUCH_MOTION +1.871s 0 (0) 54.06/60.56 (136.58/101.42mm)
|
72
|
+
event4 TOUCH_FRAME +1.871s
|
73
|
+
event4 TOUCH_MOTION +1.881s 0 (0) 54.06/60.60 (136.58/101.49mm)
|
74
|
+
event4 TOUCH_FRAME +1.881s
|
75
|
+
event4 TOUCH_MOTION +1.891s 0 (0) 54.06/60.64 (136.58/101.56mm)
|
76
|
+
event4 TOUCH_FRAME +1.891s
|
77
|
+
event4 TOUCH_MOTION +1.902s 0 (0) 54.06/60.67 (136.58/101.60mm)
|
78
|
+
event4 TOUCH_FRAME +1.902s
|
79
|
+
event4 TOUCH_MOTION +1.911s 0 (0) 54.06/60.70 (136.58/101.65mm)
|
80
|
+
event4 TOUCH_FRAME +1.911s
|
81
|
+
event4 TOUCH_MOTION +1.921s 0 (0) 54.06/60.73 (136.58/101.70mm)
|
82
|
+
event4 TOUCH_FRAME +1.921s
|
83
|
+
event4 TOUCH_MOTION +1.931s 0 (0) 54.06/60.74 (136.58/101.72mm)
|
84
|
+
event4 TOUCH_FRAME +1.931s
|
85
|
+
event4 TOUCH_MOTION +1.941s 0 (0) 54.06/60.76 (136.58/101.74mm)
|
86
|
+
event4 TOUCH_FRAME +1.941s
|
87
|
+
event4 TOUCH_MOTION +1.951s 0 (0) 54.06/60.77 (136.58/101.77mm)
|
88
|
+
event4 TOUCH_FRAME +1.951s
|
89
|
+
event4 TOUCH_UP +2.904s 0 (0)
|
90
|
+
event4 TOUCH_FRAME +2.904s
|
@@ -0,0 +1,46 @@
|
|
1
|
+
event4 TOUCH_DOWN +0.000s 0 (0) 27.07/42.62 (68.39/71.37mm)
|
2
|
+
event4 TOUCH_DOWN +0.000s 1 (1) 26.45/53.27 (66.82/89.21mm)
|
3
|
+
event4 TOUCH_FRAME +0.000s
|
4
|
+
event4 TOUCH_MOTION +0.051s 1 (1) 26.84/53.27 (67.82/89.21mm)
|
5
|
+
event4 TOUCH_FRAME +0.051s
|
6
|
+
event4 TOUCH_MOTION +0.061s 0 (0) 27.40/42.91 (69.24/71.86mm)
|
7
|
+
event4 TOUCH_MOTION +0.061s 1 (1) 27.21/53.28 (68.74/89.23mm)
|
8
|
+
event4 TOUCH_FRAME +0.061s
|
9
|
+
event4 TOUCH_MOTION +0.071s 0 (0) 28.03/43.27 (70.82/72.47mm)
|
10
|
+
event4 TOUCH_MOTION +0.071s 1 (1) 27.67/53.33 (69.92/89.30mm)
|
11
|
+
event4 TOUCH_FRAME +0.071s
|
12
|
+
event4 TOUCH_MOTION +0.082s 0 (0) 28.59/43.49 (72.24/72.84mm)
|
13
|
+
event4 TOUCH_MOTION +0.082s 1 (1) 28.43/53.37 (71.84/89.37mm)
|
14
|
+
event4 TOUCH_FRAME +0.082s
|
15
|
+
event4 TOUCH_MOTION +0.091s 0 (0) 29.32/43.66 (74.08/73.12mm)
|
16
|
+
event4 TOUCH_MOTION +0.091s 1 (1) 28.90/53.41 (73.03/89.44mm)
|
17
|
+
event4 TOUCH_FRAME +0.091s
|
18
|
+
event4 TOUCH_MOTION +0.101s 0 (0) 30.17/43.99 (76.24/73.67mm)
|
19
|
+
event4 TOUCH_MOTION +0.101s 1 (1) 29.84/53.21 (75.39/89.12mm)
|
20
|
+
event4 TOUCH_FRAME +0.101s
|
21
|
+
event4 TOUCH_MOTION +0.111s 0 (0) 30.51/44.08 (77.08/73.81mm)
|
22
|
+
event4 TOUCH_MOTION +0.111s 1 (1) 30.47/53.35 (76.97/89.35mm)
|
23
|
+
event4 TOUCH_FRAME +0.111s
|
24
|
+
event4 TOUCH_MOTION +0.121s 0 (0) 31.84/44.59 (80.45/74.67mm)
|
25
|
+
event4 TOUCH_MOTION +0.121s 1 (1) 31.65/53.73 (79.97/89.98mm)
|
26
|
+
event4 TOUCH_FRAME +0.121s
|
27
|
+
event4 TOUCH_MOTION +0.131s 0 (0) 32.56/44.76 (82.26/74.95mm)
|
28
|
+
event4 TOUCH_MOTION +0.131s 1 (1) 32.62/54.21 (82.42/90.79mm)
|
29
|
+
event4 TOUCH_FRAME +0.131s
|
30
|
+
event4 TOUCH_MOTION +0.141s 0 (0) 33.51/44.94 (84.66/75.26mm)
|
31
|
+
event4 TOUCH_MOTION +0.141s 1 (1) 33.49/54.46 (84.61/91.21mm)
|
32
|
+
event4 TOUCH_FRAME +0.141s
|
33
|
+
event4 TOUCH_MOTION +0.151s 0 (0) 34.88/45.38 (88.13/76.00mm)
|
34
|
+
event4 TOUCH_MOTION +0.151s 1 (1) 35.05/54.74 (88.55/91.67mm)
|
35
|
+
event4 TOUCH_FRAME +0.151s
|
36
|
+
event4 TOUCH_MOTION +0.162s 0 (0) 36.14/45.72 (91.32/76.56mm)
|
37
|
+
event4 TOUCH_MOTION +0.162s 1 (1) 36.62/55.28 (92.53/92.58mm)
|
38
|
+
event4 TOUCH_FRAME +0.162s
|
39
|
+
event4 TOUCH_MOTION +0.171s 0 (0) 37.53/46.12 (94.82/77.23mm)
|
40
|
+
event4 TOUCH_MOTION +0.171s 1 (1) 38.21/55.84 (96.55/93.51mm)
|
41
|
+
event4 TOUCH_FRAME +0.171s
|
42
|
+
event4 TOUCH_MOTION +0.181s 0 (0) 39.94/47.08 (100.92/78.84mm)
|
43
|
+
event4 TOUCH_MOTION +0.181s 1 (1) 39.91/56.03 (100.84/93.84mm)
|
44
|
+
event4 TOUCH_FRAME +0.181s
|
45
|
+
event4 TOUCH_UP +0.220s 0 (0)
|
46
|
+
event4 TOUCH_UP +0.220s 1 (1)
|
@@ -0,0 +1,9 @@
|
|
1
|
+
event4 TOUCH_DOWN +0.000s 0 (0) 58.64/44.04 (148.16/73.74mm)
|
2
|
+
event4 TOUCH_DOWN +0.000s 1 (1) 49.33/47.67 (124.63/79.84mm)
|
3
|
+
event4 TOUCH_DOWN +0.000s 2 (2) 43.54/64.23 (110.00/107.56mm)
|
4
|
+
event4 TOUCH_FRAME +0.000s
|
5
|
+
event4 TOUCH_UP +0.079s 2 (2)
|
6
|
+
event4 TOUCH_FRAME +0.079s
|
7
|
+
event4 TOUCH_UP +0.099s 1 (1)
|
8
|
+
event4 TOUCH_FRAME +0.099s
|
9
|
+
event4 TOUCH_UP +0.108s 0 (0)
|