1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 11:48:10 +00:00

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
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_frame_shape(Gfx::FrameShape::NoFrame);
m_icon_view->set_scrollbars_enabled(false); m_icon_view->set_scrollbars_enabled(false);
m_icon_view->set_fill_with_background_color(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); 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); text_rect, item_text, font, alignment, elision);
} else { } 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; } 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_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: protected:
AbstractView(); AbstractView();
virtual ~AbstractView() override; virtual ~AbstractView() override;
@ -191,6 +193,7 @@ private:
bool m_multi_select { true }; bool m_multi_select { true };
bool m_tab_key_navigation_enabled { false }; bool m_tab_key_navigation_enabled { false };
bool m_is_dragging { false }; bool m_is_dragging { false };
bool m_draw_item_text_with_shadow { false };
}; };
} }