From e3f2845cf82c5d9fca3c07541caf5b86a1bbe2c2 Mon Sep 17 00:00:00 2001 From: tamaina Date: Tue, 27 Dec 2022 14:55:11 +0900 Subject: [PATCH] enhance(client): Sync widgets (#8512) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feature: sync widgets among devices * fix * nanka iroiro * classic.widgets.vueの機能をuniversal.widgets.vueに統合 * 左右のウィジェット編集状態を同期するように * 左右やカラム間でウィジェットを行き来できるように * MkWidgetsをCSS Module化 * set min-height: 100px; * fix deck widget * Update packages/client/src/ui/deck/widgets-column.vue Co-authored-by: syuilo * merge * Update classic.vue * Delete classic.widgets.vue Co-authored-by: syuilo --- misskey-assets | 2 +- .../frontend/src/components/MkWidgets.vue | 124 ++++++++++-------- packages/frontend/src/store.ts | 2 +- packages/frontend/src/ui/classic.vue | 6 +- packages/frontend/src/ui/classic.widgets.vue | 84 ------------ .../frontend/src/ui/deck/widgets-column.vue | 2 +- packages/frontend/src/ui/universal.vue | 2 +- .../frontend/src/ui/universal.widgets.vue | 58 ++++++-- 8 files changed, 125 insertions(+), 155 deletions(-) delete mode 100644 packages/frontend/src/ui/classic.widgets.vue diff --git a/misskey-assets b/misskey-assets index cf3ce27b2e..0179793ec8 160000 --- a/misskey-assets +++ b/misskey-assets @@ -1 +1 @@ -Subproject commit cf3ce27b2eb8417233072e3d6d2fb7c5356c2364 +Subproject commit 0179793ec891856d6f37a3be16ba4c22f67a81b5 diff --git a/packages/frontend/src/components/MkWidgets.vue b/packages/frontend/src/components/MkWidgets.vue index fff89117ce..3502e090e7 100644 --- a/packages/frontend/src/components/MkWidgets.vue +++ b/packages/frontend/src/components/MkWidgets.vue @@ -1,7 +1,7 @@ - + - diff --git a/packages/frontend/src/store.ts b/packages/frontend/src/store.ts index 1bedab5fad..8e3e6b36da 100644 --- a/packages/frontend/src/store.ts +++ b/packages/frontend/src/store.ts @@ -122,7 +122,7 @@ export const defaultStore = markRaw(new Storage('base', { }[], }, widgets: { - where: 'deviceAccount', + where: 'account', default: [] as { name: string; id: string; diff --git a/packages/frontend/src/ui/classic.vue b/packages/frontend/src/ui/classic.vue index 0e726c11ed..44b017ea96 100644 --- a/packages/frontend/src/ui/classic.vue +++ b/packages/frontend/src/ui/classic.vue @@ -7,7 +7,7 @@
- +
@@ -17,7 +17,7 @@
- +
@@ -52,7 +52,7 @@ import { PageMetadata, provideMetadataReceiver, setPageMetadata } from '@/script import { defaultStore } from '@/store'; import { i18n } from '@/i18n'; const XHeaderMenu = defineAsyncComponent(() => import('./classic.header.vue')); -const XWidgets = defineAsyncComponent(() => import('./classic.widgets.vue')); +const XWidgets = defineAsyncComponent(() => import('./universal.widgets.vue')); const DESKTOP_THRESHOLD = 1100; diff --git a/packages/frontend/src/ui/classic.widgets.vue b/packages/frontend/src/ui/classic.widgets.vue deleted file mode 100644 index 163ec982ce..0000000000 --- a/packages/frontend/src/ui/classic.widgets.vue +++ /dev/null @@ -1,84 +0,0 @@ - - - - - diff --git a/packages/frontend/src/ui/deck/widgets-column.vue b/packages/frontend/src/ui/deck/widgets-column.vue index fc61d18ff6..edc54c1c2b 100644 --- a/packages/frontend/src/ui/deck/widgets-column.vue +++ b/packages/frontend/src/ui/deck/widgets-column.vue @@ -4,7 +4,7 @@
{{ i18n.ts._deck.widgetsIntroduction }}
- +
diff --git a/packages/frontend/src/ui/universal.vue b/packages/frontend/src/ui/universal.vue index b91bf476e8..2cb8a9d6a6 100644 --- a/packages/frontend/src/ui/universal.vue +++ b/packages/frontend/src/ui/universal.vue @@ -273,7 +273,7 @@ const wallpaper = localStorage.getItem('wallpaper') != null; right: 0; z-index: 1001; height: 100dvh; - padding: var(--margin); + padding: var(--margin) !important; box-sizing: border-box; overflow: auto; overscroll-behavior: contain; diff --git a/packages/frontend/src/ui/universal.widgets.vue b/packages/frontend/src/ui/universal.widgets.vue index 33fb492836..002aab1090 100644 --- a/packages/frontend/src/ui/universal.widgets.vue +++ b/packages/frontend/src/ui/universal.widgets.vue @@ -1,25 +1,44 @@ + @@ -52,11 +86,17 @@ function updateWidgets(widgets) { position: sticky; height: min-content; min-height: 100vh; - padding: var(--margin) 0; box-sizing: border-box; + &.universal { + padding: var(--margin) 0; + + > * { + margin: var(--margin) 0; + } + } + > * { - margin: var(--margin) 0; width: 300px; &:first-child {