Commit Graph

3641 Commits

Author SHA1 Message Date
Vishnu Nair
75c0e70c00 winscope: fix incorrect bounds offset
Fixes incorrect visualization of sf layers if layer bounds are
not at 0,0. This can happen if the parent layer ends up cropping
the child layer.

Test: manual test with problematic winscope trace
Change-Id: I1e0c4ec0e632b015f6fae26ee20985cd6c56aa16
2020-11-23 12:49:25 -08:00
Ioana Stefan
e49c271314 Display only current InputConnection call data in Winscope
With this change Winscope will display only the current InputConnection
call information, compared to before, when all other methods were
displayed with null information.

This change affects both the client and service views.

Bug: 154348613
Test: upload a cleint or service trace in Winscope and visualise
inputConnectionCall information

Change-Id: I99e254715f7252e9349e27f56dec603d2e5f31bd
2020-11-20 17:33:44 +00:00
Ioana Stefan
d15dbbc63c Add more information on the Hierarchy side in Winscope
This change adds more contextual information on the Hierarchy side of
Winscope for IME traces. Some of the important attributes for
identification are added to the name of each entry.

Example views: https://screenshot.googleplex.com/8oPMKoGsu9nRcYG,
https://screenshot.googleplex.com/ANwZ3HshmTLteQb,
https://screenshot.googleplex.com/AaNYWJPUoVNGbM3

Bug: 154348613
Test: upload IME traces in Winscope or use ADB Connect
      check the 3 views
Change-Id: I1a4f887674ddab9cea20693a34b62af52a47a151
2020-11-20 11:38:26 +00:00
Ioana Stefan
0079eaa440 Fix ADB connect InputMethod naming
This changes fixes the InputMethodManagerSerice file naming for starting
tracing through ADB connect.

Bug: 154348613
Test: start Winscope and do an InputMethodManagerService trace through
      ADB connect
Change-Id: Ia627250f523922ef8f73bb277a95f44aacd94f0e
2020-11-17 17:47:28 +00:00
Ioana Stefan
38a47cfed7 Update clients view for IME tracing
This change updates the tarnsform operation of the clients view in
WInscope. This is done because of the new structure of dumped data on
the clients side: one trigger dumps a single client, instead of the
entire list of active clients.

Bug: 154348613
Test: flash a device
      start IME tracing by calling "adb shell ime tracing start"
      end IME tracing by calling "adb shell ime tracing stop"
      pull generated trace files and visualize in Winscope
      or start tracing directly through ADB Connect and visualize traces
Change-Id: I50c9a27a01a2f026acf4ee0f9dc394a6f74c06f2
2020-11-12 14:06:57 +00:00
Ioana Stefan
fdd20c9e95 Updated Winscope view for IME tracing InputMethodManagerService information
Updated the IME tracing view in Winscope for the new optimized proto
dump format. This change adds the IMMS view separately from the
previously added clients and IMS views.

Bug: 154348613
Test: build and run the code using "yarn run dev"
      build and flash the android code to a device
      start and stop IME trace from the command line and then upload the files into Winscope or
      start IME trace from the web interface, open an IME on the android device to generate logs, end trace from the web interface to see the logs
Change-Id: I0e3a2089c3d7b29c57477adc882047bb0829d2fd
2020-11-09 12:24:54 +00:00
Ioana Stefan
dedfadb349 Updated Winscope view for IME tracing InputMethodService information
Updated the IME tracing view in Winscope for the new optimized proto
dump format. This change adds the IMS view separately from the
previously added clients view.

Bug: 154348613
Test: build and run the code using "yarn run dev"
      build and flash the android code to a device
      start and stop IME trace from the command line and then upload the files into Winscope or
      start IME trace from the web interface, open an IME on the android device to generate logs, end trace from the web interface to see the logs
Change-Id: Ia1ae9dc55f20c776c6fccd3399a57e6747737a66
2020-11-09 12:24:36 +00:00
Ioana Stefan
724f11355e Updated Winscope view for IME tracing clients information
Updated the IME tracing view in Winscope for the new optimized proto
dump format. This change included only the clients view since only
this information is currently dumped.

