Skip to content

[Enhancement] Generic Theme Support for Icon and IconLink Grid Columns #9288

@tobiu

Description

@tobiu

Context
Currently, Neo.grid.column.Icon and Neo.grid.column.IconLink render their inner components using the default inherit font-size from Neo.component.Icon. When placed inside a grid (where the default text size is 13px), these icons often appear too small (e.g., social media icons or status badges).

The Problem
If an application wants to increase the size of these icons to 16px to make them legible within a grid, developers are forced to write custom, app-specific CSS overrides that target the .neo-grid-cell and the specific column classes (e.g., .devindex-column-linkedin). This pollutes app-level SCSS and prevents a consistent, out-of-the-box experience.

The Solution
Leverage the architectural pattern where non-component grid columns (extending core.Base) can still inject theme files via afterSetWindowId().

We will create generic SCSS files for these columns:

  • resources/scss/src/grid/column/Icon.scss
  • resources/scss/src/grid/column/IconLink.scss
  • And corresponding variable definitions for theme-neo-dark and theme-neo-light.

These files will define CSS variables like --grid-column-icon-font-size: 16px specifically scoped within .neo-grid-cell, ensuring consistent 16px icons and properly aligned 13px labels for all Icon/IconLink columns across the framework, without affecting standalone components.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or requestgridRelated to the Neo.grid package

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions