chromiumos/platform/mttools.git
24 hours agoVersion 1.0 of extension. Adds button to feedback pages to view logs. 38/58538/5 master
WeiNan-Peter, Wen [Thu, 13 Jun 2013 14:44:01 +0000 (10:44 -0400)]
Version 1.0 of extension. Adds button to feedback pages to view logs.

Clicking on the button opens a new mtedit.html page that automatically
loads system_logs from the original feedback page. The button is added
by a content script that runs on feedback pages, whenever the hash
changes and a click is made.

Icons are just temporary ones resized from feedback page.

BUG=chromium:248922
TEST=Works locally.

Change-Id: Ib9483120c237703b6f3ef3401a1d34080b999b42
Reviewed-on: https://gerrit.chromium.org/gerrit/58538
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Tested-by: WeiNan-Peter, Wen <wnwen@chromium.org>
Commit-Queue: WeiNan-Peter, Wen <wnwen@chromium.org>

2 days agoRefactoring: restructuring of files 74/58574/4 stabilize-4287.B stabilize-ryan
Dennis Kempin [Thu, 13 Jun 2013 20:55:18 +0000 (13:55 -0700)]
Refactoring: restructuring of files

Every mttool (mtedit/mtreplay and future tools) now follows the same
structure and exposes a python api next to an optional command line
tool.
The replay tool has been renamed MTReplay and moved out of mtlib and
will gain a command line interface in a later cl.
This refactoring is to prepare mtlib to support MTReplay as a
self-contained replay tool.

BUG=chromium:249477
TEST=manually check if touchtests and mtedit are still functional

Change-Id: If62fcbe2f5fc7bd2dfc71435a3375bbe087db212
Reviewed-on: https://gerrit.chromium.org/gerrit/58574
Commit-Queue: Dennis Kempin <denniskempin@chromium.org>
Reviewed-by: Dennis Kempin <denniskempin@chromium.org>
Tested-by: Dennis Kempin <denniskempin@chromium.org>
6 days agoExtract inline script from mtedit.html to main.js. 37/58537/3 factory-pit-4280.B
WeiNan-Peter, Wen [Thu, 13 Jun 2013 14:58:39 +0000 (10:58 -0400)]
Extract inline script from mtedit.html to main.js.

Chrome extension requires js files to be in separate files, no logic
changes, direct copy. Only addition is the license lines in main.js.

BUG=chromium:248922
TEST=Still intact! :)

Change-Id: I243dc1322b3c2c771d22d2a65ff59010f3ae847a
Reviewed-on: https://gerrit.chromium.org/gerrit/58537
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: WeiNan-Peter, Wen <wnwen@chromium.org>
Tested-by: WeiNan-Peter, Wen <wnwen@chromium.org>
6 days agoMove web resources to subfolder in preparation for extension package. 36/58536/2
WeiNan-Peter, Wen [Thu, 13 Jun 2013 14:48:39 +0000 (10:48 -0400)]
Move web resources to subfolder in preparation for extension package.

