Док перемещается по композитору, а окно, которое перемещается, больше не передаёт инструмент внутри него

Performancekamo-internal
Порезанный
17 сентября 2026 г. в 19:43 UTC
Автор
Kamo
Обещать
905fba8

Все о всплывающем окне инструмента, которое движется - переупаковка ряда, торговые места с полоской щелчок, выход из ряда позади, перетаскивание, тяга шва, взятие и выход из максимизированной панели - Это стоило пропуска макета и полного повторного воспроизведения React содержимого каждого открытого окна на кадр. Измеряется в док-упряжке с восемью открытыми окнами (безголовый Chrome, до / после, три запуска) каждый из них: - один щелчок полосы: 12-14 проходов макета -> 1, время сценария 87-104 мс -> 44-52 мс - 40-подвижное перетаскивание панели заголовка: 168 повторных рендеров оконных СОДЕРЖАНИЙ -> 0, и 86 принудительной компоновки -> 3 - фактически окрашенные фоновые слои: 8 из 8 -> 5 из 8 (только окна, стоящие позади) Каждое окно заканчивается на одном пикселе, и каждый переход проходит по одному и тому же пути. кадры: dock->float, float->dock, dock->maximized и maximd->dock все отобранные идентичные конечные точки, одинаковые числа движущихся кадров и одинаковый самый большой шаг. Единственная разница пикселей в отдых - субпиксельная фаза сглаживания на глифовых краях в стыковых окнах - те же позиции, те же вес хода (2649 против 2643 пикселей чернил), та же энергия края (5,47 против 5,53). Что изменилось: - Стыковочное окно помещается «переводом» вместо «слева»/«сверху», с сложенным подъемником наведения. Остальные три режима сохраняют «левый» / «верхний» и вообще не переводят, и передача прав является точной. потому что все «левые», «верхние» и «переводные» уже имеют одни переходные часы: два пандуса на одном Сумма кривой к рампе между конечными точками. Умышленно никаких «изменений воли» — ничего не купил Любой зонд может видеть и стоит слой композита на окно для сеанса. «relayoutWindows» отвечает на один и тот же массив, когда ничего не перемещается. Всегда отвечали одни и те же окна. и свежий массив, так что каждый из пятнадцатикратных абонентов "store.relayout()" - включая Синхронизация прокрутки, которая проходит 120 мс после любой мутации DOM в любом месте документа Каждый читатель оконного списка. - "useToolWindowsStable()": список окон с его геометрией игнорируется. Семь орудийных тел, Три непрочитанных моста и наблюдатель за достижениями все читали его по одному булеву за штуку, и ни у кого не было этого. Никогда не читайте коробку, так что перетаскивание по высоте больше не отображает каждый список сообщений на экране. - «useToolWindowActions()»: обратные вызовы, по личности, так что абонент, который только рассылки не Повторно отрисовывается движущимся окном. - «readViewport()» проводит измерения между событиями, которые могут его изменить. The Звонок с рендер-фазой в ToolDock смывал грязный макет шестьдесят раз в секунду во время перетаскивания. - «DockedToolWindow» и «ToolWindowBody»: граница мемуаров на окно и на инструмент Обратная связь для жизни окна. «MaximizedTabStrip», «MaximizedTab» «ChatNavigatorPanel», «DockSnapIndicator», «HexHeadSpring» и «HexHeadPopover». «Фильтр фона» полосы — это «видимость: скрытая», когда окно не позади. Это Переходы дискретно, поэтому выцветание все еще играет в полной мере, прежде чем слой перестает быть окрашенным. Шестиглавая петля броска больше не тикает состояние реакции на кадр; тропы комет проходят сами по себе. анимационный кадр и запись атрибутов SVG, поэтому бросок останавливает повторное воспроизведение всей сцены. - Захват заглавной полосы прибытия падает, когда он заканчивается, а не парковка за кадром для сеанс, а рамочные кейфреймы оболочки запоминаются - три из пяти ветвей возвращают Keyframe ARRAY, так что перезапуск среднего свопа используется для перезапуска кросс-растворения. «dockRenderCost.test.tsx» ставит все это в счет; дело о ретрансляции не работает на HEAD.

Все изменения

Как вы видите судоходство?

Все это приходит в ваше рабочее пространство самостоятельно. Начните с бесплатного плана и прочитайте эту страницу через месяц.

Начните бесплатно навсегдаПосмотреть цены