diff options
| author | syuilo <4439005+syuilo@users.noreply.github.com> | 2025-03-25 20:06:46 +0900 |
|---|---|---|
| committer | syuilo <4439005+syuilo@users.noreply.github.com> | 2025-03-25 20:06:46 +0900 |
| commit | 97fddf2a80e0d37757d668d0e3dac52aaaf733c3 (patch) | |
| tree | fe08b2861b275a6a4acd09815a904a6013c837e2 | |
| parent | Bump version to 2025.3.2-beta.13 (diff) | |
| download | sharkey-97fddf2a80e0d37757d668d0e3dac52aaaf733c3.tar.gz sharkey-97fddf2a80e0d37757d668d0e3dac52aaaf733c3.tar.bz2 sharkey-97fddf2a80e0d37757d668d0e3dac52aaaf733c3.zip | |
🎨
| -rw-r--r-- | packages/frontend/src/ui/_common_/navbar.vue | 19 | ||||
| -rw-r--r-- | packages/frontend/src/ui/universal.vue | 38 |
2 files changed, 22 insertions, 35 deletions
diff --git a/packages/frontend/src/ui/_common_/navbar.vue b/packages/frontend/src/ui/_common_/navbar.vue index 0f00a25d7a..8bd33c7052 100644 --- a/packages/frontend/src/ui/_common_/navbar.vue +++ b/packages/frontend/src/ui/_common_/navbar.vue @@ -48,6 +48,9 @@ SPDX-License-Identifier: AGPL-3.0-only </MkA> </div> <div :class="$style.bottom"> + <button v-if="showWidgetButton" class="_button" :class="[$style.widget]" @click="() => emit('widgetButtonClick')"> + <i class="ti ti-apps ti-fw"></i> + </button> <button v-tooltip.noDelay.right="i18n.ts.note" class="_button" :class="[$style.post]" data-cy-open-post-form @click="() => { os.post(); }"> <i class="ti ti-pencil ti-fw" :class="$style.postIcon"></i><span :class="$style.postText">{{ i18n.ts.note }}</span> </button> @@ -104,6 +107,14 @@ import { $i } from '@/i.js'; const router = useRouter(); +const props = defineProps<{ + showWidgetButton?: boolean; +}>(); + +const emit = defineEmits<{ + (ev: 'widgetButtonClick'): void; +}>(); + const forceIconOnly = ref(window.innerWidth <= 1279); const iconOnly = computed(() => { return forceIconOnly.value || (store.r.menuDisplay.value === 'sideIcon'); @@ -560,6 +571,14 @@ function menuEdit() { backdrop-filter: var(--MI-blur, blur(8px)); } + .widget { + display: block; + position: relative; + width: 100%; + height: 52px; + text-align: center; + } + .post { display: block; position: relative; diff --git a/packages/frontend/src/ui/universal.vue b/packages/frontend/src/ui/universal.vue index acd188ac0c..576f215acd 100644 --- a/packages/frontend/src/ui/universal.vue +++ b/packages/frontend/src/ui/universal.vue @@ -5,7 +5,7 @@ SPDX-License-Identifier: AGPL-3.0-only <template> <div :class="$style.root"> - <XSidebar v-if="!isMobile" :class="$style.sidebar"/> + <XSidebar v-if="!isMobile" :class="$style.sidebar" :showWidgetButton="!isDesktop" @widgetButtonClick="widgetsShowing = true"/> <div :class="$style.contents" @contextmenu.stop="onContextmenu"> <div> @@ -29,9 +29,6 @@ SPDX-License-Identifier: AGPL-3.0-only <button :class="$style.navButton" class="_button" @click="widgetsShowing = true"><i :class="$style.navButtonIcon" class="ti ti-apps"></i></button> <button :class="$style.postButton" class="_button" @click="os.post()"><i :class="$style.navButtonIcon" class="ti ti-pencil"></i></button> </div> - <div v-else-if="!isDesktop" ref="navFooter" :class="$style.navForTablet"> - <button :class="$style.navForTabletWidgetButton" class="_button" @click="widgetsShowing = true"><i class="ti ti-apps"></i></button> - </div> </div> <div v-if="isDesktop && !pageMetadata?.needWideArea" :class="$style.widgets"> @@ -281,7 +278,7 @@ $widgets-hide-threshold: 1090px; .transition_widgetsDrawer_enterFrom, .transition_widgetsDrawer_leaveTo { opacity: 0; - transform: translateX(240px); + transform: translateX(-240px); } .root { @@ -310,35 +307,6 @@ $widgets-hide-threshold: 1090px; min-height: 0; } -.navForTablet { - display: flex; - padding: 12px 12px max(12px, env(safe-area-inset-bottom, 0px)) 12px; - width: 100%; - box-sizing: border-box; - background: var(--MI_THEME-bg); - border-top: solid 0.5px var(--MI_THEME-divider); -} - -.navForTabletWidgetButton { - position: relative; - padding: 0; - aspect-ratio: 1; - width: 100%; - max-width: 60px; - margin-left: auto; - border-radius: 100%; - background: var(--MI_THEME-panel); - color: var(--MI_THEME-fg); - - &:hover { - background: var(--MI_THEME-panelHighlight); - } - - &:active { - background: hsl(from var(--MI_THEME-panel) h s calc(l - 2)); - } -} - .nav { padding: 12px 12px max(12px, env(safe-area-inset-bottom, 0px)) 12px; display: grid; @@ -447,7 +415,7 @@ $widgets-hide-threshold: 1090px; .widgetsDrawer { position: fixed; top: 0; - right: 0; + left: 0; z-index: 1001; width: 310px; height: 100dvh; |