Skip to content

Conversation

@kaylendog
Copy link
Contributor

@kaylendog kaylendog commented Nov 3, 2025

Shows a banner above the message composer whenever a user opens a room with non-join history visibility, which they can dismiss.

  • Whenever a user opens an encrypted room with non-join history visibility, show them a banner, unless we have already marked it as dismissed.
  • Whenever a user opens an encrypted room with joined history visibility, we unmark it as dismissed.

Issue: element-hq/element-meta#2875

Checklist

Comment on lines 145 to 178
.mx_RoomStatusBar_historyVisibility {
> div[role="alert"] {
/* cheat some basic alignment */
display: flex;
align-items: center;
min-height: 70px;
padding-left: 16px;
background: var(--cpd-color-gradient-info-linear);
border-top: 1px solid var(--cpd-color-border-focused);
}

.mx_RoomStatusBar_historyVisibilityBadge > svg {
margin-right: 12px;
font-size: $font-24px;
color: var(--cpd-color-text-badge-info);
}

.mx_RoomStatusBar_historyVisibilityDescription {
font-size: $font-15px;
color: var(--cpd-color-text-info-primary);
}

.mx_RoomStatusBar_historyVisibilityLink {
font-size: $font-12px;
color: var(--cpd-color-text-primary);
}

.mx_RoomStatusBar_historyVisibilityButtonBar {
flex-grow: 1;
text-align: right;
margin-right: 22px;
}
}

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This needs to be checked by someone responsible for design! I've done my best to produce something similar to the Figma design, but I don't have a reference for dark mode, which currently looks utterly atrocious:

Image

There's also some conflicts with the reset identity status, but I suspect this is a wider issue with this status bar - perhaps the identity reset should be refactored into the status bar?

@kaylendog
Copy link
Contributor Author

I'm wondering if this would be better off as a floating alert above the UI - would conflict less with the identity reset dialog.

@florianduros
Copy link
Member

@kaylendog this is a question for the design team. Where are the figma design for this banner?

@kaylendog
Copy link
Contributor Author

@kaylendog this is a question for the design team. Where are the figma design for this banner?

Here (for EW)!

@kaylendog
Copy link
Contributor Author

Opening this up for review, since I can't make any headway on the CI failures:

  • The Playwright tests need their snapshots updating, which I can't do locally since this (apparently) needs rootful docker;
  • The Jest unit tests are failing for an unknown reason which I can't replicate locally - we suspect this may be cache related?

@kaylendog kaylendog marked this pull request as ready for review November 4, 2025 17:04
@kaylendog kaylendog requested a review from a team as a code owner November 4, 2025 17:04
Copy link
Member

@florianduros florianduros left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Each components in shared component has its own folder. imo RoomStatusBarHistoryVisible should be in packages/shared-components/src/room/RoomStatusBarHistoryVisible.

The RoomStatusBarHistoryVisible is missing at least a render test and a check that onClose is correctly binded.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This change seems unexpected

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This change seems unexpected

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As far as I can tell, I haven't touched anything close to this. Is this flaking, or is there some horrible rabbit hole I should investigate?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants