Merge branch 'fix_textfields' into shigusegubu

* fix_textfields:
  I suppose SOME browsers don't do this by default...
  Fix resize not working properly for textareas
This commit is contained in:
Henry Jameson 2018-12-19 01:26:34 +03:00
commit c3b8756e5b

View file

@ -32,6 +32,8 @@ const PostStatusForm = {
},
mounted () {
this.resize(this.$refs.textarea)
const textLength = this.$refs.textarea.value.length
this.$refs.textarea.setSelectionRange(textLength, textLength)
if (this.replyTo) {
this.$refs.textarea.focus()
@ -243,7 +245,7 @@ const PostStatusForm = {
}
this.$emit('posted')
let el = this.$el.querySelector('textarea')
el.style.height = '16px'
el.style.height = undefined
this.error = null
} else {
this.error = data.error
@ -291,13 +293,13 @@ const PostStatusForm = {
e.dataTransfer.dropEffect = 'copy'
},
resize (e) {
if (!e.target) { return }
const vertPadding = Number(window.getComputedStyle(e.target)['padding-top'].substr(0, 1)) +
Number(window.getComputedStyle(e.target)['padding-bottom'].substr(0, 1))
e.target.style.height = 'auto'
e.target.style.height = `${e.target.scrollHeight - vertPadding}px`
if (e.target.value === '') {
e.target.style.height = '16px'
const target = e.target || e
if (!(target instanceof window.Element)) { return }
const vertPadding = Number(window.getComputedStyle(target)['padding-top'].substr(0, 1)) +
Number(window.getComputedStyle(target)['padding-bottom'].substr(0, 1))
target.style.height = `${target.scrollHeight - vertPadding}px`
if (target.value === '') {
target.style.height = undefined
}
},
clearError () {