diff options
| author | syuilo <syuilotan@yahoo.co.jp> | 2020-12-28 11:56:42 +0900 |
|---|---|---|
| committer | syuilo <syuilotan@yahoo.co.jp> | 2020-12-28 11:56:42 +0900 |
| commit | 1da3777bfb24fcff92950627add447e17e221918 (patch) | |
| tree | 2f645ab2dfbe93abc7bb858fe35057c4ec5b5e74 /src/client/ui | |
| parent | Add button widget (diff) | |
| download | misskey-1da3777bfb24fcff92950627add447e17e221918.tar.gz misskey-1da3777bfb24fcff92950627add447e17e221918.tar.bz2 misskey-1da3777bfb24fcff92950627add447e17e221918.zip | |
デッキ周り改修など
Diffstat (limited to 'src/client/ui')
| -rw-r--r-- | src/client/ui/deck/antenna-column.vue | 10 | ||||
| -rw-r--r-- | src/client/ui/deck/column.vue | 20 | ||||
| -rw-r--r-- | src/client/ui/deck/direct-column.vue | 3 | ||||
| -rw-r--r-- | src/client/ui/deck/list-column.vue | 10 | ||||
| -rw-r--r-- | src/client/ui/deck/mentions-column.vue | 3 | ||||
| -rw-r--r-- | src/client/ui/deck/notifications-column.vue | 35 | ||||
| -rw-r--r-- | src/client/ui/deck/tl-column.vue | 11 | ||||
| -rw-r--r-- | src/client/ui/deck/widgets-column.vue | 17 |
8 files changed, 30 insertions, 79 deletions
diff --git a/src/client/ui/deck/antenna-column.vue b/src/client/ui/deck/antenna-column.vue index 0b3ae3af58..c6aa201e40 100644 --- a/src/client/ui/deck/antenna-column.vue +++ b/src/client/ui/deck/antenna-column.vue @@ -1,5 +1,5 @@ <template> -<XColumn :menu="menu" :column="column" :is-stacked="isStacked"> +<XColumn :func="{ handler: setAntenna, title: $ts.selectAntenna }" :column="column" :is-stacked="isStacked"> <template #header> <Fa :icon="faSatellite"/><span style="margin-left: 8px;">{{ column.name }}</span> </template> @@ -45,14 +45,6 @@ export default defineComponent({ } }, - created() { - this.menu = [{ - icon: faCog, - text: this.$ts.selectAntenna, - action: this.setAntenna - }]; - }, - mounted() { if (this.column.antennaId == null) { this.setAntenna(); diff --git a/src/client/ui/deck/column.vue b/src/client/ui/deck/column.vue index 1dc9901275..f8e4c3e0ba 100644 --- a/src/client/ui/deck/column.vue +++ b/src/client/ui/deck/column.vue @@ -22,7 +22,7 @@ <slot name="action"></slot> </div> <span class="header"><slot name="header"></slot></span> - <button v-if="!isMainColumn" class="menu _button" ref="menu" @click.stop="showMenu"><Fa :icon="faCaretDown"/></button> + <button v-if="func" class="menu _button" ref="menu" @click.stop="func.handler"><Fa :icon="func.icon || faCog"/></button> </header> <div ref="body" v-show="active"> <slot></slot> @@ -32,7 +32,7 @@ <script lang="ts"> import { defineComponent } from 'vue'; -import { faArrowUp, faArrowDown, faAngleUp, faAngleDown, faCaretDown, faArrowRight, faArrowLeft, faPencilAlt } from '@fortawesome/free-solid-svg-icons'; +import { faArrowUp, faArrowDown, faAngleUp, faAngleDown, faCaretDown, faArrowRight, faArrowLeft, faPencilAlt, faCog } from '@fortawesome/free-solid-svg-icons'; import { faWindowMaximize, faTrashAlt, faWindowRestore } from '@fortawesome/free-regular-svg-icons'; import * as os from '@/os'; import { updateColumn, swapLeftColumn, swapRightColumn, swapUpColumn, swapDownColumn, stackLeftColumn, popRightColumn, removeColumn, swapColumn } from './deck-store'; @@ -50,8 +50,8 @@ export default defineComponent({ required: false, default: false }, - menu: { - type: Array, + func: { + type: Object, required: false, default: null }, @@ -74,7 +74,7 @@ export default defineComponent({ dragging: false, draghover: false, dropready: false, - faArrowUp, faArrowDown, faAngleUp, faAngleDown, faCaretDown, + faArrowUp, faArrowDown, faAngleUp, faAngleDown, faCaretDown, faCog, }; }, @@ -196,12 +196,6 @@ export default defineComponent({ } }]; - if (this.menu) { - for (const i of this.menu.reverse()) { - items.unshift(i); - } - } - return items; }, @@ -209,10 +203,6 @@ export default defineComponent({ os.contextMenu(this.getMenu(), e); }, - showMenu() { - os.modalMenu(this.getMenu(), this.$refs.menu); - }, - goTop() { this.$refs.body.scrollTo({ top: 0, diff --git a/src/client/ui/deck/direct-column.vue b/src/client/ui/deck/direct-column.vue index 874a55ba0e..2ffbed562d 100644 --- a/src/client/ui/deck/direct-column.vue +++ b/src/client/ui/deck/direct-column.vue @@ -1,5 +1,5 @@ <template> -<XColumn :name="name" :column="column" :is-stacked="isStacked" :menu="menu"> +<XColumn :column="column" :is-stacked="isStacked"> <template #header><Fa :icon="faEnvelope" style="margin-right: 8px;"/>{{ column.name }}</template> <XNotes :pagination="pagination" @before="before()" @after="after()"/> @@ -33,7 +33,6 @@ export default defineComponent({ data() { return { - menu: null, pagination: { endpoint: 'notes/mentions', limit: 10, diff --git a/src/client/ui/deck/list-column.vue b/src/client/ui/deck/list-column.vue index 364d8265e7..32807aabc9 100644 --- a/src/client/ui/deck/list-column.vue +++ b/src/client/ui/deck/list-column.vue @@ -1,5 +1,5 @@ <template> -<XColumn :menu="menu" :column="column" :is-stacked="isStacked"> +<XColumn :func="{ handler: setList, title: $ts.selectList }" :column="column" :is-stacked="isStacked"> <template #header> <Fa :icon="faListUl"/><span style="margin-left: 8px;">{{ column.name }}</span> </template> @@ -45,14 +45,6 @@ export default defineComponent({ } }, - created() { - this.menu = [{ - icon: faCog, - text: this.$ts.selectList, - action: this.setList - }]; - }, - mounted() { if (this.column.listId == null) { this.setList(); diff --git a/src/client/ui/deck/mentions-column.vue b/src/client/ui/deck/mentions-column.vue index 3ba4f4e6ad..e79a9eb245 100644 --- a/src/client/ui/deck/mentions-column.vue +++ b/src/client/ui/deck/mentions-column.vue @@ -1,5 +1,5 @@ <template> -<XColumn :column="column" :is-stacked="isStacked" :menu="menu"> +<XColumn :column="column" :is-stacked="isStacked"> <template #header><Fa :icon="faAt" style="margin-right: 8px;"/>{{ column.name }}</template> <XNotes :pagination="pagination" @before="before()" @after="after()"/> @@ -33,7 +33,6 @@ export default defineComponent({ data() { return { - menu: null, pagination: { endpoint: 'notes/mentions', limit: 10, diff --git a/src/client/ui/deck/notifications-column.vue b/src/client/ui/deck/notifications-column.vue index 0c7f72d9f6..5feab8bab5 100644 --- a/src/client/ui/deck/notifications-column.vue +++ b/src/client/ui/deck/notifications-column.vue @@ -1,5 +1,5 @@ <template> -<XColumn :column="column" :is-stacked="isStacked" :menu="menu"> +<XColumn :column="column" :is-stacked="isStacked" :func="{ handler: func, title: $ts.notificationSetting }"> <template #header><Fa :icon="faBell" style="margin-right: 8px;"/>{{ column.name }}</template> <XNotifications :include-types="column.includingTypes"/> @@ -34,28 +34,23 @@ export default defineComponent({ data() { return { - menu: null, faBell } }, - created() { - this.menu = [{ - icon: faCog, - text: this.$ts.notificationSetting, - action: () => { - os.popup(import('@/components/notification-setting-window.vue'), { - includingTypes: this.column.includingTypes, - }, { - done: async (res) => { - const { includingTypes } = res; - updateColumn(this.column.id, { - includingTypes: includingTypes - }); - }, - }, 'closed'); - } - }]; - }, + methods: { + func() { + os.popup(import('@/components/notification-setting-window.vue'), { + includingTypes: this.column.includingTypes, + }, { + done: async (res) => { + const { includingTypes } = res; + updateColumn(this.column.id, { + includingTypes: includingTypes + }); + }, + }, 'closed'); + } + } }); </script> diff --git a/src/client/ui/deck/tl-column.vue b/src/client/ui/deck/tl-column.vue index 45b4c72fba..02af6a3311 100644 --- a/src/client/ui/deck/tl-column.vue +++ b/src/client/ui/deck/tl-column.vue @@ -1,5 +1,5 @@ <template> -<XColumn :menu="menu" :column="column" :is-stacked="isStacked" :indicated="indicated" @change-active-state="onChangeActiveState"> +<XColumn :func="{ handler: setType, title: $ts.timeline }" :column="column" :is-stacked="isStacked" :indicated="indicated" @change-active-state="onChangeActiveState"> <template #header> <Fa v-if="column.tl === 'home'" :icon="faHome"/> <Fa v-else-if="column.tl === 'local'" :icon="faComments"/> @@ -46,7 +46,6 @@ export default defineComponent({ data() { return { - menu: null, disabled: false, indicated: false, columnActive: true, @@ -60,14 +59,6 @@ export default defineComponent({ } }, - created() { - this.menu = [{ - icon: faCog, - text: this.$ts.timeline, - action: this.setType - }]; - }, - mounted() { if (this.column.tl == null) { this.setType(); diff --git a/src/client/ui/deck/widgets-column.vue b/src/client/ui/deck/widgets-column.vue index 39d7dc1cba..32dab4d866 100644 --- a/src/client/ui/deck/widgets-column.vue +++ b/src/client/ui/deck/widgets-column.vue @@ -1,5 +1,5 @@ <template> -<XColumn :menu="menu" :naked="true" :column="column" :is-stacked="isStacked"> +<XColumn :func="{ handler: func, title: $ts.editWidgets }" :naked="true" :column="column" :is-stacked="isStacked"> <template #header><Fa :icon="faWindowMaximize" style="margin-right: 8px;"/>{{ column.name }}</template> <div class="wtdtxvec"> @@ -62,7 +62,6 @@ export default defineComponent({ data() { return { edit: false, - menu: null, widgetAdderSelected: null, widgets, settings: {}, @@ -81,16 +80,6 @@ export default defineComponent({ } }, - created() { - this.menu = [{ - icon: faCog, - text: this.$ts.edit, - action: () => { - this.edit = !this.edit; - } - }]; - }, - methods: { widgetFunc(id) { this.settings[id](); @@ -114,6 +103,10 @@ export default defineComponent({ saveWidget(id, data) { updateColumnWidget(this.column.id, id, data); + }, + + func() { + this.edit = !this.edit; } } }); |