[tiler] Add support for min sizes, tabbing and floats.

- Separate files for model classes.
- Utils class includes tree traversal support.
- Tiler constructor needs non-null root.
- Tiler root cannot be a content tile, only row or column
- Adds 'custom' tile type for tabbed tiles.
- Collapses all tiles and their descendants for tabbed tiles
- Removes tile from hierarchy if they don't fit and tabbing
  is not an option.
- Basic support for floating tiles in Tiler widget.
- Improves widget build performance by localizing build
  to the area being changed.

Testing: Includes new and updated unittests.

Change-Id: Idb00d7d346e6d21d077a10fc58577ef9c692b112
9 files changed
tree: 08335d3fa1c096f32796e0f9b97e66e7997de793
  1. .cargo/
  2. .clang-format
  3. .gitignore
  4. AUTHORS
  5. BUILD.gn
  6. CONTRIBUTING.md
  7. LICENSE
  8. OWNERS
  9. PATENTS
  10. README.md
  11. app/
  12. auth_providers/
  13. bin/
  14. boards/
  15. bundles/
  16. docs/
  17. examples/
  18. lib/
  19. manifest/
  20. packages/
  21. public/
  22. runtime/
  23. rustfmt.toml
  24. shell/
  25. tests/
  26. tools/
README.md

Topaz

Topaz augments system functionality by implementing interfaces defined by underlying layers. Topaz contains four major categories of software: modules, agents, shells, and runners.

For example, modules include the dashboard, and runners include the Web, Dart, and Flutter runners.

Removed Components

Looking for something that used to be in this repository? The list below provides a code location and sha that can be used to checkout dead code that has been removed. Please note, it is unlikely the code will build or work correctly shas are provided for reference only. Code can be checked out with:

    git checkout <sha> -- $FUCHSIA_DIR/<location>
  • topaz/app/chat: 9f6c31d2ceb8353f229a9ef6b53ba2386ff31867
  • topaz/app/color: 5a023ccb054104846e3e913951bcc7dc277d2274
  • topaz/app/contacts: 80378fe470817750188707de29237282892a3142
  • topaz/app/dashboard: 982984856fec7e45d295a6ca34bdd819b6760b72
  • topaz/app/documents: b5a3ee29b15414f232865128195d14bd8811ab02
  • topaz/app/image: 5e731a943a907cf960ecfbda1c391958f9093afa
  • topaz/app/link_viewer: 00fe1236c6851da5d54c625a8293561bb617804c
  • topaz/app/video: fc03877f787fc119140b900d476c4563bd04a529
  • topaz/bin/repl: fc25fb9b825f4100b316c4d5135156ef05e0dc4b
  • topaz/examples/bluetooth: f4287c5ae0e9b099983121b41be66e1994b83a02
  • topaz/examples/tictactoe: 07fd955f4
  • topaz/tools/dartfmt_extras: acc1f05718af2bcfbba3317a456f82b67eec4e42
  • topaz/tools/mod: acc1f05718af2bcfbba3317a456f82b67eec4e42
  • topaz/tools/widget_explorer: acc1f05718af2bcfbba3317a456f82b67eec4e42
  • topaz/examples/bluetooth: f4287c5ae0e9b099983121b41be66e1994b83a02
  • topaz/bin/repl: fc25fb9b825f4100b316c4d5135156ef05e0dc4b
  • topaz/examples/tictactoe: 07fd955f4
  • topaz/examples/ui/hello_mod: 07fd955f4
  • topaz/examples/ui/sketchy_flutter: 07fd955f4
  • topaz/examples/ui/text_flutter: 07fd955f4
  • topaz/public/lib/agent: 79a60c5d377ed3a55a87d999292036243ff21446
  • topaz/public/lib/config: f489f45e6883df6e3be578342b4e739928adcf77
  • topaz/public/lib/context: f489f45e6883df6e3be578342b4e739928adcf77
  • topaz/public/lib/mod: 75067a620790d76515c3824321eca335a6aa6bab
  • topaz/public/lib/app_driver: 0196bf704f
  • topaz/public/lib/fuchsia_driver: b34f97387
  • topaz/public/lib/decomposition: b34f97387
  • topaz/public/lib/module_resolver: 2e13a4929
  • topaz/public/lib/proposal: d32421a9d
  • topaz/public/lib/user: 62cc03e
  • topaz/lib/setui/settings: 4009b4a