Bug: 154348613
Test: build and run the code using "yarn run dev"
      build and flash the android code to a device
      start and stop IME trace from the command line and then upload the file into Winscope or
      start IME trace from the web interface, open an IME on the android device to generate logs, end trace from the web interface to see the logs
Change-Id: I3dc01d602147d41af3c5b99b848cb428e402c219
2020-11-09 12:24:21 +00:00
Ioana Stefan
caafebcfdc Add fallback mechanism for identifier of older window traces
Older WM traces might not have an identifier set for
WindowContainer since this was added in ag/11659380.

This change makes Winscope again backwards compatible with older
WM traces. If it exists, the identifier of a parent holds the
place of a missing WindowContainer identifier. It is possible
that both identifiers are null, in which case the title and the
hashCode of WindowContainer are set as empty strings.

Bug: 170372278
Test: build Winscope locally, upload a WM trace and visualise it
Change-Id: Ieb5adc1d6a94d9a9215304b92114b807f1d812b4
2020-10-29 15:03:12 +00:00
Julien Desprez
118e177e01 Merge "Delete hosttestlib as it's a legacy approach" am: 2f18dab43e am: 3ec8c61452 am: 4f5b4d7d57 am: 8d2f1078e8
Original change: https://android-review.googlesource.com/c/platform/development/+/1359842

Change-Id: Ic007a301c30a49066e6957c5cf18593c76258719
2020-10-23 04:41:28 +00:00
Julien Desprez
2f18dab43e Merge "Delete hosttestlib as it's a legacy approach" 2020-10-22 23:00:08 +00:00
TreeHugger Robot
a5b6561f83 Merge "Fix z-ordering in winscope sf traces" 2020-10-21 17:26:12 +00:00
Vishnu Nair
3f1c28f9b8 Fix z-ordering in winscope sf traces
Fallout from previous refactors.

Test: Open sf trace in winscope. Confirm layers are displayed in correct z-order
Change-Id: I256d03fe4fdd475f0172c79b524bbe99f4c2dde4
2020-10-19 13:33:35 -07:00
Vishnu Nair
9a4753ac5f Winscope: fix layer traversal
Test: open sf trace of chrome in winscope
Change-Id: I4e0e9fad427e920021e00a2d6330027b43543502
2020-10-15 14:49:28 -07:00
Ioana Stefan
25b14c8e4f Merge "Include IME trace in Winscope" 2020-10-05 13:33:05 +00:00
Pablo Gamito
6285321a36 Merge "Update testing build configuration to be compatible with new changes" 2020-10-01 17:22:48 +00:00
Pablo Gamito
b6f0e66604 Address missing layers in layer traversal
Test: Make sure we can load traces where layers are missing
Change-Id: Iec96a3e6c10828af971cb12403aec38ba910cd9b
2020-10-01 16:42:22 +02:00
Pablo Gamito
47c13b2711 Make sure block calculation takes into account cropping
When zooming in the block size didn't adapt so we would see a large block instead of many small ones like we should be seeing

Test: Zoom in and make sure you see each individual entry and not all of them
Change-Id: I50d588cfe9e633d6aa0e771c6fbaefe4173ecce6
2020-10-01 16:42:22 +02:00
Pablo Gamito
9ff44e293e Update timeline position on transaction entry timestamp click
Test: Manual
Change-Id: I66a3f8b5a323c19f57881ba50e5222c793c804ff
2020-10-01 16:42:22 +02:00
Pablo Gamito
84c82dc691 Remove extra semi-column in tree view properties elements
Test: Visual
Change-Id: I62f3bca1241c4723d0d94c16e75056c62818d85d
2020-10-01 16:42:22 +02:00
Pablo Gamito
1c2b00241a Fix content menu for node
Make sure the context menu shows and apears at the right position

