[Repository] Use icon variants instead of styling icons as text
Problem to solve
Icons are using .gl-text-subtle, but should use an icon color class (.gl-icon-color-*), and when possible, match the link text color/purpose.
Screenshots
Proposal
Use gl-icon-color-* classes.
Implementation guide
Switch from gl-text-* to gl-icon-color-* in app/assets/javascripts/repository/components/table/row.vue and app/presenters/project_presenter.rb:
diff --git a/app/assets/javascripts/repository/components/table/row.vue b/app/assets/javascripts/repository/components/table/row.vue
index 6a4dfbf8262b..a33be18ad97e 100644
--- a/app/assets/javascripts/repository/components/table/row.vue
+++ b/app/assets/javascripts/repository/components/table/row.vue
@@ -229,8 +229,8 @@ export default {
:folder="isFolder"
:submodule="isSubmodule"
:loading="path === loadingPath"
- css-classes="gl-relative file-icon"
- class="gl-relative gl-mr-2 gl-text-secondary"
+ :class="['gl-relative file-icon', isFolder ? 'gl-icon-color-subtle' : '']"
+ class="gl-relative gl-mr-2"
/><gl-truncate
:text="fullPath"
position="end"
diff --git a/app/presenters/project_presenter.rb b/app/presenters/project_presenter.rb
index a89cb2e1071e..fca047067015 100644
--- a/app/presenters/project_presenter.rb
+++ b/app/presenters/project_presenter.rb
@@ -23,7 +23,7 @@ class ProjectPresenter < Gitlab::View::Presenter::Delegated
MAX_TOPICS_TO_SHOW = 3
def statistic_default_class_list
- 'icon gl-mr-3 gl-text-subtle'
+ 'icon gl-mr-3 gl-icon-color-subtle'
end
def statistic_icon(icon_name = 'plus', class_list = statistic_default_class_list)
Edited by Marcel van Remmerden
