# Update call controls & Add tinted buttons \(\#3886\) · gitcafe/zed

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

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

Visibility: public

Requested revision: a205b2dbf350ff3d7244369167f99912a47d9151

Requested commit: a205b2dbf350ff3d7244369167f99912a47d9151

Commit: a205b2dbf350ff3d7244369167f99912a47d9151

Tree: bc7b8330c8456538f7f526f2b4c7c227bdf56590

Author: Nate Butler

Committer: GitHub

## Message

````
Update call controls & Add tinted buttons (#3886)

This PR introduces Tinted button styles and the `selected_style` field
on buttons to allow replicating the previous design of titlebar call
controls. It also updates the styles of the titlebar controls.

### Creating a tinted button:

```
Button::new("accept-cta", "Accept")
    .style(ButtonStyle::Tinted(TintColor::Accent))
    .on_click(...)
```

Ths button will always be tinted blue.

### Creating a button that becomes tinted when selected::

```rust
IconButton::new("screen-share", Icon::Screen)
    .style(ButtonStyle::Subtle)
    .selected(is_screen_sharing)
    .selected_style(ButtonStyle::Tinted(TintColor::Accent))
    .on_click(...),
```

This button will be flat/subtle by default, but be tinted blue when it
is `selected`.

Note: There appears to be some issue where `is_deafened` isn't
activating correctly, making the speaker icon not toggle when selected.

Release Notes:

- Restore call control styles to a similar look to Zed 1.
````

## Parents

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

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

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