Test: Visual
Change-Id: I0502f5d05a82a45c7b0e57a1975b80aa802170eb
2020-10-01 16:42:22 +02:00
Pablo Gamito
3afcf6c70d Make sure all traces have icons
Test: Visual
Change-Id: Ib3cf22912cca8633b4ec311f5d339e8a232de726
2020-10-01 16:42:22 +02:00
Ioana Stefan
0c1e0b9f22 Include IME trace in Winscope
This CL makes the necessary additions for Winscope to:
   1) Accept an IME trace output file (ime_trace.pb) and display its contents
   2) Start IME trace from the web interface and display the contents along with other traces

Bug: 154348613
Test: build and run the code using "yarn run dev"
      build and flash the android code to a device
      start and stop IME trace from the command line and then upload the file into Winscope or
      start IME trace from the web interface, open an IME on the android device to generate logs, end trace from the web interface to see the logs
Change-Id: I090c9e3ca4e334a273269d11db006ec8cb63756c
2020-10-01 13:40:56 +02:00
Pablo Gamito
98fd2f4ead Update testing build configuration to be compatible with new changes
Test: Make sure tests can build and run
Change-Id: I26a988e646c4cd9bbbca145452f3ca2e098c84d5
2020-09-30 17:57:42 +02:00
Pablo Gamito
335b3e14a5 Refactor WM transformations to use flickerlib object representation
Test: Run winscope and make sure there are no errors and everything seems to still work...
Change-Id: I1aef5c469d4323af502580e03a310d76da739d4d
2020-09-25 16:39:45 +02:00
Pablo Gamito
c98e7e7ba5 Merge "Add fallback mechanism to detect correct file type" 2020-09-25 12:40:45 +00:00
Pablo Gamito
7ed8aebf0d Merge changes I30cb5eb1,Ib0a1a404
* changes:
  Fix download individual traces not working
  Make sure trace type shows at top of dataview
2020-09-25 10:50:16 +00:00
Pablo Gamito
e718ac52a8 Add fallback mechanism to detect correct file type
When upload an archive for files that don't have a magic number, it is hard to reliable detect their filetype so be tend to have false positive, this adds a check to try and match the filename to keywords for better autodetection

Test: Manually upload a bug report and make sure the correct files are matched
Change-Id: I12fde431498785a7f8674e495805f009a6fb9f2c
2020-09-25 12:45:40 +02:00
Pablo Gamito
49bfe4b10f Merge changes Ifa2c18cf,I0a988842
* changes:
  Highlight layer in treeview when rect is clicked
  Format files to pass linter checks
2020-09-24 07:42:40 +00:00
Pablo Gamito
9ce9c39a2a Fix download individual traces not working
Test: Click on download button of individual traces and make sure trace is downloaded
Change-Id: I30cb5eb106e0272dd7f5bb9111bfb88fc4f018ea
2020-09-22 19:27:01 +02:00
Pablo Gamito
e44b1ad505 Make sure trace type shows at top of dataview
Test: Visual, check in Winscope UI
Change-Id: Ib0a1a4049b31e9c8b72b8af04f0ee44a3bbd41e5
2020-09-22 19:22:50 +02:00
Pablo Gamito
24d1296be7 Remove dependency on tranasctions event proto
Reverts some of the changes that add tranasction merge history handling to Winscope that are not yet compatible with the latest frameworks/native

Test: Make sure winscope compile without the transaction merge history changes of frameworks/native
Change-Id: I5517bb4e14f63e4a93ecade0763051abd40ff09f
2020-09-22 12:12:56 +02:00
Pablo Gamito
6fe0827986 Highlight layer in treeview when rect is clicked
Fixes a bug where the layer wasn't highlighted when we clicked on it in the rect view

Test: Click on the rects and make sure they are highlighted in the rect view
Change-Id: Ifa2c18cfbc0d8a255550ac32a3e3ed3946679fd3
2020-09-17 14:46:59 +02:00
Pablo Gamito
246e6022eb Format files to pass linter checks
Test: N/A
Change-Id: I0a9888428a8af56f075678a6f6bf02e0bf33eb8b
2020-09-17 14:44:43 +02:00
Pablo Gamito
31bdae6ba5 Update file icons and types fetching logic
Test: Visual
Change-Id: Ia06b0f7ffdca7fa039470ac1b4dadb759bdb5b65
2020-09-14 23:45:33 +02:00
Pablo Gamito
e0eaf7235f Handle invalid log messages in protolog
Adds a log message class in type script to make sure compile check catch any incompatibilities between formatted and non formatted log messages

Test: Open a trace with invalid log messages and make sure no errors occur
Change-Id: I144c106b2a4ef70c9fb6666deff36a19bde0742a
2020-09-14 21:48:51 +02:00
Pablo Gamito
1ca3eda7f5 Fix zip logic to work with multiple files per trace changes
Test: Upload archive, download all as archive, and reupload and check all files are always there.
Change-Id: Ic9a80bbcc3ff165015d7fa585289cefe926a88c6
2020-09-08 19:59:16 +02:00
Pablo Gamito
4bc06e7ead Fix focused dataview finder not using correct reference values
Test: Scroll and make sure focused dataview changes
Change-Id: I3ecf53e87936c677fd5bdd04e5778ddd7644ac48
2020-09-08 19:49:44 +02:00
Pablo Gamito
bea6582e16 Make sure trace icons are displayed and aligned
Test: Visual
Change-Id: I09e2744c8e38ed5bbd6b1be6918233daf6c6598c
2020-09-08 19:49:44 +02:00
Pablo Gamito
df59671a7e Add option to clear selection
Test: Make sure clicking the button clears the selection
Change-Id: I19f1f6fcc7c8d95babaf3c7ca9ec0587acbb8da6
2020-09-08 19:49:44 +02:00
Pablo Gamito
8f3fd2124b Fix TreeView description height
Test: Visual
Change-Id: I1613c387ed5057c4e2ffa570c7863b5789f8ac16
2020-09-08 19:49:44 +02:00
Pablo Gamito
29559b77e7 Show vsyncs as a colored dividor instead of a full entry in transactionsView
Test: Visual
Change-Id: I1b7d384bf9cca3fe89878b835a1ba7002d732ef7
2020-09-08 17:39:12 +02:00
Pablo Gamito
39da05998a Display transaction merge information in Winscope
Test: N/A
Change-Id: I04836e844e2aa3158c36c12e375eca365c003ada
2020-09-08 17:38:03 +02:00
Pablo Gamito
b2b79396da Only change video frame on zooming if video is present
Test: Move around the trace without a video and make sure there are no errors
Change-Id: Ia87e97c7d731fc28aa3f8c9d4681db9b75bb6ad6
2020-09-08 17:38:03 +02:00
Pablo Gamito
6485239038 Fix invalid transaction trace props reference
Test: Open a transaction trace
Change-Id: I884518244c31d48426f02a9564cca32f3cd6de22
2020-09-08 17:38:03 +02:00
Pablo Gamito
6bfbf0f52b Merge "Remove use of deprecated encodestring()" 2020-09-08 15:12:51 +00:00
Pablo Gamito
5cafaab6e5 Remove use of deprecated encodestring()
Test: Make sure proxy still runs
Change-Id: I46c4ed3313aa341b3d1361cae1c91faa85448a47
2020-09-02 13:13:49 +02:00
Pablo Gamito
9d56e69e38 Update webpack config to inline js and css
This is required for production builds since we only deploy a single .html file and don't server the rest of the generated files

Test: Try and build and see if Winscope loads by loading only the generated .html file
Change-Id: Idc7614d72bb91a35da3574f5c93588690ccfb6a0
2020-09-02 13:04:28 +02:00
Pablo Gamito
bba8326ebf Merge "Display computed occlusion information more prominently" 2020-08-31 17:43:37 +00:00
Pablo Gamito
6c8f2690fa Merge "Add context menu to nodes with option to collapse all other nodes" 2020-08-31 17:43:23 +00:00