zed/crates/gpui/src
Jason Lee de89f8cf83
gpui: Add linear gradient support to fill background (#20812)
Release Notes:

- gpui: Add linear gradient support to fill background

Run example:

```
cargo run -p gpui --example gradient
cargo run -p gpui --example gradient --features macos-blade
```

## Demo

In GPUI (sRGB):

<img width="761" alt="image"
src="https://github.com/user-attachments/assets/568c02e8-3065-43c2-b5c2-5618d553dd6e">

In GPUI (Oklab):

<img width="761" alt="image"
src="https://github.com/user-attachments/assets/b008b0de-2705-4f99-831d-998ce48eed42">

In CSS (sRGB): 

https://codepen.io/huacnlee/pen/rNXgxBY

<img width="505" alt="image"
src="https://github.com/user-attachments/assets/239f4b65-24b3-4797-9491-a13eea420158">

In CSS (Oklab):

https://codepen.io/huacnlee/pen/wBwBKOp

<img width="658" alt="image"
src="https://github.com/user-attachments/assets/56fdd55f-d219-45de-922f-7227f535b210">


---

Currently only support 2 color stops with linear-gradient. I think this
is we first introduce the gradient feature in GPUI, and the
linear-gradient is most popular for use. So we can just add this first
and then to add more other supports.
2024-12-11 21:52:52 +02:00
..
app
elements
keymap
platform gpui: Add linear gradient support to fill background (#20812) 2024-12-11 21:52:52 +02:00
text_system
window
action.rs
app.rs
arena.rs
asset_cache.rs
assets.rs
bounds_tree.rs
color.rs gpui: Add linear gradient support to fill background (#20812) 2024-12-11 21:52:52 +02:00
element.rs
executor.rs
geometry.rs
global.rs
gpui.rs
input.rs
interactive.rs
key_dispatch.rs
keymap.rs
platform.rs
prelude.rs
scene.rs gpui: Add linear gradient support to fill background (#20812) 2024-12-11 21:52:52 +02:00
shared_string.rs
shared_uri.rs
style.rs gpui: Add linear gradient support to fill background (#20812) 2024-12-11 21:52:52 +02:00
styled.rs
subscription.rs
svg_renderer.rs
taffy.rs
test.rs
text_system.rs
util.rs
view.rs
window.rs gpui: Add linear gradient support to fill background (#20812) 2024-12-11 21:52:52 +02:00