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