refactor(chat): drop the blur from the block reveal
During a long stream the follow scroll masks the entrance entirely, so the blur was invisible where it streamed and only a cost risk on weak GPUs. Keep the compositor-only fade and rise (and the same-tick cascade) — those are effectively free and still show on short replies where no scroll motion is involved.
This commit is contained in:
@@ -1378,23 +1378,20 @@ html:not(.dark) .chat-scroll {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* A block committed mid-stream materializes: fade, a gentle rise, and a
|
/* A block committed mid-stream enters with a fade and a gentle rise —
|
||||||
touch of blur resolving. Transform and filter are paint-only, so
|
compositor-only properties, deliberately nothing heavier: during a long
|
||||||
virtualized row measurement is unaffected. Blocks committed in the same
|
stream the follow scroll masks the entrance anyway, so the effect only
|
||||||
tick cascade via --oc-md-enter-delay set inline by the renderer. */
|
really shows on short replies, and those must not pay for a GPU filter.
|
||||||
|
Blocks committed in the same tick cascade via --oc-md-enter-delay set
|
||||||
|
inline by the renderer. */
|
||||||
@keyframes oc-md-block-enter {
|
@keyframes oc-md-block-enter {
|
||||||
from {
|
from {
|
||||||
opacity: 0;
|
opacity: 0;
|
||||||
transform: translateY(10px);
|
transform: translateY(10px);
|
||||||
filter: blur(2px);
|
|
||||||
}
|
|
||||||
60% {
|
|
||||||
filter: blur(0);
|
|
||||||
}
|
}
|
||||||
to {
|
to {
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
transform: none;
|
transform: none;
|
||||||
filter: none;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user