Merge lp:~sergiusens/grail/update into lp:grail/phablet
- update
- Merge into phablet
Proposed by
Sergio Schvezov
Status: | Merged |
---|---|
Approved by: | Daniel d'Andrada |
Approved revision: | 250 |
Merged at revision: | 250 |
Proposed branch: | lp:~sergiusens/grail/update |
Merge into: | lp:grail/phablet |
Diff against target: |
1605 lines (+298/-649) 46 files modified
Makefile.am (+1/-0) configure.ac (+2/-2) debian/changelog (+45/-0) debian/control (+2/-2) debian/copyright (+3/-4) m4/gtest.m4 (+13/-5) m4/xorg-gtest.m4 (+2/-31) src/handle.cpp (+1/-6) src/touch.cpp (+2/-10) test/integration/device.cpp (+2/-3) test/integration/device.h (+2/-3) test/integration/events.h (+2/-3) test/integration/recording.cpp (+2/-3) test/integration/recording.h (+2/-3) test/integration/slice-checker.cpp (+2/-3) test/integration/slice-checker.h (+2/-3) test/integration/x11/atomic-timeout.cpp (+2/-3) test/integration/x11/dragthresh.cpp (+2/-3) test/integration/x11/fixture.cpp (+2/-3) test/integration/x11/fixture.h (+2/-3) test/integration/x11/hold-reject.cpp (+2/-3) test/integration/x11/no-premature-gestures.cpp (+2/-3) test/integration/x11/no-tap-after-drag.cpp (+2/-3) test/integration/x11/parallel-atomic-gestures.cpp (+2/-3) test/integration/x11/tap-touch-accept.cpp (+2/-3) test/integration/x11/timeout.cpp (+2/-3) test/integration/x11/twodrag.cpp (+2/-3) test/regular/Makefile.am (+2/-3) test/regular/frame_mock.cpp (+0/-254) test/regular/frame_mock.h (+0/-66) test/regular/grail-fixture.cpp (+133/-111) test/regular/grail-fixture.h (+18/-20) test/regular/intermittent_3touch.cpp (+1/-1) test/regular/one-touch-gest-finished.cpp (+5/-24) test/regular/pending-end.cpp (+9/-7) test/regular/still-gest-finishes.cpp (+3/-19) tools/common/device.c (+2/-3) tools/common/device.h (+2/-3) tools/common/servertime.c (+2/-3) tools/common/servertime.h (+2/-3) tools/common/slice.c (+2/-3) tools/common/slice.h (+2/-3) tools/grail-test-3-1.c (+2/-3) tools/grail-test-atomic.c (+2/-3) tools/grail-test-edge.c (+2/-3) tools/grail-test-propagation.c (+2/-3) |
To merge this branch: | bzr merge lp:~sergiusens/grail/update |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Daniel d'Andrada (community) | Approve | ||
Review via email: mp+155228@code.launchpad.net |
Commit message
Bringing in updates from trunk
Description of the change
To post a comment you must log in.
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | === modified file 'Makefile.am' | |||
2 | --- Makefile.am 2012-11-20 20:13:00 +0000 | |||
3 | +++ Makefile.am 2013-03-25 13:49:07 +0000 | |||
4 | @@ -1,4 +1,5 @@ | |||
5 | 1 | ACLOCAL_AMFLAGS = -I m4 --install | 1 | ACLOCAL_AMFLAGS = -I m4 --install |
6 | 2 | AM_DISTCHECK_CONFIGURE_FLAGS = --disable-integration-tests | ||
7 | 2 | 3 | ||
8 | 3 | SUBDIRS = src test | 4 | SUBDIRS = src test |
9 | 4 | 5 | ||
10 | 5 | 6 | ||
11 | === modified file 'configure.ac' | |||
12 | --- configure.ac 2012-11-29 15:41:42 +0000 | |||
13 | +++ configure.ac 2013-03-25 13:49:07 +0000 | |||
14 | @@ -2,7 +2,7 @@ | |||
15 | 2 | # Initialize Autoconf | 2 | # Initialize Autoconf |
16 | 3 | AC_PREREQ([2.60]) | 3 | AC_PREREQ([2.60]) |
17 | 4 | AC_INIT([Gesture Recognition And Instantiation Library], | 4 | AC_INIT([Gesture Recognition And Instantiation Library], |
19 | 5 | [3.0.9], | 5 | [3.1.0], |
20 | 6 | [], | 6 | [], |
21 | 7 | [grail]) | 7 | [grail]) |
22 | 8 | AC_CONFIG_SRCDIR([Makefile.am]) | 8 | AC_CONFIG_SRCDIR([Makefile.am]) |
23 | @@ -65,7 +65,7 @@ | |||
24 | 65 | ################################# | 65 | ################################# |
25 | 66 | # check mandatory build dependencies | 66 | # check mandatory build dependencies |
26 | 67 | 67 | ||
28 | 68 | PKG_CHECK_MODULES([FRAME], [frame >= 2.2.0]) | 68 | PKG_CHECK_MODULES([FRAME], [frame >= 2.5.0]) |
29 | 69 | 69 | ||
30 | 70 | ################################# | 70 | ################################# |
31 | 71 | # debug builds | 71 | # debug builds |
32 | 72 | 72 | ||
33 | === modified file 'debian/changelog' | |||
34 | --- debian/changelog 2012-11-29 21:06:52 +0000 | |||
35 | +++ debian/changelog 2013-03-25 13:49:07 +0000 | |||
36 | @@ -1,9 +1,54 @@ | |||
37 | 1 | grail (3.1.0phablet1) quantal; urgency=low | ||
38 | 2 | |||
39 | 3 | * Merging current branch into phablet series. | ||
40 | 4 | |||
41 | 5 | -- Sergio Schvezov <sergio.schvezov@canonical.com> Mon, 25 Mar 2013 10:43:34 -0300 | ||
42 | 6 | |||
43 | 7 | grail (3.1.0daily13.02.26-0ubuntu1) raring; urgency=low | ||
44 | 8 | |||
45 | 9 | [ Stephen M. Webb ] | ||
46 | 10 | * New upstream release to pick up licensing changes. | ||
47 | 11 | |||
48 | 12 | [ Automatic PS uploader ] | ||
49 | 13 | * Automatic snapshot from revision 253 | ||
50 | 14 | |||
51 | 15 | -- Automatic PS uploader <ps-jenkins@lists.canonical.com> Tue, 26 Feb 2013 02:02:10 +0000 | ||
52 | 16 | |||
53 | 1 | grail (3.0.9phablet1) quantal; urgency=low | 17 | grail (3.0.9phablet1) quantal; urgency=low |
54 | 2 | 18 | ||
55 | 3 | * Releasing version for phablet | 19 | * Releasing version for phablet |
56 | 4 | 20 | ||
57 | 5 | -- Ricardo Salveti de Araujo <ricardo.salveti@canonical.com> Thu, 29 Nov 2012 18:28:25 -0200 | 21 | -- Ricardo Salveti de Araujo <ricardo.salveti@canonical.com> Thu, 29 Nov 2012 18:28:25 -0200 |
58 | 6 | 22 | ||
59 | 23 | grail (3.0.9daily12.12.07.1-0ubuntu1) raring; urgency=low | ||
60 | 24 | |||
61 | 25 | [ Daniel d'Andrada ] | ||
62 | 26 | * Relicense under (L)GPL version 3 *only* (no +) | ||
63 | 27 | * Updated libframe version dependency to 2.5.0 | ||
64 | 28 | * Use frame_backend.h instead of a frame mock in tests | ||
65 | 29 | * Get rid of x11 specific code in grail implementation | ||
66 | 30 | |||
67 | 31 | [ Automatic PS uploader ] | ||
68 | 32 | * Automatic snapshot from revision 251 | ||
69 | 33 | |||
70 | 34 | -- Automatic PS uploader <ps-jenkins@lists.canonical.com> Fri, 07 Dec 2012 06:37:45 +0000 | ||
71 | 35 | |||
72 | 36 | grail (3.0.9daily12.12.03-0ubuntu1) raring; urgency=low | ||
73 | 37 | |||
74 | 38 | [ Robert Bruce Park ] | ||
75 | 39 | * Inline packaging metadata. | ||
76 | 40 | |||
77 | 41 | [ Didier Roche ] | ||
78 | 42 | * Automatic snapshot from revision 244 (bootstrap) | ||
79 | 43 | |||
80 | 44 | [ Daniel d'Andrada ] | ||
81 | 45 | * Updated libframe version dependency to 2.4.4 | ||
82 | 46 | |||
83 | 47 | [ Automatic PS uploader ] | ||
84 | 48 | * Automatic snapshot from revision 247 | ||
85 | 49 | |||
86 | 50 | -- Automatic PS uploader <ps-jenkins@lists.canonical.com> Mon, 03 Dec 2012 02:01:33 +0000 | ||
87 | 51 | |||
88 | 7 | grail (3.0.9-0phablet1) quantal; urgency=low | 52 | grail (3.0.9-0phablet1) quantal; urgency=low |
89 | 8 | 53 | ||
90 | 9 | [ Robert Bruce Park ] | 54 | [ Robert Bruce Park ] |
91 | 10 | 55 | ||
92 | === modified file 'debian/control' | |||
93 | --- debian/control 2012-11-29 16:14:03 +0000 | |||
94 | +++ debian/control 2013-03-25 13:49:07 +0000 | |||
95 | @@ -1,10 +1,10 @@ | |||
96 | 1 | Source: grail | 1 | Source: grail |
97 | 2 | Section: libs | 2 | Section: libs |
98 | 3 | Priority: optional | 3 | Priority: optional |
100 | 4 | Maintainer: Daniel d'Andrada <daniel.dandrada@canonical.com> | 4 | Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com> |
101 | 5 | Build-Depends: debhelper (>= 9), | 5 | Build-Depends: debhelper (>= 9), |
102 | 6 | dh-autoreconf, | 6 | dh-autoreconf, |
104 | 7 | libframe-dev (>= 2.4.4), | 7 | libframe-dev (>= 2.5.0), |
105 | 8 | pkg-config, | 8 | pkg-config, |
106 | 9 | Standards-Version: 3.9.3 | 9 | Standards-Version: 3.9.3 |
107 | 10 | Homepage: https://launchpad.net/grail | 10 | Homepage: https://launchpad.net/grail |
108 | 11 | 11 | ||
109 | === modified file 'debian/copyright' | |||
110 | --- debian/copyright 2012-11-22 21:28:42 +0000 | |||
111 | +++ debian/copyright 2013-03-25 13:49:07 +0000 | |||
112 | @@ -22,11 +22,10 @@ | |||
113 | 22 | 22 | ||
114 | 23 | Files: test/* tools/* | 23 | Files: test/* tools/* |
115 | 24 | Copyright: 2010-2012 Canonical Ltd. | 24 | Copyright: 2010-2012 Canonical Ltd. |
117 | 25 | License: GPL-3+ | 25 | License: GPL-3 |
118 | 26 | This program is free software: you can redistribute it and/or modify | 26 | This program is free software: you can redistribute it and/or modify |
122 | 27 | it under the terms of the GNU General Public License as published by | 27 | it under the terms of version 3 of the GNU General Public License as |
123 | 28 | the Free Software Foundation, either version 3 of the License, or | 28 | published by the Free Software Foundation. |
121 | 29 | (at your option) any later version. | ||
124 | 30 | . | 29 | . |
125 | 31 | This program is distributed in the hope that it will be useful, | 30 | This program is distributed in the hope that it will be useful, |
126 | 32 | but WITHOUT ANY WARRANTY; without even the implied warranty of | 31 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
127 | 33 | 32 | ||
128 | === modified file 'm4/gtest.m4' | |||
129 | --- m4/gtest.m4 2012-06-29 20:59:33 +0000 | |||
130 | +++ m4/gtest.m4 2013-03-25 13:49:07 +0000 | |||
131 | @@ -1,4 +1,4 @@ | |||
133 | 1 | # serial 1 | 1 | # serial 2 |
134 | 2 | 2 | ||
135 | 3 | # Copyright (C) 2012 Canonical, Ltd. | 3 | # Copyright (C) 2012 Canonical, Ltd. |
136 | 4 | # | 4 | # |
137 | @@ -40,10 +40,18 @@ | |||
138 | 40 | 40 | ||
139 | 41 | GTEST_CPPFLAGS="$GTEST_CPPFLAGS -I$GTEST_SOURCE" | 41 | GTEST_CPPFLAGS="$GTEST_CPPFLAGS -I$GTEST_SOURCE" |
140 | 42 | 42 | ||
145 | 43 | AC_CHECK_FILES([$GTEST_SOURCE/src/gtest-all.cc] | 43 | AC_LANG_PUSH(C++) |
146 | 44 | [$GTEST_SOURCE/src/gtest_main.cc], | 44 | gtest_save_CPPFLAGS=$CPPFLAGS |
147 | 45 | [have_gtest=yes], | 45 | CPPFLAGS="$CPPFLAGS $GTEST_CPPFLAGS" |
148 | 46 | [have_gtest=no]) | 46 | AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include "src/gtest-all.cc"]])], |
149 | 47 | [have_gtest=yes], | ||
150 | 48 | [have_gtest=no]) | ||
151 | 49 | AS_IF([test "x$have_gtest" = xyes], | ||
152 | 50 | [AC_COMPILE_IFELSE([AC_LANG_SOURCE([[#include "src/gtest_main.cc"]])], | ||
153 | 51 | [], | ||
154 | 52 | [have_gtest=no])]) | ||
155 | 53 | CPPFLAGS=$gtest_save_CPPFLAGS | ||
156 | 54 | AC_LANG_POP(C++) | ||
157 | 47 | 55 | ||
158 | 48 | AS_IF([test "x$have_gtest" = xyes], | 56 | AS_IF([test "x$have_gtest" = xyes], |
159 | 49 | [GTEST_LIBS=-lpthread | 57 | [GTEST_LIBS=-lpthread |
160 | 50 | 58 | ||
161 | === modified file 'm4/xorg-gtest.m4' | |||
162 | --- m4/xorg-gtest.m4 2012-07-24 21:52:37 +0000 | |||
163 | +++ m4/xorg-gtest.m4 2013-03-25 13:49:07 +0000 | |||
164 | @@ -1,4 +1,4 @@ | |||
166 | 1 | # serial 2 | 1 | # serial 3 |
167 | 2 | 2 | ||
168 | 3 | # Copyright (C) 2012 Canonical, Ltd. | 3 | # Copyright (C) 2012 Canonical, Ltd. |
169 | 4 | # | 4 | # |
170 | @@ -21,35 +21,6 @@ | |||
171 | 21 | # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | 21 | # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE |
172 | 22 | # SOFTWARE. | 22 | # SOFTWARE. |
173 | 23 | 23 | ||
174 | 24 | # Checks whether the gtest source is available on the system. Allows for | ||
175 | 25 | # adjusting the include and source path. Sets have_gtest=yes if the source is | ||
176 | 26 | # present. Sets GTEST_CPPFLAGS and GTEST_SOURCE to the preprocessor flags and | ||
177 | 27 | # source location respectively. | ||
178 | 28 | AC_DEFUN([_CHECK_GTEST], | ||
179 | 29 | [ | ||
180 | 30 | AC_ARG_WITH([gtest-source-path], | ||
181 | 31 | [AS_HELP_STRING([--with-gtest-source-path], | ||
182 | 32 | [location of the Google test sources, defaults to /usr/src/gtest])], | ||
183 | 33 | [GTEST_SOURCE="$withval"; GTEST_CPPFLAGS="-I$withval/include"], | ||
184 | 34 | [GTEST_SOURCE="/usr/src/gtest"]) | ||
185 | 35 | |||
186 | 36 | AC_ARG_WITH([gtest-include-path], | ||
187 | 37 | [AS_HELP_STRING([--with-gtest-include-path], | ||
188 | 38 | [location of the Google test headers])], | ||
189 | 39 | [GTEST_CPPFLAGS="-I$withval"]) | ||
190 | 40 | |||
191 | 41 | GTEST_CPPFLAGS="$GTEST_CPPFLAGS -I$GTEST_SOURCE" | ||
192 | 42 | |||
193 | 43 | AC_CHECK_FILES([$GTEST_SOURCE/src/gtest-all.cc] | ||
194 | 44 | [$GTEST_SOURCE/src/gtest_main.cc], | ||
195 | 45 | [have_gtest=yes], | ||
196 | 46 | [have_gtest=no]) | ||
197 | 47 | |||
198 | 48 | AS_IF([test "x$have_gtest_source" = xyes], | ||
199 | 49 | [AC_SUBST(GTEST_CPPFLAGS)] | ||
200 | 50 | [AC_SUBST(GTEST_SOURCE)]) | ||
201 | 51 | ]) # _CHECK_GTEST | ||
202 | 52 | |||
203 | 53 | # CHECK_XORG_GTEST([ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) | 24 | # CHECK_XORG_GTEST([ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) |
204 | 54 | # | 25 | # |
205 | 55 | # Checks whether the xorg-gtest source is available on the system. Allows for | 26 | # Checks whether the xorg-gtest source is available on the system. Allows for |
206 | @@ -61,7 +32,7 @@ | |||
207 | 61 | # Both default actions are no-ops. | 32 | # Both default actions are no-ops. |
208 | 62 | AC_DEFUN([CHECK_XORG_GTEST], | 33 | AC_DEFUN([CHECK_XORG_GTEST], |
209 | 63 | [ | 34 | [ |
211 | 64 | AC_REQUIRE([_CHECK_GTEST]) | 35 | AC_REQUIRE([CHECK_GTEST]) |
212 | 65 | 36 | ||
213 | 66 | PKG_CHECK_EXISTS([xorg-gtest], | 37 | PKG_CHECK_EXISTS([xorg-gtest], |
214 | 67 | [have_xorg_gtest=yes], | 38 | [have_xorg_gtest=yes], |
215 | 68 | 39 | ||
216 | === modified file 'src/handle.cpp' | |||
217 | --- src/handle.cpp 2012-11-20 20:13:00 +0000 | |||
218 | +++ src/handle.cpp 2013-03-25 13:49:07 +0000 | |||
219 | @@ -30,9 +30,6 @@ | |||
220 | 30 | #include <stdexcept> | 30 | #include <stdexcept> |
221 | 31 | 31 | ||
222 | 32 | #include <oif/frame.h> | 32 | #include <oif/frame.h> |
223 | 33 | #ifdef FRAME_X11_BACKEND | ||
224 | 34 | #include <oif/frame_x11.h> | ||
225 | 35 | #endif | ||
226 | 36 | 33 | ||
227 | 37 | #include "atomic-recognizer.h" | 34 | #include "atomic-recognizer.h" |
228 | 38 | #include "event.h" | 35 | #include "event.h" |
229 | @@ -154,9 +151,7 @@ | |||
230 | 154 | if (frame_touch_get_state(touch) != UFTouchStateBegin) | 151 | if (frame_touch_get_state(touch) != UFTouchStateBegin) |
231 | 155 | continue; | 152 | continue; |
232 | 156 | 153 | ||
236 | 157 | #ifdef FRAME_X11_BACKEND | 154 | frame_reject_touch(device, window_id, frame_touch_get_id(touch)); |
234 | 158 | frame_x11_reject_touch(device, window_id, frame_touch_get_id(touch)); | ||
235 | 159 | #endif | ||
237 | 160 | } | 155 | } |
238 | 161 | } | 156 | } |
239 | 162 | 157 | ||
240 | 163 | 158 | ||
241 | === modified file 'src/touch.cpp' | |||
242 | --- src/touch.cpp 2012-11-20 20:13:00 +0000 | |||
243 | +++ src/touch.cpp 2013-03-25 13:49:07 +0000 | |||
244 | @@ -20,10 +20,6 @@ | |||
245 | 20 | 20 | ||
246 | 21 | #include "touch.h" | 21 | #include "touch.h" |
247 | 22 | 22 | ||
248 | 23 | #ifdef FRAME_X11_BACKEND | ||
249 | 24 | #include <oif/frame_x11.h> | ||
250 | 25 | #endif | ||
251 | 26 | |||
252 | 27 | #include "log.h" | 23 | #include "log.h" |
253 | 28 | 24 | ||
254 | 29 | namespace oif { | 25 | namespace oif { |
255 | @@ -73,10 +69,8 @@ | |||
256 | 73 | 69 | ||
257 | 74 | void Touch::Accept() { | 70 | void Touch::Accept() { |
258 | 75 | LOG(Dbg) << "accepting touch " << id_ << "\n"; | 71 | LOG(Dbg) << "accepting touch " << id_ << "\n"; |
261 | 76 | #ifdef FRAME_X11_BACKEND | 72 | if (frame_accept_touch(device_, window_id_, id_) != UFStatusSuccess) |
260 | 77 | if (frame_x11_accept_touch(device_, window_id_, id_) != UFStatusSuccess) | ||
262 | 78 | LOG(Err) << "touch " << id_ << " failed to be accepted\n"; | 73 | LOG(Err) << "touch " << id_ << " failed to be accepted\n"; |
263 | 79 | #endif | ||
264 | 80 | 74 | ||
265 | 81 | accepted_ = true; | 75 | accepted_ = true; |
266 | 82 | } | 76 | } |
267 | @@ -84,10 +78,8 @@ | |||
268 | 84 | Touch::~Touch() { | 78 | Touch::~Touch() { |
269 | 85 | if (!accepted_) { | 79 | if (!accepted_) { |
270 | 86 | LOG(Dbg) << "rejecting touch " << id_ << "\n"; | 80 | LOG(Dbg) << "rejecting touch " << id_ << "\n"; |
273 | 87 | #ifdef FRAME_X11_BACKEND | 81 | if (frame_reject_touch(device_, window_id_, id_) != UFStatusSuccess) |
272 | 88 | if (frame_x11_reject_touch(device_, window_id_, id_) != UFStatusSuccess) | ||
274 | 89 | LOG(Err) << "touch " << id_ << " failed to be rejected\n"; | 82 | LOG(Err) << "touch " << id_ << " failed to be rejected\n"; |
275 | 90 | #endif | ||
276 | 91 | } | 83 | } |
277 | 92 | } | 84 | } |
278 | 93 | 85 | ||
279 | 94 | 86 | ||
280 | === modified file 'test/integration/device.cpp' | |||
281 | --- test/integration/device.cpp 2012-07-24 21:52:37 +0000 | |||
282 | +++ test/integration/device.cpp 2013-03-25 13:49:07 +0000 | |||
283 | @@ -5,9 +5,8 @@ | |||
284 | 5 | * Copyright (C) 2012 Canonical Ltd. | 5 | * Copyright (C) 2012 Canonical Ltd. |
285 | 6 | * | 6 | * |
286 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
290 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
291 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
289 | 10 | * option) any later version. | ||
292 | 11 | * | 10 | * |
293 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
294 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
295 | 14 | 13 | ||
296 | === modified file 'test/integration/device.h' | |||
297 | --- test/integration/device.h 2012-07-24 21:52:37 +0000 | |||
298 | +++ test/integration/device.h 2013-03-25 13:49:07 +0000 | |||
299 | @@ -5,9 +5,8 @@ | |||
300 | 5 | * Copyright (C) 2012 Canonical Ltd. | 5 | * Copyright (C) 2012 Canonical Ltd. |
301 | 6 | * | 6 | * |
302 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
306 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
307 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
305 | 10 | * option) any later version. | ||
308 | 11 | * | 10 | * |
309 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
310 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
311 | 14 | 13 | ||
312 | === modified file 'test/integration/events.h' | |||
313 | --- test/integration/events.h 2012-07-24 21:52:37 +0000 | |||
314 | +++ test/integration/events.h 2013-03-25 13:49:07 +0000 | |||
315 | @@ -5,9 +5,8 @@ | |||
316 | 5 | * Copyright (C) 2012 Canonical Ltd. | 5 | * Copyright (C) 2012 Canonical Ltd. |
317 | 6 | * | 6 | * |
318 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
322 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
323 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
321 | 10 | * option) any later version. | ||
324 | 11 | * | 10 | * |
325 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
326 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
327 | 14 | 13 | ||
328 | === modified file 'test/integration/recording.cpp' | |||
329 | --- test/integration/recording.cpp 2012-07-24 21:52:37 +0000 | |||
330 | +++ test/integration/recording.cpp 2013-03-25 13:49:07 +0000 | |||
331 | @@ -5,9 +5,8 @@ | |||
332 | 5 | * Copyright (C) 2012 Canonical Ltd. | 5 | * Copyright (C) 2012 Canonical Ltd. |
333 | 6 | * | 6 | * |
334 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
338 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
339 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
337 | 10 | * option) any later version. | ||
340 | 11 | * | 10 | * |
341 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
342 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
343 | 14 | 13 | ||
344 | === modified file 'test/integration/recording.h' | |||
345 | --- test/integration/recording.h 2012-07-24 21:52:37 +0000 | |||
346 | +++ test/integration/recording.h 2013-03-25 13:49:07 +0000 | |||
347 | @@ -5,9 +5,8 @@ | |||
348 | 5 | * Copyright (C) 2012 Canonical Ltd. | 5 | * Copyright (C) 2012 Canonical Ltd. |
349 | 6 | * | 6 | * |
350 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
354 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
355 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
353 | 10 | * option) any later version. | ||
356 | 11 | * | 10 | * |
357 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
358 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
359 | 14 | 13 | ||
360 | === modified file 'test/integration/slice-checker.cpp' | |||
361 | --- test/integration/slice-checker.cpp 2012-07-24 21:52:37 +0000 | |||
362 | +++ test/integration/slice-checker.cpp 2013-03-25 13:49:07 +0000 | |||
363 | @@ -5,9 +5,8 @@ | |||
364 | 5 | * Copyright (C) 2012 Canonical Ltd. | 5 | * Copyright (C) 2012 Canonical Ltd. |
365 | 6 | * | 6 | * |
366 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
370 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
371 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
369 | 10 | * option) any later version. | ||
372 | 11 | * | 10 | * |
373 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
374 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
375 | 14 | 13 | ||
376 | === modified file 'test/integration/slice-checker.h' | |||
377 | --- test/integration/slice-checker.h 2012-07-24 21:52:37 +0000 | |||
378 | +++ test/integration/slice-checker.h 2013-03-25 13:49:07 +0000 | |||
379 | @@ -5,9 +5,8 @@ | |||
380 | 5 | * Copyright (C) 2012 Canonical Ltd. | 5 | * Copyright (C) 2012 Canonical Ltd. |
381 | 6 | * | 6 | * |
382 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
386 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
387 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
385 | 10 | * option) any later version. | ||
388 | 11 | * | 10 | * |
389 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
390 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
391 | 14 | 13 | ||
392 | === modified file 'test/integration/x11/atomic-timeout.cpp' | |||
393 | --- test/integration/x11/atomic-timeout.cpp 2012-06-21 20:30:14 +0000 | |||
394 | +++ test/integration/x11/atomic-timeout.cpp 2013-03-25 13:49:07 +0000 | |||
395 | @@ -5,9 +5,8 @@ | |||
396 | 5 | * Copyright (C) 2012 Canonical Ltd. | 5 | * Copyright (C) 2012 Canonical Ltd. |
397 | 6 | * | 6 | * |
398 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
402 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
403 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
401 | 10 | * option) any later version. | ||
404 | 11 | * | 10 | * |
405 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
406 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
407 | 14 | 13 | ||
408 | === modified file 'test/integration/x11/dragthresh.cpp' | |||
409 | --- test/integration/x11/dragthresh.cpp 2012-06-21 20:30:14 +0000 | |||
410 | +++ test/integration/x11/dragthresh.cpp 2013-03-25 13:49:07 +0000 | |||
411 | @@ -5,9 +5,8 @@ | |||
412 | 5 | * Copyright (C) 2012 Canonical Ltd. | 5 | * Copyright (C) 2012 Canonical Ltd. |
413 | 6 | * | 6 | * |
414 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
418 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
419 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
417 | 10 | * option) any later version. | ||
420 | 11 | * | 10 | * |
421 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
422 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
423 | 14 | 13 | ||
424 | === modified file 'test/integration/x11/fixture.cpp' | |||
425 | --- test/integration/x11/fixture.cpp 2012-08-27 21:52:42 +0000 | |||
426 | +++ test/integration/x11/fixture.cpp 2013-03-25 13:49:07 +0000 | |||
427 | @@ -5,9 +5,8 @@ | |||
428 | 5 | * Copyright (C) 2012 Canonical Ltd. | 5 | * Copyright (C) 2012 Canonical Ltd. |
429 | 6 | * | 6 | * |
430 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
434 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
435 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
433 | 10 | * option) any later version. | ||
436 | 11 | * | 10 | * |
437 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
438 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
439 | 14 | 13 | ||
440 | === modified file 'test/integration/x11/fixture.h' | |||
441 | --- test/integration/x11/fixture.h 2012-06-21 20:30:14 +0000 | |||
442 | +++ test/integration/x11/fixture.h 2013-03-25 13:49:07 +0000 | |||
443 | @@ -5,9 +5,8 @@ | |||
444 | 5 | * Copyright (C) 2012 Canonical Ltd. | 5 | * Copyright (C) 2012 Canonical Ltd. |
445 | 6 | * | 6 | * |
446 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
450 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
451 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
449 | 10 | * option) any later version. | ||
452 | 11 | * | 10 | * |
453 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
454 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
455 | 14 | 13 | ||
456 | === modified file 'test/integration/x11/hold-reject.cpp' | |||
457 | --- test/integration/x11/hold-reject.cpp 2012-06-21 20:30:14 +0000 | |||
458 | +++ test/integration/x11/hold-reject.cpp 2013-03-25 13:49:07 +0000 | |||
459 | @@ -5,9 +5,8 @@ | |||
460 | 5 | * Copyright (C) 2012 Canonical Ltd. | 5 | * Copyright (C) 2012 Canonical Ltd. |
461 | 6 | * | 6 | * |
462 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
466 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
467 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
465 | 10 | * option) any later version. | ||
468 | 11 | * | 10 | * |
469 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
470 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
471 | 14 | 13 | ||
472 | === modified file 'test/integration/x11/no-premature-gestures.cpp' | |||
473 | --- test/integration/x11/no-premature-gestures.cpp 2012-07-24 16:04:18 +0000 | |||
474 | +++ test/integration/x11/no-premature-gestures.cpp 2013-03-25 13:49:07 +0000 | |||
475 | @@ -5,9 +5,8 @@ | |||
476 | 5 | * Copyright (C) 2012 Canonical Ltd. | 5 | * Copyright (C) 2012 Canonical Ltd. |
477 | 6 | * | 6 | * |
478 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
482 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
483 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
481 | 10 | * option) any later version. | ||
484 | 11 | * | 10 | * |
485 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
486 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
487 | 14 | 13 | ||
488 | === modified file 'test/integration/x11/no-tap-after-drag.cpp' | |||
489 | --- test/integration/x11/no-tap-after-drag.cpp 2012-07-24 16:04:18 +0000 | |||
490 | +++ test/integration/x11/no-tap-after-drag.cpp 2013-03-25 13:49:07 +0000 | |||
491 | @@ -5,9 +5,8 @@ | |||
492 | 5 | * Copyright (C) 2012 Canonical Ltd. | 5 | * Copyright (C) 2012 Canonical Ltd. |
493 | 6 | * | 6 | * |
494 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
498 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
499 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
497 | 10 | * option) any later version. | ||
500 | 11 | * | 10 | * |
501 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
502 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
503 | 14 | 13 | ||
504 | === modified file 'test/integration/x11/parallel-atomic-gestures.cpp' | |||
505 | --- test/integration/x11/parallel-atomic-gestures.cpp 2012-06-21 20:30:14 +0000 | |||
506 | +++ test/integration/x11/parallel-atomic-gestures.cpp 2013-03-25 13:49:07 +0000 | |||
507 | @@ -5,9 +5,8 @@ | |||
508 | 5 | * Copyright (C) 2012 Canonical Ltd. | 5 | * Copyright (C) 2012 Canonical Ltd. |
509 | 6 | * | 6 | * |
510 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
514 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
515 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
513 | 10 | * option) any later version. | ||
516 | 11 | * | 10 | * |
517 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
518 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
519 | 14 | 13 | ||
520 | === modified file 'test/integration/x11/tap-touch-accept.cpp' | |||
521 | --- test/integration/x11/tap-touch-accept.cpp 2012-06-21 20:30:14 +0000 | |||
522 | +++ test/integration/x11/tap-touch-accept.cpp 2013-03-25 13:49:07 +0000 | |||
523 | @@ -5,9 +5,8 @@ | |||
524 | 5 | * Copyright (C) 2012 Canonical Ltd. | 5 | * Copyright (C) 2012 Canonical Ltd. |
525 | 6 | * | 6 | * |
526 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
530 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
531 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
529 | 10 | * option) any later version. | ||
532 | 11 | * | 10 | * |
533 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
534 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
535 | 14 | 13 | ||
536 | === modified file 'test/integration/x11/timeout.cpp' | |||
537 | --- test/integration/x11/timeout.cpp 2012-06-21 20:30:14 +0000 | |||
538 | +++ test/integration/x11/timeout.cpp 2013-03-25 13:49:07 +0000 | |||
539 | @@ -5,9 +5,8 @@ | |||
540 | 5 | * Copyright (C) 2012 Canonical Ltd. | 5 | * Copyright (C) 2012 Canonical Ltd. |
541 | 6 | * | 6 | * |
542 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
546 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
547 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
545 | 10 | * option) any later version. | ||
548 | 11 | * | 10 | * |
549 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
550 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
551 | 14 | 13 | ||
552 | === modified file 'test/integration/x11/twodrag.cpp' | |||
553 | --- test/integration/x11/twodrag.cpp 2012-06-21 20:30:14 +0000 | |||
554 | +++ test/integration/x11/twodrag.cpp 2013-03-25 13:49:07 +0000 | |||
555 | @@ -5,9 +5,8 @@ | |||
556 | 5 | * Copyright (C) 2012 Canonical Ltd. | 5 | * Copyright (C) 2012 Canonical Ltd. |
557 | 6 | * | 6 | * |
558 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
562 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
563 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
561 | 10 | * option) any later version. | ||
564 | 11 | * | 10 | * |
565 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
566 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
567 | 14 | 13 | ||
568 | === modified file 'test/regular/Makefile.am' | |||
569 | --- test/regular/Makefile.am 2012-11-20 20:13:00 +0000 | |||
570 | +++ test/regular/Makefile.am 2013-03-25 13:49:07 +0000 | |||
571 | @@ -25,8 +25,6 @@ | |||
572 | 25 | 25 | ||
573 | 26 | check_regular_SOURCES = \ | 26 | check_regular_SOURCES = \ |
574 | 27 | grail.cpp \ | 27 | grail.cpp \ |
575 | 28 | frame_mock.cpp \ | ||
576 | 29 | frame_mock.h \ | ||
577 | 30 | grail-fixture.cpp \ | 28 | grail-fixture.cpp \ |
578 | 31 | grail-fixture.h \ | 29 | grail-fixture.h \ |
579 | 32 | intermittent_3touch.cpp \ | 30 | intermittent_3touch.cpp \ |
580 | @@ -43,7 +41,8 @@ | |||
581 | 43 | $(top_builddir)/src/.libs/libgrail.a \ | 41 | $(top_builddir)/src/.libs/libgrail.a \ |
582 | 44 | $(top_builddir)/test/gtest/libgtest_grail.a \ | 42 | $(top_builddir)/test/gtest/libgtest_grail.a \ |
583 | 45 | $(COVERAGE_LIBS) \ | 43 | $(COVERAGE_LIBS) \ |
585 | 46 | $(GTEST_LIBS) | 44 | $(GTEST_LIBS) \ |
586 | 45 | $(FRAME_LIBS) | ||
587 | 47 | 46 | ||
588 | 48 | check_regular_CPPFLAGS = \ | 47 | check_regular_CPPFLAGS = \ |
589 | 49 | --std=c++0x \ | 48 | --std=c++0x \ |
590 | 50 | 49 | ||
591 | === removed file 'test/regular/frame_mock.cpp' | |||
592 | --- test/regular/frame_mock.cpp 2012-11-21 13:31:12 +0000 | |||
593 | +++ test/regular/frame_mock.cpp 1970-01-01 00:00:00 +0000 | |||
594 | @@ -1,254 +0,0 @@ | |||
595 | 1 | #include "frame_mock.h" | ||
596 | 2 | |||
597 | 3 | extern "C" { | ||
598 | 4 | |||
599 | 5 | /***************************************************************************** | ||
600 | 6 | * Event | ||
601 | 7 | *****************************************************************************/ | ||
602 | 8 | |||
603 | 9 | UFEventType frame_event_get_type(UFEvent self) | ||
604 | 10 | { | ||
605 | 11 | return self->type; | ||
606 | 12 | } | ||
607 | 13 | |||
608 | 14 | UFStatus frame_event_get_property(UFEvent self, UFEventProperty property, | ||
609 | 15 | void *value) | ||
610 | 16 | { | ||
611 | 17 | UFStatus status = UFStatusErrorUnknownProperty; | ||
612 | 18 | |||
613 | 19 | if (property == UFEventPropertyFrame && self->frame_ptr) | ||
614 | 20 | { | ||
615 | 21 | *((UFFrame*)value) = self->frame_ptr.get(); | ||
616 | 22 | status = UFStatusSuccess; | ||
617 | 23 | } | ||
618 | 24 | else if (property == UFEventPropertyDevice && self->device_ptr) | ||
619 | 25 | { | ||
620 | 26 | *((UFDevice*)value) = self->device_ptr.get(); | ||
621 | 27 | status = UFStatusSuccess; | ||
622 | 28 | } | ||
623 | 29 | |||
624 | 30 | return status; | ||
625 | 31 | } | ||
626 | 32 | |||
627 | 33 | uint64_t frame_event_get_time(UFEvent self) | ||
628 | 34 | { | ||
629 | 35 | return self->time; | ||
630 | 36 | } | ||
631 | 37 | |||
632 | 38 | void frame_event_ref(UFEvent self) | ||
633 | 39 | { | ||
634 | 40 | ++self->ref_count; | ||
635 | 41 | } | ||
636 | 42 | |||
637 | 43 | void frame_event_unref(UFEvent self) | ||
638 | 44 | { | ||
639 | 45 | --self->ref_count; | ||
640 | 46 | |||
641 | 47 | if (self->ref_count == 0) | ||
642 | 48 | delete self; | ||
643 | 49 | } | ||
644 | 50 | |||
645 | 51 | /***************************************************************************** | ||
646 | 52 | * Frame | ||
647 | 53 | *****************************************************************************/ | ||
648 | 54 | |||
649 | 55 | UFStatus frame_frame_get_touch_by_index(UFFrame self, unsigned int index, | ||
650 | 56 | UFTouch *touch) | ||
651 | 57 | { | ||
652 | 58 | UFStatus status; | ||
653 | 59 | |||
654 | 60 | if (index < self->touches.size()) | ||
655 | 61 | { | ||
656 | 62 | *touch = &(self->touches[index]); | ||
657 | 63 | status = UFStatusSuccess; | ||
658 | 64 | } | ||
659 | 65 | else | ||
660 | 66 | { | ||
661 | 67 | status = UFStatusErrorInvalidTouch; | ||
662 | 68 | } | ||
663 | 69 | |||
664 | 70 | return status; | ||
665 | 71 | } | ||
666 | 72 | |||
667 | 73 | UFStatus frame_frame_get_touch_by_id(UFFrame self, UFTouchId touch_id, | ||
668 | 74 | UFTouch* touch_pointer) | ||
669 | 75 | { | ||
670 | 76 | UFStatus status = UFStatusErrorInvalidTouch; | ||
671 | 77 | |||
672 | 78 | for (struct UFTouch_ &touch : self->touches) | ||
673 | 79 | { | ||
674 | 80 | if (touch.id == touch_id) | ||
675 | 81 | { | ||
676 | 82 | *touch_pointer = &touch; | ||
677 | 83 | status = UFStatusSuccess; | ||
678 | 84 | break; | ||
679 | 85 | } | ||
680 | 86 | } | ||
681 | 87 | |||
682 | 88 | return status; | ||
683 | 89 | } | ||
684 | 90 | |||
685 | 91 | uint32_t frame_frame_get_num_touches(UFFrame self) | ||
686 | 92 | { | ||
687 | 93 | return self->touches.size(); | ||
688 | 94 | } | ||
689 | 95 | |||
690 | 96 | UFDevice frame_frame_get_device(UFFrame self) | ||
691 | 97 | { | ||
692 | 98 | return self->device_ptr.get(); | ||
693 | 99 | } | ||
694 | 100 | |||
695 | 101 | UFWindowId frame_frame_get_window_id(UFFrame self) | ||
696 | 102 | { | ||
697 | 103 | return self->window_id; | ||
698 | 104 | } | ||
699 | 105 | |||
700 | 106 | /***************************************************************************** | ||
701 | 107 | * Touch | ||
702 | 108 | *****************************************************************************/ | ||
703 | 109 | |||
704 | 110 | UFStatus frame_touch_get_property(UFTouch self, UFTouchProperty property, | ||
705 | 111 | void *value) | ||
706 | 112 | { | ||
707 | 113 | UFStatus status; | ||
708 | 114 | |||
709 | 115 | switch (property) | ||
710 | 116 | { | ||
711 | 117 | case UFTouchPropertyOwned: | ||
712 | 118 | *((int*)value) = self->owned; | ||
713 | 119 | status = UFStatusSuccess; | ||
714 | 120 | break; | ||
715 | 121 | |||
716 | 122 | case UFTouchPropertyPendingEnd: | ||
717 | 123 | *((int*)value) = self->pending_end; | ||
718 | 124 | status = UFStatusSuccess; | ||
719 | 125 | break; | ||
720 | 126 | |||
721 | 127 | default: | ||
722 | 128 | status = UFStatusErrorUnknownProperty; | ||
723 | 129 | } | ||
724 | 130 | |||
725 | 131 | return status; | ||
726 | 132 | } | ||
727 | 133 | |||
728 | 134 | UFTouchId frame_touch_get_id(UFTouch self) | ||
729 | 135 | { | ||
730 | 136 | return self->id; | ||
731 | 137 | } | ||
732 | 138 | |||
733 | 139 | UFTouchState frame_touch_get_state(UFTouch self) | ||
734 | 140 | { | ||
735 | 141 | return self->state; | ||
736 | 142 | } | ||
737 | 143 | |||
738 | 144 | float frame_touch_get_window_x(UFTouch self) | ||
739 | 145 | { | ||
740 | 146 | return self->window_x; | ||
741 | 147 | } | ||
742 | 148 | |||
743 | 149 | float frame_touch_get_window_y(UFTouch self) | ||
744 | 150 | { | ||
745 | 151 | return self->window_y; | ||
746 | 152 | } | ||
747 | 153 | |||
748 | 154 | float frame_touch_get_device_x(UFTouch self) | ||
749 | 155 | { | ||
750 | 156 | return self->device_x; | ||
751 | 157 | } | ||
752 | 158 | |||
753 | 159 | float frame_touch_get_device_y(UFTouch self) | ||
754 | 160 | { | ||
755 | 161 | return self->device_y; | ||
756 | 162 | } | ||
757 | 163 | |||
758 | 164 | uint64_t frame_touch_get_time(UFTouch self) | ||
759 | 165 | { | ||
760 | 166 | return self->time; | ||
761 | 167 | } | ||
762 | 168 | |||
763 | 169 | uint64_t frame_touch_get_start_time(UFTouch self) | ||
764 | 170 | { | ||
765 | 171 | return self->start_time; | ||
766 | 172 | } | ||
767 | 173 | |||
768 | 174 | /***************************************************************************** | ||
769 | 175 | * Device | ||
770 | 176 | *****************************************************************************/ | ||
771 | 177 | |||
772 | 178 | UFStatus frame_device_get_property(UFDevice self, UFDeviceProperty property, | ||
773 | 179 | void *value) | ||
774 | 180 | { | ||
775 | 181 | UFStatus status; | ||
776 | 182 | |||
777 | 183 | switch (property) | ||
778 | 184 | { | ||
779 | 185 | case UFDevicePropertyDirect: | ||
780 | 186 | *((int*)value) = self->direct; | ||
781 | 187 | status = UFStatusSuccess; | ||
782 | 188 | break; | ||
783 | 189 | |||
784 | 190 | default: | ||
785 | 191 | status = UFStatusErrorUnknownProperty; | ||
786 | 192 | } | ||
787 | 193 | |||
788 | 194 | return status; | ||
789 | 195 | } | ||
790 | 196 | |||
791 | 197 | UFStatus frame_device_get_axis_by_type(UFDevice self, UFAxisType axis_type, | ||
792 | 198 | UFAxis *axis_pointer) | ||
793 | 199 | { | ||
794 | 200 | UFStatus status = UFStatusErrorInvalidAxis; | ||
795 | 201 | |||
796 | 202 | for (struct UFAxis_ &axis : self->axes) | ||
797 | 203 | { | ||
798 | 204 | if (axis.type == axis_type) | ||
799 | 205 | { | ||
800 | 206 | *axis_pointer = &axis; | ||
801 | 207 | status = UFStatusSuccess; | ||
802 | 208 | break; | ||
803 | 209 | } | ||
804 | 210 | } | ||
805 | 211 | |||
806 | 212 | return status; | ||
807 | 213 | } | ||
808 | 214 | |||
809 | 215 | float frame_device_get_window_resolution_x(UFDevice self) | ||
810 | 216 | { | ||
811 | 217 | return self->window_resolution_x; | ||
812 | 218 | } | ||
813 | 219 | |||
814 | 220 | float frame_device_get_window_resolution_y(UFDevice self) | ||
815 | 221 | { | ||
816 | 222 | return self->window_resolution_y; | ||
817 | 223 | } | ||
818 | 224 | |||
819 | 225 | /***************************************************************************** | ||
820 | 226 | * Axis | ||
821 | 227 | *****************************************************************************/ | ||
822 | 228 | |||
823 | 229 | float frame_axis_get_resolution(UFAxis self) | ||
824 | 230 | { | ||
825 | 231 | return self->resolution; | ||
826 | 232 | } | ||
827 | 233 | |||
828 | 234 | /***************************************************************************** | ||
829 | 235 | * Frame X11 | ||
830 | 236 | *****************************************************************************/ | ||
831 | 237 | |||
832 | 238 | #ifdef FRAME_X11_BACKEND | ||
833 | 239 | UFStatus frame_x11_accept_touch(UFDevice device, UFWindowId window, | ||
834 | 240 | UFTouchId touch_id) | ||
835 | 241 | { | ||
836 | 242 | device->x11_touch_acceptance[window][touch_id] = true; | ||
837 | 243 | return UFStatusSuccess; | ||
838 | 244 | } | ||
839 | 245 | |||
840 | 246 | UFStatus frame_x11_reject_touch(UFDevice device, UFWindowId window, | ||
841 | 247 | UFTouchId touch_id) | ||
842 | 248 | { | ||
843 | 249 | device->x11_touch_acceptance[window][touch_id] = false; | ||
844 | 250 | return UFStatusSuccess; | ||
845 | 251 | } | ||
846 | 252 | #endif // FRAME_X11_BACKEND | ||
847 | 253 | |||
848 | 254 | } // extern "C" | ||
849 | 255 | 0 | ||
850 | === removed file 'test/regular/frame_mock.h' | |||
851 | --- test/regular/frame_mock.h 2012-11-21 13:31:12 +0000 | |||
852 | +++ test/regular/frame_mock.h 1970-01-01 00:00:00 +0000 | |||
853 | @@ -1,66 +0,0 @@ | |||
854 | 1 | #ifndef FRAME_MOCK_H | ||
855 | 2 | #define FRAME_MOCK_H | ||
856 | 3 | |||
857 | 4 | #include <oif/frame.h> | ||
858 | 5 | #include <map> | ||
859 | 6 | #include <vector> | ||
860 | 7 | #include <memory> | ||
861 | 8 | |||
862 | 9 | extern "C" { | ||
863 | 10 | |||
864 | 11 | struct UFHandle_ | ||
865 | 12 | { | ||
866 | 13 | int fd; | ||
867 | 14 | }; | ||
868 | 15 | |||
869 | 16 | struct UFEvent_ | ||
870 | 17 | { | ||
871 | 18 | UFEvent_() {ref_count = 1;} | ||
872 | 19 | UFEventType type; | ||
873 | 20 | std::shared_ptr<struct UFDevice_> device_ptr; | ||
874 | 21 | std::unique_ptr<struct UFFrame_> frame_ptr; | ||
875 | 22 | uint64_t time; | ||
876 | 23 | int ref_count; | ||
877 | 24 | }; | ||
878 | 25 | |||
879 | 26 | struct UFFrame_ | ||
880 | 27 | { | ||
881 | 28 | std::shared_ptr<struct UFDevice_> device_ptr; | ||
882 | 29 | UFWindowId window_id; | ||
883 | 30 | std::vector<struct UFTouch_> touches; | ||
884 | 31 | }; | ||
885 | 32 | |||
886 | 33 | struct UFTouch_ | ||
887 | 34 | { | ||
888 | 35 | UFTouchId id; | ||
889 | 36 | UFTouchState state; | ||
890 | 37 | float window_x; | ||
891 | 38 | float window_y; | ||
892 | 39 | float device_x; | ||
893 | 40 | float device_y; | ||
894 | 41 | uint64_t time; | ||
895 | 42 | uint64_t start_time; | ||
896 | 43 | int owned; | ||
897 | 44 | int pending_end; | ||
898 | 45 | }; | ||
899 | 46 | |||
900 | 47 | struct UFDevice_ | ||
901 | 48 | { | ||
902 | 49 | int direct; | ||
903 | 50 | std::vector<struct UFAxis_> axes; | ||
904 | 51 | float window_resolution_x; | ||
905 | 52 | float window_resolution_y; | ||
906 | 53 | #ifdef FRAME_X11_BACKEND | ||
907 | 54 | std::map<UFWindowId, std::map<UFTouchId, bool> > x11_touch_acceptance; | ||
908 | 55 | #endif | ||
909 | 56 | }; | ||
910 | 57 | |||
911 | 58 | struct UFAxis_ | ||
912 | 59 | { | ||
913 | 60 | UFAxisType type; | ||
914 | 61 | float resolution; | ||
915 | 62 | }; | ||
916 | 63 | |||
917 | 64 | } // extern "C" | ||
918 | 65 | |||
919 | 66 | #endif | ||
920 | 67 | 0 | ||
921 | === modified file 'test/regular/grail-fixture.cpp' | |||
922 | --- test/regular/grail-fixture.cpp 2012-07-23 13:11:21 +0000 | |||
923 | +++ test/regular/grail-fixture.cpp 2013-03-25 13:49:07 +0000 | |||
924 | @@ -1,72 +1,58 @@ | |||
925 | 1 | #include "grail-fixture.h" | 1 | #include "grail-fixture.h" |
926 | 2 | 2 | ||
955 | 3 | void GrailTest::SendFrameEvent( | 3 | void GrailTest::SendFrameEvent(uint64_t time, UFBackendFrame frame) |
956 | 4 | uint64_t time, | 4 | { |
957 | 5 | UFWindowId window_id, | 5 | UFEvent event = frame_event_new(); |
958 | 6 | const struct UFTouch_ &touch_struct) | 6 | frame_event_set_type(event, UFEventTypeFrame); |
959 | 7 | { | 7 | frame_event_set_frame(event, frame); |
960 | 8 | std::vector<struct UFTouch_> touches; | 8 | frame_event_set_time(event, time); |
961 | 9 | touches.push_back(touch_struct); | 9 | |
962 | 10 | SendFrameEvent(time, window_id, touches); | 10 | grail_process_frame_event(grail_handle, event); |
963 | 11 | } | 11 | frame_event_unref(event); |
964 | 12 | 12 | event = nullptr; | |
965 | 13 | void GrailTest::SendFrameEvent( | 13 | |
966 | 14 | uint64_t time, | 14 | if (previous_frame_) |
967 | 15 | UFWindowId window_id, | 15 | frame_backend_frame_delete(previous_frame_); |
968 | 16 | std::vector<struct UFTouch_> &touches) | 16 | previous_frame_ = frame; |
941 | 17 | { | ||
942 | 18 | UFFrame frame = new struct UFFrame_; | ||
943 | 19 | frame->device_ptr = device_ptr; | ||
944 | 20 | frame->window_id = window_id; | ||
945 | 21 | frame->touches = touches; | ||
946 | 22 | |||
947 | 23 | UFEvent frame_event = new struct UFEvent_; | ||
948 | 24 | frame_event->type = UFEventTypeFrame; | ||
949 | 25 | frame_event->time = time; | ||
950 | 26 | frame_event->frame_ptr.reset(std::move(frame)); | ||
951 | 27 | |||
952 | 28 | grail_process_frame_event(grail_handle, frame_event); | ||
953 | 29 | frame_event_unref(frame_event); | ||
954 | 30 | frame_event = nullptr; | ||
969 | 31 | } | 17 | } |
970 | 32 | 18 | ||
971 | 33 | void GrailTest::SendDeviceAddedEvent(uint64_t time) | 19 | void GrailTest::SendDeviceAddedEvent(uint64_t time) |
972 | 34 | { | 20 | { |
977 | 35 | UFEvent frame_event = new struct UFEvent_; | 21 | UFEvent event = frame_event_new(); |
978 | 36 | frame_event->type = UFEventTypeDeviceAdded; | 22 | frame_event_set_type(event, UFEventTypeDeviceAdded); |
979 | 37 | frame_event->time = time; | 23 | frame_event_set_time(event, time); |
980 | 38 | frame_event->device_ptr = device_ptr; | 24 | frame_event_set_device(event, device_); |
981 | 39 | 25 | ||
985 | 40 | grail_process_frame_event(grail_handle, frame_event); | 26 | grail_process_frame_event(grail_handle, event); |
986 | 41 | frame_event_unref(frame_event); | 27 | frame_event_unref(event); |
987 | 42 | frame_event = nullptr; | 28 | event = nullptr; |
988 | 43 | } | 29 | } |
989 | 44 | 30 | ||
991 | 45 | void GrailTest::FillFakeDeviceStruct() | 31 | void GrailTest::CreateFakeDevice() |
992 | 46 | { | 32 | { |
1005 | 47 | struct UFAxis_ axis_x_struct; | 33 | device_ = frame_backend_device_new(); |
1006 | 48 | axis_x_struct.type = UFAxisTypeX; | 34 | |
1007 | 49 | axis_x_struct.resolution = 3764.70; | 35 | frame_backend_device_add_axis(device_, |
1008 | 50 | 36 | UFAxisTypeX, | |
1009 | 51 | struct UFAxis_ axis_y_struct; | 37 | 0, 10000, 3764.70); |
1010 | 52 | axis_y_struct.type = UFAxisTypeY; | 38 | |
1011 | 53 | axis_y_struct.resolution = 3764.70; | 39 | frame_backend_device_add_axis(device_, |
1012 | 54 | 40 | UFAxisTypeY, | |
1013 | 55 | device_ptr.reset(new struct UFDevice_); | 41 | 0, 10000, 3764.70); |
1014 | 56 | device_ptr->direct = 1; | 42 | |
1015 | 57 | device_ptr->axes.push_back(axis_x_struct); | 43 | frame_backend_device_set_direct(device_, 1); |
1016 | 58 | device_ptr->axes.push_back(axis_y_struct); | 44 | |
1017 | 59 | /* pixels/m */ | 45 | /* pixels/m */ |
1020 | 60 | device_ptr->window_resolution_x = 3764.70; | 46 | frame_backend_device_set_window_resolution(device_, 3764.70, 3764.70); |
1019 | 61 | device_ptr->window_resolution_y = 3764.70; | ||
1021 | 62 | } | 47 | } |
1022 | 63 | 48 | ||
1023 | 64 | UGSubscription GrailTest::CreateSubscription( | 49 | UGSubscription GrailTest::CreateSubscription( |
1024 | 65 | unsigned int num_touches, UGGestureTypeMask gesture_mask, | 50 | unsigned int num_touches, UGGestureTypeMask gesture_mask, |
1026 | 66 | UFDevice device, UFWindowId window_id) | 51 | UFWindowId window_id) |
1027 | 67 | { | 52 | { |
1028 | 68 | UGStatus status; | 53 | UGStatus status; |
1029 | 69 | UGSubscription subscription = nullptr; | 54 | UGSubscription subscription = nullptr; |
1030 | 55 | UFDevice uf_device = frame_backend_device_get_device(device_); | ||
1031 | 70 | 56 | ||
1032 | 71 | status = grail_subscription_new(&subscription); | 57 | status = grail_subscription_new(&subscription); |
1033 | 72 | if (status != UGStatusSuccess) | 58 | if (status != UGStatusSuccess) |
1034 | @@ -77,7 +63,7 @@ | |||
1035 | 77 | 63 | ||
1036 | 78 | status = grail_subscription_set_property(subscription, | 64 | status = grail_subscription_set_property(subscription, |
1037 | 79 | UGSubscriptionPropertyDevice, | 65 | UGSubscriptionPropertyDevice, |
1039 | 80 | &device); | 66 | &uf_device); |
1040 | 81 | if (status != UGStatusSuccess) | 67 | if (status != UGStatusSuccess) |
1041 | 82 | { | 68 | { |
1042 | 83 | ADD_FAILURE() << "failed to set device subscription"; | 69 | ADD_FAILURE() << "failed to set device subscription"; |
1043 | @@ -150,75 +136,111 @@ | |||
1044 | 150 | BeginTouchWindowCoords(touch_id, touch_id * 10.0f, 0.0f); | 136 | BeginTouchWindowCoords(touch_id, touch_id * 10.0f, 0.0f); |
1045 | 151 | } | 137 | } |
1046 | 152 | 138 | ||
1047 | 139 | namespace | ||
1048 | 140 | { | ||
1049 | 141 | void IncrementFrameActiveTouches(UFBackendFrame frame_backend) | ||
1050 | 142 | { | ||
1051 | 143 | UFFrame frame = frame_backend_frame_get_frame(frame_backend); | ||
1052 | 144 | unsigned int active_touches; | ||
1053 | 145 | frame_frame_get_property(frame, UFFramePropertyActiveTouches, &active_touches); | ||
1054 | 146 | frame_backend_frame_set_active_touches(frame_backend, active_touches + 1); | ||
1055 | 147 | } | ||
1056 | 148 | |||
1057 | 149 | } // anonymous namespace | ||
1058 | 150 | |||
1059 | 153 | void GrailTest::BeginTouchWindowCoords(int touch_id, float window_x, float window_y) | 151 | void GrailTest::BeginTouchWindowCoords(int touch_id, float window_x, float window_y) |
1060 | 154 | { | 152 | { |
1077 | 155 | struct UFTouch_ touch_struct; | 153 | UFBackendTouch touch = frame_backend_touch_new(); |
1078 | 156 | touch_struct.id = touch_id; | 154 | frame_backend_touch_set_id(touch, touch_id); |
1079 | 157 | touch_struct.state = UFTouchStateBegin; | 155 | frame_backend_touch_set_time(touch, time); |
1080 | 158 | touch_struct.time = time; | 156 | frame_backend_touch_set_start_time(touch, time); |
1081 | 159 | touch_struct.start_time = touch_struct.time; | 157 | frame_backend_touch_set_window_pos(touch, window_x, window_y); |
1082 | 160 | touch_struct.window_x = window_x; | 158 | frame_backend_touch_set_owned(touch, 0); |
1083 | 161 | touch_struct.window_y = window_y; | 159 | frame_backend_touch_set_pending_end(touch, 0); |
1084 | 162 | touch_struct.owned = 0; | 160 | |
1085 | 163 | touch_struct.pending_end = 0; | 161 | UFBackendFrame frame; |
1086 | 164 | 162 | if (previous_frame_) | |
1087 | 165 | touches.push_back(touch_struct); | 163 | frame = frame_backend_frame_create_next(previous_frame_); |
1088 | 166 | 164 | else | |
1089 | 167 | SendFrameEvent(time, fake_window_id, touches); | 165 | frame = frame_backend_frame_new(); |
1090 | 168 | 166 | ||
1091 | 169 | // leave it in a neutral state for next uses of touches vector | 167 | frame_backend_frame_set_device(frame, device_); |
1092 | 170 | touches[touches.size()-1].state = UFTouchStateUpdate; | 168 | |
1093 | 169 | frame_backend_frame_give_touch(frame, &touch); | ||
1094 | 170 | IncrementFrameActiveTouches(frame); | ||
1095 | 171 | frame_backend_frame_set_window_id(frame, fake_window_id); | ||
1096 | 172 | |||
1097 | 173 | SendFrameEvent(time, frame); | ||
1098 | 171 | } | 174 | } |
1099 | 172 | 175 | ||
1100 | 173 | void GrailTest::GiveTouchOwnership(int touch_id) | 176 | void GrailTest::GiveTouchOwnership(int touch_id) |
1101 | 174 | { | 177 | { |
1124 | 175 | auto iterator = FindTouch(touch_id); | 178 | std::function<void(UFBackendTouch)> update_func = |
1125 | 176 | iterator->state = UFTouchStateUpdate; | 179 | [](UFBackendTouch touch) |
1126 | 177 | iterator->owned = 1; // ownership will trigger delivery of grail events. | 180 | { |
1127 | 178 | iterator->time = time; | 181 | frame_backend_touch_set_owned(touch, 1); |
1128 | 179 | 182 | }; | |
1129 | 180 | SendFrameEvent(time, fake_window_id, touches); | 183 | |
1130 | 181 | } | 184 | UpdateTouch(touch_id, update_func); |
1131 | 182 | 185 | } | |
1132 | 183 | void GrailTest::SetTouchWindowCoords(int touch_id, float window_x, float window_y) | 186 | |
1133 | 184 | { | 187 | void GrailTest::UpdateTouch(int touch_id, |
1134 | 185 | auto iterator = FindTouch(touch_id); | 188 | std::function< void(UFBackendTouch) >& update_func) |
1135 | 186 | iterator->window_x = window_x; | 189 | { |
1136 | 187 | iterator->window_y = window_y; | 190 | assert(previous_frame_); // error would be in the test itself |
1137 | 188 | } | 191 | |
1138 | 189 | 192 | UFBackendFrame frame = frame_backend_frame_create_next(previous_frame_); | |
1139 | 190 | void GrailTest::UpdateTouches() | 193 | frame_backend_frame_set_device(frame, device_); |
1140 | 191 | { | 194 | frame_backend_frame_set_window_id(frame, fake_window_id); |
1141 | 192 | for (struct UFTouch_ &touch : touches) | 195 | |
1142 | 193 | { | 196 | UFStatus status; |
1143 | 194 | touch.time = time; | 197 | UFBackendTouch touch; |
1144 | 195 | } | 198 | status = frame_backend_frame_borrow_touch_by_id(frame, touch_id, &touch); |
1145 | 196 | SendFrameEvent(time, fake_window_id, touches); | 199 | ASSERT_EQ(UFStatusSuccess, status); |
1146 | 200 | |||
1147 | 201 | update_func(touch); | ||
1148 | 202 | frame_backend_touch_set_time(touch, time); | ||
1149 | 203 | |||
1150 | 204 | status = frame_backend_frame_give_touch(frame, &touch); | ||
1151 | 205 | ASSERT_EQ(UFStatusSuccess, status); | ||
1152 | 206 | |||
1153 | 207 | SendFrameEvent(time, frame); | ||
1154 | 208 | } | ||
1155 | 209 | |||
1156 | 210 | void GrailTest::SetTouchWindowCoords(UFBackendFrame frame, | ||
1157 | 211 | int touch_id, float window_x, float window_y) | ||
1158 | 212 | { | ||
1159 | 213 | UFStatus status; | ||
1160 | 214 | UFBackendTouch touch; | ||
1161 | 215 | status = frame_backend_frame_borrow_touch_by_id(frame, touch_id, &touch); | ||
1162 | 216 | ASSERT_EQ(UFStatusSuccess, status); | ||
1163 | 217 | |||
1164 | 218 | frame_backend_touch_set_window_pos(touch, window_x, window_y); | ||
1165 | 219 | |||
1166 | 220 | status = frame_backend_frame_give_touch(frame, &touch); | ||
1167 | 221 | ASSERT_EQ(UFStatusSuccess, status); | ||
1168 | 222 | } | ||
1169 | 223 | |||
1170 | 224 | void GrailTest::SendTouchPendingEnd(int touch_id) | ||
1171 | 225 | { | ||
1172 | 226 | std::function<void(UFBackendTouch)> update_func = | ||
1173 | 227 | [](UFBackendTouch touch) | ||
1174 | 228 | { | ||
1175 | 229 | frame_backend_touch_set_pending_end(touch, 1); | ||
1176 | 230 | }; | ||
1177 | 231 | |||
1178 | 232 | UpdateTouch(touch_id, update_func); | ||
1179 | 197 | } | 233 | } |
1180 | 198 | 234 | ||
1181 | 199 | void GrailTest::EndTouch(int touch_id) | 235 | void GrailTest::EndTouch(int touch_id) |
1182 | 200 | { | 236 | { |
1204 | 201 | auto iterator = FindTouch(touch_id); | 237 | std::function<void(UFBackendTouch)> update_func = |
1205 | 202 | iterator->state = UFTouchStateEnd; | 238 | [](UFBackendTouch touch) |
1206 | 203 | iterator->time = time; | 239 | { |
1207 | 204 | 240 | frame_backend_touch_set_ended(touch); | |
1208 | 205 | SendFrameEvent(time, fake_window_id, touches); | 241 | }; |
1209 | 206 | 242 | ||
1210 | 207 | touches.erase(iterator); | 243 | UpdateTouch(touch_id, update_func); |
1190 | 208 | } | ||
1191 | 209 | |||
1192 | 210 | std::vector<struct UFTouch_>::iterator GrailTest::FindTouch(unsigned int touch_id) | ||
1193 | 211 | { | ||
1194 | 212 | std::vector<struct UFTouch_>::iterator it = touches.begin(); | ||
1195 | 213 | |||
1196 | 214 | while (it != touches.end()) | ||
1197 | 215 | { | ||
1198 | 216 | if (it->id == touch_id) | ||
1199 | 217 | return it; | ||
1200 | 218 | ++it; | ||
1201 | 219 | } | ||
1202 | 220 | |||
1203 | 221 | return it; | ||
1211 | 222 | } | 244 | } |
1212 | 223 | 245 | ||
1213 | 224 | void GrailTest::ProcessGrailEvents() | 246 | void GrailTest::ProcessGrailEvents() |
1214 | 225 | 247 | ||
1215 | === modified file 'test/regular/grail-fixture.h' | |||
1216 | --- test/regular/grail-fixture.h 2012-08-27 21:52:42 +0000 | |||
1217 | +++ test/regular/grail-fixture.h 2013-03-25 13:49:07 +0000 | |||
1218 | @@ -3,8 +3,9 @@ | |||
1219 | 3 | 3 | ||
1220 | 4 | #include <gtest/gtest.h> | 4 | #include <gtest/gtest.h> |
1221 | 5 | #include <oif/grail.h> | 5 | #include <oif/grail.h> |
1223 | 6 | #include "frame_mock.h" | 6 | #include <oif/frame_backend.h> |
1224 | 7 | 7 | ||
1225 | 8 | #include <functional> | ||
1226 | 8 | #include <list> | 9 | #include <list> |
1227 | 9 | #include <set> | 10 | #include <set> |
1228 | 10 | 11 | ||
1229 | @@ -27,41 +28,38 @@ | |||
1230 | 27 | virtual void SetUp() | 28 | virtual void SetUp() |
1231 | 28 | { | 29 | { |
1232 | 29 | grail_handle = NULL; | 30 | grail_handle = NULL; |
1234 | 30 | FillFakeDeviceStruct(); | 31 | previous_frame_ = nullptr; |
1235 | 32 | CreateFakeDevice(); | ||
1236 | 31 | } | 33 | } |
1237 | 32 | 34 | ||
1238 | 33 | virtual void TearDown() | 35 | virtual void TearDown() |
1239 | 34 | { | 36 | { |
1240 | 35 | if (grail_handle) | 37 | if (grail_handle) |
1241 | 36 | grail_delete(grail_handle); | 38 | grail_delete(grail_handle); |
1242 | 39 | |||
1243 | 40 | if (previous_frame_) | ||
1244 | 41 | frame_backend_frame_delete(previous_frame_); | ||
1245 | 42 | |||
1246 | 43 | frame_backend_device_delete(device_); | ||
1247 | 37 | } | 44 | } |
1248 | 38 | 45 | ||
1249 | 39 | protected: | 46 | protected: |
1250 | 40 | 47 | ||
1251 | 41 | UGSubscription CreateSubscription(unsigned int num_touches, | 48 | UGSubscription CreateSubscription(unsigned int num_touches, |
1253 | 42 | UGGestureTypeMask gesture_mask, UFDevice device, UFWindowId window_id); | 49 | UGGestureTypeMask gesture_mask, UFWindowId window_id); |
1254 | 43 | 50 | ||
1265 | 44 | void FillFakeDeviceStruct(); | 51 | void CreateFakeDevice(); |
1256 | 45 | void SendDeviceAddedEvent(); | ||
1257 | 46 | void SendFrameEvent( | ||
1258 | 47 | uint64_t time, | ||
1259 | 48 | UFWindowId window_id, | ||
1260 | 49 | const struct UFTouch_ &touch_struct); | ||
1261 | 50 | void SendFrameEvent( | ||
1262 | 51 | uint64_t time, | ||
1263 | 52 | UFWindowId window_id, | ||
1264 | 53 | std::vector<struct UFTouch_> &touches); | ||
1266 | 54 | void SendDeviceAddedEvent(uint64_t time); | 52 | void SendDeviceAddedEvent(uint64_t time); |
1267 | 53 | void SendFrameEvent(uint64_t time, UFBackendFrame frame); | ||
1268 | 55 | 54 | ||
1269 | 56 | void BeginTouch(int touch_id); | 55 | void BeginTouch(int touch_id); |
1270 | 57 | void BeginTouchWindowCoords(int touch_id, float window_x, float window_y); | 56 | void BeginTouchWindowCoords(int touch_id, float window_x, float window_y); |
1271 | 58 | void GiveTouchOwnership(int touch_id); | 57 | void GiveTouchOwnership(int touch_id); |
1276 | 59 | void SetTouchWindowCoords(int touch_id, float window_x, float window_y); | 58 | void SetTouchWindowCoords(UFBackendFrame frame, |
1277 | 60 | /* Updates the time of all touches in the "touches" vector and sends that vector | 59 | int touch_id, float window_x, float window_y); |
1278 | 61 | in a frame event to grail */ | 60 | void SendTouchPendingEnd(int touch_id); |
1275 | 62 | void UpdateTouches(); | ||
1279 | 63 | void EndTouch(int touch_id); | 61 | void EndTouch(int touch_id); |
1281 | 64 | std::vector<struct UFTouch_>::iterator FindTouch(unsigned int touch_id); | 62 | void UpdateTouch(int touch_id, std::function< void(UFBackendTouch) >& update_func); |
1282 | 65 | 63 | ||
1283 | 66 | /* Fetches and processes all pending grail events, updating grail_gestures | 64 | /* Fetches and processes all pending grail events, updating grail_gestures |
1284 | 67 | list accordingly. */ | 65 | list accordingly. */ |
1285 | @@ -75,11 +73,11 @@ | |||
1286 | 75 | void PrintSlice(UGSlice slice); | 73 | void PrintSlice(UGSlice slice); |
1287 | 76 | 74 | ||
1288 | 77 | UGHandle grail_handle; | 75 | UGHandle grail_handle; |
1290 | 78 | std::shared_ptr<struct UFDevice_> device_ptr; | 76 | UFBackendDevice device_; |
1291 | 79 | 77 | ||
1292 | 80 | uint64_t time; | 78 | uint64_t time; |
1293 | 81 | UFWindowId fake_window_id; | 79 | UFWindowId fake_window_id; |
1295 | 82 | std::vector<struct UFTouch_> touches; | 80 | UFBackendFrame previous_frame_; |
1296 | 83 | 81 | ||
1297 | 84 | /* | 82 | /* |
1298 | 85 | A representation of the currently active gestures according to the grail events | 83 | A representation of the currently active gestures according to the grail events |
1299 | 86 | 84 | ||
1300 | === modified file 'test/regular/intermittent_3touch.cpp' | |||
1301 | --- test/regular/intermittent_3touch.cpp 2012-08-27 21:41:43 +0000 | |||
1302 | +++ test/regular/intermittent_3touch.cpp 2013-03-25 13:49:07 +0000 | |||
1303 | @@ -25,7 +25,7 @@ | |||
1304 | 25 | SendDeviceAddedEvent(time); | 25 | SendDeviceAddedEvent(time); |
1305 | 26 | 26 | ||
1306 | 27 | UGSubscription subscription = | 27 | UGSubscription subscription = |
1308 | 28 | CreateSubscription(3, UGGestureTypeTouch, device_ptr.get(), fake_window_id); | 28 | CreateSubscription(3, UGGestureTypeTouch, fake_window_id); |
1309 | 29 | if (!subscription) return; | 29 | if (!subscription) return; |
1310 | 30 | 30 | ||
1311 | 31 | time = 20531903; | 31 | time = 20531903; |
1312 | 32 | 32 | ||
1313 | === modified file 'test/regular/one-touch-gest-finished.cpp' | |||
1314 | --- test/regular/one-touch-gest-finished.cpp 2012-08-27 21:41:43 +0000 | |||
1315 | +++ test/regular/one-touch-gest-finished.cpp 2013-03-25 13:49:07 +0000 | |||
1316 | @@ -10,7 +10,7 @@ | |||
1317 | 10 | TEST_F(SingleTouchGestureTest, QuickTapEndsWithConstructionFinished) | 10 | TEST_F(SingleTouchGestureTest, QuickTapEndsWithConstructionFinished) |
1318 | 11 | { | 11 | { |
1319 | 12 | UGStatus status; | 12 | UGStatus status; |
1321 | 13 | UFWindowId fake_window_id = 321; | 13 | fake_window_id = 321; |
1322 | 14 | uint64_t time = 1234; | 14 | uint64_t time = 1234; |
1323 | 15 | 15 | ||
1324 | 16 | status = grail_new(&grail_handle); | 16 | status = grail_new(&grail_handle); |
1325 | @@ -19,30 +19,14 @@ | |||
1326 | 19 | SendDeviceAddedEvent(time); | 19 | SendDeviceAddedEvent(time); |
1327 | 20 | 20 | ||
1328 | 21 | UGSubscription subscription = | 21 | UGSubscription subscription = |
1330 | 22 | CreateSubscription(1, UGGestureTypeTouch, device_ptr.get(), fake_window_id); | 22 | CreateSubscription(1, UGGestureTypeTouch, fake_window_id); |
1331 | 23 | if (!subscription) return; | 23 | if (!subscription) return; |
1332 | 24 | 24 | ||
1333 | 25 | time += 10; | 25 | time += 10; |
1347 | 26 | struct UFTouch_ touch_struct; | 26 | BeginTouch(1); |
1335 | 27 | touch_struct.id = 1; | ||
1336 | 28 | touch_struct.state = UFTouchStateBegin; | ||
1337 | 29 | touch_struct.window_x = 10.0f; | ||
1338 | 30 | touch_struct.window_y = 10.0f; | ||
1339 | 31 | touch_struct.device_x = 100.0f; | ||
1340 | 32 | touch_struct.device_y = 100.0f; | ||
1341 | 33 | touch_struct.time = time; | ||
1342 | 34 | touch_struct.start_time = touch_struct.time; | ||
1343 | 35 | touch_struct.owned = 0; | ||
1344 | 36 | touch_struct.pending_end = 0; | ||
1345 | 37 | |||
1346 | 38 | SendFrameEvent(time, fake_window_id, touch_struct); | ||
1348 | 39 | 27 | ||
1349 | 40 | time += 10; | 28 | time += 10; |
1355 | 41 | touch_struct.state = UFTouchStateUpdate; | 29 | GiveTouchOwnership(1); |
1351 | 42 | touch_struct.owned = 1; // ownership will trigger delivery of grail events. | ||
1352 | 43 | touch_struct.time = time; | ||
1353 | 44 | |||
1354 | 45 | SendFrameEvent(time, fake_window_id, touch_struct); | ||
1356 | 46 | 30 | ||
1357 | 47 | // There should now be two grail events, corresponding to the frame | 31 | // There should now be two grail events, corresponding to the frame |
1358 | 48 | // event that were sent, waiting to be processed. | 32 | // event that were sent, waiting to be processed. |
1359 | @@ -80,10 +64,7 @@ | |||
1360 | 80 | // now end the touch | 64 | // now end the touch |
1361 | 81 | 65 | ||
1362 | 82 | time += 10; | 66 | time += 10; |
1367 | 83 | touch_struct.state = UFTouchStateEnd; | 67 | EndTouch(1); |
1364 | 84 | touch_struct.time = time; | ||
1365 | 85 | |||
1366 | 86 | SendFrameEvent(time, fake_window_id, touch_struct); | ||
1368 | 87 | 68 | ||
1369 | 88 | // An end event should come and its "construction finished" property should be true | 69 | // An end event should come and its "construction finished" property should be true |
1370 | 89 | 70 | ||
1371 | 90 | 71 | ||
1372 | === modified file 'test/regular/pending-end.cpp' | |||
1373 | --- test/regular/pending-end.cpp 2012-08-27 21:41:43 +0000 | |||
1374 | +++ test/regular/pending-end.cpp 2013-03-25 13:49:07 +0000 | |||
1375 | @@ -18,7 +18,7 @@ | |||
1376 | 18 | 18 | ||
1377 | 19 | UGSubscription sub_3touch = | 19 | UGSubscription sub_3touch = |
1378 | 20 | CreateSubscription(3, UGGestureTypeTouch | UGGestureTypeDrag | UGGestureTypePinch, | 20 | CreateSubscription(3, UGGestureTypeTouch | UGGestureTypeDrag | UGGestureTypePinch, |
1380 | 21 | device_ptr.get(), fake_window_id); | 21 | fake_window_id); |
1381 | 22 | ASSERT_NE(nullptr, sub_3touch); | 22 | ASSERT_NE(nullptr, sub_3touch); |
1382 | 23 | 23 | ||
1383 | 24 | time = 13688369; | 24 | time = 13688369; |
1384 | @@ -41,15 +41,17 @@ | |||
1385 | 41 | for (int i=1; i<=4; ++i) | 41 | for (int i=1; i<=4; ++i) |
1386 | 42 | { | 42 | { |
1387 | 43 | time += 100; | 43 | time += 100; |
1392 | 44 | SetTouchWindowCoords(1, 30.0f, i*10.0f); | 44 | UFBackendFrame frame = frame_backend_frame_create_next(previous_frame_); |
1393 | 45 | SetTouchWindowCoords(2, 40.0f, i*10.0f); | 45 | frame_backend_frame_set_device(frame, device_); |
1394 | 46 | SetTouchWindowCoords(3, 50.0f, i*10.0f); | 46 | frame_backend_frame_set_window_id(frame, fake_window_id); |
1395 | 47 | UpdateTouches(); | 47 | SetTouchWindowCoords(frame, 1, 30.0f, i*10.0f); |
1396 | 48 | SetTouchWindowCoords(frame, 2, 40.0f, i*10.0f); | ||
1397 | 49 | SetTouchWindowCoords(frame, 3, 50.0f, i*10.0f); | ||
1398 | 50 | SendFrameEvent(time, frame); | ||
1399 | 48 | } | 51 | } |
1400 | 49 | 52 | ||
1401 | 50 | time = 13688877; | 53 | time = 13688877; |
1404 | 51 | FindTouch(1)->pending_end = 1; | 54 | SendTouchPendingEnd(1); |
1403 | 52 | UpdateTouches(); | ||
1405 | 53 | 55 | ||
1406 | 54 | ProcessGrailEvents(); | 56 | ProcessGrailEvents(); |
1407 | 55 | // no gesture slices yet since not all touches are owned | 57 | // no gesture slices yet since not all touches are owned |
1408 | 56 | 58 | ||
1409 | === modified file 'test/regular/still-gest-finishes.cpp' | |||
1410 | --- test/regular/still-gest-finishes.cpp 2012-08-27 21:41:43 +0000 | |||
1411 | +++ test/regular/still-gest-finishes.cpp 2013-03-25 13:49:07 +0000 | |||
1412 | @@ -19,30 +19,14 @@ | |||
1413 | 19 | SendDeviceAddedEvent(time); | 19 | SendDeviceAddedEvent(time); |
1414 | 20 | 20 | ||
1415 | 21 | UGSubscription subscription = | 21 | UGSubscription subscription = |
1417 | 22 | CreateSubscription(1, UGGestureTypeTouch, device_ptr.get(), fake_window_id); | 22 | CreateSubscription(1, UGGestureTypeTouch, fake_window_id); |
1418 | 23 | if (!subscription) return; | 23 | if (!subscription) return; |
1419 | 24 | 24 | ||
1420 | 25 | time += 10; | 25 | time += 10; |
1434 | 26 | struct UFTouch_ touch_struct; | 26 | BeginTouch(1); |
1422 | 27 | touch_struct.id = 1; | ||
1423 | 28 | touch_struct.state = UFTouchStateBegin; | ||
1424 | 29 | touch_struct.window_x = 10.0f; | ||
1425 | 30 | touch_struct.window_y = 10.0f; | ||
1426 | 31 | touch_struct.device_x = 100.0f; | ||
1427 | 32 | touch_struct.device_y = 100.0f; | ||
1428 | 33 | touch_struct.time = time; | ||
1429 | 34 | touch_struct.start_time = touch_struct.time; | ||
1430 | 35 | touch_struct.owned = 0; | ||
1431 | 36 | touch_struct.pending_end = 0; | ||
1432 | 37 | |||
1433 | 38 | SendFrameEvent(time, fake_window_id, touch_struct); | ||
1435 | 39 | 27 | ||
1436 | 40 | time += 10; | 28 | time += 10; |
1442 | 41 | touch_struct.state = UFTouchStateUpdate; | 29 | GiveTouchOwnership(1); // ownership will trigger delivery of grail events. |
1438 | 42 | touch_struct.owned = 1; // ownership will trigger delivery of grail events. | ||
1439 | 43 | touch_struct.time = time; | ||
1440 | 44 | |||
1441 | 45 | SendFrameEvent(time, fake_window_id, touch_struct); | ||
1443 | 46 | 30 | ||
1444 | 47 | // There should now be two grail events, corresponding to the frame | 31 | // There should now be two grail events, corresponding to the frame |
1445 | 48 | // event that were sent, waiting to be processed. | 32 | // event that were sent, waiting to be processed. |
1446 | 49 | 33 | ||
1447 | === modified file 'tools/common/device.c' | |||
1448 | --- tools/common/device.c 2012-06-21 20:30:14 +0000 | |||
1449 | +++ tools/common/device.c 2013-03-25 13:49:07 +0000 | |||
1450 | @@ -5,9 +5,8 @@ | |||
1451 | 5 | * Copyright (C) 2010-2011 Canonical Ltd. | 5 | * Copyright (C) 2010-2011 Canonical Ltd. |
1452 | 6 | * | 6 | * |
1453 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
1457 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
1458 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
1456 | 10 | * option) any later version. | ||
1459 | 11 | * | 10 | * |
1460 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
1461 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
1462 | 14 | 13 | ||
1463 | === modified file 'tools/common/device.h' | |||
1464 | --- tools/common/device.h 2012-06-21 20:30:14 +0000 | |||
1465 | +++ tools/common/device.h 2013-03-25 13:49:07 +0000 | |||
1466 | @@ -5,9 +5,8 @@ | |||
1467 | 5 | * Copyright (C) 2010-2011 Canonical Ltd. | 5 | * Copyright (C) 2010-2011 Canonical Ltd. |
1468 | 6 | * | 6 | * |
1469 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
1473 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
1474 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
1472 | 10 | * option) any later version. | ||
1475 | 11 | * | 10 | * |
1476 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
1477 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
1478 | 14 | 13 | ||
1479 | === modified file 'tools/common/servertime.c' | |||
1480 | --- tools/common/servertime.c 2012-06-21 20:30:14 +0000 | |||
1481 | +++ tools/common/servertime.c 2013-03-25 13:49:07 +0000 | |||
1482 | @@ -5,9 +5,8 @@ | |||
1483 | 5 | * Copyright (C) 2010-2011 Canonical Ltd. | 5 | * Copyright (C) 2010-2011 Canonical Ltd. |
1484 | 6 | * | 6 | * |
1485 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
1489 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
1490 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
1488 | 10 | * option) any later version. | ||
1491 | 11 | * | 10 | * |
1492 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
1493 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
1494 | 14 | 13 | ||
1495 | === modified file 'tools/common/servertime.h' | |||
1496 | --- tools/common/servertime.h 2012-06-21 20:30:14 +0000 | |||
1497 | +++ tools/common/servertime.h 2013-03-25 13:49:07 +0000 | |||
1498 | @@ -5,9 +5,8 @@ | |||
1499 | 5 | * Copyright (C) 2010-2011 Canonical Ltd. | 5 | * Copyright (C) 2010-2011 Canonical Ltd. |
1500 | 6 | * | 6 | * |
1501 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
1505 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
1506 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
1504 | 10 | * option) any later version. | ||
1507 | 11 | * | 10 | * |
1508 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
1509 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
1510 | 14 | 13 | ||
1511 | === modified file 'tools/common/slice.c' | |||
1512 | --- tools/common/slice.c 2012-06-21 20:30:14 +0000 | |||
1513 | +++ tools/common/slice.c 2013-03-25 13:49:07 +0000 | |||
1514 | @@ -5,9 +5,8 @@ | |||
1515 | 5 | * Copyright (C) 2010-2011 Canonical Ltd. | 5 | * Copyright (C) 2010-2011 Canonical Ltd. |
1516 | 6 | * | 6 | * |
1517 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
1521 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
1522 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
1520 | 10 | * option) any later version. | ||
1523 | 11 | * | 10 | * |
1524 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
1525 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
1526 | 14 | 13 | ||
1527 | === modified file 'tools/common/slice.h' | |||
1528 | --- tools/common/slice.h 2012-06-21 20:30:14 +0000 | |||
1529 | +++ tools/common/slice.h 2013-03-25 13:49:07 +0000 | |||
1530 | @@ -5,9 +5,8 @@ | |||
1531 | 5 | * Copyright (C) 2010-2011 Canonical Ltd. | 5 | * Copyright (C) 2010-2011 Canonical Ltd. |
1532 | 6 | * | 6 | * |
1533 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
1537 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
1538 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
1536 | 10 | * option) any later version. | ||
1539 | 11 | * | 10 | * |
1540 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
1541 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
1542 | 14 | 13 | ||
1543 | === modified file 'tools/grail-test-3-1.c' | |||
1544 | --- tools/grail-test-3-1.c 2012-08-27 21:52:42 +0000 | |||
1545 | +++ tools/grail-test-3-1.c 2013-03-25 13:49:07 +0000 | |||
1546 | @@ -5,9 +5,8 @@ | |||
1547 | 5 | * Copyright (C) 2010-2011 Canonical Ltd. | 5 | * Copyright (C) 2010-2011 Canonical Ltd. |
1548 | 6 | * | 6 | * |
1549 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
1553 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
1554 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
1552 | 10 | * option) any later version. | ||
1555 | 11 | * | 10 | * |
1556 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
1557 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
1558 | 14 | 13 | ||
1559 | === modified file 'tools/grail-test-atomic.c' | |||
1560 | --- tools/grail-test-atomic.c 2012-08-27 21:52:42 +0000 | |||
1561 | +++ tools/grail-test-atomic.c 2013-03-25 13:49:07 +0000 | |||
1562 | @@ -5,9 +5,8 @@ | |||
1563 | 5 | * Copyright (C) 2010-2011 Canonical Ltd. | 5 | * Copyright (C) 2010-2011 Canonical Ltd. |
1564 | 6 | * | 6 | * |
1565 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
1569 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
1570 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
1568 | 10 | * option) any later version. | ||
1571 | 11 | * | 10 | * |
1572 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
1573 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
1574 | 14 | 13 | ||
1575 | === modified file 'tools/grail-test-edge.c' | |||
1576 | --- tools/grail-test-edge.c 2012-08-27 21:52:42 +0000 | |||
1577 | +++ tools/grail-test-edge.c 2013-03-25 13:49:07 +0000 | |||
1578 | @@ -5,9 +5,8 @@ | |||
1579 | 5 | * Copyright (C) 2010-2011 Canonical Ltd. | 5 | * Copyright (C) 2010-2011 Canonical Ltd. |
1580 | 6 | * | 6 | * |
1581 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
1585 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
1586 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
1584 | 10 | * option) any later version. | ||
1587 | 11 | * | 10 | * |
1588 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
1589 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
1590 | 14 | 13 | ||
1591 | === modified file 'tools/grail-test-propagation.c' | |||
1592 | --- tools/grail-test-propagation.c 2012-08-27 21:52:42 +0000 | |||
1593 | +++ tools/grail-test-propagation.c 2013-03-25 13:49:07 +0000 | |||
1594 | @@ -5,9 +5,8 @@ | |||
1595 | 5 | * Copyright (C) 2010-2011 Canonical Ltd. | 5 | * Copyright (C) 2010-2011 Canonical Ltd. |
1596 | 6 | * | 6 | * |
1597 | 7 | * This program is free software: you can redistribute it and/or modify it | 7 | * This program is free software: you can redistribute it and/or modify it |
1601 | 8 | * under the terms of the GNU General Public License as published by the | 8 | * under the terms of version 3 of the GNU General Public License as published |
1602 | 9 | * Free Software Foundation, either version 3 of the License, or (at your | 9 | * by the Free Software Foundation. |
1600 | 10 | * option) any later version. | ||
1603 | 11 | * | 10 | * |
1604 | 12 | * This program is distributed in the hope that it will be useful, but | 11 | * This program is distributed in the hope that it will be useful, but |
1605 | 13 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of |
looks ok.