mobile: kill the real slide hitch — stop reflowing the list column at slide-end (batch126)

Device log proved the residual 30-78ms end-of-slide hitch is NOT the content-layer demote
(content stays promoted) and NOT the re-render (reconcile, longtasks:[]). It's the chat-list
column flipping display:flex->none at transitionend, which reflows that whole subtree. Keep
the list RENDERED behind the conversation (position:absolute; z-index:0; covered by the opaque
content pane) instead of toggling display. Teardown now only clears transforms = no reflow.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-19 01:04:40 +05:30
parent ea04556596
commit 82d0154313
+2 -2
View File
@@ -1076,7 +1076,7 @@
.meet-bar .code{flex:1 1 100%;font-size:.9rem;white-space:normal;word-break:break-word;text-align:center;background:var(--blue-soft);border-radius:8px;padding:.35rem .5rem;}
/* Chat: one pane at a time (list, then the open conversation) */
.chatcol{width:100%;flex:1 1 100%;padding-top:var(--sat);padding-bottom:calc(60px + var(--sab));}
body.chat-open .chatcol{display:none;}
body.chat-open .chatcol{position:absolute;inset:0;z-index:0;} /* keep the list RENDERED behind the conversation (which covers it, z-index:2 + opaque bg) instead of display:none. Toggling the whole list subtree display:flex<->none at slide-end forced a full reflow = the residual 30-78ms end-of-slide hitch. Now teardown only clears transforms (no reflow). */
.content{display:none;}
body.chat-open .content, .shell:not(.is-chat) .content{display:block;}
/* Keep the conversation pane on its own GPU layer for the WHOLE time it's open (not just while the
@@ -1145,7 +1145,7 @@
</head>
<body>
<script src="/icons.js?v=6"></script>
<script>window.__BUILD='2026-07-19-batch125';console.log('%cBiz Connect','color:#1F3B73;font-weight:bold','build '+window.__BUILD);
<script>window.__BUILD='2026-07-19-batch126';console.log('%cBiz Connect','color:#1F3B73;font-weight:bold','build '+window.__BUILD);
// Emoji are rendered with the OS's own (colour) emoji font — instant, zero network.
//
// We used to run Twemoji over every emoji, which swapped each one for an <img> pulled INDIVIDUALLY from