SIGN IN SIGN UP

Put `Theme` behind an `Arc` (#3017)

This PR puts the `Theme` returned from the `theme` function behind an
`Arc`.

### Motivation

While working on wiring up window focus events for the `TitleBar`
component we ran into issues where `theme` was holding an immutable
borrow to the `ViewContext` for the entirety of the `render` scope,
which prevented having mutable borrows in the same scope.

### Explanation

To avoid this, we can make `theme` return an `Arc<Theme>` to allow for
cheap clones and avoiding the issues with the borrow checker.

Release Notes:

- N/A

Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
M
Marshall Bowers committed
71c1e36d1e436631af212b593048a184d2122885
Parent: d8c6adf
Committed by GitHub <noreply@github.com> on 9/22/2023, 5:35:30 PM