FileManager+LibGUI: Draw the item text for desktop icons with shadow

This makes it look nice regardless of wallpaper or background color.
This commit is contained in:
Andreas Kling 2020-12-16 12:16:14 +01:00
parent 0fef901513
commit 2759d518b7
Notes: sideshowbarker 2024-07-19 00:48:09 +09:00
3 changed files with 10 additions and 1 deletions

View File

@ -214,6 +214,7 @@ void DirectoryView::setup_icon_view()
m_icon_view->set_frame_shape(Gfx::FrameShape::NoFrame);
m_icon_view->set_scrollbars_enabled(false);
m_icon_view->set_fill_with_background_color(false);
m_icon_view->set_draw_item_text_with_shadow(true);
}
m_icon_view->set_model(m_sorting_model);

View File

@ -693,7 +693,12 @@ void AbstractView::draw_item_text(Gfx::Painter& painter, const ModelIndex& index
},
text_rect, item_text, font, alignment, elision);
} else {
painter.draw_text(text_rect, item_text, font, alignment, text_color, elision);
if (m_draw_item_text_with_shadow) {
painter.draw_text(text_rect.translated(1, 1), item_text, font, alignment, Color::Black, elision);
painter.draw_text(text_rect, item_text, font, alignment, Color::White, elision);
} else {
painter.draw_text(text_rect, item_text, font, alignment, text_color, elision);
}
}
}

View File

@ -127,6 +127,8 @@ public:
bool is_tab_key_navigation_enabled() const { return m_tab_key_navigation_enabled; }
void set_tab_key_navigation_enabled(bool enabled) { m_tab_key_navigation_enabled = enabled; }
void set_draw_item_text_with_shadow(bool b) { m_draw_item_text_with_shadow = b; }
protected:
AbstractView();
virtual ~AbstractView() override;
@ -191,6 +193,7 @@ private:
bool m_multi_select { true };
bool m_tab_key_navigation_enabled { false };
bool m_is_dragging { false };
bool m_draw_item_text_with_shadow { false };
};
}