1
0
mirror of https://github.com/element-hq/element-web.git synced 2026-10-23 11:09:01 +03:00
Files
Zack 56281fc3a6 Move and MVVM ReplyTile to shared component (#34617)
* Move ReplyTile to shared component

* Add ReplyTile Storybook story

* Add ReplyTile visual snapshots

* Update ReplyTile snapshots

* Fix ReplyTile refactor

* Fix ReplyTile styles

* Update snapshot

* Use ReplyTile classes

* Fix ReplyTile layouts

* Refactor ReplyTile

* Fix ReplyTile sender

* Fix playwright images to refect the correct design

* Update snapshot

* Remove ReplyTile wrapper

* Remove ReplyTile layout context

* Remove ReplyPreview test

* Re-record reply screenshots after merging develop

The IRC baselines were capturing a bug. _EventTile.pcss had

    [data-layout="irc"] .mx_EventTile_line .mx_MTextBody {
        padding: 1px 0; display: inline-block;
    }

which reached into reply tiles, since the reply chain renders inside
mx_EventTile_line. At 0,3,0 it outranked ReplyTileView's
`.body > :where(*) { display: -webkit-box; -webkit-line-clamp: 2 }`
(0,1,0, as :where() adds no specificity), so reply previews never
clamped to two lines in IRC layout.

Develop's #34727 replaced that rule with .root[data-event-layout="irc"]
in the shared TextualBody module, and ReplyTileView reports the default
presentation, so it no longer applies inside replies. Reply blocks are
now tighter and the two-line clamp works.

The modern and bubble long-strings baselines move by 238px each from
develop's DisambiguatedProfile line-height/letter-spacing change. CI
never reported those because the IRC assertion runs first and aborted
the test.

* Re-record long strings reply screenshots

Regenerated all three baselines for the 'should send, reply, and display
long strings without overflowing' timeline test in a single run so they
stay mutually consistent.

* Update test by feedback request

* Fix ReplyChain snapshots

* Update apps/web/src/components/views/elements/ReplyChain.tsx

Co-authored-by: Florian Duros <florian.duros@ormaz.fr>

* Update apps/web/src/components/views/rooms/ReplyPreview.tsx

Co-authored-by: Florian Duros <florian.duros@ormaz.fr>

* Import useMatrixClientContext

* Add tsdoc to ReplyTileViewModelProps

* Chain reply tile sender locator

* Document ReplyTileViewModel

* Use role locator for reply file button

* Show reply avatar in long strings screenshots

---------

Co-authored-by: Florian Duros <florian.duros@ormaz.fr>
2026-09-15 08:32:39 +00:00
..