MCPcopy Create free account
hub / github.com/ChrisFeldmeier/OpenCodeRust / blend

Function blend

crates/opencode-tui/src/components/message_palette.rs:22–37  ·  view source on GitHub ↗
(foreground: Color, background: Color, num: u16, den: u16)

Source from the content-addressed store, hash-verified

20}
21
22fn blend(foreground: Color, background: Color, num: u16, den: u16) -> Color {
23 if den == 0 || num >= den {
24 return foreground;
25 }
26
27 match (foreground, background) {
28 (Color::Rgb(fr, fg, fb), Color::Rgb(br, bg, bb)) => {
29 let inv = den - num;
30 let r = ((u16::from(fr) * inv) + (u16::from(br) * num)) / den;
31 let g = ((u16::from(fg) * inv) + (u16::from(bg) * num)) / den;
32 let b = ((u16::from(fb) * inv) + (u16::from(bb) * num)) / den;
33 Color::Rgb(r as u8, g as u8, b as u8)
34 }
35 _ => foreground,
36 }
37}

Callers 2

thinking_message_bgFunction · 0.85
tint_sidebar_overlayFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected