From 811077ca661857cc72adec32dffd084b2d6fd7e8 Mon Sep 17 00:00:00 2001 From: syuilo <4439005+syuilo@users.noreply.github.com> Date: Fri, 28 Mar 2025 15:26:15 +0900 Subject: [PATCH] perf(frontend): avoid main thread scroll repaint --- packages/frontend/src/ui/deck.vue | 6 +++++- packages/frontend/src/ui/universal.vue | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/packages/frontend/src/ui/deck.vue b/packages/frontend/src/ui/deck.vue index 65aff8455a..fc6b023a51 100644 --- a/packages/frontend/src/ui/deck.vue +++ b/packages/frontend/src/ui/deck.vue @@ -226,13 +226,17 @@ html, body { width: 100%; height: 100%; - overflow: clip; position: fixed; top: 0; left: 0; overscroll-behavior: none; } +body { + /* NOTE: htmlにも overflow: clip を設定したいところだが、設定すると何故か少なくともChromeでhtmlがmain thread scroll repaint扱いになりパフォーマンスが(多分)落ちる */ + overflow: clip; +} + #misskey_app { width: 100%; height: 100%; diff --git a/packages/frontend/src/ui/universal.vue b/packages/frontend/src/ui/universal.vue index 576f215acd..d067fe738c 100644 --- a/packages/frontend/src/ui/universal.vue +++ b/packages/frontend/src/ui/universal.vue @@ -216,13 +216,17 @@ html, body { width: 100%; height: 100%; - overflow: clip; position: fixed; top: 0; left: 0; overscroll-behavior: none; } +body { + /* NOTE: htmlにも overflow: clip を設定したいところだが、設定すると何故か少なくともChromeでhtmlがmain thread scroll repaint扱いになりパフォーマンスが(多分)落ちる */ + overflow: clip; +} + #misskey_app { width: 100%; height: 100%;