diff options
| author | syuilo <4439005+syuilo@users.noreply.github.com> | 2025-03-18 17:31:25 +0900 |
|---|---|---|
| committer | syuilo <4439005+syuilo@users.noreply.github.com> | 2025-03-18 17:31:25 +0900 |
| commit | d609f41f61d82d64cb8b01a0f4e52fb1af2c893e (patch) | |
| tree | da49d6df08f1feb73dfcc32fa2ba85d7aa69ee28 /packages/frontend/src/pages | |
| parent | 🎨 (diff) | |
| download | sharkey-d609f41f61d82d64cb8b01a0f4e52fb1af2c893e.tar.gz sharkey-d609f41f61d82d64cb8b01a0f4e52fb1af2c893e.tar.bz2 sharkey-d609f41f61d82d64cb8b01a0f4e52fb1af2c893e.zip | |
🎨
Diffstat (limited to 'packages/frontend/src/pages')
| -rw-r--r-- | packages/frontend/src/pages/admin/_header_.vue | 8 | ||||
| -rw-r--r-- | packages/frontend/src/pages/admin/index.vue | 6 | ||||
| -rw-r--r-- | packages/frontend/src/pages/settings/index.vue | 4 | ||||
| -rw-r--r-- | packages/frontend/src/pages/settings/other.vue | 4 | ||||
| -rw-r--r-- | packages/frontend/src/pages/timeline.vue | 8 |
5 files changed, 14 insertions, 16 deletions
diff --git a/packages/frontend/src/pages/admin/_header_.vue b/packages/frontend/src/pages/admin/_header_.vue index 1382cad9a4..f073a4af7e 100644 --- a/packages/frontend/src/pages/admin/_header_.vue +++ b/packages/frontend/src/pages/admin/_header_.vue @@ -33,13 +33,13 @@ SPDX-License-Identifier: AGPL-3.0-only </template> <script lang="ts" setup> -import { computed, onMounted, onUnmounted, ref, shallowRef, watch, nextTick } from 'vue'; +import { computed, onMounted, onUnmounted, ref, shallowRef, watch, nextTick, inject } from 'vue'; import tinycolor from 'tinycolor2'; import { scrollToTop } from '@@/js/scroll.js'; import { popupMenu } from '@/os.js'; import MkButton from '@/components/MkButton.vue'; import { globalEvents } from '@/events.js'; -import { injectReactiveMetadata } from '@/page.js'; +import { DI } from '@/di.js'; type Tab = { key?: string | null; @@ -66,7 +66,7 @@ const emit = defineEmits<{ (ev: 'update:tab', key: string); }>(); -const pageMetadata = injectReactiveMetadata(); +const pageMetadata = inject(DI.pageMetadata); const el = shallowRef<HTMLElement>(null); const tabRefs = {}; @@ -119,7 +119,7 @@ function onTabClick(tab: Tab, ev: MouseEvent): void { } const calcBg = () => { - const rawBg = pageMetadata.value?.bg ?? 'var(--MI_THEME-bg)'; + const rawBg = pageMetadata.value.bg ?? 'var(--MI_THEME-bg)'; const tinyBg = tinycolor(rawBg.startsWith('var(') ? getComputedStyle(document.documentElement).getPropertyValue(rawBg.slice(4, -1)) : rawBg); tinyBg.setAlpha(0.85); bg.value = tinyBg.toRgbString(); diff --git a/packages/frontend/src/pages/admin/index.vue b/packages/frontend/src/pages/admin/index.vue index 5c47ea8ddc..7e7467859b 100644 --- a/packages/frontend/src/pages/admin/index.vue +++ b/packages/frontend/src/pages/admin/index.vue @@ -25,16 +25,17 @@ SPDX-License-Identifier: AGPL-3.0-only </MkSpacer> </div> <div v-if="!(narrow && currentPage?.route.name == null)" class="main"> - <RouterView nested/> + <NestedRouterView/> </div> </div> </template> <script lang="ts" setup> import { onActivated, onMounted, onUnmounted, provide, watch, ref, computed } from 'vue'; +import type { SuperMenuDef } from '@/components/MkSuperMenu.vue'; +import type { PageMetadata } from '@/page.js'; import { i18n } from '@/i18n.js'; import MkSuperMenu from '@/components/MkSuperMenu.vue'; -import type { SuperMenuDef } from '@/components/MkSuperMenu.vue'; import MkInfo from '@/components/MkInfo.vue'; import { instance } from '@/instance.js'; import { lookup } from '@/utility/lookup.js'; @@ -42,7 +43,6 @@ import * as os from '@/os.js'; import { misskeyApi } from '@/utility/misskey-api.js'; import { lookupUser, lookupUserByEmail, lookupFile } from '@/utility/admin-lookup.js'; import { definePage, provideMetadataReceiver, provideReactiveMetadata } from '@/page.js'; -import type { PageMetadata } from '@/page.js'; import { useRouter } from '@/router/supplier.js'; const isEmpty = (x: string | null) => x == null || x === ''; diff --git a/packages/frontend/src/pages/settings/index.vue b/packages/frontend/src/pages/settings/index.vue index ef148dd9af..ea1b714aed 100644 --- a/packages/frontend/src/pages/settings/index.vue +++ b/packages/frontend/src/pages/settings/index.vue @@ -20,8 +20,8 @@ SPDX-License-Identifier: AGPL-3.0-only </div> </div> <div v-if="!(narrow && currentPage?.route.name == null)" class="main"> - <div class="bkzroven" style="container-type: inline-size;"> - <RouterView nested/> + <div style="container-type: inline-size;"> + <NestedRouterView/> </div> </div> </div> diff --git a/packages/frontend/src/pages/settings/other.vue b/packages/frontend/src/pages/settings/other.vue index 3d425ff406..d81c6fc93d 100644 --- a/packages/frontend/src/pages/settings/other.vue +++ b/packages/frontend/src/pages/settings/other.vue @@ -91,6 +91,9 @@ SPDX-License-Identifier: AGPL-3.0-only <MkSwitch v-model="skipNoteRender"> <template #label>Enable note render skipping</template> </MkSwitch> + <MkSwitch v-model="stackingRouterView"> + <template #label>Enable stacking router view</template> + </MkSwitch> </div> </MkFolder> </SearchMarker> @@ -142,6 +145,7 @@ const reportError = prefer.model('reportError'); const enableCondensedLine = prefer.model('enableCondensedLine'); const skipNoteRender = prefer.model('skipNoteRender'); const devMode = prefer.model('devMode'); +const stackingRouterView = prefer.model('experimental.stackingRouterView'); watch(skipNoteRender, async () => { await reloadAsk({ reason: i18n.ts.reloadToApplySetting, unison: true }); diff --git a/packages/frontend/src/pages/timeline.vue b/packages/frontend/src/pages/timeline.vue index b8f5ece02b..68f4b7a26d 100644 --- a/packages/frontend/src/pages/timeline.vue +++ b/packages/frontend/src/pages/timeline.vue @@ -36,7 +36,7 @@ SPDX-License-Identifier: AGPL-3.0-only <script lang="ts" setup> import { computed, watch, provide, shallowRef, ref, onMounted, onActivated } from 'vue'; -import { getScrollContainer, scroll } from '@@/js/scroll.js'; +import { scroll } from '@@/js/scroll.js'; import type { Tab } from '@/components/global/MkPageHeader.tabs.vue'; import type { MenuItem } from '@/types/menu.js'; import type { BasicTimelineType } from '@/timelines.js'; @@ -56,15 +56,9 @@ import { deepMerge } from '@/utility/merge.js'; import { miLocalStorage } from '@/local-storage.js'; import { availableBasicTimelines, hasWithReplies, isAvailableBasicTimeline, isBasicTimeline, basicTimelineIconClass } from '@/timelines.js'; import { prefer } from '@/preferences.js'; -import { useScrollPositionManager } from '@/nirax.js'; -import { useRouter } from '@/router/supplier.js'; provide('shouldOmitHeaderTitle', true); -const router = useRouter(); - -useScrollPositionManager(() => getScrollContainer(rootEl.value), router); - const tlComponent = shallowRef<InstanceType<typeof MkTimeline>>(); const rootEl = shallowRef<HTMLElement>(); |