summaryrefslogtreecommitdiff
path: root/packages/frontend/src/ui/deck/main-column.vue
diff options
context:
space:
mode:
authorsyuilo <Syuilotan@yahoo.co.jp>2023-07-08 15:30:36 +0900
committersyuilo <Syuilotan@yahoo.co.jp>2023-07-08 15:30:36 +0900
commit15683370f0379360c475a9ad77bb802c43f6d181 (patch)
treed320cbdef89b6b7bac2cb113297c311666c3aa4e /packages/frontend/src/ui/deck/main-column.vue
parentrefactor: use esm (diff)
downloadmisskey-15683370f0379360c475a9ad77bb802c43f6d181.tar.gz
misskey-15683370f0379360c475a9ad77bb802c43f6d181.tar.bz2
misskey-15683370f0379360c475a9ad77bb802c43f6d181.zip
fix(frontend): ページ遷移でスクロール位置が保持されない問題を修正
Fix #11068
Diffstat (limited to 'packages/frontend/src/ui/deck/main-column.vue')
-rw-r--r--packages/frontend/src/ui/deck/main-column.vue11
1 files changed, 9 insertions, 2 deletions
diff --git a/packages/frontend/src/ui/deck/main-column.vue b/packages/frontend/src/ui/deck/main-column.vue
index 169fac70a2..0413307955 100644
--- a/packages/frontend/src/ui/deck/main-column.vue
+++ b/packages/frontend/src/ui/deck/main-column.vue
@@ -7,24 +7,29 @@
</template>
</template>
- <RouterView @contextmenu.stop="onContextmenu"/>
+ <div ref="contents">
+ <RouterView @contextmenu.stop="onContextmenu"/>
+ </div>
</XColumn>
</template>
<script lang="ts" setup>
-import { ComputedRef, provide } from 'vue';
+import { ComputedRef, provide, shallowRef } from 'vue';
import XColumn from './column.vue';
import { deckStore, Column } from '@/ui/deck/deck-store';
import * as os from '@/os';
import { i18n } from '@/i18n';
import { mainRouter } from '@/router';
import { PageMetadata, provideMetadataReceiver } from '@/scripts/page-metadata';
+import { useScrollPositionManager } from '@/nirax';
+import { getScrollContainer } from '@/scripts/scroll';
defineProps<{
column: Column;
isStacked: boolean;
}>();
+const contents = shallowRef<HTMLElement>();
let pageMetadata = $ref<null | ComputedRef<PageMetadata>>();
provide('router', mainRouter);
@@ -61,4 +66,6 @@ function onContextmenu(ev: MouseEvent) {
},
}], ev);
}
+
+useScrollPositionManager(() => getScrollContainer(contents.value), mainRouter);
</script>