diff --git a/extension/popup.html b/extension/popup.html index f6522d9..8a8035e 100644 --- a/extension/popup.html +++ b/extension/popup.html @@ -1297,9 +1297,14 @@ .settings-issue-link a:hover { color: var(--accent); } - #section-join > .info-card, - #section-active > .info-card, - #tab-sync .info-card { + /* Every card clips horizontally. The popup body is a fixed 360px, but + Chrome sizes the popup window to whatever the content claims it needs + — and it never shrinks that window back for the rest of the session. + So a single unclipped card (the room tab's peer list used to be one, + because it sits in a wrapper div and the child combinator missed it) + is enough to leave the popup stuck at double width. Cards that scroll + vertically keep their own overflow-y via inline styles. */ + .info-card { position: relative; overflow: hidden; } @@ -1462,9 +1467,9 @@ -
- +
+
@@ -1813,7 +1818,7 @@
- Disconnected + Disconnected @@ -1826,15 +1831,15 @@ No tab selected or video detected.
-
- +
+
No activity yet
-
- +
+
diff --git a/extension/popup.js b/extension/popup.js index 6138b91..b464beb 100644 --- a/extension/popup.js +++ b/extension/popup.js @@ -958,7 +958,7 @@ function updatePeerList(peers) { peerItem.style.cssText = 'position:relative; display:block; padding: 8px 0; border-bottom: 1px solid var(--border-soft);'; const header = document.createElement('div'); - header.style.cssText = 'display:flex; justify-content:space-between; align-items:center; padding-right: 24px;'; + header.style.cssText = 'display:flex; justify-content:space-between; align-items:center; gap:6px; padding-right: 24px;'; const nameSpan = document.createElement('span'); nameSpan.style.cssText = 'display: inline-flex; align-items: center; max-width: 200px; overflow: hidden; white-space: nowrap;'; @@ -982,8 +982,11 @@ function updatePeerList(peers) { // Right-side badges + actions, kept in one group so they sit together // on the right instead of being scattered by the header's space-between. + // They wrap onto a second line when the row runs out of room — badges + // and the co-host button are nowrap, so without this a busy row (Solo + + // role badge + "give control") would push past the card instead. const rightGroup = document.createElement('div'); - rightGroup.style.cssText = 'display:flex; align-items:center; gap:6px; flex-shrink:0;'; + rightGroup.style.cssText = 'display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:6px; min-width:0;'; // Volume Icon (Top Right) if (p.volume !== undefined && p.volume !== null) {