Skip to content

fix(chat): make URLs in markdown tables tappable - #231

Merged
yuga-hashimoto merged 1 commit into
mainfrom
fix/table-link-tappable
Aug 8, 2026
Merged

fix(chat): make URLs in markdown tables tappable#231
yuga-hashimoto merged 1 commit into
mainfrom
fix/table-link-tappable

Conversation

@yuga-hashimoto

Copy link
Copy Markdown
Owner

Problem

Markdown table cells were rendered with plain Text, bypassing inline markdown parsing (parseInline). As a result, URLs in table cells were displayed as non-clickable plain text, unlike every other block type (paragraphs, headings, lists, blockquotes).

Fix

Added a RowScope.TableCellText composable that parses each cell's content via MarkdownLite.parseInline() and renders through InlineText — the same component used by all other block types. This makes bare URLs, markdown links, inline code, bold, etc. all render and be tappable inside table cells.

Headers and body cells now both use TableCellText, with the header style preserving the existing SemiBold weight.

Changes

  • ChatMessageComponents.kt:
    • Added RowScope.TableCellText helper (parses inline markdown + delegates to InlineText with weight(1f))
    • Replaced plain Text calls in the MarkdownBlock.Table branch with TableCellText
    • Added RowScope import

Notes

  • parseInline is cached per-cell via remember(text) to avoid re-parsing on recomposition
  • No data model change — MarkdownBlock.Table still stores raw strings, parsing happens at render time (same pattern as LinkedText)

Table cells were rendered with plain Text, bypassing inline markdown
parsing. As a result, URLs in tables were not clickable, unlike every
other block type. Parse each header and cell with MarkdownLite.parseInline
and render via InlineText so links open on tap.
@github-actions

github-actions Bot commented Aug 8, 2026

Copy link
Copy Markdown
Contributor

OpenCodeReview: Review complete: 0 finding(s) across 1 selected item(s).

@yuga-hashimoto
yuga-hashimoto merged commit 80311d9 into main Aug 8, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant