From dfa2c951d67a64f4e72a0ebca7ff81e40fc25976 Mon Sep 17 00:00:00 2001 From: syuilo Date: Tue, 5 Jun 2018 22:54:03 +0900 Subject: [PATCH] wip --- .../views/components/ui.header.nav.vue | 2 +- .../desktop/views/pages/deck/deck.column.vue | 25 +++++++++++--- .../desktop/views/pages/deck/deck.notes.vue | 16 +++++---- .../views/pages/deck/deck.tl-column.vue | 33 +++++++++++++++++++ .../app/desktop/views/pages/deck/deck.tl.vue | 4 --- .../app/desktop/views/pages/deck/deck.vue | 11 +++---- src/services/note/create.ts | 4 ++- 7 files changed, 72 insertions(+), 23 deletions(-) create mode 100644 src/client/app/desktop/views/pages/deck/deck.tl-column.vue diff --git a/src/client/app/desktop/views/components/ui.header.nav.vue b/src/client/app/desktop/views/components/ui.header.nav.vue index 8e792b3df..fe2637cec 100644 --- a/src/client/app/desktop/views/components/ui.header.nav.vue +++ b/src/client/app/desktop/views/components/ui.header.nav.vue @@ -11,7 +11,7 @@
  • %fa:columns% -

    %i18n:@deck%

    +

    %i18n:@deck% (beta)

  • diff --git a/src/client/app/desktop/views/pages/deck/deck.column.vue b/src/client/app/desktop/views/pages/deck/deck.column.vue index e0fc394f3..8d0b3c0fd 100644 --- a/src/client/app/desktop/views/pages/deck/deck.column.vue +++ b/src/client/app/desktop/views/pages/deck/deck.column.vue @@ -1,10 +1,10 @@ @@ -17,9 +17,23 @@ export default Vue.extend({ components: { XTl }, + provide() { + return { + getColumn() { + return this; + }, + getScrollContainer() { + return this.$refs.body; + } + }; + }, mounted() { this.$nextTick(() => { - this.$refs.tl.mount(this.$refs.body); + this.$emit('mounted'); + + setInterval(() => { + this.$emit('mounted'); + }, 100); }); } }); @@ -31,6 +45,7 @@ export default Vue.extend({ root(isDark) flex 1 min-width 330px + max-width 330px height 100% margin-right 16px background isDark ? #282C37 : #fff @@ -40,14 +55,14 @@ root(isDark) > header z-index 1 - line-height 48px + line-height 42px padding 0 16px color isDark ? #e3e5e8 : #888 background isDark ? #313543 : #fff box-shadow 0 1px rgba(#000, 0.15) > div - height calc(100% - 48px) + height calc(100% - 42px) overflow auto overflow-x hidden diff --git a/src/client/app/desktop/views/pages/deck/deck.notes.vue b/src/client/app/desktop/views/pages/deck/deck.notes.vue index ff871b049..48be4e585 100644 --- a/src/client/app/desktop/views/pages/deck/deck.notes.vue +++ b/src/client/app/desktop/views/pages/deck/deck.notes.vue @@ -73,16 +73,20 @@ export default Vue.extend({ } }, + inject: ['getColumn', 'getScrollContainer'], + + created() { + this.getColumn().$once('mounted', () => { + this.rootEl = this.getScrollContainer(); + this.rootEl.addEventListener('scroll', this.onScroll); + }) + }, + beforeDestroy() { - this.root.removeEventListener('scroll', this.onScroll); + this.rootEl.removeEventListener('scroll', this.onScroll); }, methods: { - mount(root) { - this.rootEl = root; - this.rootEl.addEventListener('scroll', this.onScroll); - }, - isScrollTop() { if (this.rootEl == null) return true; return this.rootEl.scrollTop <= 8; diff --git a/src/client/app/desktop/views/pages/deck/deck.tl-column.vue b/src/client/app/desktop/views/pages/deck/deck.tl-column.vue new file mode 100644 index 000000000..674f04077 --- /dev/null +++ b/src/client/app/desktop/views/pages/deck/deck.tl-column.vue @@ -0,0 +1,33 @@ + + + diff --git a/src/client/app/desktop/views/pages/deck/deck.tl.vue b/src/client/app/desktop/views/pages/deck/deck.tl.vue index ce9a77703..0a788b32e 100644 --- a/src/client/app/desktop/views/pages/deck/deck.tl.vue +++ b/src/client/app/desktop/views/pages/deck/deck.tl.vue @@ -14,10 +14,6 @@ export default Vue.extend({ }, props: { - root: { - type: Object, - required: false - }, src: { type: String, required: false, diff --git a/src/client/app/desktop/views/pages/deck/deck.vue b/src/client/app/desktop/views/pages/deck/deck.vue index 0c32b7d66..dfd480029 100644 --- a/src/client/app/desktop/views/pages/deck/deck.vue +++ b/src/client/app/desktop/views/pages/deck/deck.vue @@ -1,21 +1,20 @@ diff --git a/src/services/note/create.ts b/src/services/note/create.ts index 37d21feca..f820182a4 100644 --- a/src/services/note/create.ts +++ b/src/services/note/create.ts @@ -221,7 +221,9 @@ export default async (user: IUser, data: { } // Publish note to global timeline stream - publishGlobalTimelineStream(noteObj); + if (note.visibility == 'public' && note.replyId == null) { + publishGlobalTimelineStream(noteObj); + } if (note.visibility == 'specified') { data.visibleUsers.forEach(async u => {