Revert "[lensoverlay] Pass bitmap directly to WebUI instead of encoding to JPEG"

This reverts commit 71f921cac550fcc4c45855c3830dd1f00bb6ad79.

Reason for revert: Suspicious about causing test failures of
LensOverlayTest.TextSelection
LensOverlayControllerSearchBubbleDisabled.PreselectionToastDisappearsOnSelection
https://ci.chromium.org/ui/p/chromium/builders/ci/Mac11%20Tests/30294/overview

Original change's description:
> [lensoverlay] Pass bitmap directly to WebUI instead of encoding to JPEG
>
> Passing the bitmap directly to the WebUI, helps in a couple ways.
>   1) It moves the encoding to JPEG into the renderer process, therefore
>      removing it from the critical path on the main thread.
>   2) Passes the pixels as shared memory to the WebUI.
>   3) Removes the need for data URIs.
>
> With this approach, we saw slight wins on M1 macbooks, and significant
> wins (25% improvement) in the time it takes to go from capturing the
> screenshot to rendering it to the user. This approach also sets up
> an additional win by drawing the bitmap and rendering directly in the
> JS canvas, which should be a big win, since the bottleneck in this flow
> is the call to toBlob().
>
> This is step 1 of many to come CLs to improve our invocation time. See
> bug for more details.
>
> NO_IFTTT= New line added by git cl format
>
> Bug: b:352622136
> Change-Id: I25573e2600a9ae7a0b1b05133f03d65e6293f7b2
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5770332
> Reviewed-by: Erik Chen <erikchen@chromium.org>
> Commit-Queue: Duncan Mercer <mercerd@google.com>
> Cr-Commit-Position: refs/heads/main@{#1341186}

Bug: b:352622136
Change-Id: I828b4e351db55f01e92f53ee2affd9ccac60cedb
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5782680
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Yuki Shiino <yukishiino@chromium.org>
Owners-Override: Yuki Shiino <yukishiino@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Cr-Commit-Position: refs/heads/main@{#1341425}
16 files changed
tree: 94cab8f13172b0bdfd2c3299d7ab7798760f15b4
  1. android_webview/
  2. apps/
  3. ash/
  4. base/
  5. build/
  6. build_overrides/
  7. buildtools/
  8. cc/
  9. chrome/
  10. chromecast/
  11. chromeos/
  12. codelabs/
  13. components/
  14. content/
  15. courgette/
  16. crypto/
  17. dbus/
  18. device/
  19. docs/
  20. extensions/
  21. fuchsia_web/
  22. gin/
  23. google_apis/
  24. google_update/
  25. gpu/
  26. headless/
  27. infra/
  28. ios/
  29. ipc/
  30. media/
  31. mojo/
  32. native_client_sdk/
  33. net/
  34. pdf/
  35. ppapi/
  36. printing/
  37. remoting/
  38. rlz/
  39. sandbox/
  40. services/
  41. skia/
  42. sql/
  43. storage/
  44. styleguide/
  45. testing/
  46. third_party/
  47. tools/
  48. ui/
  49. url/
  50. webkit/
  51. .clang-format
  52. .clang-tidy
  53. .clangd
  54. .eslintrc.js
  55. .git-blame-ignore-revs
  56. .gitallowed
  57. .gitattributes
  58. .gitignore
  59. .gitmodules
  60. .gn
  61. .mailmap
  62. .rustfmt.toml
  63. .vpython3
  64. .yapfignore
  65. ATL_OWNERS
  66. AUTHORS
  67. BUILD.gn
  68. CODE_OF_CONDUCT.md
  69. codereview.settings
  70. CPPLINT.cfg
  71. DEPS
  72. DIR_METADATA
  73. LICENSE
  74. LICENSE.chromium_os
  75. OWNERS
  76. PRESUBMIT.py
  77. PRESUBMIT_test.py
  78. PRESUBMIT_test_mocks.py
  79. README.md
  80. WATCHLISTS
README.md

Logo Chromium

Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.

The project's web site is https://www.chromium.org.

To check out the source code locally, don't use git clone! Instead, follow the instructions on how to get the code.

Documentation in the source is rooted in docs/README.md.

Learn how to Get Around the Chromium Source Code Directory Structure.

For historical reasons, there are some small top level directories. Now the guidance is that new top level directories are for product (e.g. Chrome, Android WebView, Ash). Even if these products have multiple executables, the code should be in subdirectories of the product.

If you found a bug, please file it at https://crbug.com/new.