[roll] Roll fuchsia [display][coordinator] Move dispatcher ownership to CoordinatorDriver.

Previously, in the display coordinator driver, the Controller class
creates a fdf Dispatcher as the main event loop. This causes some
different behaviors on Controller destruction: in DFv2 drivers, the
dispatcher is destroyed by the driver framework before Stop(); while
in tests, the dispatcher is destroyed by the Controller's Stop() method.

This change fixes this issue by moving dispatcher ownership to
CoordinatorDriver, which is the class that interacts with the driver
framework. Controller now only holds an unowned reference to the
dispatcher, and it requires the dispatcher be completely stopped
when Stop() is called (which is guaranteed by DFv2 driver lifecycle).
Tests now need to manually stop the dispatcher and wait until the
dispatcher is fully stopped before calling Controller::Stop().

Test: no-op on core.nelson and core.vim3.
      "display-tool squares" worked.
Test: display-coordinator-unittests
Original-Bug: 341156315
Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1055692
Original-Revision: baf233a059e025c00ac53628d66956b3b9f7b38a
GitOrigin-RevId: ba108c4791cf8f4a7c5b05278570b3c5290f8ff1
Change-Id: I0265dd91a27221c140e58479b6960e7b02641a54
1 file changed
tree: e82976704a3326c86757215b802e00fbab5fb3c2
  1. ctf/
  2. git-hooks/
  3. infra/
  4. third_party/
  5. cts
  6. firmware
  7. flower
  8. jiri.lock
  9. MILESTONE
  10. minimal
  11. prebuilts
  12. README.md
  13. stem
  14. test_durations
  15. toolchain
README.md

Integration

This repository contains Fuchsia's Global Integration manifest files.

Making changes

All changes should be made to the internal version of this repository. Our infrastructure automatically updates this version when the internal one changes.

Currently all changes must be made by a Google employee. Non-Google employees wishing to make a change can ask for assistance via the IRC channel #fuchsia on Freenode.

Obtaining the source

First install Jiri.

Next run:

$ jiri init
$ jiri import minimal https://fuchsia.googlesource.com/integration
$ jiri update

Third party

Third party projects should have their own subdirectory in ./third_party.