Fix tall status expanding needing extra clicks, make tall status expand automatically in conversation when focused

This commit is contained in:
shpuld 2019-01-28 21:59:17 +02:00
parent bb2ee04f04
commit 0460728a8c

View file

@ -31,7 +31,7 @@ const Status = {
userExpanded: false, userExpanded: false,
preview: null, preview: null,
showPreview: false, showPreview: false,
showingTall: false, showingTall: this.inConversation && this.focused,
expandingSubject: typeof this.$store.state.config.collapseMessageWithSubject === 'undefined' expandingSubject: typeof this.$store.state.config.collapseMessageWithSubject === 'undefined'
? !this.$store.state.instance.collapseMessageWithSubject ? !this.$store.state.instance.collapseMessageWithSubject
: !this.$store.state.config.collapseMessageWithSubject, : !this.$store.state.config.collapseMessageWithSubject,
@ -262,13 +262,14 @@ const Status = {
this.userExpanded = !this.userExpanded this.userExpanded = !this.userExpanded
}, },
toggleShowMore () { toggleShowMore () {
console.log('toggleShowMore', this.showingTall)
if (this.showingTall) { if (this.showingTall) {
this.showingTall = false this.showingTall = false
} else if (this.expandingSubject) { } else if (this.expandingSubject && this.status.summary) {
this.expandingSubject = false this.expandingSubject = false
} else if (this.hideTallStatus) { } else if (this.hideTallStatus) {
this.showingTall = true this.showingTall = true
} else if (this.hideSubjectStatus) { } else if (this.hideSubjectStatus && this.status.summary) {
this.expandingSubject = true this.expandingSubject = true
} }
}, },
@ -301,8 +302,10 @@ const Status = {
'highlight': function (id) { 'highlight': function (id) {
if (this.status.id === id) { if (this.status.id === id) {
let rect = this.$el.getBoundingClientRect() let rect = this.$el.getBoundingClientRect()
if (rect.top < 100) { if (rect.top < 140) {
window.scrollBy(0, rect.top - 200) window.scrollBy(0, rect.top - 200)
} else if (rect.top < window.innerHeight && rect.height >= (window.innerHeight - 50)) {
window.scrollBy(0, rect.top - 50)
} else if (rect.bottom > window.innerHeight - 50) { } else if (rect.bottom > window.innerHeight - 50) {
window.scrollBy(0, rect.bottom - window.innerHeight + 50) window.scrollBy(0, rect.bottom - window.innerHeight + 50)
} }