From 2d2aa384162546cfce8f66b66675cec2e8b5bbcb Mon Sep 17 00:00:00 2001
From: AkiraFukushima
Date: Thu, 13 Sep 2018 23:03:47 +0900
Subject: [PATCH] refs #601 Fix losting focused toot in timeline
---
.../components/TimelineSpace/Contents/Hashtag/Tag.vue | 10 +++++++++-
.../components/TimelineSpace/Contents/Home.vue | 10 +++++++++-
.../components/TimelineSpace/Contents/Lists/Show.vue | 10 +++++++++-
.../components/TimelineSpace/Contents/Local.vue | 10 +++++++++-
.../components/TimelineSpace/Contents/Public.vue | 10 +++++++++-
5 files changed, 45 insertions(+), 5 deletions(-)
diff --git a/src/renderer/components/TimelineSpace/Contents/Hashtag/Tag.vue b/src/renderer/components/TimelineSpace/Contents/Hashtag/Tag.vue
index ff41c524..6de24b40 100644
--- a/src/renderer/components/TimelineSpace/Contents/Hashtag/Tag.vue
+++ b/src/renderer/components/TimelineSpace/Contents/Hashtag/Tag.vue
@@ -55,7 +55,15 @@ export default {
'modalOpened'
]),
shortcutEnabled: function () {
- return !this.focusedId && !this.modalOpened
+ if (this.modalOpened) {
+ return false
+ }
+ if (!this.focusedId) {
+ return true
+ }
+ // Sometimes toots are deleted, so perhaps focused toot don't exist.
+ const currentIndex = this.timeline.findIndex(toot => this.focusedId === toot.uri)
+ return currentIndex === -1
}
},
mounted () {
diff --git a/src/renderer/components/TimelineSpace/Contents/Home.vue b/src/renderer/components/TimelineSpace/Contents/Home.vue
index 7360e926..e802477b 100644
--- a/src/renderer/components/TimelineSpace/Contents/Home.vue
+++ b/src/renderer/components/TimelineSpace/Contents/Home.vue
@@ -55,7 +55,15 @@ export default {
'modalOpened'
]),
shortcutEnabled: function () {
- return !this.focusedId && !this.modalOpened
+ if (this.modalOpened) {
+ return false
+ }
+ if (!this.focusedId) {
+ return true
+ }
+ // Sometimes toots are deleted, so perhaps focused toot don't exist.
+ const currentIndex = this.timeline.findIndex(toot => this.focusedId === toot.uri)
+ return currentIndex === -1
}
},
mounted () {
diff --git a/src/renderer/components/TimelineSpace/Contents/Lists/Show.vue b/src/renderer/components/TimelineSpace/Contents/Lists/Show.vue
index 48b4c6e8..ec5c19b9 100644
--- a/src/renderer/components/TimelineSpace/Contents/Lists/Show.vue
+++ b/src/renderer/components/TimelineSpace/Contents/Lists/Show.vue
@@ -55,7 +55,15 @@ export default {
'modalOpened'
]),
shortcutEnabled: function () {
- return !this.focusedId && !this.modalOpened
+ if (this.modalOpened) {
+ return false
+ }
+ if (!this.focusedId) {
+ return true
+ }
+ // Sometimes toots are deleted, so perhaps focused toot don't exist.
+ const currentIndex = this.timeline.findIndex(toot => this.focusedId === toot.uri)
+ return currentIndex === -1
}
},
created () {
diff --git a/src/renderer/components/TimelineSpace/Contents/Local.vue b/src/renderer/components/TimelineSpace/Contents/Local.vue
index 13057db6..2f12354f 100644
--- a/src/renderer/components/TimelineSpace/Contents/Local.vue
+++ b/src/renderer/components/TimelineSpace/Contents/Local.vue
@@ -55,7 +55,15 @@ export default {
'modalOpened'
]),
shortcutEnabled: function () {
- return !this.focusedId && !this.modalOpened
+ if (this.modalOpened) {
+ return false
+ }
+ if (!this.focusedId) {
+ return true
+ }
+ // Sometimes toots are deleted, so perhaps focused toot don't exist.
+ const currentIndex = this.timeline.findIndex(toot => this.focusedId === toot.uri)
+ return currentIndex === -1
}
},
mounted () {
diff --git a/src/renderer/components/TimelineSpace/Contents/Public.vue b/src/renderer/components/TimelineSpace/Contents/Public.vue
index ebfc6d99..1f4056df 100644
--- a/src/renderer/components/TimelineSpace/Contents/Public.vue
+++ b/src/renderer/components/TimelineSpace/Contents/Public.vue
@@ -55,7 +55,15 @@ export default {
'modalOpened'
]),
shortcutEnabled: function () {
- return !this.focusedId && !this.modalOpened
+ if (this.modalOpened) {
+ return false
+ }
+ if (!this.focusedId) {
+ return true
+ }
+ // Sometimes toots are deleted, so perhaps focused toot don't exist.
+ const currentIndex = this.timeline.findIndex(toot => this.focusedId === toot.uri)
+ return currentIndex === -1
}
},
created () {