# settings_ui: Add pickers for theme and icon themes \(\#40829\) · gitcafe/zed

[View on GitCafe](https://git.cafe/gitcafe/zed/commit/8f3da5c5cd9cc14694cdb8b1da4fac17b47b64eb)

Repository: [gitcafe/zed](https://git.cafe/gitcafe/zed)

Visibility: public

Requested revision: 8f3da5c5cd9cc14694cdb8b1da4fac17b47b64eb

Requested commit: 8f3da5c5cd9cc14694cdb8b1da4fac17b47b64eb

Commit: 8f3da5c5cd9cc14694cdb8b1da4fac17b47b64eb

Tree: 4fbd5ed1225e757b96391023d5f8afe8863a23a0

Author: Danilo Leal

Committer: GitHub

## Message

```
settings_ui: Add pickers for theme and icon themes (#40829)

In the process of adding pickers for the theme and icon themes fields in
the settings UI, I felt like there was an improvement opportunity in
regards to where some of these components are stored. The `ui_input`
crate originally was meant only for the text field-like component, which
couldn't be in the regular `ui` crate due to the dependency with
`editor`. Given we had also added the number field there—which is
similar in also having the same dependency—it made sense to think of
this crate more like a home for form-like components rather than for
only one component.

However, we were also storing some settings UI-specific stuff in that
crate, which didn't feel right. So I ended up creating a new directory
within the `settings_ui` for components and moved all the pickers and
the custom input field there. I think this makes it for a cleaner
structure.

Release Notes:

- settings_ui: Added the ability to search for theme and icon themes in
their respective fields.
```

## Parents

- [b519f53b3ecab94b0d9db6c87261657fb1c48c38](https://git.cafe/gitcafe/zed/commit/b519f53b3ecab94b0d9db6c87261657fb1c48c38?format=markdown)

[Source at this commit](https://git.cafe/gitcafe/zed/tree/8f3da5c5cd9cc14694cdb8b1da4fac17b47b64eb?format=markdown)
