)]}'
{
  "commit": "c889f25f2a3b500f11cf28cf8cc85660ad10d90a",
  "tree": "fe078fdabb6557c3174aee1fc7d67095527bef37",
  "parents": [
    "753f307d7a49d22c19da7b7f9beda0782d03bbbc"
  ],
  "author": {
    "name": "Steve Golton",
    "email": "stevegolton@google.com",
    "time": "Mon Aug 18 10:44:24 2025 +0100"
  },
  "committer": {
    "name": "Steve Golton",
    "email": "stevegolton@google.com",
    "time": "Tue Aug 26 10:04:12 2025 +0100"
  },
  "message": "ui: Inject AppImpl instead of using AppImpl.instance\n\nChange-Id: I634d3841853f24538abc18380dad6fe88ca40a34\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "866c61538740feee6896129007d983278a947506",
      "old_mode": 33261,
      "old_path": "python/tools/check_imports.py",
      "new_id": "3ade1a26c59189a5a51aa50fe36a840b55fb6427",
      "new_mode": 33261,
      "new_path": "python/tools/check_imports.py"
    },
    {
      "type": "modify",
      "old_id": "41d427c68a87e057b98f7900925da17146da7129",
      "old_mode": 33188,
      "old_path": "ui/src/core/app_impl.ts",
      "new_id": "f4578b3a2c1c6a94cc2d5193b8352a5ad633a675",
      "new_mode": 33188,
      "new_path": "ui/src/core/app_impl.ts"
    },
    {
      "type": "modify",
      "old_id": "26f2b4822dfc8a5db0db5df4ed530a078cc7e160",
      "old_mode": 33188,
      "old_path": "ui/src/core/cookie_consent.ts",
      "new_id": "129c6da64b88579f0a454be9567710aa53599f86",
      "new_mode": 33188,
      "new_path": "ui/src/core/cookie_consent.ts"
    },
    {
      "type": "modify",
      "old_id": "4d1b428ba5ee4949b621700be98e1d8eeb517ce7",
      "old_mode": 33188,
      "old_path": "ui/src/core/fake_trace_impl.ts",
      "new_id": "53a85f74d418d54d2a975a9aae9a52aba62e1830",
      "new_mode": 33188,
      "new_path": "ui/src/core/fake_trace_impl.ts"
    },
    {
      "type": "modify",
      "old_id": "a96bc467a7594557c754bb79e7a0566c1aa2268a",
      "old_mode": 33188,
      "old_path": "ui/src/core/trace_impl.ts",
      "new_id": "c0c6bb73502318392d1358c8afee5db373d8896a",
      "new_mode": 33188,
      "new_path": "ui/src/core/trace_impl.ts"
    },
    {
      "type": "modify",
      "old_id": "11e23f2c88f47741e20164e03f23b1452e7ec176",
      "old_mode": 33188,
      "old_path": "ui/src/core_plugins/commands/index.ts",
      "new_id": "130fa1ad250f0dad6aa35bb71d60d5cacfa4f76d",
      "new_mode": 33188,
      "new_path": "ui/src/core_plugins/commands/index.ts"
    },
    {
      "type": "modify",
      "old_id": "307a906db6e73ea9c0175e6f34a5d9062dad8707",
      "old_mode": 33188,
      "old_path": "ui/src/core_plugins/example_traces/index.ts",
      "new_id": "ca7c7fadb56c20bbe6285d3f8219ec950023f2be",
      "new_mode": 33188,
      "new_path": "ui/src/core_plugins/example_traces/index.ts"
    },
    {
      "type": "modify",
      "old_id": "0657b735bd2b2c71d2d818ef6fe763f91fe4248b",
      "old_mode": 33188,
      "old_path": "ui/src/core_plugins/flags_page/index.ts",
      "new_id": "3fab9f688e2ca16b1cf80fd086a9f78007f5cb63",
      "new_mode": 33188,
      "new_path": "ui/src/core_plugins/flags_page/index.ts"
    },
    {
      "type": "modify",
      "old_id": "3917470d2b83bc0dfe97cb73ab580b2ddc77b7f6",
      "old_mode": 33188,
      "old_path": "ui/src/core_plugins/flags_page/plugins_page.ts",
      "new_id": "241e5ebe03b79bfa096f6af857c11a65de148822",
      "new_mode": 33188,
      "new_path": "ui/src/core_plugins/flags_page/plugins_page.ts"
    },
    {
      "type": "modify",
      "old_id": "87d26eb68ce1b7183ff973b77bf60dd18367a98a",
      "old_mode": 33188,
      "old_path": "ui/src/core_plugins/settings_page/settings_page.ts",
      "new_id": "cc04ce81657183f4b580002aba0d492406b97ee8",
      "new_mode": 33188,
      "new_path": "ui/src/core_plugins/settings_page/settings_page.ts"
    },
    {
      "type": "modify",
      "old_id": "b81de05be7aec7c1c160aac588f005ac08486643",
      "old_mode": 33188,
      "old_path": "ui/src/core_plugins/track_utils/index.ts",
      "new_id": "fd1603ea6fa1cab0d023e44c0ac4f97605f999cc",
      "new_mode": 33188,
      "new_path": "ui/src/core_plugins/track_utils/index.ts"
    },
    {
      "type": "modify",
      "old_id": "9899380880549cded7e3059b939c06741ee0b611",
      "old_mode": 33188,
      "old_path": "ui/src/frontend/debug.ts",
      "new_id": "1200a853c529ace8182a0fbf72f455b45cee33bd",
      "new_mode": 33188,
      "new_path": "ui/src/frontend/debug.ts"
    },
    {
      "type": "modify",
      "old_id": "78e05849828082f93125e275f3c7becff770e2e3",
      "old_mode": 33188,
      "old_path": "ui/src/frontend/error_dialog.ts",
      "new_id": "18370f38580f159f2d063df2d41b6b9c7600642b",
      "new_mode": 33188,
      "new_path": "ui/src/frontend/error_dialog.ts"
    },
    {
      "type": "modify",
      "old_id": "6d096bec6f7d99583395912675f01eee049b821d",
      "old_mode": 33188,
      "old_path": "ui/src/frontend/file_drop_handler.ts",
      "new_id": "8100ea45cf035bacdba941ce347180b11bd0a091",
      "new_mode": 33188,
      "new_path": "ui/src/frontend/file_drop_handler.ts"
    },
    {
      "type": "delete",
      "old_id": "f5be8b4f0e1e3aef107f9fad800fb85b1857680c",
      "old_mode": 33188,
      "old_path": "ui/src/frontend/globals.ts",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "3fdef56174535635dc2fb2ab418534fba5784cd5",
      "old_mode": 33188,
      "old_path": "ui/src/frontend/help_modal.ts",
      "new_id": "4371cf152bc41ecdbbc1fa72fa05c5d444523a36",
      "new_mode": 33188,
      "new_path": "ui/src/frontend/help_modal.ts"
    },
    {
      "type": "modify",
      "old_id": "70e95b872760bf6b7f143db041a72c82d316a3eb",
      "old_mode": 33188,
      "old_path": "ui/src/frontend/home_page.ts",
      "new_id": "636c9f7012da589352bcd7510180f02a59eecf0d",
      "new_mode": 33188,
      "new_path": "ui/src/frontend/home_page.ts"
    },
    {
      "type": "modify",
      "old_id": "d26234b217f5c66ce8d619de18370725b70acb15",
      "old_mode": 33188,
      "old_path": "ui/src/frontend/idle_detector.ts",
      "new_id": "e080a1d318be3b976a85be64bdc0ca8d3d623c89",
      "new_mode": 33188,
      "new_path": "ui/src/frontend/idle_detector.ts"
    },
    {
      "type": "modify",
      "old_id": "8e2a76563acbfd7411256b58714f999916e55e38",
      "old_mode": 33188,
      "old_path": "ui/src/frontend/index.ts",
      "new_id": "15997d944c27eb746eb541f28873cb8001aef109",
      "new_mode": 33188,
      "new_path": "ui/src/frontend/index.ts"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "1407ff9f7ae7b6073cf0f67c6d443c4eae13c0ed",
      "new_mode": 33188,
      "new_path": "ui/src/frontend/is_internal_user_loader.ts"
    },
    {
      "type": "modify",
      "old_id": "25af38bca6ee54b0ab16c7611660788a4582b32b",
      "old_mode": 33188,
      "old_path": "ui/src/frontend/legacy_trace_viewer.ts",
      "new_id": "45e956f49db56a005f5bf4ed09eb1906d7f3f914",
      "new_mode": 33188,
      "new_path": "ui/src/frontend/legacy_trace_viewer.ts"
    },
    {
      "type": "modify",
      "old_id": "6316ac48f41a165a12ae8b0cf7ef655b4b65ee78",
      "old_mode": 33188,
      "old_path": "ui/src/frontend/permalink.ts",
      "new_id": "238bcdb83fbff5e6c30754b50f30c017dec8b1ca",
      "new_mode": 33188,
      "new_path": "ui/src/frontend/permalink.ts"
    },
    {
      "type": "modify",
      "old_id": "d49127440bc6948cbc764c8de96961c6e34dbbd6",
      "old_mode": 33188,
      "old_path": "ui/src/frontend/post_message_handler.ts",
      "new_id": "6e68b7bb2f13732e010ae2d0ba65ae9aba4a694f",
      "new_mode": 33188,
      "new_path": "ui/src/frontend/post_message_handler.ts"
    },
    {
      "type": "modify",
      "old_id": "271f0f6aa15b1298b85f60af51c424058516b74e",
      "old_mode": 33188,
      "old_path": "ui/src/frontend/rpc_http_dialog.ts",
      "new_id": "a39fb273622e3432f8d6c1076f9515496517c9d2",
      "new_mode": 33188,
      "new_path": "ui/src/frontend/rpc_http_dialog.ts"
    },
    {
      "type": "modify",
      "old_id": "9ef23e6637563f5ae5136c2acc1f4a3ce78d1b9f",
      "old_mode": 33188,
      "old_path": "ui/src/frontend/sidebar.ts",
      "new_id": "8a84e0f8b186858baaa3c00e3e3d7b5d622eed3b",
      "new_mode": 33188,
      "new_path": "ui/src/frontend/sidebar.ts"
    },
    {
      "type": "modify",
      "old_id": "e30d7398e79748c551a33700b9f29535e54956d1",
      "old_mode": 33188,
      "old_path": "ui/src/frontend/topbar.ts",
      "new_id": "46d102d3207b791f05fa96db9f7a085f8ae0d3b7",
      "new_mode": 33188,
      "new_path": "ui/src/frontend/topbar.ts"
    },
    {
      "type": "modify",
      "old_id": "d577a5111f6e8fbd501d8b3a9b7b96e0901ee27f",
      "old_mode": 33188,
      "old_path": "ui/src/frontend/trace_converter.ts",
      "new_id": "27e798fe708623db074aebebaf3ac1e24b552549",
      "new_mode": 33188,
      "new_path": "ui/src/frontend/trace_converter.ts"
    },
    {
      "type": "modify",
      "old_id": "9ae7211ac70f071ae68f3d8913fc2ad06bce7f49",
      "old_mode": 33188,
      "old_path": "ui/src/frontend/trace_share_utils.ts",
      "new_id": "6b8d8fb44717de1116ff501969df9b3d4aadd4b7",
      "new_mode": 33188,
      "new_path": "ui/src/frontend/trace_share_utils.ts"
    },
    {
      "type": "modify",
      "old_id": "88088188a37c7e8fe0ee38ea4bb76acf004eac01",
      "old_mode": 33188,
      "old_path": "ui/src/frontend/trace_url_handler.ts",
      "new_id": "cc7e99c7519237d9d24756807f0ebc0d35ada368",
      "new_mode": 33188,
      "new_path": "ui/src/frontend/trace_url_handler.ts"
    },
    {
      "type": "modify",
      "old_id": "babd5223b132202429cd206b4e79c8d87fb50a88",
      "old_mode": 33188,
      "old_path": "ui/src/frontend/ui_main.ts",
      "new_id": "0e378af380a737e4f70d027aca3b3e5d63bfca31",
      "new_mode": 33188,
      "new_path": "ui/src/frontend/ui_main.ts"
    },
    {
      "type": "modify",
      "old_id": "46a32c52c7047e0f324b799700ac22efa5dd656c",
      "old_mode": 33188,
      "old_path": "ui/src/frontend/viewer_page/viewer_page.ts",
      "new_id": "0c15bd1c0b85c6ee0abf199250bca16d1b30fee2",
      "new_mode": 33188,
      "new_path": "ui/src/frontend/viewer_page/viewer_page.ts"
    },
    {
      "type": "modify",
      "old_id": "1ba5af1532de69408af3faf6d3a4b8536754772f",
      "old_mode": 33188,
      "old_path": "ui/src/plugins/dev.perfetto.HeapProfile/heap_profile_details_panel.ts",
      "new_id": "1d5c97d71be687c5b2ee4767810d91654f673bc6",
      "new_mode": 33188,
      "new_path": "ui/src/plugins/dev.perfetto.HeapProfile/heap_profile_details_panel.ts"
    },
    {
      "type": "modify",
      "old_id": "6463b85f7245bded5fbd48011e1b8c748453d1d6",
      "old_mode": 33188,
      "old_path": "ui/src/public/app.ts",
      "new_id": "457e4766dbd62fade476432148066c1aca01f6b5",
      "new_mode": 33188,
      "new_path": "ui/src/public/app.ts"
    },
    {
      "type": "modify",
      "old_id": "21b03d7692474ea5df6a1fbedda07605239238d6",
      "old_mode": 33188,
      "old_path": "ui/src/public/trace.ts",
      "new_id": "fdebd4209f83e57ffacc3fd877df5bcfde99e5d9",
      "new_mode": 33188,
      "new_path": "ui/src/public/trace.ts"
    }
  ]
}