After this move and the subsequent CLs, the extension will be deployed
out of the mtedit/extension/* folder. The python server has been
modified to serve everything from that folder instead.

BUG=chromium:248922
TEST=Everything works as usual, no logic changes, just making this a
separate CL to improve review readability.

Change-Id: Idaa98b394be26577ead60cdf8fb5bc401cd4007b
Reviewed-on: https://gerrit.chromium.org/gerrit/58536
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: WeiNan-Peter, Wen <wnwen@chromium.org>
Tested-by: WeiNan-Peter, Wen <wnwen@chromium.org>
8 days agoAdd touchscreen parsing/choosing for feedback report upload. 23/58123/4 factory-spring-4262.B
WeiNan-Peter, Wen [Mon, 10 Jun 2013 21:08:26 +0000 (17:08 -0400)]
Add touchscreen parsing/choosing for feedback report upload.

Support feedback reports with touchscreen logs from javascript.

BUG=chromium:241409
TEST=Works with feedback reports that may or may not have touchscreen
logs.

Change-Id: I0b0820f8e849e87081aab8bfc02f001027d4ae4a
Reviewed-on: https://gerrit.chromium.org/gerrit/58123
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: WeiNan-Peter, Wen <wnwen@chromium.org>
Tested-by: WeiNan-Peter, Wen <wnwen@chromium.org>
9 days agoAdd js zip support from mtedit's html interface. 49/57449/5 stabilize-4255.B
WeiNan-Peter, Wen [Wed, 5 Jun 2013 13:49:49 +0000 (09:49 -0400)]
Add js zip support from mtedit's html interface.

Used js-unzip and js-inflate to read zip file data.

BUG=chromium:243306
TEST=Works for zip and bz2 uploads.

Change-Id: I0d939a94995172bae7be4e8ae2dd7cd11d3b3192
Reviewed-on: https://gerrit.chromium.org/gerrit/57449
Reviewed-by: Robert Flack <flackr@chromium.org>
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: WeiNan-Peter, Wen <wnwen@chromium.org>
Tested-by: WeiNan-Peter, Wen <wnwen@chromium.org>
2 weeks agoAdd PRESUBMIT config to allow alternate licensing. 12/57612/2
WeiNan-Peter, Wen [Wed, 5 Jun 2013 13:50:45 +0000 (09:50 -0400)]
Add PRESUBMIT config to allow alternate licensing.

In preparation for another CL to add open source js libraries.

BUG=chromium:243306
TEST=No logic changes, mtedit still works.

Change-Id: I0cdde8c51923c277c3fcdf45e4e6bb47f0f347af
Reviewed-on: https://gerrit.chromium.org/gerrit/57612
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: WeiNan-Peter, Wen <wnwen@chromium.org>
Tested-by: WeiNan-Peter, Wen <wnwen@chromium.org>
2 weeks agoFix js error when no screenshot exists for a touchscreen log. 10/57110/3
WeiNan-Peter, Wen [Thu, 30 May 2013 15:39:27 +0000 (11:39 -0400)]
Fix js error when no screenshot exists for a touchscreen log.

BUG=chromium:245269
TEST=No more js errors when a screenshot does not exist. Existing
screenshots still work fine.

Change-Id: Id9fec5eb0223e15946a4792ada8a52972678d5a7
Reviewed-on: https://gerrit.chromium.org/gerrit/57110
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: WeiNan-Peter, Wen <wnwen@chromium.org>
Tested-by: WeiNan-Peter, Wen <wnwen@chromium.org>
2 weeks agoFix errors caused by poor " replacement. 43/57443/2
WeiNan-Peter, Wen [Tue, 4 Jun 2013 12:32:32 +0000 (08:32 -0400)]
Fix errors caused by poor " replacement.

BUG=None
TEST=Verified both file and feedback urls produce no more errors.

Change-Id: Ib5e08c7f358df78b70a2572c7543e27309665ee2
Reviewed-on: https://gerrit.chromium.org/gerrit/57443
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: WeiNan-Peter, Wen <wnwen@chromium.org>
Tested-by: WeiNan-Peter, Wen <wnwen@chromium.org>
2 weeks agoAdd button to export currently selected range in evdev format. 09/56809/6
WeiNan-Peter, Wen [Wed, 22 May 2013 18:25:25 +0000 (14:25 -0400)]
Add button to export currently selected range in evdev format.

Reused text box for uploading/dragging in text files to display evdev
format output. Since it's just an evdev log when it is reloaded it is
automatically assumed to be a touchscreen log.

BUG=chromium:237144
TEST=Emits correct evdev log that gets parsed back to the correct view.

Change-Id: If8ac4ec6c6a1990dadbb983b9d4669b53d77bcbf
Reviewed-on: https://gerrit.chromium.org/gerrit/56809
Tested-by: WeiNan-Peter, Wen <wnwen@chromium.org>
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: WeiNan-Peter, Wen <wnwen@chromium.org>

2 weeks agoReplace " with ' in mtedit.html inline javascript. 11/56811/4
WeiNan-Peter, Wen [Tue, 28 May 2013 15:36:03 +0000 (11:36 -0400)]
Replace " with ' in mtedit.html inline javascript.

BUG=none
TEST=No logic change.

Change-Id: Icfcac708d980d482f453ba95d3b55f2828143ef1
Reviewed-on: https://gerrit.chromium.org/gerrit/56811
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Tested-by: WeiNan-Peter, Wen <wnwen@chromium.org>
Commit-Queue: WeiNan-Peter, Wen <wnwen@chromium.org>

3 weeks agoDraw screenshot on canvas instead of on element behind canvas. 04/56204/6
WeiNan-Peter, Wen [Thu, 23 May 2013 20:21:46 +0000 (16:21 -0400)]
Draw screenshot on canvas instead of on element behind canvas.

Zoom and panning now works with a screenshot.

BUG=chromium:240381
TEST=Tested with screenshot and without.
CQ-DEPEND=CL:56044

Change-Id: I5f064b43e176f48eeb03c7b3e14e066756f2292e
Reviewed-on: https://gerrit.chromium.org/gerrit/56204
Tested-by: WeiNan-Peter, Wen <wnwen@chromium.org>
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: WeiNan-Peter, Wen <wnwen@chromium.org>

3 weeks agoAdd support for the metrics gesture 28/55728/4
Tai-Hsu Lin [Mon, 20 May 2013 06:51:05 +0000 (14:51 +0800)]
Add support for the metrics gesture

This patch adds support for the metrics gesture (GestureMetrics) in
mttools. The metrics gesture is used to expose vital stats that we
would like to catch with the UMA system in Chrome.

BUG=chromium:237683
TEST=Regression test works, no regression.

CQ-DEPEND=I5e6c9bd5489f4e5aeb90e0d7d7f48cd3e068d08f

Change-Id: I66fa6537e792e8f8bb8a0e71b13ceb1631146c10
Reviewed-on: https://gerrit.chromium.org/gerrit/55728
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: Tai-Hsu Lin <sheckylin@chromium.org>
Tested-by: Tai-Hsu Lin <sheckylin@chromium.org>
3 weeks agoMake downloading screenshot default for touchscreens. Resolve screenshot 44/56044/4
WeiNan-Peter, Wen [Tue, 21 May 2013 15:17:54 +0000 (11:17 -0400)]
Make downloading screenshot default for touchscreens. Resolve screenshot
caching.

Using resolution 1, always cache a screenshot file if it is used. An
empty file is used if there is no screenshot available for the feedback
report.

Allow loading previously downloaded screenshots by attempting to load a
screenshot with the same name as the zip file.

BUG=chromium:240384,chromium:241540
TEST=Works for feedback reports with and without screenshots. Also works
with expired cookies (asks for creds again).

Change-Id: I4a14c6d82711dad1c69ddfcfd395d38b06a156a3
Reviewed-on: https://gerrit.chromium.org/gerrit/56044
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: WeiNan-Peter, Wen <wnwen@chromium.org>
Tested-by: WeiNan-Peter, Wen <wnwen@chromium.org>
4 weeks agoMove information about touches to a popup. 80/51480/5
WeiNan-Peter, Wen [Wed, 15 May 2013 15:39:17 +0000 (11:39 -0400)]
Move information about touches to a popup.

Clicking on touches in touchscreen mode brings up a popup with relevant
touch information rather than having a static box below the display
pane.

BUG=chromium:237145
TEST=Tested for file and feedback reports.

Change-Id: Ie51baa301a00a7f9bcfdb9e31c595ad0ab4da749
Reviewed-on: https://gerrit.chromium.org/gerrit/51480
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: WeiNan-Peter, Wen <wnwen@chromium.org>
Tested-by: WeiNan-Peter, Wen <wnwen@chromium.org>
4 weeks agoFix hardware parameter parsing and temporary fix for screenshot. 88/51488/2
WeiNan-Peter, Wen [Thu, 16 May 2013 19:31:21 +0000 (15:31 -0400)]
Fix hardware parameter parsing and temporary fix for screenshot.

The first number after 0/1 in the evdev log is the current position of
the first touch rather than the left/top parameter. Left/top should
always be the default 0.

Temporarily only try to download screenshots if the report is not
already cached to avoid spurious errors. Full resolution when
chromium:241540 is fixed.

BUG=chromium:241412
TEST=Works fine on log.dat as well as feedback reports.

Change-Id: I05e06bdaa808f4377b1c3c04142c560f38716afc
Reviewed-on: https://gerrit.chromium.org/gerrit/51488
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: WeiNan-Peter, Wen <wnwen@chromium.org>
Tested-by: WeiNan-Peter, Wen <wnwen@chromium.org>
5 weeks agoParse touchscreen log from feedback report. 99/51299/4
WeiNan-Peter, Wen [Wed, 15 May 2013 15:26:09 +0000 (11:26 -0400)]
Parse touchscreen log from feedback report.

Used as much common code to find/load touchscreen logs and touchpad
logs.

Removed touchscreen toggle and just do it implicitly as the user ever
only loads one log, so just automatically switch.

BUG=chromium:240379
TEST=Works for feedback urls that contain touchscreen and touchpad logs.

Change-Id: I4e2fa0065cc36f92b840c1152b2f4abc33d5617c
Reviewed-on: https://gerrit.chromium.org/gerrit/51299
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: WeiNan-Peter, Wen <wnwen@chromium.org>
Tested-by: WeiNan-Peter, Wen <wnwen@chromium.org>
5 weeks agomtedit/log.py: Cache downloaded reports locally 58/51158/3 factory-spring-4131.B
Andrew de los Reyes [Tue, 14 May 2013 18:45:32 +0000 (11:45 -0700)]
mtedit/log.py: Cache downloaded reports locally

We should avoid hitting the server repeatedly when viewing the same
log multiple times.

BUG=chromium:240794
TEST=mtedit 'url' twice, saw the second time be very fast

Change-Id: I0c672629f76fad1b265cbfe4b02fe04d1f45646c
Reviewed-on: https://gerrit.chromium.org/gerrit/51158
Reviewed-by: Dennis Kempin <denniskempin@chromium.org>
Commit-Queue: Andrew de los Reyes <adlr@chromium.org>
Tested-by: Andrew de los Reyes <adlr@chromium.org>
5 weeks agoFix screenshot error when no screenshot is requested. 80/50980/2 factory-4128.B
WeiNan-Peter, Wen [Mon, 13 May 2013 13:32:29 +0000 (09:32 -0400)]
Fix screenshot error when no screenshot is requested.

BUG=chromium:237142,chromium:239890
TEST=Verfied spurious error message is fixed.

Change-Id: I77129990f85e324e67066a55e2b0d4ecbd7d58d2
Reviewed-on: https://gerrit.chromium.org/gerrit/50980
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: WeiNan-Peter, Wen <wnwen@chromium.org>
Tested-by: WeiNan-Peter, Wen <wnwen@chromium.org>
5 weeks agoRevert "Add option -c to attempt downloading and displaying screenshot." 67/50867/2
Andrew de los Reyes [Fri, 10 May 2013 19:38:43 +0000 (12:38 -0700)]
Revert "Add option -c to attempt downloading and displaying screenshot."

BUG=chromium:239890
TEST=mtedit
'https://feedback.corp.google.com/#/Report/835148591?context=ri'
worked

This reverts commit dc6e0fb46820c3acf5a5d1248383e44094159578.

Change-Id: Ibf7e5aee04be4c08af608e85d597c9eb8386ce22
Reviewed-on: https://gerrit.chromium.org/gerrit/50867
Commit-Queue: Andrew de los Reyes <adlr@chromium.org>
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Tested-by: Andrew de los Reyes <adlr@chromium.org>
5 weeks agoAdd option -c to attempt downloading and displaying screenshot. 67/50667/6
WeiNan-Peter, Wen [Thu, 9 May 2013 17:11:35 +0000 (13:11 -0400)]
Add option -c to attempt downloading and displaying screenshot.

Only available in touchscreen view. An error will be displayed if a
screenshot is requested but not available for a particular feedback url.
The -c option is needed when using "-d -o foo" if the screenshot should
also be downloaded as foo.jpg.

BUG=chromium:237142
TEST=Works for feedback url with and without screenshots. No effect on
other code paths without the -c option.

Change-Id: I680dfd03ec7b538809c9b6d8d30459b74ff09406
Reviewed-on: https://gerrit.chromium.org/gerrit/50667
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: WeiNan-Peter, Wen <wnwen@chromium.org>
Tested-by: WeiNan-Peter, Wen <wnwen@chromium.org>
5 weeks agotrimmer.cc: Better error handling 65/50465/3
Andrew de los Reyes [Wed, 8 May 2013 16:29:11 +0000 (09:29 -0700)]
trimmer.cc: Better error handling

BUG=chromium:239070
TEST=Able to make and replay new Spring regression test

Change-Id: I4cdedb6dc74e1280916bb0169ea3d9f25e8260d3
Reviewed-on: https://gerrit.chromium.org/gerrit/50465
Reviewed-by: Dennis Kempin <denniskempin@chromium.org>
Commit-Queue: Andrew de los Reyes <adlr@chromium.org>
Tested-by: Andrew de los Reyes <adlr@chromium.org>
6 weeks agoAdd checkbox for touch screen specific UI. 12/50312/3
WeiNan-Peter, Wen [Thu, 2 May 2013 20:46:28 +0000 (16:46 -0400)]
Add checkbox for touch screen specific UI.

Static resizing of input pane from 480x320 to 1080x720 for touch screen
mode.

BUG=chromium:237141
TEST=Both views work and loading either type of log automatically
switches to that view.

Change-Id: I04264890e84370b30e55f40c7c14f5f208327dce
Reviewed-on: https://gerrit.chromium.org/gerrit/50312
Commit-Queue: WeiNan-Peter, Wen <wnwen@chromium.org>
Tested-by: WeiNan-Peter, Wen <wnwen@chromium.org>
Reviewed-by: WeiNan-Peter, Wen <wnwen@chromium.org>
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
6 weeks agoIndent mtedit.html. Pure refactoring. 24/49924/3 release-R28-4100.B stabilize-4100.38.B
WeiNan-Peter, Wen [Thu, 2 May 2013 18:58:21 +0000 (14:58 -0400)]
Indent mtedit.html. Pure refactoring.

BUG=None
TEST=Still works, no logic changes.

Change-Id: I29f69259c8cf55a30086f056b4317cf547bdb3b7
Reviewed-on: https://gerrit.chromium.org/gerrit/49924
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Robert Flack <flackr@chromium.org>
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: WeiNan-Peter, Wen <wnwen@chromium.org>
Tested-by: WeiNan-Peter, Wen <wnwen@chromium.org>
6 weeks agoLoad and view touchscreen logs. 22/49922/2
WeiNan-Peter, Wen [Thu, 2 May 2013 18:48:52 +0000 (14:48 -0400)]
Load and view touchscreen logs.

BUG=chromium:233558
TEST=Both file and feedback urls work.

Change-Id: I847243cb113e29a631d679735f910288422e4713
Reviewed-on: https://gerrit.chromium.org/gerrit/49922
Reviewed-by: Robert Flack <flackr@chromium.org>
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: WeiNan-Peter, Wen <wnwen@chromium.org>
Tested-by: WeiNan-Peter, Wen <wnwen@chromium.org>
6 weeks agoAdd README to mttools project. 19/49919/2
WeiNan-Peter, Wen [Thu, 2 May 2013 18:36:43 +0000 (14:36 -0400)]
Add README to mttools project.

BUG=chromium:237137
TEST=No logic change, only adding text.

Change-Id: Ie1dddbe105c3a0c4204268979d27ba7d1195736a
Reviewed-on: https://gerrit.chromium.org/gerrit/49919
Reviewed-by: Robert Flack <flackr@chromium.org>
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: WeiNan-Peter, Wen <wnwen@chromium.org>
Tested-by: WeiNan-Peter, Wen <wnwen@chromium.org>
7 weeks agoreplay: Read the rest of the X properties 77/49077/3 stabilize-4068.0.B
Che-Liang Chiou [Wed, 24 Apr 2013 19:27:56 +0000 (12:27 -0700)]
replay: Read the rest of the X properties

Not all X properties are read by libevdev and thus those unread
properties cause CheckIntegrity error.  In addition, CMT uses some of
the X properties to override hardware properties from evdev; we should
do the same thing here.

BUG=none
TEST=Create touchtests for magic mouse, and no CheckIntegrity error

Change-Id: I210033b33741258b611918963f733d5e311fc294
Reviewed-on: https://gerrit.chromium.org/gerrit/49077
Tested-by: Che-Liang Chiou <clchiou@chromium.org>
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: Che-Liang Chiou <clchiou@chromium.org>

8 weeks agoreplay: allow to be run in GDB mode 30/48730/3
Dennis Kempin [Sat, 20 Apr 2013 00:09:47 +0000 (17:09 -0700)]
replay: allow to be run in GDB mode

BUG=chromium:233823
TEST=see other CL

Change-Id: I95aa1ba21351dafbdd80a4883219674dfd724e3c
Reviewed-on: https://gerrit.chromium.org/gerrit/48730
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: Dennis Kempin <denniskempin@chromium.org>
Tested-by: Dennis Kempin <denniskempin@chromium.org>
2 months agomtedit: Support --evdev parameter 54/47054/2 stabilize-4008.0.B stabilize-4035.0.B
Dennis Kempin [Mon, 1 Apr 2013 22:06:35 +0000 (15:06 -0700)]
mtedit: Support --evdev parameter

Support --evdev parameter to specify the evdev log file to use.

BUG=chromium:225550
TEST=mtedit test.log -e test.evdev

Change-Id: I478590dacc4dd2049dc42aab0bda5c4df60fc91c
Reviewed-on: https://gerrit.chromium.org/gerrit/47054
Reviewed-by: Charlie Mooney <charliemooney@chromium.org>
Tested-by: Dennis Kempin <denniskempin@chromium.org>
Commit-Queue: Dennis Kempin <denniskempin@chromium.org>

2 months agoMTEdit: Support loading local report archives directly 07/46907/3
Dennis Kempin [Fri, 29 Mar 2013 21:21:42 +0000 (14:21 -0700)]
MTEdit: Support loading local report archives directly

Instead of downloading them from the feedback report we can now also
open the zip/bz2 archives that we already downloaded.

BUG=chromium:217358
TEST=mtedit report-....bz2

Change-Id: Iff647b4de79ccf3fa5bdf01fa3a4ac9089497b74
Reviewed-on: https://gerrit.chromium.org/gerrit/46907
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: Dennis Kempin <denniskempin@chromium.org>
Tested-by: Dennis Kempin <denniskempin@chromium.org>
2 months agoReplay: Run in directory of event file 92/46892/2
Dennis Kempin [Fri, 29 Mar 2013 18:24:41 +0000 (11:24 -0700)]
Replay: Run in directory of event file

Instead of running the replay processes in the cwd, the process will run
in the directory of the event file. This allows local files to be
accessed.

BUG=chromium:214518
TEST=Test with Change-Id: I1af3d3f821f9b60671eb2ffdf887123a60ddd9b5

Change-Id: Id8191d854cc684468c970f78d0488b0bde2aa708
Reviewed-on: https://gerrit.chromium.org/gerrit/46892
Reviewed-by: Charlie Mooney <charliemooney@chromium.org>
Commit-Queue: Dennis Kempin <denniskempin@chromium.org>
Tested-by: Dennis Kempin <denniskempin@chromium.org>
2 months agoreplay: PropProvider now injects properties as they are created 07/46807/3
Dennis Kempin [Thu, 28 Mar 2013 21:46:12 +0000 (14:46 -0700)]
replay: PropProvider now injects properties as they are created

This mimics the Xorg behavior for properties. This CL also cleans up
some of the code by storing all properties as strings and using
lexical_cast to coerce them to the target type. This eliminates much
of the conversion code.

BUG=chromium:24762
TEST=run touchtests and compare to before. No regressions.

Change-Id: If5aad298a46916c35fb1f259f14d0fda065cd366
Reviewed-on: https://gerrit.chromium.org/gerrit/46807
Reviewed-by: Charlie Mooney <charliemooney@chromium.org>
Tested-by: Charlie Mooney <charliemooney@chromium.org>
Commit-Queue: Dennis Kempin <denniskempin@chromium.org>

2 months agomtedit: support for new zip log files including multiple devices 10/46710/3
Dennis Kempin [Wed, 27 Mar 2013 23:03:46 +0000 (16:03 -0700)]
mtedit: support for new zip log files including multiple devices

mtedit will now prompt whenever it encounters multiple log files inside
the tarball. Also it now supports the new Zip format of feedback reports

BUG=chromium:224438
TEST=mtedit with one of the latest feedback reports

Change-Id: Ie114ed178a134234c04d1a20d11484bde10527d8
Reviewed-on: https://gerrit.chromium.org/gerrit/46710
Commit-Queue: Dennis Kempin <denniskempin@chromium.org>
Reviewed-by: Dennis Kempin <denniskempin@chromium.org>
Tested-by: Dennis Kempin <denniskempin@chromium.org>
2 months agoreplay: Added support for different device classes 75/46675/3
Dennis Kempin [Wed, 27 Mar 2013 21:15:27 +0000 (14:15 -0700)]
replay: Added support for different device classes

Gestures supports different device classes, such as multitouch mice.
This CL adds a parameter to replay to specify the device class.

BUG=chromium:24220
TEST=generate a test case with a multi touch mouse

Change-Id: Ia307b5196239cd27b5726ad952dee35e0ad9fe77
Reviewed-on: https://gerrit.chromium.org/gerrit/46675
Commit-Queue: Dennis Kempin <denniskempin@chromium.org>
Reviewed-by: Dennis Kempin <denniskempin@chromium.org>
Tested-by: Dennis Kempin <denniskempin@chromium.org>
2 months agomtedit: show error when tar file cannot be read 47/46547/3
Dennis Kempin [Tue, 26 Mar 2013 20:58:46 +0000 (13:58 -0700)]
mtedit: show error when tar file cannot be read

sometimes the tarball is empty or just does not contain the file we are
looking for.

BUG=chromium:187044
TEST=see bug report. run command, should show error.

Change-Id: I29b7ab4f4061f0311bb8f2a0efaef7b248507c83
Reviewed-on: https://gerrit.chromium.org/gerrit/46547
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Tested-by: Dennis Kempin <denniskempin@chromium.org>
Commit-Queue: Dennis Kempin <denniskempin@chromium.org>

3 months agoReplay: Read info from log file 00/45500/5 release-R27-3912.B stabilize-3881.0.B stabilize-3912.79.B toolchainA
Dennis Kempin [Thu, 14 Mar 2013 21:52:51 +0000 (14:52 -0700)]
Replay: Read info from log file

This CL allows replay to read device info from log files. It allows
new-style log files to be replayed without a matching device file.
Information read from the log file will always override information from
the device file.

BUG=chromium-os:38859
TEST=run touchtests. (it will automatically recompile replay)

Change-Id: I220dc8adaebf508eb20f1971af0d721dcdf0a455
Reviewed-on: https://gerrit.chromium.org/gerrit/45500
Commit-Queue: Dennis Kempin <denniskempin@chromium.org>
Reviewed-by: Dennis Kempin <denniskempin@chromium.org>
Tested-by: Dennis Kempin <denniskempin@chromium.org>
3 months agoReplay: Refactoring - use FILE* instead of streams 14/43314/5
Dennis Kempin [Thu, 14 Feb 2013 21:54:48 +0000 (13:54 -0800)]
Replay: Refactoring - use FILE* instead of streams

The underlying libraries are working with the C FILE api, but
replay is working with C++ iostreams. This is causing troubles
and unnecessary conversions. This refactoring removes the
GenericStream class and replaces it with a Stream class. The
Stream class wraps a FILE pointer to allow it to be used with RAII
in C++ code.
The code has been updated to reflect the change. Properties are
no longer read from a stream, but provided as a string which is read in
the main() function
The evemu_device class is deprecated and will be removed in a follow
CL.
Plus this CL contains a few style guideline cleanups!

BUG=chromium-os:38304
TEST=make tests

Change-Id: I78616a679d7fc3ff55a1fec49a0e09f47f54374c
Reviewed-on: https://gerrit.chromium.org/gerrit/43314
Commit-Queue: Dennis Kempin <denniskempin@chromium.org>
Reviewed-by: Dennis Kempin <denniskempin@chromium.org>
Tested-by: Dennis Kempin <denniskempin@chromium.org>
3 months agomtedit: Show SwipeLift gestures 12/44412/2 factory-spring-3842.B
Andrew de los Reyes [Fri, 1 Mar 2013 20:36:40 +0000 (12:36 -0800)]
mtedit: Show SwipeLift gestures

BUG=chromium-os:39445
TEST=Manually saw them in viewer

Change-Id: Id2dcbe4a2e80a626bf16ffc42ef3a074fec869a7
Reviewed-on: https://gerrit.chromium.org/gerrit/44412
Reviewed-by: Dennis Kempin <denniskempin@chromium.org>
Commit-Queue: Andrew de los Reyes <adlr@chromium.org>
Tested-by: Andrew de los Reyes <adlr@chromium.org>
3 months agoMakefile: Does not abort on errors 00/44300/3
Dennis Kempin [Thu, 28 Feb 2013 19:47:25 +0000 (11:47 -0800)]
Makefile: Does not abort on errors

The foreach loop writes all commands in one line.. which causes make not
to abort if one command fails. This way make result is successful even
though there were build errors.

BUG=chromium-os:39367
TEST=add a build error to gestures/libevdev/replay
then run $ make in-place
check $ echo $?

Change-Id: I15a0fe3f3f111c61576bae1e55316b979751535f
Reviewed-on: https://gerrit.chromium.org/gerrit/44300
Commit-Queue: Dennis Kempin <denniskempin@chromium.org>
Reviewed-by: Dennis Kempin <denniskempin@chromium.org>
Tested-by: Dennis Kempin <denniskempin@chromium.org>
3 months agofix Makefile for ebuild per platform 25/44025/8 firmware-spring-3824.4.B firmware-spring-3824.55.B firmware-spring-3824.B firmware-spring-3833.B
Chung-yih Wang [Tue, 26 Feb 2013 07:24:10 +0000 (15:24 +0800)]
fix Makefile for ebuild per platform

As mttools is required when the regression test is running as a
BVT test, the patch tries to install the replay utilities into
touchpad-tests framework for emerge target instead.

BUG=chromium-os:37644
TEST=in chroot, the command 'sudo make install' should make no
  difference with the patch. For emerge on a target board,
  try the following steps:
    1. setup_board --board=lumpy
    2. cros_workon --board=lumpy start mttools
    3. emerge-lumpy mttools
  And check if the mtlib and mtedit under mttools are built and
are installed under
    /build/lumpy/usr/local/autotest/client/deps/touchpad-tests/framework

Change-Id: Id7bf6bfa9d296dd77fb019c41914505063b1762d
Reviewed-on: https://gerrit.chromium.org/gerrit/44025
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Reviewed-by: Joseph Shyh-In Hwang <josephsih@chromium.org>
Commit-Queue: Chung-yih Wang <cywang@chromium.org>
Tested-by: Chung-yih Wang <cywang@chromium.org>
3 months agoReplay: Updated to use in-place folders from source tree 65/44065/2
Dennis Kempin [Tue, 26 Feb 2013 19:10:54 +0000 (11:10 -0800)]
Replay: Updated to use in-place folders from source tree

Replay can now be compiled and run without having libevdev and gestures
installed into the chroot, but installed into the in-place folder inside
their source folders.

BUG=chromium-os:39158
TEST=remove old symlinks in /usr/lib
then run in touchpad-tests:
$ make setup-in-place
$ touchtests

Change-Id: Ic59dc513dcb1d25fbf29b4a33e4d199f22de46c8
Reviewed-on: https://gerrit.chromium.org/gerrit/44065
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: Dennis Kempin <denniskempin@chromium.org>
Tested-by: Dennis Kempin <denniskempin@chromium.org>
3 months agomttools: Updating common.mk to ToT 33/43933/2
Ryan Harrison [Mon, 25 Feb 2013 20:57:21 +0000 (15:57 -0500)]
mttools: Updating common.mk to ToT

This update replaces the current common.mk used in this project with the newest
version. This will allow all of the common.mk based projects to be on the same
version for debugging and enables profiling support.

BUG=chromium-os:37854
TEST=Per denniskempin@'s instructions ran `sudo make setup-in-place` to confirm
     that the package still built.

Change-Id: I088f46f7950099f8f9e5e2f2cd8110a5d05f0195
Reviewed-on: https://gerrit.chromium.org/gerrit/43933
Tested-by: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Dennis Kempin <denniskempin@chromium.org>
Tested-by: Dennis Kempin <denniskempin@chromium.org>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>

3 months agoAdded in-place make target 16/43816/2
Dennis Kempin [Fri, 22 Feb 2013 20:56:45 +0000 (12:56 -0800)]
Added in-place make target

The in-place make target will redirect the target to make in-place
for libevdev and gestures. It will also rebuild replay if necessary.
The setup-in-place command sets up all dependencies with symlinks to
the source folder.

BUG=chromium-os:38304
TEST=see touchpad-tests

Change-Id: I76adfcd21b68a32a29aefe4e8fe7bacb915c409d
Reviewed-on: https://gerrit.chromium.org/gerrit/43816
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: Dennis Kempin <denniskempin@chromium.org>
Tested-by: Dennis Kempin <denniskempin@chromium.org>
3 months agoMoved common.mk to project root 15/43815/2
Dennis Kempin [Fri, 22 Feb 2013 18:49:23 +0000 (10:49 -0800)]
Moved common.mk to project root

This allows common.mk to be automatically updated.

BUG=chromium-os:39108
TEST=make

Change-Id: I1f7582c73f4e9689fe5ae57e796f385d0578d4b5
Reviewed-on: https://gerrit.chromium.org/gerrit/43815
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: Dennis Kempin <denniskempin@chromium.org>
Tested-by: Dennis Kempin <denniskempin@chromium.org>
3 months agoreplay: Update to use latest version of baselib 47/43747/2
Dennis Kempin [Thu, 21 Feb 2013 23:29:18 +0000 (15:29 -0800)]
replay: Update to use latest version of baselib

With gestures being updated a new baselib version we have to link
against the same one.

BUG=chromium-os:39125
TEST=make
then run touchtests. It works again.

Change-Id: I4303f1a403788d2b793cf539b295be34f52f463a
Reviewed-on: https://gerrit.chromium.org/gerrit/43747
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: Dennis Kempin <denniskempin@chromium.org>
Tested-by: Dennis Kempin <denniskempin@chromium.org>
3 months agoMTEdit: Load matching .evdev and .system log files 36/43636/2
Dennis Kempin [Wed, 20 Feb 2013 22:05:19 +0000 (14:05 -0800)]
MTEdit: Load matching .evdev and .system log files

When loading log files from disk, filename.evdev and .system
should be loaded too. This allows logfiles on the disk to be treated
the same way as logfiles downloaded.

BUG=chromium-os:38304
TEST=Required for touchtests to work with latest CL, check if it does!

Change-Id: Ia8b2acb2dda9391faf2e78e808cb6c3df069dab5
Reviewed-on: https://gerrit.chromium.org/gerrit/43636
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: Dennis Kempin <denniskempin@chromium.org>
Tested-by: Dennis Kempin <denniskempin@chromium.org>
4 months agoMTEdit: Server was looking for mtview.html which is called mtedit.html 50/42950/3 release-R26-3701.B stabilize-3701.30.0 stabilize-3701.30.0b stabilize-3701.46.B stabilize-3701.81.B stabilize-bluetooth-smart toolchain-3701.42.B
Dennis Kempin [Fri, 8 Feb 2013 21:59:25 +0000 (13:59 -0800)]
MTEdit: Server was looking for mtview.html which is called mtedit.html

Proxy cache was hiding this issue. Now the server replies with the
correct HTML code.

BUG=chromium-os:38686
TEST=mtedit -s
Force reload the page

Change-Id: I7c11e90f782c92a974e1dd62a2c6d394b27c7e81
Reviewed-on: https://gerrit.chromium.org/gerrit/42950
Commit-Queue: Dennis Kempin <denniskempin@chromium.org>
Reviewed-by: Dennis Kempin <denniskempin@chromium.org>
Tested-by: Dennis Kempin <denniskempin@chromium.org>
4 months agoPorted CL 42876: Don't chdir 49/42949/4
Dennis Kempin [Fri, 8 Feb 2013 21:46:17 +0000 (13:46 -0800)]
Ported CL 42876: Don't chdir

This applies the last change from on the original source code
of tpview. Further development happens only in this repository.

BUG=chromium-os:38686
TEST=none

Change-Id: I3728eef56f0abd96d452ef4fa4e756390146fb66
Reviewed-on: https://gerrit.chromium.org/gerrit/42949
Commit-Queue: Dennis Kempin <denniskempin@chromium.org>
Reviewed-by: Dennis Kempin <denniskempin@chromium.org>
Tested-by: Dennis Kempin <denniskempin@chromium.org>
4 months agoAdded Package Layout and Makefile 99/42899/4
Dennis Kempin [Thu, 7 Feb 2013 22:26:37 +0000 (14:26 -0800)]
Added Package Layout and Makefile

The makefile installs a pth file into the python folders to make the
source folders directly discoverable in the module search path.
It also installs symlinks to /usr/bin for mtedit.
mtedit.py had to be renamed to main.py, otherwise python has conflicts
with mtedit.py and the package name mtedit.

BUG=chromium-os:38686
TEST=make install

Change-Id: I76d694c4cbb3a129c52941d15b016c78a96f22ea
Reviewed-on: https://gerrit.chromium.org/gerrit/42899
Reviewed-by: Dennis Kempin <denniskempin@chromium.org>
Commit-Queue: Dennis Kempin <denniskempin@chromium.org>
Tested-by: Dennis Kempin <denniskempin@chromium.org>
4 months agoAdded replay tool to mtlib 98/42898/2
Dennis Kempin [Wed, 6 Feb 2013 21:24:44 +0000 (13:24 -0800)]
Added replay tool to mtlib

MTLib will contain python modules to common functionality.
All command line tools (MTEdit, MTPlay and Touchtests) will need
access to the replay tool for either replays or trimming.
The C++ replay tool itself is "hidden" inside mtlib as it is only to be
accessed via the python module replay.py.
The code is an exact copy of the source from touchpad-tests/replay

BUG=chromium-os:38686
TEST=cd mtlib/replay && make tests
All tests pass.

Change-Id: If315e377487c534b62b3fdff56858b4069d153c7
Reviewed-on: https://gerrit.chromium.org/gerrit/42898
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: Dennis Kempin <denniskempin@chromium.org>
Tested-by: Dennis Kempin <denniskempin@chromium.org>
4 months agoRenamed MTView to MTEdit 97/42897/2
Dennis Kempin [Wed, 6 Feb 2013 21:20:57 +0000 (13:20 -0800)]
Renamed MTView to MTEdit

it's not just a viewer anymore, but also editing/trimming files.
An editor is also a viewer, so let's switch the name as long as it's
still easy.

BUG=chromium-os:38686
TEST=none

Change-Id: I6b312ef744745464557d1c88ac9ffc6e4a24fc2b
Reviewed-on: https://gerrit.chromium.org/gerrit/42897
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
Commit-Queue: Dennis Kempin <denniskempin@chromium.org>
Tested-by: Dennis Kempin <denniskempin@chromium.org>
4 months agomtview: Initial commit with current source from gestures/tpview 46/42746/1
Dennis Kempin [Wed, 6 Feb 2013 19:18:21 +0000 (11:18 -0800)]
mtview: Initial commit with current source from gestures/tpview

Renamed tpview to mtview.

BUG=chromium-os:38686
TEST=none