fix: fix "copy link" on iOS (#918)
* fix: fix "copy link" on iOS fixes #912 * fix lint
This commit is contained in:
parent
2656e11bb0
commit
0b1efab0c1
|
@ -32,6 +32,17 @@
|
||||||
import { toast } from '../../toast/toast'
|
import { toast } from '../../toast/toast'
|
||||||
import { doubleRAF } from '../../../_utils/doubleRAF'
|
import { doubleRAF } from '../../../_utils/doubleRAF'
|
||||||
|
|
||||||
|
function copyFromInput (input) {
|
||||||
|
// workarounds for iOS, via https://stackoverflow.com/a/34046084
|
||||||
|
let range = document.createRange()
|
||||||
|
range.selectNodeContents(input)
|
||||||
|
let selection = window.getSelection()
|
||||||
|
selection.removeAllRanges()
|
||||||
|
selection.addRange(range)
|
||||||
|
input.setSelectionRange(0, 9999999)
|
||||||
|
document.execCommand('copy')
|
||||||
|
}
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
oncreate () {
|
oncreate () {
|
||||||
onCreateDialog.call(this)
|
onCreateDialog.call(this)
|
||||||
|
@ -48,8 +59,7 @@
|
||||||
close,
|
close,
|
||||||
onClick () {
|
onClick () {
|
||||||
let { input } = this.refs
|
let { input } = this.refs
|
||||||
input.select()
|
copyFromInput(input)
|
||||||
document.execCommand('copy')
|
|
||||||
toast.say('Copied to clipboard')
|
toast.say('Copied to clipboard')
|
||||||
this.close()
|
this.close()
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue