| Name | Date | Size | #Lines | LOC | ||
|---|---|---|---|---|---|---|
| .. | - | - | ||||
| hooks/ | 03-May-2024 | - | 20 | 14 | ||
| loaders/ | 03-May-2024 | - | 52 | 28 | ||
| src/ | 03-May-2024 | - | 36,986 | 27,421 | ||
| .eslintrc.js | D | 03-May-2024 | 1.6 KiB | 50 | 27 | |
| .gitignore | D | 03-May-2024 | 573 | 45 | 37 | |
| OWNERS | D | 03-May-2024 | 104 | 6 | 5 | |
| README.md | D | 03-May-2024 | 1.6 KiB | 43 | 35 | |
| all | D | 03-May-2024 | 0 | |||
| google.tslint.json | D | 03-May-2024 | 5.7 KiB | 139 | 137 | |
| karma.conf.js | D | 03-May-2024 | 1.1 KiB | 33 | 16 | |
| package-lock.json | D | 03-May-2024 | 1.1 MiB | 30,229 | 30,228 | |
| package.json | D | 03-May-2024 | 5 KiB | 102 | 101 | |
| prettier.config.js | D | 03-May-2024 | 969 | 30 | 11 | |
| protractor.config.js | D | 03-May-2024 | 1.5 KiB | 50 | 22 | |
| tsconfig.json | D | 03-May-2024 | 1,014 | 38 | 37 | |
| webpack.config.common.js | D | 03-May-2024 | 1.7 KiB | 70 | 50 | |
| webpack.config.dev.js | D | 03-May-2024 | 1.2 KiB | 38 | 20 | |
| webpack.config.prod.js | D | 03-May-2024 | 2 KiB | 69 | 51 | |
| webpack.config.unit_test.js | D | 03-May-2024 | 1.2 KiB | 42 | 20 |
README.md
1# Tool for visualizing window manager traces 2 3## Developing WinScope 4When the trace is enabled, Window Manager and Surface Flinger capture and 5save current state to a file at each point of interest. 6`frameworks/base/core/proto/android/server/windowmanagertrace.proto` 7and `frameworks/native/services/surfaceflinger/layerproto/layerstrace.proto` 8contain the proto definitions for their internal states. 9 10### Checking out code and setting up environment 11* [Download Android source](https://source.android.com/setup/build/downloading) 12* Navigate to `development/tools/winscope` 13* Run `npm install` 14 15### Build & test & deploy changes 16* Navigate to `development/tools/winscope` 17* Run `npm run` to get the list of available commands 18 19### Update IntDefMapping 20* Build `framework-minus-apex-intdefs` module and a preprocessor will 21 generate the latest IntDefMapping. From the `ANDROID_ROOT` run: 22``` 23. build/envsetup.sh 24m framework-minus-apex-intdefs 25``` 26 27* Copy the generated `intDefMapping.json` files to the `prebuilts` repo. 28``` 29python3 -c 'import sys,json,collections; print(json.dumps(collections.OrderedDict(sorted(collections.ChainMap(*map(lambda x:json.load(open(x)), sys.argv[1:])).items())), indent=2))' $(find out/soong/.intermediates/frameworks/base -iname intDefMapping.json) > ./prebuilts/misc/common/winscope/intDefMapping.json 30``` 31 32* Upload the changes. 33``` 34cd ./prebuilts/misc/common/winscope 35repo start intdef-update 36git commit -am "Update intdef mapping" "Test: N/A" 37repo upload --cbr . 38``` 39 40### Building with internal extensions 41Internal paths in vendor/ which are not available in AOSP must be replaced by 42stub files. See getWaylandSafePath for an example 43