From 0ce509f80e238f7ffe14623761269aba8295c0f4 Mon Sep 17 00:00:00 2001 From: ouwou <26526779+ouwou@users.noreply.github.com> Date: Fri, 21 Jan 2022 00:41:35 -0500 Subject: add settings for some colors --- src/components/channelscellrenderer.cpp | 53 +++++++++++++++++++++++++-------- 1 file changed, 40 insertions(+), 13 deletions(-) (limited to 'src/components') diff --git a/src/components/channelscellrenderer.cpp b/src/components/channelscellrenderer.cpp index fa7880f..a914d59 100644 --- a/src/components/channelscellrenderer.cpp +++ b/src/components/channelscellrenderer.cpp @@ -214,6 +214,8 @@ void CellRendererChannels::render_vfunc_guild(const Cairo::RefPtr & const auto id = m_property_id.get_value(); const bool is_muted = discord.IsChannelMuted(id); - if (is_muted) - m_renderer_text.property_foreground() = "#7f7f7f"; + static const auto color = Gdk::RGBA(Abaddon::Get().GetSettings().ChannelColor); + if (Abaddon::Get().GetDiscordClient().IsChannelMuted(m_property_id.get_value())) { + auto muted = color; + muted.set_red(muted.get_red() * 0.5); + muted.set_green(muted.get_green() * 0.5); + muted.set_blue(muted.get_blue() * 0.5); + m_renderer_text.property_foreground_rgba() = muted; + } else { + m_renderer_text.property_foreground_rgba() = color; + } m_renderer_text.render(cr, widget, background_area, text_cell_area, flags); m_renderer_text.property_foreground_set() = false; @@ -617,12 +641,15 @@ void CellRendererChannels::unread_render_mentions(const Cairo::RefPtrget_pixel_size(width, height); { + static const auto bg = Gdk::RGBA(Abaddon::Get().GetSettings().MentionBadgeColor); + static const auto text = Gdk::RGBA(Abaddon::Get().GetSettings().MentionBadgeTextColor); + const auto x = cell_area.get_x() + edge - width - MentionsRightPad; const auto y = cell_area.get_y() + cell_area.get_height() / 2.0 - height / 2.0 - 1; cairo_path_rounded_rect(cr, x - 4, y + 2, width + 8, height, 5); - cr->set_source_rgb(184.0 / 255.0, 37.0 / 255.0, 37.0 / 255.0); + cr->set_source_rgb(bg.get_red(), bg.get_green(), bg.get_blue()); cr->fill(); - cr->set_source_rgb(1.0, 1.0, 1.0); + cr->set_source_rgb(text.get_red(), text.get_green(), text.get_blue()); cr->move_to(x, y); layout->show_in_cairo_context(cr); } -- cgit v1.2.3